From 64a2a6e9841edf78f06e0e8277758c92d1590b43 Mon Sep 17 00:00:00 2001 From: meorphis <108296353+meorphis@users.noreply.github.com> Date: Fri, 18 Apr 2025 22:14:41 -0400 Subject: [PATCH 01/47] Update create-releases.yml --- .github/workflows/create-releases.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/create-releases.yml b/.github/workflows/create-releases.yml index c1ea30fa..929b2934 100644 --- a/.github/workflows/create-releases.yml +++ b/.github/workflows/create-releases.yml @@ -30,7 +30,7 @@ jobs: with: bundler-cache: false ruby-version: '3.1' - - run: |- + run: |- bundle install - name: Publish to RubyGems.org From 2653f09f99292e4da95238b29ec115660e29ab85 Mon Sep 17 00:00:00 2001 From: meorphis <108296353+meorphis@users.noreply.github.com> Date: Fri, 18 Apr 2025 22:15:44 -0400 Subject: [PATCH 02/47] Update create-releases.yml --- .github/workflows/create-releases.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/create-releases.yml b/.github/workflows/create-releases.yml index 929b2934..d87eec13 100644 --- a/.github/workflows/create-releases.yml +++ b/.github/workflows/create-releases.yml @@ -30,7 +30,7 @@ jobs: with: bundler-cache: false ruby-version: '3.1' - run: |- + run: | bundle install - name: Publish to RubyGems.org From e9ce032e64772294c628937779f14425badaa11f Mon Sep 17 00:00:00 2001 From: meorphis <108296353+meorphis@users.noreply.github.com> Date: Fri, 18 Apr 2025 22:18:56 -0400 Subject: [PATCH 03/47] Update create-releases.yml --- .github/workflows/create-releases.yml | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/.github/workflows/create-releases.yml b/.github/workflows/create-releases.yml index d87eec13..4f1e03ce 100644 --- a/.github/workflows/create-releases.yml +++ b/.github/workflows/create-releases.yml @@ -25,16 +25,17 @@ jobs: stainless-api-key: ${{ secrets.STAINLESS_API_KEY }} - name: Set up Ruby - if: ${{ steps.release.outputs.releases_created }} + if: ${{ steps.release.outputs.releases_created }} uses: ruby/setup-ruby@v1 with: bundler-cache: false ruby-version: '3.1' - run: | + + - run: | bundle install - name: Publish to RubyGems.org - if: ${{ steps.release.outputs.releases_created }} + if: ${{ steps.release.outputs.releases_created }} run: | bash ./bin/publish-gem env: From ef2a5d46f21a0df6b4b6ebc4e9d4dd4f6a6a6e5f Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Mon, 21 Apr 2025 17:32:41 +0000 Subject: [PATCH 04/47] chore(internal): version bump From ca0d841a571433528ae15974041c5ea142f9109e Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Sat, 19 Apr 2025 01:45:01 +0000 Subject: [PATCH 05/47] chore: explicitly mark apis public under `Internal` module --- .yardopts | 1 + lib/openai/client.rb | 8 ++++---- lib/openai/internal.rb | 1 - lib/openai/internal/type/array_of.rb | 6 ++++++ lib/openai/internal/type/base_model.rb | 18 +++++++++++++++++- lib/openai/internal/type/base_page.rb | 8 ++++++++ lib/openai/internal/type/base_stream.rb | 8 ++++++++ lib/openai/internal/type/boolean.rb | 4 ++++ lib/openai/internal/type/enum.rb | 6 ++++++ lib/openai/internal/type/hash_of.rb | 6 ++++++ lib/openai/internal/type/io_like.rb | 4 ++++ lib/openai/internal/type/union.rb | 6 ++++++ lib/openai/internal/type/unknown.rb | 4 ++++ .../chat_completion_assistant_message_param.rb | 2 ++ .../models/chat/chat_completion_chunk.rb | 2 ++ .../models/chat/chat_completion_message.rb | 2 ++ .../models/chat/completion_create_params.rb | 6 ++++++ lib/openai/models/file_object.rb | 4 ++++ .../models/fine_tuning/job_create_params.rb | 2 ++ lib/openai/models/reasoning.rb | 2 ++ rbi/lib/openai/client.rbi | 8 ++++---- rbi/lib/openai/internal.rbi | 1 - rbi/lib/openai/internal/type/base_model.rbi | 1 - rbi/lib/openai/internal/type/base_page.rbi | 2 ++ rbi/lib/openai/internal/type/base_stream.rbi | 2 ++ 25 files changed, 102 insertions(+), 12 deletions(-) diff --git a/.yardopts b/.yardopts index 5757768a..84c12f2a 100644 --- a/.yardopts +++ b/.yardopts @@ -1,4 +1,5 @@ --type-name-tag generic:Generic +--default-return void --markup markdown --markup-provider redcarpet --exclude /rbi diff --git a/lib/openai/client.rb b/lib/openai/client.rb index 15aa8d39..c79c1a83 100644 --- a/lib/openai/client.rb +++ b/lib/openai/client.rb @@ -101,10 +101,10 @@ def initialize( organization: ENV["OPENAI_ORG_ID"], project: ENV["OPENAI_PROJECT_ID"], base_url: ENV["OPENAI_BASE_URL"], - max_retries: DEFAULT_MAX_RETRIES, - timeout: DEFAULT_TIMEOUT_IN_SECONDS, - initial_retry_delay: DEFAULT_INITIAL_RETRY_DELAY, - max_retry_delay: DEFAULT_MAX_RETRY_DELAY + max_retries: OpenAI::Client::DEFAULT_MAX_RETRIES, + timeout: OpenAI::Client::DEFAULT_TIMEOUT_IN_SECONDS, + initial_retry_delay: OpenAI::Client::DEFAULT_INITIAL_RETRY_DELAY, + max_retry_delay: OpenAI::Client::DEFAULT_MAX_RETRY_DELAY ) base_url ||= "https://api.openai.com/v1" diff --git a/lib/openai/internal.rb b/lib/openai/internal.rb index 32bc2cf5..143e002b 100644 --- a/lib/openai/internal.rb +++ b/lib/openai/internal.rb @@ -1,7 +1,6 @@ # frozen_string_literal: true module OpenAI - # @api private module Internal OMIT = Object.new.tap do diff --git a/lib/openai/internal/type/array_of.rb b/lib/openai/internal/type/array_of.rb index d0d77538..dcfc2f95 100644 --- a/lib/openai/internal/type/array_of.rb +++ b/lib/openai/internal/type/array_of.rb @@ -30,11 +30,15 @@ class ArrayOf # @option spec [Boolean] :"nil?" def self.[](...) = new(...) + # @api public + # # @param other [Object] # # @return [Boolean] def ===(other) = other.is_a?(Array) && other.all?(item_type) + # @api public + # # @param other [Object] # # @return [Boolean] @@ -44,6 +48,8 @@ def ==(other) # rubocop:enable Layout/LineLength end + # @api public + # # @return [Integer] def hash = [self.class, item_type].hash diff --git a/lib/openai/internal/type/base_model.rb b/lib/openai/internal/type/base_model.rb index 043039d4..b356a480 100644 --- a/lib/openai/internal/type/base_model.rb +++ b/lib/openai/internal/type/base_model.rb @@ -159,6 +159,8 @@ def optional(name_sym, type_info, spec = {}) @mode = nil end + # @api public + # # @param other [Object] # # @return [Boolean] @@ -166,15 +168,21 @@ def ==(other) other.is_a?(Class) && other <= OpenAI::Internal::Type::BaseModel && other.fields == fields end + # @api public + # # @return [Integer] def hash = fields.hash end + # @api public + # # @param other [Object] # # @return [Boolean] def ==(other) = self.class == other.class && @data == other.to_h + # @api public + # # @return [Integer] def hash = [self.class, @data].hash @@ -291,6 +299,8 @@ def dump(value, state:) end end + # @api public + # # Returns the raw value associated with the given key, if found. Otherwise, nil is # returned. # @@ -309,6 +319,8 @@ def [](key) @data[key] end + # @api public + # # Returns a Hash of the data underlying this object. O(1) # # Keys are Symbols and values are the raw values from the response. The return @@ -361,11 +373,15 @@ def walk(model) end end + # @api public + # # @param a [Object] # # @return [String] def to_json(*a) = OpenAI::Internal::Type::Converter.dump(self.class, self).to_json(*a) + # @api public + # # @param a [Object] # # @return [String] @@ -407,7 +423,7 @@ def inspect(depth: 0) end end - # @api private + # @api public # # @return [String] def to_s = self.class.walk(@data).to_s diff --git a/lib/openai/internal/type/base_page.rb b/lib/openai/internal/type/base_page.rb index 48c98885..e17895f2 100644 --- a/lib/openai/internal/type/base_page.rb +++ b/lib/openai/internal/type/base_page.rb @@ -3,19 +3,27 @@ module OpenAI module Internal module Type + # @api private + # # @generic Elem # # This module provides a base implementation for paginated responses in the SDK. module BasePage # rubocop:disable Lint/UnusedMethodArgument + # @api public + # # @return [Boolean] def next_page? = (raise NotImplementedError) + # @api public + # # @raise [OpenAI::Errors::APIError] # @return [OpenAI::Internal::Type::BasePage] def next_page = (raise NotImplementedError) + # @api public + # # @param blk [Proc] # # @yieldparam [generic] diff --git a/lib/openai/internal/type/base_stream.rb b/lib/openai/internal/type/base_stream.rb index ebcb564c..580ba8ab 100644 --- a/lib/openai/internal/type/base_stream.rb +++ b/lib/openai/internal/type/base_stream.rb @@ -3,6 +3,8 @@ module OpenAI module Internal module Type + # @api private + # # @generic Elem # # This module provides a base implementation for streaming responses in the SDK. @@ -26,6 +28,8 @@ class << self def defer_closing(stream) = ->(_id) { OpenAI::Internal::Util.close_fused!(stream) } end + # @api public + # # @return [void] def close = OpenAI::Internal::Util.close_fused!(@iterator) @@ -34,6 +38,8 @@ def close = OpenAI::Internal::Util.close_fused!(@iterator) # @return [Enumerable>] private def iterator = (raise NotImplementedError) + # @api public + # # @param blk [Proc] # # @yieldparam [generic] @@ -45,6 +51,8 @@ def each(&blk) @iterator.each(&blk) end + # @api public + # # @return [Enumerator>] def to_enum = @iterator diff --git a/lib/openai/internal/type/boolean.rb b/lib/openai/internal/type/boolean.rb index 298979c8..13c242e0 100644 --- a/lib/openai/internal/type/boolean.rb +++ b/lib/openai/internal/type/boolean.rb @@ -13,11 +13,15 @@ class Boolean private_class_method :new + # @api public + # # @param other [Object] # # @return [Boolean] def self.===(other) = other == true || other == false + # @api public + # # @param other [Object] # # @return [Boolean] diff --git a/lib/openai/internal/type/enum.rb b/lib/openai/internal/type/enum.rb index afdeb5f9..55df3e66 100644 --- a/lib/openai/internal/type/enum.rb +++ b/lib/openai/internal/type/enum.rb @@ -48,11 +48,15 @@ module Enum # @return [Array] def values = constants.map { const_get(_1) } + # @api public + # # @param other [Object] # # @return [Boolean] def ===(other) = values.include?(other) + # @api public + # # @param other [Object] # # @return [Boolean] @@ -62,6 +66,8 @@ def ==(other) # rubocop:enable Style/CaseEquality end + # @api public + # # @return [Integer] def hash = values.to_set.hash diff --git a/lib/openai/internal/type/hash_of.rb b/lib/openai/internal/type/hash_of.rb index 40c7a89a..b586a220 100644 --- a/lib/openai/internal/type/hash_of.rb +++ b/lib/openai/internal/type/hash_of.rb @@ -30,6 +30,8 @@ class HashOf # @option spec [Boolean] :"nil?" def self.[](...) = new(...) + # @api public + # # @param other [Object] # # @return [Boolean] @@ -50,6 +52,8 @@ def ===(other) end end + # @api public + # # @param other [Object] # # @return [Boolean] @@ -59,6 +63,8 @@ def ==(other) # rubocop:enable Layout/LineLength end + # @api public + # # @return [Integer] def hash = [self.class, item_type].hash diff --git a/lib/openai/internal/type/io_like.rb b/lib/openai/internal/type/io_like.rb index 43aba589..568418be 100644 --- a/lib/openai/internal/type/io_like.rb +++ b/lib/openai/internal/type/io_like.rb @@ -13,6 +13,8 @@ class IOLike private_class_method :new + # @api public + # # @param other [Object] # # @return [Boolean] @@ -25,6 +27,8 @@ def self.===(other) end end + # @api public + # # @param other [Object] # # @return [Boolean] diff --git a/lib/openai/internal/type/union.rb b/lib/openai/internal/type/union.rb index 5f9048cf..3db41ef0 100644 --- a/lib/openai/internal/type/union.rb +++ b/lib/openai/internal/type/union.rb @@ -112,6 +112,8 @@ def variants = derefed_variants.map(&:last) # rubocop:disable Style/HashEachMethods # rubocop:disable Style/CaseEquality + # @api public + # # @param other [Object] # # @return [Boolean] @@ -121,6 +123,8 @@ def ===(other) end end + # @api public + # # @param other [Object] # # @return [Boolean] @@ -128,6 +132,8 @@ def ==(other) OpenAI::Internal::Type::Union === other && other.derefed_variants == derefed_variants end + # @api public + # # @return [Integer] def hash = variants.hash diff --git a/lib/openai/internal/type/unknown.rb b/lib/openai/internal/type/unknown.rb index 36556ac1..698303d5 100644 --- a/lib/openai/internal/type/unknown.rb +++ b/lib/openai/internal/type/unknown.rb @@ -15,11 +15,15 @@ class Unknown private_class_method :new + # @api public + # # @param other [Object] # # @return [Boolean] def self.===(other) = true + # @api public + # # @param other [Object] # # @return [Boolean] diff --git a/lib/openai/models/chat/chat_completion_assistant_message_param.rb b/lib/openai/models/chat/chat_completion_assistant_message_param.rb index 8cd2c5c2..a139420e 100644 --- a/lib/openai/models/chat/chat_completion_assistant_message_param.rb +++ b/lib/openai/models/chat/chat_completion_assistant_message_param.rb @@ -27,6 +27,8 @@ class ChatCompletionAssistantMessageParam < OpenAI::Internal::Type::BaseModel nil?: true # @!attribute function_call + # @deprecated + # # Deprecated and replaced by `tool_calls`. The name and arguments of a function # that should be called, as generated by the model. # diff --git a/lib/openai/models/chat/chat_completion_chunk.rb b/lib/openai/models/chat/chat_completion_chunk.rb index 77585995..05970b9f 100644 --- a/lib/openai/models/chat/chat_completion_chunk.rb +++ b/lib/openai/models/chat/chat_completion_chunk.rb @@ -141,6 +141,8 @@ class Delta < OpenAI::Internal::Type::BaseModel optional :content, String, nil?: true # @!attribute function_call + # @deprecated + # # Deprecated and replaced by `tool_calls`. The name and arguments of a function # that should be called, as generated by the model. # diff --git a/lib/openai/models/chat/chat_completion_message.rb b/lib/openai/models/chat/chat_completion_message.rb index 3d874f33..21ca6db0 100644 --- a/lib/openai/models/chat/chat_completion_message.rb +++ b/lib/openai/models/chat/chat_completion_message.rb @@ -39,6 +39,8 @@ class ChatCompletionMessage < OpenAI::Internal::Type::BaseModel optional :audio, -> { OpenAI::Models::Chat::ChatCompletionAudio }, nil?: true # @!attribute function_call + # @deprecated + # # Deprecated and replaced by `tool_calls`. The name and arguments of a function # that should be called, as generated by the model. # diff --git a/lib/openai/models/chat/completion_create_params.rb b/lib/openai/models/chat/completion_create_params.rb index 999209e1..045de7a8 100644 --- a/lib/openai/models/chat/completion_create_params.rb +++ b/lib/openai/models/chat/completion_create_params.rb @@ -49,6 +49,8 @@ class CompletionCreateParams < OpenAI::Internal::Type::BaseModel optional :frequency_penalty, Float, nil?: true # @!attribute function_call + # @deprecated + # # Deprecated in favor of `tool_choice`. # # Controls which (if any) function is called by the model. @@ -68,6 +70,8 @@ class CompletionCreateParams < OpenAI::Internal::Type::BaseModel optional :function_call, union: -> { OpenAI::Models::Chat::CompletionCreateParams::FunctionCall } # @!attribute functions + # @deprecated + # # Deprecated in favor of `tools`. # # A list of functions the model may generate JSON inputs for. @@ -106,6 +110,8 @@ class CompletionCreateParams < OpenAI::Internal::Type::BaseModel optional :max_completion_tokens, Integer, nil?: true # @!attribute max_tokens + # @deprecated + # # The maximum number of [tokens](/tokenizer) that can be generated in the chat # completion. This value can be used to control # [costs](https://openai.com/api/pricing/) for text generated via API. diff --git a/lib/openai/models/file_object.rb b/lib/openai/models/file_object.rb index 5031a63d..b6825ae1 100644 --- a/lib/openai/models/file_object.rb +++ b/lib/openai/models/file_object.rb @@ -43,6 +43,8 @@ class FileObject < OpenAI::Internal::Type::BaseModel required :purpose, enum: -> { OpenAI::Models::FileObject::Purpose } # @!attribute status + # @deprecated + # # Deprecated. The current status of the file, which can be either `uploaded`, # `processed`, or `error`. # @@ -56,6 +58,8 @@ class FileObject < OpenAI::Internal::Type::BaseModel optional :expires_at, Integer # @!attribute status_details + # @deprecated + # # Deprecated. For details on why a fine-tuning training file failed validation, # see the `error` field on `fine_tuning.job`. # diff --git a/lib/openai/models/fine_tuning/job_create_params.rb b/lib/openai/models/fine_tuning/job_create_params.rb index ada446ed..2078e4bd 100644 --- a/lib/openai/models/fine_tuning/job_create_params.rb +++ b/lib/openai/models/fine_tuning/job_create_params.rb @@ -38,6 +38,8 @@ class JobCreateParams < OpenAI::Internal::Type::BaseModel required :training_file, String # @!attribute hyperparameters + # @deprecated + # # The hyperparameters used for the fine-tuning job. This value is now deprecated # in favor of `method`, and should be passed in under the `method` parameter. # diff --git a/lib/openai/models/reasoning.rb b/lib/openai/models/reasoning.rb index 5aa982ea..3457ccea 100644 --- a/lib/openai/models/reasoning.rb +++ b/lib/openai/models/reasoning.rb @@ -15,6 +15,8 @@ class Reasoning < OpenAI::Internal::Type::BaseModel optional :effort, enum: -> { OpenAI::Models::ReasoningEffort }, nil?: true # @!attribute generate_summary + # @deprecated + # # **Deprecated:** use `summary` instead. # # A summary of the reasoning performed by the model. This can be useful for diff --git a/rbi/lib/openai/client.rbi b/rbi/lib/openai/client.rbi index 64aba6c1..b70ce71a 100644 --- a/rbi/lib/openai/client.rbi +++ b/rbi/lib/openai/client.rbi @@ -93,10 +93,10 @@ module OpenAI # `"https://api.example.com/v2/"`. Defaults to `ENV["OPENAI_BASE_URL"]` base_url: ENV["OPENAI_BASE_URL"], # Max number of retries to attempt after a failed retryable request. - max_retries: DEFAULT_MAX_RETRIES, - timeout: DEFAULT_TIMEOUT_IN_SECONDS, - initial_retry_delay: DEFAULT_INITIAL_RETRY_DELAY, - max_retry_delay: DEFAULT_MAX_RETRY_DELAY + max_retries: OpenAI::Client::DEFAULT_MAX_RETRIES, + timeout: OpenAI::Client::DEFAULT_TIMEOUT_IN_SECONDS, + initial_retry_delay: OpenAI::Client::DEFAULT_INITIAL_RETRY_DELAY, + max_retry_delay: OpenAI::Client::DEFAULT_MAX_RETRY_DELAY ); end end end diff --git a/rbi/lib/openai/internal.rbi b/rbi/lib/openai/internal.rbi index 05388159..8390947e 100644 --- a/rbi/lib/openai/internal.rbi +++ b/rbi/lib/openai/internal.rbi @@ -1,7 +1,6 @@ # typed: strong module OpenAI - # @api private module Internal # Due to the current WIP status of Shapes support in Sorbet, types referencing # this alias might be refined in the future. diff --git a/rbi/lib/openai/internal/type/base_model.rbi b/rbi/lib/openai/internal/type/base_model.rbi index cf8285ae..d97f840f 100644 --- a/rbi/lib/openai/internal/type/base_model.rbi +++ b/rbi/lib/openai/internal/type/base_model.rbi @@ -203,7 +203,6 @@ module OpenAI def inspect(depth: 0); end end - # @api private sig { returns(String) } def to_s; end diff --git a/rbi/lib/openai/internal/type/base_page.rbi b/rbi/lib/openai/internal/type/base_page.rbi index 3906abb9..6a3257fe 100644 --- a/rbi/lib/openai/internal/type/base_page.rbi +++ b/rbi/lib/openai/internal/type/base_page.rbi @@ -3,6 +3,8 @@ module OpenAI module Internal module Type + # @api private + # # This module provides a base implementation for paginated responses in the SDK. module BasePage Elem = type_member(:out) diff --git a/rbi/lib/openai/internal/type/base_stream.rbi b/rbi/lib/openai/internal/type/base_stream.rbi index 8dcf7413..ff3f1d51 100644 --- a/rbi/lib/openai/internal/type/base_stream.rbi +++ b/rbi/lib/openai/internal/type/base_stream.rbi @@ -3,6 +3,8 @@ module OpenAI module Internal module Type + # @api private + # # This module provides a base implementation for streaming responses in the SDK. module BaseStream include Enumerable From 67b0e35c2c8d48c50c71c20a71304896a63f6b44 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Mon, 21 Apr 2025 15:54:15 +0000 Subject: [PATCH 06/47] chore(internal): minor type annotation improvements --- Steepfile | 2 +- lib/openai/internal/cursor_page.rb | 2 +- lib/openai/internal/page.rb | 2 +- lib/openai/internal/transport/base_client.rb | 8 ++++---- lib/openai/internal/type/array_of.rb | 2 ++ lib/openai/internal/type/base_model.rb | 2 +- lib/openai/internal/type/base_page.rb | 2 +- lib/openai/internal/type/hash_of.rb | 2 ++ 8 files changed, 13 insertions(+), 9 deletions(-) diff --git a/Steepfile b/Steepfile index 6e5d0ac5..d7aebca1 100644 --- a/Steepfile +++ b/Steepfile @@ -2,7 +2,7 @@ require "yaml" -target :lib do +target(:lib) do configure_code_diagnostics(Steep::Diagnostic::Ruby.strict) signature("sig") diff --git a/lib/openai/internal/cursor_page.rb b/lib/openai/internal/cursor_page.rb index eb661553..3cb0654b 100644 --- a/lib/openai/internal/cursor_page.rb +++ b/lib/openai/internal/cursor_page.rb @@ -28,7 +28,7 @@ def next_page? end # @raise [OpenAI::HTTP::Error] - # @return [OpenAI::Internal::CursorPage] + # @return [self] def next_page unless next_page? message = "No more pages available. Please check #next_page? before calling ##{__method__}" diff --git a/lib/openai/internal/page.rb b/lib/openai/internal/page.rb index 7df85077..f3792c4c 100644 --- a/lib/openai/internal/page.rb +++ b/lib/openai/internal/page.rb @@ -28,7 +28,7 @@ def next_page? end # @raise [OpenAI::HTTP::Error] - # @return [OpenAI::Internal::Page] + # @return [self] def next_page RuntimeError.new("No more pages available.") end diff --git a/lib/openai/internal/transport/base_client.rb b/lib/openai/internal/transport/base_client.rb index 30b12835..f3fd4559 100644 --- a/lib/openai/internal/transport/base_client.rb +++ b/lib/openai/internal/transport/base_client.rb @@ -216,9 +216,9 @@ def initialize( # # @option req [Symbol, nil] :unwrap # - # @option req [Class, nil] :page + # @option req [Class, nil] :page # - # @option req [Class, nil] :stream + # @option req [Class, nil] :stream # # @option req [OpenAI::Internal::Type::Converter, Class, nil] :model # @@ -417,9 +417,9 @@ def initialize( # # @param unwrap [Symbol, nil] # - # @param page [Class, nil] + # @param page [Class, nil] # - # @param stream [Class, nil] + # @param stream [Class, nil] # # @param model [OpenAI::Internal::Type::Converter, Class, nil] # diff --git a/lib/openai/internal/type/array_of.rb b/lib/openai/internal/type/array_of.rb index dcfc2f95..5b1a4113 100644 --- a/lib/openai/internal/type/array_of.rb +++ b/lib/openai/internal/type/array_of.rb @@ -28,6 +28,8 @@ class ArrayOf # @option spec [Proc] :union # # @option spec [Boolean] :"nil?" + # + # @return [OpenAI::Internal::Type::ArrayOf] def self.[](...) = new(...) # @api public diff --git a/lib/openai/internal/type/base_model.rb b/lib/openai/internal/type/base_model.rb index b356a480..af231837 100644 --- a/lib/openai/internal/type/base_model.rb +++ b/lib/openai/internal/type/base_model.rb @@ -389,7 +389,7 @@ def to_yaml(*a) = OpenAI::Internal::Type::Converter.dump(self.class, self).to_ya # Create a new instance of a model. # - # @param data [Hash{Symbol=>Object}, OpenAI::Internal::Type::BaseModel] + # @param data [Hash{Symbol=>Object}, self] def initialize(data = {}) case OpenAI::Internal::Util.coerce_hash(data) in Hash => coerced diff --git a/lib/openai/internal/type/base_page.rb b/lib/openai/internal/type/base_page.rb index e17895f2..3ebca02d 100644 --- a/lib/openai/internal/type/base_page.rb +++ b/lib/openai/internal/type/base_page.rb @@ -19,7 +19,7 @@ def next_page? = (raise NotImplementedError) # @api public # # @raise [OpenAI::Errors::APIError] - # @return [OpenAI::Internal::Type::BasePage] + # @return [self] def next_page = (raise NotImplementedError) # @api public diff --git a/lib/openai/internal/type/hash_of.rb b/lib/openai/internal/type/hash_of.rb index b586a220..20280b5b 100644 --- a/lib/openai/internal/type/hash_of.rb +++ b/lib/openai/internal/type/hash_of.rb @@ -28,6 +28,8 @@ class HashOf # @option spec [Proc] :union # # @option spec [Boolean] :"nil?" + # + # @return [OpenAI::Internal::Type::HashOf] def self.[](...) = new(...) # @api public From 6fba7b2a1d4043b3ee41f49da43a50c305d613d3 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Tue, 22 Apr 2025 20:13:34 +0000 Subject: [PATCH 07/47] chore(ci): add timeout thresholds for CI jobs --- .github/workflows/ci.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index b2c0c8f7..4f7276bb 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -10,6 +10,7 @@ on: jobs: lint: + timeout-minutes: 10 name: lint runs-on: ubuntu-latest steps: @@ -25,6 +26,7 @@ jobs: - name: Run lints run: ./scripts/lint test: + timeout-minutes: 10 name: test runs-on: ubuntu-latest steps: From 641f4eb0fadf75909a32dc48644bf0e220fbbe81 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Wed, 23 Apr 2025 16:30:52 +0000 Subject: [PATCH 08/47] feat(api): adding new image model support --- .stats.yml | 6 +- lib/openai.rb | 4 + .../beta/thread_create_and_run_params.rb | 15 +- lib/openai/models/eval_create_params.rb | 431 ++++++---- lib/openai/models/eval_create_response.rb | 218 ++++- lib/openai/models/eval_label_model_grader.rb | 226 ++--- lib/openai/models/eval_list_response.rb | 218 ++++- lib/openai/models/eval_retrieve_response.rb | 220 ++++- .../models/eval_text_similarity_grader.rb | 9 +- lib/openai/models/eval_update_response.rb | 218 ++++- ...create_eval_completions_run_data_source.rb | 492 +++++------ .../models/evals/run_cancel_response.rb | 454 +++++++++- lib/openai/models/evals/run_create_params.rb | 473 ++++++++++- .../models/evals/run_create_response.rb | 454 +++++++++- lib/openai/models/evals/run_list_params.rb | 8 +- lib/openai/models/evals/run_list_response.rb | 450 +++++++++- .../models/evals/run_retrieve_response.rb | 456 +++++++++- .../checkpoints/permission_delete_params.rb | 8 +- lib/openai/models/image.rb | 14 +- .../models/image_create_variation_params.rb | 3 +- lib/openai/models/image_edit_params.rb | 89 +- lib/openai/models/image_generate_params.rb | 175 +++- lib/openai/models/image_model.rb | 1 + lib/openai/models/images_response.rb | 73 +- ...onse_reasoning_summary_part_added_event.rb | 69 ++ ...ponse_reasoning_summary_part_done_event.rb | 69 ++ ...onse_reasoning_summary_text_delta_event.rb | 48 ++ ...ponse_reasoning_summary_text_done_event.rb | 48 ++ .../models/responses/response_stream_event.rb | 18 +- lib/openai/resources/evals.rb | 7 +- lib/openai/resources/evals/runs.rb | 2 +- .../fine_tuning/checkpoints/permissions.rb | 18 +- lib/openai/resources/images.rb | 19 +- lib/openai/resources/responses.rb | 2 +- .../beta/thread_create_and_run_params.rbi | 12 - rbi/lib/openai/models/eval_create_params.rbi | 636 ++++++++------ .../openai/models/eval_create_response.rbi | 315 ++++++- .../openai/models/eval_label_model_grader.rbi | 316 ++----- rbi/lib/openai/models/eval_list_response.rbi | 309 ++++++- .../openai/models/eval_retrieve_response.rbi | 326 +++++++- .../models/eval_text_similarity_grader.rbi | 9 +- .../openai/models/eval_update_response.rbi | 315 ++++++- ...reate_eval_completions_run_data_source.rbi | 786 +++++++----------- .../models/evals/run_cancel_response.rbi | 662 ++++++++++++++- .../openai/models/evals/run_create_params.rbi | 698 +++++++++++++++- .../models/evals/run_create_response.rbi | 662 ++++++++++++++- .../openai/models/evals/run_list_params.rbi | 8 +- .../openai/models/evals/run_list_response.rbi | 662 ++++++++++++++- .../models/evals/run_retrieve_response.rbi | 662 ++++++++++++++- .../checkpoints/permission_delete_params.rbi | 18 +- rbi/lib/openai/models/image.rbi | 14 +- .../models/image_create_variation_params.rbi | 3 +- rbi/lib/openai/models/image_edit_params.rbi | 88 +- .../openai/models/image_generate_params.rbi | 185 ++++- rbi/lib/openai/models/image_model.rbi | 1 + rbi/lib/openai/models/images_response.rbi | 100 ++- ...nse_reasoning_summary_part_added_event.rbi | 88 ++ ...onse_reasoning_summary_part_done_event.rbi | 88 ++ ...nse_reasoning_summary_text_delta_event.rbi | 55 ++ ...onse_reasoning_summary_text_done_event.rbi | 55 ++ .../responses/response_stream_event.rbi | 2 +- rbi/lib/openai/resources/evals.rbi | 9 +- rbi/lib/openai/resources/evals/runs.rbi | 7 +- .../fine_tuning/checkpoints/permissions.rbi | 5 +- rbi/lib/openai/resources/images.rbi | 105 ++- rbi/lib/openai/resources/responses.rbi | 4 + .../beta/thread_create_and_run_params.rbs | 17 +- sig/openai/models/eval_create_params.rbs | 281 ++++--- sig/openai/models/eval_create_response.rbs | 161 +++- sig/openai/models/eval_label_model_grader.rbs | 169 ++-- sig/openai/models/eval_list_response.rbs | 161 +++- sig/openai/models/eval_retrieve_response.rbs | 161 +++- .../models/eval_text_similarity_grader.rbs | 2 - sig/openai/models/eval_update_response.rbs | 161 +++- ...reate_eval_completions_run_data_source.rbs | 370 ++++----- .../models/evals/run_cancel_response.rbs | 341 +++++++- sig/openai/models/evals/run_create_params.rbs | 351 +++++++- .../models/evals/run_create_response.rbs | 341 +++++++- sig/openai/models/evals/run_list_response.rbs | 341 +++++++- .../models/evals/run_retrieve_response.rbs | 341 +++++++- .../checkpoints/permission_delete_params.rbs | 10 +- sig/openai/models/image_edit_params.rbs | 36 +- sig/openai/models/image_generate_params.rbs | 79 +- sig/openai/models/image_model.rbs | 3 +- sig/openai/models/images_response.rbs | 61 +- ...nse_reasoning_summary_part_added_event.rbs | 48 ++ ...onse_reasoning_summary_part_done_event.rbs | 48 ++ ...nse_reasoning_summary_text_delta_event.rbs | 36 + ...onse_reasoning_summary_text_done_event.rbs | 36 + .../responses/response_stream_event.rbs | 6 +- sig/openai/resources/beta/threads.rbs | 4 +- sig/openai/resources/evals.rbs | 1 - .../fine_tuning/checkpoints/permissions.rbs | 3 +- sig/openai/resources/images.rbs | 9 +- test/openai/resources/evals_test.rb | 4 - .../checkpoints/permissions_test.rb | 9 +- test/openai/resources/images_test.rb | 9 +- 97 files changed, 13333 insertions(+), 2487 deletions(-) create mode 100644 lib/openai/models/responses/response_reasoning_summary_part_added_event.rb create mode 100644 lib/openai/models/responses/response_reasoning_summary_part_done_event.rb create mode 100644 lib/openai/models/responses/response_reasoning_summary_text_delta_event.rb create mode 100644 lib/openai/models/responses/response_reasoning_summary_text_done_event.rb create mode 100644 rbi/lib/openai/models/responses/response_reasoning_summary_part_added_event.rbi create mode 100644 rbi/lib/openai/models/responses/response_reasoning_summary_part_done_event.rbi create mode 100644 rbi/lib/openai/models/responses/response_reasoning_summary_text_delta_event.rbi create mode 100644 rbi/lib/openai/models/responses/response_reasoning_summary_text_done_event.rbi create mode 100644 sig/openai/models/responses/response_reasoning_summary_part_added_event.rbs create mode 100644 sig/openai/models/responses/response_reasoning_summary_part_done_event.rbs create mode 100644 sig/openai/models/responses/response_reasoning_summary_text_delta_event.rbs create mode 100644 sig/openai/models/responses/response_reasoning_summary_text_done_event.rbs diff --git a/.stats.yml b/.stats.yml index c3609ee0..7738ef3d 100644 --- a/.stats.yml +++ b/.stats.yml @@ -1,4 +1,4 @@ configured_endpoints: 95 -openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/openai%2Fopenai-5633633cc38734869cf7d993f7b549bb8e4d10e0ec45381ec2cd91507cd8eb8f.yml -openapi_spec_hash: c855121b2b2324b99499c9244c21d24d -config_hash: d20837393b73efdb19cd08e04c1cc9a1 +openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/openai%2Fopenai-8b68ae6b807dca92e914da1dd9e835a20f69b075e79102a264367fd7fddddb33.yml +openapi_spec_hash: b6ade5b1a6327339e6669e1134de2d03 +config_hash: b597cd9a31e9e5ec709e2eefb4c54122 diff --git a/lib/openai.rb b/lib/openai.rb index 68a9c048..5bd82a3c 100644 --- a/lib/openai.rb +++ b/lib/openai.rb @@ -363,6 +363,10 @@ require_relative "openai/models/responses/response_output_refusal" require_relative "openai/models/responses/response_output_text" require_relative "openai/models/responses/response_reasoning_item" +require_relative "openai/models/responses/response_reasoning_summary_part_added_event" +require_relative "openai/models/responses/response_reasoning_summary_part_done_event" +require_relative "openai/models/responses/response_reasoning_summary_text_delta_event" +require_relative "openai/models/responses/response_reasoning_summary_text_done_event" require_relative "openai/models/responses/response_refusal_delta_event" require_relative "openai/models/responses/response_refusal_done_event" require_relative "openai/models/responses/response_retrieve_params" diff --git a/lib/openai/models/beta/thread_create_and_run_params.rb b/lib/openai/models/beta/thread_create_and_run_params.rb index 131ba814..979eb39f 100644 --- a/lib/openai/models/beta/thread_create_and_run_params.rb +++ b/lib/openai/models/beta/thread_create_and_run_params.rb @@ -140,7 +140,7 @@ class ThreadCreateAndRunParams < OpenAI::Internal::Type::BaseModel # # @return [Array, nil] optional :tools, - -> { OpenAI::Internal::Type::ArrayOf[union: OpenAI::Models::Beta::ThreadCreateAndRunParams::Tool] }, + -> { OpenAI::Internal::Type::ArrayOf[union: OpenAI::Models::Beta::AssistantTool] }, nil?: true # @!attribute top_p @@ -584,19 +584,6 @@ class FileSearch < OpenAI::Internal::Type::BaseModel end end - module Tool - extend OpenAI::Internal::Type::Union - - variant -> { OpenAI::Models::Beta::CodeInterpreterTool } - - variant -> { OpenAI::Models::Beta::FileSearchTool } - - variant -> { OpenAI::Models::Beta::FunctionTool } - - # @!method self.variants - # @return [Array(OpenAI::Models::Beta::CodeInterpreterTool, OpenAI::Models::Beta::FileSearchTool, OpenAI::Models::Beta::FunctionTool)] - end - class TruncationStrategy < OpenAI::Internal::Type::BaseModel # @!attribute type # The truncation strategy to use for the thread. The default is `auto`. If set to diff --git a/lib/openai/models/eval_create_params.rb b/lib/openai/models/eval_create_params.rb index 54d31b12..5f686026 100644 --- a/lib/openai/models/eval_create_params.rb +++ b/lib/openai/models/eval_create_params.rb @@ -10,13 +10,13 @@ class EvalCreateParams < OpenAI::Internal::Type::BaseModel # @!attribute data_source_config # The configuration for the data source used for the evaluation runs. # - # @return [OpenAI::Models::EvalCreateParams::DataSourceConfig::Custom, OpenAI::Models::EvalCreateParams::DataSourceConfig::StoredCompletions] + # @return [OpenAI::Models::EvalCreateParams::DataSourceConfig::Custom, OpenAI::Models::EvalCreateParams::DataSourceConfig::Logs] required :data_source_config, union: -> { OpenAI::Models::EvalCreateParams::DataSourceConfig } # @!attribute testing_criteria # A list of graders for all eval runs in this group. # - # @return [Array] + # @return [Array] required :testing_criteria, -> { OpenAI::Internal::Type::ArrayOf[union: OpenAI::Models::EvalCreateParams::TestingCriterion] } @@ -37,18 +37,11 @@ class EvalCreateParams < OpenAI::Internal::Type::BaseModel # @return [String, nil] optional :name, String - # @!attribute share_with_openai - # Indicates whether the evaluation is shared with OpenAI. - # - # @return [Boolean, nil] - optional :share_with_openai, OpenAI::Internal::Type::Boolean - - # @!method initialize(data_source_config:, testing_criteria:, metadata: nil, name: nil, share_with_openai: nil, request_options: {}) - # @param data_source_config [OpenAI::Models::EvalCreateParams::DataSourceConfig::Custom, OpenAI::Models::EvalCreateParams::DataSourceConfig::StoredCompletions] - # @param testing_criteria [Array] + # @!method initialize(data_source_config:, testing_criteria:, metadata: nil, name: nil, request_options: {}) + # @param data_source_config [OpenAI::Models::EvalCreateParams::DataSourceConfig::Custom, OpenAI::Models::EvalCreateParams::DataSourceConfig::Logs] + # @param testing_criteria [Array] # @param metadata [Hash{Symbol=>String}, nil] # @param name [String] - # @param share_with_openai [Boolean] # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] # The configuration for the data source used for the evaluation runs. @@ -65,11 +58,11 @@ module DataSourceConfig # A data source config which specifies the metadata property of your stored completions query. # This is usually metadata like `usecase=chatbot` or `prompt-version=v2`, etc. - variant :stored_completions, -> { OpenAI::Models::EvalCreateParams::DataSourceConfig::StoredCompletions } + variant :logs, -> { OpenAI::Models::EvalCreateParams::DataSourceConfig::Logs } class Custom < OpenAI::Internal::Type::BaseModel # @!attribute item_schema - # The json schema for the run data source items. + # The json schema for each row in the data source. # # @return [Hash{Symbol=>Object}] required :item_schema, OpenAI::Internal::Type::HashOf[OpenAI::Internal::Type::Unknown] @@ -81,7 +74,8 @@ class Custom < OpenAI::Internal::Type::BaseModel required :type, const: :custom # @!attribute include_sample_schema - # Whether to include the sample schema in the data source. + # Whether the eval should expect you to populate the sample namespace (ie, by + # generating responses off of your data source) # # @return [Boolean, nil] optional :include_sample_schema, OpenAI::Internal::Type::Boolean @@ -99,35 +93,30 @@ class Custom < OpenAI::Internal::Type::BaseModel # @param type [Symbol, :custom] end - class StoredCompletions < OpenAI::Internal::Type::BaseModel + class Logs < OpenAI::Internal::Type::BaseModel # @!attribute type - # The type of data source. Always `stored_completions`. + # The type of data source. Always `logs`. # - # @return [Symbol, :stored_completions] - required :type, const: :stored_completions + # @return [Symbol, :logs] + required :type, const: :logs # @!attribute 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. + # Metadata filters for the logs data source. # - # Keys are strings with a maximum length of 64 characters. Values are strings with - # a maximum length of 512 characters. - # - # @return [Hash{Symbol=>String}, nil] - optional :metadata, OpenAI::Internal::Type::HashOf[String], nil?: true + # @return [Hash{Symbol=>Object}, nil] + optional :metadata, OpenAI::Internal::Type::HashOf[OpenAI::Internal::Type::Unknown] - # @!method initialize(metadata: nil, type: :stored_completions) + # @!method initialize(metadata: nil, type: :logs) # A data source config which specifies the metadata property of your stored # completions query. This is usually metadata like `usecase=chatbot` or # `prompt-version=v2`, etc. # - # @param metadata [Hash{Symbol=>String}, nil] - # @param type [Symbol, :stored_completions] + # @param metadata [Hash{Symbol=>Object}] + # @param type [Symbol, :logs] end # @!method self.variants - # @return [Array(OpenAI::Models::EvalCreateParams::DataSourceConfig::Custom, OpenAI::Models::EvalCreateParams::DataSourceConfig::StoredCompletions)] + # @return [Array(OpenAI::Models::EvalCreateParams::DataSourceConfig::Custom, OpenAI::Models::EvalCreateParams::DataSourceConfig::Logs)] end # A LabelModelGrader object which uses a model to assign labels to each item in @@ -147,10 +136,18 @@ module TestingCriterion # A TextSimilarityGrader object which grades text based on similarity metrics. variant :text_similarity, -> { OpenAI::Models::EvalTextSimilarityGrader } + # A PythonGrader object that runs a python script on the input. + variant :python, -> { OpenAI::Models::EvalCreateParams::TestingCriterion::Python } + + # A ScoreModelGrader object that uses a model to assign a score to the input. + variant :score_model, -> { OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel } + class LabelModel < OpenAI::Internal::Type::BaseModel # @!attribute input + # A list of chat messages forming the prompt or context. May include variable + # references to the "item" namespace, ie {{item.name}}. # - # @return [Array] + # @return [Array] required :input, -> { OpenAI::Internal::Type::ArrayOf[union: OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input] } @@ -188,21 +185,26 @@ class LabelModel < OpenAI::Internal::Type::BaseModel # A LabelModelGrader object which uses a model to assign labels to each item in # the evaluation. # - # @param input [Array] + # @param input [Array] # @param labels [Array] # @param model [String] # @param name [String] # @param passing_labels [Array] # @param type [Symbol, :label_model] + # A chat message that makes up the prompt or context. May include variable + # references to the "item" namespace, ie {{item.name}}. module Input extend OpenAI::Internal::Type::Union variant -> { OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::SimpleInputMessage } - variant -> { OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::InputMessage } - - variant -> { OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::OutputMessage } + # A message input to the model with a role indicating instruction following + # hierarchy. Instructions given with the `developer` or `system` role take + # precedence over instructions given with the `user` role. Messages with the + # `assistant` role are presumed to have been generated by the model in previous + # interactions. + variant -> { OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem } class SimpleInputMessage < OpenAI::Internal::Type::BaseModel # @!attribute content @@ -222,71 +224,88 @@ class SimpleInputMessage < OpenAI::Internal::Type::BaseModel # @param role [String] end - class InputMessage < OpenAI::Internal::Type::BaseModel + class EvalItem < OpenAI::Internal::Type::BaseModel # @!attribute content + # Text inputs to the model - can contain template strings. # - # @return [OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::InputMessage::Content] + # @return [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::Content::OutputText] required :content, - -> { OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::InputMessage::Content } + union: -> { OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::Content } # @!attribute role - # The role of the message. One of `user`, `system`, or `developer`. + # The role of the message input. One of `user`, `assistant`, `system`, or + # `developer`. # - # @return [Symbol, OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::InputMessage::Role] + # @return [Symbol, OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::Role] required :role, - enum: -> { OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::InputMessage::Role } + enum: -> { OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::Role } # @!attribute type - # The type of item, which is always `message`. + # The type of the message input. Always `message`. # - # @return [Symbol, OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::InputMessage::Type] - required :type, - enum: -> { OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::InputMessage::Type } - - # @!method initialize(content:, role:, type:) - # @param content [OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::InputMessage::Content] - # @param role [Symbol, OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::InputMessage::Role] - # @param type [Symbol, OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::InputMessage::Type] - - # @see OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::InputMessage#content - class Content < OpenAI::Internal::Type::BaseModel - # @!attribute text - # The text content. - # - # @return [String] - required :text, String - - # @!attribute type - # The type of content, which is always `input_text`. - # - # @return [Symbol, OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::InputMessage::Content::Type] - required :type, - enum: -> { OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::InputMessage::Content::Type } - - # @!method initialize(text:, type:) - # @param text [String] - # @param type [Symbol, OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::InputMessage::Content::Type] - - # The type of content, which is always `input_text`. - # - # @see OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::InputMessage::Content#type - module Type - extend OpenAI::Internal::Type::Enum - - INPUT_TEXT = :input_text + # @return [Symbol, OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::Type, nil] + optional :type, + enum: -> { OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::Type } + + # @!method initialize(content:, role:, type: nil) + # A message input to the model with a role indicating instruction following + # hierarchy. Instructions given with the `developer` or `system` role take + # precedence over instructions given with the `user` role. Messages with the + # `assistant` role are presumed to have been generated by the model in previous + # interactions. + # + # @param content [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::Content::OutputText] + # @param role [Symbol, OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::Role] + # @param type [Symbol, OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::Type] - # @!method self.values - # @return [Array] + # Text inputs to the model - can contain template strings. + # + # @see OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem#content + module Content + extend OpenAI::Internal::Type::Union + + # A text input to the model. + variant String + + # A text input to the model. + variant -> { OpenAI::Models::Responses::ResponseInputText } + + # A text output from the model. + variant -> { OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::Content::OutputText } + + class OutputText < OpenAI::Internal::Type::BaseModel + # @!attribute text + # The text output from the model. + # + # @return [String] + required :text, String + + # @!attribute type + # The type of the output text. Always `output_text`. + # + # @return [Symbol, :output_text] + required :type, const: :output_text + + # @!method initialize(text:, type: :output_text) + # A text output from the model. + # + # @param text [String] + # @param type [Symbol, :output_text] end + + # @!method self.variants + # @return [Array(String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::Content::OutputText)] end - # The role of the message. One of `user`, `system`, or `developer`. + # The role of the message input. One of `user`, `assistant`, `system`, or + # `developer`. # - # @see OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::InputMessage#role + # @see OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem#role module Role extend OpenAI::Internal::Type::Enum USER = :user + ASSISTANT = :assistant SYSTEM = :system DEVELOPER = :developer @@ -294,9 +313,9 @@ module Role # @return [Array] end - # The type of item, which is always `message`. + # The type of the message input. Always `message`. # - # @see OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::InputMessage#type + # @see OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem#type module Type extend OpenAI::Internal::Type::Enum @@ -307,96 +326,210 @@ module Type end end - class OutputMessage < OpenAI::Internal::Type::BaseModel - # @!attribute content - # - # @return [OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::OutputMessage::Content] - required :content, - -> { OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::OutputMessage::Content } + # @!method self.variants + # @return [Array(OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::SimpleInputMessage, OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem)] + end + end - # @!attribute role - # The role of the message. Must be `assistant` for output. - # - # @return [Symbol, OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::OutputMessage::Role] - required :role, - enum: -> { OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::OutputMessage::Role } + class Python < OpenAI::Internal::Type::BaseModel + # @!attribute name + # The name of the grader. + # + # @return [String] + required :name, String - # @!attribute type - # The type of item, which is always `message`. - # - # @return [Symbol, OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::OutputMessage::Type] - required :type, - enum: -> { OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::OutputMessage::Type } + # @!attribute source + # The source code of the python script. + # + # @return [String] + required :source, String + + # @!attribute type + # The object type, which is always `python`. + # + # @return [Symbol, :python] + required :type, const: :python + + # @!attribute image_tag + # The image tag to use for the python script. + # + # @return [String, nil] + optional :image_tag, String + + # @!attribute pass_threshold + # The threshold for the score. + # + # @return [Float, nil] + optional :pass_threshold, Float + + # @!method initialize(name:, source:, image_tag: nil, pass_threshold: nil, type: :python) + # A PythonGrader object that runs a python script on the input. + # + # @param name [String] + # @param source [String] + # @param image_tag [String] + # @param pass_threshold [Float] + # @param type [Symbol, :python] + end + + class ScoreModel < OpenAI::Internal::Type::BaseModel + # @!attribute input + # The input text. This may include template strings. + # + # @return [Array] + required :input, + -> { OpenAI::Internal::Type::ArrayOf[OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input] } + + # @!attribute model + # The model to use for the evaluation. + # + # @return [String] + required :model, String + + # @!attribute name + # The name of the grader. + # + # @return [String] + required :name, String - # @!method initialize(content:, role:, type:) - # @param content [OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::OutputMessage::Content] - # @param role [Symbol, OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::OutputMessage::Role] - # @param type [Symbol, OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::OutputMessage::Type] + # @!attribute type + # The object type, which is always `score_model`. + # + # @return [Symbol, :score_model] + required :type, const: :score_model + + # @!attribute pass_threshold + # The threshold for the score. + # + # @return [Float, nil] + optional :pass_threshold, Float - # @see OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::OutputMessage#content - class Content < OpenAI::Internal::Type::BaseModel + # @!attribute range + # The range of the score. Defaults to `[0, 1]`. + # + # @return [Array, nil] + optional :range, OpenAI::Internal::Type::ArrayOf[Float] + + # @!attribute sampling_params + # The sampling parameters for the model. + # + # @return [Object, nil] + optional :sampling_params, OpenAI::Internal::Type::Unknown + + # @!method initialize(input:, model:, name:, pass_threshold: nil, range: nil, sampling_params: nil, type: :score_model) + # A ScoreModelGrader object that uses a model to assign a score to the input. + # + # @param input [Array] + # @param model [String] + # @param name [String] + # @param pass_threshold [Float] + # @param range [Array] + # @param sampling_params [Object] + # @param type [Symbol, :score_model] + + class Input < OpenAI::Internal::Type::BaseModel + # @!attribute content + # Text inputs to the model - can contain template strings. + # + # @return [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input::Content::OutputText] + required :content, + union: -> { OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input::Content } + + # @!attribute role + # The role of the message input. One of `user`, `assistant`, `system`, or + # `developer`. + # + # @return [Symbol, OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input::Role] + required :role, enum: -> { OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input::Role } + + # @!attribute type + # The type of the message input. Always `message`. + # + # @return [Symbol, OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input::Type, nil] + optional :type, enum: -> { OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input::Type } + + # @!method initialize(content:, role:, type: nil) + # A message input to the model with a role indicating instruction following + # hierarchy. Instructions given with the `developer` or `system` role take + # precedence over instructions given with the `user` role. Messages with the + # `assistant` role are presumed to have been generated by the model in previous + # interactions. + # + # @param content [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input::Content::OutputText] + # @param role [Symbol, OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input::Role] + # @param type [Symbol, OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input::Type] + + # Text inputs to the model - can contain template strings. + # + # @see OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input#content + module Content + extend OpenAI::Internal::Type::Union + + # A text input to the model. + variant String + + # A text input to the model. + variant -> { OpenAI::Models::Responses::ResponseInputText } + + # A text output from the model. + variant -> { OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input::Content::OutputText } + + class OutputText < OpenAI::Internal::Type::BaseModel # @!attribute text - # The text content. + # The text output from the model. # # @return [String] required :text, String # @!attribute type - # The type of content, which is always `output_text`. + # The type of the output text. Always `output_text`. # - # @return [Symbol, OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::OutputMessage::Content::Type] - required :type, - enum: -> { OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::OutputMessage::Content::Type } - - # @!method initialize(text:, type:) - # @param text [String] - # @param type [Symbol, OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::OutputMessage::Content::Type] + # @return [Symbol, :output_text] + required :type, const: :output_text - # The type of content, which is always `output_text`. + # @!method initialize(text:, type: :output_text) + # A text output from the model. # - # @see OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::OutputMessage::Content#type - module Type - extend OpenAI::Internal::Type::Enum - - OUTPUT_TEXT = :output_text - - # @!method self.values - # @return [Array] - end + # @param text [String] + # @param type [Symbol, :output_text] end - # The role of the message. Must be `assistant` for output. - # - # @see OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::OutputMessage#role - module Role - extend OpenAI::Internal::Type::Enum + # @!method self.variants + # @return [Array(String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input::Content::OutputText)] + end - ASSISTANT = :assistant + # The role of the message input. One of `user`, `assistant`, `system`, or + # `developer`. + # + # @see OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input#role + module Role + extend OpenAI::Internal::Type::Enum - # @!method self.values - # @return [Array] - end + USER = :user + ASSISTANT = :assistant + SYSTEM = :system + DEVELOPER = :developer - # The type of item, which is always `message`. - # - # @see OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::OutputMessage#type - module Type - extend OpenAI::Internal::Type::Enum + # @!method self.values + # @return [Array] + end - MESSAGE = :message + # The type of the message input. Always `message`. + # + # @see OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input#type + module Type + extend OpenAI::Internal::Type::Enum - # @!method self.values - # @return [Array] - end - end + MESSAGE = :message - # @!method self.variants - # @return [Array(OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::SimpleInputMessage, OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::InputMessage, OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::OutputMessage)] + # @!method self.values + # @return [Array] + end end end # @!method self.variants - # @return [Array(OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel, OpenAI::Models::EvalStringCheckGrader, OpenAI::Models::EvalTextSimilarityGrader)] + # @return [Array(OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel, OpenAI::Models::EvalStringCheckGrader, OpenAI::Models::EvalTextSimilarityGrader, OpenAI::Models::EvalCreateParams::TestingCriterion::Python, OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel)] end end end diff --git a/lib/openai/models/eval_create_response.rb b/lib/openai/models/eval_create_response.rb index 12832a04..65885fd7 100644 --- a/lib/openai/models/eval_create_response.rb +++ b/lib/openai/models/eval_create_response.rb @@ -45,20 +45,14 @@ class EvalCreateResponse < OpenAI::Internal::Type::BaseModel # @return [Symbol, :eval] required :object, const: :eval - # @!attribute share_with_openai - # Indicates whether the evaluation is shared with OpenAI. - # - # @return [Boolean] - required :share_with_openai, OpenAI::Internal::Type::Boolean - # @!attribute testing_criteria # A list of testing criteria. # - # @return [Array] + # @return [Array] required :testing_criteria, -> { OpenAI::Internal::Type::ArrayOf[union: OpenAI::Models::EvalCreateResponse::TestingCriterion] } - # @!method initialize(id:, created_at:, data_source_config:, metadata:, name:, share_with_openai:, testing_criteria:, object: :eval) + # @!method initialize(id:, created_at:, data_source_config:, metadata:, name:, testing_criteria:, object: :eval) # An Eval object with a data source config and testing criteria. An Eval # represents a task to be done for your LLM integration. Like: # @@ -71,8 +65,7 @@ class EvalCreateResponse < OpenAI::Internal::Type::BaseModel # @param data_source_config [OpenAI::Models::EvalCustomDataSourceConfig, OpenAI::Models::EvalStoredCompletionsDataSourceConfig] # @param metadata [Hash{Symbol=>String}, nil] # @param name [String] - # @param share_with_openai [Boolean] - # @param testing_criteria [Array] + # @param testing_criteria [Array] # @param object [Symbol, :eval] # Configuration of data sources used in runs of the evaluation. @@ -116,8 +109,211 @@ module TestingCriterion # A TextSimilarityGrader object which grades text based on similarity metrics. variant :text_similarity, -> { OpenAI::Models::EvalTextSimilarityGrader } + # A PythonGrader object that runs a python script on the input. + variant :python, -> { OpenAI::Models::EvalCreateResponse::TestingCriterion::Python } + + # A ScoreModelGrader object that uses a model to assign a score to the input. + variant :score_model, -> { OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel } + + class Python < OpenAI::Internal::Type::BaseModel + # @!attribute name + # The name of the grader. + # + # @return [String] + required :name, String + + # @!attribute source + # The source code of the python script. + # + # @return [String] + required :source, String + + # @!attribute type + # The object type, which is always `python`. + # + # @return [Symbol, :python] + required :type, const: :python + + # @!attribute image_tag + # The image tag to use for the python script. + # + # @return [String, nil] + optional :image_tag, String + + # @!attribute pass_threshold + # The threshold for the score. + # + # @return [Float, nil] + optional :pass_threshold, Float + + # @!method initialize(name:, source:, image_tag: nil, pass_threshold: nil, type: :python) + # A PythonGrader object that runs a python script on the input. + # + # @param name [String] + # @param source [String] + # @param image_tag [String] + # @param pass_threshold [Float] + # @param type [Symbol, :python] + end + + class ScoreModel < OpenAI::Internal::Type::BaseModel + # @!attribute input + # The input text. This may include template strings. + # + # @return [Array] + required :input, + -> { OpenAI::Internal::Type::ArrayOf[OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input] } + + # @!attribute model + # The model to use for the evaluation. + # + # @return [String] + required :model, String + + # @!attribute name + # The name of the grader. + # + # @return [String] + required :name, String + + # @!attribute type + # The object type, which is always `score_model`. + # + # @return [Symbol, :score_model] + required :type, const: :score_model + + # @!attribute pass_threshold + # The threshold for the score. + # + # @return [Float, nil] + optional :pass_threshold, Float + + # @!attribute range + # The range of the score. Defaults to `[0, 1]`. + # + # @return [Array, nil] + optional :range, OpenAI::Internal::Type::ArrayOf[Float] + + # @!attribute sampling_params + # The sampling parameters for the model. + # + # @return [Object, nil] + optional :sampling_params, OpenAI::Internal::Type::Unknown + + # @!method initialize(input:, model:, name:, pass_threshold: nil, range: nil, sampling_params: nil, type: :score_model) + # A ScoreModelGrader object that uses a model to assign a score to the input. + # + # @param input [Array] + # @param model [String] + # @param name [String] + # @param pass_threshold [Float] + # @param range [Array] + # @param sampling_params [Object] + # @param type [Symbol, :score_model] + + class Input < OpenAI::Internal::Type::BaseModel + # @!attribute content + # Text inputs to the model - can contain template strings. + # + # @return [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Content::OutputText] + required :content, + union: -> { OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Content } + + # @!attribute role + # The role of the message input. One of `user`, `assistant`, `system`, or + # `developer`. + # + # @return [Symbol, OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Role] + required :role, enum: -> { OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Role } + + # @!attribute type + # The type of the message input. Always `message`. + # + # @return [Symbol, OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Type, nil] + optional :type, enum: -> { OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Type } + + # @!method initialize(content:, role:, type: nil) + # A message input to the model with a role indicating instruction following + # hierarchy. Instructions given with the `developer` or `system` role take + # precedence over instructions given with the `user` role. Messages with the + # `assistant` role are presumed to have been generated by the model in previous + # interactions. + # + # @param content [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Content::OutputText] + # @param role [Symbol, OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Role] + # @param type [Symbol, OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Type] + + # Text inputs to the model - can contain template strings. + # + # @see OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input#content + module Content + extend OpenAI::Internal::Type::Union + + # A text input to the model. + variant String + + # A text input to the model. + variant -> { OpenAI::Models::Responses::ResponseInputText } + + # A text output from the model. + variant -> { OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Content::OutputText } + + class OutputText < OpenAI::Internal::Type::BaseModel + # @!attribute text + # The text output from the model. + # + # @return [String] + required :text, String + + # @!attribute type + # The type of the output text. Always `output_text`. + # + # @return [Symbol, :output_text] + required :type, const: :output_text + + # @!method initialize(text:, type: :output_text) + # A text output from the model. + # + # @param text [String] + # @param type [Symbol, :output_text] + end + + # @!method self.variants + # @return [Array(String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Content::OutputText)] + end + + # The role of the message input. One of `user`, `assistant`, `system`, or + # `developer`. + # + # @see OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input#role + module Role + extend OpenAI::Internal::Type::Enum + + USER = :user + ASSISTANT = :assistant + SYSTEM = :system + DEVELOPER = :developer + + # @!method self.values + # @return [Array] + end + + # The type of the message input. Always `message`. + # + # @see OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input#type + module Type + extend OpenAI::Internal::Type::Enum + + MESSAGE = :message + + # @!method self.values + # @return [Array] + end + end + end + # @!method self.variants - # @return [Array(OpenAI::Models::EvalLabelModelGrader, OpenAI::Models::EvalStringCheckGrader, OpenAI::Models::EvalTextSimilarityGrader)] + # @return [Array(OpenAI::Models::EvalLabelModelGrader, OpenAI::Models::EvalStringCheckGrader, OpenAI::Models::EvalTextSimilarityGrader, OpenAI::Models::EvalCreateResponse::TestingCriterion::Python, OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel)] end end end diff --git a/lib/openai/models/eval_label_model_grader.rb b/lib/openai/models/eval_label_model_grader.rb index 2318e553..2af7746f 100644 --- a/lib/openai/models/eval_label_model_grader.rb +++ b/lib/openai/models/eval_label_model_grader.rb @@ -5,9 +5,8 @@ module Models class EvalLabelModelGrader < OpenAI::Internal::Type::BaseModel # @!attribute input # - # @return [Array] - required :input, - -> { OpenAI::Internal::Type::ArrayOf[union: OpenAI::Models::EvalLabelModelGrader::Input] } + # @return [Array] + required :input, -> { OpenAI::Internal::Type::ArrayOf[OpenAI::Models::EvalLabelModelGrader::Input] } # @!attribute labels # The labels to assign to each item in the evaluation. @@ -43,173 +42,110 @@ class EvalLabelModelGrader < OpenAI::Internal::Type::BaseModel # A LabelModelGrader object which uses a model to assign labels to each item in # the evaluation. # - # @param input [Array] + # @param input [Array] # @param labels [Array] # @param model [String] # @param name [String] # @param passing_labels [Array] # @param type [Symbol, :label_model] - # An item can either be an input message or an output message. - module Input - extend OpenAI::Internal::Type::Union - - discriminator :role - - variant :assistant, -> { OpenAI::Models::EvalLabelModelGrader::Input::Assistant } - - variant -> { OpenAI::Models::EvalLabelModelGrader::Input::InputMessage } - - class InputMessage < OpenAI::Internal::Type::BaseModel - # @!attribute content - # - # @return [OpenAI::Models::EvalLabelModelGrader::Input::InputMessage::Content] - required :content, -> { OpenAI::Models::EvalLabelModelGrader::Input::InputMessage::Content } - - # @!attribute role - # The role of the message. One of `user`, `system`, or `developer`. - # - # @return [Symbol, OpenAI::Models::EvalLabelModelGrader::Input::InputMessage::Role] - required :role, enum: -> { OpenAI::Models::EvalLabelModelGrader::Input::InputMessage::Role } - - # @!attribute type - # The type of item, which is always `message`. - # - # @return [Symbol, OpenAI::Models::EvalLabelModelGrader::Input::InputMessage::Type] - required :type, enum: -> { OpenAI::Models::EvalLabelModelGrader::Input::InputMessage::Type } - - # @!method initialize(content:, role:, type:) - # @param content [OpenAI::Models::EvalLabelModelGrader::Input::InputMessage::Content] - # @param role [Symbol, OpenAI::Models::EvalLabelModelGrader::Input::InputMessage::Role] - # @param type [Symbol, OpenAI::Models::EvalLabelModelGrader::Input::InputMessage::Type] - - # @see OpenAI::Models::EvalLabelModelGrader::Input::InputMessage#content - class Content < OpenAI::Internal::Type::BaseModel + class Input < OpenAI::Internal::Type::BaseModel + # @!attribute content + # Text inputs to the model - can contain template strings. + # + # @return [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::EvalLabelModelGrader::Input::Content::OutputText] + required :content, union: -> { OpenAI::Models::EvalLabelModelGrader::Input::Content } + + # @!attribute role + # The role of the message input. One of `user`, `assistant`, `system`, or + # `developer`. + # + # @return [Symbol, OpenAI::Models::EvalLabelModelGrader::Input::Role] + required :role, enum: -> { OpenAI::Models::EvalLabelModelGrader::Input::Role } + + # @!attribute type + # The type of the message input. Always `message`. + # + # @return [Symbol, OpenAI::Models::EvalLabelModelGrader::Input::Type, nil] + optional :type, enum: -> { OpenAI::Models::EvalLabelModelGrader::Input::Type } + + # @!method initialize(content:, role:, type: nil) + # A message input to the model with a role indicating instruction following + # hierarchy. Instructions given with the `developer` or `system` role take + # precedence over instructions given with the `user` role. Messages with the + # `assistant` role are presumed to have been generated by the model in previous + # interactions. + # + # @param content [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::EvalLabelModelGrader::Input::Content::OutputText] + # @param role [Symbol, OpenAI::Models::EvalLabelModelGrader::Input::Role] + # @param type [Symbol, OpenAI::Models::EvalLabelModelGrader::Input::Type] + + # Text inputs to the model - can contain template strings. + # + # @see OpenAI::Models::EvalLabelModelGrader::Input#content + module Content + extend OpenAI::Internal::Type::Union + + # A text input to the model. + variant String + + # A text input to the model. + variant -> { OpenAI::Models::Responses::ResponseInputText } + + # A text output from the model. + variant -> { OpenAI::Models::EvalLabelModelGrader::Input::Content::OutputText } + + class OutputText < OpenAI::Internal::Type::BaseModel # @!attribute text - # The text content. + # The text output from the model. # # @return [String] required :text, String # @!attribute type - # The type of content, which is always `input_text`. + # The type of the output text. Always `output_text`. # - # @return [Symbol, OpenAI::Models::EvalLabelModelGrader::Input::InputMessage::Content::Type] - required :type, enum: -> { OpenAI::Models::EvalLabelModelGrader::Input::InputMessage::Content::Type } - - # @!method initialize(text:, type:) - # @param text [String] - # @param type [Symbol, OpenAI::Models::EvalLabelModelGrader::Input::InputMessage::Content::Type] + # @return [Symbol, :output_text] + required :type, const: :output_text - # The type of content, which is always `input_text`. + # @!method initialize(text:, type: :output_text) + # A text output from the model. # - # @see OpenAI::Models::EvalLabelModelGrader::Input::InputMessage::Content#type - module Type - extend OpenAI::Internal::Type::Enum - - INPUT_TEXT = :input_text - - # @!method self.values - # @return [Array] - end - end - - # The role of the message. One of `user`, `system`, or `developer`. - # - # @see OpenAI::Models::EvalLabelModelGrader::Input::InputMessage#role - module Role - extend OpenAI::Internal::Type::Enum - - USER = :user - SYSTEM = :system - DEVELOPER = :developer - - # @!method self.values - # @return [Array] + # @param text [String] + # @param type [Symbol, :output_text] end - # The type of item, which is always `message`. - # - # @see OpenAI::Models::EvalLabelModelGrader::Input::InputMessage#type - module Type - extend OpenAI::Internal::Type::Enum - - MESSAGE = :message - - # @!method self.values - # @return [Array] - end + # @!method self.variants + # @return [Array(String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::EvalLabelModelGrader::Input::Content::OutputText)] end - class Assistant < OpenAI::Internal::Type::BaseModel - # @!attribute content - # - # @return [OpenAI::Models::EvalLabelModelGrader::Input::Assistant::Content] - required :content, -> { OpenAI::Models::EvalLabelModelGrader::Input::Assistant::Content } - - # @!attribute role - # The role of the message. Must be `assistant` for output. - # - # @return [Symbol, :assistant] - required :role, const: :assistant - - # @!attribute type - # The type of item, which is always `message`. - # - # @return [Symbol, OpenAI::Models::EvalLabelModelGrader::Input::Assistant::Type] - required :type, enum: -> { OpenAI::Models::EvalLabelModelGrader::Input::Assistant::Type } - - # @!method initialize(content:, type:, role: :assistant) - # @param content [OpenAI::Models::EvalLabelModelGrader::Input::Assistant::Content] - # @param type [Symbol, OpenAI::Models::EvalLabelModelGrader::Input::Assistant::Type] - # @param role [Symbol, :assistant] - - # @see OpenAI::Models::EvalLabelModelGrader::Input::Assistant#content - class Content < OpenAI::Internal::Type::BaseModel - # @!attribute text - # The text content. - # - # @return [String] - required :text, String + # The role of the message input. One of `user`, `assistant`, `system`, or + # `developer`. + # + # @see OpenAI::Models::EvalLabelModelGrader::Input#role + module Role + extend OpenAI::Internal::Type::Enum - # @!attribute type - # The type of content, which is always `output_text`. - # - # @return [Symbol, OpenAI::Models::EvalLabelModelGrader::Input::Assistant::Content::Type] - required :type, enum: -> { OpenAI::Models::EvalLabelModelGrader::Input::Assistant::Content::Type } + USER = :user + ASSISTANT = :assistant + SYSTEM = :system + DEVELOPER = :developer - # @!method initialize(text:, type:) - # @param text [String] - # @param type [Symbol, OpenAI::Models::EvalLabelModelGrader::Input::Assistant::Content::Type] - - # The type of content, which is always `output_text`. - # - # @see OpenAI::Models::EvalLabelModelGrader::Input::Assistant::Content#type - module Type - extend OpenAI::Internal::Type::Enum - - OUTPUT_TEXT = :output_text - - # @!method self.values - # @return [Array] - end - end + # @!method self.values + # @return [Array] + end - # The type of item, which is always `message`. - # - # @see OpenAI::Models::EvalLabelModelGrader::Input::Assistant#type - module Type - extend OpenAI::Internal::Type::Enum + # The type of the message input. Always `message`. + # + # @see OpenAI::Models::EvalLabelModelGrader::Input#type + module Type + extend OpenAI::Internal::Type::Enum - MESSAGE = :message + MESSAGE = :message - # @!method self.values - # @return [Array] - end + # @!method self.values + # @return [Array] end - - # @!method self.variants - # @return [Array(OpenAI::Models::EvalLabelModelGrader::Input::Assistant, OpenAI::Models::EvalLabelModelGrader::Input::InputMessage)] end end end diff --git a/lib/openai/models/eval_list_response.rb b/lib/openai/models/eval_list_response.rb index 0abeed04..d80085f0 100644 --- a/lib/openai/models/eval_list_response.rb +++ b/lib/openai/models/eval_list_response.rb @@ -45,20 +45,14 @@ class EvalListResponse < OpenAI::Internal::Type::BaseModel # @return [Symbol, :eval] required :object, const: :eval - # @!attribute share_with_openai - # Indicates whether the evaluation is shared with OpenAI. - # - # @return [Boolean] - required :share_with_openai, OpenAI::Internal::Type::Boolean - # @!attribute testing_criteria # A list of testing criteria. # - # @return [Array] + # @return [Array] required :testing_criteria, -> { OpenAI::Internal::Type::ArrayOf[union: OpenAI::Models::EvalListResponse::TestingCriterion] } - # @!method initialize(id:, created_at:, data_source_config:, metadata:, name:, share_with_openai:, testing_criteria:, object: :eval) + # @!method initialize(id:, created_at:, data_source_config:, metadata:, name:, testing_criteria:, object: :eval) # An Eval object with a data source config and testing criteria. An Eval # represents a task to be done for your LLM integration. Like: # @@ -71,8 +65,7 @@ class EvalListResponse < OpenAI::Internal::Type::BaseModel # @param data_source_config [OpenAI::Models::EvalCustomDataSourceConfig, OpenAI::Models::EvalStoredCompletionsDataSourceConfig] # @param metadata [Hash{Symbol=>String}, nil] # @param name [String] - # @param share_with_openai [Boolean] - # @param testing_criteria [Array] + # @param testing_criteria [Array] # @param object [Symbol, :eval] # Configuration of data sources used in runs of the evaluation. @@ -116,8 +109,211 @@ module TestingCriterion # A TextSimilarityGrader object which grades text based on similarity metrics. variant :text_similarity, -> { OpenAI::Models::EvalTextSimilarityGrader } + # A PythonGrader object that runs a python script on the input. + variant :python, -> { OpenAI::Models::EvalListResponse::TestingCriterion::Python } + + # A ScoreModelGrader object that uses a model to assign a score to the input. + variant :score_model, -> { OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel } + + class Python < OpenAI::Internal::Type::BaseModel + # @!attribute name + # The name of the grader. + # + # @return [String] + required :name, String + + # @!attribute source + # The source code of the python script. + # + # @return [String] + required :source, String + + # @!attribute type + # The object type, which is always `python`. + # + # @return [Symbol, :python] + required :type, const: :python + + # @!attribute image_tag + # The image tag to use for the python script. + # + # @return [String, nil] + optional :image_tag, String + + # @!attribute pass_threshold + # The threshold for the score. + # + # @return [Float, nil] + optional :pass_threshold, Float + + # @!method initialize(name:, source:, image_tag: nil, pass_threshold: nil, type: :python) + # A PythonGrader object that runs a python script on the input. + # + # @param name [String] + # @param source [String] + # @param image_tag [String] + # @param pass_threshold [Float] + # @param type [Symbol, :python] + end + + class ScoreModel < OpenAI::Internal::Type::BaseModel + # @!attribute input + # The input text. This may include template strings. + # + # @return [Array] + required :input, + -> { OpenAI::Internal::Type::ArrayOf[OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input] } + + # @!attribute model + # The model to use for the evaluation. + # + # @return [String] + required :model, String + + # @!attribute name + # The name of the grader. + # + # @return [String] + required :name, String + + # @!attribute type + # The object type, which is always `score_model`. + # + # @return [Symbol, :score_model] + required :type, const: :score_model + + # @!attribute pass_threshold + # The threshold for the score. + # + # @return [Float, nil] + optional :pass_threshold, Float + + # @!attribute range + # The range of the score. Defaults to `[0, 1]`. + # + # @return [Array, nil] + optional :range, OpenAI::Internal::Type::ArrayOf[Float] + + # @!attribute sampling_params + # The sampling parameters for the model. + # + # @return [Object, nil] + optional :sampling_params, OpenAI::Internal::Type::Unknown + + # @!method initialize(input:, model:, name:, pass_threshold: nil, range: nil, sampling_params: nil, type: :score_model) + # A ScoreModelGrader object that uses a model to assign a score to the input. + # + # @param input [Array] + # @param model [String] + # @param name [String] + # @param pass_threshold [Float] + # @param range [Array] + # @param sampling_params [Object] + # @param type [Symbol, :score_model] + + class Input < OpenAI::Internal::Type::BaseModel + # @!attribute content + # Text inputs to the model - can contain template strings. + # + # @return [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Content::OutputText] + required :content, + union: -> { OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Content } + + # @!attribute role + # The role of the message input. One of `user`, `assistant`, `system`, or + # `developer`. + # + # @return [Symbol, OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Role] + required :role, enum: -> { OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Role } + + # @!attribute type + # The type of the message input. Always `message`. + # + # @return [Symbol, OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Type, nil] + optional :type, enum: -> { OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Type } + + # @!method initialize(content:, role:, type: nil) + # A message input to the model with a role indicating instruction following + # hierarchy. Instructions given with the `developer` or `system` role take + # precedence over instructions given with the `user` role. Messages with the + # `assistant` role are presumed to have been generated by the model in previous + # interactions. + # + # @param content [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Content::OutputText] + # @param role [Symbol, OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Role] + # @param type [Symbol, OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Type] + + # Text inputs to the model - can contain template strings. + # + # @see OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input#content + module Content + extend OpenAI::Internal::Type::Union + + # A text input to the model. + variant String + + # A text input to the model. + variant -> { OpenAI::Models::Responses::ResponseInputText } + + # A text output from the model. + variant -> { OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Content::OutputText } + + class OutputText < OpenAI::Internal::Type::BaseModel + # @!attribute text + # The text output from the model. + # + # @return [String] + required :text, String + + # @!attribute type + # The type of the output text. Always `output_text`. + # + # @return [Symbol, :output_text] + required :type, const: :output_text + + # @!method initialize(text:, type: :output_text) + # A text output from the model. + # + # @param text [String] + # @param type [Symbol, :output_text] + end + + # @!method self.variants + # @return [Array(String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Content::OutputText)] + end + + # The role of the message input. One of `user`, `assistant`, `system`, or + # `developer`. + # + # @see OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input#role + module Role + extend OpenAI::Internal::Type::Enum + + USER = :user + ASSISTANT = :assistant + SYSTEM = :system + DEVELOPER = :developer + + # @!method self.values + # @return [Array] + end + + # The type of the message input. Always `message`. + # + # @see OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input#type + module Type + extend OpenAI::Internal::Type::Enum + + MESSAGE = :message + + # @!method self.values + # @return [Array] + end + end + end + # @!method self.variants - # @return [Array(OpenAI::Models::EvalLabelModelGrader, OpenAI::Models::EvalStringCheckGrader, OpenAI::Models::EvalTextSimilarityGrader)] + # @return [Array(OpenAI::Models::EvalLabelModelGrader, OpenAI::Models::EvalStringCheckGrader, OpenAI::Models::EvalTextSimilarityGrader, OpenAI::Models::EvalListResponse::TestingCriterion::Python, OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel)] end end end diff --git a/lib/openai/models/eval_retrieve_response.rb b/lib/openai/models/eval_retrieve_response.rb index b1d14b18..e90d4965 100644 --- a/lib/openai/models/eval_retrieve_response.rb +++ b/lib/openai/models/eval_retrieve_response.rb @@ -45,20 +45,14 @@ class EvalRetrieveResponse < OpenAI::Internal::Type::BaseModel # @return [Symbol, :eval] required :object, const: :eval - # @!attribute share_with_openai - # Indicates whether the evaluation is shared with OpenAI. - # - # @return [Boolean] - required :share_with_openai, OpenAI::Internal::Type::Boolean - # @!attribute testing_criteria # A list of testing criteria. # - # @return [Array] + # @return [Array] required :testing_criteria, -> { OpenAI::Internal::Type::ArrayOf[union: OpenAI::Models::EvalRetrieveResponse::TestingCriterion] } - # @!method initialize(id:, created_at:, data_source_config:, metadata:, name:, share_with_openai:, testing_criteria:, object: :eval) + # @!method initialize(id:, created_at:, data_source_config:, metadata:, name:, testing_criteria:, object: :eval) # An Eval object with a data source config and testing criteria. An Eval # represents a task to be done for your LLM integration. Like: # @@ -71,8 +65,7 @@ class EvalRetrieveResponse < OpenAI::Internal::Type::BaseModel # @param data_source_config [OpenAI::Models::EvalCustomDataSourceConfig, OpenAI::Models::EvalStoredCompletionsDataSourceConfig] # @param metadata [Hash{Symbol=>String}, nil] # @param name [String] - # @param share_with_openai [Boolean] - # @param testing_criteria [Array] + # @param testing_criteria [Array] # @param object [Symbol, :eval] # Configuration of data sources used in runs of the evaluation. @@ -116,8 +109,213 @@ module TestingCriterion # A TextSimilarityGrader object which grades text based on similarity metrics. variant :text_similarity, -> { OpenAI::Models::EvalTextSimilarityGrader } + # A PythonGrader object that runs a python script on the input. + variant :python, -> { OpenAI::Models::EvalRetrieveResponse::TestingCriterion::Python } + + # A ScoreModelGrader object that uses a model to assign a score to the input. + variant :score_model, -> { OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel } + + class Python < OpenAI::Internal::Type::BaseModel + # @!attribute name + # The name of the grader. + # + # @return [String] + required :name, String + + # @!attribute source + # The source code of the python script. + # + # @return [String] + required :source, String + + # @!attribute type + # The object type, which is always `python`. + # + # @return [Symbol, :python] + required :type, const: :python + + # @!attribute image_tag + # The image tag to use for the python script. + # + # @return [String, nil] + optional :image_tag, String + + # @!attribute pass_threshold + # The threshold for the score. + # + # @return [Float, nil] + optional :pass_threshold, Float + + # @!method initialize(name:, source:, image_tag: nil, pass_threshold: nil, type: :python) + # A PythonGrader object that runs a python script on the input. + # + # @param name [String] + # @param source [String] + # @param image_tag [String] + # @param pass_threshold [Float] + # @param type [Symbol, :python] + end + + class ScoreModel < OpenAI::Internal::Type::BaseModel + # @!attribute input + # The input text. This may include template strings. + # + # @return [Array] + required :input, + -> { OpenAI::Internal::Type::ArrayOf[OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input] } + + # @!attribute model + # The model to use for the evaluation. + # + # @return [String] + required :model, String + + # @!attribute name + # The name of the grader. + # + # @return [String] + required :name, String + + # @!attribute type + # The object type, which is always `score_model`. + # + # @return [Symbol, :score_model] + required :type, const: :score_model + + # @!attribute pass_threshold + # The threshold for the score. + # + # @return [Float, nil] + optional :pass_threshold, Float + + # @!attribute range + # The range of the score. Defaults to `[0, 1]`. + # + # @return [Array, nil] + optional :range, OpenAI::Internal::Type::ArrayOf[Float] + + # @!attribute sampling_params + # The sampling parameters for the model. + # + # @return [Object, nil] + optional :sampling_params, OpenAI::Internal::Type::Unknown + + # @!method initialize(input:, model:, name:, pass_threshold: nil, range: nil, sampling_params: nil, type: :score_model) + # A ScoreModelGrader object that uses a model to assign a score to the input. + # + # @param input [Array] + # @param model [String] + # @param name [String] + # @param pass_threshold [Float] + # @param range [Array] + # @param sampling_params [Object] + # @param type [Symbol, :score_model] + + class Input < OpenAI::Internal::Type::BaseModel + # @!attribute content + # Text inputs to the model - can contain template strings. + # + # @return [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Content::OutputText] + required :content, + union: -> { OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Content } + + # @!attribute role + # The role of the message input. One of `user`, `assistant`, `system`, or + # `developer`. + # + # @return [Symbol, OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Role] + required :role, + enum: -> { OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Role } + + # @!attribute type + # The type of the message input. Always `message`. + # + # @return [Symbol, OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Type, nil] + optional :type, + enum: -> { OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Type } + + # @!method initialize(content:, role:, type: nil) + # A message input to the model with a role indicating instruction following + # hierarchy. Instructions given with the `developer` or `system` role take + # precedence over instructions given with the `user` role. Messages with the + # `assistant` role are presumed to have been generated by the model in previous + # interactions. + # + # @param content [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Content::OutputText] + # @param role [Symbol, OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Role] + # @param type [Symbol, OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Type] + + # Text inputs to the model - can contain template strings. + # + # @see OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input#content + module Content + extend OpenAI::Internal::Type::Union + + # A text input to the model. + variant String + + # A text input to the model. + variant -> { OpenAI::Models::Responses::ResponseInputText } + + # A text output from the model. + variant -> { OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Content::OutputText } + + class OutputText < OpenAI::Internal::Type::BaseModel + # @!attribute text + # The text output from the model. + # + # @return [String] + required :text, String + + # @!attribute type + # The type of the output text. Always `output_text`. + # + # @return [Symbol, :output_text] + required :type, const: :output_text + + # @!method initialize(text:, type: :output_text) + # A text output from the model. + # + # @param text [String] + # @param type [Symbol, :output_text] + end + + # @!method self.variants + # @return [Array(String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Content::OutputText)] + end + + # The role of the message input. One of `user`, `assistant`, `system`, or + # `developer`. + # + # @see OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input#role + module Role + extend OpenAI::Internal::Type::Enum + + USER = :user + ASSISTANT = :assistant + SYSTEM = :system + DEVELOPER = :developer + + # @!method self.values + # @return [Array] + end + + # The type of the message input. Always `message`. + # + # @see OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input#type + module Type + extend OpenAI::Internal::Type::Enum + + MESSAGE = :message + + # @!method self.values + # @return [Array] + end + end + end + # @!method self.variants - # @return [Array(OpenAI::Models::EvalLabelModelGrader, OpenAI::Models::EvalStringCheckGrader, OpenAI::Models::EvalTextSimilarityGrader)] + # @return [Array(OpenAI::Models::EvalLabelModelGrader, OpenAI::Models::EvalStringCheckGrader, OpenAI::Models::EvalTextSimilarityGrader, OpenAI::Models::EvalRetrieveResponse::TestingCriterion::Python, OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel)] end end end diff --git a/lib/openai/models/eval_text_similarity_grader.rb b/lib/openai/models/eval_text_similarity_grader.rb index 8d037316..2a8d70e0 100644 --- a/lib/openai/models/eval_text_similarity_grader.rb +++ b/lib/openai/models/eval_text_similarity_grader.rb @@ -4,8 +4,8 @@ module OpenAI module Models class EvalTextSimilarityGrader < OpenAI::Internal::Type::BaseModel # @!attribute evaluation_metric - # The evaluation metric to use. One of `cosine`, `fuzzy_match`, `bleu`, `gleu`, - # `meteor`, `rouge_1`, `rouge_2`, `rouge_3`, `rouge_4`, `rouge_5`, or `rouge_l`. + # The evaluation metric to use. One of `fuzzy_match`, `bleu`, `gleu`, `meteor`, + # `rouge_1`, `rouge_2`, `rouge_3`, `rouge_4`, `rouge_5`, or `rouge_l`. # # @return [Symbol, OpenAI::Models::EvalTextSimilarityGrader::EvaluationMetric] required :evaluation_metric, enum: -> { OpenAI::Models::EvalTextSimilarityGrader::EvaluationMetric } @@ -50,8 +50,8 @@ class EvalTextSimilarityGrader < OpenAI::Internal::Type::BaseModel # @param name [String] # @param type [Symbol, :text_similarity] - # The evaluation metric to use. One of `cosine`, `fuzzy_match`, `bleu`, `gleu`, - # `meteor`, `rouge_1`, `rouge_2`, `rouge_3`, `rouge_4`, `rouge_5`, or `rouge_l`. + # The evaluation metric to use. One of `fuzzy_match`, `bleu`, `gleu`, `meteor`, + # `rouge_1`, `rouge_2`, `rouge_3`, `rouge_4`, `rouge_5`, or `rouge_l`. # # @see OpenAI::Models::EvalTextSimilarityGrader#evaluation_metric module EvaluationMetric @@ -67,7 +67,6 @@ module EvaluationMetric ROUGE_4 = :rouge_4 ROUGE_5 = :rouge_5 ROUGE_L = :rouge_l - COSINE = :cosine # @!method self.values # @return [Array] diff --git a/lib/openai/models/eval_update_response.rb b/lib/openai/models/eval_update_response.rb index 08e01385..923a9e03 100644 --- a/lib/openai/models/eval_update_response.rb +++ b/lib/openai/models/eval_update_response.rb @@ -45,20 +45,14 @@ class EvalUpdateResponse < OpenAI::Internal::Type::BaseModel # @return [Symbol, :eval] required :object, const: :eval - # @!attribute share_with_openai - # Indicates whether the evaluation is shared with OpenAI. - # - # @return [Boolean] - required :share_with_openai, OpenAI::Internal::Type::Boolean - # @!attribute testing_criteria # A list of testing criteria. # - # @return [Array] + # @return [Array] required :testing_criteria, -> { OpenAI::Internal::Type::ArrayOf[union: OpenAI::Models::EvalUpdateResponse::TestingCriterion] } - # @!method initialize(id:, created_at:, data_source_config:, metadata:, name:, share_with_openai:, testing_criteria:, object: :eval) + # @!method initialize(id:, created_at:, data_source_config:, metadata:, name:, testing_criteria:, object: :eval) # An Eval object with a data source config and testing criteria. An Eval # represents a task to be done for your LLM integration. Like: # @@ -71,8 +65,7 @@ class EvalUpdateResponse < OpenAI::Internal::Type::BaseModel # @param data_source_config [OpenAI::Models::EvalCustomDataSourceConfig, OpenAI::Models::EvalStoredCompletionsDataSourceConfig] # @param metadata [Hash{Symbol=>String}, nil] # @param name [String] - # @param share_with_openai [Boolean] - # @param testing_criteria [Array] + # @param testing_criteria [Array] # @param object [Symbol, :eval] # Configuration of data sources used in runs of the evaluation. @@ -116,8 +109,211 @@ module TestingCriterion # A TextSimilarityGrader object which grades text based on similarity metrics. variant :text_similarity, -> { OpenAI::Models::EvalTextSimilarityGrader } + # A PythonGrader object that runs a python script on the input. + variant :python, -> { OpenAI::Models::EvalUpdateResponse::TestingCriterion::Python } + + # A ScoreModelGrader object that uses a model to assign a score to the input. + variant :score_model, -> { OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel } + + class Python < OpenAI::Internal::Type::BaseModel + # @!attribute name + # The name of the grader. + # + # @return [String] + required :name, String + + # @!attribute source + # The source code of the python script. + # + # @return [String] + required :source, String + + # @!attribute type + # The object type, which is always `python`. + # + # @return [Symbol, :python] + required :type, const: :python + + # @!attribute image_tag + # The image tag to use for the python script. + # + # @return [String, nil] + optional :image_tag, String + + # @!attribute pass_threshold + # The threshold for the score. + # + # @return [Float, nil] + optional :pass_threshold, Float + + # @!method initialize(name:, source:, image_tag: nil, pass_threshold: nil, type: :python) + # A PythonGrader object that runs a python script on the input. + # + # @param name [String] + # @param source [String] + # @param image_tag [String] + # @param pass_threshold [Float] + # @param type [Symbol, :python] + end + + class ScoreModel < OpenAI::Internal::Type::BaseModel + # @!attribute input + # The input text. This may include template strings. + # + # @return [Array] + required :input, + -> { OpenAI::Internal::Type::ArrayOf[OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input] } + + # @!attribute model + # The model to use for the evaluation. + # + # @return [String] + required :model, String + + # @!attribute name + # The name of the grader. + # + # @return [String] + required :name, String + + # @!attribute type + # The object type, which is always `score_model`. + # + # @return [Symbol, :score_model] + required :type, const: :score_model + + # @!attribute pass_threshold + # The threshold for the score. + # + # @return [Float, nil] + optional :pass_threshold, Float + + # @!attribute range + # The range of the score. Defaults to `[0, 1]`. + # + # @return [Array, nil] + optional :range, OpenAI::Internal::Type::ArrayOf[Float] + + # @!attribute sampling_params + # The sampling parameters for the model. + # + # @return [Object, nil] + optional :sampling_params, OpenAI::Internal::Type::Unknown + + # @!method initialize(input:, model:, name:, pass_threshold: nil, range: nil, sampling_params: nil, type: :score_model) + # A ScoreModelGrader object that uses a model to assign a score to the input. + # + # @param input [Array] + # @param model [String] + # @param name [String] + # @param pass_threshold [Float] + # @param range [Array] + # @param sampling_params [Object] + # @param type [Symbol, :score_model] + + class Input < OpenAI::Internal::Type::BaseModel + # @!attribute content + # Text inputs to the model - can contain template strings. + # + # @return [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Content::OutputText] + required :content, + union: -> { OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Content } + + # @!attribute role + # The role of the message input. One of `user`, `assistant`, `system`, or + # `developer`. + # + # @return [Symbol, OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Role] + required :role, enum: -> { OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Role } + + # @!attribute type + # The type of the message input. Always `message`. + # + # @return [Symbol, OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Type, nil] + optional :type, enum: -> { OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Type } + + # @!method initialize(content:, role:, type: nil) + # A message input to the model with a role indicating instruction following + # hierarchy. Instructions given with the `developer` or `system` role take + # precedence over instructions given with the `user` role. Messages with the + # `assistant` role are presumed to have been generated by the model in previous + # interactions. + # + # @param content [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Content::OutputText] + # @param role [Symbol, OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Role] + # @param type [Symbol, OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Type] + + # Text inputs to the model - can contain template strings. + # + # @see OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input#content + module Content + extend OpenAI::Internal::Type::Union + + # A text input to the model. + variant String + + # A text input to the model. + variant -> { OpenAI::Models::Responses::ResponseInputText } + + # A text output from the model. + variant -> { OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Content::OutputText } + + class OutputText < OpenAI::Internal::Type::BaseModel + # @!attribute text + # The text output from the model. + # + # @return [String] + required :text, String + + # @!attribute type + # The type of the output text. Always `output_text`. + # + # @return [Symbol, :output_text] + required :type, const: :output_text + + # @!method initialize(text:, type: :output_text) + # A text output from the model. + # + # @param text [String] + # @param type [Symbol, :output_text] + end + + # @!method self.variants + # @return [Array(String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Content::OutputText)] + end + + # The role of the message input. One of `user`, `assistant`, `system`, or + # `developer`. + # + # @see OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input#role + module Role + extend OpenAI::Internal::Type::Enum + + USER = :user + ASSISTANT = :assistant + SYSTEM = :system + DEVELOPER = :developer + + # @!method self.values + # @return [Array] + end + + # The type of the message input. Always `message`. + # + # @see OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input#type + module Type + extend OpenAI::Internal::Type::Enum + + MESSAGE = :message + + # @!method self.values + # @return [Array] + end + end + end + # @!method self.variants - # @return [Array(OpenAI::Models::EvalLabelModelGrader, OpenAI::Models::EvalStringCheckGrader, OpenAI::Models::EvalTextSimilarityGrader)] + # @return [Array(OpenAI::Models::EvalLabelModelGrader, OpenAI::Models::EvalStringCheckGrader, OpenAI::Models::EvalTextSimilarityGrader, OpenAI::Models::EvalUpdateResponse::TestingCriterion::Python, OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel)] end end end diff --git a/lib/openai/models/evals/create_eval_completions_run_data_source.rb b/lib/openai/models/evals/create_eval_completions_run_data_source.rb index ac306948..d4f61b7b 100644 --- a/lib/openai/models/evals/create_eval_completions_run_data_source.rb +++ b/lib/openai/models/evals/create_eval_completions_run_data_source.rb @@ -4,18 +4,6 @@ module OpenAI module Models module Evals class CreateEvalCompletionsRunDataSource < OpenAI::Internal::Type::BaseModel - # @!attribute input_messages - # - # @return [OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::ItemReference] - required :input_messages, - union: -> { OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages } - - # @!attribute model - # The name of the model to use for generating completions (e.g. "o3-mini"). - # - # @return [String] - required :model, String - # @!attribute source # A StoredCompletionsRunDataSource configuration describing a set of filters # @@ -28,274 +16,33 @@ class CreateEvalCompletionsRunDataSource < OpenAI::Internal::Type::BaseModel # @return [Symbol, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Type] required :type, enum: -> { OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Type } + # @!attribute input_messages + # + # @return [OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::ItemReference, nil] + optional :input_messages, + union: -> { OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages } + + # @!attribute model + # The name of the model to use for generating completions (e.g. "o3-mini"). + # + # @return [String, nil] + optional :model, String + # @!attribute sampling_params # # @return [OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::SamplingParams, nil] optional :sampling_params, -> { OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::SamplingParams } - # @!method initialize(input_messages:, model:, source:, type:, sampling_params: nil) + # @!method initialize(source:, type:, input_messages: nil, model: nil, sampling_params: nil) # A CompletionsRunDataSource object describing a model sampling configuration. # - # @param input_messages [OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::ItemReference] - # @param model [String] # @param source [OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Source::FileContent, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Source::FileID, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Source::StoredCompletions] # @param type [Symbol, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Type] + # @param input_messages [OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::ItemReference] + # @param model [String] # @param sampling_params [OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::SamplingParams] - # @see OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource#input_messages - module InputMessages - extend OpenAI::Internal::Type::Union - - discriminator :type - - variant :template, - -> { OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template } - - variant :item_reference, - -> { OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::ItemReference } - - class Template < OpenAI::Internal::Type::BaseModel - # @!attribute template - # A list of chat messages forming the prompt or context. May include variable - # references to the "item" namespace, ie {{item.name}}. - # - # @return [Array] - required :template, - -> { OpenAI::Internal::Type::ArrayOf[union: OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template] } - - # @!attribute type - # The type of input messages. Always `template`. - # - # @return [Symbol, :template] - required :type, const: :template - - # @!method initialize(template:, type: :template) - # @param template [Array] - # @param type [Symbol, :template] - - module Template - extend OpenAI::Internal::Type::Union - - variant -> { OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::ChatMessage } - - variant -> { OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::InputMessage } - - variant -> { OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::OutputMessage } - - class ChatMessage < OpenAI::Internal::Type::BaseModel - # @!attribute content - # The content of the message. - # - # @return [String] - required :content, String - - # @!attribute role - # The role of the message (e.g. "system", "assistant", "user"). - # - # @return [String] - required :role, String - - # @!method initialize(content:, role:) - # @param content [String] - # @param role [String] - end - - class InputMessage < OpenAI::Internal::Type::BaseModel - # @!attribute content - # - # @return [OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::InputMessage::Content] - required :content, - -> { OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::InputMessage::Content } - - # @!attribute role - # The role of the message. One of `user`, `system`, or `developer`. - # - # @return [Symbol, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::InputMessage::Role] - required :role, - enum: -> { OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::InputMessage::Role } - - # @!attribute type - # The type of item, which is always `message`. - # - # @return [Symbol, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::InputMessage::Type] - required :type, - enum: -> { OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::InputMessage::Type } - - # @!method initialize(content:, role:, type:) - # @param content [OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::InputMessage::Content] - # @param role [Symbol, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::InputMessage::Role] - # @param type [Symbol, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::InputMessage::Type] - - # @see OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::InputMessage#content - class Content < OpenAI::Internal::Type::BaseModel - # @!attribute text - # The text content. - # - # @return [String] - required :text, String - - # @!attribute type - # The type of content, which is always `input_text`. - # - # @return [Symbol, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::InputMessage::Content::Type] - required :type, - enum: -> { OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::InputMessage::Content::Type } - - # @!method initialize(text:, type:) - # @param text [String] - # @param type [Symbol, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::InputMessage::Content::Type] - - # The type of content, which is always `input_text`. - # - # @see OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::InputMessage::Content#type - module Type - extend OpenAI::Internal::Type::Enum - - INPUT_TEXT = :input_text - - # @!method self.values - # @return [Array] - end - end - - # The role of the message. One of `user`, `system`, or `developer`. - # - # @see OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::InputMessage#role - module Role - extend OpenAI::Internal::Type::Enum - - USER = :user - SYSTEM = :system - DEVELOPER = :developer - - # @!method self.values - # @return [Array] - end - - # The type of item, which is always `message`. - # - # @see OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::InputMessage#type - module Type - extend OpenAI::Internal::Type::Enum - - MESSAGE = :message - - # @!method self.values - # @return [Array] - end - end - - class OutputMessage < OpenAI::Internal::Type::BaseModel - # @!attribute content - # - # @return [OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::OutputMessage::Content] - required :content, - -> { OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::OutputMessage::Content } - - # @!attribute role - # The role of the message. Must be `assistant` for output. - # - # @return [Symbol, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::OutputMessage::Role] - required :role, - enum: -> { OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::OutputMessage::Role } - - # @!attribute type - # The type of item, which is always `message`. - # - # @return [Symbol, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::OutputMessage::Type] - required :type, - enum: -> { OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::OutputMessage::Type } - - # @!method initialize(content:, role:, type:) - # @param content [OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::OutputMessage::Content] - # @param role [Symbol, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::OutputMessage::Role] - # @param type [Symbol, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::OutputMessage::Type] - - # @see OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::OutputMessage#content - class Content < OpenAI::Internal::Type::BaseModel - # @!attribute text - # The text content. - # - # @return [String] - required :text, String - - # @!attribute type - # The type of content, which is always `output_text`. - # - # @return [Symbol, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::OutputMessage::Content::Type] - required :type, - enum: -> { OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::OutputMessage::Content::Type } - - # @!method initialize(text:, type:) - # @param text [String] - # @param type [Symbol, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::OutputMessage::Content::Type] - - # The type of content, which is always `output_text`. - # - # @see OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::OutputMessage::Content#type - module Type - extend OpenAI::Internal::Type::Enum - - OUTPUT_TEXT = :output_text - - # @!method self.values - # @return [Array] - end - end - - # The role of the message. Must be `assistant` for output. - # - # @see OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::OutputMessage#role - module Role - extend OpenAI::Internal::Type::Enum - - ASSISTANT = :assistant - - # @!method self.values - # @return [Array] - end - - # The type of item, which is always `message`. - # - # @see OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::OutputMessage#type - module Type - extend OpenAI::Internal::Type::Enum - - MESSAGE = :message - - # @!method self.values - # @return [Array] - end - end - - # @!method self.variants - # @return [Array(OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::ChatMessage, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::InputMessage, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::OutputMessage)] - end - end - - class ItemReference < OpenAI::Internal::Type::BaseModel - # @!attribute item_reference - # A reference to a variable in the "item" namespace. Ie, "item.name" - # - # @return [String] - required :item_reference, String - - # @!attribute type - # The type of input messages. Always `item_reference`. - # - # @return [Symbol, :item_reference] - required :type, const: :item_reference - - # @!method initialize(item_reference:, type: :item_reference) - # @param item_reference [String] - # @param type [Symbol, :item_reference] - end - - # @!method self.variants - # @return [Array(OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::ItemReference)] - end - # A StoredCompletionsRunDataSource configuration describing a set of filters # # @see OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource#source @@ -367,23 +114,29 @@ class FileID < OpenAI::Internal::Type::BaseModel end class StoredCompletions < OpenAI::Internal::Type::BaseModel + # @!attribute type + # The type of source. Always `stored_completions`. + # + # @return [Symbol, :stored_completions] + required :type, const: :stored_completions + # @!attribute created_after # An optional Unix timestamp to filter items created after this time. # # @return [Integer, nil] - required :created_after, Integer, nil?: true + optional :created_after, Integer, nil?: true # @!attribute created_before # An optional Unix timestamp to filter items created before this time. # # @return [Integer, nil] - required :created_before, Integer, nil?: true + optional :created_before, Integer, nil?: true # @!attribute limit # An optional maximum number of items to return. # # @return [Integer, nil] - required :limit, Integer, nil?: true + optional :limit, Integer, nil?: true # @!attribute metadata # Set of 16 key-value pairs that can be attached to an object. This can be useful @@ -394,21 +147,15 @@ class StoredCompletions < OpenAI::Internal::Type::BaseModel # a maximum length of 512 characters. # # @return [Hash{Symbol=>String}, nil] - required :metadata, OpenAI::Internal::Type::HashOf[String], nil?: true + optional :metadata, OpenAI::Internal::Type::HashOf[String], nil?: true # @!attribute model # An optional model to filter by (e.g., 'gpt-4o'). # # @return [String, nil] - required :model, String, nil?: true - - # @!attribute type - # The type of source. Always `stored_completions`. - # - # @return [Symbol, :stored_completions] - required :type, const: :stored_completions + optional :model, String, nil?: true - # @!method initialize(created_after:, created_before:, limit:, metadata:, model:, type: :stored_completions) + # @!method initialize(created_after: nil, created_before: nil, limit: nil, metadata: nil, model: nil, type: :stored_completions) # A StoredCompletionsRunDataSource configuration describing a set of filters # # @param created_after [Integer, nil] @@ -435,6 +182,191 @@ module Type # @return [Array] end + # @see OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource#input_messages + module InputMessages + extend OpenAI::Internal::Type::Union + + discriminator :type + + variant :template, + -> { OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template } + + variant :item_reference, + -> { OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::ItemReference } + + class Template < OpenAI::Internal::Type::BaseModel + # @!attribute template + # A list of chat messages forming the prompt or context. May include variable + # references to the "item" namespace, ie {{item.name}}. + # + # @return [Array] + required :template, + -> { OpenAI::Internal::Type::ArrayOf[union: OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template] } + + # @!attribute type + # The type of input messages. Always `template`. + # + # @return [Symbol, :template] + required :type, const: :template + + # @!method initialize(template:, type: :template) + # @param template [Array] + # @param type [Symbol, :template] + + # A message input to the model with a role indicating instruction following + # hierarchy. Instructions given with the `developer` or `system` role take + # precedence over instructions given with the `user` role. Messages with the + # `assistant` role are presumed to have been generated by the model in previous + # interactions. + module Template + extend OpenAI::Internal::Type::Union + + discriminator :type + + # A message input to the model with a role indicating instruction following + # hierarchy. Instructions given with the `developer` or `system` role take + # precedence over instructions given with the `user` role. Messages with the + # `assistant` role are presumed to have been generated by the model in previous + # interactions. + variant :message, -> { OpenAI::Models::Responses::EasyInputMessage } + + # A message input to the model with a role indicating instruction following + # hierarchy. Instructions given with the `developer` or `system` role take + # precedence over instructions given with the `user` role. Messages with the + # `assistant` role are presumed to have been generated by the model in previous + # interactions. + variant :message, + -> { OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message } + + class Message < OpenAI::Internal::Type::BaseModel + # @!attribute content + # Text inputs to the model - can contain template strings. + # + # @return [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::Content::OutputText] + required :content, + union: -> { OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::Content } + + # @!attribute role + # The role of the message input. One of `user`, `assistant`, `system`, or + # `developer`. + # + # @return [Symbol, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::Role] + required :role, + enum: -> { OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::Role } + + # @!attribute type + # The type of the message input. Always `message`. + # + # @return [Symbol, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::Type, nil] + optional :type, + enum: -> { OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::Type } + + # @!method initialize(content:, role:, type: nil) + # A message input to the model with a role indicating instruction following + # hierarchy. Instructions given with the `developer` or `system` role take + # precedence over instructions given with the `user` role. Messages with the + # `assistant` role are presumed to have been generated by the model in previous + # interactions. + # + # @param content [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::Content::OutputText] + # @param role [Symbol, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::Role] + # @param type [Symbol, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::Type] + + # Text inputs to the model - can contain template strings. + # + # @see OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message#content + module Content + extend OpenAI::Internal::Type::Union + + # A text input to the model. + variant String + + # A text input to the model. + variant -> { OpenAI::Models::Responses::ResponseInputText } + + # A text output from the model. + variant -> { OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::Content::OutputText } + + class OutputText < OpenAI::Internal::Type::BaseModel + # @!attribute text + # The text output from the model. + # + # @return [String] + required :text, String + + # @!attribute type + # The type of the output text. Always `output_text`. + # + # @return [Symbol, :output_text] + required :type, const: :output_text + + # @!method initialize(text:, type: :output_text) + # A text output from the model. + # + # @param text [String] + # @param type [Symbol, :output_text] + end + + # @!method self.variants + # @return [Array(String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::Content::OutputText)] + end + + # The role of the message input. One of `user`, `assistant`, `system`, or + # `developer`. + # + # @see OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message#role + module Role + extend OpenAI::Internal::Type::Enum + + USER = :user + ASSISTANT = :assistant + SYSTEM = :system + DEVELOPER = :developer + + # @!method self.values + # @return [Array] + end + + # The type of the message input. Always `message`. + # + # @see OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message#type + module Type + extend OpenAI::Internal::Type::Enum + + MESSAGE = :message + + # @!method self.values + # @return [Array] + end + end + + # @!method self.variants + # @return [Array(OpenAI::Models::Responses::EasyInputMessage, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message)] + end + end + + class ItemReference < OpenAI::Internal::Type::BaseModel + # @!attribute item_reference + # A reference to a variable in the "item" namespace. Ie, "item.name" + # + # @return [String] + required :item_reference, String + + # @!attribute type + # The type of input messages. Always `item_reference`. + # + # @return [Symbol, :item_reference] + required :type, const: :item_reference + + # @!method initialize(item_reference:, type: :item_reference) + # @param item_reference [String] + # @param type [Symbol, :item_reference] + end + + # @!method self.variants + # @return [Array(OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::ItemReference)] + end + # @see OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource#sampling_params class SamplingParams < OpenAI::Internal::Type::BaseModel # @!attribute max_completion_tokens diff --git a/lib/openai/models/evals/run_cancel_response.rb b/lib/openai/models/evals/run_cancel_response.rb index 19775cff..2412cad7 100644 --- a/lib/openai/models/evals/run_cancel_response.rb +++ b/lib/openai/models/evals/run_cancel_response.rb @@ -20,7 +20,7 @@ class RunCancelResponse < OpenAI::Internal::Type::BaseModel # @!attribute data_source # Information about the run's data source. # - # @return [OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource] + # @return [OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource, OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions] required :data_source, union: -> { OpenAI::Models::Evals::RunCancelResponse::DataSource } # @!attribute error @@ -101,7 +101,7 @@ class RunCancelResponse < OpenAI::Internal::Type::BaseModel # # @param id [String] # @param created_at [Integer] - # @param data_source [OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource] + # @param data_source [OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource, OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions] # @param error [OpenAI::Models::Evals::EvalAPIError] # @param eval_id [String] # @param metadata [Hash{Symbol=>String}, nil] @@ -128,8 +128,456 @@ module DataSource # A CompletionsRunDataSource object describing a model sampling configuration. variant :completions, -> { OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource } + # A ResponsesRunDataSource object describing a model sampling configuration. + variant :completions, -> { OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions } + + class Completions < OpenAI::Internal::Type::BaseModel + # @!attribute source + # A EvalResponsesSource object describing a run data source configuration. + # + # @return [OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::Source::FileContent, OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::Source::FileID, OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::Source::Responses] + required :source, union: -> { OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::Source } + + # @!attribute type + # The type of run data source. Always `completions`. + # + # @return [Symbol, :completions] + required :type, const: :completions + + # @!attribute input_messages + # + # @return [OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template, OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::ItemReference, nil] + optional :input_messages, + union: -> { OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages } + + # @!attribute model + # The name of the model to use for generating completions (e.g. "o3-mini"). + # + # @return [String, nil] + optional :model, String + + # @!attribute sampling_params + # + # @return [OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::SamplingParams, nil] + optional :sampling_params, + -> { OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::SamplingParams } + + # @!method initialize(source:, input_messages: nil, model: nil, sampling_params: nil, type: :completions) + # A ResponsesRunDataSource object describing a model sampling configuration. + # + # @param source [OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::Source::FileContent, OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::Source::FileID, OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::Source::Responses] + # @param input_messages [OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template, OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::ItemReference] + # @param model [String] + # @param sampling_params [OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::SamplingParams] + # @param type [Symbol, :completions] + + # A EvalResponsesSource object describing a run data source configuration. + # + # @see OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions#source + module Source + extend OpenAI::Internal::Type::Union + + discriminator :type + + variant :file_content, + -> { OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::Source::FileContent } + + variant :file_id, -> { OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::Source::FileID } + + # A EvalResponsesSource object describing a run data source configuration. + variant :responses, + -> { OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::Source::Responses } + + class FileContent < OpenAI::Internal::Type::BaseModel + # @!attribute content + # The content of the jsonl file. + # + # @return [Array] + required :content, + -> { OpenAI::Internal::Type::ArrayOf[OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::Source::FileContent::Content] } + + # @!attribute type + # The type of jsonl source. Always `file_content`. + # + # @return [Symbol, :file_content] + required :type, const: :file_content + + # @!method initialize(content:, type: :file_content) + # @param content [Array] + # @param type [Symbol, :file_content] + + class Content < OpenAI::Internal::Type::BaseModel + # @!attribute item + # + # @return [Hash{Symbol=>Object}] + required :item, OpenAI::Internal::Type::HashOf[OpenAI::Internal::Type::Unknown] + + # @!attribute sample + # + # @return [Hash{Symbol=>Object}, nil] + optional :sample, OpenAI::Internal::Type::HashOf[OpenAI::Internal::Type::Unknown] + + # @!method initialize(item:, sample: nil) + # @param item [Hash{Symbol=>Object}] + # @param sample [Hash{Symbol=>Object}] + end + end + + class FileID < OpenAI::Internal::Type::BaseModel + # @!attribute id + # The identifier of the file. + # + # @return [String] + required :id, String + + # @!attribute type + # The type of jsonl source. Always `file_id`. + # + # @return [Symbol, :file_id] + required :type, const: :file_id + + # @!method initialize(id:, type: :file_id) + # @param id [String] + # @param type [Symbol, :file_id] + end + + class Responses < OpenAI::Internal::Type::BaseModel + # @!attribute type + # The type of run data source. Always `responses`. + # + # @return [Symbol, :responses] + required :type, const: :responses + + # @!attribute allow_parallel_tool_calls + # Whether to allow parallel tool calls. This is a query parameter used to select + # responses. + # + # @return [Boolean, nil] + optional :allow_parallel_tool_calls, OpenAI::Internal::Type::Boolean, nil?: true + + # @!attribute created_after + # Only include items created after this timestamp (inclusive). This is a query + # parameter used to select responses. + # + # @return [Integer, nil] + optional :created_after, Integer, nil?: true + + # @!attribute created_before + # Only include items created before this timestamp (inclusive). This is a query + # parameter used to select responses. + # + # @return [Integer, nil] + optional :created_before, Integer, nil?: true + + # @!attribute has_tool_calls + # Whether the response has tool calls. This is a query parameter used to select + # responses. + # + # @return [Boolean, nil] + optional :has_tool_calls, OpenAI::Internal::Type::Boolean, nil?: true + + # @!attribute instructions_search + # Optional search string for instructions. This is a query parameter used to + # select responses. + # + # @return [String, nil] + optional :instructions_search, String, nil?: true + + # @!attribute metadata + # Metadata filter for the responses. This is a query parameter used to select + # responses. + # + # @return [Object, nil] + optional :metadata, OpenAI::Internal::Type::Unknown, nil?: true + + # @!attribute model + # The name of the model to find responses for. This is a query parameter used to + # select responses. + # + # @return [String, nil] + optional :model, String, nil?: true + + # @!attribute reasoning_effort + # Optional reasoning effort parameter. This is a query parameter used to select + # responses. + # + # @return [Symbol, OpenAI::Models::ReasoningEffort, nil] + optional :reasoning_effort, enum: -> { OpenAI::Models::ReasoningEffort }, nil?: true + + # @!attribute temperature + # Sampling temperature. This is a query parameter used to select responses. + # + # @return [Float, nil] + optional :temperature, Float, nil?: true + + # @!attribute top_p + # Nucleus sampling parameter. This is a query parameter used to select responses. + # + # @return [Float, nil] + optional :top_p, Float, nil?: true + + # @!attribute users + # List of user identifiers. This is a query parameter used to select responses. + # + # @return [Array, nil] + optional :users, OpenAI::Internal::Type::ArrayOf[String], nil?: true + + # @!method initialize(allow_parallel_tool_calls: nil, created_after: nil, created_before: nil, has_tool_calls: nil, instructions_search: nil, metadata: nil, model: nil, reasoning_effort: nil, temperature: nil, top_p: nil, users: nil, type: :responses) + # A EvalResponsesSource object describing a run data source configuration. + # + # @param allow_parallel_tool_calls [Boolean, nil] + # @param created_after [Integer, nil] + # @param created_before [Integer, nil] + # @param has_tool_calls [Boolean, nil] + # @param instructions_search [String, nil] + # @param metadata [Object, nil] + # @param model [String, nil] + # @param reasoning_effort [Symbol, OpenAI::Models::ReasoningEffort, nil] + # @param temperature [Float, nil] + # @param top_p [Float, nil] + # @param users [Array, nil] + # @param type [Symbol, :responses] + end + + # @!method self.variants + # @return [Array(OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::Source::FileContent, OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::Source::FileID, OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::Source::Responses)] + end + + # @see OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions#input_messages + module InputMessages + extend OpenAI::Internal::Type::Union + + discriminator :type + + variant :template, + -> { OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template } + + variant :item_reference, + -> { OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::ItemReference } + + class Template < OpenAI::Internal::Type::BaseModel + # @!attribute template + # A list of chat messages forming the prompt or context. May include variable + # references to the "item" namespace, ie {{item.name}}. + # + # @return [Array] + required :template, + -> do + OpenAI::Internal::Type::ArrayOf[ + union: OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template + ] + end + + # @!attribute type + # The type of input messages. Always `template`. + # + # @return [Symbol, :template] + required :type, const: :template + + # @!method initialize(template:, type: :template) + # @param template [Array] + # @param type [Symbol, :template] + + # A message input to the model with a role indicating instruction following + # hierarchy. Instructions given with the `developer` or `system` role take + # precedence over instructions given with the `user` role. Messages with the + # `assistant` role are presumed to have been generated by the model in previous + # interactions. + module Template + extend OpenAI::Internal::Type::Union + + variant -> { OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::ChatMessage } + + # A message input to the model with a role indicating instruction following + # hierarchy. Instructions given with the `developer` or `system` role take + # precedence over instructions given with the `user` role. Messages with the + # `assistant` role are presumed to have been generated by the model in previous + # interactions. + variant -> { OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem } + + class ChatMessage < OpenAI::Internal::Type::BaseModel + # @!attribute content + # The content of the message. + # + # @return [String] + required :content, String + + # @!attribute role + # The role of the message (e.g. "system", "assistant", "user"). + # + # @return [String] + required :role, String + + # @!method initialize(content:, role:) + # @param content [String] + # @param role [String] + end + + class EvalItem < OpenAI::Internal::Type::BaseModel + # @!attribute content + # Text inputs to the model - can contain template strings. + # + # @return [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText] + required :content, + union: -> { OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content } + + # @!attribute role + # The role of the message input. One of `user`, `assistant`, `system`, or + # `developer`. + # + # @return [Symbol, OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Role] + required :role, + enum: -> { OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Role } + + # @!attribute type + # The type of the message input. Always `message`. + # + # @return [Symbol, OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Type, nil] + optional :type, + enum: -> { OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Type } + + # @!method initialize(content:, role:, type: nil) + # A message input to the model with a role indicating instruction following + # hierarchy. Instructions given with the `developer` or `system` role take + # precedence over instructions given with the `user` role. Messages with the + # `assistant` role are presumed to have been generated by the model in previous + # interactions. + # + # @param content [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText] + # @param role [Symbol, OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Role] + # @param type [Symbol, OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Type] + + # Text inputs to the model - can contain template strings. + # + # @see OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem#content + module Content + extend OpenAI::Internal::Type::Union + + # A text input to the model. + variant String + + # A text input to the model. + variant -> { OpenAI::Models::Responses::ResponseInputText } + + # A text output from the model. + variant -> { OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText } + + class OutputText < OpenAI::Internal::Type::BaseModel + # @!attribute text + # The text output from the model. + # + # @return [String] + required :text, String + + # @!attribute type + # The type of the output text. Always `output_text`. + # + # @return [Symbol, :output_text] + required :type, const: :output_text + + # @!method initialize(text:, type: :output_text) + # A text output from the model. + # + # @param text [String] + # @param type [Symbol, :output_text] + end + + # @!method self.variants + # @return [Array(String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText)] + end + + # The role of the message input. One of `user`, `assistant`, `system`, or + # `developer`. + # + # @see OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem#role + module Role + extend OpenAI::Internal::Type::Enum + + USER = :user + ASSISTANT = :assistant + SYSTEM = :system + DEVELOPER = :developer + + # @!method self.values + # @return [Array] + end + + # The type of the message input. Always `message`. + # + # @see OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem#type + module Type + extend OpenAI::Internal::Type::Enum + + MESSAGE = :message + + # @!method self.values + # @return [Array] + end + end + + # @!method self.variants + # @return [Array(OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::ChatMessage, OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem)] + end + end + + class ItemReference < OpenAI::Internal::Type::BaseModel + # @!attribute item_reference + # A reference to a variable in the "item" namespace. Ie, "item.name" + # + # @return [String] + required :item_reference, String + + # @!attribute type + # The type of input messages. Always `item_reference`. + # + # @return [Symbol, :item_reference] + required :type, const: :item_reference + + # @!method initialize(item_reference:, type: :item_reference) + # @param item_reference [String] + # @param type [Symbol, :item_reference] + end + + # @!method self.variants + # @return [Array(OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template, OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::ItemReference)] + end + + # @see OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions#sampling_params + class SamplingParams < OpenAI::Internal::Type::BaseModel + # @!attribute max_completion_tokens + # The maximum number of tokens in the generated output. + # + # @return [Integer, nil] + optional :max_completion_tokens, Integer + + # @!attribute seed + # A seed value to initialize the randomness, during sampling. + # + # @return [Integer, nil] + optional :seed, Integer + + # @!attribute temperature + # A higher temperature increases randomness in the outputs. + # + # @return [Float, nil] + optional :temperature, Float + + # @!attribute top_p + # An alternative to temperature for nucleus sampling; 1.0 includes all tokens. + # + # @return [Float, nil] + optional :top_p, Float + + # @!method initialize(max_completion_tokens: nil, seed: nil, temperature: nil, top_p: nil) + # @param max_completion_tokens [Integer] + # @param seed [Integer] + # @param temperature [Float] + # @param top_p [Float] + end + end + # @!method self.variants - # @return [Array(OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource)] + # @return [Array(OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource, OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions)] end class PerModelUsage < OpenAI::Internal::Type::BaseModel diff --git a/lib/openai/models/evals/run_create_params.rb b/lib/openai/models/evals/run_create_params.rb index 61365782..6ee4266d 100644 --- a/lib/openai/models/evals/run_create_params.rb +++ b/lib/openai/models/evals/run_create_params.rb @@ -11,7 +11,7 @@ class RunCreateParams < OpenAI::Internal::Type::BaseModel # @!attribute data_source # Details about the run's data source. # - # @return [OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource] + # @return [OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource, OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource] required :data_source, union: -> { OpenAI::Models::Evals::RunCreateParams::DataSource } # @!attribute metadata @@ -32,7 +32,7 @@ class RunCreateParams < OpenAI::Internal::Type::BaseModel optional :name, String # @!method initialize(data_source:, metadata: nil, name: nil, request_options: {}) - # @param data_source [OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource] + # @param data_source [OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource, OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource] # @param metadata [Hash{Symbol=>String}, nil] # @param name [String] # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] @@ -47,8 +47,475 @@ module DataSource # A CompletionsRunDataSource object describing a model sampling configuration. variant -> { OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource } + # A ResponsesRunDataSource object describing a model sampling configuration. + variant -> { OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource } + + class CreateEvalResponsesRunDataSource < OpenAI::Internal::Type::BaseModel + # @!attribute source + # A EvalResponsesSource object describing a run data source configuration. + # + # @return [OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::FileContent, OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::FileID, OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::Responses] + required :source, + union: -> { OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source } + + # @!attribute type + # The type of run data source. Always `completions`. + # + # @return [Symbol, OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Type] + required :type, + enum: -> { OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Type } + + # @!attribute input_messages + # + # @return [OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template, OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::ItemReference, nil] + optional :input_messages, + union: -> { OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages } + + # @!attribute model + # The name of the model to use for generating completions (e.g. "o3-mini"). + # + # @return [String, nil] + optional :model, String + + # @!attribute sampling_params + # + # @return [OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::SamplingParams, nil] + optional :sampling_params, + -> { OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::SamplingParams } + + # @!method initialize(source:, type:, input_messages: nil, model: nil, sampling_params: nil) + # A ResponsesRunDataSource object describing a model sampling configuration. + # + # @param source [OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::FileContent, OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::FileID, OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::Responses] + # @param type [Symbol, OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Type] + # @param input_messages [OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template, OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::ItemReference] + # @param model [String] + # @param sampling_params [OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::SamplingParams] + + # A EvalResponsesSource object describing a run data source configuration. + # + # @see OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource#source + module Source + extend OpenAI::Internal::Type::Union + + discriminator :type + + variant :file_content, + -> { OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::FileContent } + + variant :file_id, + -> { OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::FileID } + + # A EvalResponsesSource object describing a run data source configuration. + variant :responses, + -> { OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::Responses } + + class FileContent < OpenAI::Internal::Type::BaseModel + # @!attribute content + # The content of the jsonl file. + # + # @return [Array] + required :content, + -> do + OpenAI::Internal::Type::ArrayOf[ + OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::FileContent::Content + ] + end + + # @!attribute type + # The type of jsonl source. Always `file_content`. + # + # @return [Symbol, :file_content] + required :type, const: :file_content + + # @!method initialize(content:, type: :file_content) + # @param content [Array] + # @param type [Symbol, :file_content] + + class Content < OpenAI::Internal::Type::BaseModel + # @!attribute item + # + # @return [Hash{Symbol=>Object}] + required :item, OpenAI::Internal::Type::HashOf[OpenAI::Internal::Type::Unknown] + + # @!attribute sample + # + # @return [Hash{Symbol=>Object}, nil] + optional :sample, OpenAI::Internal::Type::HashOf[OpenAI::Internal::Type::Unknown] + + # @!method initialize(item:, sample: nil) + # @param item [Hash{Symbol=>Object}] + # @param sample [Hash{Symbol=>Object}] + end + end + + class FileID < OpenAI::Internal::Type::BaseModel + # @!attribute id + # The identifier of the file. + # + # @return [String] + required :id, String + + # @!attribute type + # The type of jsonl source. Always `file_id`. + # + # @return [Symbol, :file_id] + required :type, const: :file_id + + # @!method initialize(id:, type: :file_id) + # @param id [String] + # @param type [Symbol, :file_id] + end + + class Responses < OpenAI::Internal::Type::BaseModel + # @!attribute type + # The type of run data source. Always `responses`. + # + # @return [Symbol, :responses] + required :type, const: :responses + + # @!attribute allow_parallel_tool_calls + # Whether to allow parallel tool calls. This is a query parameter used to select + # responses. + # + # @return [Boolean, nil] + optional :allow_parallel_tool_calls, OpenAI::Internal::Type::Boolean, nil?: true + + # @!attribute created_after + # Only include items created after this timestamp (inclusive). This is a query + # parameter used to select responses. + # + # @return [Integer, nil] + optional :created_after, Integer, nil?: true + + # @!attribute created_before + # Only include items created before this timestamp (inclusive). This is a query + # parameter used to select responses. + # + # @return [Integer, nil] + optional :created_before, Integer, nil?: true + + # @!attribute has_tool_calls + # Whether the response has tool calls. This is a query parameter used to select + # responses. + # + # @return [Boolean, nil] + optional :has_tool_calls, OpenAI::Internal::Type::Boolean, nil?: true + + # @!attribute instructions_search + # Optional search string for instructions. This is a query parameter used to + # select responses. + # + # @return [String, nil] + optional :instructions_search, String, nil?: true + + # @!attribute metadata + # Metadata filter for the responses. This is a query parameter used to select + # responses. + # + # @return [Object, nil] + optional :metadata, OpenAI::Internal::Type::Unknown, nil?: true + + # @!attribute model + # The name of the model to find responses for. This is a query parameter used to + # select responses. + # + # @return [String, nil] + optional :model, String, nil?: true + + # @!attribute reasoning_effort + # Optional reasoning effort parameter. This is a query parameter used to select + # responses. + # + # @return [Symbol, OpenAI::Models::ReasoningEffort, nil] + optional :reasoning_effort, enum: -> { OpenAI::Models::ReasoningEffort }, nil?: true + + # @!attribute temperature + # Sampling temperature. This is a query parameter used to select responses. + # + # @return [Float, nil] + optional :temperature, Float, nil?: true + + # @!attribute top_p + # Nucleus sampling parameter. This is a query parameter used to select responses. + # + # @return [Float, nil] + optional :top_p, Float, nil?: true + + # @!attribute users + # List of user identifiers. This is a query parameter used to select responses. + # + # @return [Array, nil] + optional :users, OpenAI::Internal::Type::ArrayOf[String], nil?: true + + # @!method initialize(allow_parallel_tool_calls: nil, created_after: nil, created_before: nil, has_tool_calls: nil, instructions_search: nil, metadata: nil, model: nil, reasoning_effort: nil, temperature: nil, top_p: nil, users: nil, type: :responses) + # A EvalResponsesSource object describing a run data source configuration. + # + # @param allow_parallel_tool_calls [Boolean, nil] + # @param created_after [Integer, nil] + # @param created_before [Integer, nil] + # @param has_tool_calls [Boolean, nil] + # @param instructions_search [String, nil] + # @param metadata [Object, nil] + # @param model [String, nil] + # @param reasoning_effort [Symbol, OpenAI::Models::ReasoningEffort, nil] + # @param temperature [Float, nil] + # @param top_p [Float, nil] + # @param users [Array, nil] + # @param type [Symbol, :responses] + end + + # @!method self.variants + # @return [Array(OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::FileContent, OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::FileID, OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::Responses)] + end + + # The type of run data source. Always `completions`. + # + # @see OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource#type + module Type + extend OpenAI::Internal::Type::Enum + + COMPLETIONS = :completions + + # @!method self.values + # @return [Array] + end + + # @see OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource#input_messages + module InputMessages + extend OpenAI::Internal::Type::Union + + discriminator :type + + variant :template, + -> { OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template } + + variant :item_reference, + -> { OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::ItemReference } + + class Template < OpenAI::Internal::Type::BaseModel + # @!attribute template + # A list of chat messages forming the prompt or context. May include variable + # references to the "item" namespace, ie {{item.name}}. + # + # @return [Array] + required :template, + -> do + OpenAI::Internal::Type::ArrayOf[ + union: OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template + ] + end + + # @!attribute type + # The type of input messages. Always `template`. + # + # @return [Symbol, :template] + required :type, const: :template + + # @!method initialize(template:, type: :template) + # @param template [Array] + # @param type [Symbol, :template] + + # A message input to the model with a role indicating instruction following + # hierarchy. Instructions given with the `developer` or `system` role take + # precedence over instructions given with the `user` role. Messages with the + # `assistant` role are presumed to have been generated by the model in previous + # interactions. + module Template + extend OpenAI::Internal::Type::Union + + variant -> { OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::ChatMessage } + + # A message input to the model with a role indicating instruction following + # hierarchy. Instructions given with the `developer` or `system` role take + # precedence over instructions given with the `user` role. Messages with the + # `assistant` role are presumed to have been generated by the model in previous + # interactions. + variant -> { OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem } + + class ChatMessage < OpenAI::Internal::Type::BaseModel + # @!attribute content + # The content of the message. + # + # @return [String] + required :content, String + + # @!attribute role + # The role of the message (e.g. "system", "assistant", "user"). + # + # @return [String] + required :role, String + + # @!method initialize(content:, role:) + # @param content [String] + # @param role [String] + end + + class EvalItem < OpenAI::Internal::Type::BaseModel + # @!attribute content + # Text inputs to the model - can contain template strings. + # + # @return [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::Content::OutputText] + required :content, + union: -> { OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::Content } + + # @!attribute role + # The role of the message input. One of `user`, `assistant`, `system`, or + # `developer`. + # + # @return [Symbol, OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::Role] + required :role, + enum: -> { OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::Role } + + # @!attribute type + # The type of the message input. Always `message`. + # + # @return [Symbol, OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::Type, nil] + optional :type, + enum: -> { OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::Type } + + # @!method initialize(content:, role:, type: nil) + # A message input to the model with a role indicating instruction following + # hierarchy. Instructions given with the `developer` or `system` role take + # precedence over instructions given with the `user` role. Messages with the + # `assistant` role are presumed to have been generated by the model in previous + # interactions. + # + # @param content [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::Content::OutputText] + # @param role [Symbol, OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::Role] + # @param type [Symbol, OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::Type] + + # Text inputs to the model - can contain template strings. + # + # @see OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem#content + module Content + extend OpenAI::Internal::Type::Union + + # A text input to the model. + variant String + + # A text input to the model. + variant -> { OpenAI::Models::Responses::ResponseInputText } + + # A text output from the model. + variant -> { OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::Content::OutputText } + + class OutputText < OpenAI::Internal::Type::BaseModel + # @!attribute text + # The text output from the model. + # + # @return [String] + required :text, String + + # @!attribute type + # The type of the output text. Always `output_text`. + # + # @return [Symbol, :output_text] + required :type, const: :output_text + + # @!method initialize(text:, type: :output_text) + # A text output from the model. + # + # @param text [String] + # @param type [Symbol, :output_text] + end + + # @!method self.variants + # @return [Array(String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::Content::OutputText)] + end + + # The role of the message input. One of `user`, `assistant`, `system`, or + # `developer`. + # + # @see OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem#role + module Role + extend OpenAI::Internal::Type::Enum + + USER = :user + ASSISTANT = :assistant + SYSTEM = :system + DEVELOPER = :developer + + # @!method self.values + # @return [Array] + end + + # The type of the message input. Always `message`. + # + # @see OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem#type + module Type + extend OpenAI::Internal::Type::Enum + + MESSAGE = :message + + # @!method self.values + # @return [Array] + end + end + + # @!method self.variants + # @return [Array(OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::ChatMessage, OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem)] + end + end + + class ItemReference < OpenAI::Internal::Type::BaseModel + # @!attribute item_reference + # A reference to a variable in the "item" namespace. Ie, "item.name" + # + # @return [String] + required :item_reference, String + + # @!attribute type + # The type of input messages. Always `item_reference`. + # + # @return [Symbol, :item_reference] + required :type, const: :item_reference + + # @!method initialize(item_reference:, type: :item_reference) + # @param item_reference [String] + # @param type [Symbol, :item_reference] + end + + # @!method self.variants + # @return [Array(OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template, OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::ItemReference)] + end + + # @see OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource#sampling_params + class SamplingParams < OpenAI::Internal::Type::BaseModel + # @!attribute max_completion_tokens + # The maximum number of tokens in the generated output. + # + # @return [Integer, nil] + optional :max_completion_tokens, Integer + + # @!attribute seed + # A seed value to initialize the randomness, during sampling. + # + # @return [Integer, nil] + optional :seed, Integer + + # @!attribute temperature + # A higher temperature increases randomness in the outputs. + # + # @return [Float, nil] + optional :temperature, Float + + # @!attribute top_p + # An alternative to temperature for nucleus sampling; 1.0 includes all tokens. + # + # @return [Float, nil] + optional :top_p, Float + + # @!method initialize(max_completion_tokens: nil, seed: nil, temperature: nil, top_p: nil) + # @param max_completion_tokens [Integer] + # @param seed [Integer] + # @param temperature [Float] + # @param top_p [Float] + end + end + # @!method self.variants - # @return [Array(OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource)] + # @return [Array(OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource, OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource)] end end end diff --git a/lib/openai/models/evals/run_create_response.rb b/lib/openai/models/evals/run_create_response.rb index 25892cb6..22a5752b 100644 --- a/lib/openai/models/evals/run_create_response.rb +++ b/lib/openai/models/evals/run_create_response.rb @@ -20,7 +20,7 @@ class RunCreateResponse < OpenAI::Internal::Type::BaseModel # @!attribute data_source # Information about the run's data source. # - # @return [OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource] + # @return [OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource, OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions] required :data_source, union: -> { OpenAI::Models::Evals::RunCreateResponse::DataSource } # @!attribute error @@ -101,7 +101,7 @@ class RunCreateResponse < OpenAI::Internal::Type::BaseModel # # @param id [String] # @param created_at [Integer] - # @param data_source [OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource] + # @param data_source [OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource, OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions] # @param error [OpenAI::Models::Evals::EvalAPIError] # @param eval_id [String] # @param metadata [Hash{Symbol=>String}, nil] @@ -128,8 +128,456 @@ module DataSource # A CompletionsRunDataSource object describing a model sampling configuration. variant :completions, -> { OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource } + # A ResponsesRunDataSource object describing a model sampling configuration. + variant :completions, -> { OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions } + + class Completions < OpenAI::Internal::Type::BaseModel + # @!attribute source + # A EvalResponsesSource object describing a run data source configuration. + # + # @return [OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::Source::FileContent, OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::Source::FileID, OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::Source::Responses] + required :source, union: -> { OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::Source } + + # @!attribute type + # The type of run data source. Always `completions`. + # + # @return [Symbol, :completions] + required :type, const: :completions + + # @!attribute input_messages + # + # @return [OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template, OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::ItemReference, nil] + optional :input_messages, + union: -> { OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages } + + # @!attribute model + # The name of the model to use for generating completions (e.g. "o3-mini"). + # + # @return [String, nil] + optional :model, String + + # @!attribute sampling_params + # + # @return [OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::SamplingParams, nil] + optional :sampling_params, + -> { OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::SamplingParams } + + # @!method initialize(source:, input_messages: nil, model: nil, sampling_params: nil, type: :completions) + # A ResponsesRunDataSource object describing a model sampling configuration. + # + # @param source [OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::Source::FileContent, OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::Source::FileID, OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::Source::Responses] + # @param input_messages [OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template, OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::ItemReference] + # @param model [String] + # @param sampling_params [OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::SamplingParams] + # @param type [Symbol, :completions] + + # A EvalResponsesSource object describing a run data source configuration. + # + # @see OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions#source + module Source + extend OpenAI::Internal::Type::Union + + discriminator :type + + variant :file_content, + -> { OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::Source::FileContent } + + variant :file_id, -> { OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::Source::FileID } + + # A EvalResponsesSource object describing a run data source configuration. + variant :responses, + -> { OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::Source::Responses } + + class FileContent < OpenAI::Internal::Type::BaseModel + # @!attribute content + # The content of the jsonl file. + # + # @return [Array] + required :content, + -> { OpenAI::Internal::Type::ArrayOf[OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::Source::FileContent::Content] } + + # @!attribute type + # The type of jsonl source. Always `file_content`. + # + # @return [Symbol, :file_content] + required :type, const: :file_content + + # @!method initialize(content:, type: :file_content) + # @param content [Array] + # @param type [Symbol, :file_content] + + class Content < OpenAI::Internal::Type::BaseModel + # @!attribute item + # + # @return [Hash{Symbol=>Object}] + required :item, OpenAI::Internal::Type::HashOf[OpenAI::Internal::Type::Unknown] + + # @!attribute sample + # + # @return [Hash{Symbol=>Object}, nil] + optional :sample, OpenAI::Internal::Type::HashOf[OpenAI::Internal::Type::Unknown] + + # @!method initialize(item:, sample: nil) + # @param item [Hash{Symbol=>Object}] + # @param sample [Hash{Symbol=>Object}] + end + end + + class FileID < OpenAI::Internal::Type::BaseModel + # @!attribute id + # The identifier of the file. + # + # @return [String] + required :id, String + + # @!attribute type + # The type of jsonl source. Always `file_id`. + # + # @return [Symbol, :file_id] + required :type, const: :file_id + + # @!method initialize(id:, type: :file_id) + # @param id [String] + # @param type [Symbol, :file_id] + end + + class Responses < OpenAI::Internal::Type::BaseModel + # @!attribute type + # The type of run data source. Always `responses`. + # + # @return [Symbol, :responses] + required :type, const: :responses + + # @!attribute allow_parallel_tool_calls + # Whether to allow parallel tool calls. This is a query parameter used to select + # responses. + # + # @return [Boolean, nil] + optional :allow_parallel_tool_calls, OpenAI::Internal::Type::Boolean, nil?: true + + # @!attribute created_after + # Only include items created after this timestamp (inclusive). This is a query + # parameter used to select responses. + # + # @return [Integer, nil] + optional :created_after, Integer, nil?: true + + # @!attribute created_before + # Only include items created before this timestamp (inclusive). This is a query + # parameter used to select responses. + # + # @return [Integer, nil] + optional :created_before, Integer, nil?: true + + # @!attribute has_tool_calls + # Whether the response has tool calls. This is a query parameter used to select + # responses. + # + # @return [Boolean, nil] + optional :has_tool_calls, OpenAI::Internal::Type::Boolean, nil?: true + + # @!attribute instructions_search + # Optional search string for instructions. This is a query parameter used to + # select responses. + # + # @return [String, nil] + optional :instructions_search, String, nil?: true + + # @!attribute metadata + # Metadata filter for the responses. This is a query parameter used to select + # responses. + # + # @return [Object, nil] + optional :metadata, OpenAI::Internal::Type::Unknown, nil?: true + + # @!attribute model + # The name of the model to find responses for. This is a query parameter used to + # select responses. + # + # @return [String, nil] + optional :model, String, nil?: true + + # @!attribute reasoning_effort + # Optional reasoning effort parameter. This is a query parameter used to select + # responses. + # + # @return [Symbol, OpenAI::Models::ReasoningEffort, nil] + optional :reasoning_effort, enum: -> { OpenAI::Models::ReasoningEffort }, nil?: true + + # @!attribute temperature + # Sampling temperature. This is a query parameter used to select responses. + # + # @return [Float, nil] + optional :temperature, Float, nil?: true + + # @!attribute top_p + # Nucleus sampling parameter. This is a query parameter used to select responses. + # + # @return [Float, nil] + optional :top_p, Float, nil?: true + + # @!attribute users + # List of user identifiers. This is a query parameter used to select responses. + # + # @return [Array, nil] + optional :users, OpenAI::Internal::Type::ArrayOf[String], nil?: true + + # @!method initialize(allow_parallel_tool_calls: nil, created_after: nil, created_before: nil, has_tool_calls: nil, instructions_search: nil, metadata: nil, model: nil, reasoning_effort: nil, temperature: nil, top_p: nil, users: nil, type: :responses) + # A EvalResponsesSource object describing a run data source configuration. + # + # @param allow_parallel_tool_calls [Boolean, nil] + # @param created_after [Integer, nil] + # @param created_before [Integer, nil] + # @param has_tool_calls [Boolean, nil] + # @param instructions_search [String, nil] + # @param metadata [Object, nil] + # @param model [String, nil] + # @param reasoning_effort [Symbol, OpenAI::Models::ReasoningEffort, nil] + # @param temperature [Float, nil] + # @param top_p [Float, nil] + # @param users [Array, nil] + # @param type [Symbol, :responses] + end + + # @!method self.variants + # @return [Array(OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::Source::FileContent, OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::Source::FileID, OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::Source::Responses)] + end + + # @see OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions#input_messages + module InputMessages + extend OpenAI::Internal::Type::Union + + discriminator :type + + variant :template, + -> { OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template } + + variant :item_reference, + -> { OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::ItemReference } + + class Template < OpenAI::Internal::Type::BaseModel + # @!attribute template + # A list of chat messages forming the prompt or context. May include variable + # references to the "item" namespace, ie {{item.name}}. + # + # @return [Array] + required :template, + -> do + OpenAI::Internal::Type::ArrayOf[ + union: OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template + ] + end + + # @!attribute type + # The type of input messages. Always `template`. + # + # @return [Symbol, :template] + required :type, const: :template + + # @!method initialize(template:, type: :template) + # @param template [Array] + # @param type [Symbol, :template] + + # A message input to the model with a role indicating instruction following + # hierarchy. Instructions given with the `developer` or `system` role take + # precedence over instructions given with the `user` role. Messages with the + # `assistant` role are presumed to have been generated by the model in previous + # interactions. + module Template + extend OpenAI::Internal::Type::Union + + variant -> { OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::ChatMessage } + + # A message input to the model with a role indicating instruction following + # hierarchy. Instructions given with the `developer` or `system` role take + # precedence over instructions given with the `user` role. Messages with the + # `assistant` role are presumed to have been generated by the model in previous + # interactions. + variant -> { OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem } + + class ChatMessage < OpenAI::Internal::Type::BaseModel + # @!attribute content + # The content of the message. + # + # @return [String] + required :content, String + + # @!attribute role + # The role of the message (e.g. "system", "assistant", "user"). + # + # @return [String] + required :role, String + + # @!method initialize(content:, role:) + # @param content [String] + # @param role [String] + end + + class EvalItem < OpenAI::Internal::Type::BaseModel + # @!attribute content + # Text inputs to the model - can contain template strings. + # + # @return [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText] + required :content, + union: -> { OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content } + + # @!attribute role + # The role of the message input. One of `user`, `assistant`, `system`, or + # `developer`. + # + # @return [Symbol, OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Role] + required :role, + enum: -> { OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Role } + + # @!attribute type + # The type of the message input. Always `message`. + # + # @return [Symbol, OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Type, nil] + optional :type, + enum: -> { OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Type } + + # @!method initialize(content:, role:, type: nil) + # A message input to the model with a role indicating instruction following + # hierarchy. Instructions given with the `developer` or `system` role take + # precedence over instructions given with the `user` role. Messages with the + # `assistant` role are presumed to have been generated by the model in previous + # interactions. + # + # @param content [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText] + # @param role [Symbol, OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Role] + # @param type [Symbol, OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Type] + + # Text inputs to the model - can contain template strings. + # + # @see OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem#content + module Content + extend OpenAI::Internal::Type::Union + + # A text input to the model. + variant String + + # A text input to the model. + variant -> { OpenAI::Models::Responses::ResponseInputText } + + # A text output from the model. + variant -> { OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText } + + class OutputText < OpenAI::Internal::Type::BaseModel + # @!attribute text + # The text output from the model. + # + # @return [String] + required :text, String + + # @!attribute type + # The type of the output text. Always `output_text`. + # + # @return [Symbol, :output_text] + required :type, const: :output_text + + # @!method initialize(text:, type: :output_text) + # A text output from the model. + # + # @param text [String] + # @param type [Symbol, :output_text] + end + + # @!method self.variants + # @return [Array(String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText)] + end + + # The role of the message input. One of `user`, `assistant`, `system`, or + # `developer`. + # + # @see OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem#role + module Role + extend OpenAI::Internal::Type::Enum + + USER = :user + ASSISTANT = :assistant + SYSTEM = :system + DEVELOPER = :developer + + # @!method self.values + # @return [Array] + end + + # The type of the message input. Always `message`. + # + # @see OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem#type + module Type + extend OpenAI::Internal::Type::Enum + + MESSAGE = :message + + # @!method self.values + # @return [Array] + end + end + + # @!method self.variants + # @return [Array(OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::ChatMessage, OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem)] + end + end + + class ItemReference < OpenAI::Internal::Type::BaseModel + # @!attribute item_reference + # A reference to a variable in the "item" namespace. Ie, "item.name" + # + # @return [String] + required :item_reference, String + + # @!attribute type + # The type of input messages. Always `item_reference`. + # + # @return [Symbol, :item_reference] + required :type, const: :item_reference + + # @!method initialize(item_reference:, type: :item_reference) + # @param item_reference [String] + # @param type [Symbol, :item_reference] + end + + # @!method self.variants + # @return [Array(OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template, OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::ItemReference)] + end + + # @see OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions#sampling_params + class SamplingParams < OpenAI::Internal::Type::BaseModel + # @!attribute max_completion_tokens + # The maximum number of tokens in the generated output. + # + # @return [Integer, nil] + optional :max_completion_tokens, Integer + + # @!attribute seed + # A seed value to initialize the randomness, during sampling. + # + # @return [Integer, nil] + optional :seed, Integer + + # @!attribute temperature + # A higher temperature increases randomness in the outputs. + # + # @return [Float, nil] + optional :temperature, Float + + # @!attribute top_p + # An alternative to temperature for nucleus sampling; 1.0 includes all tokens. + # + # @return [Float, nil] + optional :top_p, Float + + # @!method initialize(max_completion_tokens: nil, seed: nil, temperature: nil, top_p: nil) + # @param max_completion_tokens [Integer] + # @param seed [Integer] + # @param temperature [Float] + # @param top_p [Float] + end + end + # @!method self.variants - # @return [Array(OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource)] + # @return [Array(OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource, OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions)] end class PerModelUsage < OpenAI::Internal::Type::BaseModel diff --git a/lib/openai/models/evals/run_list_params.rb b/lib/openai/models/evals/run_list_params.rb index a2b2afb4..66cd4270 100644 --- a/lib/openai/models/evals/run_list_params.rb +++ b/lib/openai/models/evals/run_list_params.rb @@ -28,8 +28,8 @@ class RunListParams < OpenAI::Internal::Type::BaseModel optional :order, enum: -> { OpenAI::Models::Evals::RunListParams::Order } # @!attribute status - # Filter runs by status. Use "queued" | "in_progress" | "failed" | "completed" | - # "canceled". + # Filter runs by status. One of `queued` | `in_progress` | `failed` | `completed` + # | `canceled`. # # @return [Symbol, OpenAI::Models::Evals::RunListParams::Status, nil] optional :status, enum: -> { OpenAI::Models::Evals::RunListParams::Status } @@ -53,8 +53,8 @@ module Order # @return [Array] end - # Filter runs by status. Use "queued" | "in_progress" | "failed" | "completed" | - # "canceled". + # Filter runs by status. One of `queued` | `in_progress` | `failed` | `completed` + # | `canceled`. module Status extend OpenAI::Internal::Type::Enum diff --git a/lib/openai/models/evals/run_list_response.rb b/lib/openai/models/evals/run_list_response.rb index cda98be8..941d74e1 100644 --- a/lib/openai/models/evals/run_list_response.rb +++ b/lib/openai/models/evals/run_list_response.rb @@ -20,7 +20,7 @@ class RunListResponse < OpenAI::Internal::Type::BaseModel # @!attribute data_source # Information about the run's data source. # - # @return [OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource] + # @return [OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource, OpenAI::Models::Evals::RunListResponse::DataSource::Completions] required :data_source, union: -> { OpenAI::Models::Evals::RunListResponse::DataSource } # @!attribute error @@ -101,7 +101,7 @@ class RunListResponse < OpenAI::Internal::Type::BaseModel # # @param id [String] # @param created_at [Integer] - # @param data_source [OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource] + # @param data_source [OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource, OpenAI::Models::Evals::RunListResponse::DataSource::Completions] # @param error [OpenAI::Models::Evals::EvalAPIError] # @param eval_id [String] # @param metadata [Hash{Symbol=>String}, nil] @@ -128,8 +128,452 @@ module DataSource # A CompletionsRunDataSource object describing a model sampling configuration. variant :completions, -> { OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource } + # A ResponsesRunDataSource object describing a model sampling configuration. + variant :completions, -> { OpenAI::Models::Evals::RunListResponse::DataSource::Completions } + + class Completions < OpenAI::Internal::Type::BaseModel + # @!attribute source + # A EvalResponsesSource object describing a run data source configuration. + # + # @return [OpenAI::Models::Evals::RunListResponse::DataSource::Completions::Source::FileContent, OpenAI::Models::Evals::RunListResponse::DataSource::Completions::Source::FileID, OpenAI::Models::Evals::RunListResponse::DataSource::Completions::Source::Responses] + required :source, union: -> { OpenAI::Models::Evals::RunListResponse::DataSource::Completions::Source } + + # @!attribute type + # The type of run data source. Always `completions`. + # + # @return [Symbol, :completions] + required :type, const: :completions + + # @!attribute input_messages + # + # @return [OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template, OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::ItemReference, nil] + optional :input_messages, + union: -> { OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages } + + # @!attribute model + # The name of the model to use for generating completions (e.g. "o3-mini"). + # + # @return [String, nil] + optional :model, String + + # @!attribute sampling_params + # + # @return [OpenAI::Models::Evals::RunListResponse::DataSource::Completions::SamplingParams, nil] + optional :sampling_params, + -> { OpenAI::Models::Evals::RunListResponse::DataSource::Completions::SamplingParams } + + # @!method initialize(source:, input_messages: nil, model: nil, sampling_params: nil, type: :completions) + # A ResponsesRunDataSource object describing a model sampling configuration. + # + # @param source [OpenAI::Models::Evals::RunListResponse::DataSource::Completions::Source::FileContent, OpenAI::Models::Evals::RunListResponse::DataSource::Completions::Source::FileID, OpenAI::Models::Evals::RunListResponse::DataSource::Completions::Source::Responses] + # @param input_messages [OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template, OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::ItemReference] + # @param model [String] + # @param sampling_params [OpenAI::Models::Evals::RunListResponse::DataSource::Completions::SamplingParams] + # @param type [Symbol, :completions] + + # A EvalResponsesSource object describing a run data source configuration. + # + # @see OpenAI::Models::Evals::RunListResponse::DataSource::Completions#source + module Source + extend OpenAI::Internal::Type::Union + + discriminator :type + + variant :file_content, + -> { OpenAI::Models::Evals::RunListResponse::DataSource::Completions::Source::FileContent } + + variant :file_id, -> { OpenAI::Models::Evals::RunListResponse::DataSource::Completions::Source::FileID } + + # A EvalResponsesSource object describing a run data source configuration. + variant :responses, + -> { OpenAI::Models::Evals::RunListResponse::DataSource::Completions::Source::Responses } + + class FileContent < OpenAI::Internal::Type::BaseModel + # @!attribute content + # The content of the jsonl file. + # + # @return [Array] + required :content, + -> { OpenAI::Internal::Type::ArrayOf[OpenAI::Models::Evals::RunListResponse::DataSource::Completions::Source::FileContent::Content] } + + # @!attribute type + # The type of jsonl source. Always `file_content`. + # + # @return [Symbol, :file_content] + required :type, const: :file_content + + # @!method initialize(content:, type: :file_content) + # @param content [Array] + # @param type [Symbol, :file_content] + + class Content < OpenAI::Internal::Type::BaseModel + # @!attribute item + # + # @return [Hash{Symbol=>Object}] + required :item, OpenAI::Internal::Type::HashOf[OpenAI::Internal::Type::Unknown] + + # @!attribute sample + # + # @return [Hash{Symbol=>Object}, nil] + optional :sample, OpenAI::Internal::Type::HashOf[OpenAI::Internal::Type::Unknown] + + # @!method initialize(item:, sample: nil) + # @param item [Hash{Symbol=>Object}] + # @param sample [Hash{Symbol=>Object}] + end + end + + class FileID < OpenAI::Internal::Type::BaseModel + # @!attribute id + # The identifier of the file. + # + # @return [String] + required :id, String + + # @!attribute type + # The type of jsonl source. Always `file_id`. + # + # @return [Symbol, :file_id] + required :type, const: :file_id + + # @!method initialize(id:, type: :file_id) + # @param id [String] + # @param type [Symbol, :file_id] + end + + class Responses < OpenAI::Internal::Type::BaseModel + # @!attribute type + # The type of run data source. Always `responses`. + # + # @return [Symbol, :responses] + required :type, const: :responses + + # @!attribute allow_parallel_tool_calls + # Whether to allow parallel tool calls. This is a query parameter used to select + # responses. + # + # @return [Boolean, nil] + optional :allow_parallel_tool_calls, OpenAI::Internal::Type::Boolean, nil?: true + + # @!attribute created_after + # Only include items created after this timestamp (inclusive). This is a query + # parameter used to select responses. + # + # @return [Integer, nil] + optional :created_after, Integer, nil?: true + + # @!attribute created_before + # Only include items created before this timestamp (inclusive). This is a query + # parameter used to select responses. + # + # @return [Integer, nil] + optional :created_before, Integer, nil?: true + + # @!attribute has_tool_calls + # Whether the response has tool calls. This is a query parameter used to select + # responses. + # + # @return [Boolean, nil] + optional :has_tool_calls, OpenAI::Internal::Type::Boolean, nil?: true + + # @!attribute instructions_search + # Optional search string for instructions. This is a query parameter used to + # select responses. + # + # @return [String, nil] + optional :instructions_search, String, nil?: true + + # @!attribute metadata + # Metadata filter for the responses. This is a query parameter used to select + # responses. + # + # @return [Object, nil] + optional :metadata, OpenAI::Internal::Type::Unknown, nil?: true + + # @!attribute model + # The name of the model to find responses for. This is a query parameter used to + # select responses. + # + # @return [String, nil] + optional :model, String, nil?: true + + # @!attribute reasoning_effort + # Optional reasoning effort parameter. This is a query parameter used to select + # responses. + # + # @return [Symbol, OpenAI::Models::ReasoningEffort, nil] + optional :reasoning_effort, enum: -> { OpenAI::Models::ReasoningEffort }, nil?: true + + # @!attribute temperature + # Sampling temperature. This is a query parameter used to select responses. + # + # @return [Float, nil] + optional :temperature, Float, nil?: true + + # @!attribute top_p + # Nucleus sampling parameter. This is a query parameter used to select responses. + # + # @return [Float, nil] + optional :top_p, Float, nil?: true + + # @!attribute users + # List of user identifiers. This is a query parameter used to select responses. + # + # @return [Array, nil] + optional :users, OpenAI::Internal::Type::ArrayOf[String], nil?: true + + # @!method initialize(allow_parallel_tool_calls: nil, created_after: nil, created_before: nil, has_tool_calls: nil, instructions_search: nil, metadata: nil, model: nil, reasoning_effort: nil, temperature: nil, top_p: nil, users: nil, type: :responses) + # A EvalResponsesSource object describing a run data source configuration. + # + # @param allow_parallel_tool_calls [Boolean, nil] + # @param created_after [Integer, nil] + # @param created_before [Integer, nil] + # @param has_tool_calls [Boolean, nil] + # @param instructions_search [String, nil] + # @param metadata [Object, nil] + # @param model [String, nil] + # @param reasoning_effort [Symbol, OpenAI::Models::ReasoningEffort, nil] + # @param temperature [Float, nil] + # @param top_p [Float, nil] + # @param users [Array, nil] + # @param type [Symbol, :responses] + end + + # @!method self.variants + # @return [Array(OpenAI::Models::Evals::RunListResponse::DataSource::Completions::Source::FileContent, OpenAI::Models::Evals::RunListResponse::DataSource::Completions::Source::FileID, OpenAI::Models::Evals::RunListResponse::DataSource::Completions::Source::Responses)] + end + + # @see OpenAI::Models::Evals::RunListResponse::DataSource::Completions#input_messages + module InputMessages + extend OpenAI::Internal::Type::Union + + discriminator :type + + variant :template, + -> { OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template } + + variant :item_reference, + -> { OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::ItemReference } + + class Template < OpenAI::Internal::Type::BaseModel + # @!attribute template + # A list of chat messages forming the prompt or context. May include variable + # references to the "item" namespace, ie {{item.name}}. + # + # @return [Array] + required :template, + -> { OpenAI::Internal::Type::ArrayOf[union: OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template] } + + # @!attribute type + # The type of input messages. Always `template`. + # + # @return [Symbol, :template] + required :type, const: :template + + # @!method initialize(template:, type: :template) + # @param template [Array] + # @param type [Symbol, :template] + + # A message input to the model with a role indicating instruction following + # hierarchy. Instructions given with the `developer` or `system` role take + # precedence over instructions given with the `user` role. Messages with the + # `assistant` role are presumed to have been generated by the model in previous + # interactions. + module Template + extend OpenAI::Internal::Type::Union + + variant -> { OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::ChatMessage } + + # A message input to the model with a role indicating instruction following + # hierarchy. Instructions given with the `developer` or `system` role take + # precedence over instructions given with the `user` role. Messages with the + # `assistant` role are presumed to have been generated by the model in previous + # interactions. + variant -> { OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem } + + class ChatMessage < OpenAI::Internal::Type::BaseModel + # @!attribute content + # The content of the message. + # + # @return [String] + required :content, String + + # @!attribute role + # The role of the message (e.g. "system", "assistant", "user"). + # + # @return [String] + required :role, String + + # @!method initialize(content:, role:) + # @param content [String] + # @param role [String] + end + + class EvalItem < OpenAI::Internal::Type::BaseModel + # @!attribute content + # Text inputs to the model - can contain template strings. + # + # @return [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText] + required :content, + union: -> { OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content } + + # @!attribute role + # The role of the message input. One of `user`, `assistant`, `system`, or + # `developer`. + # + # @return [Symbol, OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Role] + required :role, + enum: -> { OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Role } + + # @!attribute type + # The type of the message input. Always `message`. + # + # @return [Symbol, OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Type, nil] + optional :type, + enum: -> { OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Type } + + # @!method initialize(content:, role:, type: nil) + # A message input to the model with a role indicating instruction following + # hierarchy. Instructions given with the `developer` or `system` role take + # precedence over instructions given with the `user` role. Messages with the + # `assistant` role are presumed to have been generated by the model in previous + # interactions. + # + # @param content [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText] + # @param role [Symbol, OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Role] + # @param type [Symbol, OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Type] + + # Text inputs to the model - can contain template strings. + # + # @see OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem#content + module Content + extend OpenAI::Internal::Type::Union + + # A text input to the model. + variant String + + # A text input to the model. + variant -> { OpenAI::Models::Responses::ResponseInputText } + + # A text output from the model. + variant -> { OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText } + + class OutputText < OpenAI::Internal::Type::BaseModel + # @!attribute text + # The text output from the model. + # + # @return [String] + required :text, String + + # @!attribute type + # The type of the output text. Always `output_text`. + # + # @return [Symbol, :output_text] + required :type, const: :output_text + + # @!method initialize(text:, type: :output_text) + # A text output from the model. + # + # @param text [String] + # @param type [Symbol, :output_text] + end + + # @!method self.variants + # @return [Array(String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText)] + end + + # The role of the message input. One of `user`, `assistant`, `system`, or + # `developer`. + # + # @see OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem#role + module Role + extend OpenAI::Internal::Type::Enum + + USER = :user + ASSISTANT = :assistant + SYSTEM = :system + DEVELOPER = :developer + + # @!method self.values + # @return [Array] + end + + # The type of the message input. Always `message`. + # + # @see OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem#type + module Type + extend OpenAI::Internal::Type::Enum + + MESSAGE = :message + + # @!method self.values + # @return [Array] + end + end + + # @!method self.variants + # @return [Array(OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::ChatMessage, OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem)] + end + end + + class ItemReference < OpenAI::Internal::Type::BaseModel + # @!attribute item_reference + # A reference to a variable in the "item" namespace. Ie, "item.name" + # + # @return [String] + required :item_reference, String + + # @!attribute type + # The type of input messages. Always `item_reference`. + # + # @return [Symbol, :item_reference] + required :type, const: :item_reference + + # @!method initialize(item_reference:, type: :item_reference) + # @param item_reference [String] + # @param type [Symbol, :item_reference] + end + + # @!method self.variants + # @return [Array(OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template, OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::ItemReference)] + end + + # @see OpenAI::Models::Evals::RunListResponse::DataSource::Completions#sampling_params + class SamplingParams < OpenAI::Internal::Type::BaseModel + # @!attribute max_completion_tokens + # The maximum number of tokens in the generated output. + # + # @return [Integer, nil] + optional :max_completion_tokens, Integer + + # @!attribute seed + # A seed value to initialize the randomness, during sampling. + # + # @return [Integer, nil] + optional :seed, Integer + + # @!attribute temperature + # A higher temperature increases randomness in the outputs. + # + # @return [Float, nil] + optional :temperature, Float + + # @!attribute top_p + # An alternative to temperature for nucleus sampling; 1.0 includes all tokens. + # + # @return [Float, nil] + optional :top_p, Float + + # @!method initialize(max_completion_tokens: nil, seed: nil, temperature: nil, top_p: nil) + # @param max_completion_tokens [Integer] + # @param seed [Integer] + # @param temperature [Float] + # @param top_p [Float] + end + end + # @!method self.variants - # @return [Array(OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource)] + # @return [Array(OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource, OpenAI::Models::Evals::RunListResponse::DataSource::Completions)] end class PerModelUsage < OpenAI::Internal::Type::BaseModel diff --git a/lib/openai/models/evals/run_retrieve_response.rb b/lib/openai/models/evals/run_retrieve_response.rb index dabdd0a5..55c35341 100644 --- a/lib/openai/models/evals/run_retrieve_response.rb +++ b/lib/openai/models/evals/run_retrieve_response.rb @@ -20,7 +20,7 @@ class RunRetrieveResponse < OpenAI::Internal::Type::BaseModel # @!attribute data_source # Information about the run's data source. # - # @return [OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource] + # @return [OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource, OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions] required :data_source, union: -> { OpenAI::Models::Evals::RunRetrieveResponse::DataSource } # @!attribute error @@ -101,7 +101,7 @@ class RunRetrieveResponse < OpenAI::Internal::Type::BaseModel # # @param id [String] # @param created_at [Integer] - # @param data_source [OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource] + # @param data_source [OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource, OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions] # @param error [OpenAI::Models::Evals::EvalAPIError] # @param eval_id [String] # @param metadata [Hash{Symbol=>String}, nil] @@ -128,8 +128,458 @@ module DataSource # A CompletionsRunDataSource object describing a model sampling configuration. variant :completions, -> { OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource } + # A ResponsesRunDataSource object describing a model sampling configuration. + variant :completions, -> { OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions } + + class Completions < OpenAI::Internal::Type::BaseModel + # @!attribute source + # A EvalResponsesSource object describing a run data source configuration. + # + # @return [OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::Source::FileContent, OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::Source::FileID, OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::Source::Responses] + required :source, + union: -> { OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::Source } + + # @!attribute type + # The type of run data source. Always `completions`. + # + # @return [Symbol, :completions] + required :type, const: :completions + + # @!attribute input_messages + # + # @return [OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template, OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::ItemReference, nil] + optional :input_messages, + union: -> { OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages } + + # @!attribute model + # The name of the model to use for generating completions (e.g. "o3-mini"). + # + # @return [String, nil] + optional :model, String + + # @!attribute sampling_params + # + # @return [OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::SamplingParams, nil] + optional :sampling_params, + -> { OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::SamplingParams } + + # @!method initialize(source:, input_messages: nil, model: nil, sampling_params: nil, type: :completions) + # A ResponsesRunDataSource object describing a model sampling configuration. + # + # @param source [OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::Source::FileContent, OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::Source::FileID, OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::Source::Responses] + # @param input_messages [OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template, OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::ItemReference] + # @param model [String] + # @param sampling_params [OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::SamplingParams] + # @param type [Symbol, :completions] + + # A EvalResponsesSource object describing a run data source configuration. + # + # @see OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions#source + module Source + extend OpenAI::Internal::Type::Union + + discriminator :type + + variant :file_content, + -> { OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::Source::FileContent } + + variant :file_id, + -> { OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::Source::FileID } + + # A EvalResponsesSource object describing a run data source configuration. + variant :responses, + -> { OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::Source::Responses } + + class FileContent < OpenAI::Internal::Type::BaseModel + # @!attribute content + # The content of the jsonl file. + # + # @return [Array] + required :content, + -> { OpenAI::Internal::Type::ArrayOf[OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::Source::FileContent::Content] } + + # @!attribute type + # The type of jsonl source. Always `file_content`. + # + # @return [Symbol, :file_content] + required :type, const: :file_content + + # @!method initialize(content:, type: :file_content) + # @param content [Array] + # @param type [Symbol, :file_content] + + class Content < OpenAI::Internal::Type::BaseModel + # @!attribute item + # + # @return [Hash{Symbol=>Object}] + required :item, OpenAI::Internal::Type::HashOf[OpenAI::Internal::Type::Unknown] + + # @!attribute sample + # + # @return [Hash{Symbol=>Object}, nil] + optional :sample, OpenAI::Internal::Type::HashOf[OpenAI::Internal::Type::Unknown] + + # @!method initialize(item:, sample: nil) + # @param item [Hash{Symbol=>Object}] + # @param sample [Hash{Symbol=>Object}] + end + end + + class FileID < OpenAI::Internal::Type::BaseModel + # @!attribute id + # The identifier of the file. + # + # @return [String] + required :id, String + + # @!attribute type + # The type of jsonl source. Always `file_id`. + # + # @return [Symbol, :file_id] + required :type, const: :file_id + + # @!method initialize(id:, type: :file_id) + # @param id [String] + # @param type [Symbol, :file_id] + end + + class Responses < OpenAI::Internal::Type::BaseModel + # @!attribute type + # The type of run data source. Always `responses`. + # + # @return [Symbol, :responses] + required :type, const: :responses + + # @!attribute allow_parallel_tool_calls + # Whether to allow parallel tool calls. This is a query parameter used to select + # responses. + # + # @return [Boolean, nil] + optional :allow_parallel_tool_calls, OpenAI::Internal::Type::Boolean, nil?: true + + # @!attribute created_after + # Only include items created after this timestamp (inclusive). This is a query + # parameter used to select responses. + # + # @return [Integer, nil] + optional :created_after, Integer, nil?: true + + # @!attribute created_before + # Only include items created before this timestamp (inclusive). This is a query + # parameter used to select responses. + # + # @return [Integer, nil] + optional :created_before, Integer, nil?: true + + # @!attribute has_tool_calls + # Whether the response has tool calls. This is a query parameter used to select + # responses. + # + # @return [Boolean, nil] + optional :has_tool_calls, OpenAI::Internal::Type::Boolean, nil?: true + + # @!attribute instructions_search + # Optional search string for instructions. This is a query parameter used to + # select responses. + # + # @return [String, nil] + optional :instructions_search, String, nil?: true + + # @!attribute metadata + # Metadata filter for the responses. This is a query parameter used to select + # responses. + # + # @return [Object, nil] + optional :metadata, OpenAI::Internal::Type::Unknown, nil?: true + + # @!attribute model + # The name of the model to find responses for. This is a query parameter used to + # select responses. + # + # @return [String, nil] + optional :model, String, nil?: true + + # @!attribute reasoning_effort + # Optional reasoning effort parameter. This is a query parameter used to select + # responses. + # + # @return [Symbol, OpenAI::Models::ReasoningEffort, nil] + optional :reasoning_effort, enum: -> { OpenAI::Models::ReasoningEffort }, nil?: true + + # @!attribute temperature + # Sampling temperature. This is a query parameter used to select responses. + # + # @return [Float, nil] + optional :temperature, Float, nil?: true + + # @!attribute top_p + # Nucleus sampling parameter. This is a query parameter used to select responses. + # + # @return [Float, nil] + optional :top_p, Float, nil?: true + + # @!attribute users + # List of user identifiers. This is a query parameter used to select responses. + # + # @return [Array, nil] + optional :users, OpenAI::Internal::Type::ArrayOf[String], nil?: true + + # @!method initialize(allow_parallel_tool_calls: nil, created_after: nil, created_before: nil, has_tool_calls: nil, instructions_search: nil, metadata: nil, model: nil, reasoning_effort: nil, temperature: nil, top_p: nil, users: nil, type: :responses) + # A EvalResponsesSource object describing a run data source configuration. + # + # @param allow_parallel_tool_calls [Boolean, nil] + # @param created_after [Integer, nil] + # @param created_before [Integer, nil] + # @param has_tool_calls [Boolean, nil] + # @param instructions_search [String, nil] + # @param metadata [Object, nil] + # @param model [String, nil] + # @param reasoning_effort [Symbol, OpenAI::Models::ReasoningEffort, nil] + # @param temperature [Float, nil] + # @param top_p [Float, nil] + # @param users [Array, nil] + # @param type [Symbol, :responses] + end + + # @!method self.variants + # @return [Array(OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::Source::FileContent, OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::Source::FileID, OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::Source::Responses)] + end + + # @see OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions#input_messages + module InputMessages + extend OpenAI::Internal::Type::Union + + discriminator :type + + variant :template, + -> { OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template } + + variant :item_reference, + -> { OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::ItemReference } + + class Template < OpenAI::Internal::Type::BaseModel + # @!attribute template + # A list of chat messages forming the prompt or context. May include variable + # references to the "item" namespace, ie {{item.name}}. + # + # @return [Array] + required :template, + -> do + OpenAI::Internal::Type::ArrayOf[ + union: OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template + ] + end + + # @!attribute type + # The type of input messages. Always `template`. + # + # @return [Symbol, :template] + required :type, const: :template + + # @!method initialize(template:, type: :template) + # @param template [Array] + # @param type [Symbol, :template] + + # A message input to the model with a role indicating instruction following + # hierarchy. Instructions given with the `developer` or `system` role take + # precedence over instructions given with the `user` role. Messages with the + # `assistant` role are presumed to have been generated by the model in previous + # interactions. + module Template + extend OpenAI::Internal::Type::Union + + variant -> { OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::ChatMessage } + + # A message input to the model with a role indicating instruction following + # hierarchy. Instructions given with the `developer` or `system` role take + # precedence over instructions given with the `user` role. Messages with the + # `assistant` role are presumed to have been generated by the model in previous + # interactions. + variant -> { OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem } + + class ChatMessage < OpenAI::Internal::Type::BaseModel + # @!attribute content + # The content of the message. + # + # @return [String] + required :content, String + + # @!attribute role + # The role of the message (e.g. "system", "assistant", "user"). + # + # @return [String] + required :role, String + + # @!method initialize(content:, role:) + # @param content [String] + # @param role [String] + end + + class EvalItem < OpenAI::Internal::Type::BaseModel + # @!attribute content + # Text inputs to the model - can contain template strings. + # + # @return [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText] + required :content, + union: -> { OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content } + + # @!attribute role + # The role of the message input. One of `user`, `assistant`, `system`, or + # `developer`. + # + # @return [Symbol, OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Role] + required :role, + enum: -> { OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Role } + + # @!attribute type + # The type of the message input. Always `message`. + # + # @return [Symbol, OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Type, nil] + optional :type, + enum: -> { OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Type } + + # @!method initialize(content:, role:, type: nil) + # A message input to the model with a role indicating instruction following + # hierarchy. Instructions given with the `developer` or `system` role take + # precedence over instructions given with the `user` role. Messages with the + # `assistant` role are presumed to have been generated by the model in previous + # interactions. + # + # @param content [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText] + # @param role [Symbol, OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Role] + # @param type [Symbol, OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Type] + + # Text inputs to the model - can contain template strings. + # + # @see OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem#content + module Content + extend OpenAI::Internal::Type::Union + + # A text input to the model. + variant String + + # A text input to the model. + variant -> { OpenAI::Models::Responses::ResponseInputText } + + # A text output from the model. + variant -> { OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText } + + class OutputText < OpenAI::Internal::Type::BaseModel + # @!attribute text + # The text output from the model. + # + # @return [String] + required :text, String + + # @!attribute type + # The type of the output text. Always `output_text`. + # + # @return [Symbol, :output_text] + required :type, const: :output_text + + # @!method initialize(text:, type: :output_text) + # A text output from the model. + # + # @param text [String] + # @param type [Symbol, :output_text] + end + + # @!method self.variants + # @return [Array(String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText)] + end + + # The role of the message input. One of `user`, `assistant`, `system`, or + # `developer`. + # + # @see OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem#role + module Role + extend OpenAI::Internal::Type::Enum + + USER = :user + ASSISTANT = :assistant + SYSTEM = :system + DEVELOPER = :developer + + # @!method self.values + # @return [Array] + end + + # The type of the message input. Always `message`. + # + # @see OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem#type + module Type + extend OpenAI::Internal::Type::Enum + + MESSAGE = :message + + # @!method self.values + # @return [Array] + end + end + + # @!method self.variants + # @return [Array(OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::ChatMessage, OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem)] + end + end + + class ItemReference < OpenAI::Internal::Type::BaseModel + # @!attribute item_reference + # A reference to a variable in the "item" namespace. Ie, "item.name" + # + # @return [String] + required :item_reference, String + + # @!attribute type + # The type of input messages. Always `item_reference`. + # + # @return [Symbol, :item_reference] + required :type, const: :item_reference + + # @!method initialize(item_reference:, type: :item_reference) + # @param item_reference [String] + # @param type [Symbol, :item_reference] + end + + # @!method self.variants + # @return [Array(OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template, OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::ItemReference)] + end + + # @see OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions#sampling_params + class SamplingParams < OpenAI::Internal::Type::BaseModel + # @!attribute max_completion_tokens + # The maximum number of tokens in the generated output. + # + # @return [Integer, nil] + optional :max_completion_tokens, Integer + + # @!attribute seed + # A seed value to initialize the randomness, during sampling. + # + # @return [Integer, nil] + optional :seed, Integer + + # @!attribute temperature + # A higher temperature increases randomness in the outputs. + # + # @return [Float, nil] + optional :temperature, Float + + # @!attribute top_p + # An alternative to temperature for nucleus sampling; 1.0 includes all tokens. + # + # @return [Float, nil] + optional :top_p, Float + + # @!method initialize(max_completion_tokens: nil, seed: nil, temperature: nil, top_p: nil) + # @param max_completion_tokens [Integer] + # @param seed [Integer] + # @param temperature [Float] + # @param top_p [Float] + end + end + # @!method self.variants - # @return [Array(OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource)] + # @return [Array(OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource, OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions)] end class PerModelUsage < OpenAI::Internal::Type::BaseModel diff --git a/lib/openai/models/fine_tuning/checkpoints/permission_delete_params.rb b/lib/openai/models/fine_tuning/checkpoints/permission_delete_params.rb index 339cc7ea..402eb4c2 100644 --- a/lib/openai/models/fine_tuning/checkpoints/permission_delete_params.rb +++ b/lib/openai/models/fine_tuning/checkpoints/permission_delete_params.rb @@ -9,7 +9,13 @@ class PermissionDeleteParams < OpenAI::Internal::Type::BaseModel extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters - # @!method initialize(request_options: {}) + # @!attribute fine_tuned_model_checkpoint + # + # @return [String] + required :fine_tuned_model_checkpoint, String + + # @!method initialize(fine_tuned_model_checkpoint:, request_options: {}) + # @param fine_tuned_model_checkpoint [String] # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] end end diff --git a/lib/openai/models/image.rb b/lib/openai/models/image.rb index d76cb186..52ace3e6 100644 --- a/lib/openai/models/image.rb +++ b/lib/openai/models/image.rb @@ -4,27 +4,29 @@ module OpenAI module Models class Image < OpenAI::Internal::Type::BaseModel # @!attribute b64_json - # The base64-encoded JSON of the generated image, if `response_format` is - # `b64_json`. + # The base64-encoded JSON of the generated image. Default value for `gpt-image-1`, + # and only present if `response_format` is set to `b64_json` for `dall-e-2` and + # `dall-e-3`. # # @return [String, nil] optional :b64_json, String # @!attribute revised_prompt - # The prompt that was used to generate the image, if there was any revision to the - # prompt. + # For `dall-e-3` only, the revised prompt that was used to generate the image. # # @return [String, nil] optional :revised_prompt, String # @!attribute url - # The URL of the generated image, if `response_format` is `url` (default). + # When using `dall-e-2` or `dall-e-3`, the URL of the generated image if + # `response_format` is set to `url` (default value). Unsupported for + # `gpt-image-1`. # # @return [String, nil] optional :url, String # @!method initialize(b64_json: nil, revised_prompt: nil, url: nil) - # Represents the url or the content of an image generated by the OpenAI API. + # Represents the content or the URL of an image generated by the OpenAI API. # # @param b64_json [String] # @param revised_prompt [String] diff --git a/lib/openai/models/image_create_variation_params.rb b/lib/openai/models/image_create_variation_params.rb index 763a9b9a..4a665cb8 100644 --- a/lib/openai/models/image_create_variation_params.rb +++ b/lib/openai/models/image_create_variation_params.rb @@ -22,8 +22,7 @@ class ImageCreateVariationParams < OpenAI::Internal::Type::BaseModel optional :model, union: -> { OpenAI::Models::ImageCreateVariationParams::Model }, nil?: true # @!attribute n - # The number of images to generate. Must be between 1 and 10. For `dall-e-3`, only - # `n=1` is supported. + # The number of images to generate. Must be between 1 and 10. # # @return [Integer, nil] optional :n, Integer, nil?: true diff --git a/lib/openai/models/image_edit_params.rb b/lib/openai/models/image_edit_params.rb index 19525b78..7abf3372 100644 --- a/lib/openai/models/image_edit_params.rb +++ b/lib/openai/models/image_edit_params.rb @@ -8,30 +8,34 @@ class ImageEditParams < OpenAI::Internal::Type::BaseModel include OpenAI::Internal::Type::RequestParameters # @!attribute image - # The image to edit. Must be a valid PNG file, less than 4MB, and square. If mask - # is not provided, image must have transparency, which will be used as the mask. + # The image(s) to edit. Must be a supported image file or an array of images. For + # `gpt-image-1`, each image should be a `png`, `webp`, or `jpg` file less than + # 25MB. For `dall-e-2`, you can only provide one image, and it should be a square + # `png` file less than 4MB. # - # @return [Pathname, StringIO] - required :image, OpenAI::Internal::Type::IOLike + # @return [Pathname, StringIO, Array] + required :image, union: -> { OpenAI::Models::ImageEditParams::Image } # @!attribute prompt # A text description of the desired image(s). The maximum length is 1000 - # characters. + # characters for `dall-e-2`, and 32000 characters for `gpt-image-1`. # # @return [String] required :prompt, String # @!attribute mask # An additional image whose fully transparent areas (e.g. where alpha is zero) - # indicate where `image` should be edited. Must be a valid PNG file, less than + # indicate where `image` should be edited. If there are multiple images provided, + # the mask will be applied on the first image. Must be a valid PNG file, less than # 4MB, and have the same dimensions as `image`. # # @return [Pathname, StringIO, nil] optional :mask, OpenAI::Internal::Type::IOLike # @!attribute model - # The model to use for image generation. Only `dall-e-2` is supported at this - # time. + # The model to use for image generation. Only `dall-e-2` and `gpt-image-1` are + # supported. Defaults to `dall-e-2` unless a parameter specific to `gpt-image-1` + # is used. # # @return [String, Symbol, OpenAI::Models::ImageModel, nil] optional :model, union: -> { OpenAI::Models::ImageEditParams::Model }, nil?: true @@ -42,17 +46,27 @@ class ImageEditParams < OpenAI::Internal::Type::BaseModel # @return [Integer, nil] optional :n, Integer, nil?: true + # @!attribute quality + # The quality of the image that will be generated. `high`, `medium` and `low` are + # only supported for `gpt-image-1`. `dall-e-2` only supports `standard` quality. + # Defaults to `auto`. + # + # @return [Symbol, OpenAI::Models::ImageEditParams::Quality, nil] + optional :quality, enum: -> { OpenAI::Models::ImageEditParams::Quality }, nil?: true + # @!attribute response_format # The format in which the generated images are returned. Must be one of `url` or # `b64_json`. URLs are only valid for 60 minutes after the image has been - # generated. + # generated. This parameter is only supported for `dall-e-2`, as `gpt-image-1` + # will always return base64-encoded images. # # @return [Symbol, OpenAI::Models::ImageEditParams::ResponseFormat, nil] optional :response_format, enum: -> { OpenAI::Models::ImageEditParams::ResponseFormat }, nil?: true # @!attribute size - # The size of the generated images. Must be one of `256x256`, `512x512`, or - # `1024x1024`. + # The size of the generated images. Must be one of `1024x1024`, `1536x1024` + # (landscape), `1024x1536` (portrait), or `auto` (default value) for + # `gpt-image-1`, and one of `256x256`, `512x512`, or `1024x1024` for `dall-e-2`. # # @return [Symbol, OpenAI::Models::ImageEditParams::Size, nil] optional :size, enum: -> { OpenAI::Models::ImageEditParams::Size }, nil?: true @@ -65,34 +79,70 @@ class ImageEditParams < OpenAI::Internal::Type::BaseModel # @return [String, nil] optional :user, String - # @!method initialize(image:, prompt:, mask: nil, model: nil, n: nil, response_format: nil, size: nil, user: nil, request_options: {}) - # @param image [Pathname, StringIO] + # @!method initialize(image:, prompt:, mask: nil, model: nil, n: nil, quality: nil, response_format: nil, size: nil, user: nil, request_options: {}) + # @param image [Pathname, StringIO, Array] # @param prompt [String] # @param mask [Pathname, StringIO] # @param model [String, Symbol, OpenAI::Models::ImageModel, nil] # @param n [Integer, nil] + # @param quality [Symbol, OpenAI::Models::ImageEditParams::Quality, nil] # @param response_format [Symbol, OpenAI::Models::ImageEditParams::ResponseFormat, nil] # @param size [Symbol, OpenAI::Models::ImageEditParams::Size, nil] # @param user [String] # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] - # The model to use for image generation. Only `dall-e-2` is supported at this - # time. + # The image(s) to edit. Must be a supported image file or an array of images. For + # `gpt-image-1`, each image should be a `png`, `webp`, or `jpg` file less than + # 25MB. For `dall-e-2`, you can only provide one image, and it should be a square + # `png` file less than 4MB. + module Image + extend OpenAI::Internal::Type::Union + + variant OpenAI::Internal::Type::IOLike + + variant -> { OpenAI::Models::ImageEditParams::Image::StringArray } + + # @!method self.variants + # @return [Array(StringIO, Array)] + + StringArray = OpenAI::Internal::Type::ArrayOf[OpenAI::Internal::Type::IOLike] + end + + # The model to use for image generation. Only `dall-e-2` and `gpt-image-1` are + # supported. Defaults to `dall-e-2` unless a parameter specific to `gpt-image-1` + # is used. module Model extend OpenAI::Internal::Type::Union variant String - # The model to use for image generation. Only `dall-e-2` is supported at this time. + # The model to use for image generation. Only `dall-e-2` and `gpt-image-1` are supported. Defaults to `dall-e-2` unless a parameter specific to `gpt-image-1` is used. variant enum: -> { OpenAI::Models::ImageModel } # @!method self.variants # @return [Array(String, Symbol, OpenAI::Models::ImageModel)] end + # The quality of the image that will be generated. `high`, `medium` and `low` are + # only supported for `gpt-image-1`. `dall-e-2` only supports `standard` quality. + # Defaults to `auto`. + module Quality + extend OpenAI::Internal::Type::Enum + + STANDARD = :standard + LOW = :low + MEDIUM = :medium + HIGH = :high + AUTO = :auto + + # @!method self.values + # @return [Array] + end + # The format in which the generated images are returned. Must be one of `url` or # `b64_json`. URLs are only valid for 60 minutes after the image has been - # generated. + # generated. This parameter is only supported for `dall-e-2`, as `gpt-image-1` + # will always return base64-encoded images. module ResponseFormat extend OpenAI::Internal::Type::Enum @@ -103,8 +153,9 @@ module ResponseFormat # @return [Array] end - # The size of the generated images. Must be one of `256x256`, `512x512`, or - # `1024x1024`. + # The size of the generated images. Must be one of `1024x1024`, `1536x1024` + # (landscape), `1024x1536` (portrait), or `auto` (default value) for + # `gpt-image-1`, and one of `256x256`, `512x512`, or `1024x1024` for `dall-e-2`. module Size extend OpenAI::Internal::Type::Enum diff --git a/lib/openai/models/image_generate_params.rb b/lib/openai/models/image_generate_params.rb index 9e5550f1..56986585 100644 --- a/lib/openai/models/image_generate_params.rb +++ b/lib/openai/models/image_generate_params.rb @@ -8,18 +8,40 @@ class ImageGenerateParams < OpenAI::Internal::Type::BaseModel include OpenAI::Internal::Type::RequestParameters # @!attribute prompt - # A text description of the desired image(s). The maximum length is 1000 - # characters for `dall-e-2` and 4000 characters for `dall-e-3`. + # A text description of the desired image(s). The maximum length is 32000 + # characters for `gpt-image-1`, 1000 characters for `dall-e-2` and 4000 characters + # for `dall-e-3`. # # @return [String] required :prompt, String + # @!attribute background + # Allows to set transparency for the background of the generated image(s). This + # parameter is only supported for `gpt-image-1`. Must be one of `transparent`, + # `opaque` or `auto` (default value). When `auto` is used, the model will + # automatically determine the best background for the image. + # + # If `transparent`, the output format needs to support transparency, so it should + # be set to either `png` (default value) or `webp`. + # + # @return [Symbol, OpenAI::Models::ImageGenerateParams::Background, nil] + optional :background, enum: -> { OpenAI::Models::ImageGenerateParams::Background }, nil?: true + # @!attribute model - # The model to use for image generation. + # The model to use for image generation. One of `dall-e-2`, `dall-e-3`, or + # `gpt-image-1`. Defaults to `dall-e-2` unless a parameter specific to + # `gpt-image-1` is used. # # @return [String, Symbol, OpenAI::Models::ImageModel, nil] optional :model, union: -> { OpenAI::Models::ImageGenerateParams::Model }, nil?: true + # @!attribute moderation + # Control the content-moderation level for images generated by `gpt-image-1`. Must + # be either `low` for less restrictive filtering or `auto` (default value). + # + # @return [Symbol, OpenAI::Models::ImageGenerateParams::Moderation, nil] + optional :moderation, enum: -> { OpenAI::Models::ImageGenerateParams::Moderation }, nil?: true + # @!attribute n # The number of images to generate. Must be between 1 and 10. For `dall-e-3`, only # `n=1` is supported. @@ -27,35 +49,56 @@ class ImageGenerateParams < OpenAI::Internal::Type::BaseModel # @return [Integer, nil] optional :n, Integer, nil?: true + # @!attribute output_compression + # The compression level (0-100%) for the generated images. This parameter is only + # supported for `gpt-image-1` with the `webp` or `jpeg` output formats, and + # defaults to 100. + # + # @return [Integer, nil] + optional :output_compression, Integer, nil?: true + + # @!attribute output_format + # The format in which the generated images are returned. This parameter is only + # supported for `gpt-image-1`. Must be one of `png`, `jpeg`, or `webp`. + # + # @return [Symbol, OpenAI::Models::ImageGenerateParams::OutputFormat, nil] + optional :output_format, enum: -> { OpenAI::Models::ImageGenerateParams::OutputFormat }, nil?: true + # @!attribute quality - # The quality of the image that will be generated. `hd` creates images with finer - # details and greater consistency across the image. This param is only supported - # for `dall-e-3`. + # The quality of the image that will be generated. + # + # - `auto` (default value) will automatically select the best quality for the + # given model. + # - `high`, `medium` and `low` are supported for `gpt-image-1`. + # - `hd` and `standard` are supported for `dall-e-3`. + # - `standard` is the only option for `dall-e-2`. # # @return [Symbol, OpenAI::Models::ImageGenerateParams::Quality, nil] - optional :quality, enum: -> { OpenAI::Models::ImageGenerateParams::Quality } + optional :quality, enum: -> { OpenAI::Models::ImageGenerateParams::Quality }, nil?: true # @!attribute response_format - # The format in which the generated images are returned. Must be one of `url` or - # `b64_json`. URLs are only valid for 60 minutes after the image has been - # generated. + # The format in which generated images with `dall-e-2` and `dall-e-3` are + # returned. Must be one of `url` or `b64_json`. URLs are only valid for 60 minutes + # after the image has been generated. This parameter isn't supported for + # `gpt-image-1` which will always return base64-encoded images. # # @return [Symbol, OpenAI::Models::ImageGenerateParams::ResponseFormat, nil] optional :response_format, enum: -> { OpenAI::Models::ImageGenerateParams::ResponseFormat }, nil?: true # @!attribute size - # The size of the generated images. Must be one of `256x256`, `512x512`, or - # `1024x1024` for `dall-e-2`. Must be one of `1024x1024`, `1792x1024`, or - # `1024x1792` for `dall-e-3` models. + # The size of the generated images. Must be one of `1024x1024`, `1536x1024` + # (landscape), `1024x1536` (portrait), or `auto` (default value) for + # `gpt-image-1`, one of `256x256`, `512x512`, or `1024x1024` for `dall-e-2`, and + # one of `1024x1024`, `1792x1024`, or `1024x1792` for `dall-e-3`. # # @return [Symbol, OpenAI::Models::ImageGenerateParams::Size, nil] optional :size, enum: -> { OpenAI::Models::ImageGenerateParams::Size }, nil?: true # @!attribute style - # The style of the generated images. Must be one of `vivid` or `natural`. Vivid - # causes the model to lean towards generating hyper-real and dramatic images. - # Natural causes the model to produce more natural, less hyper-real looking - # images. This param is only supported for `dall-e-3`. + # The style of the generated images. This parameter is only supported for + # `dall-e-3`. Must be one of `vivid` or `natural`. Vivid causes the model to lean + # towards generating hyper-real and dramatic images. Natural causes the model to + # produce more natural, less hyper-real looking images. # # @return [Symbol, OpenAI::Models::ImageGenerateParams::Style, nil] optional :style, enum: -> { OpenAI::Models::ImageGenerateParams::Style }, nil?: true @@ -68,46 +111,104 @@ class ImageGenerateParams < OpenAI::Internal::Type::BaseModel # @return [String, nil] optional :user, String - # @!method initialize(prompt:, model: nil, n: nil, quality: nil, response_format: nil, size: nil, style: nil, user: nil, request_options: {}) + # @!method initialize(prompt:, background: nil, model: nil, moderation: nil, n: nil, output_compression: nil, output_format: nil, quality: nil, response_format: nil, size: nil, style: nil, user: nil, request_options: {}) # @param prompt [String] + # @param background [Symbol, OpenAI::Models::ImageGenerateParams::Background, nil] # @param model [String, Symbol, OpenAI::Models::ImageModel, nil] + # @param moderation [Symbol, OpenAI::Models::ImageGenerateParams::Moderation, nil] # @param n [Integer, nil] - # @param quality [Symbol, OpenAI::Models::ImageGenerateParams::Quality] + # @param output_compression [Integer, nil] + # @param output_format [Symbol, OpenAI::Models::ImageGenerateParams::OutputFormat, nil] + # @param quality [Symbol, OpenAI::Models::ImageGenerateParams::Quality, nil] # @param response_format [Symbol, OpenAI::Models::ImageGenerateParams::ResponseFormat, nil] # @param size [Symbol, OpenAI::Models::ImageGenerateParams::Size, nil] # @param style [Symbol, OpenAI::Models::ImageGenerateParams::Style, nil] # @param user [String] # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] - # The model to use for image generation. + # Allows to set transparency for the background of the generated image(s). This + # parameter is only supported for `gpt-image-1`. Must be one of `transparent`, + # `opaque` or `auto` (default value). When `auto` is used, the model will + # automatically determine the best background for the image. + # + # If `transparent`, the output format needs to support transparency, so it should + # be set to either `png` (default value) or `webp`. + module Background + extend OpenAI::Internal::Type::Enum + + TRANSPARENT = :transparent + OPAQUE = :opaque + AUTO = :auto + + # @!method self.values + # @return [Array] + end + + # The model to use for image generation. One of `dall-e-2`, `dall-e-3`, or + # `gpt-image-1`. Defaults to `dall-e-2` unless a parameter specific to + # `gpt-image-1` is used. module Model extend OpenAI::Internal::Type::Union variant String - # The model to use for image generation. + # The model to use for image generation. One of `dall-e-2`, `dall-e-3`, or `gpt-image-1`. Defaults to `dall-e-2` unless a parameter specific to `gpt-image-1` is used. variant enum: -> { OpenAI::Models::ImageModel } # @!method self.variants # @return [Array(String, Symbol, OpenAI::Models::ImageModel)] end - # The quality of the image that will be generated. `hd` creates images with finer - # details and greater consistency across the image. This param is only supported - # for `dall-e-3`. + # Control the content-moderation level for images generated by `gpt-image-1`. Must + # be either `low` for less restrictive filtering or `auto` (default value). + module Moderation + extend OpenAI::Internal::Type::Enum + + LOW = :low + AUTO = :auto + + # @!method self.values + # @return [Array] + end + + # The format in which the generated images are returned. This parameter is only + # supported for `gpt-image-1`. Must be one of `png`, `jpeg`, or `webp`. + module OutputFormat + extend OpenAI::Internal::Type::Enum + + PNG = :png + JPEG = :jpeg + WEBP = :webp + + # @!method self.values + # @return [Array] + end + + # The quality of the image that will be generated. + # + # - `auto` (default value) will automatically select the best quality for the + # given model. + # - `high`, `medium` and `low` are supported for `gpt-image-1`. + # - `hd` and `standard` are supported for `dall-e-3`. + # - `standard` is the only option for `dall-e-2`. module Quality extend OpenAI::Internal::Type::Enum STANDARD = :standard HD = :hd + LOW = :low + MEDIUM = :medium + HIGH = :high + AUTO = :auto # @!method self.values # @return [Array] end - # The format in which the generated images are returned. Must be one of `url` or - # `b64_json`. URLs are only valid for 60 minutes after the image has been - # generated. + # The format in which generated images with `dall-e-2` and `dall-e-3` are + # returned. Must be one of `url` or `b64_json`. URLs are only valid for 60 minutes + # after the image has been generated. This parameter isn't supported for + # `gpt-image-1` which will always return base64-encoded images. module ResponseFormat extend OpenAI::Internal::Type::Enum @@ -118,15 +219,19 @@ module ResponseFormat # @return [Array] end - # The size of the generated images. Must be one of `256x256`, `512x512`, or - # `1024x1024` for `dall-e-2`. Must be one of `1024x1024`, `1792x1024`, or - # `1024x1792` for `dall-e-3` models. + # The size of the generated images. Must be one of `1024x1024`, `1536x1024` + # (landscape), `1024x1536` (portrait), or `auto` (default value) for + # `gpt-image-1`, one of `256x256`, `512x512`, or `1024x1024` for `dall-e-2`, and + # one of `1024x1024`, `1792x1024`, or `1024x1792` for `dall-e-3`. module Size extend OpenAI::Internal::Type::Enum + AUTO = :auto + SIZE_1024X1024 = :"1024x1024" + SIZE_1536X1024 = :"1536x1024" + SIZE_1024X1536 = :"1024x1536" SIZE_256X256 = :"256x256" SIZE_512X512 = :"512x512" - SIZE_1024X1024 = :"1024x1024" SIZE_1792X1024 = :"1792x1024" SIZE_1024X1792 = :"1024x1792" @@ -134,10 +239,10 @@ module Size # @return [Array] end - # The style of the generated images. Must be one of `vivid` or `natural`. Vivid - # causes the model to lean towards generating hyper-real and dramatic images. - # Natural causes the model to produce more natural, less hyper-real looking - # images. This param is only supported for `dall-e-3`. + # The style of the generated images. This parameter is only supported for + # `dall-e-3`. Must be one of `vivid` or `natural`. Vivid causes the model to lean + # towards generating hyper-real and dramatic images. Natural causes the model to + # produce more natural, less hyper-real looking images. module Style extend OpenAI::Internal::Type::Enum diff --git a/lib/openai/models/image_model.rb b/lib/openai/models/image_model.rb index 4b6ca64c..0bd2690e 100644 --- a/lib/openai/models/image_model.rb +++ b/lib/openai/models/image_model.rb @@ -7,6 +7,7 @@ module ImageModel DALL_E_2 = :"dall-e-2" DALL_E_3 = :"dall-e-3" + GPT_IMAGE_1 = :"gpt-image-1" # @!method self.values # @return [Array] diff --git a/lib/openai/models/images_response.rb b/lib/openai/models/images_response.rb index 8816ee07..90c77f01 100644 --- a/lib/openai/models/images_response.rb +++ b/lib/openai/models/images_response.rb @@ -5,18 +5,85 @@ module Models # @see OpenAI::Resources::Images#create_variation class ImagesResponse < OpenAI::Internal::Type::BaseModel # @!attribute created + # The Unix timestamp (in seconds) of when the image was created. # # @return [Integer] required :created, Integer # @!attribute data + # The list of generated images. # - # @return [Array] - required :data, -> { OpenAI::Internal::Type::ArrayOf[OpenAI::Models::Image] } + # @return [Array, nil] + optional :data, -> { OpenAI::Internal::Type::ArrayOf[OpenAI::Models::Image] } - # @!method initialize(created:, data:) + # @!attribute usage + # For `gpt-image-1` only, the token usage information for the image generation. + # + # @return [OpenAI::Models::ImagesResponse::Usage, nil] + optional :usage, -> { OpenAI::Models::ImagesResponse::Usage } + + # @!method initialize(created:, data: nil, usage: nil) + # The response from the image generation endpoint. + # # @param created [Integer] # @param data [Array] + # @param usage [OpenAI::Models::ImagesResponse::Usage] + + # @see OpenAI::Models::ImagesResponse#usage + class Usage < OpenAI::Internal::Type::BaseModel + # @!attribute input_tokens + # The number of tokens (images and text) in the input prompt. + # + # @return [Integer] + required :input_tokens, Integer + + # @!attribute input_tokens_details + # The input tokens detailed information for the image generation. + # + # @return [OpenAI::Models::ImagesResponse::Usage::InputTokensDetails] + required :input_tokens_details, -> { OpenAI::Models::ImagesResponse::Usage::InputTokensDetails } + + # @!attribute output_tokens + # The number of image tokens in the output image. + # + # @return [Integer] + required :output_tokens, Integer + + # @!attribute total_tokens + # The total number of tokens (images and text) used for the image generation. + # + # @return [Integer] + required :total_tokens, Integer + + # @!method initialize(input_tokens:, input_tokens_details:, output_tokens:, total_tokens:) + # For `gpt-image-1` only, the token usage information for the image generation. + # + # @param input_tokens [Integer] + # @param input_tokens_details [OpenAI::Models::ImagesResponse::Usage::InputTokensDetails] + # @param output_tokens [Integer] + # @param total_tokens [Integer] + + # @see OpenAI::Models::ImagesResponse::Usage#input_tokens_details + class InputTokensDetails < OpenAI::Internal::Type::BaseModel + # @!attribute image_tokens + # The number of image tokens in the input prompt. + # + # @return [Integer] + required :image_tokens, Integer + + # @!attribute text_tokens + # The number of text tokens in the input prompt. + # + # @return [Integer] + required :text_tokens, Integer + + # @!method initialize(image_tokens:, text_tokens:) + # The input tokens detailed information for the image generation. + # + # @param image_tokens [Integer] + # @param text_tokens [Integer] + end + end end end end diff --git a/lib/openai/models/responses/response_reasoning_summary_part_added_event.rb b/lib/openai/models/responses/response_reasoning_summary_part_added_event.rb new file mode 100644 index 00000000..a7f42ec3 --- /dev/null +++ b/lib/openai/models/responses/response_reasoning_summary_part_added_event.rb @@ -0,0 +1,69 @@ +# frozen_string_literal: true + +module OpenAI + module Models + module Responses + class ResponseReasoningSummaryPartAddedEvent < OpenAI::Internal::Type::BaseModel + # @!attribute item_id + # The ID of the item this summary part is associated with. + # + # @return [String] + required :item_id, String + + # @!attribute output_index + # The index of the output item this summary part is associated with. + # + # @return [Integer] + required :output_index, Integer + + # @!attribute part + # The summary part that was added. + # + # @return [OpenAI::Models::Responses::ResponseReasoningSummaryPartAddedEvent::Part] + required :part, -> { OpenAI::Models::Responses::ResponseReasoningSummaryPartAddedEvent::Part } + + # @!attribute summary_index + # The index of the summary part within the reasoning summary. + # + # @return [Integer] + required :summary_index, Integer + + # @!attribute type + # The type of the event. Always `response.reasoning_summary_part.added`. + # + # @return [Symbol, :"response.reasoning_summary_part.added"] + required :type, const: :"response.reasoning_summary_part.added" + + # @!method initialize(item_id:, output_index:, part:, summary_index:, type: :"response.reasoning_summary_part.added") + # Emitted when a new reasoning summary part is added. + # + # @param item_id [String] + # @param output_index [Integer] + # @param part [OpenAI::Models::Responses::ResponseReasoningSummaryPartAddedEvent::Part] + # @param summary_index [Integer] + # @param type [Symbol, :"response.reasoning_summary_part.added"] + + # @see OpenAI::Models::Responses::ResponseReasoningSummaryPartAddedEvent#part + class Part < OpenAI::Internal::Type::BaseModel + # @!attribute text + # The text of the summary part. + # + # @return [String] + required :text, String + + # @!attribute type + # The type of the summary part. Always `summary_text`. + # + # @return [Symbol, :summary_text] + required :type, const: :summary_text + + # @!method initialize(text:, type: :summary_text) + # The summary part that was added. + # + # @param text [String] + # @param type [Symbol, :summary_text] + end + end + end + end +end diff --git a/lib/openai/models/responses/response_reasoning_summary_part_done_event.rb b/lib/openai/models/responses/response_reasoning_summary_part_done_event.rb new file mode 100644 index 00000000..c868638f --- /dev/null +++ b/lib/openai/models/responses/response_reasoning_summary_part_done_event.rb @@ -0,0 +1,69 @@ +# frozen_string_literal: true + +module OpenAI + module Models + module Responses + class ResponseReasoningSummaryPartDoneEvent < OpenAI::Internal::Type::BaseModel + # @!attribute item_id + # The ID of the item this summary part is associated with. + # + # @return [String] + required :item_id, String + + # @!attribute output_index + # The index of the output item this summary part is associated with. + # + # @return [Integer] + required :output_index, Integer + + # @!attribute part + # The completed summary part. + # + # @return [OpenAI::Models::Responses::ResponseReasoningSummaryPartDoneEvent::Part] + required :part, -> { OpenAI::Models::Responses::ResponseReasoningSummaryPartDoneEvent::Part } + + # @!attribute summary_index + # The index of the summary part within the reasoning summary. + # + # @return [Integer] + required :summary_index, Integer + + # @!attribute type + # The type of the event. Always `response.reasoning_summary_part.done`. + # + # @return [Symbol, :"response.reasoning_summary_part.done"] + required :type, const: :"response.reasoning_summary_part.done" + + # @!method initialize(item_id:, output_index:, part:, summary_index:, type: :"response.reasoning_summary_part.done") + # Emitted when a reasoning summary part is completed. + # + # @param item_id [String] + # @param output_index [Integer] + # @param part [OpenAI::Models::Responses::ResponseReasoningSummaryPartDoneEvent::Part] + # @param summary_index [Integer] + # @param type [Symbol, :"response.reasoning_summary_part.done"] + + # @see OpenAI::Models::Responses::ResponseReasoningSummaryPartDoneEvent#part + class Part < OpenAI::Internal::Type::BaseModel + # @!attribute text + # The text of the summary part. + # + # @return [String] + required :text, String + + # @!attribute type + # The type of the summary part. Always `summary_text`. + # + # @return [Symbol, :summary_text] + required :type, const: :summary_text + + # @!method initialize(text:, type: :summary_text) + # The completed summary part. + # + # @param text [String] + # @param type [Symbol, :summary_text] + end + end + end + end +end diff --git a/lib/openai/models/responses/response_reasoning_summary_text_delta_event.rb b/lib/openai/models/responses/response_reasoning_summary_text_delta_event.rb new file mode 100644 index 00000000..d816e961 --- /dev/null +++ b/lib/openai/models/responses/response_reasoning_summary_text_delta_event.rb @@ -0,0 +1,48 @@ +# frozen_string_literal: true + +module OpenAI + module Models + module Responses + class ResponseReasoningSummaryTextDeltaEvent < OpenAI::Internal::Type::BaseModel + # @!attribute delta + # The text delta that was added to the summary. + # + # @return [String] + required :delta, String + + # @!attribute item_id + # The ID of the item this summary text delta is associated with. + # + # @return [String] + required :item_id, String + + # @!attribute output_index + # The index of the output item this summary text delta is associated with. + # + # @return [Integer] + required :output_index, Integer + + # @!attribute summary_index + # The index of the summary part within the reasoning summary. + # + # @return [Integer] + required :summary_index, Integer + + # @!attribute type + # The type of the event. Always `response.reasoning_summary_text.delta`. + # + # @return [Symbol, :"response.reasoning_summary_text.delta"] + required :type, const: :"response.reasoning_summary_text.delta" + + # @!method initialize(delta:, item_id:, output_index:, summary_index:, type: :"response.reasoning_summary_text.delta") + # Emitted when a delta is added to a reasoning summary text. + # + # @param delta [String] + # @param item_id [String] + # @param output_index [Integer] + # @param summary_index [Integer] + # @param type [Symbol, :"response.reasoning_summary_text.delta"] + end + end + end +end diff --git a/lib/openai/models/responses/response_reasoning_summary_text_done_event.rb b/lib/openai/models/responses/response_reasoning_summary_text_done_event.rb new file mode 100644 index 00000000..93e8cadc --- /dev/null +++ b/lib/openai/models/responses/response_reasoning_summary_text_done_event.rb @@ -0,0 +1,48 @@ +# frozen_string_literal: true + +module OpenAI + module Models + module Responses + class ResponseReasoningSummaryTextDoneEvent < OpenAI::Internal::Type::BaseModel + # @!attribute item_id + # The ID of the item this summary text is associated with. + # + # @return [String] + required :item_id, String + + # @!attribute output_index + # The index of the output item this summary text is associated with. + # + # @return [Integer] + required :output_index, Integer + + # @!attribute summary_index + # The index of the summary part within the reasoning summary. + # + # @return [Integer] + required :summary_index, Integer + + # @!attribute text + # The full text of the completed reasoning summary. + # + # @return [String] + required :text, String + + # @!attribute type + # The type of the event. Always `response.reasoning_summary_text.done`. + # + # @return [Symbol, :"response.reasoning_summary_text.done"] + required :type, const: :"response.reasoning_summary_text.done" + + # @!method initialize(item_id:, output_index:, summary_index:, text:, type: :"response.reasoning_summary_text.done") + # Emitted when a reasoning summary text is completed. + # + # @param item_id [String] + # @param output_index [Integer] + # @param summary_index [Integer] + # @param text [String] + # @param type [Symbol, :"response.reasoning_summary_text.done"] + end + end + end +end diff --git a/lib/openai/models/responses/response_stream_event.rb b/lib/openai/models/responses/response_stream_event.rb index d6c7fee7..95156d56 100644 --- a/lib/openai/models/responses/response_stream_event.rb +++ b/lib/openai/models/responses/response_stream_event.rb @@ -93,6 +93,22 @@ module ResponseStreamEvent # Emitted when an output item is marked done. variant :"response.output_item.done", -> { OpenAI::Models::Responses::ResponseOutputItemDoneEvent } + # Emitted when a new reasoning summary part is added. + variant :"response.reasoning_summary_part.added", + -> { OpenAI::Models::Responses::ResponseReasoningSummaryPartAddedEvent } + + # Emitted when a reasoning summary part is completed. + variant :"response.reasoning_summary_part.done", + -> { OpenAI::Models::Responses::ResponseReasoningSummaryPartDoneEvent } + + # Emitted when a delta is added to a reasoning summary text. + variant :"response.reasoning_summary_text.delta", + -> { OpenAI::Models::Responses::ResponseReasoningSummaryTextDeltaEvent } + + # Emitted when a reasoning summary text is completed. + variant :"response.reasoning_summary_text.done", + -> { OpenAI::Models::Responses::ResponseReasoningSummaryTextDoneEvent } + # Emitted when there is a partial refusal text. variant :"response.refusal.delta", -> { OpenAI::Models::Responses::ResponseRefusalDeltaEvent } @@ -122,7 +138,7 @@ module ResponseStreamEvent -> { OpenAI::Models::Responses::ResponseWebSearchCallSearchingEvent } # @!method self.variants - # @return [Array(OpenAI::Models::Responses::ResponseAudioDeltaEvent, OpenAI::Models::Responses::ResponseAudioDoneEvent, OpenAI::Models::Responses::ResponseAudioTranscriptDeltaEvent, OpenAI::Models::Responses::ResponseAudioTranscriptDoneEvent, OpenAI::Models::Responses::ResponseCodeInterpreterCallCodeDeltaEvent, OpenAI::Models::Responses::ResponseCodeInterpreterCallCodeDoneEvent, OpenAI::Models::Responses::ResponseCodeInterpreterCallCompletedEvent, OpenAI::Models::Responses::ResponseCodeInterpreterCallInProgressEvent, OpenAI::Models::Responses::ResponseCodeInterpreterCallInterpretingEvent, OpenAI::Models::Responses::ResponseCompletedEvent, OpenAI::Models::Responses::ResponseContentPartAddedEvent, OpenAI::Models::Responses::ResponseContentPartDoneEvent, OpenAI::Models::Responses::ResponseCreatedEvent, OpenAI::Models::Responses::ResponseErrorEvent, OpenAI::Models::Responses::ResponseFileSearchCallCompletedEvent, OpenAI::Models::Responses::ResponseFileSearchCallInProgressEvent, OpenAI::Models::Responses::ResponseFileSearchCallSearchingEvent, OpenAI::Models::Responses::ResponseFunctionCallArgumentsDeltaEvent, OpenAI::Models::Responses::ResponseFunctionCallArgumentsDoneEvent, OpenAI::Models::Responses::ResponseInProgressEvent, OpenAI::Models::Responses::ResponseFailedEvent, OpenAI::Models::Responses::ResponseIncompleteEvent, OpenAI::Models::Responses::ResponseOutputItemAddedEvent, OpenAI::Models::Responses::ResponseOutputItemDoneEvent, OpenAI::Models::Responses::ResponseRefusalDeltaEvent, OpenAI::Models::Responses::ResponseRefusalDoneEvent, OpenAI::Models::Responses::ResponseTextAnnotationDeltaEvent, OpenAI::Models::Responses::ResponseTextDeltaEvent, OpenAI::Models::Responses::ResponseTextDoneEvent, OpenAI::Models::Responses::ResponseWebSearchCallCompletedEvent, OpenAI::Models::Responses::ResponseWebSearchCallInProgressEvent, OpenAI::Models::Responses::ResponseWebSearchCallSearchingEvent)] + # @return [Array(OpenAI::Models::Responses::ResponseAudioDeltaEvent, OpenAI::Models::Responses::ResponseAudioDoneEvent, OpenAI::Models::Responses::ResponseAudioTranscriptDeltaEvent, OpenAI::Models::Responses::ResponseAudioTranscriptDoneEvent, OpenAI::Models::Responses::ResponseCodeInterpreterCallCodeDeltaEvent, OpenAI::Models::Responses::ResponseCodeInterpreterCallCodeDoneEvent, OpenAI::Models::Responses::ResponseCodeInterpreterCallCompletedEvent, OpenAI::Models::Responses::ResponseCodeInterpreterCallInProgressEvent, OpenAI::Models::Responses::ResponseCodeInterpreterCallInterpretingEvent, OpenAI::Models::Responses::ResponseCompletedEvent, OpenAI::Models::Responses::ResponseContentPartAddedEvent, OpenAI::Models::Responses::ResponseContentPartDoneEvent, OpenAI::Models::Responses::ResponseCreatedEvent, OpenAI::Models::Responses::ResponseErrorEvent, OpenAI::Models::Responses::ResponseFileSearchCallCompletedEvent, OpenAI::Models::Responses::ResponseFileSearchCallInProgressEvent, OpenAI::Models::Responses::ResponseFileSearchCallSearchingEvent, OpenAI::Models::Responses::ResponseFunctionCallArgumentsDeltaEvent, OpenAI::Models::Responses::ResponseFunctionCallArgumentsDoneEvent, OpenAI::Models::Responses::ResponseInProgressEvent, OpenAI::Models::Responses::ResponseFailedEvent, OpenAI::Models::Responses::ResponseIncompleteEvent, OpenAI::Models::Responses::ResponseOutputItemAddedEvent, OpenAI::Models::Responses::ResponseOutputItemDoneEvent, OpenAI::Models::Responses::ResponseReasoningSummaryPartAddedEvent, OpenAI::Models::Responses::ResponseReasoningSummaryPartDoneEvent, OpenAI::Models::Responses::ResponseReasoningSummaryTextDeltaEvent, OpenAI::Models::Responses::ResponseReasoningSummaryTextDoneEvent, OpenAI::Models::Responses::ResponseRefusalDeltaEvent, OpenAI::Models::Responses::ResponseRefusalDoneEvent, OpenAI::Models::Responses::ResponseTextAnnotationDeltaEvent, OpenAI::Models::Responses::ResponseTextDeltaEvent, OpenAI::Models::Responses::ResponseTextDoneEvent, OpenAI::Models::Responses::ResponseWebSearchCallCompletedEvent, OpenAI::Models::Responses::ResponseWebSearchCallInProgressEvent, OpenAI::Models::Responses::ResponseWebSearchCallSearchingEvent)] end end end diff --git a/lib/openai/resources/evals.rb b/lib/openai/resources/evals.rb index 070c5958..2996ff10 100644 --- a/lib/openai/resources/evals.rb +++ b/lib/openai/resources/evals.rb @@ -12,13 +12,12 @@ class Evals # We support several types of graders and datasources. For more information, see # the [Evals guide](https://platform.openai.com/docs/guides/evals). # - # @overload create(data_source_config:, testing_criteria:, metadata: nil, name: nil, share_with_openai: nil, request_options: {}) + # @overload create(data_source_config:, testing_criteria:, metadata: nil, name: nil, request_options: {}) # - # @param data_source_config [OpenAI::Models::EvalCreateParams::DataSourceConfig::Custom, OpenAI::Models::EvalCreateParams::DataSourceConfig::StoredCompletions] - # @param testing_criteria [Array] + # @param data_source_config [OpenAI::Models::EvalCreateParams::DataSourceConfig::Custom, OpenAI::Models::EvalCreateParams::DataSourceConfig::Logs] + # @param testing_criteria [Array] # @param metadata [Hash{Symbol=>String}, nil] # @param name [String] - # @param share_with_openai [Boolean] # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [OpenAI::Models::EvalCreateResponse] diff --git a/lib/openai/resources/evals/runs.rb b/lib/openai/resources/evals/runs.rb index ce05aca8..77980ec8 100644 --- a/lib/openai/resources/evals/runs.rb +++ b/lib/openai/resources/evals/runs.rb @@ -12,7 +12,7 @@ class Runs # @overload create(eval_id, data_source:, metadata: nil, name: nil, request_options: {}) # # @param eval_id [String] - # @param data_source [OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource] + # @param data_source [OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource, OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource] # @param metadata [Hash{Symbol=>String}, nil] # @param name [String] # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] diff --git a/lib/openai/resources/fine_tuning/checkpoints/permissions.rb b/lib/openai/resources/fine_tuning/checkpoints/permissions.rb index 47a1d9b0..38c9fe03 100644 --- a/lib/openai/resources/fine_tuning/checkpoints/permissions.rb +++ b/lib/openai/resources/fine_tuning/checkpoints/permissions.rb @@ -64,20 +64,30 @@ def retrieve(fine_tuned_model_checkpoint, params = {}) # Organization owners can use this endpoint to delete a permission for a # fine-tuned model checkpoint. # - # @overload delete(fine_tuned_model_checkpoint, request_options: {}) + # @overload delete(permission_id, fine_tuned_model_checkpoint:, request_options: {}) # + # @param permission_id [String] # @param fine_tuned_model_checkpoint [String] # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [OpenAI::Models::FineTuning::Checkpoints::PermissionDeleteResponse] # # @see OpenAI::Models::FineTuning::Checkpoints::PermissionDeleteParams - def delete(fine_tuned_model_checkpoint, params = {}) + def delete(permission_id, params) + parsed, options = OpenAI::Models::FineTuning::Checkpoints::PermissionDeleteParams.dump_request(params) + fine_tuned_model_checkpoint = + parsed.delete(:fine_tuned_model_checkpoint) do + raise ArgumentError.new("missing required path argument #{_1}") + end @client.request( method: :delete, - path: ["fine_tuning/checkpoints/%1$s/permissions", fine_tuned_model_checkpoint], + path: [ + "fine_tuning/checkpoints/%1$s/permissions/%2$s", + fine_tuned_model_checkpoint, + permission_id + ], model: OpenAI::Models::FineTuning::Checkpoints::PermissionDeleteResponse, - options: params[:request_options] + options: options ) end diff --git a/lib/openai/resources/images.rb b/lib/openai/resources/images.rb index 886a0efb..40bfb0e5 100644 --- a/lib/openai/resources/images.rb +++ b/lib/openai/resources/images.rb @@ -3,7 +3,7 @@ module OpenAI module Resources class Images - # Creates a variation of a given image. + # Creates a variation of a given image. This endpoint only supports `dall-e-2`. # # @overload create_variation(image:, model: nil, n: nil, response_format: nil, size: nil, user: nil, request_options: {}) # @@ -30,15 +30,17 @@ def create_variation(params) ) end - # Creates an edited or extended image given an original image and a prompt. + # Creates an edited or extended image given one or more source images and a + # prompt. This endpoint only supports `gpt-image-1` and `dall-e-2`. # - # @overload edit(image:, prompt:, mask: nil, model: nil, n: nil, response_format: nil, size: nil, user: nil, request_options: {}) + # @overload edit(image:, prompt:, mask: nil, model: nil, n: nil, quality: nil, response_format: nil, size: nil, user: nil, request_options: {}) # - # @param image [Pathname, StringIO] + # @param image [Pathname, StringIO, Array] # @param prompt [String] # @param mask [Pathname, StringIO] # @param model [String, Symbol, OpenAI::Models::ImageModel, nil] # @param n [Integer, nil] + # @param quality [Symbol, OpenAI::Models::ImageEditParams::Quality, nil] # @param response_format [Symbol, OpenAI::Models::ImageEditParams::ResponseFormat, nil] # @param size [Symbol, OpenAI::Models::ImageEditParams::Size, nil] # @param user [String] @@ -60,13 +62,18 @@ def edit(params) end # Creates an image given a prompt. + # [Learn more](https://platform.openai.com/docs/guides/images). # - # @overload generate(prompt:, model: nil, n: nil, quality: nil, response_format: nil, size: nil, style: nil, user: nil, request_options: {}) + # @overload generate(prompt:, background: nil, model: nil, moderation: nil, n: nil, output_compression: nil, output_format: nil, quality: nil, response_format: nil, size: nil, style: nil, user: nil, request_options: {}) # # @param prompt [String] + # @param background [Symbol, OpenAI::Models::ImageGenerateParams::Background, nil] # @param model [String, Symbol, OpenAI::Models::ImageModel, nil] + # @param moderation [Symbol, OpenAI::Models::ImageGenerateParams::Moderation, nil] # @param n [Integer, nil] - # @param quality [Symbol, OpenAI::Models::ImageGenerateParams::Quality] + # @param output_compression [Integer, nil] + # @param output_format [Symbol, OpenAI::Models::ImageGenerateParams::OutputFormat, nil] + # @param quality [Symbol, OpenAI::Models::ImageGenerateParams::Quality, nil] # @param response_format [Symbol, OpenAI::Models::ImageGenerateParams::ResponseFormat, nil] # @param size [Symbol, OpenAI::Models::ImageGenerateParams::Size, nil] # @param style [Symbol, OpenAI::Models::ImageGenerateParams::Style, nil] diff --git a/lib/openai/resources/responses.rb b/lib/openai/resources/responses.rb index 86d77f6a..350e7a3f 100644 --- a/lib/openai/resources/responses.rb +++ b/lib/openai/resources/responses.rb @@ -100,7 +100,7 @@ def stream # @param user [String] # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # - # @return [OpenAI::Internal::Stream] + # @return [OpenAI::Internal::Stream] # # @see OpenAI::Models::Responses::ResponseCreateParams def stream_raw(params) diff --git a/rbi/lib/openai/models/beta/thread_create_and_run_params.rbi b/rbi/lib/openai/models/beta/thread_create_and_run_params.rbi index 091a1cab..ef54ba30 100644 --- a/rbi/lib/openai/models/beta/thread_create_and_run_params.rbi +++ b/rbi/lib/openai/models/beta/thread_create_and_run_params.rbi @@ -1018,18 +1018,6 @@ module OpenAI end end - module Tool - extend OpenAI::Internal::Type::Union - - sig do - override - .returns( - [OpenAI::Models::Beta::CodeInterpreterTool, OpenAI::Models::Beta::FileSearchTool, OpenAI::Models::Beta::FunctionTool] - ) - end - def self.variants; end - end - class TruncationStrategy < OpenAI::Internal::Type::BaseModel # The truncation strategy to use for the thread. The default is `auto`. If set to # `last_messages`, the thread will be truncated to the n most recent messages in diff --git a/rbi/lib/openai/models/eval_create_params.rbi b/rbi/lib/openai/models/eval_create_params.rbi index dbec61df..32befe9a 100644 --- a/rbi/lib/openai/models/eval_create_params.rbi +++ b/rbi/lib/openai/models/eval_create_params.rbi @@ -11,7 +11,7 @@ module OpenAI returns( T.any( OpenAI::Models::EvalCreateParams::DataSourceConfig::Custom, - OpenAI::Models::EvalCreateParams::DataSourceConfig::StoredCompletions + OpenAI::Models::EvalCreateParams::DataSourceConfig::Logs ) ) end @@ -24,7 +24,9 @@ module OpenAI T.any( OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel, OpenAI::Models::EvalStringCheckGrader, - OpenAI::Models::EvalTextSimilarityGrader + OpenAI::Models::EvalTextSimilarityGrader, + OpenAI::Models::EvalCreateParams::TestingCriterion::Python, + OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel ) ] ) @@ -47,61 +49,50 @@ module OpenAI sig { params(name: String).void } attr_writer :name - # Indicates whether the evaluation is shared with OpenAI. - sig { returns(T.nilable(T::Boolean)) } - attr_reader :share_with_openai - - sig { params(share_with_openai: T::Boolean).void } - attr_writer :share_with_openai - sig do params( data_source_config: T.any( OpenAI::Models::EvalCreateParams::DataSourceConfig::Custom, OpenAI::Internal::AnyHash, - OpenAI::Models::EvalCreateParams::DataSourceConfig::StoredCompletions + OpenAI::Models::EvalCreateParams::DataSourceConfig::Logs ), testing_criteria: T::Array[ T.any( OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel, OpenAI::Internal::AnyHash, OpenAI::Models::EvalStringCheckGrader, - OpenAI::Models::EvalTextSimilarityGrader + OpenAI::Models::EvalTextSimilarityGrader, + OpenAI::Models::EvalCreateParams::TestingCriterion::Python, + OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel ) ], metadata: T.nilable(T::Hash[Symbol, String]), name: String, - share_with_openai: T::Boolean, request_options: T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash) ) .returns(T.attached_class) end - def self.new( - data_source_config:, - testing_criteria:, - metadata: nil, - name: nil, - share_with_openai: nil, - request_options: {} - ); end + def self.new(data_source_config:, testing_criteria:, metadata: nil, name: nil, request_options: {}); end + sig do override .returns( { data_source_config: T.any( OpenAI::Models::EvalCreateParams::DataSourceConfig::Custom, - OpenAI::Models::EvalCreateParams::DataSourceConfig::StoredCompletions + OpenAI::Models::EvalCreateParams::DataSourceConfig::Logs ), testing_criteria: T::Array[ T.any( OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel, OpenAI::Models::EvalStringCheckGrader, - OpenAI::Models::EvalTextSimilarityGrader + OpenAI::Models::EvalTextSimilarityGrader, + OpenAI::Models::EvalCreateParams::TestingCriterion::Python, + OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel ) ], metadata: T.nilable(T::Hash[Symbol, String]), name: String, - share_with_openai: T::Boolean, request_options: OpenAI::RequestOptions } ) @@ -113,7 +104,7 @@ module OpenAI extend OpenAI::Internal::Type::Union class Custom < OpenAI::Internal::Type::BaseModel - # The json schema for the run data source items. + # The json schema for each row in the data source. sig { returns(T::Hash[Symbol, T.anything]) } attr_accessor :item_schema @@ -121,7 +112,8 @@ module OpenAI sig { returns(Symbol) } attr_accessor :type - # Whether to include the sample schema in the data source. + # Whether the eval should expect you to populate the sample namespace (ie, by + # generating responses off of your data source) sig { returns(T.nilable(T::Boolean)) } attr_reader :include_sample_schema @@ -151,34 +143,32 @@ module OpenAI def to_hash; end end - class StoredCompletions < OpenAI::Internal::Type::BaseModel - # The type of data source. Always `stored_completions`. + class Logs < OpenAI::Internal::Type::BaseModel + # The type of data source. Always `logs`. sig { returns(Symbol) } attr_accessor :type - # 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. - sig { returns(T.nilable(T::Hash[Symbol, String])) } - attr_accessor :metadata + # Metadata filters for the logs data source. + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } + attr_reader :metadata + + sig { params(metadata: T::Hash[Symbol, T.anything]).void } + attr_writer :metadata # A data source config which specifies the metadata property of your stored # completions query. This is usually metadata like `usecase=chatbot` or # `prompt-version=v2`, etc. - sig { params(metadata: T.nilable(T::Hash[Symbol, String]), type: Symbol).returns(T.attached_class) } - def self.new(metadata: nil, type: :stored_completions); end + sig { params(metadata: T::Hash[Symbol, T.anything], type: Symbol).returns(T.attached_class) } + def self.new(metadata: nil, type: :logs); end - sig { override.returns({type: Symbol, metadata: T.nilable(T::Hash[Symbol, String])}) } + sig { override.returns({type: Symbol, metadata: T::Hash[Symbol, T.anything]}) } def to_hash; end end sig do override .returns( - [OpenAI::Models::EvalCreateParams::DataSourceConfig::Custom, OpenAI::Models::EvalCreateParams::DataSourceConfig::StoredCompletions] + [OpenAI::Models::EvalCreateParams::DataSourceConfig::Custom, OpenAI::Models::EvalCreateParams::DataSourceConfig::Logs] ) end def self.variants; end @@ -190,13 +180,14 @@ module OpenAI extend OpenAI::Internal::Type::Union class LabelModel < OpenAI::Internal::Type::BaseModel + # A list of chat messages forming the prompt or context. May include variable + # references to the "item" namespace, ie {{item.name}}. sig do returns( T::Array[ T.any( OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::SimpleInputMessage, - OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::InputMessage, - OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::OutputMessage + OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem ) ] ) @@ -231,8 +222,7 @@ module OpenAI T.any( OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::SimpleInputMessage, OpenAI::Internal::AnyHash, - OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::InputMessage, - OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::OutputMessage + OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem ) ], labels: T::Array[String], @@ -252,8 +242,7 @@ module OpenAI input: T::Array[ T.any( OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::SimpleInputMessage, - OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::InputMessage, - OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::OutputMessage + OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem ) ], labels: T::Array[String], @@ -266,6 +255,8 @@ module OpenAI end def to_hash; end + # A chat message that makes up the prompt or context. May include variable + # references to the "item" namespace, ie {{item.name}}. module Input extend OpenAI::Internal::Type::Union @@ -285,358 +276,455 @@ module OpenAI def to_hash; end end - class InputMessage < OpenAI::Internal::Type::BaseModel - sig { returns(OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::InputMessage::Content) } - attr_reader :content - + class EvalItem < OpenAI::Internal::Type::BaseModel + # Text inputs to the model - can contain template strings. sig do - params( - content: T.any( - OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::InputMessage::Content, - OpenAI::Internal::AnyHash + returns( + T.any( + String, + OpenAI::Models::Responses::ResponseInputText, + OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::Content::OutputText ) ) - .void end - attr_writer :content + attr_accessor :content - # The role of the message. One of `user`, `system`, or `developer`. + # The role of the message input. One of `user`, `assistant`, `system`, or + # `developer`. + sig { returns(OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::Role::OrSymbol) } + attr_accessor :role + + # The type of the message input. Always `message`. sig do returns( - OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::InputMessage::Role::OrSymbol + T.nilable(OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::Type::OrSymbol) ) end - attr_accessor :role + attr_reader :type - # The type of item, which is always `message`. sig do - returns( - OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::InputMessage::Type::OrSymbol + params( + type: OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::Type::OrSymbol ) + .void end - attr_accessor :type + attr_writer :type + # A message input to the model with a role indicating instruction following + # hierarchy. Instructions given with the `developer` or `system` role take + # precedence over instructions given with the `user` role. Messages with the + # `assistant` role are presumed to have been generated by the model in previous + # interactions. sig do params( content: T.any( - OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::InputMessage::Content, - OpenAI::Internal::AnyHash + String, + OpenAI::Models::Responses::ResponseInputText, + OpenAI::Internal::AnyHash, + OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::Content::OutputText ), - role: OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::InputMessage::Role::OrSymbol, - type: OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::InputMessage::Type::OrSymbol + role: OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::Role::OrSymbol, + type: OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::Type::OrSymbol ) .returns(T.attached_class) end - def self.new(content:, role:, type:); end + def self.new(content:, role:, type: nil); end sig do override .returns( { - content: OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::InputMessage::Content, - role: OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::InputMessage::Role::OrSymbol, - type: OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::InputMessage::Type::OrSymbol + content: T.any( + String, + OpenAI::Models::Responses::ResponseInputText, + OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::Content::OutputText + ), + role: OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::Role::OrSymbol, + type: OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::Type::OrSymbol } ) end def to_hash; end - class Content < OpenAI::Internal::Type::BaseModel - # The text content. - sig { returns(String) } - attr_accessor :text + # Text inputs to the model - can contain template strings. + module Content + extend OpenAI::Internal::Type::Union - # The type of content, which is always `input_text`. - sig do - returns( - OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::InputMessage::Content::Type::OrSymbol - ) - end - attr_accessor :type + class OutputText < OpenAI::Internal::Type::BaseModel + # The text output from the model. + sig { returns(String) } + attr_accessor :text - sig do - params( - text: String, - type: OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::InputMessage::Content::Type::OrSymbol - ) - .returns(T.attached_class) + # The type of the output text. Always `output_text`. + sig { returns(Symbol) } + attr_accessor :type + + # A text output from the model. + sig { params(text: String, type: Symbol).returns(T.attached_class) } + def self.new(text:, type: :output_text); end + + sig { override.returns({text: String, type: Symbol}) } + def to_hash; end end - def self.new(text:, type:); end sig do override .returns( - { - text: String, - type: OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::InputMessage::Content::Type::OrSymbol - } + [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::Content::OutputText] ) end - def to_hash; end - - # The type of content, which is always `input_text`. - module Type - extend OpenAI::Internal::Type::Enum - - TaggedSymbol = - T.type_alias do - T.all(Symbol, OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::InputMessage::Content::Type) - end - OrSymbol = T.type_alias { T.any(Symbol, String) } - - INPUT_TEXT = - T.let( - :input_text, - OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::InputMessage::Content::Type::TaggedSymbol - ) - - sig do - override - .returns( - T::Array[ - OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::InputMessage::Content::Type::TaggedSymbol - ] - ) - end - def self.values; end - end + def self.variants; end end - # The role of the message. One of `user`, `system`, or `developer`. + # The role of the message input. One of `user`, `assistant`, `system`, or + # `developer`. module Role extend OpenAI::Internal::Type::Enum TaggedSymbol = - T.type_alias { T.all(Symbol, OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::InputMessage::Role) } + T.type_alias { T.all(Symbol, OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::Role) } OrSymbol = T.type_alias { T.any(Symbol, String) } USER = T.let( :user, - OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::InputMessage::Role::TaggedSymbol + OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::Role::TaggedSymbol + ) + ASSISTANT = + T.let( + :assistant, + OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::Role::TaggedSymbol ) SYSTEM = T.let( :system, - OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::InputMessage::Role::TaggedSymbol + OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::Role::TaggedSymbol ) DEVELOPER = T.let( :developer, - OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::InputMessage::Role::TaggedSymbol + OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::Role::TaggedSymbol ) sig do override .returns( - T::Array[OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::InputMessage::Role::TaggedSymbol] + T::Array[OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::Role::TaggedSymbol] ) end def self.values; end end - # The type of item, which is always `message`. + # The type of the message input. Always `message`. module Type extend OpenAI::Internal::Type::Enum TaggedSymbol = - T.type_alias { T.all(Symbol, OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::InputMessage::Type) } + T.type_alias { T.all(Symbol, OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::Type) } OrSymbol = T.type_alias { T.any(Symbol, String) } MESSAGE = T.let( :message, - OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::InputMessage::Type::TaggedSymbol + OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::Type::TaggedSymbol ) sig do override .returns( - T::Array[OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::InputMessage::Type::TaggedSymbol] + T::Array[OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::Type::TaggedSymbol] ) end def self.values; end end end - class OutputMessage < OpenAI::Internal::Type::BaseModel - sig { returns(OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::OutputMessage::Content) } - attr_reader :content - - sig do - params( - content: T.any( - OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::OutputMessage::Content, - OpenAI::Internal::AnyHash - ) + sig do + override + .returns( + [OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::SimpleInputMessage, OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem] ) - .void - end - attr_writer :content + end + def self.variants; end + end + end - # The role of the message. Must be `assistant` for output. - sig do - returns( - OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::OutputMessage::Role::OrSymbol - ) - end - attr_accessor :role + class Python < OpenAI::Internal::Type::BaseModel + # The name of the grader. + sig { returns(String) } + attr_accessor :name - # The type of item, which is always `message`. - sig do - returns( - OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::OutputMessage::Type::OrSymbol - ) - end - attr_accessor :type + # The source code of the python script. + sig { returns(String) } + attr_accessor :source - sig do - params( - content: T.any( - OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::OutputMessage::Content, - OpenAI::Internal::AnyHash - ), - role: OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::OutputMessage::Role::OrSymbol, - type: OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::OutputMessage::Type::OrSymbol - ) - .returns(T.attached_class) - end - def self.new(content:, role:, type:); end + # The object type, which is always `python`. + sig { returns(Symbol) } + attr_accessor :type - sig do - override - .returns( - { - content: OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::OutputMessage::Content, - role: OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::OutputMessage::Role::OrSymbol, - type: OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::OutputMessage::Type::OrSymbol - } - ) - end - def to_hash; end + # The image tag to use for the python script. + sig { returns(T.nilable(String)) } + attr_reader :image_tag - class Content < OpenAI::Internal::Type::BaseModel - # The text content. - sig { returns(String) } - attr_accessor :text + sig { params(image_tag: String).void } + attr_writer :image_tag - # The type of content, which is always `output_text`. - sig do - returns( - OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::OutputMessage::Content::Type::OrSymbol - ) - end - attr_accessor :type + # The threshold for the score. + sig { returns(T.nilable(Float)) } + attr_reader :pass_threshold - sig do - params( - text: String, - type: OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::OutputMessage::Content::Type::OrSymbol - ) - .returns(T.attached_class) - end - def self.new(text:, type:); end + sig { params(pass_threshold: Float).void } + attr_writer :pass_threshold - sig do - override - .returns( - { - text: String, - type: OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::OutputMessage::Content::Type::OrSymbol - } - ) - end - def to_hash; end + # A PythonGrader object that runs a python script on the input. + sig do + params(name: String, source: String, image_tag: String, pass_threshold: Float, type: Symbol) + .returns(T.attached_class) + end + def self.new(name:, source:, image_tag: nil, pass_threshold: nil, type: :python); end - # The type of content, which is always `output_text`. - module Type - extend OpenAI::Internal::Type::Enum + sig do + override.returns( + { + name: String, + source: String, + type: Symbol, + image_tag: String, + pass_threshold: Float + } + ) + end + def to_hash; end + end - TaggedSymbol = - T.type_alias do - T.all(Symbol, OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::OutputMessage::Content::Type) - end - OrSymbol = T.type_alias { T.any(Symbol, String) } + class ScoreModel < OpenAI::Internal::Type::BaseModel + # The input text. This may include template strings. + sig { returns(T::Array[OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input]) } + attr_accessor :input - OUTPUT_TEXT = - T.let( - :output_text, - OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::OutputMessage::Content::Type::TaggedSymbol - ) + # The model to use for the evaluation. + sig { returns(String) } + attr_accessor :model - sig do - override - .returns( - T::Array[ - OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::OutputMessage::Content::Type::TaggedSymbol - ] - ) - end - def self.values; end - end - end + # The name of the grader. + sig { returns(String) } + attr_accessor :name - # The role of the message. Must be `assistant` for output. - module Role - extend OpenAI::Internal::Type::Enum + # The object type, which is always `score_model`. + sig { returns(Symbol) } + attr_accessor :type - TaggedSymbol = - T.type_alias { T.all(Symbol, OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::OutputMessage::Role) } - OrSymbol = T.type_alias { T.any(Symbol, String) } + # The threshold for the score. + sig { returns(T.nilable(Float)) } + attr_reader :pass_threshold - ASSISTANT = - T.let( - :assistant, - OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::OutputMessage::Role::TaggedSymbol - ) + sig { params(pass_threshold: Float).void } + attr_writer :pass_threshold - sig do - override - .returns( - T::Array[OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::OutputMessage::Role::TaggedSymbol] - ) - end - def self.values; end - end + # The range of the score. Defaults to `[0, 1]`. + sig { returns(T.nilable(T::Array[Float])) } + attr_reader :range - # The type of item, which is always `message`. - module Type - extend OpenAI::Internal::Type::Enum + sig { params(range: T::Array[Float]).void } + attr_writer :range - TaggedSymbol = - T.type_alias { T.all(Symbol, OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::OutputMessage::Type) } - OrSymbol = T.type_alias { T.any(Symbol, String) } + # The sampling parameters for the model. + sig { returns(T.nilable(T.anything)) } + attr_reader :sampling_params - MESSAGE = - T.let( - :message, - OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::OutputMessage::Type::TaggedSymbol - ) + sig { params(sampling_params: T.anything).void } + attr_writer :sampling_params - sig do - override - .returns( - T::Array[OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::OutputMessage::Type::TaggedSymbol] - ) - end - def self.values; end - end + # A ScoreModelGrader object that uses a model to assign a score to the input. + sig do + params( + input: T::Array[T.any(OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input, OpenAI::Internal::AnyHash)], + model: String, + name: String, + pass_threshold: Float, + range: T::Array[Float], + sampling_params: T.anything, + type: Symbol + ) + .returns(T.attached_class) + end + def self.new( + input:, + model:, + name:, + pass_threshold: nil, + range: nil, + sampling_params: nil, + type: :score_model + ) + end + + sig do + override + .returns( + { + input: T::Array[OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input], + model: String, + name: String, + type: Symbol, + pass_threshold: Float, + range: T::Array[Float], + sampling_params: T.anything + } + ) + end + def to_hash; end + + class Input < OpenAI::Internal::Type::BaseModel + # Text inputs to the model - can contain template strings. + sig do + returns( + T.any( + String, + OpenAI::Models::Responses::ResponseInputText, + OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input::Content::OutputText + ) + ) end + attr_accessor :content + + # The role of the message input. One of `user`, `assistant`, `system`, or + # `developer`. + sig { returns(OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input::Role::OrSymbol) } + attr_accessor :role + + # The type of the message input. Always `message`. + sig { returns(T.nilable(OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input::Type::OrSymbol)) } + attr_reader :type + + sig { params(type: OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input::Type::OrSymbol).void } + attr_writer :type + + # A message input to the model with a role indicating instruction following + # hierarchy. Instructions given with the `developer` or `system` role take + # precedence over instructions given with the `user` role. Messages with the + # `assistant` role are presumed to have been generated by the model in previous + # interactions. + sig do + params( + content: T.any( + String, + OpenAI::Models::Responses::ResponseInputText, + OpenAI::Internal::AnyHash, + OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input::Content::OutputText + ), + role: OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input::Role::OrSymbol, + type: OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input::Type::OrSymbol + ) + .returns(T.attached_class) + end + def self.new(content:, role:, type: nil); end sig do override .returns( - [OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::SimpleInputMessage, OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::InputMessage, OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::OutputMessage] + { + content: T.any( + String, + OpenAI::Models::Responses::ResponseInputText, + OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input::Content::OutputText + ), + role: OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input::Role::OrSymbol, + type: OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input::Type::OrSymbol + } ) end - def self.variants; end + def to_hash; end + + # Text inputs to the model - can contain template strings. + module Content + extend OpenAI::Internal::Type::Union + + class OutputText < OpenAI::Internal::Type::BaseModel + # The text output from the model. + sig { returns(String) } + attr_accessor :text + + # The type of the output text. Always `output_text`. + sig { returns(Symbol) } + attr_accessor :type + + # A text output from the model. + sig { params(text: String, type: Symbol).returns(T.attached_class) } + def self.new(text:, type: :output_text); end + + sig { override.returns({text: String, type: Symbol}) } + def to_hash; end + end + + sig do + override + .returns( + [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input::Content::OutputText] + ) + end + def self.variants; end + end + + # The role of the message input. One of `user`, `assistant`, `system`, or + # `developer`. + module Role + extend OpenAI::Internal::Type::Enum + + TaggedSymbol = + T.type_alias { T.all(Symbol, OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input::Role) } + OrSymbol = T.type_alias { T.any(Symbol, String) } + + USER = + T.let(:user, OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input::Role::TaggedSymbol) + ASSISTANT = + T.let( + :assistant, + OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input::Role::TaggedSymbol + ) + SYSTEM = + T.let(:system, OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input::Role::TaggedSymbol) + DEVELOPER = + T.let( + :developer, + OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input::Role::TaggedSymbol + ) + + sig do + override + .returns( + T::Array[OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input::Role::TaggedSymbol] + ) + end + def self.values; end + end + + # The type of the message input. Always `message`. + module Type + extend OpenAI::Internal::Type::Enum + + TaggedSymbol = + T.type_alias { T.all(Symbol, OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input::Type) } + OrSymbol = T.type_alias { T.any(Symbol, String) } + + MESSAGE = + T.let(:message, OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input::Type::TaggedSymbol) + + sig do + override + .returns( + T::Array[OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input::Type::TaggedSymbol] + ) + end + def self.values; end + end end end sig do override .returns( - [OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel, OpenAI::Models::EvalStringCheckGrader, OpenAI::Models::EvalTextSimilarityGrader] + [OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel, OpenAI::Models::EvalStringCheckGrader, OpenAI::Models::EvalTextSimilarityGrader, OpenAI::Models::EvalCreateParams::TestingCriterion::Python, OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel] ) end def self.variants; end diff --git a/rbi/lib/openai/models/eval_create_response.rbi b/rbi/lib/openai/models/eval_create_response.rbi index c35f9e03..c812a4d5 100644 --- a/rbi/lib/openai/models/eval_create_response.rbi +++ b/rbi/lib/openai/models/eval_create_response.rbi @@ -36,10 +36,6 @@ module OpenAI sig { returns(Symbol) } attr_accessor :object - # Indicates whether the evaluation is shared with OpenAI. - sig { returns(T::Boolean) } - attr_accessor :share_with_openai - # A list of testing criteria. sig do returns( @@ -47,7 +43,9 @@ module OpenAI T.any( OpenAI::Models::EvalLabelModelGrader, OpenAI::Models::EvalStringCheckGrader, - OpenAI::Models::EvalTextSimilarityGrader + OpenAI::Models::EvalTextSimilarityGrader, + OpenAI::Models::EvalCreateResponse::TestingCriterion::Python, + OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel ) ] ) @@ -71,29 +69,23 @@ module OpenAI ), metadata: T.nilable(T::Hash[Symbol, String]), name: String, - share_with_openai: T::Boolean, testing_criteria: T::Array[ T.any( OpenAI::Models::EvalLabelModelGrader, OpenAI::Internal::AnyHash, OpenAI::Models::EvalStringCheckGrader, - OpenAI::Models::EvalTextSimilarityGrader + OpenAI::Models::EvalTextSimilarityGrader, + OpenAI::Models::EvalCreateResponse::TestingCriterion::Python, + OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel ) ], object: Symbol ) .returns(T.attached_class) end - def self.new( - id:, - created_at:, - data_source_config:, - metadata:, - name:, - share_with_openai:, - testing_criteria:, - object: :eval - ); end + def self.new(id:, created_at:, data_source_config:, metadata:, name:, testing_criteria:, object: :eval) + end + sig do override .returns( @@ -104,12 +96,13 @@ module OpenAI metadata: T.nilable(T::Hash[Symbol, String]), name: String, object: Symbol, - share_with_openai: T::Boolean, testing_criteria: T::Array[ T.any( OpenAI::Models::EvalLabelModelGrader, OpenAI::Models::EvalStringCheckGrader, - OpenAI::Models::EvalTextSimilarityGrader + OpenAI::Models::EvalTextSimilarityGrader, + OpenAI::Models::EvalCreateResponse::TestingCriterion::Python, + OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel ) ] } @@ -135,10 +128,292 @@ module OpenAI module TestingCriterion extend OpenAI::Internal::Type::Union + class Python < OpenAI::Internal::Type::BaseModel + # The name of the grader. + sig { returns(String) } + attr_accessor :name + + # The source code of the python script. + sig { returns(String) } + attr_accessor :source + + # The object type, which is always `python`. + sig { returns(Symbol) } + attr_accessor :type + + # The image tag to use for the python script. + sig { returns(T.nilable(String)) } + attr_reader :image_tag + + sig { params(image_tag: String).void } + attr_writer :image_tag + + # The threshold for the score. + sig { returns(T.nilable(Float)) } + attr_reader :pass_threshold + + sig { params(pass_threshold: Float).void } + attr_writer :pass_threshold + + # A PythonGrader object that runs a python script on the input. + sig do + params(name: String, source: String, image_tag: String, pass_threshold: Float, type: Symbol) + .returns(T.attached_class) + end + def self.new(name:, source:, image_tag: nil, pass_threshold: nil, type: :python); end + + sig do + override.returns( + { + name: String, + source: String, + type: Symbol, + image_tag: String, + pass_threshold: Float + } + ) + end + def to_hash; end + end + + class ScoreModel < OpenAI::Internal::Type::BaseModel + # The input text. This may include template strings. + sig { returns(T::Array[OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input]) } + attr_accessor :input + + # The model to use for the evaluation. + sig { returns(String) } + attr_accessor :model + + # The name of the grader. + sig { returns(String) } + attr_accessor :name + + # The object type, which is always `score_model`. + sig { returns(Symbol) } + attr_accessor :type + + # The threshold for the score. + sig { returns(T.nilable(Float)) } + attr_reader :pass_threshold + + sig { params(pass_threshold: Float).void } + attr_writer :pass_threshold + + # The range of the score. Defaults to `[0, 1]`. + sig { returns(T.nilable(T::Array[Float])) } + attr_reader :range + + sig { params(range: T::Array[Float]).void } + attr_writer :range + + # The sampling parameters for the model. + sig { returns(T.nilable(T.anything)) } + attr_reader :sampling_params + + sig { params(sampling_params: T.anything).void } + attr_writer :sampling_params + + # A ScoreModelGrader object that uses a model to assign a score to the input. + sig do + params( + input: T::Array[T.any(OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input, OpenAI::Internal::AnyHash)], + model: String, + name: String, + pass_threshold: Float, + range: T::Array[Float], + sampling_params: T.anything, + type: Symbol + ) + .returns(T.attached_class) + end + def self.new( + input:, + model:, + name:, + pass_threshold: nil, + range: nil, + sampling_params: nil, + type: :score_model + ) + end + + sig do + override + .returns( + { + input: T::Array[OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input], + model: String, + name: String, + type: Symbol, + pass_threshold: Float, + range: T::Array[Float], + sampling_params: T.anything + } + ) + end + def to_hash; end + + class Input < OpenAI::Internal::Type::BaseModel + # Text inputs to the model - can contain template strings. + sig do + returns( + T.any( + String, + OpenAI::Models::Responses::ResponseInputText, + OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Content::OutputText + ) + ) + end + attr_accessor :content + + # The role of the message input. One of `user`, `assistant`, `system`, or + # `developer`. + sig { returns(OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Role::TaggedSymbol) } + attr_accessor :role + + # The type of the message input. Always `message`. + sig do + returns( + T.nilable(OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Type::TaggedSymbol) + ) + end + attr_reader :type + + sig { params(type: OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Type::OrSymbol).void } + attr_writer :type + + # A message input to the model with a role indicating instruction following + # hierarchy. Instructions given with the `developer` or `system` role take + # precedence over instructions given with the `user` role. Messages with the + # `assistant` role are presumed to have been generated by the model in previous + # interactions. + sig do + params( + content: T.any( + String, + OpenAI::Models::Responses::ResponseInputText, + OpenAI::Internal::AnyHash, + OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Content::OutputText + ), + role: OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Role::OrSymbol, + type: OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Type::OrSymbol + ) + .returns(T.attached_class) + end + def self.new(content:, role:, type: nil); end + + sig do + override + .returns( + { + content: T.any( + String, + OpenAI::Models::Responses::ResponseInputText, + OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Content::OutputText + ), + role: OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Role::TaggedSymbol, + type: OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Type::TaggedSymbol + } + ) + end + def to_hash; end + + # Text inputs to the model - can contain template strings. + module Content + extend OpenAI::Internal::Type::Union + + class OutputText < OpenAI::Internal::Type::BaseModel + # The text output from the model. + sig { returns(String) } + attr_accessor :text + + # The type of the output text. Always `output_text`. + sig { returns(Symbol) } + attr_accessor :type + + # A text output from the model. + sig { params(text: String, type: Symbol).returns(T.attached_class) } + def self.new(text:, type: :output_text); end + + sig { override.returns({text: String, type: Symbol}) } + def to_hash; end + end + + sig do + override + .returns( + [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Content::OutputText] + ) + end + def self.variants; end + end + + # The role of the message input. One of `user`, `assistant`, `system`, or + # `developer`. + module Role + extend OpenAI::Internal::Type::Enum + + TaggedSymbol = + T.type_alias { T.all(Symbol, OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Role) } + OrSymbol = T.type_alias { T.any(Symbol, String) } + + USER = + T.let(:user, OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Role::TaggedSymbol) + ASSISTANT = + T.let( + :assistant, + OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Role::TaggedSymbol + ) + SYSTEM = + T.let( + :system, + OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Role::TaggedSymbol + ) + DEVELOPER = + T.let( + :developer, + OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Role::TaggedSymbol + ) + + sig do + override + .returns( + T::Array[OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Role::TaggedSymbol] + ) + end + def self.values; end + end + + # The type of the message input. Always `message`. + module Type + extend OpenAI::Internal::Type::Enum + + TaggedSymbol = + T.type_alias { T.all(Symbol, OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Type) } + OrSymbol = T.type_alias { T.any(Symbol, String) } + + MESSAGE = + T.let( + :message, + OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Type::TaggedSymbol + ) + + sig do + override + .returns( + T::Array[OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Type::TaggedSymbol] + ) + end + def self.values; end + end + end + end + sig do override .returns( - [OpenAI::Models::EvalLabelModelGrader, OpenAI::Models::EvalStringCheckGrader, OpenAI::Models::EvalTextSimilarityGrader] + [OpenAI::Models::EvalLabelModelGrader, OpenAI::Models::EvalStringCheckGrader, OpenAI::Models::EvalTextSimilarityGrader, OpenAI::Models::EvalCreateResponse::TestingCriterion::Python, OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel] ) end def self.variants; end diff --git a/rbi/lib/openai/models/eval_label_model_grader.rbi b/rbi/lib/openai/models/eval_label_model_grader.rbi index 40ab0320..8e02688e 100644 --- a/rbi/lib/openai/models/eval_label_model_grader.rbi +++ b/rbi/lib/openai/models/eval_label_model_grader.rbi @@ -3,16 +3,7 @@ module OpenAI module Models class EvalLabelModelGrader < OpenAI::Internal::Type::BaseModel - sig do - returns( - T::Array[ - T.any( - OpenAI::Models::EvalLabelModelGrader::Input::Assistant, - OpenAI::Models::EvalLabelModelGrader::Input::InputMessage - ) - ] - ) - end + sig { returns(T::Array[OpenAI::Models::EvalLabelModelGrader::Input]) } attr_accessor :input # The labels to assign to each item in the evaluation. @@ -39,13 +30,7 @@ module OpenAI # the evaluation. sig do params( - input: T::Array[ - T.any( - OpenAI::Models::EvalLabelModelGrader::Input::Assistant, - OpenAI::Internal::AnyHash, - OpenAI::Models::EvalLabelModelGrader::Input::InputMessage - ) - ], + input: T::Array[T.any(OpenAI::Models::EvalLabelModelGrader::Input, OpenAI::Internal::AnyHash)], labels: T::Array[String], model: String, name: String, @@ -60,12 +45,7 @@ module OpenAI override .returns( { - input: T::Array[ - T.any( - OpenAI::Models::EvalLabelModelGrader::Input::Assistant, - OpenAI::Models::EvalLabelModelGrader::Input::InputMessage - ) - ], + input: T::Array[OpenAI::Models::EvalLabelModelGrader::Input], labels: T::Array[String], model: String, name: String, @@ -76,238 +56,126 @@ module OpenAI end def to_hash; end - # An item can either be an input message or an output message. - module Input - extend OpenAI::Internal::Type::Union + class Input < OpenAI::Internal::Type::BaseModel + # Text inputs to the model - can contain template strings. + sig do + returns( + T.any( + String, + OpenAI::Models::Responses::ResponseInputText, + OpenAI::Models::EvalLabelModelGrader::Input::Content::OutputText + ) + ) + end + attr_accessor :content - class InputMessage < OpenAI::Internal::Type::BaseModel - sig { returns(OpenAI::Models::EvalLabelModelGrader::Input::InputMessage::Content) } - attr_reader :content + # The role of the message input. One of `user`, `assistant`, `system`, or + # `developer`. + sig { returns(OpenAI::Models::EvalLabelModelGrader::Input::Role::TaggedSymbol) } + attr_accessor :role - sig do - params( - content: T.any(OpenAI::Models::EvalLabelModelGrader::Input::InputMessage::Content, OpenAI::Internal::AnyHash) - ) - .void - end - attr_writer :content + # The type of the message input. Always `message`. + sig { returns(T.nilable(OpenAI::Models::EvalLabelModelGrader::Input::Type::TaggedSymbol)) } + attr_reader :type - # The role of the message. One of `user`, `system`, or `developer`. - sig { returns(OpenAI::Models::EvalLabelModelGrader::Input::InputMessage::Role::TaggedSymbol) } - attr_accessor :role + sig { params(type: OpenAI::Models::EvalLabelModelGrader::Input::Type::OrSymbol).void } + attr_writer :type - # The type of item, which is always `message`. - sig { returns(OpenAI::Models::EvalLabelModelGrader::Input::InputMessage::Type::TaggedSymbol) } - attr_accessor :type + # A message input to the model with a role indicating instruction following + # hierarchy. Instructions given with the `developer` or `system` role take + # precedence over instructions given with the `user` role. Messages with the + # `assistant` role are presumed to have been generated by the model in previous + # interactions. + sig do + params( + content: T.any( + String, + OpenAI::Models::Responses::ResponseInputText, + OpenAI::Internal::AnyHash, + OpenAI::Models::EvalLabelModelGrader::Input::Content::OutputText + ), + role: OpenAI::Models::EvalLabelModelGrader::Input::Role::OrSymbol, + type: OpenAI::Models::EvalLabelModelGrader::Input::Type::OrSymbol + ) + .returns(T.attached_class) + end + def self.new(content:, role:, type: nil); end - sig do - params( - content: T.any(OpenAI::Models::EvalLabelModelGrader::Input::InputMessage::Content, OpenAI::Internal::AnyHash), - role: OpenAI::Models::EvalLabelModelGrader::Input::InputMessage::Role::OrSymbol, - type: OpenAI::Models::EvalLabelModelGrader::Input::InputMessage::Type::OrSymbol + sig do + override + .returns( + { + content: T.any( + String, + OpenAI::Models::Responses::ResponseInputText, + OpenAI::Models::EvalLabelModelGrader::Input::Content::OutputText + ), + role: OpenAI::Models::EvalLabelModelGrader::Input::Role::TaggedSymbol, + type: OpenAI::Models::EvalLabelModelGrader::Input::Type::TaggedSymbol + } ) - .returns(T.attached_class) - end - def self.new(content:, role:, type:); end + end + def to_hash; end - sig do - override - .returns( - { - content: OpenAI::Models::EvalLabelModelGrader::Input::InputMessage::Content, - role: OpenAI::Models::EvalLabelModelGrader::Input::InputMessage::Role::TaggedSymbol, - type: OpenAI::Models::EvalLabelModelGrader::Input::InputMessage::Type::TaggedSymbol - } - ) - end - def to_hash; end + # Text inputs to the model - can contain template strings. + module Content + extend OpenAI::Internal::Type::Union - class Content < OpenAI::Internal::Type::BaseModel - # The text content. + class OutputText < OpenAI::Internal::Type::BaseModel + # The text output from the model. sig { returns(String) } attr_accessor :text - # The type of content, which is always `input_text`. - sig { returns(OpenAI::Models::EvalLabelModelGrader::Input::InputMessage::Content::Type::TaggedSymbol) } + # The type of the output text. Always `output_text`. + sig { returns(Symbol) } attr_accessor :type - sig do - params( - text: String, - type: OpenAI::Models::EvalLabelModelGrader::Input::InputMessage::Content::Type::OrSymbol - ) - .returns(T.attached_class) - end - def self.new(text:, type:); end + # A text output from the model. + sig { params(text: String, type: Symbol).returns(T.attached_class) } + def self.new(text:, type: :output_text); end - sig do - override - .returns( - {text: String, type: OpenAI::Models::EvalLabelModelGrader::Input::InputMessage::Content::Type::TaggedSymbol} - ) - end + sig { override.returns({text: String, type: Symbol}) } def to_hash; end - - # The type of content, which is always `input_text`. - module Type - extend OpenAI::Internal::Type::Enum - - TaggedSymbol = - T.type_alias { T.all(Symbol, OpenAI::Models::EvalLabelModelGrader::Input::InputMessage::Content::Type) } - OrSymbol = T.type_alias { T.any(Symbol, String) } - - INPUT_TEXT = - T.let(:input_text, OpenAI::Models::EvalLabelModelGrader::Input::InputMessage::Content::Type::TaggedSymbol) - - sig do - override - .returns(T::Array[OpenAI::Models::EvalLabelModelGrader::Input::InputMessage::Content::Type::TaggedSymbol]) - end - def self.values; end - end end - # The role of the message. One of `user`, `system`, or `developer`. - module Role - extend OpenAI::Internal::Type::Enum - - TaggedSymbol = - T.type_alias { T.all(Symbol, OpenAI::Models::EvalLabelModelGrader::Input::InputMessage::Role) } - OrSymbol = T.type_alias { T.any(Symbol, String) } - - USER = T.let(:user, OpenAI::Models::EvalLabelModelGrader::Input::InputMessage::Role::TaggedSymbol) - SYSTEM = T.let(:system, OpenAI::Models::EvalLabelModelGrader::Input::InputMessage::Role::TaggedSymbol) - DEVELOPER = - T.let(:developer, OpenAI::Models::EvalLabelModelGrader::Input::InputMessage::Role::TaggedSymbol) - - sig { override.returns(T::Array[OpenAI::Models::EvalLabelModelGrader::Input::InputMessage::Role::TaggedSymbol]) } - def self.values; end - end - - # The type of item, which is always `message`. - module Type - extend OpenAI::Internal::Type::Enum - - TaggedSymbol = - T.type_alias { T.all(Symbol, OpenAI::Models::EvalLabelModelGrader::Input::InputMessage::Type) } - OrSymbol = T.type_alias { T.any(Symbol, String) } - - MESSAGE = T.let(:message, OpenAI::Models::EvalLabelModelGrader::Input::InputMessage::Type::TaggedSymbol) - - sig { override.returns(T::Array[OpenAI::Models::EvalLabelModelGrader::Input::InputMessage::Type::TaggedSymbol]) } - def self.values; end - end - end - - class Assistant < OpenAI::Internal::Type::BaseModel - sig { returns(OpenAI::Models::EvalLabelModelGrader::Input::Assistant::Content) } - attr_reader :content - - sig do - params( - content: T.any(OpenAI::Models::EvalLabelModelGrader::Input::Assistant::Content, OpenAI::Internal::AnyHash) - ) - .void - end - attr_writer :content - - # The role of the message. Must be `assistant` for output. - sig { returns(Symbol) } - attr_accessor :role - - # The type of item, which is always `message`. - sig { returns(OpenAI::Models::EvalLabelModelGrader::Input::Assistant::Type::TaggedSymbol) } - attr_accessor :type - - sig do - params( - content: T.any(OpenAI::Models::EvalLabelModelGrader::Input::Assistant::Content, OpenAI::Internal::AnyHash), - type: OpenAI::Models::EvalLabelModelGrader::Input::Assistant::Type::OrSymbol, - role: Symbol - ) - .returns(T.attached_class) - end - def self.new(content:, type:, role: :assistant); end - sig do override .returns( - { - content: OpenAI::Models::EvalLabelModelGrader::Input::Assistant::Content, - role: Symbol, - type: OpenAI::Models::EvalLabelModelGrader::Input::Assistant::Type::TaggedSymbol - } + [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::EvalLabelModelGrader::Input::Content::OutputText] ) end - def to_hash; end - - class Content < OpenAI::Internal::Type::BaseModel - # The text content. - sig { returns(String) } - attr_accessor :text - - # The type of content, which is always `output_text`. - sig { returns(OpenAI::Models::EvalLabelModelGrader::Input::Assistant::Content::Type::TaggedSymbol) } - attr_accessor :type - - sig do - params( - text: String, - type: OpenAI::Models::EvalLabelModelGrader::Input::Assistant::Content::Type::OrSymbol - ) - .returns(T.attached_class) - end - def self.new(text:, type:); end - - sig do - override - .returns( - {text: String, type: OpenAI::Models::EvalLabelModelGrader::Input::Assistant::Content::Type::TaggedSymbol} - ) - end - def to_hash; end - - # The type of content, which is always `output_text`. - module Type - extend OpenAI::Internal::Type::Enum + def self.variants; end + end - TaggedSymbol = - T.type_alias { T.all(Symbol, OpenAI::Models::EvalLabelModelGrader::Input::Assistant::Content::Type) } - OrSymbol = T.type_alias { T.any(Symbol, String) } + # The role of the message input. One of `user`, `assistant`, `system`, or + # `developer`. + module Role + extend OpenAI::Internal::Type::Enum - OUTPUT_TEXT = - T.let(:output_text, OpenAI::Models::EvalLabelModelGrader::Input::Assistant::Content::Type::TaggedSymbol) + TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::EvalLabelModelGrader::Input::Role) } + OrSymbol = T.type_alias { T.any(Symbol, String) } - sig do - override - .returns(T::Array[OpenAI::Models::EvalLabelModelGrader::Input::Assistant::Content::Type::TaggedSymbol]) - end - def self.values; end - end - end + USER = T.let(:user, OpenAI::Models::EvalLabelModelGrader::Input::Role::TaggedSymbol) + ASSISTANT = T.let(:assistant, OpenAI::Models::EvalLabelModelGrader::Input::Role::TaggedSymbol) + SYSTEM = T.let(:system, OpenAI::Models::EvalLabelModelGrader::Input::Role::TaggedSymbol) + DEVELOPER = T.let(:developer, OpenAI::Models::EvalLabelModelGrader::Input::Role::TaggedSymbol) - # The type of item, which is always `message`. - module Type - extend OpenAI::Internal::Type::Enum + sig { override.returns(T::Array[OpenAI::Models::EvalLabelModelGrader::Input::Role::TaggedSymbol]) } + def self.values; end + end - TaggedSymbol = - T.type_alias { T.all(Symbol, OpenAI::Models::EvalLabelModelGrader::Input::Assistant::Type) } - OrSymbol = T.type_alias { T.any(Symbol, String) } + # The type of the message input. Always `message`. + module Type + extend OpenAI::Internal::Type::Enum - MESSAGE = T.let(:message, OpenAI::Models::EvalLabelModelGrader::Input::Assistant::Type::TaggedSymbol) + TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::EvalLabelModelGrader::Input::Type) } + OrSymbol = T.type_alias { T.any(Symbol, String) } - sig { override.returns(T::Array[OpenAI::Models::EvalLabelModelGrader::Input::Assistant::Type::TaggedSymbol]) } - def self.values; end - end - end + MESSAGE = T.let(:message, OpenAI::Models::EvalLabelModelGrader::Input::Type::TaggedSymbol) - sig do - override - .returns( - [OpenAI::Models::EvalLabelModelGrader::Input::Assistant, OpenAI::Models::EvalLabelModelGrader::Input::InputMessage] - ) + sig { override.returns(T::Array[OpenAI::Models::EvalLabelModelGrader::Input::Type::TaggedSymbol]) } + def self.values; end end - def self.variants; end end end end diff --git a/rbi/lib/openai/models/eval_list_response.rbi b/rbi/lib/openai/models/eval_list_response.rbi index 7ea59a6c..08a0827f 100644 --- a/rbi/lib/openai/models/eval_list_response.rbi +++ b/rbi/lib/openai/models/eval_list_response.rbi @@ -36,10 +36,6 @@ module OpenAI sig { returns(Symbol) } attr_accessor :object - # Indicates whether the evaluation is shared with OpenAI. - sig { returns(T::Boolean) } - attr_accessor :share_with_openai - # A list of testing criteria. sig do returns( @@ -47,7 +43,9 @@ module OpenAI T.any( OpenAI::Models::EvalLabelModelGrader, OpenAI::Models::EvalStringCheckGrader, - OpenAI::Models::EvalTextSimilarityGrader + OpenAI::Models::EvalTextSimilarityGrader, + OpenAI::Models::EvalListResponse::TestingCriterion::Python, + OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel ) ] ) @@ -71,29 +69,23 @@ module OpenAI ), metadata: T.nilable(T::Hash[Symbol, String]), name: String, - share_with_openai: T::Boolean, testing_criteria: T::Array[ T.any( OpenAI::Models::EvalLabelModelGrader, OpenAI::Internal::AnyHash, OpenAI::Models::EvalStringCheckGrader, - OpenAI::Models::EvalTextSimilarityGrader + OpenAI::Models::EvalTextSimilarityGrader, + OpenAI::Models::EvalListResponse::TestingCriterion::Python, + OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel ) ], object: Symbol ) .returns(T.attached_class) end - def self.new( - id:, - created_at:, - data_source_config:, - metadata:, - name:, - share_with_openai:, - testing_criteria:, - object: :eval - ); end + def self.new(id:, created_at:, data_source_config:, metadata:, name:, testing_criteria:, object: :eval) + end + sig do override .returns( @@ -104,12 +96,13 @@ module OpenAI metadata: T.nilable(T::Hash[Symbol, String]), name: String, object: Symbol, - share_with_openai: T::Boolean, testing_criteria: T::Array[ T.any( OpenAI::Models::EvalLabelModelGrader, OpenAI::Models::EvalStringCheckGrader, - OpenAI::Models::EvalTextSimilarityGrader + OpenAI::Models::EvalTextSimilarityGrader, + OpenAI::Models::EvalListResponse::TestingCriterion::Python, + OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel ) ] } @@ -135,10 +128,286 @@ module OpenAI module TestingCriterion extend OpenAI::Internal::Type::Union + class Python < OpenAI::Internal::Type::BaseModel + # The name of the grader. + sig { returns(String) } + attr_accessor :name + + # The source code of the python script. + sig { returns(String) } + attr_accessor :source + + # The object type, which is always `python`. + sig { returns(Symbol) } + attr_accessor :type + + # The image tag to use for the python script. + sig { returns(T.nilable(String)) } + attr_reader :image_tag + + sig { params(image_tag: String).void } + attr_writer :image_tag + + # The threshold for the score. + sig { returns(T.nilable(Float)) } + attr_reader :pass_threshold + + sig { params(pass_threshold: Float).void } + attr_writer :pass_threshold + + # A PythonGrader object that runs a python script on the input. + sig do + params(name: String, source: String, image_tag: String, pass_threshold: Float, type: Symbol) + .returns(T.attached_class) + end + def self.new(name:, source:, image_tag: nil, pass_threshold: nil, type: :python); end + + sig do + override.returns( + { + name: String, + source: String, + type: Symbol, + image_tag: String, + pass_threshold: Float + } + ) + end + def to_hash; end + end + + class ScoreModel < OpenAI::Internal::Type::BaseModel + # The input text. This may include template strings. + sig { returns(T::Array[OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input]) } + attr_accessor :input + + # The model to use for the evaluation. + sig { returns(String) } + attr_accessor :model + + # The name of the grader. + sig { returns(String) } + attr_accessor :name + + # The object type, which is always `score_model`. + sig { returns(Symbol) } + attr_accessor :type + + # The threshold for the score. + sig { returns(T.nilable(Float)) } + attr_reader :pass_threshold + + sig { params(pass_threshold: Float).void } + attr_writer :pass_threshold + + # The range of the score. Defaults to `[0, 1]`. + sig { returns(T.nilable(T::Array[Float])) } + attr_reader :range + + sig { params(range: T::Array[Float]).void } + attr_writer :range + + # The sampling parameters for the model. + sig { returns(T.nilable(T.anything)) } + attr_reader :sampling_params + + sig { params(sampling_params: T.anything).void } + attr_writer :sampling_params + + # A ScoreModelGrader object that uses a model to assign a score to the input. + sig do + params( + input: T::Array[T.any(OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input, OpenAI::Internal::AnyHash)], + model: String, + name: String, + pass_threshold: Float, + range: T::Array[Float], + sampling_params: T.anything, + type: Symbol + ) + .returns(T.attached_class) + end + def self.new( + input:, + model:, + name:, + pass_threshold: nil, + range: nil, + sampling_params: nil, + type: :score_model + ) + end + + sig do + override + .returns( + { + input: T::Array[OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input], + model: String, + name: String, + type: Symbol, + pass_threshold: Float, + range: T::Array[Float], + sampling_params: T.anything + } + ) + end + def to_hash; end + + class Input < OpenAI::Internal::Type::BaseModel + # Text inputs to the model - can contain template strings. + sig do + returns( + T.any( + String, + OpenAI::Models::Responses::ResponseInputText, + OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Content::OutputText + ) + ) + end + attr_accessor :content + + # The role of the message input. One of `user`, `assistant`, `system`, or + # `developer`. + sig { returns(OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Role::TaggedSymbol) } + attr_accessor :role + + # The type of the message input. Always `message`. + sig do + returns( + T.nilable(OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Type::TaggedSymbol) + ) + end + attr_reader :type + + sig { params(type: OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Type::OrSymbol).void } + attr_writer :type + + # A message input to the model with a role indicating instruction following + # hierarchy. Instructions given with the `developer` or `system` role take + # precedence over instructions given with the `user` role. Messages with the + # `assistant` role are presumed to have been generated by the model in previous + # interactions. + sig do + params( + content: T.any( + String, + OpenAI::Models::Responses::ResponseInputText, + OpenAI::Internal::AnyHash, + OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Content::OutputText + ), + role: OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Role::OrSymbol, + type: OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Type::OrSymbol + ) + .returns(T.attached_class) + end + def self.new(content:, role:, type: nil); end + + sig do + override + .returns( + { + content: T.any( + String, + OpenAI::Models::Responses::ResponseInputText, + OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Content::OutputText + ), + role: OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Role::TaggedSymbol, + type: OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Type::TaggedSymbol + } + ) + end + def to_hash; end + + # Text inputs to the model - can contain template strings. + module Content + extend OpenAI::Internal::Type::Union + + class OutputText < OpenAI::Internal::Type::BaseModel + # The text output from the model. + sig { returns(String) } + attr_accessor :text + + # The type of the output text. Always `output_text`. + sig { returns(Symbol) } + attr_accessor :type + + # A text output from the model. + sig { params(text: String, type: Symbol).returns(T.attached_class) } + def self.new(text:, type: :output_text); end + + sig { override.returns({text: String, type: Symbol}) } + def to_hash; end + end + + sig do + override + .returns( + [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Content::OutputText] + ) + end + def self.variants; end + end + + # The role of the message input. One of `user`, `assistant`, `system`, or + # `developer`. + module Role + extend OpenAI::Internal::Type::Enum + + TaggedSymbol = + T.type_alias { T.all(Symbol, OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Role) } + OrSymbol = T.type_alias { T.any(Symbol, String) } + + USER = + T.let(:user, OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Role::TaggedSymbol) + ASSISTANT = + T.let( + :assistant, + OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Role::TaggedSymbol + ) + SYSTEM = + T.let(:system, OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Role::TaggedSymbol) + DEVELOPER = + T.let( + :developer, + OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Role::TaggedSymbol + ) + + sig do + override + .returns( + T::Array[OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Role::TaggedSymbol] + ) + end + def self.values; end + end + + # The type of the message input. Always `message`. + module Type + extend OpenAI::Internal::Type::Enum + + TaggedSymbol = + T.type_alias { T.all(Symbol, OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Type) } + OrSymbol = T.type_alias { T.any(Symbol, String) } + + MESSAGE = + T.let(:message, OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Type::TaggedSymbol) + + sig do + override + .returns( + T::Array[OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Type::TaggedSymbol] + ) + end + def self.values; end + end + end + end + sig do override .returns( - [OpenAI::Models::EvalLabelModelGrader, OpenAI::Models::EvalStringCheckGrader, OpenAI::Models::EvalTextSimilarityGrader] + [OpenAI::Models::EvalLabelModelGrader, OpenAI::Models::EvalStringCheckGrader, OpenAI::Models::EvalTextSimilarityGrader, OpenAI::Models::EvalListResponse::TestingCriterion::Python, OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel] ) end def self.variants; end diff --git a/rbi/lib/openai/models/eval_retrieve_response.rbi b/rbi/lib/openai/models/eval_retrieve_response.rbi index 721a617e..a84f25d8 100644 --- a/rbi/lib/openai/models/eval_retrieve_response.rbi +++ b/rbi/lib/openai/models/eval_retrieve_response.rbi @@ -36,10 +36,6 @@ module OpenAI sig { returns(Symbol) } attr_accessor :object - # Indicates whether the evaluation is shared with OpenAI. - sig { returns(T::Boolean) } - attr_accessor :share_with_openai - # A list of testing criteria. sig do returns( @@ -47,7 +43,9 @@ module OpenAI T.any( OpenAI::Models::EvalLabelModelGrader, OpenAI::Models::EvalStringCheckGrader, - OpenAI::Models::EvalTextSimilarityGrader + OpenAI::Models::EvalTextSimilarityGrader, + OpenAI::Models::EvalRetrieveResponse::TestingCriterion::Python, + OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel ) ] ) @@ -71,29 +69,23 @@ module OpenAI ), metadata: T.nilable(T::Hash[Symbol, String]), name: String, - share_with_openai: T::Boolean, testing_criteria: T::Array[ T.any( OpenAI::Models::EvalLabelModelGrader, OpenAI::Internal::AnyHash, OpenAI::Models::EvalStringCheckGrader, - OpenAI::Models::EvalTextSimilarityGrader + OpenAI::Models::EvalTextSimilarityGrader, + OpenAI::Models::EvalRetrieveResponse::TestingCriterion::Python, + OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel ) ], object: Symbol ) .returns(T.attached_class) end - def self.new( - id:, - created_at:, - data_source_config:, - metadata:, - name:, - share_with_openai:, - testing_criteria:, - object: :eval - ); end + def self.new(id:, created_at:, data_source_config:, metadata:, name:, testing_criteria:, object: :eval) + end + sig do override .returns( @@ -104,12 +96,13 @@ module OpenAI metadata: T.nilable(T::Hash[Symbol, String]), name: String, object: Symbol, - share_with_openai: T::Boolean, testing_criteria: T::Array[ T.any( OpenAI::Models::EvalLabelModelGrader, OpenAI::Models::EvalStringCheckGrader, - OpenAI::Models::EvalTextSimilarityGrader + OpenAI::Models::EvalTextSimilarityGrader, + OpenAI::Models::EvalRetrieveResponse::TestingCriterion::Python, + OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel ) ] } @@ -135,10 +128,303 @@ module OpenAI module TestingCriterion extend OpenAI::Internal::Type::Union + class Python < OpenAI::Internal::Type::BaseModel + # The name of the grader. + sig { returns(String) } + attr_accessor :name + + # The source code of the python script. + sig { returns(String) } + attr_accessor :source + + # The object type, which is always `python`. + sig { returns(Symbol) } + attr_accessor :type + + # The image tag to use for the python script. + sig { returns(T.nilable(String)) } + attr_reader :image_tag + + sig { params(image_tag: String).void } + attr_writer :image_tag + + # The threshold for the score. + sig { returns(T.nilable(Float)) } + attr_reader :pass_threshold + + sig { params(pass_threshold: Float).void } + attr_writer :pass_threshold + + # A PythonGrader object that runs a python script on the input. + sig do + params(name: String, source: String, image_tag: String, pass_threshold: Float, type: Symbol) + .returns(T.attached_class) + end + def self.new(name:, source:, image_tag: nil, pass_threshold: nil, type: :python); end + + sig do + override.returns( + { + name: String, + source: String, + type: Symbol, + image_tag: String, + pass_threshold: Float + } + ) + end + def to_hash; end + end + + class ScoreModel < OpenAI::Internal::Type::BaseModel + # The input text. This may include template strings. + sig { returns(T::Array[OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input]) } + attr_accessor :input + + # The model to use for the evaluation. + sig { returns(String) } + attr_accessor :model + + # The name of the grader. + sig { returns(String) } + attr_accessor :name + + # The object type, which is always `score_model`. + sig { returns(Symbol) } + attr_accessor :type + + # The threshold for the score. + sig { returns(T.nilable(Float)) } + attr_reader :pass_threshold + + sig { params(pass_threshold: Float).void } + attr_writer :pass_threshold + + # The range of the score. Defaults to `[0, 1]`. + sig { returns(T.nilable(T::Array[Float])) } + attr_reader :range + + sig { params(range: T::Array[Float]).void } + attr_writer :range + + # The sampling parameters for the model. + sig { returns(T.nilable(T.anything)) } + attr_reader :sampling_params + + sig { params(sampling_params: T.anything).void } + attr_writer :sampling_params + + # A ScoreModelGrader object that uses a model to assign a score to the input. + sig do + params( + input: T::Array[ + T.any( + OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input, + OpenAI::Internal::AnyHash + ) + ], + model: String, + name: String, + pass_threshold: Float, + range: T::Array[Float], + sampling_params: T.anything, + type: Symbol + ) + .returns(T.attached_class) + end + def self.new( + input:, + model:, + name:, + pass_threshold: nil, + range: nil, + sampling_params: nil, + type: :score_model + ) + end + + sig do + override + .returns( + { + input: T::Array[OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input], + model: String, + name: String, + type: Symbol, + pass_threshold: Float, + range: T::Array[Float], + sampling_params: T.anything + } + ) + end + def to_hash; end + + class Input < OpenAI::Internal::Type::BaseModel + # Text inputs to the model - can contain template strings. + sig do + returns( + T.any( + String, + OpenAI::Models::Responses::ResponseInputText, + OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Content::OutputText + ) + ) + end + attr_accessor :content + + # The role of the message input. One of `user`, `assistant`, `system`, or + # `developer`. + sig { returns(OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Role::TaggedSymbol) } + attr_accessor :role + + # The type of the message input. Always `message`. + sig do + returns( + T.nilable(OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Type::TaggedSymbol) + ) + end + attr_reader :type + + sig do + params(type: OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Type::OrSymbol) + .void + end + attr_writer :type + + # A message input to the model with a role indicating instruction following + # hierarchy. Instructions given with the `developer` or `system` role take + # precedence over instructions given with the `user` role. Messages with the + # `assistant` role are presumed to have been generated by the model in previous + # interactions. + sig do + params( + content: T.any( + String, + OpenAI::Models::Responses::ResponseInputText, + OpenAI::Internal::AnyHash, + OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Content::OutputText + ), + role: OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Role::OrSymbol, + type: OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Type::OrSymbol + ) + .returns(T.attached_class) + end + def self.new(content:, role:, type: nil); end + + sig do + override + .returns( + { + content: T.any( + String, + OpenAI::Models::Responses::ResponseInputText, + OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Content::OutputText + ), + role: OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Role::TaggedSymbol, + type: OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Type::TaggedSymbol + } + ) + end + def to_hash; end + + # Text inputs to the model - can contain template strings. + module Content + extend OpenAI::Internal::Type::Union + + class OutputText < OpenAI::Internal::Type::BaseModel + # The text output from the model. + sig { returns(String) } + attr_accessor :text + + # The type of the output text. Always `output_text`. + sig { returns(Symbol) } + attr_accessor :type + + # A text output from the model. + sig { params(text: String, type: Symbol).returns(T.attached_class) } + def self.new(text:, type: :output_text); end + + sig { override.returns({text: String, type: Symbol}) } + def to_hash; end + end + + sig do + override + .returns( + [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Content::OutputText] + ) + end + def self.variants; end + end + + # The role of the message input. One of `user`, `assistant`, `system`, or + # `developer`. + module Role + extend OpenAI::Internal::Type::Enum + + TaggedSymbol = + T.type_alias { T.all(Symbol, OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Role) } + OrSymbol = T.type_alias { T.any(Symbol, String) } + + USER = + T.let( + :user, + OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Role::TaggedSymbol + ) + ASSISTANT = + T.let( + :assistant, + OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Role::TaggedSymbol + ) + SYSTEM = + T.let( + :system, + OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Role::TaggedSymbol + ) + DEVELOPER = + T.let( + :developer, + OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Role::TaggedSymbol + ) + + sig do + override + .returns( + T::Array[OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Role::TaggedSymbol] + ) + end + def self.values; end + end + + # The type of the message input. Always `message`. + module Type + extend OpenAI::Internal::Type::Enum + + TaggedSymbol = + T.type_alias { T.all(Symbol, OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Type) } + OrSymbol = T.type_alias { T.any(Symbol, String) } + + MESSAGE = + T.let( + :message, + OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Type::TaggedSymbol + ) + + sig do + override + .returns( + T::Array[OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Type::TaggedSymbol] + ) + end + def self.values; end + end + end + end + sig do override .returns( - [OpenAI::Models::EvalLabelModelGrader, OpenAI::Models::EvalStringCheckGrader, OpenAI::Models::EvalTextSimilarityGrader] + [OpenAI::Models::EvalLabelModelGrader, OpenAI::Models::EvalStringCheckGrader, OpenAI::Models::EvalTextSimilarityGrader, OpenAI::Models::EvalRetrieveResponse::TestingCriterion::Python, OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel] ) end def self.variants; end diff --git a/rbi/lib/openai/models/eval_text_similarity_grader.rbi b/rbi/lib/openai/models/eval_text_similarity_grader.rbi index 460cab97..f3675e7a 100644 --- a/rbi/lib/openai/models/eval_text_similarity_grader.rbi +++ b/rbi/lib/openai/models/eval_text_similarity_grader.rbi @@ -3,8 +3,8 @@ module OpenAI module Models class EvalTextSimilarityGrader < OpenAI::Internal::Type::BaseModel - # The evaluation metric to use. One of `cosine`, `fuzzy_match`, `bleu`, `gleu`, - # `meteor`, `rouge_1`, `rouge_2`, `rouge_3`, `rouge_4`, `rouge_5`, or `rouge_l`. + # The evaluation metric to use. One of `fuzzy_match`, `bleu`, `gleu`, `meteor`, + # `rouge_1`, `rouge_2`, `rouge_3`, `rouge_4`, `rouge_5`, or `rouge_l`. sig { returns(OpenAI::Models::EvalTextSimilarityGrader::EvaluationMetric::OrSymbol) } attr_accessor :evaluation_metric @@ -68,8 +68,8 @@ module OpenAI end def to_hash; end - # The evaluation metric to use. One of `cosine`, `fuzzy_match`, `bleu`, `gleu`, - # `meteor`, `rouge_1`, `rouge_2`, `rouge_3`, `rouge_4`, `rouge_5`, or `rouge_l`. + # The evaluation metric to use. One of `fuzzy_match`, `bleu`, `gleu`, `meteor`, + # `rouge_1`, `rouge_2`, `rouge_3`, `rouge_4`, `rouge_5`, or `rouge_l`. module EvaluationMetric extend OpenAI::Internal::Type::Enum @@ -87,7 +87,6 @@ module OpenAI ROUGE_4 = T.let(:rouge_4, OpenAI::Models::EvalTextSimilarityGrader::EvaluationMetric::TaggedSymbol) ROUGE_5 = T.let(:rouge_5, OpenAI::Models::EvalTextSimilarityGrader::EvaluationMetric::TaggedSymbol) ROUGE_L = T.let(:rouge_l, OpenAI::Models::EvalTextSimilarityGrader::EvaluationMetric::TaggedSymbol) - COSINE = T.let(:cosine, OpenAI::Models::EvalTextSimilarityGrader::EvaluationMetric::TaggedSymbol) sig { override.returns(T::Array[OpenAI::Models::EvalTextSimilarityGrader::EvaluationMetric::TaggedSymbol]) } def self.values; end diff --git a/rbi/lib/openai/models/eval_update_response.rbi b/rbi/lib/openai/models/eval_update_response.rbi index 0025fbad..53a41e65 100644 --- a/rbi/lib/openai/models/eval_update_response.rbi +++ b/rbi/lib/openai/models/eval_update_response.rbi @@ -36,10 +36,6 @@ module OpenAI sig { returns(Symbol) } attr_accessor :object - # Indicates whether the evaluation is shared with OpenAI. - sig { returns(T::Boolean) } - attr_accessor :share_with_openai - # A list of testing criteria. sig do returns( @@ -47,7 +43,9 @@ module OpenAI T.any( OpenAI::Models::EvalLabelModelGrader, OpenAI::Models::EvalStringCheckGrader, - OpenAI::Models::EvalTextSimilarityGrader + OpenAI::Models::EvalTextSimilarityGrader, + OpenAI::Models::EvalUpdateResponse::TestingCriterion::Python, + OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel ) ] ) @@ -71,29 +69,23 @@ module OpenAI ), metadata: T.nilable(T::Hash[Symbol, String]), name: String, - share_with_openai: T::Boolean, testing_criteria: T::Array[ T.any( OpenAI::Models::EvalLabelModelGrader, OpenAI::Internal::AnyHash, OpenAI::Models::EvalStringCheckGrader, - OpenAI::Models::EvalTextSimilarityGrader + OpenAI::Models::EvalTextSimilarityGrader, + OpenAI::Models::EvalUpdateResponse::TestingCriterion::Python, + OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel ) ], object: Symbol ) .returns(T.attached_class) end - def self.new( - id:, - created_at:, - data_source_config:, - metadata:, - name:, - share_with_openai:, - testing_criteria:, - object: :eval - ); end + def self.new(id:, created_at:, data_source_config:, metadata:, name:, testing_criteria:, object: :eval) + end + sig do override .returns( @@ -104,12 +96,13 @@ module OpenAI metadata: T.nilable(T::Hash[Symbol, String]), name: String, object: Symbol, - share_with_openai: T::Boolean, testing_criteria: T::Array[ T.any( OpenAI::Models::EvalLabelModelGrader, OpenAI::Models::EvalStringCheckGrader, - OpenAI::Models::EvalTextSimilarityGrader + OpenAI::Models::EvalTextSimilarityGrader, + OpenAI::Models::EvalUpdateResponse::TestingCriterion::Python, + OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel ) ] } @@ -135,10 +128,292 @@ module OpenAI module TestingCriterion extend OpenAI::Internal::Type::Union + class Python < OpenAI::Internal::Type::BaseModel + # The name of the grader. + sig { returns(String) } + attr_accessor :name + + # The source code of the python script. + sig { returns(String) } + attr_accessor :source + + # The object type, which is always `python`. + sig { returns(Symbol) } + attr_accessor :type + + # The image tag to use for the python script. + sig { returns(T.nilable(String)) } + attr_reader :image_tag + + sig { params(image_tag: String).void } + attr_writer :image_tag + + # The threshold for the score. + sig { returns(T.nilable(Float)) } + attr_reader :pass_threshold + + sig { params(pass_threshold: Float).void } + attr_writer :pass_threshold + + # A PythonGrader object that runs a python script on the input. + sig do + params(name: String, source: String, image_tag: String, pass_threshold: Float, type: Symbol) + .returns(T.attached_class) + end + def self.new(name:, source:, image_tag: nil, pass_threshold: nil, type: :python); end + + sig do + override.returns( + { + name: String, + source: String, + type: Symbol, + image_tag: String, + pass_threshold: Float + } + ) + end + def to_hash; end + end + + class ScoreModel < OpenAI::Internal::Type::BaseModel + # The input text. This may include template strings. + sig { returns(T::Array[OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input]) } + attr_accessor :input + + # The model to use for the evaluation. + sig { returns(String) } + attr_accessor :model + + # The name of the grader. + sig { returns(String) } + attr_accessor :name + + # The object type, which is always `score_model`. + sig { returns(Symbol) } + attr_accessor :type + + # The threshold for the score. + sig { returns(T.nilable(Float)) } + attr_reader :pass_threshold + + sig { params(pass_threshold: Float).void } + attr_writer :pass_threshold + + # The range of the score. Defaults to `[0, 1]`. + sig { returns(T.nilable(T::Array[Float])) } + attr_reader :range + + sig { params(range: T::Array[Float]).void } + attr_writer :range + + # The sampling parameters for the model. + sig { returns(T.nilable(T.anything)) } + attr_reader :sampling_params + + sig { params(sampling_params: T.anything).void } + attr_writer :sampling_params + + # A ScoreModelGrader object that uses a model to assign a score to the input. + sig do + params( + input: T::Array[T.any(OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input, OpenAI::Internal::AnyHash)], + model: String, + name: String, + pass_threshold: Float, + range: T::Array[Float], + sampling_params: T.anything, + type: Symbol + ) + .returns(T.attached_class) + end + def self.new( + input:, + model:, + name:, + pass_threshold: nil, + range: nil, + sampling_params: nil, + type: :score_model + ) + end + + sig do + override + .returns( + { + input: T::Array[OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input], + model: String, + name: String, + type: Symbol, + pass_threshold: Float, + range: T::Array[Float], + sampling_params: T.anything + } + ) + end + def to_hash; end + + class Input < OpenAI::Internal::Type::BaseModel + # Text inputs to the model - can contain template strings. + sig do + returns( + T.any( + String, + OpenAI::Models::Responses::ResponseInputText, + OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Content::OutputText + ) + ) + end + attr_accessor :content + + # The role of the message input. One of `user`, `assistant`, `system`, or + # `developer`. + sig { returns(OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Role::TaggedSymbol) } + attr_accessor :role + + # The type of the message input. Always `message`. + sig do + returns( + T.nilable(OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Type::TaggedSymbol) + ) + end + attr_reader :type + + sig { params(type: OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Type::OrSymbol).void } + attr_writer :type + + # A message input to the model with a role indicating instruction following + # hierarchy. Instructions given with the `developer` or `system` role take + # precedence over instructions given with the `user` role. Messages with the + # `assistant` role are presumed to have been generated by the model in previous + # interactions. + sig do + params( + content: T.any( + String, + OpenAI::Models::Responses::ResponseInputText, + OpenAI::Internal::AnyHash, + OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Content::OutputText + ), + role: OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Role::OrSymbol, + type: OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Type::OrSymbol + ) + .returns(T.attached_class) + end + def self.new(content:, role:, type: nil); end + + sig do + override + .returns( + { + content: T.any( + String, + OpenAI::Models::Responses::ResponseInputText, + OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Content::OutputText + ), + role: OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Role::TaggedSymbol, + type: OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Type::TaggedSymbol + } + ) + end + def to_hash; end + + # Text inputs to the model - can contain template strings. + module Content + extend OpenAI::Internal::Type::Union + + class OutputText < OpenAI::Internal::Type::BaseModel + # The text output from the model. + sig { returns(String) } + attr_accessor :text + + # The type of the output text. Always `output_text`. + sig { returns(Symbol) } + attr_accessor :type + + # A text output from the model. + sig { params(text: String, type: Symbol).returns(T.attached_class) } + def self.new(text:, type: :output_text); end + + sig { override.returns({text: String, type: Symbol}) } + def to_hash; end + end + + sig do + override + .returns( + [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Content::OutputText] + ) + end + def self.variants; end + end + + # The role of the message input. One of `user`, `assistant`, `system`, or + # `developer`. + module Role + extend OpenAI::Internal::Type::Enum + + TaggedSymbol = + T.type_alias { T.all(Symbol, OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Role) } + OrSymbol = T.type_alias { T.any(Symbol, String) } + + USER = + T.let(:user, OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Role::TaggedSymbol) + ASSISTANT = + T.let( + :assistant, + OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Role::TaggedSymbol + ) + SYSTEM = + T.let( + :system, + OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Role::TaggedSymbol + ) + DEVELOPER = + T.let( + :developer, + OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Role::TaggedSymbol + ) + + sig do + override + .returns( + T::Array[OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Role::TaggedSymbol] + ) + end + def self.values; end + end + + # The type of the message input. Always `message`. + module Type + extend OpenAI::Internal::Type::Enum + + TaggedSymbol = + T.type_alias { T.all(Symbol, OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Type) } + OrSymbol = T.type_alias { T.any(Symbol, String) } + + MESSAGE = + T.let( + :message, + OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Type::TaggedSymbol + ) + + sig do + override + .returns( + T::Array[OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Type::TaggedSymbol] + ) + end + def self.values; end + end + end + end + sig do override .returns( - [OpenAI::Models::EvalLabelModelGrader, OpenAI::Models::EvalStringCheckGrader, OpenAI::Models::EvalTextSimilarityGrader] + [OpenAI::Models::EvalLabelModelGrader, OpenAI::Models::EvalStringCheckGrader, OpenAI::Models::EvalTextSimilarityGrader, OpenAI::Models::EvalUpdateResponse::TestingCriterion::Python, OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel] ) end def self.variants; end diff --git a/rbi/lib/openai/models/evals/create_eval_completions_run_data_source.rbi b/rbi/lib/openai/models/evals/create_eval_completions_run_data_source.rbi index 83b73c77..6e2ac631 100644 --- a/rbi/lib/openai/models/evals/create_eval_completions_run_data_source.rbi +++ b/rbi/lib/openai/models/evals/create_eval_completions_run_data_source.rbi @@ -4,20 +4,6 @@ module OpenAI module Models module Evals class CreateEvalCompletionsRunDataSource < OpenAI::Internal::Type::BaseModel - sig do - returns( - T.any( - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template, - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::ItemReference - ) - ) - end - attr_accessor :input_messages - - # The name of the model to use for generating completions (e.g. "o3-mini"). - sig { returns(String) } - attr_accessor :model - # A StoredCompletionsRunDataSource configuration describing a set of filters sig do returns( @@ -34,6 +20,37 @@ module OpenAI sig { returns(OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Type::OrSymbol) } attr_accessor :type + sig do + returns( + T.nilable( + T.any( + OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template, + OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::ItemReference + ) + ) + ) + end + attr_reader :input_messages + + sig do + params( + input_messages: T.any( + OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template, + OpenAI::Internal::AnyHash, + OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::ItemReference + ) + ) + .void + end + attr_writer :input_messages + + # The name of the model to use for generating completions (e.g. "o3-mini"). + sig { returns(T.nilable(String)) } + attr_reader :model + + sig { params(model: String).void } + attr_writer :model + sig { returns(T.nilable(OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::SamplingParams)) } attr_reader :sampling_params @@ -51,12 +68,6 @@ module OpenAI # A CompletionsRunDataSource object describing a model sampling configuration. sig do params( - input_messages: T.any( - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template, - OpenAI::Internal::AnyHash, - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::ItemReference - ), - model: String, source: T.any( OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Source::FileContent, OpenAI::Internal::AnyHash, @@ -64,6 +75,12 @@ module OpenAI OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Source::StoredCompletions ), type: OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Type::OrSymbol, + input_messages: T.any( + OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template, + OpenAI::Internal::AnyHash, + OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::ItemReference + ), + model: String, sampling_params: T.any( OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::SamplingParams, OpenAI::Internal::AnyHash @@ -71,29 +88,200 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(input_messages:, model:, source:, type:, sampling_params: nil); end + def self.new(source:, type:, input_messages: nil, model: nil, sampling_params: nil); end sig do override .returns( { - input_messages: T.any( - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template, - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::ItemReference - ), - model: String, source: T.any( OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Source::FileContent, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Source::FileID, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Source::StoredCompletions ), type: OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Type::OrSymbol, + input_messages: T.any( + OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template, + OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::ItemReference + ), + model: String, sampling_params: OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::SamplingParams } ) end def to_hash; end + # A StoredCompletionsRunDataSource configuration describing a set of filters + module Source + extend OpenAI::Internal::Type::Union + + class FileContent < OpenAI::Internal::Type::BaseModel + # The content of the jsonl file. + sig { returns(T::Array[OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Source::FileContent::Content]) } + attr_accessor :content + + # The type of jsonl source. Always `file_content`. + sig { returns(Symbol) } + attr_accessor :type + + sig do + params( + content: T::Array[ + T.any( + OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Source::FileContent::Content, + OpenAI::Internal::AnyHash + ) + ], + type: Symbol + ) + .returns(T.attached_class) + end + def self.new(content:, type: :file_content); end + + sig do + override + .returns( + { + content: T::Array[OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Source::FileContent::Content], + type: Symbol + } + ) + end + def to_hash; end + + class Content < OpenAI::Internal::Type::BaseModel + sig { returns(T::Hash[Symbol, T.anything]) } + attr_accessor :item + + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } + attr_reader :sample + + sig { params(sample: T::Hash[Symbol, T.anything]).void } + attr_writer :sample + + sig do + params( + item: T::Hash[Symbol, T.anything], + sample: T::Hash[Symbol, T.anything] + ).returns(T.attached_class) + end + def self.new(item:, sample: nil); end + + sig do + override.returns({item: T::Hash[Symbol, T.anything], sample: T::Hash[Symbol, T.anything]}) + end + def to_hash; end + end + end + + class FileID < OpenAI::Internal::Type::BaseModel + # The identifier of the file. + sig { returns(String) } + attr_accessor :id + + # The type of jsonl source. Always `file_id`. + sig { returns(Symbol) } + attr_accessor :type + + sig { params(id: String, type: Symbol).returns(T.attached_class) } + def self.new(id:, type: :file_id); end + + sig { override.returns({id: String, type: Symbol}) } + def to_hash; end + end + + class StoredCompletions < OpenAI::Internal::Type::BaseModel + # The type of source. Always `stored_completions`. + sig { returns(Symbol) } + attr_accessor :type + + # An optional Unix timestamp to filter items created after this time. + sig { returns(T.nilable(Integer)) } + attr_accessor :created_after + + # An optional Unix timestamp to filter items created before this time. + sig { returns(T.nilable(Integer)) } + attr_accessor :created_before + + # An optional maximum number of items to return. + sig { returns(T.nilable(Integer)) } + attr_accessor :limit + + # 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. + sig { returns(T.nilable(T::Hash[Symbol, String])) } + attr_accessor :metadata + + # An optional model to filter by (e.g., 'gpt-4o'). + sig { returns(T.nilable(String)) } + attr_accessor :model + + # A StoredCompletionsRunDataSource configuration describing a set of filters + sig do + params( + created_after: T.nilable(Integer), + created_before: T.nilable(Integer), + limit: T.nilable(Integer), + metadata: T.nilable(T::Hash[Symbol, String]), + model: T.nilable(String), + type: Symbol + ) + .returns(T.attached_class) + end + def self.new( + created_after: nil, + created_before: nil, + limit: nil, + metadata: nil, + model: nil, + type: :stored_completions + ) + end + + sig do + override + .returns( + { + type: Symbol, + created_after: T.nilable(Integer), + created_before: T.nilable(Integer), + limit: T.nilable(Integer), + metadata: T.nilable(T::Hash[Symbol, String]), + model: T.nilable(String) + } + ) + end + def to_hash; end + end + + sig do + override + .returns( + [OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Source::FileContent, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Source::FileID, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Source::StoredCompletions] + ) + end + def self.variants; end + end + + # The type of run data source. Always `completions`. + module Type + extend OpenAI::Internal::Type::Enum + + TaggedSymbol = + T.type_alias { T.all(Symbol, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Type) } + OrSymbol = T.type_alias { T.any(Symbol, String) } + + COMPLETIONS = + T.let(:completions, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Type::TaggedSymbol) + + sig { override.returns(T::Array[OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Type::TaggedSymbol]) } + def self.values; end + end + module InputMessages extend OpenAI::Internal::Type::Union @@ -104,9 +292,8 @@ module OpenAI returns( T::Array[ T.any( - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::ChatMessage, - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::InputMessage, - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::OutputMessage + OpenAI::Models::Responses::EasyInputMessage, + OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message ) ] ) @@ -121,10 +308,9 @@ module OpenAI params( template: T::Array[ T.any( - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::ChatMessage, + OpenAI::Models::Responses::EasyInputMessage, OpenAI::Internal::AnyHash, - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::InputMessage, - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::OutputMessage + OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message ) ], type: Symbol @@ -139,9 +325,8 @@ module OpenAI { template: T::Array[ T.any( - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::ChatMessage, - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::InputMessage, - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::OutputMessage + OpenAI::Models::Responses::EasyInputMessage, + OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message ) ], type: Symbol @@ -150,380 +335,184 @@ module OpenAI end def to_hash; end + # A message input to the model with a role indicating instruction following + # hierarchy. Instructions given with the `developer` or `system` role take + # precedence over instructions given with the `user` role. Messages with the + # `assistant` role are presumed to have been generated by the model in previous + # interactions. module Template extend OpenAI::Internal::Type::Union - class ChatMessage < OpenAI::Internal::Type::BaseModel - # The content of the message. - sig { returns(String) } - attr_accessor :content - - # The role of the message (e.g. "system", "assistant", "user"). - sig { returns(String) } - attr_accessor :role - - sig { params(content: String, role: String).returns(T.attached_class) } - def self.new(content:, role:); end - - sig { override.returns({content: String, role: String}) } - def to_hash; end - end - - class InputMessage < OpenAI::Internal::Type::BaseModel + class Message < OpenAI::Internal::Type::BaseModel + # Text inputs to the model - can contain template strings. sig do returns( - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::InputMessage::Content + T.any( + String, + OpenAI::Models::Responses::ResponseInputText, + OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::Content::OutputText + ) ) end - attr_reader :content + attr_accessor :content + # The role of the message input. One of `user`, `assistant`, `system`, or + # `developer`. sig do - params( - content: T.any( - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::InputMessage::Content, - OpenAI::Internal::AnyHash - ) + returns( + OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::Role::OrSymbol ) - .void end - attr_writer :content + attr_accessor :role - # The role of the message. One of `user`, `system`, or `developer`. + # The type of the message input. Always `message`. sig do returns( - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::InputMessage::Role::OrSymbol + T.nilable( + OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::Type::OrSymbol + ) ) end - attr_accessor :role + attr_reader :type - # The type of item, which is always `message`. sig do - returns( - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::InputMessage::Type::OrSymbol + params( + type: OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::Type::OrSymbol ) + .void end - attr_accessor :type + attr_writer :type + # A message input to the model with a role indicating instruction following + # hierarchy. Instructions given with the `developer` or `system` role take + # precedence over instructions given with the `user` role. Messages with the + # `assistant` role are presumed to have been generated by the model in previous + # interactions. sig do params( content: T.any( - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::InputMessage::Content, - OpenAI::Internal::AnyHash + String, + OpenAI::Models::Responses::ResponseInputText, + OpenAI::Internal::AnyHash, + OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::Content::OutputText ), - role: OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::InputMessage::Role::OrSymbol, - type: OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::InputMessage::Type::OrSymbol + role: OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::Role::OrSymbol, + type: OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::Type::OrSymbol ) .returns(T.attached_class) end - def self.new(content:, role:, type:); end + def self.new(content:, role:, type: nil); end sig do override .returns( { - content: OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::InputMessage::Content, - role: OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::InputMessage::Role::OrSymbol, - type: OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::InputMessage::Type::OrSymbol + content: T.any( + String, + OpenAI::Models::Responses::ResponseInputText, + OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::Content::OutputText + ), + role: OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::Role::OrSymbol, + type: OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::Type::OrSymbol } ) end def to_hash; end - class Content < OpenAI::Internal::Type::BaseModel - # The text content. - sig { returns(String) } - attr_accessor :text + # Text inputs to the model - can contain template strings. + module Content + extend OpenAI::Internal::Type::Union - # The type of content, which is always `input_text`. - sig do - returns( - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::InputMessage::Content::Type::OrSymbol - ) - end - attr_accessor :type + class OutputText < OpenAI::Internal::Type::BaseModel + # The text output from the model. + sig { returns(String) } + attr_accessor :text - sig do - params( - text: String, - type: OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::InputMessage::Content::Type::OrSymbol - ) - .returns(T.attached_class) + # The type of the output text. Always `output_text`. + sig { returns(Symbol) } + attr_accessor :type + + # A text output from the model. + sig { params(text: String, type: Symbol).returns(T.attached_class) } + def self.new(text:, type: :output_text); end + + sig { override.returns({text: String, type: Symbol}) } + def to_hash; end end - def self.new(text:, type:); end sig do override .returns( - { - text: String, - type: OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::InputMessage::Content::Type::OrSymbol - } - ) - end - def to_hash; end - - # The type of content, which is always `input_text`. - module Type - extend OpenAI::Internal::Type::Enum - - TaggedSymbol = - T.type_alias do - T.all(Symbol, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::InputMessage::Content::Type) - end - OrSymbol = T.type_alias { T.any(Symbol, String) } - - INPUT_TEXT = - T.let( - :input_text, - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::InputMessage::Content::Type::TaggedSymbol + [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::Content::OutputText] ) - - sig do - override - .returns( - T::Array[ - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::InputMessage::Content::Type::TaggedSymbol - ] - ) - end - def self.values; end end + def self.variants; end end - # The role of the message. One of `user`, `system`, or `developer`. + # The role of the message input. One of `user`, `assistant`, `system`, or + # `developer`. module Role extend OpenAI::Internal::Type::Enum TaggedSymbol = T.type_alias do - T.all(Symbol, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::InputMessage::Role) + T.all(Symbol, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::Role) end OrSymbol = T.type_alias { T.any(Symbol, String) } USER = T.let( :user, - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::InputMessage::Role::TaggedSymbol + OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::Role::TaggedSymbol + ) + ASSISTANT = + T.let( + :assistant, + OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::Role::TaggedSymbol ) SYSTEM = T.let( :system, - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::InputMessage::Role::TaggedSymbol + OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::Role::TaggedSymbol ) DEVELOPER = T.let( :developer, - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::InputMessage::Role::TaggedSymbol + OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::Role::TaggedSymbol ) sig do override .returns( T::Array[ - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::InputMessage::Role::TaggedSymbol + OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::Role::TaggedSymbol ] ) end def self.values; end end - # The type of item, which is always `message`. + # The type of the message input. Always `message`. module Type extend OpenAI::Internal::Type::Enum TaggedSymbol = T.type_alias do - T.all(Symbol, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::InputMessage::Type) + T.all(Symbol, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::Type) end OrSymbol = T.type_alias { T.any(Symbol, String) } MESSAGE = T.let( :message, - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::InputMessage::Type::TaggedSymbol + OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::Type::TaggedSymbol ) sig do override .returns( T::Array[ - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::InputMessage::Type::TaggedSymbol - ] - ) - end - def self.values; end - end - end - - class OutputMessage < OpenAI::Internal::Type::BaseModel - sig do - returns( - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::OutputMessage::Content - ) - end - attr_reader :content - - sig do - params( - content: T.any( - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::OutputMessage::Content, - OpenAI::Internal::AnyHash - ) - ) - .void - end - attr_writer :content - - # The role of the message. Must be `assistant` for output. - sig do - returns( - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::OutputMessage::Role::OrSymbol - ) - end - attr_accessor :role - - # The type of item, which is always `message`. - sig do - returns( - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::OutputMessage::Type::OrSymbol - ) - end - attr_accessor :type - - sig do - params( - content: T.any( - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::OutputMessage::Content, - OpenAI::Internal::AnyHash - ), - role: OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::OutputMessage::Role::OrSymbol, - type: OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::OutputMessage::Type::OrSymbol - ) - .returns(T.attached_class) - end - def self.new(content:, role:, type:); end - - sig do - override - .returns( - { - content: OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::OutputMessage::Content, - role: OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::OutputMessage::Role::OrSymbol, - type: OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::OutputMessage::Type::OrSymbol - } - ) - end - def to_hash; end - - class Content < OpenAI::Internal::Type::BaseModel - # The text content. - sig { returns(String) } - attr_accessor :text - - # The type of content, which is always `output_text`. - sig do - returns( - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::OutputMessage::Content::Type::OrSymbol - ) - end - attr_accessor :type - - sig do - params( - text: String, - type: OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::OutputMessage::Content::Type::OrSymbol - ) - .returns(T.attached_class) - end - def self.new(text:, type:); end - - sig do - override - .returns( - { - text: String, - type: OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::OutputMessage::Content::Type::OrSymbol - } - ) - end - def to_hash; end - - # The type of content, which is always `output_text`. - module Type - extend OpenAI::Internal::Type::Enum - - TaggedSymbol = - T.type_alias do - T.all(Symbol, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::OutputMessage::Content::Type) - end - OrSymbol = T.type_alias { T.any(Symbol, String) } - - OUTPUT_TEXT = - T.let( - :output_text, - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::OutputMessage::Content::Type::TaggedSymbol - ) - - sig do - override - .returns( - T::Array[ - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::OutputMessage::Content::Type::TaggedSymbol - ] - ) - end - def self.values; end - end - end - - # The role of the message. Must be `assistant` for output. - module Role - extend OpenAI::Internal::Type::Enum - - TaggedSymbol = - T.type_alias do - T.all(Symbol, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::OutputMessage::Role) - end - OrSymbol = T.type_alias { T.any(Symbol, String) } - - ASSISTANT = - T.let( - :assistant, - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::OutputMessage::Role::TaggedSymbol - ) - - sig do - override - .returns( - T::Array[ - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::OutputMessage::Role::TaggedSymbol - ] - ) - end - def self.values; end - end - - # The type of item, which is always `message`. - module Type - extend OpenAI::Internal::Type::Enum - - TaggedSymbol = - T.type_alias do - T.all(Symbol, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::OutputMessage::Type) - end - OrSymbol = T.type_alias { T.any(Symbol, String) } - - MESSAGE = - T.let( - :message, - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::OutputMessage::Type::TaggedSymbol - ) - - sig do - override - .returns( - T::Array[ - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::OutputMessage::Type::TaggedSymbol + OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::Type::TaggedSymbol ] ) end @@ -534,7 +523,7 @@ module OpenAI sig do override .returns( - [OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::ChatMessage, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::InputMessage, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::OutputMessage] + [OpenAI::Models::Responses::EasyInputMessage, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message] ) end def self.variants; end @@ -566,177 +555,6 @@ module OpenAI def self.variants; end end - # A StoredCompletionsRunDataSource configuration describing a set of filters - module Source - extend OpenAI::Internal::Type::Union - - class FileContent < OpenAI::Internal::Type::BaseModel - # The content of the jsonl file. - sig { returns(T::Array[OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Source::FileContent::Content]) } - attr_accessor :content - - # The type of jsonl source. Always `file_content`. - sig { returns(Symbol) } - attr_accessor :type - - sig do - params( - content: T::Array[ - T.any( - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Source::FileContent::Content, - OpenAI::Internal::AnyHash - ) - ], - type: Symbol - ) - .returns(T.attached_class) - end - def self.new(content:, type: :file_content); end - - sig do - override - .returns( - { - content: T::Array[OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Source::FileContent::Content], - type: Symbol - } - ) - end - def to_hash; end - - class Content < OpenAI::Internal::Type::BaseModel - sig { returns(T::Hash[Symbol, T.anything]) } - attr_accessor :item - - sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } - attr_reader :sample - - sig { params(sample: T::Hash[Symbol, T.anything]).void } - attr_writer :sample - - sig do - params( - item: T::Hash[Symbol, T.anything], - sample: T::Hash[Symbol, T.anything] - ).returns(T.attached_class) - end - def self.new(item:, sample: nil); end - - sig do - override.returns({item: T::Hash[Symbol, T.anything], sample: T::Hash[Symbol, T.anything]}) - end - def to_hash; end - end - end - - class FileID < OpenAI::Internal::Type::BaseModel - # The identifier of the file. - sig { returns(String) } - attr_accessor :id - - # The type of jsonl source. Always `file_id`. - sig { returns(Symbol) } - attr_accessor :type - - sig { params(id: String, type: Symbol).returns(T.attached_class) } - def self.new(id:, type: :file_id); end - - sig { override.returns({id: String, type: Symbol}) } - def to_hash; end - end - - class StoredCompletions < OpenAI::Internal::Type::BaseModel - # An optional Unix timestamp to filter items created after this time. - sig { returns(T.nilable(Integer)) } - attr_accessor :created_after - - # An optional Unix timestamp to filter items created before this time. - sig { returns(T.nilable(Integer)) } - attr_accessor :created_before - - # An optional maximum number of items to return. - sig { returns(T.nilable(Integer)) } - attr_accessor :limit - - # 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. - sig { returns(T.nilable(T::Hash[Symbol, String])) } - attr_accessor :metadata - - # An optional model to filter by (e.g., 'gpt-4o'). - sig { returns(T.nilable(String)) } - attr_accessor :model - - # The type of source. Always `stored_completions`. - sig { returns(Symbol) } - attr_accessor :type - - # A StoredCompletionsRunDataSource configuration describing a set of filters - sig do - params( - created_after: T.nilable(Integer), - created_before: T.nilable(Integer), - limit: T.nilable(Integer), - metadata: T.nilable(T::Hash[Symbol, String]), - model: T.nilable(String), - type: Symbol - ) - .returns(T.attached_class) - end - def self.new( - created_after:, - created_before:, - limit:, - metadata:, - model:, - type: :stored_completions - ) - end - - sig do - override - .returns( - { - created_after: T.nilable(Integer), - created_before: T.nilable(Integer), - limit: T.nilable(Integer), - metadata: T.nilable(T::Hash[Symbol, String]), - model: T.nilable(String), - type: Symbol - } - ) - end - def to_hash; end - end - - sig do - override - .returns( - [OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Source::FileContent, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Source::FileID, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Source::StoredCompletions] - ) - end - def self.variants; end - end - - # The type of run data source. Always `completions`. - module Type - extend OpenAI::Internal::Type::Enum - - TaggedSymbol = - T.type_alias { T.all(Symbol, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Type) } - OrSymbol = T.type_alias { T.any(Symbol, String) } - - COMPLETIONS = - T.let(:completions, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Type::TaggedSymbol) - - sig { override.returns(T::Array[OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Type::TaggedSymbol]) } - def self.values; end - end - class SamplingParams < OpenAI::Internal::Type::BaseModel # The maximum number of tokens in the generated output. sig { returns(T.nilable(Integer)) } diff --git a/rbi/lib/openai/models/evals/run_cancel_response.rbi b/rbi/lib/openai/models/evals/run_cancel_response.rbi index bc2ac3bd..35e93b1b 100644 --- a/rbi/lib/openai/models/evals/run_cancel_response.rbi +++ b/rbi/lib/openai/models/evals/run_cancel_response.rbi @@ -17,7 +17,8 @@ module OpenAI returns( T.any( OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource + OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource, + OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions ) ) end @@ -91,7 +92,8 @@ module OpenAI data_source: T.any( OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, OpenAI::Internal::AnyHash, - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource + OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource, + OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions ), error: T.any(OpenAI::Models::Evals::EvalAPIError, OpenAI::Internal::AnyHash), eval_id: String, @@ -131,7 +133,8 @@ module OpenAI created_at: Integer, data_source: T.any( OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource + OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource, + OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions ), error: OpenAI::Models::Evals::EvalAPIError, eval_id: String, @@ -153,10 +156,661 @@ module OpenAI module DataSource extend OpenAI::Internal::Type::Union + class Completions < OpenAI::Internal::Type::BaseModel + # A EvalResponsesSource object describing a run data source configuration. + sig do + returns( + T.any( + OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::Source::FileContent, + OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::Source::FileID, + OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::Source::Responses + ) + ) + end + attr_accessor :source + + # The type of run data source. Always `completions`. + sig { returns(Symbol) } + attr_accessor :type + + sig do + returns( + T.nilable( + T.any( + OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template, + OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::ItemReference + ) + ) + ) + end + attr_reader :input_messages + + sig do + params( + input_messages: T.any( + OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template, + OpenAI::Internal::AnyHash, + OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::ItemReference + ) + ) + .void + end + attr_writer :input_messages + + # The name of the model to use for generating completions (e.g. "o3-mini"). + sig { returns(T.nilable(String)) } + attr_reader :model + + sig { params(model: String).void } + attr_writer :model + + sig { returns(T.nilable(OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::SamplingParams)) } + attr_reader :sampling_params + + sig do + params( + sampling_params: T.any( + OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::SamplingParams, + OpenAI::Internal::AnyHash + ) + ) + .void + end + attr_writer :sampling_params + + # A ResponsesRunDataSource object describing a model sampling configuration. + sig do + params( + source: T.any( + OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::Source::FileContent, + OpenAI::Internal::AnyHash, + OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::Source::FileID, + OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::Source::Responses + ), + input_messages: T.any( + OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template, + OpenAI::Internal::AnyHash, + OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::ItemReference + ), + model: String, + sampling_params: T.any( + OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::SamplingParams, + OpenAI::Internal::AnyHash + ), + type: Symbol + ) + .returns(T.attached_class) + end + def self.new(source:, input_messages: nil, model: nil, sampling_params: nil, type: :completions) + end + + sig do + override + .returns( + { + source: T.any( + OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::Source::FileContent, + OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::Source::FileID, + OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::Source::Responses + ), + type: Symbol, + input_messages: T.any( + OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template, + OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::ItemReference + ), + model: String, + sampling_params: OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::SamplingParams + } + ) + end + def to_hash; end + + # A EvalResponsesSource object describing a run data source configuration. + module Source + extend OpenAI::Internal::Type::Union + + class FileContent < OpenAI::Internal::Type::BaseModel + # The content of the jsonl file. + sig do + returns( + T::Array[OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::Source::FileContent::Content] + ) + end + attr_accessor :content + + # The type of jsonl source. Always `file_content`. + sig { returns(Symbol) } + attr_accessor :type + + sig do + params( + content: T::Array[ + T.any( + OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::Source::FileContent::Content, + OpenAI::Internal::AnyHash + ) + ], + type: Symbol + ) + .returns(T.attached_class) + end + def self.new(content:, type: :file_content); end + + sig do + override + .returns( + { + content: T::Array[OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::Source::FileContent::Content], + type: Symbol + } + ) + end + def to_hash; end + + class Content < OpenAI::Internal::Type::BaseModel + sig { returns(T::Hash[Symbol, T.anything]) } + attr_accessor :item + + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } + attr_reader :sample + + sig { params(sample: T::Hash[Symbol, T.anything]).void } + attr_writer :sample + + sig do + params( + item: T::Hash[Symbol, T.anything], + sample: T::Hash[Symbol, + T.anything] + ).returns(T.attached_class) + end + def self.new(item:, sample: nil); end + + sig do + override.returns({item: T::Hash[Symbol, T.anything], sample: T::Hash[Symbol, T.anything]}) + end + def to_hash; end + end + end + + class FileID < OpenAI::Internal::Type::BaseModel + # The identifier of the file. + sig { returns(String) } + attr_accessor :id + + # The type of jsonl source. Always `file_id`. + sig { returns(Symbol) } + attr_accessor :type + + sig { params(id: String, type: Symbol).returns(T.attached_class) } + def self.new(id:, type: :file_id); end + + sig { override.returns({id: String, type: Symbol}) } + def to_hash; end + end + + class Responses < OpenAI::Internal::Type::BaseModel + # The type of run data source. Always `responses`. + sig { returns(Symbol) } + attr_accessor :type + + # Whether to allow parallel tool calls. This is a query parameter used to select + # responses. + sig { returns(T.nilable(T::Boolean)) } + attr_accessor :allow_parallel_tool_calls + + # Only include items created after this timestamp (inclusive). This is a query + # parameter used to select responses. + sig { returns(T.nilable(Integer)) } + attr_accessor :created_after + + # Only include items created before this timestamp (inclusive). This is a query + # parameter used to select responses. + sig { returns(T.nilable(Integer)) } + attr_accessor :created_before + + # Whether the response has tool calls. This is a query parameter used to select + # responses. + sig { returns(T.nilable(T::Boolean)) } + attr_accessor :has_tool_calls + + # Optional search string for instructions. This is a query parameter used to + # select responses. + sig { returns(T.nilable(String)) } + attr_accessor :instructions_search + + # Metadata filter for the responses. This is a query parameter used to select + # responses. + sig { returns(T.nilable(T.anything)) } + attr_accessor :metadata + + # The name of the model to find responses for. This is a query parameter used to + # select responses. + sig { returns(T.nilable(String)) } + attr_accessor :model + + # Optional reasoning effort parameter. This is a query parameter used to select + # responses. + sig { returns(T.nilable(OpenAI::Models::ReasoningEffort::TaggedSymbol)) } + attr_accessor :reasoning_effort + + # Sampling temperature. This is a query parameter used to select responses. + sig { returns(T.nilable(Float)) } + attr_accessor :temperature + + # Nucleus sampling parameter. This is a query parameter used to select responses. + sig { returns(T.nilable(Float)) } + attr_accessor :top_p + + # List of user identifiers. This is a query parameter used to select responses. + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :users + + # A EvalResponsesSource object describing a run data source configuration. + sig do + params( + allow_parallel_tool_calls: T.nilable(T::Boolean), + created_after: T.nilable(Integer), + created_before: T.nilable(Integer), + has_tool_calls: T.nilable(T::Boolean), + instructions_search: T.nilable(String), + metadata: T.nilable(T.anything), + model: T.nilable(String), + reasoning_effort: T.nilable(OpenAI::Models::ReasoningEffort::OrSymbol), + temperature: T.nilable(Float), + top_p: T.nilable(Float), + users: T.nilable(T::Array[String]), + type: Symbol + ) + .returns(T.attached_class) + end + def self.new( + allow_parallel_tool_calls: nil, + created_after: nil, + created_before: nil, + has_tool_calls: nil, + instructions_search: nil, + metadata: nil, + model: nil, + reasoning_effort: nil, + temperature: nil, + top_p: nil, + users: nil, + type: :responses + ); end + sig do + override + .returns( + { + type: Symbol, + allow_parallel_tool_calls: T.nilable(T::Boolean), + created_after: T.nilable(Integer), + created_before: T.nilable(Integer), + has_tool_calls: T.nilable(T::Boolean), + instructions_search: T.nilable(String), + metadata: T.nilable(T.anything), + model: T.nilable(String), + reasoning_effort: T.nilable(OpenAI::Models::ReasoningEffort::TaggedSymbol), + temperature: T.nilable(Float), + top_p: T.nilable(Float), + users: T.nilable(T::Array[String]) + } + ) + end + def to_hash; end + end + + sig do + override + .returns( + [OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::Source::FileContent, OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::Source::FileID, OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::Source::Responses] + ) + end + def self.variants; end + end + + module InputMessages + extend OpenAI::Internal::Type::Union + + class Template < OpenAI::Internal::Type::BaseModel + # A list of chat messages forming the prompt or context. May include variable + # references to the "item" namespace, ie {{item.name}}. + sig do + returns( + T::Array[ + T.any( + OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::ChatMessage, + OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem + ) + ] + ) + end + attr_accessor :template + + # The type of input messages. Always `template`. + sig { returns(Symbol) } + attr_accessor :type + + sig do + params( + template: T::Array[ + T.any( + OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::ChatMessage, + OpenAI::Internal::AnyHash, + OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem + ) + ], + type: Symbol + ) + .returns(T.attached_class) + end + def self.new(template:, type: :template); end + + sig do + override + .returns( + { + template: T::Array[ + T.any( + OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::ChatMessage, + OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem + ) + ], + type: Symbol + } + ) + end + def to_hash; end + + # A message input to the model with a role indicating instruction following + # hierarchy. Instructions given with the `developer` or `system` role take + # precedence over instructions given with the `user` role. Messages with the + # `assistant` role are presumed to have been generated by the model in previous + # interactions. + module Template + extend OpenAI::Internal::Type::Union + + class ChatMessage < OpenAI::Internal::Type::BaseModel + # The content of the message. + sig { returns(String) } + attr_accessor :content + + # The role of the message (e.g. "system", "assistant", "user"). + sig { returns(String) } + attr_accessor :role + + sig { params(content: String, role: String).returns(T.attached_class) } + def self.new(content:, role:); end + + sig { override.returns({content: String, role: String}) } + def to_hash; end + end + + class EvalItem < OpenAI::Internal::Type::BaseModel + # Text inputs to the model - can contain template strings. + sig do + returns( + T.any( + String, + OpenAI::Models::Responses::ResponseInputText, + OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText + ) + ) + end + attr_accessor :content + + # The role of the message input. One of `user`, `assistant`, `system`, or + # `developer`. + sig do + returns( + OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Role::TaggedSymbol + ) + end + attr_accessor :role + + # The type of the message input. Always `message`. + sig do + returns( + T.nilable( + OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Type::TaggedSymbol + ) + ) + end + attr_reader :type + + sig do + params( + type: OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Type::OrSymbol + ) + .void + end + attr_writer :type + + # A message input to the model with a role indicating instruction following + # hierarchy. Instructions given with the `developer` or `system` role take + # precedence over instructions given with the `user` role. Messages with the + # `assistant` role are presumed to have been generated by the model in previous + # interactions. + sig do + params( + content: T.any( + String, + OpenAI::Models::Responses::ResponseInputText, + OpenAI::Internal::AnyHash, + OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText + ), + role: OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Role::OrSymbol, + type: OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Type::OrSymbol + ) + .returns(T.attached_class) + end + def self.new(content:, role:, type: nil); end + + sig do + override + .returns( + { + content: T.any( + String, + OpenAI::Models::Responses::ResponseInputText, + OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText + ), + role: OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Role::TaggedSymbol, + type: OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Type::TaggedSymbol + } + ) + end + def to_hash; end + + # Text inputs to the model - can contain template strings. + module Content + extend OpenAI::Internal::Type::Union + + class OutputText < OpenAI::Internal::Type::BaseModel + # The text output from the model. + sig { returns(String) } + attr_accessor :text + + # The type of the output text. Always `output_text`. + sig { returns(Symbol) } + attr_accessor :type + + # A text output from the model. + sig { params(text: String, type: Symbol).returns(T.attached_class) } + def self.new(text:, type: :output_text); end + + sig { override.returns({text: String, type: Symbol}) } + def to_hash; end + end + + sig do + override + .returns( + [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText] + ) + end + def self.variants; end + end + + # The role of the message input. One of `user`, `assistant`, `system`, or + # `developer`. + module Role + extend OpenAI::Internal::Type::Enum + + TaggedSymbol = + T.type_alias do + T.all(Symbol, OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Role) + end + OrSymbol = T.type_alias { T.any(Symbol, String) } + + USER = + T.let( + :user, + OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Role::TaggedSymbol + ) + ASSISTANT = + T.let( + :assistant, + OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Role::TaggedSymbol + ) + SYSTEM = + T.let( + :system, + OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Role::TaggedSymbol + ) + DEVELOPER = + T.let( + :developer, + OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Role::TaggedSymbol + ) + + sig do + override + .returns( + T::Array[ + OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Role::TaggedSymbol + ] + ) + end + def self.values; end + end + + # The type of the message input. Always `message`. + module Type + extend OpenAI::Internal::Type::Enum + + TaggedSymbol = + T.type_alias do + T.all(Symbol, OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Type) + end + OrSymbol = T.type_alias { T.any(Symbol, String) } + + MESSAGE = + T.let( + :message, + OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Type::TaggedSymbol + ) + + sig do + override + .returns( + T::Array[ + OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Type::TaggedSymbol + ] + ) + end + def self.values; end + end + end + + sig do + override + .returns( + [OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::ChatMessage, OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem] + ) + end + def self.variants; end + end + end + + class ItemReference < OpenAI::Internal::Type::BaseModel + # A reference to a variable in the "item" namespace. Ie, "item.name" + sig { returns(String) } + attr_accessor :item_reference + + # The type of input messages. Always `item_reference`. + sig { returns(Symbol) } + attr_accessor :type + + sig { params(item_reference: String, type: Symbol).returns(T.attached_class) } + def self.new(item_reference:, type: :item_reference); end + + sig { override.returns({item_reference: String, type: Symbol}) } + def to_hash; end + end + + sig do + override + .returns( + [OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template, OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::ItemReference] + ) + end + def self.variants; end + end + + class SamplingParams < OpenAI::Internal::Type::BaseModel + # The maximum number of tokens in the generated output. + sig { returns(T.nilable(Integer)) } + attr_reader :max_completion_tokens + + sig { params(max_completion_tokens: Integer).void } + attr_writer :max_completion_tokens + + # A seed value to initialize the randomness, during sampling. + sig { returns(T.nilable(Integer)) } + attr_reader :seed + + sig { params(seed: Integer).void } + attr_writer :seed + + # A higher temperature increases randomness in the outputs. + sig { returns(T.nilable(Float)) } + attr_reader :temperature + + sig { params(temperature: Float).void } + attr_writer :temperature + + # An alternative to temperature for nucleus sampling; 1.0 includes all tokens. + sig { returns(T.nilable(Float)) } + attr_reader :top_p + + sig { params(top_p: Float).void } + attr_writer :top_p + + sig do + params(max_completion_tokens: Integer, seed: Integer, temperature: Float, top_p: Float) + .returns(T.attached_class) + end + def self.new(max_completion_tokens: nil, seed: nil, temperature: nil, top_p: nil); end + + sig do + override.returns( + { + max_completion_tokens: Integer, + seed: Integer, + temperature: Float, + top_p: Float + } + ) + end + def to_hash; end + end + end + sig do override .returns( - [OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource] + [OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource, OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions] ) end def self.variants; end diff --git a/rbi/lib/openai/models/evals/run_create_params.rbi b/rbi/lib/openai/models/evals/run_create_params.rbi index 0f0fd8b0..c995c3ef 100644 --- a/rbi/lib/openai/models/evals/run_create_params.rbi +++ b/rbi/lib/openai/models/evals/run_create_params.rbi @@ -12,7 +12,8 @@ module OpenAI returns( T.any( OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource + OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource, + OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource ) ) end @@ -39,7 +40,8 @@ module OpenAI data_source: T.any( OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, OpenAI::Internal::AnyHash, - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource + OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource, + OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource ), metadata: T.nilable(T::Hash[Symbol, String]), name: String, @@ -55,7 +57,8 @@ module OpenAI { data_source: T.any( OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource + OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource, + OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource ), metadata: T.nilable(T::Hash[Symbol, String]), name: String, @@ -69,10 +72,697 @@ module OpenAI module DataSource extend OpenAI::Internal::Type::Union + class CreateEvalResponsesRunDataSource < OpenAI::Internal::Type::BaseModel + # A EvalResponsesSource object describing a run data source configuration. + sig do + returns( + T.any( + OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::FileContent, + OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::FileID, + OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::Responses + ) + ) + end + attr_accessor :source + + # The type of run data source. Always `completions`. + sig do + returns( + OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Type::OrSymbol + ) + end + attr_accessor :type + + sig do + returns( + T.nilable( + T.any( + OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template, + OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::ItemReference + ) + ) + ) + end + attr_reader :input_messages + + sig do + params( + input_messages: T.any( + OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template, + OpenAI::Internal::AnyHash, + OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::ItemReference + ) + ) + .void + end + attr_writer :input_messages + + # The name of the model to use for generating completions (e.g. "o3-mini"). + sig { returns(T.nilable(String)) } + attr_reader :model + + sig { params(model: String).void } + attr_writer :model + + sig do + returns( + T.nilable( + OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::SamplingParams + ) + ) + end + attr_reader :sampling_params + + sig do + params( + sampling_params: T.any( + OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::SamplingParams, + OpenAI::Internal::AnyHash + ) + ) + .void + end + attr_writer :sampling_params + + # A ResponsesRunDataSource object describing a model sampling configuration. + sig do + params( + source: T.any( + OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::FileContent, + OpenAI::Internal::AnyHash, + OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::FileID, + OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::Responses + ), + type: OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Type::OrSymbol, + input_messages: T.any( + OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template, + OpenAI::Internal::AnyHash, + OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::ItemReference + ), + model: String, + sampling_params: T.any( + OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::SamplingParams, + OpenAI::Internal::AnyHash + ) + ) + .returns(T.attached_class) + end + def self.new(source:, type:, input_messages: nil, model: nil, sampling_params: nil); end + + sig do + override + .returns( + { + source: T.any( + OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::FileContent, + OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::FileID, + OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::Responses + ), + type: OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Type::OrSymbol, + input_messages: T.any( + OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template, + OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::ItemReference + ), + model: String, + sampling_params: OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::SamplingParams + } + ) + end + def to_hash; end + + # A EvalResponsesSource object describing a run data source configuration. + module Source + extend OpenAI::Internal::Type::Union + + class FileContent < OpenAI::Internal::Type::BaseModel + # The content of the jsonl file. + sig do + returns( + T::Array[ + OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::FileContent::Content + ] + ) + end + attr_accessor :content + + # The type of jsonl source. Always `file_content`. + sig { returns(Symbol) } + attr_accessor :type + + sig do + params( + content: T::Array[ + T.any( + OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::FileContent::Content, + OpenAI::Internal::AnyHash + ) + ], + type: Symbol + ) + .returns(T.attached_class) + end + def self.new(content:, type: :file_content); end + + sig do + override + .returns( + { + content: T::Array[ + OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::FileContent::Content + ], + type: Symbol + } + ) + end + def to_hash; end + + class Content < OpenAI::Internal::Type::BaseModel + sig { returns(T::Hash[Symbol, T.anything]) } + attr_accessor :item + + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } + attr_reader :sample + + sig { params(sample: T::Hash[Symbol, T.anything]).void } + attr_writer :sample + + sig do + params( + item: T::Hash[Symbol, T.anything], + sample: T::Hash[Symbol, + T.anything] + ).returns(T.attached_class) + end + def self.new(item:, sample: nil); end + + sig do + override.returns({item: T::Hash[Symbol, T.anything], sample: T::Hash[Symbol, T.anything]}) + end + def to_hash; end + end + end + + class FileID < OpenAI::Internal::Type::BaseModel + # The identifier of the file. + sig { returns(String) } + attr_accessor :id + + # The type of jsonl source. Always `file_id`. + sig { returns(Symbol) } + attr_accessor :type + + sig { params(id: String, type: Symbol).returns(T.attached_class) } + def self.new(id:, type: :file_id); end + + sig { override.returns({id: String, type: Symbol}) } + def to_hash; end + end + + class Responses < OpenAI::Internal::Type::BaseModel + # The type of run data source. Always `responses`. + sig { returns(Symbol) } + attr_accessor :type + + # Whether to allow parallel tool calls. This is a query parameter used to select + # responses. + sig { returns(T.nilable(T::Boolean)) } + attr_accessor :allow_parallel_tool_calls + + # Only include items created after this timestamp (inclusive). This is a query + # parameter used to select responses. + sig { returns(T.nilable(Integer)) } + attr_accessor :created_after + + # Only include items created before this timestamp (inclusive). This is a query + # parameter used to select responses. + sig { returns(T.nilable(Integer)) } + attr_accessor :created_before + + # Whether the response has tool calls. This is a query parameter used to select + # responses. + sig { returns(T.nilable(T::Boolean)) } + attr_accessor :has_tool_calls + + # Optional search string for instructions. This is a query parameter used to + # select responses. + sig { returns(T.nilable(String)) } + attr_accessor :instructions_search + + # Metadata filter for the responses. This is a query parameter used to select + # responses. + sig { returns(T.nilable(T.anything)) } + attr_accessor :metadata + + # The name of the model to find responses for. This is a query parameter used to + # select responses. + sig { returns(T.nilable(String)) } + attr_accessor :model + + # Optional reasoning effort parameter. This is a query parameter used to select + # responses. + sig { returns(T.nilable(OpenAI::Models::ReasoningEffort::OrSymbol)) } + attr_accessor :reasoning_effort + + # Sampling temperature. This is a query parameter used to select responses. + sig { returns(T.nilable(Float)) } + attr_accessor :temperature + + # Nucleus sampling parameter. This is a query parameter used to select responses. + sig { returns(T.nilable(Float)) } + attr_accessor :top_p + + # List of user identifiers. This is a query parameter used to select responses. + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :users + + # A EvalResponsesSource object describing a run data source configuration. + sig do + params( + allow_parallel_tool_calls: T.nilable(T::Boolean), + created_after: T.nilable(Integer), + created_before: T.nilable(Integer), + has_tool_calls: T.nilable(T::Boolean), + instructions_search: T.nilable(String), + metadata: T.nilable(T.anything), + model: T.nilable(String), + reasoning_effort: T.nilable(OpenAI::Models::ReasoningEffort::OrSymbol), + temperature: T.nilable(Float), + top_p: T.nilable(Float), + users: T.nilable(T::Array[String]), + type: Symbol + ) + .returns(T.attached_class) + end + def self.new( + allow_parallel_tool_calls: nil, + created_after: nil, + created_before: nil, + has_tool_calls: nil, + instructions_search: nil, + metadata: nil, + model: nil, + reasoning_effort: nil, + temperature: nil, + top_p: nil, + users: nil, + type: :responses + ); end + sig do + override + .returns( + { + type: Symbol, + allow_parallel_tool_calls: T.nilable(T::Boolean), + created_after: T.nilable(Integer), + created_before: T.nilable(Integer), + has_tool_calls: T.nilable(T::Boolean), + instructions_search: T.nilable(String), + metadata: T.nilable(T.anything), + model: T.nilable(String), + reasoning_effort: T.nilable(OpenAI::Models::ReasoningEffort::OrSymbol), + temperature: T.nilable(Float), + top_p: T.nilable(Float), + users: T.nilable(T::Array[String]) + } + ) + end + def to_hash; end + end + + sig do + override + .returns( + [OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::FileContent, OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::FileID, OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::Responses] + ) + end + def self.variants; end + end + + # The type of run data source. Always `completions`. + module Type + extend OpenAI::Internal::Type::Enum + + TaggedSymbol = + T.type_alias { T.all(Symbol, OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Type) } + OrSymbol = T.type_alias { T.any(Symbol, String) } + + COMPLETIONS = + T.let( + :completions, + OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Type::TaggedSymbol + ) + + sig do + override + .returns( + T::Array[OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Type::TaggedSymbol] + ) + end + def self.values; end + end + + module InputMessages + extend OpenAI::Internal::Type::Union + + class Template < OpenAI::Internal::Type::BaseModel + # A list of chat messages forming the prompt or context. May include variable + # references to the "item" namespace, ie {{item.name}}. + sig do + returns( + T::Array[ + T.any( + OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::ChatMessage, + OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem + ) + ] + ) + end + attr_accessor :template + + # The type of input messages. Always `template`. + sig { returns(Symbol) } + attr_accessor :type + + sig do + params( + template: T::Array[ + T.any( + OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::ChatMessage, + OpenAI::Internal::AnyHash, + OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem + ) + ], + type: Symbol + ) + .returns(T.attached_class) + end + def self.new(template:, type: :template); end + + sig do + override + .returns( + { + template: T::Array[ + T.any( + OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::ChatMessage, + OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem + ) + ], + type: Symbol + } + ) + end + def to_hash; end + + # A message input to the model with a role indicating instruction following + # hierarchy. Instructions given with the `developer` or `system` role take + # precedence over instructions given with the `user` role. Messages with the + # `assistant` role are presumed to have been generated by the model in previous + # interactions. + module Template + extend OpenAI::Internal::Type::Union + + class ChatMessage < OpenAI::Internal::Type::BaseModel + # The content of the message. + sig { returns(String) } + attr_accessor :content + + # The role of the message (e.g. "system", "assistant", "user"). + sig { returns(String) } + attr_accessor :role + + sig { params(content: String, role: String).returns(T.attached_class) } + def self.new(content:, role:); end + + sig { override.returns({content: String, role: String}) } + def to_hash; end + end + + class EvalItem < OpenAI::Internal::Type::BaseModel + # Text inputs to the model - can contain template strings. + sig do + returns( + T.any( + String, + OpenAI::Models::Responses::ResponseInputText, + OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::Content::OutputText + ) + ) + end + attr_accessor :content + + # The role of the message input. One of `user`, `assistant`, `system`, or + # `developer`. + sig do + returns( + OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::Role::OrSymbol + ) + end + attr_accessor :role + + # The type of the message input. Always `message`. + sig do + returns( + T.nilable( + OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::Type::OrSymbol + ) + ) + end + attr_reader :type + + sig do + params( + type: OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::Type::OrSymbol + ) + .void + end + attr_writer :type + + # A message input to the model with a role indicating instruction following + # hierarchy. Instructions given with the `developer` or `system` role take + # precedence over instructions given with the `user` role. Messages with the + # `assistant` role are presumed to have been generated by the model in previous + # interactions. + sig do + params( + content: T.any( + String, + OpenAI::Models::Responses::ResponseInputText, + OpenAI::Internal::AnyHash, + OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::Content::OutputText + ), + role: OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::Role::OrSymbol, + type: OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::Type::OrSymbol + ) + .returns(T.attached_class) + end + def self.new(content:, role:, type: nil); end + + sig do + override + .returns( + { + content: T.any( + String, + OpenAI::Models::Responses::ResponseInputText, + OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::Content::OutputText + ), + role: OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::Role::OrSymbol, + type: OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::Type::OrSymbol + } + ) + end + def to_hash; end + + # Text inputs to the model - can contain template strings. + module Content + extend OpenAI::Internal::Type::Union + + class OutputText < OpenAI::Internal::Type::BaseModel + # The text output from the model. + sig { returns(String) } + attr_accessor :text + + # The type of the output text. Always `output_text`. + sig { returns(Symbol) } + attr_accessor :type + + # A text output from the model. + sig { params(text: String, type: Symbol).returns(T.attached_class) } + def self.new(text:, type: :output_text); end + + sig { override.returns({text: String, type: Symbol}) } + def to_hash; end + end + + sig do + override + .returns( + [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::Content::OutputText] + ) + end + def self.variants; end + end + + # The role of the message input. One of `user`, `assistant`, `system`, or + # `developer`. + module Role + extend OpenAI::Internal::Type::Enum + + TaggedSymbol = + T.type_alias do + T.all(Symbol, OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::Role) + end + OrSymbol = T.type_alias { T.any(Symbol, String) } + + USER = + T.let( + :user, + OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::Role::TaggedSymbol + ) + ASSISTANT = + T.let( + :assistant, + OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::Role::TaggedSymbol + ) + SYSTEM = + T.let( + :system, + OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::Role::TaggedSymbol + ) + DEVELOPER = + T.let( + :developer, + OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::Role::TaggedSymbol + ) + + sig do + override + .returns( + T::Array[ + OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::Role::TaggedSymbol + ] + ) + end + def self.values; end + end + + # The type of the message input. Always `message`. + module Type + extend OpenAI::Internal::Type::Enum + + TaggedSymbol = + T.type_alias do + T.all(Symbol, OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::Type) + end + OrSymbol = T.type_alias { T.any(Symbol, String) } + + MESSAGE = + T.let( + :message, + OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::Type::TaggedSymbol + ) + + sig do + override + .returns( + T::Array[ + OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::Type::TaggedSymbol + ] + ) + end + def self.values; end + end + end + + sig do + override + .returns( + [OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::ChatMessage, OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem] + ) + end + def self.variants; end + end + end + + class ItemReference < OpenAI::Internal::Type::BaseModel + # A reference to a variable in the "item" namespace. Ie, "item.name" + sig { returns(String) } + attr_accessor :item_reference + + # The type of input messages. Always `item_reference`. + sig { returns(Symbol) } + attr_accessor :type + + sig { params(item_reference: String, type: Symbol).returns(T.attached_class) } + def self.new(item_reference:, type: :item_reference); end + + sig { override.returns({item_reference: String, type: Symbol}) } + def to_hash; end + end + + sig do + override + .returns( + [OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template, OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::ItemReference] + ) + end + def self.variants; end + end + + class SamplingParams < OpenAI::Internal::Type::BaseModel + # The maximum number of tokens in the generated output. + sig { returns(T.nilable(Integer)) } + attr_reader :max_completion_tokens + + sig { params(max_completion_tokens: Integer).void } + attr_writer :max_completion_tokens + + # A seed value to initialize the randomness, during sampling. + sig { returns(T.nilable(Integer)) } + attr_reader :seed + + sig { params(seed: Integer).void } + attr_writer :seed + + # A higher temperature increases randomness in the outputs. + sig { returns(T.nilable(Float)) } + attr_reader :temperature + + sig { params(temperature: Float).void } + attr_writer :temperature + + # An alternative to temperature for nucleus sampling; 1.0 includes all tokens. + sig { returns(T.nilable(Float)) } + attr_reader :top_p + + sig { params(top_p: Float).void } + attr_writer :top_p + + sig do + params(max_completion_tokens: Integer, seed: Integer, temperature: Float, top_p: Float) + .returns(T.attached_class) + end + def self.new(max_completion_tokens: nil, seed: nil, temperature: nil, top_p: nil); end + + sig do + override.returns( + { + max_completion_tokens: Integer, + seed: Integer, + temperature: Float, + top_p: Float + } + ) + end + def to_hash; end + end + end + sig do override .returns( - [OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource] + [OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource, OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource] ) end def self.variants; end diff --git a/rbi/lib/openai/models/evals/run_create_response.rbi b/rbi/lib/openai/models/evals/run_create_response.rbi index 8999012b..40364127 100644 --- a/rbi/lib/openai/models/evals/run_create_response.rbi +++ b/rbi/lib/openai/models/evals/run_create_response.rbi @@ -17,7 +17,8 @@ module OpenAI returns( T.any( OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource + OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource, + OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions ) ) end @@ -91,7 +92,8 @@ module OpenAI data_source: T.any( OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, OpenAI::Internal::AnyHash, - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource + OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource, + OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions ), error: T.any(OpenAI::Models::Evals::EvalAPIError, OpenAI::Internal::AnyHash), eval_id: String, @@ -131,7 +133,8 @@ module OpenAI created_at: Integer, data_source: T.any( OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource + OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource, + OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions ), error: OpenAI::Models::Evals::EvalAPIError, eval_id: String, @@ -153,10 +156,661 @@ module OpenAI module DataSource extend OpenAI::Internal::Type::Union + class Completions < OpenAI::Internal::Type::BaseModel + # A EvalResponsesSource object describing a run data source configuration. + sig do + returns( + T.any( + OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::Source::FileContent, + OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::Source::FileID, + OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::Source::Responses + ) + ) + end + attr_accessor :source + + # The type of run data source. Always `completions`. + sig { returns(Symbol) } + attr_accessor :type + + sig do + returns( + T.nilable( + T.any( + OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template, + OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::ItemReference + ) + ) + ) + end + attr_reader :input_messages + + sig do + params( + input_messages: T.any( + OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template, + OpenAI::Internal::AnyHash, + OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::ItemReference + ) + ) + .void + end + attr_writer :input_messages + + # The name of the model to use for generating completions (e.g. "o3-mini"). + sig { returns(T.nilable(String)) } + attr_reader :model + + sig { params(model: String).void } + attr_writer :model + + sig { returns(T.nilable(OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::SamplingParams)) } + attr_reader :sampling_params + + sig do + params( + sampling_params: T.any( + OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::SamplingParams, + OpenAI::Internal::AnyHash + ) + ) + .void + end + attr_writer :sampling_params + + # A ResponsesRunDataSource object describing a model sampling configuration. + sig do + params( + source: T.any( + OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::Source::FileContent, + OpenAI::Internal::AnyHash, + OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::Source::FileID, + OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::Source::Responses + ), + input_messages: T.any( + OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template, + OpenAI::Internal::AnyHash, + OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::ItemReference + ), + model: String, + sampling_params: T.any( + OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::SamplingParams, + OpenAI::Internal::AnyHash + ), + type: Symbol + ) + .returns(T.attached_class) + end + def self.new(source:, input_messages: nil, model: nil, sampling_params: nil, type: :completions) + end + + sig do + override + .returns( + { + source: T.any( + OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::Source::FileContent, + OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::Source::FileID, + OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::Source::Responses + ), + type: Symbol, + input_messages: T.any( + OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template, + OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::ItemReference + ), + model: String, + sampling_params: OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::SamplingParams + } + ) + end + def to_hash; end + + # A EvalResponsesSource object describing a run data source configuration. + module Source + extend OpenAI::Internal::Type::Union + + class FileContent < OpenAI::Internal::Type::BaseModel + # The content of the jsonl file. + sig do + returns( + T::Array[OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::Source::FileContent::Content] + ) + end + attr_accessor :content + + # The type of jsonl source. Always `file_content`. + sig { returns(Symbol) } + attr_accessor :type + + sig do + params( + content: T::Array[ + T.any( + OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::Source::FileContent::Content, + OpenAI::Internal::AnyHash + ) + ], + type: Symbol + ) + .returns(T.attached_class) + end + def self.new(content:, type: :file_content); end + + sig do + override + .returns( + { + content: T::Array[OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::Source::FileContent::Content], + type: Symbol + } + ) + end + def to_hash; end + + class Content < OpenAI::Internal::Type::BaseModel + sig { returns(T::Hash[Symbol, T.anything]) } + attr_accessor :item + + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } + attr_reader :sample + + sig { params(sample: T::Hash[Symbol, T.anything]).void } + attr_writer :sample + + sig do + params( + item: T::Hash[Symbol, T.anything], + sample: T::Hash[Symbol, + T.anything] + ).returns(T.attached_class) + end + def self.new(item:, sample: nil); end + + sig do + override.returns({item: T::Hash[Symbol, T.anything], sample: T::Hash[Symbol, T.anything]}) + end + def to_hash; end + end + end + + class FileID < OpenAI::Internal::Type::BaseModel + # The identifier of the file. + sig { returns(String) } + attr_accessor :id + + # The type of jsonl source. Always `file_id`. + sig { returns(Symbol) } + attr_accessor :type + + sig { params(id: String, type: Symbol).returns(T.attached_class) } + def self.new(id:, type: :file_id); end + + sig { override.returns({id: String, type: Symbol}) } + def to_hash; end + end + + class Responses < OpenAI::Internal::Type::BaseModel + # The type of run data source. Always `responses`. + sig { returns(Symbol) } + attr_accessor :type + + # Whether to allow parallel tool calls. This is a query parameter used to select + # responses. + sig { returns(T.nilable(T::Boolean)) } + attr_accessor :allow_parallel_tool_calls + + # Only include items created after this timestamp (inclusive). This is a query + # parameter used to select responses. + sig { returns(T.nilable(Integer)) } + attr_accessor :created_after + + # Only include items created before this timestamp (inclusive). This is a query + # parameter used to select responses. + sig { returns(T.nilable(Integer)) } + attr_accessor :created_before + + # Whether the response has tool calls. This is a query parameter used to select + # responses. + sig { returns(T.nilable(T::Boolean)) } + attr_accessor :has_tool_calls + + # Optional search string for instructions. This is a query parameter used to + # select responses. + sig { returns(T.nilable(String)) } + attr_accessor :instructions_search + + # Metadata filter for the responses. This is a query parameter used to select + # responses. + sig { returns(T.nilable(T.anything)) } + attr_accessor :metadata + + # The name of the model to find responses for. This is a query parameter used to + # select responses. + sig { returns(T.nilable(String)) } + attr_accessor :model + + # Optional reasoning effort parameter. This is a query parameter used to select + # responses. + sig { returns(T.nilable(OpenAI::Models::ReasoningEffort::TaggedSymbol)) } + attr_accessor :reasoning_effort + + # Sampling temperature. This is a query parameter used to select responses. + sig { returns(T.nilable(Float)) } + attr_accessor :temperature + + # Nucleus sampling parameter. This is a query parameter used to select responses. + sig { returns(T.nilable(Float)) } + attr_accessor :top_p + + # List of user identifiers. This is a query parameter used to select responses. + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :users + + # A EvalResponsesSource object describing a run data source configuration. + sig do + params( + allow_parallel_tool_calls: T.nilable(T::Boolean), + created_after: T.nilable(Integer), + created_before: T.nilable(Integer), + has_tool_calls: T.nilable(T::Boolean), + instructions_search: T.nilable(String), + metadata: T.nilable(T.anything), + model: T.nilable(String), + reasoning_effort: T.nilable(OpenAI::Models::ReasoningEffort::OrSymbol), + temperature: T.nilable(Float), + top_p: T.nilable(Float), + users: T.nilable(T::Array[String]), + type: Symbol + ) + .returns(T.attached_class) + end + def self.new( + allow_parallel_tool_calls: nil, + created_after: nil, + created_before: nil, + has_tool_calls: nil, + instructions_search: nil, + metadata: nil, + model: nil, + reasoning_effort: nil, + temperature: nil, + top_p: nil, + users: nil, + type: :responses + ); end + sig do + override + .returns( + { + type: Symbol, + allow_parallel_tool_calls: T.nilable(T::Boolean), + created_after: T.nilable(Integer), + created_before: T.nilable(Integer), + has_tool_calls: T.nilable(T::Boolean), + instructions_search: T.nilable(String), + metadata: T.nilable(T.anything), + model: T.nilable(String), + reasoning_effort: T.nilable(OpenAI::Models::ReasoningEffort::TaggedSymbol), + temperature: T.nilable(Float), + top_p: T.nilable(Float), + users: T.nilable(T::Array[String]) + } + ) + end + def to_hash; end + end + + sig do + override + .returns( + [OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::Source::FileContent, OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::Source::FileID, OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::Source::Responses] + ) + end + def self.variants; end + end + + module InputMessages + extend OpenAI::Internal::Type::Union + + class Template < OpenAI::Internal::Type::BaseModel + # A list of chat messages forming the prompt or context. May include variable + # references to the "item" namespace, ie {{item.name}}. + sig do + returns( + T::Array[ + T.any( + OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::ChatMessage, + OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem + ) + ] + ) + end + attr_accessor :template + + # The type of input messages. Always `template`. + sig { returns(Symbol) } + attr_accessor :type + + sig do + params( + template: T::Array[ + T.any( + OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::ChatMessage, + OpenAI::Internal::AnyHash, + OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem + ) + ], + type: Symbol + ) + .returns(T.attached_class) + end + def self.new(template:, type: :template); end + + sig do + override + .returns( + { + template: T::Array[ + T.any( + OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::ChatMessage, + OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem + ) + ], + type: Symbol + } + ) + end + def to_hash; end + + # A message input to the model with a role indicating instruction following + # hierarchy. Instructions given with the `developer` or `system` role take + # precedence over instructions given with the `user` role. Messages with the + # `assistant` role are presumed to have been generated by the model in previous + # interactions. + module Template + extend OpenAI::Internal::Type::Union + + class ChatMessage < OpenAI::Internal::Type::BaseModel + # The content of the message. + sig { returns(String) } + attr_accessor :content + + # The role of the message (e.g. "system", "assistant", "user"). + sig { returns(String) } + attr_accessor :role + + sig { params(content: String, role: String).returns(T.attached_class) } + def self.new(content:, role:); end + + sig { override.returns({content: String, role: String}) } + def to_hash; end + end + + class EvalItem < OpenAI::Internal::Type::BaseModel + # Text inputs to the model - can contain template strings. + sig do + returns( + T.any( + String, + OpenAI::Models::Responses::ResponseInputText, + OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText + ) + ) + end + attr_accessor :content + + # The role of the message input. One of `user`, `assistant`, `system`, or + # `developer`. + sig do + returns( + OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Role::TaggedSymbol + ) + end + attr_accessor :role + + # The type of the message input. Always `message`. + sig do + returns( + T.nilable( + OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Type::TaggedSymbol + ) + ) + end + attr_reader :type + + sig do + params( + type: OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Type::OrSymbol + ) + .void + end + attr_writer :type + + # A message input to the model with a role indicating instruction following + # hierarchy. Instructions given with the `developer` or `system` role take + # precedence over instructions given with the `user` role. Messages with the + # `assistant` role are presumed to have been generated by the model in previous + # interactions. + sig do + params( + content: T.any( + String, + OpenAI::Models::Responses::ResponseInputText, + OpenAI::Internal::AnyHash, + OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText + ), + role: OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Role::OrSymbol, + type: OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Type::OrSymbol + ) + .returns(T.attached_class) + end + def self.new(content:, role:, type: nil); end + + sig do + override + .returns( + { + content: T.any( + String, + OpenAI::Models::Responses::ResponseInputText, + OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText + ), + role: OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Role::TaggedSymbol, + type: OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Type::TaggedSymbol + } + ) + end + def to_hash; end + + # Text inputs to the model - can contain template strings. + module Content + extend OpenAI::Internal::Type::Union + + class OutputText < OpenAI::Internal::Type::BaseModel + # The text output from the model. + sig { returns(String) } + attr_accessor :text + + # The type of the output text. Always `output_text`. + sig { returns(Symbol) } + attr_accessor :type + + # A text output from the model. + sig { params(text: String, type: Symbol).returns(T.attached_class) } + def self.new(text:, type: :output_text); end + + sig { override.returns({text: String, type: Symbol}) } + def to_hash; end + end + + sig do + override + .returns( + [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText] + ) + end + def self.variants; end + end + + # The role of the message input. One of `user`, `assistant`, `system`, or + # `developer`. + module Role + extend OpenAI::Internal::Type::Enum + + TaggedSymbol = + T.type_alias do + T.all(Symbol, OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Role) + end + OrSymbol = T.type_alias { T.any(Symbol, String) } + + USER = + T.let( + :user, + OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Role::TaggedSymbol + ) + ASSISTANT = + T.let( + :assistant, + OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Role::TaggedSymbol + ) + SYSTEM = + T.let( + :system, + OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Role::TaggedSymbol + ) + DEVELOPER = + T.let( + :developer, + OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Role::TaggedSymbol + ) + + sig do + override + .returns( + T::Array[ + OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Role::TaggedSymbol + ] + ) + end + def self.values; end + end + + # The type of the message input. Always `message`. + module Type + extend OpenAI::Internal::Type::Enum + + TaggedSymbol = + T.type_alias do + T.all(Symbol, OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Type) + end + OrSymbol = T.type_alias { T.any(Symbol, String) } + + MESSAGE = + T.let( + :message, + OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Type::TaggedSymbol + ) + + sig do + override + .returns( + T::Array[ + OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Type::TaggedSymbol + ] + ) + end + def self.values; end + end + end + + sig do + override + .returns( + [OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::ChatMessage, OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem] + ) + end + def self.variants; end + end + end + + class ItemReference < OpenAI::Internal::Type::BaseModel + # A reference to a variable in the "item" namespace. Ie, "item.name" + sig { returns(String) } + attr_accessor :item_reference + + # The type of input messages. Always `item_reference`. + sig { returns(Symbol) } + attr_accessor :type + + sig { params(item_reference: String, type: Symbol).returns(T.attached_class) } + def self.new(item_reference:, type: :item_reference); end + + sig { override.returns({item_reference: String, type: Symbol}) } + def to_hash; end + end + + sig do + override + .returns( + [OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template, OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::ItemReference] + ) + end + def self.variants; end + end + + class SamplingParams < OpenAI::Internal::Type::BaseModel + # The maximum number of tokens in the generated output. + sig { returns(T.nilable(Integer)) } + attr_reader :max_completion_tokens + + sig { params(max_completion_tokens: Integer).void } + attr_writer :max_completion_tokens + + # A seed value to initialize the randomness, during sampling. + sig { returns(T.nilable(Integer)) } + attr_reader :seed + + sig { params(seed: Integer).void } + attr_writer :seed + + # A higher temperature increases randomness in the outputs. + sig { returns(T.nilable(Float)) } + attr_reader :temperature + + sig { params(temperature: Float).void } + attr_writer :temperature + + # An alternative to temperature for nucleus sampling; 1.0 includes all tokens. + sig { returns(T.nilable(Float)) } + attr_reader :top_p + + sig { params(top_p: Float).void } + attr_writer :top_p + + sig do + params(max_completion_tokens: Integer, seed: Integer, temperature: Float, top_p: Float) + .returns(T.attached_class) + end + def self.new(max_completion_tokens: nil, seed: nil, temperature: nil, top_p: nil); end + + sig do + override.returns( + { + max_completion_tokens: Integer, + seed: Integer, + temperature: Float, + top_p: Float + } + ) + end + def to_hash; end + end + end + sig do override .returns( - [OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource] + [OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource, OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions] ) end def self.variants; end diff --git a/rbi/lib/openai/models/evals/run_list_params.rbi b/rbi/lib/openai/models/evals/run_list_params.rbi index 5e68c583..c3cf6599 100644 --- a/rbi/lib/openai/models/evals/run_list_params.rbi +++ b/rbi/lib/openai/models/evals/run_list_params.rbi @@ -29,8 +29,8 @@ module OpenAI sig { params(order: OpenAI::Models::Evals::RunListParams::Order::OrSymbol).void } attr_writer :order - # Filter runs by status. Use "queued" | "in_progress" | "failed" | "completed" | - # "canceled". + # Filter runs by status. One of `queued` | `in_progress` | `failed` | `completed` + # | `canceled`. sig { returns(T.nilable(OpenAI::Models::Evals::RunListParams::Status::OrSymbol)) } attr_reader :status @@ -78,8 +78,8 @@ module OpenAI def self.values; end end - # Filter runs by status. Use "queued" | "in_progress" | "failed" | "completed" | - # "canceled". + # Filter runs by status. One of `queued` | `in_progress` | `failed` | `completed` + # | `canceled`. module Status extend OpenAI::Internal::Type::Enum diff --git a/rbi/lib/openai/models/evals/run_list_response.rbi b/rbi/lib/openai/models/evals/run_list_response.rbi index 01e8f33b..f264782f 100644 --- a/rbi/lib/openai/models/evals/run_list_response.rbi +++ b/rbi/lib/openai/models/evals/run_list_response.rbi @@ -17,7 +17,8 @@ module OpenAI returns( T.any( OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource + OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource, + OpenAI::Models::Evals::RunListResponse::DataSource::Completions ) ) end @@ -91,7 +92,8 @@ module OpenAI data_source: T.any( OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, OpenAI::Internal::AnyHash, - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource + OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource, + OpenAI::Models::Evals::RunListResponse::DataSource::Completions ), error: T.any(OpenAI::Models::Evals::EvalAPIError, OpenAI::Internal::AnyHash), eval_id: String, @@ -131,7 +133,8 @@ module OpenAI created_at: Integer, data_source: T.any( OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource + OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource, + OpenAI::Models::Evals::RunListResponse::DataSource::Completions ), error: OpenAI::Models::Evals::EvalAPIError, eval_id: String, @@ -153,10 +156,661 @@ module OpenAI module DataSource extend OpenAI::Internal::Type::Union + class Completions < OpenAI::Internal::Type::BaseModel + # A EvalResponsesSource object describing a run data source configuration. + sig do + returns( + T.any( + OpenAI::Models::Evals::RunListResponse::DataSource::Completions::Source::FileContent, + OpenAI::Models::Evals::RunListResponse::DataSource::Completions::Source::FileID, + OpenAI::Models::Evals::RunListResponse::DataSource::Completions::Source::Responses + ) + ) + end + attr_accessor :source + + # The type of run data source. Always `completions`. + sig { returns(Symbol) } + attr_accessor :type + + sig do + returns( + T.nilable( + T.any( + OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template, + OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::ItemReference + ) + ) + ) + end + attr_reader :input_messages + + sig do + params( + input_messages: T.any( + OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template, + OpenAI::Internal::AnyHash, + OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::ItemReference + ) + ) + .void + end + attr_writer :input_messages + + # The name of the model to use for generating completions (e.g. "o3-mini"). + sig { returns(T.nilable(String)) } + attr_reader :model + + sig { params(model: String).void } + attr_writer :model + + sig { returns(T.nilable(OpenAI::Models::Evals::RunListResponse::DataSource::Completions::SamplingParams)) } + attr_reader :sampling_params + + sig do + params( + sampling_params: T.any( + OpenAI::Models::Evals::RunListResponse::DataSource::Completions::SamplingParams, + OpenAI::Internal::AnyHash + ) + ) + .void + end + attr_writer :sampling_params + + # A ResponsesRunDataSource object describing a model sampling configuration. + sig do + params( + source: T.any( + OpenAI::Models::Evals::RunListResponse::DataSource::Completions::Source::FileContent, + OpenAI::Internal::AnyHash, + OpenAI::Models::Evals::RunListResponse::DataSource::Completions::Source::FileID, + OpenAI::Models::Evals::RunListResponse::DataSource::Completions::Source::Responses + ), + input_messages: T.any( + OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template, + OpenAI::Internal::AnyHash, + OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::ItemReference + ), + model: String, + sampling_params: T.any( + OpenAI::Models::Evals::RunListResponse::DataSource::Completions::SamplingParams, + OpenAI::Internal::AnyHash + ), + type: Symbol + ) + .returns(T.attached_class) + end + def self.new(source:, input_messages: nil, model: nil, sampling_params: nil, type: :completions) + end + + sig do + override + .returns( + { + source: T.any( + OpenAI::Models::Evals::RunListResponse::DataSource::Completions::Source::FileContent, + OpenAI::Models::Evals::RunListResponse::DataSource::Completions::Source::FileID, + OpenAI::Models::Evals::RunListResponse::DataSource::Completions::Source::Responses + ), + type: Symbol, + input_messages: T.any( + OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template, + OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::ItemReference + ), + model: String, + sampling_params: OpenAI::Models::Evals::RunListResponse::DataSource::Completions::SamplingParams + } + ) + end + def to_hash; end + + # A EvalResponsesSource object describing a run data source configuration. + module Source + extend OpenAI::Internal::Type::Union + + class FileContent < OpenAI::Internal::Type::BaseModel + # The content of the jsonl file. + sig do + returns( + T::Array[OpenAI::Models::Evals::RunListResponse::DataSource::Completions::Source::FileContent::Content] + ) + end + attr_accessor :content + + # The type of jsonl source. Always `file_content`. + sig { returns(Symbol) } + attr_accessor :type + + sig do + params( + content: T::Array[ + T.any( + OpenAI::Models::Evals::RunListResponse::DataSource::Completions::Source::FileContent::Content, + OpenAI::Internal::AnyHash + ) + ], + type: Symbol + ) + .returns(T.attached_class) + end + def self.new(content:, type: :file_content); end + + sig do + override + .returns( + { + content: T::Array[OpenAI::Models::Evals::RunListResponse::DataSource::Completions::Source::FileContent::Content], + type: Symbol + } + ) + end + def to_hash; end + + class Content < OpenAI::Internal::Type::BaseModel + sig { returns(T::Hash[Symbol, T.anything]) } + attr_accessor :item + + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } + attr_reader :sample + + sig { params(sample: T::Hash[Symbol, T.anything]).void } + attr_writer :sample + + sig do + params( + item: T::Hash[Symbol, T.anything], + sample: T::Hash[Symbol, + T.anything] + ).returns(T.attached_class) + end + def self.new(item:, sample: nil); end + + sig do + override.returns({item: T::Hash[Symbol, T.anything], sample: T::Hash[Symbol, T.anything]}) + end + def to_hash; end + end + end + + class FileID < OpenAI::Internal::Type::BaseModel + # The identifier of the file. + sig { returns(String) } + attr_accessor :id + + # The type of jsonl source. Always `file_id`. + sig { returns(Symbol) } + attr_accessor :type + + sig { params(id: String, type: Symbol).returns(T.attached_class) } + def self.new(id:, type: :file_id); end + + sig { override.returns({id: String, type: Symbol}) } + def to_hash; end + end + + class Responses < OpenAI::Internal::Type::BaseModel + # The type of run data source. Always `responses`. + sig { returns(Symbol) } + attr_accessor :type + + # Whether to allow parallel tool calls. This is a query parameter used to select + # responses. + sig { returns(T.nilable(T::Boolean)) } + attr_accessor :allow_parallel_tool_calls + + # Only include items created after this timestamp (inclusive). This is a query + # parameter used to select responses. + sig { returns(T.nilable(Integer)) } + attr_accessor :created_after + + # Only include items created before this timestamp (inclusive). This is a query + # parameter used to select responses. + sig { returns(T.nilable(Integer)) } + attr_accessor :created_before + + # Whether the response has tool calls. This is a query parameter used to select + # responses. + sig { returns(T.nilable(T::Boolean)) } + attr_accessor :has_tool_calls + + # Optional search string for instructions. This is a query parameter used to + # select responses. + sig { returns(T.nilable(String)) } + attr_accessor :instructions_search + + # Metadata filter for the responses. This is a query parameter used to select + # responses. + sig { returns(T.nilable(T.anything)) } + attr_accessor :metadata + + # The name of the model to find responses for. This is a query parameter used to + # select responses. + sig { returns(T.nilable(String)) } + attr_accessor :model + + # Optional reasoning effort parameter. This is a query parameter used to select + # responses. + sig { returns(T.nilable(OpenAI::Models::ReasoningEffort::TaggedSymbol)) } + attr_accessor :reasoning_effort + + # Sampling temperature. This is a query parameter used to select responses. + sig { returns(T.nilable(Float)) } + attr_accessor :temperature + + # Nucleus sampling parameter. This is a query parameter used to select responses. + sig { returns(T.nilable(Float)) } + attr_accessor :top_p + + # List of user identifiers. This is a query parameter used to select responses. + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :users + + # A EvalResponsesSource object describing a run data source configuration. + sig do + params( + allow_parallel_tool_calls: T.nilable(T::Boolean), + created_after: T.nilable(Integer), + created_before: T.nilable(Integer), + has_tool_calls: T.nilable(T::Boolean), + instructions_search: T.nilable(String), + metadata: T.nilable(T.anything), + model: T.nilable(String), + reasoning_effort: T.nilable(OpenAI::Models::ReasoningEffort::OrSymbol), + temperature: T.nilable(Float), + top_p: T.nilable(Float), + users: T.nilable(T::Array[String]), + type: Symbol + ) + .returns(T.attached_class) + end + def self.new( + allow_parallel_tool_calls: nil, + created_after: nil, + created_before: nil, + has_tool_calls: nil, + instructions_search: nil, + metadata: nil, + model: nil, + reasoning_effort: nil, + temperature: nil, + top_p: nil, + users: nil, + type: :responses + ); end + sig do + override + .returns( + { + type: Symbol, + allow_parallel_tool_calls: T.nilable(T::Boolean), + created_after: T.nilable(Integer), + created_before: T.nilable(Integer), + has_tool_calls: T.nilable(T::Boolean), + instructions_search: T.nilable(String), + metadata: T.nilable(T.anything), + model: T.nilable(String), + reasoning_effort: T.nilable(OpenAI::Models::ReasoningEffort::TaggedSymbol), + temperature: T.nilable(Float), + top_p: T.nilable(Float), + users: T.nilable(T::Array[String]) + } + ) + end + def to_hash; end + end + + sig do + override + .returns( + [OpenAI::Models::Evals::RunListResponse::DataSource::Completions::Source::FileContent, OpenAI::Models::Evals::RunListResponse::DataSource::Completions::Source::FileID, OpenAI::Models::Evals::RunListResponse::DataSource::Completions::Source::Responses] + ) + end + def self.variants; end + end + + module InputMessages + extend OpenAI::Internal::Type::Union + + class Template < OpenAI::Internal::Type::BaseModel + # A list of chat messages forming the prompt or context. May include variable + # references to the "item" namespace, ie {{item.name}}. + sig do + returns( + T::Array[ + T.any( + OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::ChatMessage, + OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem + ) + ] + ) + end + attr_accessor :template + + # The type of input messages. Always `template`. + sig { returns(Symbol) } + attr_accessor :type + + sig do + params( + template: T::Array[ + T.any( + OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::ChatMessage, + OpenAI::Internal::AnyHash, + OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem + ) + ], + type: Symbol + ) + .returns(T.attached_class) + end + def self.new(template:, type: :template); end + + sig do + override + .returns( + { + template: T::Array[ + T.any( + OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::ChatMessage, + OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem + ) + ], + type: Symbol + } + ) + end + def to_hash; end + + # A message input to the model with a role indicating instruction following + # hierarchy. Instructions given with the `developer` or `system` role take + # precedence over instructions given with the `user` role. Messages with the + # `assistant` role are presumed to have been generated by the model in previous + # interactions. + module Template + extend OpenAI::Internal::Type::Union + + class ChatMessage < OpenAI::Internal::Type::BaseModel + # The content of the message. + sig { returns(String) } + attr_accessor :content + + # The role of the message (e.g. "system", "assistant", "user"). + sig { returns(String) } + attr_accessor :role + + sig { params(content: String, role: String).returns(T.attached_class) } + def self.new(content:, role:); end + + sig { override.returns({content: String, role: String}) } + def to_hash; end + end + + class EvalItem < OpenAI::Internal::Type::BaseModel + # Text inputs to the model - can contain template strings. + sig do + returns( + T.any( + String, + OpenAI::Models::Responses::ResponseInputText, + OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText + ) + ) + end + attr_accessor :content + + # The role of the message input. One of `user`, `assistant`, `system`, or + # `developer`. + sig do + returns( + OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Role::TaggedSymbol + ) + end + attr_accessor :role + + # The type of the message input. Always `message`. + sig do + returns( + T.nilable( + OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Type::TaggedSymbol + ) + ) + end + attr_reader :type + + sig do + params( + type: OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Type::OrSymbol + ) + .void + end + attr_writer :type + + # A message input to the model with a role indicating instruction following + # hierarchy. Instructions given with the `developer` or `system` role take + # precedence over instructions given with the `user` role. Messages with the + # `assistant` role are presumed to have been generated by the model in previous + # interactions. + sig do + params( + content: T.any( + String, + OpenAI::Models::Responses::ResponseInputText, + OpenAI::Internal::AnyHash, + OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText + ), + role: OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Role::OrSymbol, + type: OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Type::OrSymbol + ) + .returns(T.attached_class) + end + def self.new(content:, role:, type: nil); end + + sig do + override + .returns( + { + content: T.any( + String, + OpenAI::Models::Responses::ResponseInputText, + OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText + ), + role: OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Role::TaggedSymbol, + type: OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Type::TaggedSymbol + } + ) + end + def to_hash; end + + # Text inputs to the model - can contain template strings. + module Content + extend OpenAI::Internal::Type::Union + + class OutputText < OpenAI::Internal::Type::BaseModel + # The text output from the model. + sig { returns(String) } + attr_accessor :text + + # The type of the output text. Always `output_text`. + sig { returns(Symbol) } + attr_accessor :type + + # A text output from the model. + sig { params(text: String, type: Symbol).returns(T.attached_class) } + def self.new(text:, type: :output_text); end + + sig { override.returns({text: String, type: Symbol}) } + def to_hash; end + end + + sig do + override + .returns( + [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText] + ) + end + def self.variants; end + end + + # The role of the message input. One of `user`, `assistant`, `system`, or + # `developer`. + module Role + extend OpenAI::Internal::Type::Enum + + TaggedSymbol = + T.type_alias do + T.all(Symbol, OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Role) + end + OrSymbol = T.type_alias { T.any(Symbol, String) } + + USER = + T.let( + :user, + OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Role::TaggedSymbol + ) + ASSISTANT = + T.let( + :assistant, + OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Role::TaggedSymbol + ) + SYSTEM = + T.let( + :system, + OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Role::TaggedSymbol + ) + DEVELOPER = + T.let( + :developer, + OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Role::TaggedSymbol + ) + + sig do + override + .returns( + T::Array[ + OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Role::TaggedSymbol + ] + ) + end + def self.values; end + end + + # The type of the message input. Always `message`. + module Type + extend OpenAI::Internal::Type::Enum + + TaggedSymbol = + T.type_alias do + T.all(Symbol, OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Type) + end + OrSymbol = T.type_alias { T.any(Symbol, String) } + + MESSAGE = + T.let( + :message, + OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Type::TaggedSymbol + ) + + sig do + override + .returns( + T::Array[ + OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Type::TaggedSymbol + ] + ) + end + def self.values; end + end + end + + sig do + override + .returns( + [OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::ChatMessage, OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem] + ) + end + def self.variants; end + end + end + + class ItemReference < OpenAI::Internal::Type::BaseModel + # A reference to a variable in the "item" namespace. Ie, "item.name" + sig { returns(String) } + attr_accessor :item_reference + + # The type of input messages. Always `item_reference`. + sig { returns(Symbol) } + attr_accessor :type + + sig { params(item_reference: String, type: Symbol).returns(T.attached_class) } + def self.new(item_reference:, type: :item_reference); end + + sig { override.returns({item_reference: String, type: Symbol}) } + def to_hash; end + end + + sig do + override + .returns( + [OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template, OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::ItemReference] + ) + end + def self.variants; end + end + + class SamplingParams < OpenAI::Internal::Type::BaseModel + # The maximum number of tokens in the generated output. + sig { returns(T.nilable(Integer)) } + attr_reader :max_completion_tokens + + sig { params(max_completion_tokens: Integer).void } + attr_writer :max_completion_tokens + + # A seed value to initialize the randomness, during sampling. + sig { returns(T.nilable(Integer)) } + attr_reader :seed + + sig { params(seed: Integer).void } + attr_writer :seed + + # A higher temperature increases randomness in the outputs. + sig { returns(T.nilable(Float)) } + attr_reader :temperature + + sig { params(temperature: Float).void } + attr_writer :temperature + + # An alternative to temperature for nucleus sampling; 1.0 includes all tokens. + sig { returns(T.nilable(Float)) } + attr_reader :top_p + + sig { params(top_p: Float).void } + attr_writer :top_p + + sig do + params(max_completion_tokens: Integer, seed: Integer, temperature: Float, top_p: Float) + .returns(T.attached_class) + end + def self.new(max_completion_tokens: nil, seed: nil, temperature: nil, top_p: nil); end + + sig do + override.returns( + { + max_completion_tokens: Integer, + seed: Integer, + temperature: Float, + top_p: Float + } + ) + end + def to_hash; end + end + end + sig do override .returns( - [OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource] + [OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource, OpenAI::Models::Evals::RunListResponse::DataSource::Completions] ) end def self.variants; end diff --git a/rbi/lib/openai/models/evals/run_retrieve_response.rbi b/rbi/lib/openai/models/evals/run_retrieve_response.rbi index 85db5714..405a83cf 100644 --- a/rbi/lib/openai/models/evals/run_retrieve_response.rbi +++ b/rbi/lib/openai/models/evals/run_retrieve_response.rbi @@ -17,7 +17,8 @@ module OpenAI returns( T.any( OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource + OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource, + OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions ) ) end @@ -91,7 +92,8 @@ module OpenAI data_source: T.any( OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, OpenAI::Internal::AnyHash, - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource + OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource, + OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions ), error: T.any(OpenAI::Models::Evals::EvalAPIError, OpenAI::Internal::AnyHash), eval_id: String, @@ -131,7 +133,8 @@ module OpenAI created_at: Integer, data_source: T.any( OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource + OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource, + OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions ), error: OpenAI::Models::Evals::EvalAPIError, eval_id: String, @@ -153,10 +156,661 @@ module OpenAI module DataSource extend OpenAI::Internal::Type::Union + class Completions < OpenAI::Internal::Type::BaseModel + # A EvalResponsesSource object describing a run data source configuration. + sig do + returns( + T.any( + OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::Source::FileContent, + OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::Source::FileID, + OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::Source::Responses + ) + ) + end + attr_accessor :source + + # The type of run data source. Always `completions`. + sig { returns(Symbol) } + attr_accessor :type + + sig do + returns( + T.nilable( + T.any( + OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template, + OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::ItemReference + ) + ) + ) + end + attr_reader :input_messages + + sig do + params( + input_messages: T.any( + OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template, + OpenAI::Internal::AnyHash, + OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::ItemReference + ) + ) + .void + end + attr_writer :input_messages + + # The name of the model to use for generating completions (e.g. "o3-mini"). + sig { returns(T.nilable(String)) } + attr_reader :model + + sig { params(model: String).void } + attr_writer :model + + sig { returns(T.nilable(OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::SamplingParams)) } + attr_reader :sampling_params + + sig do + params( + sampling_params: T.any( + OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::SamplingParams, + OpenAI::Internal::AnyHash + ) + ) + .void + end + attr_writer :sampling_params + + # A ResponsesRunDataSource object describing a model sampling configuration. + sig do + params( + source: T.any( + OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::Source::FileContent, + OpenAI::Internal::AnyHash, + OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::Source::FileID, + OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::Source::Responses + ), + input_messages: T.any( + OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template, + OpenAI::Internal::AnyHash, + OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::ItemReference + ), + model: String, + sampling_params: T.any( + OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::SamplingParams, + OpenAI::Internal::AnyHash + ), + type: Symbol + ) + .returns(T.attached_class) + end + def self.new(source:, input_messages: nil, model: nil, sampling_params: nil, type: :completions) + end + + sig do + override + .returns( + { + source: T.any( + OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::Source::FileContent, + OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::Source::FileID, + OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::Source::Responses + ), + type: Symbol, + input_messages: T.any( + OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template, + OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::ItemReference + ), + model: String, + sampling_params: OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::SamplingParams + } + ) + end + def to_hash; end + + # A EvalResponsesSource object describing a run data source configuration. + module Source + extend OpenAI::Internal::Type::Union + + class FileContent < OpenAI::Internal::Type::BaseModel + # The content of the jsonl file. + sig do + returns( + T::Array[OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::Source::FileContent::Content] + ) + end + attr_accessor :content + + # The type of jsonl source. Always `file_content`. + sig { returns(Symbol) } + attr_accessor :type + + sig do + params( + content: T::Array[ + T.any( + OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::Source::FileContent::Content, + OpenAI::Internal::AnyHash + ) + ], + type: Symbol + ) + .returns(T.attached_class) + end + def self.new(content:, type: :file_content); end + + sig do + override + .returns( + { + content: T::Array[OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::Source::FileContent::Content], + type: Symbol + } + ) + end + def to_hash; end + + class Content < OpenAI::Internal::Type::BaseModel + sig { returns(T::Hash[Symbol, T.anything]) } + attr_accessor :item + + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } + attr_reader :sample + + sig { params(sample: T::Hash[Symbol, T.anything]).void } + attr_writer :sample + + sig do + params( + item: T::Hash[Symbol, T.anything], + sample: T::Hash[Symbol, + T.anything] + ).returns(T.attached_class) + end + def self.new(item:, sample: nil); end + + sig do + override.returns({item: T::Hash[Symbol, T.anything], sample: T::Hash[Symbol, T.anything]}) + end + def to_hash; end + end + end + + class FileID < OpenAI::Internal::Type::BaseModel + # The identifier of the file. + sig { returns(String) } + attr_accessor :id + + # The type of jsonl source. Always `file_id`. + sig { returns(Symbol) } + attr_accessor :type + + sig { params(id: String, type: Symbol).returns(T.attached_class) } + def self.new(id:, type: :file_id); end + + sig { override.returns({id: String, type: Symbol}) } + def to_hash; end + end + + class Responses < OpenAI::Internal::Type::BaseModel + # The type of run data source. Always `responses`. + sig { returns(Symbol) } + attr_accessor :type + + # Whether to allow parallel tool calls. This is a query parameter used to select + # responses. + sig { returns(T.nilable(T::Boolean)) } + attr_accessor :allow_parallel_tool_calls + + # Only include items created after this timestamp (inclusive). This is a query + # parameter used to select responses. + sig { returns(T.nilable(Integer)) } + attr_accessor :created_after + + # Only include items created before this timestamp (inclusive). This is a query + # parameter used to select responses. + sig { returns(T.nilable(Integer)) } + attr_accessor :created_before + + # Whether the response has tool calls. This is a query parameter used to select + # responses. + sig { returns(T.nilable(T::Boolean)) } + attr_accessor :has_tool_calls + + # Optional search string for instructions. This is a query parameter used to + # select responses. + sig { returns(T.nilable(String)) } + attr_accessor :instructions_search + + # Metadata filter for the responses. This is a query parameter used to select + # responses. + sig { returns(T.nilable(T.anything)) } + attr_accessor :metadata + + # The name of the model to find responses for. This is a query parameter used to + # select responses. + sig { returns(T.nilable(String)) } + attr_accessor :model + + # Optional reasoning effort parameter. This is a query parameter used to select + # responses. + sig { returns(T.nilable(OpenAI::Models::ReasoningEffort::TaggedSymbol)) } + attr_accessor :reasoning_effort + + # Sampling temperature. This is a query parameter used to select responses. + sig { returns(T.nilable(Float)) } + attr_accessor :temperature + + # Nucleus sampling parameter. This is a query parameter used to select responses. + sig { returns(T.nilable(Float)) } + attr_accessor :top_p + + # List of user identifiers. This is a query parameter used to select responses. + sig { returns(T.nilable(T::Array[String])) } + attr_accessor :users + + # A EvalResponsesSource object describing a run data source configuration. + sig do + params( + allow_parallel_tool_calls: T.nilable(T::Boolean), + created_after: T.nilable(Integer), + created_before: T.nilable(Integer), + has_tool_calls: T.nilable(T::Boolean), + instructions_search: T.nilable(String), + metadata: T.nilable(T.anything), + model: T.nilable(String), + reasoning_effort: T.nilable(OpenAI::Models::ReasoningEffort::OrSymbol), + temperature: T.nilable(Float), + top_p: T.nilable(Float), + users: T.nilable(T::Array[String]), + type: Symbol + ) + .returns(T.attached_class) + end + def self.new( + allow_parallel_tool_calls: nil, + created_after: nil, + created_before: nil, + has_tool_calls: nil, + instructions_search: nil, + metadata: nil, + model: nil, + reasoning_effort: nil, + temperature: nil, + top_p: nil, + users: nil, + type: :responses + ); end + sig do + override + .returns( + { + type: Symbol, + allow_parallel_tool_calls: T.nilable(T::Boolean), + created_after: T.nilable(Integer), + created_before: T.nilable(Integer), + has_tool_calls: T.nilable(T::Boolean), + instructions_search: T.nilable(String), + metadata: T.nilable(T.anything), + model: T.nilable(String), + reasoning_effort: T.nilable(OpenAI::Models::ReasoningEffort::TaggedSymbol), + temperature: T.nilable(Float), + top_p: T.nilable(Float), + users: T.nilable(T::Array[String]) + } + ) + end + def to_hash; end + end + + sig do + override + .returns( + [OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::Source::FileContent, OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::Source::FileID, OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::Source::Responses] + ) + end + def self.variants; end + end + + module InputMessages + extend OpenAI::Internal::Type::Union + + class Template < OpenAI::Internal::Type::BaseModel + # A list of chat messages forming the prompt or context. May include variable + # references to the "item" namespace, ie {{item.name}}. + sig do + returns( + T::Array[ + T.any( + OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::ChatMessage, + OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem + ) + ] + ) + end + attr_accessor :template + + # The type of input messages. Always `template`. + sig { returns(Symbol) } + attr_accessor :type + + sig do + params( + template: T::Array[ + T.any( + OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::ChatMessage, + OpenAI::Internal::AnyHash, + OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem + ) + ], + type: Symbol + ) + .returns(T.attached_class) + end + def self.new(template:, type: :template); end + + sig do + override + .returns( + { + template: T::Array[ + T.any( + OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::ChatMessage, + OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem + ) + ], + type: Symbol + } + ) + end + def to_hash; end + + # A message input to the model with a role indicating instruction following + # hierarchy. Instructions given with the `developer` or `system` role take + # precedence over instructions given with the `user` role. Messages with the + # `assistant` role are presumed to have been generated by the model in previous + # interactions. + module Template + extend OpenAI::Internal::Type::Union + + class ChatMessage < OpenAI::Internal::Type::BaseModel + # The content of the message. + sig { returns(String) } + attr_accessor :content + + # The role of the message (e.g. "system", "assistant", "user"). + sig { returns(String) } + attr_accessor :role + + sig { params(content: String, role: String).returns(T.attached_class) } + def self.new(content:, role:); end + + sig { override.returns({content: String, role: String}) } + def to_hash; end + end + + class EvalItem < OpenAI::Internal::Type::BaseModel + # Text inputs to the model - can contain template strings. + sig do + returns( + T.any( + String, + OpenAI::Models::Responses::ResponseInputText, + OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText + ) + ) + end + attr_accessor :content + + # The role of the message input. One of `user`, `assistant`, `system`, or + # `developer`. + sig do + returns( + OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Role::TaggedSymbol + ) + end + attr_accessor :role + + # The type of the message input. Always `message`. + sig do + returns( + T.nilable( + OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Type::TaggedSymbol + ) + ) + end + attr_reader :type + + sig do + params( + type: OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Type::OrSymbol + ) + .void + end + attr_writer :type + + # A message input to the model with a role indicating instruction following + # hierarchy. Instructions given with the `developer` or `system` role take + # precedence over instructions given with the `user` role. Messages with the + # `assistant` role are presumed to have been generated by the model in previous + # interactions. + sig do + params( + content: T.any( + String, + OpenAI::Models::Responses::ResponseInputText, + OpenAI::Internal::AnyHash, + OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText + ), + role: OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Role::OrSymbol, + type: OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Type::OrSymbol + ) + .returns(T.attached_class) + end + def self.new(content:, role:, type: nil); end + + sig do + override + .returns( + { + content: T.any( + String, + OpenAI::Models::Responses::ResponseInputText, + OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText + ), + role: OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Role::TaggedSymbol, + type: OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Type::TaggedSymbol + } + ) + end + def to_hash; end + + # Text inputs to the model - can contain template strings. + module Content + extend OpenAI::Internal::Type::Union + + class OutputText < OpenAI::Internal::Type::BaseModel + # The text output from the model. + sig { returns(String) } + attr_accessor :text + + # The type of the output text. Always `output_text`. + sig { returns(Symbol) } + attr_accessor :type + + # A text output from the model. + sig { params(text: String, type: Symbol).returns(T.attached_class) } + def self.new(text:, type: :output_text); end + + sig { override.returns({text: String, type: Symbol}) } + def to_hash; end + end + + sig do + override + .returns( + [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText] + ) + end + def self.variants; end + end + + # The role of the message input. One of `user`, `assistant`, `system`, or + # `developer`. + module Role + extend OpenAI::Internal::Type::Enum + + TaggedSymbol = + T.type_alias do + T.all(Symbol, OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Role) + end + OrSymbol = T.type_alias { T.any(Symbol, String) } + + USER = + T.let( + :user, + OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Role::TaggedSymbol + ) + ASSISTANT = + T.let( + :assistant, + OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Role::TaggedSymbol + ) + SYSTEM = + T.let( + :system, + OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Role::TaggedSymbol + ) + DEVELOPER = + T.let( + :developer, + OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Role::TaggedSymbol + ) + + sig do + override + .returns( + T::Array[ + OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Role::TaggedSymbol + ] + ) + end + def self.values; end + end + + # The type of the message input. Always `message`. + module Type + extend OpenAI::Internal::Type::Enum + + TaggedSymbol = + T.type_alias do + T.all(Symbol, OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Type) + end + OrSymbol = T.type_alias { T.any(Symbol, String) } + + MESSAGE = + T.let( + :message, + OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Type::TaggedSymbol + ) + + sig do + override + .returns( + T::Array[ + OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Type::TaggedSymbol + ] + ) + end + def self.values; end + end + end + + sig do + override + .returns( + [OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::ChatMessage, OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem] + ) + end + def self.variants; end + end + end + + class ItemReference < OpenAI::Internal::Type::BaseModel + # A reference to a variable in the "item" namespace. Ie, "item.name" + sig { returns(String) } + attr_accessor :item_reference + + # The type of input messages. Always `item_reference`. + sig { returns(Symbol) } + attr_accessor :type + + sig { params(item_reference: String, type: Symbol).returns(T.attached_class) } + def self.new(item_reference:, type: :item_reference); end + + sig { override.returns({item_reference: String, type: Symbol}) } + def to_hash; end + end + + sig do + override + .returns( + [OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template, OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::ItemReference] + ) + end + def self.variants; end + end + + class SamplingParams < OpenAI::Internal::Type::BaseModel + # The maximum number of tokens in the generated output. + sig { returns(T.nilable(Integer)) } + attr_reader :max_completion_tokens + + sig { params(max_completion_tokens: Integer).void } + attr_writer :max_completion_tokens + + # A seed value to initialize the randomness, during sampling. + sig { returns(T.nilable(Integer)) } + attr_reader :seed + + sig { params(seed: Integer).void } + attr_writer :seed + + # A higher temperature increases randomness in the outputs. + sig { returns(T.nilable(Float)) } + attr_reader :temperature + + sig { params(temperature: Float).void } + attr_writer :temperature + + # An alternative to temperature for nucleus sampling; 1.0 includes all tokens. + sig { returns(T.nilable(Float)) } + attr_reader :top_p + + sig { params(top_p: Float).void } + attr_writer :top_p + + sig do + params(max_completion_tokens: Integer, seed: Integer, temperature: Float, top_p: Float) + .returns(T.attached_class) + end + def self.new(max_completion_tokens: nil, seed: nil, temperature: nil, top_p: nil); end + + sig do + override.returns( + { + max_completion_tokens: Integer, + seed: Integer, + temperature: Float, + top_p: Float + } + ) + end + def to_hash; end + end + end + sig do override .returns( - [OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource] + [OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource, OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions] ) end def self.variants; end diff --git a/rbi/lib/openai/models/fine_tuning/checkpoints/permission_delete_params.rbi b/rbi/lib/openai/models/fine_tuning/checkpoints/permission_delete_params.rbi index 69429e05..b762881f 100644 --- a/rbi/lib/openai/models/fine_tuning/checkpoints/permission_delete_params.rbi +++ b/rbi/lib/openai/models/fine_tuning/checkpoints/permission_delete_params.rbi @@ -8,17 +8,21 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters + sig { returns(String) } + attr_accessor :fine_tuned_model_checkpoint + sig do params( - request_options: T.any( - OpenAI::RequestOptions, - OpenAI::Internal::AnyHash - ) - ).returns(T.attached_class) + fine_tuned_model_checkpoint: String, + request_options: T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash) + ) + .returns(T.attached_class) end - def self.new(request_options: {}); end + def self.new(fine_tuned_model_checkpoint:, request_options: {}); end - sig { override.returns({request_options: OpenAI::RequestOptions}) } + sig do + override.returns({fine_tuned_model_checkpoint: String, request_options: OpenAI::RequestOptions}) + end def to_hash; end end end diff --git a/rbi/lib/openai/models/image.rbi b/rbi/lib/openai/models/image.rbi index 3a2f3c67..cf15fc93 100644 --- a/rbi/lib/openai/models/image.rbi +++ b/rbi/lib/openai/models/image.rbi @@ -3,30 +3,32 @@ module OpenAI module Models class Image < OpenAI::Internal::Type::BaseModel - # The base64-encoded JSON of the generated image, if `response_format` is - # `b64_json`. + # The base64-encoded JSON of the generated image. Default value for `gpt-image-1`, + # and only present if `response_format` is set to `b64_json` for `dall-e-2` and + # `dall-e-3`. sig { returns(T.nilable(String)) } attr_reader :b64_json sig { params(b64_json: String).void } attr_writer :b64_json - # The prompt that was used to generate the image, if there was any revision to the - # prompt. + # For `dall-e-3` only, the revised prompt that was used to generate the image. sig { returns(T.nilable(String)) } attr_reader :revised_prompt sig { params(revised_prompt: String).void } attr_writer :revised_prompt - # The URL of the generated image, if `response_format` is `url` (default). + # When using `dall-e-2` or `dall-e-3`, the URL of the generated image if + # `response_format` is set to `url` (default value). Unsupported for + # `gpt-image-1`. sig { returns(T.nilable(String)) } attr_reader :url sig { params(url: String).void } attr_writer :url - # Represents the url or the content of an image generated by the OpenAI API. + # Represents the content or the URL of an image generated by the OpenAI API. sig { params(b64_json: String, revised_prompt: String, url: String).returns(T.attached_class) } def self.new(b64_json: nil, revised_prompt: nil, url: nil); end diff --git a/rbi/lib/openai/models/image_create_variation_params.rbi b/rbi/lib/openai/models/image_create_variation_params.rbi index 44cd2758..c2d38787 100644 --- a/rbi/lib/openai/models/image_create_variation_params.rbi +++ b/rbi/lib/openai/models/image_create_variation_params.rbi @@ -16,8 +16,7 @@ module OpenAI sig { returns(T.nilable(T.any(String, OpenAI::Models::ImageModel::OrSymbol))) } attr_accessor :model - # The number of images to generate. Must be between 1 and 10. For `dall-e-3`, only - # `n=1` is supported. + # The number of images to generate. Must be between 1 and 10. sig { returns(T.nilable(Integer)) } attr_accessor :n diff --git a/rbi/lib/openai/models/image_edit_params.rbi b/rbi/lib/openai/models/image_edit_params.rbi index 616662cf..922d5db6 100644 --- a/rbi/lib/openai/models/image_edit_params.rbi +++ b/rbi/lib/openai/models/image_edit_params.rbi @@ -6,18 +6,21 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters - # The image to edit. Must be a valid PNG file, less than 4MB, and square. If mask - # is not provided, image must have transparency, which will be used as the mask. - sig { returns(T.any(Pathname, StringIO)) } + # The image(s) to edit. Must be a supported image file or an array of images. For + # `gpt-image-1`, each image should be a `png`, `webp`, or `jpg` file less than + # 25MB. For `dall-e-2`, you can only provide one image, and it should be a square + # `png` file less than 4MB. + sig { returns(T.any(Pathname, StringIO, T::Array[T.any(Pathname, StringIO)])) } attr_accessor :image # A text description of the desired image(s). The maximum length is 1000 - # characters. + # characters for `dall-e-2`, and 32000 characters for `gpt-image-1`. sig { returns(String) } attr_accessor :prompt # An additional image whose fully transparent areas (e.g. where alpha is zero) - # indicate where `image` should be edited. Must be a valid PNG file, less than + # indicate where `image` should be edited. If there are multiple images provided, + # the mask will be applied on the first image. Must be a valid PNG file, less than # 4MB, and have the same dimensions as `image`. sig { returns(T.nilable(T.any(Pathname, StringIO))) } attr_reader :mask @@ -25,8 +28,9 @@ module OpenAI sig { params(mask: T.any(Pathname, StringIO)).void } attr_writer :mask - # The model to use for image generation. Only `dall-e-2` is supported at this - # time. + # The model to use for image generation. Only `dall-e-2` and `gpt-image-1` are + # supported. Defaults to `dall-e-2` unless a parameter specific to `gpt-image-1` + # is used. sig { returns(T.nilable(T.any(String, OpenAI::Models::ImageModel::OrSymbol))) } attr_accessor :model @@ -34,14 +38,22 @@ module OpenAI sig { returns(T.nilable(Integer)) } attr_accessor :n + # The quality of the image that will be generated. `high`, `medium` and `low` are + # only supported for `gpt-image-1`. `dall-e-2` only supports `standard` quality. + # Defaults to `auto`. + sig { returns(T.nilable(OpenAI::Models::ImageEditParams::Quality::OrSymbol)) } + attr_accessor :quality + # The format in which the generated images are returned. Must be one of `url` or # `b64_json`. URLs are only valid for 60 minutes after the image has been - # generated. + # generated. This parameter is only supported for `dall-e-2`, as `gpt-image-1` + # will always return base64-encoded images. sig { returns(T.nilable(OpenAI::Models::ImageEditParams::ResponseFormat::OrSymbol)) } attr_accessor :response_format - # The size of the generated images. Must be one of `256x256`, `512x512`, or - # `1024x1024`. + # The size of the generated images. Must be one of `1024x1024`, `1536x1024` + # (landscape), `1024x1536` (portrait), or `auto` (default value) for + # `gpt-image-1`, and one of `256x256`, `512x512`, or `1024x1024` for `dall-e-2`. sig { returns(T.nilable(OpenAI::Models::ImageEditParams::Size::OrSymbol)) } attr_accessor :size @@ -56,11 +68,12 @@ module OpenAI sig do params( - image: T.any(Pathname, StringIO), + image: T.any(Pathname, StringIO, T::Array[T.any(Pathname, StringIO)]), prompt: String, mask: T.any(Pathname, StringIO), model: T.nilable(T.any(String, OpenAI::Models::ImageModel::OrSymbol)), n: T.nilable(Integer), + quality: T.nilable(OpenAI::Models::ImageEditParams::Quality::OrSymbol), response_format: T.nilable(OpenAI::Models::ImageEditParams::ResponseFormat::OrSymbol), size: T.nilable(OpenAI::Models::ImageEditParams::Size::OrSymbol), user: String, @@ -74,6 +87,7 @@ module OpenAI mask: nil, model: nil, n: nil, + quality: nil, response_format: nil, size: nil, user: nil, @@ -83,11 +97,12 @@ module OpenAI override .returns( { - image: T.any(Pathname, StringIO), + image: T.any(Pathname, StringIO, T::Array[T.any(Pathname, StringIO)]), prompt: String, mask: T.any(Pathname, StringIO), model: T.nilable(T.any(String, OpenAI::Models::ImageModel::OrSymbol)), n: T.nilable(Integer), + quality: T.nilable(OpenAI::Models::ImageEditParams::Quality::OrSymbol), response_format: T.nilable(OpenAI::Models::ImageEditParams::ResponseFormat::OrSymbol), size: T.nilable(OpenAI::Models::ImageEditParams::Size::OrSymbol), user: String, @@ -97,8 +112,26 @@ module OpenAI end def to_hash; end - # The model to use for image generation. Only `dall-e-2` is supported at this - # time. + # The image(s) to edit. Must be a supported image file or an array of images. For + # `gpt-image-1`, each image should be a `png`, `webp`, or `jpg` file less than + # 25MB. For `dall-e-2`, you can only provide one image, and it should be a square + # `png` file less than 4MB. + module Image + extend OpenAI::Internal::Type::Union + + sig { override.returns([StringIO, T::Array[StringIO]]) } + def self.variants; end + + StringArray = + T.let( + OpenAI::Internal::Type::ArrayOf[OpenAI::Internal::Type::IOLike], + OpenAI::Internal::Type::Converter + ) + end + + # The model to use for image generation. Only `dall-e-2` and `gpt-image-1` are + # supported. Defaults to `dall-e-2` unless a parameter specific to `gpt-image-1` + # is used. module Model extend OpenAI::Internal::Type::Union @@ -106,9 +139,29 @@ module OpenAI def self.variants; end end + # The quality of the image that will be generated. `high`, `medium` and `low` are + # only supported for `gpt-image-1`. `dall-e-2` only supports `standard` quality. + # Defaults to `auto`. + module Quality + extend OpenAI::Internal::Type::Enum + + TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::ImageEditParams::Quality) } + OrSymbol = T.type_alias { T.any(Symbol, String) } + + STANDARD = T.let(:standard, OpenAI::Models::ImageEditParams::Quality::TaggedSymbol) + LOW = T.let(:low, OpenAI::Models::ImageEditParams::Quality::TaggedSymbol) + MEDIUM = T.let(:medium, OpenAI::Models::ImageEditParams::Quality::TaggedSymbol) + HIGH = T.let(:high, OpenAI::Models::ImageEditParams::Quality::TaggedSymbol) + AUTO = T.let(:auto, OpenAI::Models::ImageEditParams::Quality::TaggedSymbol) + + sig { override.returns(T::Array[OpenAI::Models::ImageEditParams::Quality::TaggedSymbol]) } + def self.values; end + end + # The format in which the generated images are returned. Must be one of `url` or # `b64_json`. URLs are only valid for 60 minutes after the image has been - # generated. + # generated. This parameter is only supported for `dall-e-2`, as `gpt-image-1` + # will always return base64-encoded images. module ResponseFormat extend OpenAI::Internal::Type::Enum @@ -122,8 +175,9 @@ module OpenAI def self.values; end end - # The size of the generated images. Must be one of `256x256`, `512x512`, or - # `1024x1024`. + # The size of the generated images. Must be one of `1024x1024`, `1536x1024` + # (landscape), `1024x1536` (portrait), or `auto` (default value) for + # `gpt-image-1`, and one of `256x256`, `512x512`, or `1024x1024` for `dall-e-2`. module Size extend OpenAI::Internal::Type::Enum diff --git a/rbi/lib/openai/models/image_generate_params.rbi b/rbi/lib/openai/models/image_generate_params.rbi index d35fb1e2..0ee05de0 100644 --- a/rbi/lib/openai/models/image_generate_params.rbi +++ b/rbi/lib/openai/models/image_generate_params.rbi @@ -6,45 +6,77 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters - # A text description of the desired image(s). The maximum length is 1000 - # characters for `dall-e-2` and 4000 characters for `dall-e-3`. + # A text description of the desired image(s). The maximum length is 32000 + # characters for `gpt-image-1`, 1000 characters for `dall-e-2` and 4000 characters + # for `dall-e-3`. sig { returns(String) } attr_accessor :prompt - # The model to use for image generation. + # Allows to set transparency for the background of the generated image(s). This + # parameter is only supported for `gpt-image-1`. Must be one of `transparent`, + # `opaque` or `auto` (default value). When `auto` is used, the model will + # automatically determine the best background for the image. + # + # If `transparent`, the output format needs to support transparency, so it should + # be set to either `png` (default value) or `webp`. + sig { returns(T.nilable(OpenAI::Models::ImageGenerateParams::Background::OrSymbol)) } + attr_accessor :background + + # The model to use for image generation. One of `dall-e-2`, `dall-e-3`, or + # `gpt-image-1`. Defaults to `dall-e-2` unless a parameter specific to + # `gpt-image-1` is used. sig { returns(T.nilable(T.any(String, OpenAI::Models::ImageModel::OrSymbol))) } attr_accessor :model + # Control the content-moderation level for images generated by `gpt-image-1`. Must + # be either `low` for less restrictive filtering or `auto` (default value). + sig { returns(T.nilable(OpenAI::Models::ImageGenerateParams::Moderation::OrSymbol)) } + attr_accessor :moderation + # The number of images to generate. Must be between 1 and 10. For `dall-e-3`, only # `n=1` is supported. sig { returns(T.nilable(Integer)) } attr_accessor :n - # The quality of the image that will be generated. `hd` creates images with finer - # details and greater consistency across the image. This param is only supported - # for `dall-e-3`. - sig { returns(T.nilable(OpenAI::Models::ImageGenerateParams::Quality::OrSymbol)) } - attr_reader :quality + # The compression level (0-100%) for the generated images. This parameter is only + # supported for `gpt-image-1` with the `webp` or `jpeg` output formats, and + # defaults to 100. + sig { returns(T.nilable(Integer)) } + attr_accessor :output_compression + + # The format in which the generated images are returned. This parameter is only + # supported for `gpt-image-1`. Must be one of `png`, `jpeg`, or `webp`. + sig { returns(T.nilable(OpenAI::Models::ImageGenerateParams::OutputFormat::OrSymbol)) } + attr_accessor :output_format - sig { params(quality: OpenAI::Models::ImageGenerateParams::Quality::OrSymbol).void } - attr_writer :quality + # The quality of the image that will be generated. + # + # - `auto` (default value) will automatically select the best quality for the + # given model. + # - `high`, `medium` and `low` are supported for `gpt-image-1`. + # - `hd` and `standard` are supported for `dall-e-3`. + # - `standard` is the only option for `dall-e-2`. + sig { returns(T.nilable(OpenAI::Models::ImageGenerateParams::Quality::OrSymbol)) } + attr_accessor :quality - # The format in which the generated images are returned. Must be one of `url` or - # `b64_json`. URLs are only valid for 60 minutes after the image has been - # generated. + # The format in which generated images with `dall-e-2` and `dall-e-3` are + # returned. Must be one of `url` or `b64_json`. URLs are only valid for 60 minutes + # after the image has been generated. This parameter isn't supported for + # `gpt-image-1` which will always return base64-encoded images. sig { returns(T.nilable(OpenAI::Models::ImageGenerateParams::ResponseFormat::OrSymbol)) } attr_accessor :response_format - # The size of the generated images. Must be one of `256x256`, `512x512`, or - # `1024x1024` for `dall-e-2`. Must be one of `1024x1024`, `1792x1024`, or - # `1024x1792` for `dall-e-3` models. + # The size of the generated images. Must be one of `1024x1024`, `1536x1024` + # (landscape), `1024x1536` (portrait), or `auto` (default value) for + # `gpt-image-1`, one of `256x256`, `512x512`, or `1024x1024` for `dall-e-2`, and + # one of `1024x1024`, `1792x1024`, or `1024x1792` for `dall-e-3`. sig { returns(T.nilable(OpenAI::Models::ImageGenerateParams::Size::OrSymbol)) } attr_accessor :size - # The style of the generated images. Must be one of `vivid` or `natural`. Vivid - # causes the model to lean towards generating hyper-real and dramatic images. - # Natural causes the model to produce more natural, less hyper-real looking - # images. This param is only supported for `dall-e-3`. + # The style of the generated images. This parameter is only supported for + # `dall-e-3`. Must be one of `vivid` or `natural`. Vivid causes the model to lean + # towards generating hyper-real and dramatic images. Natural causes the model to + # produce more natural, less hyper-real looking images. sig { returns(T.nilable(OpenAI::Models::ImageGenerateParams::Style::OrSymbol)) } attr_accessor :style @@ -60,9 +92,13 @@ module OpenAI sig do params( prompt: String, + background: T.nilable(OpenAI::Models::ImageGenerateParams::Background::OrSymbol), model: T.nilable(T.any(String, OpenAI::Models::ImageModel::OrSymbol)), + moderation: T.nilable(OpenAI::Models::ImageGenerateParams::Moderation::OrSymbol), n: T.nilable(Integer), - quality: OpenAI::Models::ImageGenerateParams::Quality::OrSymbol, + output_compression: T.nilable(Integer), + output_format: T.nilable(OpenAI::Models::ImageGenerateParams::OutputFormat::OrSymbol), + quality: T.nilable(OpenAI::Models::ImageGenerateParams::Quality::OrSymbol), response_format: T.nilable(OpenAI::Models::ImageGenerateParams::ResponseFormat::OrSymbol), size: T.nilable(OpenAI::Models::ImageGenerateParams::Size::OrSymbol), style: T.nilable(OpenAI::Models::ImageGenerateParams::Style::OrSymbol), @@ -73,8 +109,12 @@ module OpenAI end def self.new( prompt:, + background: nil, model: nil, + moderation: nil, n: nil, + output_compression: nil, + output_format: nil, quality: nil, response_format: nil, size: nil, @@ -87,9 +127,13 @@ module OpenAI .returns( { prompt: String, + background: T.nilable(OpenAI::Models::ImageGenerateParams::Background::OrSymbol), model: T.nilable(T.any(String, OpenAI::Models::ImageModel::OrSymbol)), + moderation: T.nilable(OpenAI::Models::ImageGenerateParams::Moderation::OrSymbol), n: T.nilable(Integer), - quality: OpenAI::Models::ImageGenerateParams::Quality::OrSymbol, + output_compression: T.nilable(Integer), + output_format: T.nilable(OpenAI::Models::ImageGenerateParams::OutputFormat::OrSymbol), + quality: T.nilable(OpenAI::Models::ImageGenerateParams::Quality::OrSymbol), response_format: T.nilable(OpenAI::Models::ImageGenerateParams::ResponseFormat::OrSymbol), size: T.nilable(OpenAI::Models::ImageGenerateParams::Size::OrSymbol), style: T.nilable(OpenAI::Models::ImageGenerateParams::Style::OrSymbol), @@ -100,7 +144,30 @@ module OpenAI end def to_hash; end - # The model to use for image generation. + # Allows to set transparency for the background of the generated image(s). This + # parameter is only supported for `gpt-image-1`. Must be one of `transparent`, + # `opaque` or `auto` (default value). When `auto` is used, the model will + # automatically determine the best background for the image. + # + # If `transparent`, the output format needs to support transparency, so it should + # be set to either `png` (default value) or `webp`. + module Background + extend OpenAI::Internal::Type::Enum + + TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::ImageGenerateParams::Background) } + OrSymbol = T.type_alias { T.any(Symbol, String) } + + TRANSPARENT = T.let(:transparent, OpenAI::Models::ImageGenerateParams::Background::TaggedSymbol) + OPAQUE = T.let(:opaque, OpenAI::Models::ImageGenerateParams::Background::TaggedSymbol) + AUTO = T.let(:auto, OpenAI::Models::ImageGenerateParams::Background::TaggedSymbol) + + sig { override.returns(T::Array[OpenAI::Models::ImageGenerateParams::Background::TaggedSymbol]) } + def self.values; end + end + + # The model to use for image generation. One of `dall-e-2`, `dall-e-3`, or + # `gpt-image-1`. Defaults to `dall-e-2` unless a parameter specific to + # `gpt-image-1` is used. module Model extend OpenAI::Internal::Type::Union @@ -108,9 +175,44 @@ module OpenAI def self.variants; end end - # The quality of the image that will be generated. `hd` creates images with finer - # details and greater consistency across the image. This param is only supported - # for `dall-e-3`. + # Control the content-moderation level for images generated by `gpt-image-1`. Must + # be either `low` for less restrictive filtering or `auto` (default value). + module Moderation + extend OpenAI::Internal::Type::Enum + + TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::ImageGenerateParams::Moderation) } + OrSymbol = T.type_alias { T.any(Symbol, String) } + + LOW = T.let(:low, OpenAI::Models::ImageGenerateParams::Moderation::TaggedSymbol) + AUTO = T.let(:auto, OpenAI::Models::ImageGenerateParams::Moderation::TaggedSymbol) + + sig { override.returns(T::Array[OpenAI::Models::ImageGenerateParams::Moderation::TaggedSymbol]) } + def self.values; end + end + + # The format in which the generated images are returned. This parameter is only + # supported for `gpt-image-1`. Must be one of `png`, `jpeg`, or `webp`. + module OutputFormat + extend OpenAI::Internal::Type::Enum + + TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::ImageGenerateParams::OutputFormat) } + OrSymbol = T.type_alias { T.any(Symbol, String) } + + PNG = T.let(:png, OpenAI::Models::ImageGenerateParams::OutputFormat::TaggedSymbol) + JPEG = T.let(:jpeg, OpenAI::Models::ImageGenerateParams::OutputFormat::TaggedSymbol) + WEBP = T.let(:webp, OpenAI::Models::ImageGenerateParams::OutputFormat::TaggedSymbol) + + sig { override.returns(T::Array[OpenAI::Models::ImageGenerateParams::OutputFormat::TaggedSymbol]) } + def self.values; end + end + + # The quality of the image that will be generated. + # + # - `auto` (default value) will automatically select the best quality for the + # given model. + # - `high`, `medium` and `low` are supported for `gpt-image-1`. + # - `hd` and `standard` are supported for `dall-e-3`. + # - `standard` is the only option for `dall-e-2`. module Quality extend OpenAI::Internal::Type::Enum @@ -119,14 +221,19 @@ module OpenAI STANDARD = T.let(:standard, OpenAI::Models::ImageGenerateParams::Quality::TaggedSymbol) HD = T.let(:hd, OpenAI::Models::ImageGenerateParams::Quality::TaggedSymbol) + LOW = T.let(:low, OpenAI::Models::ImageGenerateParams::Quality::TaggedSymbol) + MEDIUM = T.let(:medium, OpenAI::Models::ImageGenerateParams::Quality::TaggedSymbol) + HIGH = T.let(:high, OpenAI::Models::ImageGenerateParams::Quality::TaggedSymbol) + AUTO = T.let(:auto, OpenAI::Models::ImageGenerateParams::Quality::TaggedSymbol) sig { override.returns(T::Array[OpenAI::Models::ImageGenerateParams::Quality::TaggedSymbol]) } def self.values; end end - # The format in which the generated images are returned. Must be one of `url` or - # `b64_json`. URLs are only valid for 60 minutes after the image has been - # generated. + # The format in which generated images with `dall-e-2` and `dall-e-3` are + # returned. Must be one of `url` or `b64_json`. URLs are only valid for 60 minutes + # after the image has been generated. This parameter isn't supported for + # `gpt-image-1` which will always return base64-encoded images. module ResponseFormat extend OpenAI::Internal::Type::Enum @@ -140,18 +247,22 @@ module OpenAI def self.values; end end - # The size of the generated images. Must be one of `256x256`, `512x512`, or - # `1024x1024` for `dall-e-2`. Must be one of `1024x1024`, `1792x1024`, or - # `1024x1792` for `dall-e-3` models. + # The size of the generated images. Must be one of `1024x1024`, `1536x1024` + # (landscape), `1024x1536` (portrait), or `auto` (default value) for + # `gpt-image-1`, one of `256x256`, `512x512`, or `1024x1024` for `dall-e-2`, and + # one of `1024x1024`, `1792x1024`, or `1024x1792` for `dall-e-3`. module Size extend OpenAI::Internal::Type::Enum TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::ImageGenerateParams::Size) } OrSymbol = T.type_alias { T.any(Symbol, String) } + AUTO = T.let(:auto, OpenAI::Models::ImageGenerateParams::Size::TaggedSymbol) + SIZE_1024X1024 = T.let(:"1024x1024", OpenAI::Models::ImageGenerateParams::Size::TaggedSymbol) + SIZE_1536X1024 = T.let(:"1536x1024", OpenAI::Models::ImageGenerateParams::Size::TaggedSymbol) + SIZE_1024X1536 = T.let(:"1024x1536", OpenAI::Models::ImageGenerateParams::Size::TaggedSymbol) SIZE_256X256 = T.let(:"256x256", OpenAI::Models::ImageGenerateParams::Size::TaggedSymbol) SIZE_512X512 = T.let(:"512x512", OpenAI::Models::ImageGenerateParams::Size::TaggedSymbol) - SIZE_1024X1024 = T.let(:"1024x1024", OpenAI::Models::ImageGenerateParams::Size::TaggedSymbol) SIZE_1792X1024 = T.let(:"1792x1024", OpenAI::Models::ImageGenerateParams::Size::TaggedSymbol) SIZE_1024X1792 = T.let(:"1024x1792", OpenAI::Models::ImageGenerateParams::Size::TaggedSymbol) @@ -159,10 +270,10 @@ module OpenAI def self.values; end end - # The style of the generated images. Must be one of `vivid` or `natural`. Vivid - # causes the model to lean towards generating hyper-real and dramatic images. - # Natural causes the model to produce more natural, less hyper-real looking - # images. This param is only supported for `dall-e-3`. + # The style of the generated images. This parameter is only supported for + # `dall-e-3`. Must be one of `vivid` or `natural`. Vivid causes the model to lean + # towards generating hyper-real and dramatic images. Natural causes the model to + # produce more natural, less hyper-real looking images. module Style extend OpenAI::Internal::Type::Enum diff --git a/rbi/lib/openai/models/image_model.rbi b/rbi/lib/openai/models/image_model.rbi index 2dd50c7c..bf52f382 100644 --- a/rbi/lib/openai/models/image_model.rbi +++ b/rbi/lib/openai/models/image_model.rbi @@ -10,6 +10,7 @@ module OpenAI DALL_E_2 = T.let(:"dall-e-2", OpenAI::Models::ImageModel::TaggedSymbol) DALL_E_3 = T.let(:"dall-e-3", OpenAI::Models::ImageModel::TaggedSymbol) + GPT_IMAGE_1 = T.let(:"gpt-image-1", OpenAI::Models::ImageModel::TaggedSymbol) sig { override.returns(T::Array[OpenAI::Models::ImageModel::TaggedSymbol]) } def self.values; end diff --git a/rbi/lib/openai/models/images_response.rbi b/rbi/lib/openai/models/images_response.rbi index cb594826..be9cfe0e 100644 --- a/rbi/lib/openai/models/images_response.rbi +++ b/rbi/lib/openai/models/images_response.rbi @@ -3,20 +3,110 @@ module OpenAI module Models class ImagesResponse < OpenAI::Internal::Type::BaseModel + # The Unix timestamp (in seconds) of when the image was created. sig { returns(Integer) } attr_accessor :created - sig { returns(T::Array[OpenAI::Models::Image]) } - attr_accessor :data + # The list of generated images. + sig { returns(T.nilable(T::Array[OpenAI::Models::Image])) } + attr_reader :data + sig { params(data: T::Array[T.any(OpenAI::Models::Image, OpenAI::Internal::AnyHash)]).void } + attr_writer :data + + # For `gpt-image-1` only, the token usage information for the image generation. + sig { returns(T.nilable(OpenAI::Models::ImagesResponse::Usage)) } + attr_reader :usage + + sig { params(usage: T.any(OpenAI::Models::ImagesResponse::Usage, OpenAI::Internal::AnyHash)).void } + attr_writer :usage + + # The response from the image generation endpoint. sig do - params(created: Integer, data: T::Array[T.any(OpenAI::Models::Image, OpenAI::Internal::AnyHash)]) + params( + created: Integer, + data: T::Array[T.any(OpenAI::Models::Image, OpenAI::Internal::AnyHash)], + usage: T.any(OpenAI::Models::ImagesResponse::Usage, OpenAI::Internal::AnyHash) + ) .returns(T.attached_class) end - def self.new(created:, data:); end + def self.new(created:, data: nil, usage: nil); end - sig { override.returns({created: Integer, data: T::Array[OpenAI::Models::Image]}) } + sig do + override + .returns( + {created: Integer, data: T::Array[OpenAI::Models::Image], usage: OpenAI::Models::ImagesResponse::Usage} + ) + end def to_hash; end + + class Usage < OpenAI::Internal::Type::BaseModel + # The number of tokens (images and text) in the input prompt. + sig { returns(Integer) } + attr_accessor :input_tokens + + # The input tokens detailed information for the image generation. + sig { returns(OpenAI::Models::ImagesResponse::Usage::InputTokensDetails) } + attr_reader :input_tokens_details + + sig do + params( + input_tokens_details: T.any(OpenAI::Models::ImagesResponse::Usage::InputTokensDetails, OpenAI::Internal::AnyHash) + ) + .void + end + attr_writer :input_tokens_details + + # The number of image tokens in the output image. + sig { returns(Integer) } + attr_accessor :output_tokens + + # The total number of tokens (images and text) used for the image generation. + sig { returns(Integer) } + attr_accessor :total_tokens + + # For `gpt-image-1` only, the token usage information for the image generation. + sig do + params( + input_tokens: Integer, + input_tokens_details: T.any(OpenAI::Models::ImagesResponse::Usage::InputTokensDetails, OpenAI::Internal::AnyHash), + output_tokens: Integer, + total_tokens: Integer + ) + .returns(T.attached_class) + end + def self.new(input_tokens:, input_tokens_details:, output_tokens:, total_tokens:); end + + sig do + override + .returns( + { + input_tokens: Integer, + input_tokens_details: OpenAI::Models::ImagesResponse::Usage::InputTokensDetails, + output_tokens: Integer, + total_tokens: Integer + } + ) + end + def to_hash; end + + class InputTokensDetails < OpenAI::Internal::Type::BaseModel + # The number of image tokens in the input prompt. + sig { returns(Integer) } + attr_accessor :image_tokens + + # The number of text tokens in the input prompt. + sig { returns(Integer) } + attr_accessor :text_tokens + + # The input tokens detailed information for the image generation. + sig { params(image_tokens: Integer, text_tokens: Integer).returns(T.attached_class) } + def self.new(image_tokens:, text_tokens:); end + + sig { override.returns({image_tokens: Integer, text_tokens: Integer}) } + def to_hash; end + end + end end end end diff --git a/rbi/lib/openai/models/responses/response_reasoning_summary_part_added_event.rbi b/rbi/lib/openai/models/responses/response_reasoning_summary_part_added_event.rbi new file mode 100644 index 00000000..2a08cbdb --- /dev/null +++ b/rbi/lib/openai/models/responses/response_reasoning_summary_part_added_event.rbi @@ -0,0 +1,88 @@ +# typed: strong + +module OpenAI + module Models + module Responses + class ResponseReasoningSummaryPartAddedEvent < OpenAI::Internal::Type::BaseModel + # The ID of the item this summary part is associated with. + sig { returns(String) } + attr_accessor :item_id + + # The index of the output item this summary part is associated with. + sig { returns(Integer) } + attr_accessor :output_index + + # The summary part that was added. + sig { returns(OpenAI::Models::Responses::ResponseReasoningSummaryPartAddedEvent::Part) } + attr_reader :part + + sig do + params( + part: T.any(OpenAI::Models::Responses::ResponseReasoningSummaryPartAddedEvent::Part, OpenAI::Internal::AnyHash) + ) + .void + end + attr_writer :part + + # The index of the summary part within the reasoning summary. + sig { returns(Integer) } + attr_accessor :summary_index + + # The type of the event. Always `response.reasoning_summary_part.added`. + sig { returns(Symbol) } + attr_accessor :type + + # Emitted when a new reasoning summary part is added. + sig do + params( + item_id: String, + output_index: Integer, + part: T.any(OpenAI::Models::Responses::ResponseReasoningSummaryPartAddedEvent::Part, OpenAI::Internal::AnyHash), + summary_index: Integer, + type: Symbol + ) + .returns(T.attached_class) + end + def self.new( + item_id:, + output_index:, + part:, + summary_index:, + type: :"response.reasoning_summary_part.added" + ) + end + + sig do + override + .returns( + { + item_id: String, + output_index: Integer, + part: OpenAI::Models::Responses::ResponseReasoningSummaryPartAddedEvent::Part, + summary_index: Integer, + type: Symbol + } + ) + end + def to_hash; end + + class Part < OpenAI::Internal::Type::BaseModel + # The text of the summary part. + sig { returns(String) } + attr_accessor :text + + # The type of the summary part. Always `summary_text`. + sig { returns(Symbol) } + attr_accessor :type + + # The summary part that was added. + sig { params(text: String, type: Symbol).returns(T.attached_class) } + def self.new(text:, type: :summary_text); end + + sig { override.returns({text: String, type: Symbol}) } + def to_hash; end + end + end + end + end +end diff --git a/rbi/lib/openai/models/responses/response_reasoning_summary_part_done_event.rbi b/rbi/lib/openai/models/responses/response_reasoning_summary_part_done_event.rbi new file mode 100644 index 00000000..074c9319 --- /dev/null +++ b/rbi/lib/openai/models/responses/response_reasoning_summary_part_done_event.rbi @@ -0,0 +1,88 @@ +# typed: strong + +module OpenAI + module Models + module Responses + class ResponseReasoningSummaryPartDoneEvent < OpenAI::Internal::Type::BaseModel + # The ID of the item this summary part is associated with. + sig { returns(String) } + attr_accessor :item_id + + # The index of the output item this summary part is associated with. + sig { returns(Integer) } + attr_accessor :output_index + + # The completed summary part. + sig { returns(OpenAI::Models::Responses::ResponseReasoningSummaryPartDoneEvent::Part) } + attr_reader :part + + sig do + params( + part: T.any(OpenAI::Models::Responses::ResponseReasoningSummaryPartDoneEvent::Part, OpenAI::Internal::AnyHash) + ) + .void + end + attr_writer :part + + # The index of the summary part within the reasoning summary. + sig { returns(Integer) } + attr_accessor :summary_index + + # The type of the event. Always `response.reasoning_summary_part.done`. + sig { returns(Symbol) } + attr_accessor :type + + # Emitted when a reasoning summary part is completed. + sig do + params( + item_id: String, + output_index: Integer, + part: T.any(OpenAI::Models::Responses::ResponseReasoningSummaryPartDoneEvent::Part, OpenAI::Internal::AnyHash), + summary_index: Integer, + type: Symbol + ) + .returns(T.attached_class) + end + def self.new( + item_id:, + output_index:, + part:, + summary_index:, + type: :"response.reasoning_summary_part.done" + ) + end + + sig do + override + .returns( + { + item_id: String, + output_index: Integer, + part: OpenAI::Models::Responses::ResponseReasoningSummaryPartDoneEvent::Part, + summary_index: Integer, + type: Symbol + } + ) + end + def to_hash; end + + class Part < OpenAI::Internal::Type::BaseModel + # The text of the summary part. + sig { returns(String) } + attr_accessor :text + + # The type of the summary part. Always `summary_text`. + sig { returns(Symbol) } + attr_accessor :type + + # The completed summary part. + sig { params(text: String, type: Symbol).returns(T.attached_class) } + def self.new(text:, type: :summary_text); end + + sig { override.returns({text: String, type: Symbol}) } + def to_hash; end + end + end + end + end +end diff --git a/rbi/lib/openai/models/responses/response_reasoning_summary_text_delta_event.rbi b/rbi/lib/openai/models/responses/response_reasoning_summary_text_delta_event.rbi new file mode 100644 index 00000000..e659c052 --- /dev/null +++ b/rbi/lib/openai/models/responses/response_reasoning_summary_text_delta_event.rbi @@ -0,0 +1,55 @@ +# typed: strong + +module OpenAI + module Models + module Responses + class ResponseReasoningSummaryTextDeltaEvent < OpenAI::Internal::Type::BaseModel + # The text delta that was added to the summary. + sig { returns(String) } + attr_accessor :delta + + # The ID of the item this summary text delta is associated with. + sig { returns(String) } + attr_accessor :item_id + + # The index of the output item this summary text delta is associated with. + sig { returns(Integer) } + attr_accessor :output_index + + # The index of the summary part within the reasoning summary. + sig { returns(Integer) } + attr_accessor :summary_index + + # The type of the event. Always `response.reasoning_summary_text.delta`. + sig { returns(Symbol) } + attr_accessor :type + + # Emitted when a delta is added to a reasoning summary text. + sig do + params(delta: String, item_id: String, output_index: Integer, summary_index: Integer, type: Symbol) + .returns(T.attached_class) + end + def self.new( + delta:, + item_id:, + output_index:, + summary_index:, + type: :"response.reasoning_summary_text.delta" + ) + end + + sig do + override + .returns({ + delta: String, + item_id: String, + output_index: Integer, + summary_index: Integer, + type: Symbol + }) + end + def to_hash; end + end + end + end +end diff --git a/rbi/lib/openai/models/responses/response_reasoning_summary_text_done_event.rbi b/rbi/lib/openai/models/responses/response_reasoning_summary_text_done_event.rbi new file mode 100644 index 00000000..dea35ce6 --- /dev/null +++ b/rbi/lib/openai/models/responses/response_reasoning_summary_text_done_event.rbi @@ -0,0 +1,55 @@ +# typed: strong + +module OpenAI + module Models + module Responses + class ResponseReasoningSummaryTextDoneEvent < OpenAI::Internal::Type::BaseModel + # The ID of the item this summary text is associated with. + sig { returns(String) } + attr_accessor :item_id + + # The index of the output item this summary text is associated with. + sig { returns(Integer) } + attr_accessor :output_index + + # The index of the summary part within the reasoning summary. + sig { returns(Integer) } + attr_accessor :summary_index + + # The full text of the completed reasoning summary. + sig { returns(String) } + attr_accessor :text + + # The type of the event. Always `response.reasoning_summary_text.done`. + sig { returns(Symbol) } + attr_accessor :type + + # Emitted when a reasoning summary text is completed. + sig do + params(item_id: String, output_index: Integer, summary_index: Integer, text: String, type: Symbol) + .returns(T.attached_class) + end + def self.new( + item_id:, + output_index:, + summary_index:, + text:, + type: :"response.reasoning_summary_text.done" + ) + end + + sig do + override + .returns({ + item_id: String, + output_index: Integer, + summary_index: Integer, + text: String, + type: Symbol + }) + end + def to_hash; end + end + end + end +end diff --git a/rbi/lib/openai/models/responses/response_stream_event.rbi b/rbi/lib/openai/models/responses/response_stream_event.rbi index 2df75056..6234c3c6 100644 --- a/rbi/lib/openai/models/responses/response_stream_event.rbi +++ b/rbi/lib/openai/models/responses/response_stream_event.rbi @@ -10,7 +10,7 @@ module OpenAI sig do override .returns( - [OpenAI::Models::Responses::ResponseAudioDeltaEvent, OpenAI::Models::Responses::ResponseAudioDoneEvent, OpenAI::Models::Responses::ResponseAudioTranscriptDeltaEvent, OpenAI::Models::Responses::ResponseAudioTranscriptDoneEvent, OpenAI::Models::Responses::ResponseCodeInterpreterCallCodeDeltaEvent, OpenAI::Models::Responses::ResponseCodeInterpreterCallCodeDoneEvent, OpenAI::Models::Responses::ResponseCodeInterpreterCallCompletedEvent, OpenAI::Models::Responses::ResponseCodeInterpreterCallInProgressEvent, OpenAI::Models::Responses::ResponseCodeInterpreterCallInterpretingEvent, OpenAI::Models::Responses::ResponseCompletedEvent, OpenAI::Models::Responses::ResponseContentPartAddedEvent, OpenAI::Models::Responses::ResponseContentPartDoneEvent, OpenAI::Models::Responses::ResponseCreatedEvent, OpenAI::Models::Responses::ResponseErrorEvent, OpenAI::Models::Responses::ResponseFileSearchCallCompletedEvent, OpenAI::Models::Responses::ResponseFileSearchCallInProgressEvent, OpenAI::Models::Responses::ResponseFileSearchCallSearchingEvent, OpenAI::Models::Responses::ResponseFunctionCallArgumentsDeltaEvent, OpenAI::Models::Responses::ResponseFunctionCallArgumentsDoneEvent, OpenAI::Models::Responses::ResponseInProgressEvent, OpenAI::Models::Responses::ResponseFailedEvent, OpenAI::Models::Responses::ResponseIncompleteEvent, OpenAI::Models::Responses::ResponseOutputItemAddedEvent, OpenAI::Models::Responses::ResponseOutputItemDoneEvent, OpenAI::Models::Responses::ResponseRefusalDeltaEvent, OpenAI::Models::Responses::ResponseRefusalDoneEvent, OpenAI::Models::Responses::ResponseTextAnnotationDeltaEvent, OpenAI::Models::Responses::ResponseTextDeltaEvent, OpenAI::Models::Responses::ResponseTextDoneEvent, OpenAI::Models::Responses::ResponseWebSearchCallCompletedEvent, OpenAI::Models::Responses::ResponseWebSearchCallInProgressEvent, OpenAI::Models::Responses::ResponseWebSearchCallSearchingEvent] + [OpenAI::Models::Responses::ResponseAudioDeltaEvent, OpenAI::Models::Responses::ResponseAudioDoneEvent, OpenAI::Models::Responses::ResponseAudioTranscriptDeltaEvent, OpenAI::Models::Responses::ResponseAudioTranscriptDoneEvent, OpenAI::Models::Responses::ResponseCodeInterpreterCallCodeDeltaEvent, OpenAI::Models::Responses::ResponseCodeInterpreterCallCodeDoneEvent, OpenAI::Models::Responses::ResponseCodeInterpreterCallCompletedEvent, OpenAI::Models::Responses::ResponseCodeInterpreterCallInProgressEvent, OpenAI::Models::Responses::ResponseCodeInterpreterCallInterpretingEvent, OpenAI::Models::Responses::ResponseCompletedEvent, OpenAI::Models::Responses::ResponseContentPartAddedEvent, OpenAI::Models::Responses::ResponseContentPartDoneEvent, OpenAI::Models::Responses::ResponseCreatedEvent, OpenAI::Models::Responses::ResponseErrorEvent, OpenAI::Models::Responses::ResponseFileSearchCallCompletedEvent, OpenAI::Models::Responses::ResponseFileSearchCallInProgressEvent, OpenAI::Models::Responses::ResponseFileSearchCallSearchingEvent, OpenAI::Models::Responses::ResponseFunctionCallArgumentsDeltaEvent, OpenAI::Models::Responses::ResponseFunctionCallArgumentsDoneEvent, OpenAI::Models::Responses::ResponseInProgressEvent, OpenAI::Models::Responses::ResponseFailedEvent, OpenAI::Models::Responses::ResponseIncompleteEvent, OpenAI::Models::Responses::ResponseOutputItemAddedEvent, OpenAI::Models::Responses::ResponseOutputItemDoneEvent, OpenAI::Models::Responses::ResponseReasoningSummaryPartAddedEvent, OpenAI::Models::Responses::ResponseReasoningSummaryPartDoneEvent, OpenAI::Models::Responses::ResponseReasoningSummaryTextDeltaEvent, OpenAI::Models::Responses::ResponseReasoningSummaryTextDoneEvent, OpenAI::Models::Responses::ResponseRefusalDeltaEvent, OpenAI::Models::Responses::ResponseRefusalDoneEvent, OpenAI::Models::Responses::ResponseTextAnnotationDeltaEvent, OpenAI::Models::Responses::ResponseTextDeltaEvent, OpenAI::Models::Responses::ResponseTextDoneEvent, OpenAI::Models::Responses::ResponseWebSearchCallCompletedEvent, OpenAI::Models::Responses::ResponseWebSearchCallInProgressEvent, OpenAI::Models::Responses::ResponseWebSearchCallSearchingEvent] ) end def self.variants; end diff --git a/rbi/lib/openai/resources/evals.rbi b/rbi/lib/openai/resources/evals.rbi index f7fb72d2..ccf5a9f3 100644 --- a/rbi/lib/openai/resources/evals.rbi +++ b/rbi/lib/openai/resources/evals.rbi @@ -16,19 +16,20 @@ module OpenAI data_source_config: T.any( OpenAI::Models::EvalCreateParams::DataSourceConfig::Custom, OpenAI::Internal::AnyHash, - OpenAI::Models::EvalCreateParams::DataSourceConfig::StoredCompletions + OpenAI::Models::EvalCreateParams::DataSourceConfig::Logs ), testing_criteria: T::Array[ T.any( OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel, OpenAI::Internal::AnyHash, OpenAI::Models::EvalStringCheckGrader, - OpenAI::Models::EvalTextSimilarityGrader + OpenAI::Models::EvalTextSimilarityGrader, + OpenAI::Models::EvalCreateParams::TestingCriterion::Python, + OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel ) ], metadata: T.nilable(T::Hash[Symbol, String]), name: String, - share_with_openai: T::Boolean, request_options: T.nilable(T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash)) ) .returns(OpenAI::Models::EvalCreateResponse) @@ -47,8 +48,6 @@ module OpenAI metadata: nil, # The name of the evaluation. name: nil, - # Indicates whether the evaluation is shared with OpenAI. - share_with_openai: nil, request_options: {} ); end # Get an evaluation by ID. diff --git a/rbi/lib/openai/resources/evals/runs.rbi b/rbi/lib/openai/resources/evals/runs.rbi index d49a538a..014d5734 100644 --- a/rbi/lib/openai/resources/evals/runs.rbi +++ b/rbi/lib/openai/resources/evals/runs.rbi @@ -14,7 +14,8 @@ module OpenAI data_source: T.any( OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, OpenAI::Internal::AnyHash, - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource + OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource, + OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource ), metadata: T.nilable(T::Hash[Symbol, String]), name: String, @@ -76,8 +77,8 @@ module OpenAI # Sort order for runs by timestamp. Use `asc` for ascending order or `desc` for # descending order. Defaults to `asc`. order: nil, - # Filter runs by status. Use "queued" | "in_progress" | "failed" | "completed" | - # "canceled". + # Filter runs by status. One of `queued` | `in_progress` | `failed` | `completed` + # | `canceled`. status: nil, request_options: {} ); end diff --git a/rbi/lib/openai/resources/fine_tuning/checkpoints/permissions.rbi b/rbi/lib/openai/resources/fine_tuning/checkpoints/permissions.rbi index 0d9761de..64fb5a6a 100644 --- a/rbi/lib/openai/resources/fine_tuning/checkpoints/permissions.rbi +++ b/rbi/lib/openai/resources/fine_tuning/checkpoints/permissions.rbi @@ -58,14 +58,17 @@ module OpenAI # fine-tuned model checkpoint. sig do params( + permission_id: String, fine_tuned_model_checkpoint: String, request_options: T.nilable(T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash)) ) .returns(OpenAI::Models::FineTuning::Checkpoints::PermissionDeleteResponse) end def delete( + # The ID of the fine-tuned model checkpoint permission to delete. + permission_id, # The ID of the fine-tuned model checkpoint to delete a permission for. - fine_tuned_model_checkpoint, + fine_tuned_model_checkpoint:, request_options: {} ); end # @api private diff --git a/rbi/lib/openai/resources/images.rbi b/rbi/lib/openai/resources/images.rbi index 04c126f2..7e97700a 100644 --- a/rbi/lib/openai/resources/images.rbi +++ b/rbi/lib/openai/resources/images.rbi @@ -3,7 +3,7 @@ module OpenAI module Resources class Images - # Creates a variation of a given image. + # Creates a variation of a given image. This endpoint only supports `dall-e-2`. sig do params( image: T.any(Pathname, StringIO), @@ -23,8 +23,7 @@ module OpenAI # The model to use for image generation. Only `dall-e-2` is supported at this # time. model: nil, - # The number of images to generate. Must be between 1 and 10. For `dall-e-3`, only - # `n=1` is supported. + # The number of images to generate. Must be between 1 and 10. n: nil, # The format in which the generated images are returned. Must be one of `url` or # `b64_json`. URLs are only valid for 60 minutes after the image has been @@ -39,14 +38,16 @@ module OpenAI user: nil, request_options: {} ); end - # Creates an edited or extended image given an original image and a prompt. + # Creates an edited or extended image given one or more source images and a + # prompt. This endpoint only supports `gpt-image-1` and `dall-e-2`. sig do params( - image: T.any(Pathname, StringIO), + image: T.any(Pathname, StringIO, T::Array[T.any(Pathname, StringIO)]), prompt: String, mask: T.any(Pathname, StringIO), model: T.nilable(T.any(String, OpenAI::Models::ImageModel::OrSymbol)), n: T.nilable(Integer), + quality: T.nilable(OpenAI::Models::ImageEditParams::Quality::OrSymbol), response_format: T.nilable(OpenAI::Models::ImageEditParams::ResponseFormat::OrSymbol), size: T.nilable(OpenAI::Models::ImageEditParams::Size::OrSymbol), user: String, @@ -55,27 +56,37 @@ module OpenAI .returns(OpenAI::Models::ImagesResponse) end def edit( - # The image to edit. Must be a valid PNG file, less than 4MB, and square. If mask - # is not provided, image must have transparency, which will be used as the mask. + # The image(s) to edit. Must be a supported image file or an array of images. For + # `gpt-image-1`, each image should be a `png`, `webp`, or `jpg` file less than + # 25MB. For `dall-e-2`, you can only provide one image, and it should be a square + # `png` file less than 4MB. image:, # A text description of the desired image(s). The maximum length is 1000 - # characters. + # characters for `dall-e-2`, and 32000 characters for `gpt-image-1`. prompt:, # An additional image whose fully transparent areas (e.g. where alpha is zero) - # indicate where `image` should be edited. Must be a valid PNG file, less than + # indicate where `image` should be edited. If there are multiple images provided, + # the mask will be applied on the first image. Must be a valid PNG file, less than # 4MB, and have the same dimensions as `image`. mask: nil, - # The model to use for image generation. Only `dall-e-2` is supported at this - # time. + # The model to use for image generation. Only `dall-e-2` and `gpt-image-1` are + # supported. Defaults to `dall-e-2` unless a parameter specific to `gpt-image-1` + # is used. model: nil, # The number of images to generate. Must be between 1 and 10. n: nil, + # The quality of the image that will be generated. `high`, `medium` and `low` are + # only supported for `gpt-image-1`. `dall-e-2` only supports `standard` quality. + # Defaults to `auto`. + quality: nil, # The format in which the generated images are returned. Must be one of `url` or # `b64_json`. URLs are only valid for 60 minutes after the image has been - # generated. + # generated. This parameter is only supported for `dall-e-2`, as `gpt-image-1` + # will always return base64-encoded images. response_format: nil, - # The size of the generated images. Must be one of `256x256`, `512x512`, or - # `1024x1024`. + # The size of the generated images. Must be one of `1024x1024`, `1536x1024` + # (landscape), `1024x1536` (portrait), or `auto` (default value) for + # `gpt-image-1`, and one of `256x256`, `512x512`, or `1024x1024` for `dall-e-2`. size: nil, # A unique identifier representing your end-user, which can help OpenAI to monitor # and detect abuse. @@ -84,12 +95,17 @@ module OpenAI request_options: {} ); end # Creates an image given a prompt. + # [Learn more](https://platform.openai.com/docs/guides/images). sig do params( prompt: String, + background: T.nilable(OpenAI::Models::ImageGenerateParams::Background::OrSymbol), model: T.nilable(T.any(String, OpenAI::Models::ImageModel::OrSymbol)), + moderation: T.nilable(OpenAI::Models::ImageGenerateParams::Moderation::OrSymbol), n: T.nilable(Integer), - quality: OpenAI::Models::ImageGenerateParams::Quality::OrSymbol, + output_compression: T.nilable(Integer), + output_format: T.nilable(OpenAI::Models::ImageGenerateParams::OutputFormat::OrSymbol), + quality: T.nilable(OpenAI::Models::ImageGenerateParams::Quality::OrSymbol), response_format: T.nilable(OpenAI::Models::ImageGenerateParams::ResponseFormat::OrSymbol), size: T.nilable(OpenAI::Models::ImageGenerateParams::Size::OrSymbol), style: T.nilable(OpenAI::Models::ImageGenerateParams::Style::OrSymbol), @@ -99,30 +115,57 @@ module OpenAI .returns(OpenAI::Models::ImagesResponse) end def generate( - # A text description of the desired image(s). The maximum length is 1000 - # characters for `dall-e-2` and 4000 characters for `dall-e-3`. + # A text description of the desired image(s). The maximum length is 32000 + # characters for `gpt-image-1`, 1000 characters for `dall-e-2` and 4000 characters + # for `dall-e-3`. prompt:, - # The model to use for image generation. + # Allows to set transparency for the background of the generated image(s). This + # parameter is only supported for `gpt-image-1`. Must be one of `transparent`, + # `opaque` or `auto` (default value). When `auto` is used, the model will + # automatically determine the best background for the image. + # + # If `transparent`, the output format needs to support transparency, so it should + # be set to either `png` (default value) or `webp`. + background: nil, + # The model to use for image generation. One of `dall-e-2`, `dall-e-3`, or + # `gpt-image-1`. Defaults to `dall-e-2` unless a parameter specific to + # `gpt-image-1` is used. model: nil, + # Control the content-moderation level for images generated by `gpt-image-1`. Must + # be either `low` for less restrictive filtering or `auto` (default value). + moderation: nil, # The number of images to generate. Must be between 1 and 10. For `dall-e-3`, only # `n=1` is supported. n: nil, - # The quality of the image that will be generated. `hd` creates images with finer - # details and greater consistency across the image. This param is only supported - # for `dall-e-3`. + # The compression level (0-100%) for the generated images. This parameter is only + # supported for `gpt-image-1` with the `webp` or `jpeg` output formats, and + # defaults to 100. + output_compression: nil, + # The format in which the generated images are returned. This parameter is only + # supported for `gpt-image-1`. Must be one of `png`, `jpeg`, or `webp`. + output_format: nil, + # The quality of the image that will be generated. + # + # - `auto` (default value) will automatically select the best quality for the + # given model. + # - `high`, `medium` and `low` are supported for `gpt-image-1`. + # - `hd` and `standard` are supported for `dall-e-3`. + # - `standard` is the only option for `dall-e-2`. quality: nil, - # The format in which the generated images are returned. Must be one of `url` or - # `b64_json`. URLs are only valid for 60 minutes after the image has been - # generated. + # The format in which generated images with `dall-e-2` and `dall-e-3` are + # returned. Must be one of `url` or `b64_json`. URLs are only valid for 60 minutes + # after the image has been generated. This parameter isn't supported for + # `gpt-image-1` which will always return base64-encoded images. response_format: nil, - # The size of the generated images. Must be one of `256x256`, `512x512`, or - # `1024x1024` for `dall-e-2`. Must be one of `1024x1024`, `1792x1024`, or - # `1024x1792` for `dall-e-3` models. + # The size of the generated images. Must be one of `1024x1024`, `1536x1024` + # (landscape), `1024x1536` (portrait), or `auto` (default value) for + # `gpt-image-1`, one of `256x256`, `512x512`, or `1024x1024` for `dall-e-2`, and + # one of `1024x1024`, `1792x1024`, or `1024x1792` for `dall-e-3`. size: nil, - # The style of the generated images. Must be one of `vivid` or `natural`. Vivid - # causes the model to lean towards generating hyper-real and dramatic images. - # Natural causes the model to produce more natural, less hyper-real looking - # images. This param is only supported for `dall-e-3`. + # The style of the generated images. This parameter is only supported for + # `dall-e-3`. Must be one of `vivid` or `natural`. Vivid causes the model to lean + # towards generating hyper-real and dramatic images. Natural causes the model to + # produce more natural, less hyper-real looking images. style: nil, # A unique identifier representing your end-user, which can help OpenAI to monitor # and detect abuse. diff --git a/rbi/lib/openai/resources/responses.rbi b/rbi/lib/openai/resources/responses.rbi index c890608c..b67ed0d1 100644 --- a/rbi/lib/openai/resources/responses.rbi +++ b/rbi/lib/openai/resources/responses.rbi @@ -305,6 +305,10 @@ module OpenAI OpenAI::Models::Responses::ResponseIncompleteEvent, OpenAI::Models::Responses::ResponseOutputItemAddedEvent, OpenAI::Models::Responses::ResponseOutputItemDoneEvent, + OpenAI::Models::Responses::ResponseReasoningSummaryPartAddedEvent, + OpenAI::Models::Responses::ResponseReasoningSummaryPartDoneEvent, + OpenAI::Models::Responses::ResponseReasoningSummaryTextDeltaEvent, + OpenAI::Models::Responses::ResponseReasoningSummaryTextDoneEvent, OpenAI::Models::Responses::ResponseRefusalDeltaEvent, OpenAI::Models::Responses::ResponseRefusalDoneEvent, OpenAI::Models::Responses::ResponseTextAnnotationDeltaEvent, diff --git a/sig/openai/models/beta/thread_create_and_run_params.rbs b/sig/openai/models/beta/thread_create_and_run_params.rbs index aeb818ab..67ca7b95 100644 --- a/sig/openai/models/beta/thread_create_and_run_params.rbs +++ b/sig/openai/models/beta/thread_create_and_run_params.rbs @@ -15,7 +15,7 @@ module OpenAI thread: OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread, tool_choice: OpenAI::Models::Beta::assistant_tool_choice_option?, tool_resources: OpenAI::Models::Beta::ThreadCreateAndRunParams::ToolResources?, - tools: ::Array[OpenAI::Models::Beta::ThreadCreateAndRunParams::tool]?, + tools: ::Array[OpenAI::Models::Beta::assistant_tool]?, top_p: Float?, truncation_strategy: OpenAI::Models::Beta::ThreadCreateAndRunParams::TruncationStrategy? } @@ -55,7 +55,7 @@ module OpenAI attr_accessor tool_resources: OpenAI::Models::Beta::ThreadCreateAndRunParams::ToolResources? - attr_accessor tools: ::Array[OpenAI::Models::Beta::ThreadCreateAndRunParams::tool]? + attr_accessor tools: ::Array[OpenAI::Models::Beta::assistant_tool]? attr_accessor top_p: Float? @@ -74,7 +74,7 @@ module OpenAI ?thread: OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread, ?tool_choice: OpenAI::Models::Beta::assistant_tool_choice_option?, ?tool_resources: OpenAI::Models::Beta::ThreadCreateAndRunParams::ToolResources?, - ?tools: ::Array[OpenAI::Models::Beta::ThreadCreateAndRunParams::tool]?, + ?tools: ::Array[OpenAI::Models::Beta::assistant_tool]?, ?top_p: Float?, ?truncation_strategy: OpenAI::Models::Beta::ThreadCreateAndRunParams::TruncationStrategy?, ?request_options: OpenAI::request_opts @@ -417,17 +417,6 @@ module OpenAI end end - type tool = - OpenAI::Models::Beta::CodeInterpreterTool - | OpenAI::Models::Beta::FileSearchTool - | OpenAI::Models::Beta::FunctionTool - - module Tool - extend OpenAI::Internal::Type::Union - - def self?.variants: -> [OpenAI::Models::Beta::CodeInterpreterTool, OpenAI::Models::Beta::FileSearchTool, OpenAI::Models::Beta::FunctionTool] - end - type truncation_strategy = { type: OpenAI::Models::Beta::ThreadCreateAndRunParams::TruncationStrategy::type_, diff --git a/sig/openai/models/eval_create_params.rbs b/sig/openai/models/eval_create_params.rbs index 81c23475..09ba33d8 100644 --- a/sig/openai/models/eval_create_params.rbs +++ b/sig/openai/models/eval_create_params.rbs @@ -5,8 +5,7 @@ module OpenAI data_source_config: OpenAI::Models::EvalCreateParams::data_source_config, testing_criteria: ::Array[OpenAI::Models::EvalCreateParams::testing_criterion], metadata: OpenAI::Models::metadata?, - name: String, - share_with_openai: bool + name: String } & OpenAI::Internal::Type::request_parameters @@ -24,16 +23,11 @@ module OpenAI def name=: (String) -> String - attr_reader share_with_openai: bool? - - def share_with_openai=: (bool) -> bool - def initialize: ( data_source_config: OpenAI::Models::EvalCreateParams::data_source_config, testing_criteria: ::Array[OpenAI::Models::EvalCreateParams::testing_criterion], ?metadata: OpenAI::Models::metadata?, ?name: String, - ?share_with_openai: bool, ?request_options: OpenAI::request_opts ) -> void @@ -41,7 +35,7 @@ module OpenAI type data_source_config = OpenAI::Models::EvalCreateParams::DataSourceConfig::Custom - | OpenAI::Models::EvalCreateParams::DataSourceConfig::StoredCompletions + | OpenAI::Models::EvalCreateParams::DataSourceConfig::Logs module DataSourceConfig extend OpenAI::Internal::Type::Union @@ -71,29 +65,29 @@ module OpenAI def to_hash: -> OpenAI::Models::EvalCreateParams::DataSourceConfig::custom end - type stored_completions = - { type: :stored_completions, metadata: OpenAI::Models::metadata? } + type logs = { type: :logs, metadata: ::Hash[Symbol, top] } - class StoredCompletions < OpenAI::Internal::Type::BaseModel - attr_accessor type: :stored_completions + class Logs < OpenAI::Internal::Type::BaseModel + attr_accessor type: :logs - attr_accessor metadata: OpenAI::Models::metadata? + attr_reader metadata: ::Hash[Symbol, top]? - def initialize: ( - ?metadata: OpenAI::Models::metadata?, - ?type: :stored_completions - ) -> void + def metadata=: (::Hash[Symbol, top]) -> ::Hash[Symbol, top] + + def initialize: (?metadata: ::Hash[Symbol, top], ?type: :logs) -> void - def to_hash: -> OpenAI::Models::EvalCreateParams::DataSourceConfig::stored_completions + def to_hash: -> OpenAI::Models::EvalCreateParams::DataSourceConfig::logs end - def self?.variants: -> [OpenAI::Models::EvalCreateParams::DataSourceConfig::Custom, OpenAI::Models::EvalCreateParams::DataSourceConfig::StoredCompletions] + def self?.variants: -> [OpenAI::Models::EvalCreateParams::DataSourceConfig::Custom, OpenAI::Models::EvalCreateParams::DataSourceConfig::Logs] end type testing_criterion = OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel | OpenAI::Models::EvalStringCheckGrader | OpenAI::Models::EvalTextSimilarityGrader + | OpenAI::Models::EvalCreateParams::TestingCriterion::Python + | OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel module TestingCriterion extend OpenAI::Internal::Type::Union @@ -134,8 +128,7 @@ module OpenAI type input = OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::SimpleInputMessage - | OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::InputMessage - | OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::OutputMessage + | OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem module Input extend OpenAI::Internal::Type::Union @@ -152,67 +145,66 @@ module OpenAI def to_hash: -> OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::simple_input_message end - type input_message = + type eval_item = { - content: OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::InputMessage::Content, - role: OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::InputMessage::role, - type: OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::InputMessage::type_ + content: OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::content, + role: OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::role, + type: OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::type_ } - class InputMessage < OpenAI::Internal::Type::BaseModel - attr_accessor content: OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::InputMessage::Content + class EvalItem < OpenAI::Internal::Type::BaseModel + attr_accessor content: OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::content - attr_accessor role: OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::InputMessage::role + attr_accessor role: OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::role - attr_accessor type: OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::InputMessage::type_ + attr_reader type: OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::type_? + + def type=: ( + OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::type_ + ) -> OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::type_ def initialize: ( - content: OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::InputMessage::Content, - role: OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::InputMessage::role, - type: OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::InputMessage::type_ + content: OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::content, + role: OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::role, + ?type: OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::type_ ) -> void - def to_hash: -> OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::input_message + def to_hash: -> OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::eval_item type content = - { - text: String, - type: OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::InputMessage::Content::type_ - } - - class Content < OpenAI::Internal::Type::BaseModel - attr_accessor text: String + String + | OpenAI::Models::Responses::ResponseInputText + | OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::Content::OutputText - attr_accessor type: OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::InputMessage::Content::type_ + module Content + extend OpenAI::Internal::Type::Union - def initialize: ( - text: String, - type: OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::InputMessage::Content::type_ - ) -> void + type output_text = { text: String, type: :output_text } - def to_hash: -> OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::InputMessage::content + class OutputText < OpenAI::Internal::Type::BaseModel + attr_accessor text: String - type type_ = :input_text + attr_accessor type: :output_text - module Type - extend OpenAI::Internal::Type::Enum + def initialize: (text: String, ?type: :output_text) -> void - INPUT_TEXT: :input_text - - def self?.values: -> ::Array[OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::InputMessage::Content::type_] + def to_hash: -> OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::Content::output_text end + + def self?.variants: -> [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::Content::OutputText] end - type role = :user | :system | :developer + type role = :user | :assistant | :system | :developer module Role extend OpenAI::Internal::Type::Enum USER: :user + ASSISTANT: :assistant SYSTEM: :system DEVELOPER: :developer - def self?.values: -> ::Array[OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::InputMessage::role] + def self?.values: -> ::Array[OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::role] end type type_ = :message @@ -222,87 +214,168 @@ module OpenAI MESSAGE: :message - def self?.values: -> ::Array[OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::InputMessage::type_] + def self?.values: -> ::Array[OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::type_] end end - type output_message = - { - content: OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::OutputMessage::Content, - role: OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::OutputMessage::role, - type: OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::OutputMessage::type_ - } + def self?.variants: -> [OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::SimpleInputMessage, OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem] + end + end - class OutputMessage < OpenAI::Internal::Type::BaseModel - attr_accessor content: OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::OutputMessage::Content + type python = + { + name: String, + source: String, + type: :python, + image_tag: String, + pass_threshold: Float + } - attr_accessor role: OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::OutputMessage::role + class Python < OpenAI::Internal::Type::BaseModel + attr_accessor name: String - attr_accessor type: OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::OutputMessage::type_ + attr_accessor source: String - def initialize: ( - content: OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::OutputMessage::Content, - role: OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::OutputMessage::role, - type: OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::OutputMessage::type_ - ) -> void + attr_accessor type: :python - def to_hash: -> OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::output_message + attr_reader image_tag: String? - type content = - { - text: String, - type: OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::OutputMessage::Content::type_ - } + def image_tag=: (String) -> String - class Content < OpenAI::Internal::Type::BaseModel - attr_accessor text: String + attr_reader pass_threshold: Float? - attr_accessor type: OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::OutputMessage::Content::type_ + def pass_threshold=: (Float) -> Float - def initialize: ( - text: String, - type: OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::OutputMessage::Content::type_ - ) -> void + def initialize: ( + name: String, + source: String, + ?image_tag: String, + ?pass_threshold: Float, + ?type: :python + ) -> void - def to_hash: -> OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::OutputMessage::content + def to_hash: -> OpenAI::Models::EvalCreateParams::TestingCriterion::python + end - type type_ = :output_text + type score_model = + { + input: ::Array[OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input], + model: String, + name: String, + type: :score_model, + pass_threshold: Float, + range: ::Array[Float], + sampling_params: top + } - module Type - extend OpenAI::Internal::Type::Enum + class ScoreModel < OpenAI::Internal::Type::BaseModel + attr_accessor input: ::Array[OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input] - OUTPUT_TEXT: :output_text + attr_accessor model: String - def self?.values: -> ::Array[OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::OutputMessage::Content::type_] - end - end + attr_accessor name: String - type role = :assistant + attr_accessor type: :score_model - module Role - extend OpenAI::Internal::Type::Enum + attr_reader pass_threshold: Float? - ASSISTANT: :assistant + def pass_threshold=: (Float) -> Float - def self?.values: -> ::Array[OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::OutputMessage::role] - end + attr_reader range: ::Array[Float]? - type type_ = :message + def range=: (::Array[Float]) -> ::Array[Float] - module Type - extend OpenAI::Internal::Type::Enum + attr_reader sampling_params: top? - MESSAGE: :message + def sampling_params=: (top) -> top + + def initialize: ( + input: ::Array[OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input], + model: String, + name: String, + ?pass_threshold: Float, + ?range: ::Array[Float], + ?sampling_params: top, + ?type: :score_model + ) -> void + + def to_hash: -> OpenAI::Models::EvalCreateParams::TestingCriterion::score_model + + type input = + { + content: OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input::content, + role: OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input::role, + type: OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input::type_ + } + + class Input < OpenAI::Internal::Type::BaseModel + attr_accessor content: OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input::content + + attr_accessor role: OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input::role + + attr_reader type: OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input::type_? + + def type=: ( + OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input::type_ + ) -> OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input::type_ + + def initialize: ( + content: OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input::content, + role: OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input::role, + ?type: OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input::type_ + ) -> void - def self?.values: -> ::Array[OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::OutputMessage::type_] + def to_hash: -> OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::input + + type content = + String + | OpenAI::Models::Responses::ResponseInputText + | OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input::Content::OutputText + + module Content + extend OpenAI::Internal::Type::Union + + type output_text = { text: String, type: :output_text } + + class OutputText < OpenAI::Internal::Type::BaseModel + attr_accessor text: String + + attr_accessor type: :output_text + + def initialize: (text: String, ?type: :output_text) -> void + + def to_hash: -> OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input::Content::output_text end + + def self?.variants: -> [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input::Content::OutputText] end - def self?.variants: -> [OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::SimpleInputMessage, OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::InputMessage, OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::OutputMessage] + type role = :user | :assistant | :system | :developer + + module Role + extend OpenAI::Internal::Type::Enum + + USER: :user + ASSISTANT: :assistant + SYSTEM: :system + DEVELOPER: :developer + + def self?.values: -> ::Array[OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input::role] + end + + type type_ = :message + + module Type + extend OpenAI::Internal::Type::Enum + + MESSAGE: :message + + def self?.values: -> ::Array[OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input::type_] + end end end - def self?.variants: -> [OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel, OpenAI::Models::EvalStringCheckGrader, OpenAI::Models::EvalTextSimilarityGrader] + def self?.variants: -> [OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel, OpenAI::Models::EvalStringCheckGrader, OpenAI::Models::EvalTextSimilarityGrader, OpenAI::Models::EvalCreateParams::TestingCriterion::Python, OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel] end end end diff --git a/sig/openai/models/eval_create_response.rbs b/sig/openai/models/eval_create_response.rbs index 91552ac6..8ff0e39f 100644 --- a/sig/openai/models/eval_create_response.rbs +++ b/sig/openai/models/eval_create_response.rbs @@ -8,7 +8,6 @@ module OpenAI metadata: OpenAI::Models::metadata?, name: String, object: :eval, - share_with_openai: bool, testing_criteria: ::Array[OpenAI::Models::EvalCreateResponse::testing_criterion] } @@ -25,8 +24,6 @@ module OpenAI attr_accessor object: :eval - attr_accessor share_with_openai: bool - attr_accessor testing_criteria: ::Array[OpenAI::Models::EvalCreateResponse::testing_criterion] def initialize: ( @@ -35,7 +32,6 @@ module OpenAI data_source_config: OpenAI::Models::EvalCreateResponse::data_source_config, metadata: OpenAI::Models::metadata?, name: String, - share_with_openai: bool, testing_criteria: ::Array[OpenAI::Models::EvalCreateResponse::testing_criterion], ?object: :eval ) -> void @@ -56,11 +52,166 @@ module OpenAI OpenAI::Models::EvalLabelModelGrader | OpenAI::Models::EvalStringCheckGrader | OpenAI::Models::EvalTextSimilarityGrader + | OpenAI::Models::EvalCreateResponse::TestingCriterion::Python + | OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel module TestingCriterion extend OpenAI::Internal::Type::Union - def self?.variants: -> [OpenAI::Models::EvalLabelModelGrader, OpenAI::Models::EvalStringCheckGrader, OpenAI::Models::EvalTextSimilarityGrader] + type python = + { + name: String, + source: String, + type: :python, + image_tag: String, + pass_threshold: Float + } + + class Python < OpenAI::Internal::Type::BaseModel + attr_accessor name: String + + attr_accessor source: String + + attr_accessor type: :python + + attr_reader image_tag: String? + + def image_tag=: (String) -> String + + attr_reader pass_threshold: Float? + + def pass_threshold=: (Float) -> Float + + def initialize: ( + name: String, + source: String, + ?image_tag: String, + ?pass_threshold: Float, + ?type: :python + ) -> void + + def to_hash: -> OpenAI::Models::EvalCreateResponse::TestingCriterion::python + end + + type score_model = + { + input: ::Array[OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input], + model: String, + name: String, + type: :score_model, + pass_threshold: Float, + range: ::Array[Float], + sampling_params: top + } + + class ScoreModel < OpenAI::Internal::Type::BaseModel + attr_accessor input: ::Array[OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input] + + attr_accessor model: String + + attr_accessor name: String + + attr_accessor type: :score_model + + attr_reader pass_threshold: Float? + + def pass_threshold=: (Float) -> Float + + attr_reader range: ::Array[Float]? + + def range=: (::Array[Float]) -> ::Array[Float] + + attr_reader sampling_params: top? + + def sampling_params=: (top) -> top + + def initialize: ( + input: ::Array[OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input], + model: String, + name: String, + ?pass_threshold: Float, + ?range: ::Array[Float], + ?sampling_params: top, + ?type: :score_model + ) -> void + + def to_hash: -> OpenAI::Models::EvalCreateResponse::TestingCriterion::score_model + + type input = + { + content: OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::content, + role: OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::role, + type: OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::type_ + } + + class Input < OpenAI::Internal::Type::BaseModel + attr_accessor content: OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::content + + attr_accessor role: OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::role + + attr_reader type: OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::type_? + + def type=: ( + OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::type_ + ) -> OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::type_ + + def initialize: ( + content: OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::content, + role: OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::role, + ?type: OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::type_ + ) -> void + + def to_hash: -> OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::input + + type content = + String + | OpenAI::Models::Responses::ResponseInputText + | OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Content::OutputText + + module Content + extend OpenAI::Internal::Type::Union + + type output_text = { text: String, type: :output_text } + + class OutputText < OpenAI::Internal::Type::BaseModel + attr_accessor text: String + + attr_accessor type: :output_text + + def initialize: (text: String, ?type: :output_text) -> void + + def to_hash: -> OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Content::output_text + end + + def self?.variants: -> [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Content::OutputText] + end + + type role = :user | :assistant | :system | :developer + + module Role + extend OpenAI::Internal::Type::Enum + + USER: :user + ASSISTANT: :assistant + SYSTEM: :system + DEVELOPER: :developer + + def self?.values: -> ::Array[OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::role] + end + + type type_ = :message + + module Type + extend OpenAI::Internal::Type::Enum + + MESSAGE: :message + + def self?.values: -> ::Array[OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::type_] + end + end + end + + def self?.variants: -> [OpenAI::Models::EvalLabelModelGrader, OpenAI::Models::EvalStringCheckGrader, OpenAI::Models::EvalTextSimilarityGrader, OpenAI::Models::EvalCreateResponse::TestingCriterion::Python, OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel] end end end diff --git a/sig/openai/models/eval_label_model_grader.rbs b/sig/openai/models/eval_label_model_grader.rbs index af0c4a5f..dab1b730 100644 --- a/sig/openai/models/eval_label_model_grader.rbs +++ b/sig/openai/models/eval_label_model_grader.rbs @@ -2,7 +2,7 @@ module OpenAI module Models type eval_label_model_grader = { - input: ::Array[OpenAI::Models::EvalLabelModelGrader::input], + input: ::Array[OpenAI::Models::EvalLabelModelGrader::Input], labels: ::Array[String], model: String, name: String, @@ -11,7 +11,7 @@ module OpenAI } class EvalLabelModelGrader < OpenAI::Internal::Type::BaseModel - attr_accessor input: ::Array[OpenAI::Models::EvalLabelModelGrader::input] + attr_accessor input: ::Array[OpenAI::Models::EvalLabelModelGrader::Input] attr_accessor labels: ::Array[String] @@ -24,7 +24,7 @@ module OpenAI attr_accessor type: :label_model def initialize: ( - input: ::Array[OpenAI::Models::EvalLabelModelGrader::input], + input: ::Array[OpenAI::Models::EvalLabelModelGrader::Input], labels: ::Array[String], model: String, name: String, @@ -35,149 +35,76 @@ module OpenAI def to_hash: -> OpenAI::Models::eval_label_model_grader type input = - OpenAI::Models::EvalLabelModelGrader::Input::Assistant - | OpenAI::Models::EvalLabelModelGrader::Input::InputMessage + { + content: OpenAI::Models::EvalLabelModelGrader::Input::content, + role: OpenAI::Models::EvalLabelModelGrader::Input::role, + type: OpenAI::Models::EvalLabelModelGrader::Input::type_ + } - module Input - extend OpenAI::Internal::Type::Union + class Input < OpenAI::Internal::Type::BaseModel + attr_accessor content: OpenAI::Models::EvalLabelModelGrader::Input::content - type input_message = - { - content: OpenAI::Models::EvalLabelModelGrader::Input::InputMessage::Content, - role: OpenAI::Models::EvalLabelModelGrader::Input::InputMessage::role, - type: OpenAI::Models::EvalLabelModelGrader::Input::InputMessage::type_ - } + attr_accessor role: OpenAI::Models::EvalLabelModelGrader::Input::role - class InputMessage < OpenAI::Internal::Type::BaseModel - attr_accessor content: OpenAI::Models::EvalLabelModelGrader::Input::InputMessage::Content + attr_reader type: OpenAI::Models::EvalLabelModelGrader::Input::type_? - attr_accessor role: OpenAI::Models::EvalLabelModelGrader::Input::InputMessage::role + def type=: ( + OpenAI::Models::EvalLabelModelGrader::Input::type_ + ) -> OpenAI::Models::EvalLabelModelGrader::Input::type_ - attr_accessor type: OpenAI::Models::EvalLabelModelGrader::Input::InputMessage::type_ + def initialize: ( + content: OpenAI::Models::EvalLabelModelGrader::Input::content, + role: OpenAI::Models::EvalLabelModelGrader::Input::role, + ?type: OpenAI::Models::EvalLabelModelGrader::Input::type_ + ) -> void - def initialize: ( - content: OpenAI::Models::EvalLabelModelGrader::Input::InputMessage::Content, - role: OpenAI::Models::EvalLabelModelGrader::Input::InputMessage::role, - type: OpenAI::Models::EvalLabelModelGrader::Input::InputMessage::type_ - ) -> void + def to_hash: -> OpenAI::Models::EvalLabelModelGrader::input - def to_hash: -> OpenAI::Models::EvalLabelModelGrader::Input::input_message + type content = + String + | OpenAI::Models::Responses::ResponseInputText + | OpenAI::Models::EvalLabelModelGrader::Input::Content::OutputText - type content = - { - text: String, - type: OpenAI::Models::EvalLabelModelGrader::Input::InputMessage::Content::type_ - } + module Content + extend OpenAI::Internal::Type::Union - class Content < OpenAI::Internal::Type::BaseModel - attr_accessor text: String - - attr_accessor type: OpenAI::Models::EvalLabelModelGrader::Input::InputMessage::Content::type_ - - def initialize: ( - text: String, - type: OpenAI::Models::EvalLabelModelGrader::Input::InputMessage::Content::type_ - ) -> void - - def to_hash: -> OpenAI::Models::EvalLabelModelGrader::Input::InputMessage::content + type output_text = { text: String, type: :output_text } - type type_ = :input_text - - module Type - extend OpenAI::Internal::Type::Enum - - INPUT_TEXT: :input_text - - def self?.values: -> ::Array[OpenAI::Models::EvalLabelModelGrader::Input::InputMessage::Content::type_] - end - end - - type role = :user | :system | :developer + class OutputText < OpenAI::Internal::Type::BaseModel + attr_accessor text: String - module Role - extend OpenAI::Internal::Type::Enum + attr_accessor type: :output_text - USER: :user - SYSTEM: :system - DEVELOPER: :developer + def initialize: (text: String, ?type: :output_text) -> void - def self?.values: -> ::Array[OpenAI::Models::EvalLabelModelGrader::Input::InputMessage::role] + def to_hash: -> OpenAI::Models::EvalLabelModelGrader::Input::Content::output_text end - type type_ = :message - - module Type - extend OpenAI::Internal::Type::Enum - - MESSAGE: :message - - def self?.values: -> ::Array[OpenAI::Models::EvalLabelModelGrader::Input::InputMessage::type_] - end + def self?.variants: -> [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::EvalLabelModelGrader::Input::Content::OutputText] end - type assistant = - { - content: OpenAI::Models::EvalLabelModelGrader::Input::Assistant::Content, - role: :assistant, - type: OpenAI::Models::EvalLabelModelGrader::Input::Assistant::type_ - } - - class Assistant < OpenAI::Internal::Type::BaseModel - attr_accessor content: OpenAI::Models::EvalLabelModelGrader::Input::Assistant::Content + type role = :user | :assistant | :system | :developer - attr_accessor role: :assistant + module Role + extend OpenAI::Internal::Type::Enum - attr_accessor type: OpenAI::Models::EvalLabelModelGrader::Input::Assistant::type_ + USER: :user + ASSISTANT: :assistant + SYSTEM: :system + DEVELOPER: :developer - def initialize: ( - content: OpenAI::Models::EvalLabelModelGrader::Input::Assistant::Content, - type: OpenAI::Models::EvalLabelModelGrader::Input::Assistant::type_, - ?role: :assistant - ) -> void - - def to_hash: -> OpenAI::Models::EvalLabelModelGrader::Input::assistant - - type content = - { - text: String, - type: OpenAI::Models::EvalLabelModelGrader::Input::Assistant::Content::type_ - } - - class Content < OpenAI::Internal::Type::BaseModel - attr_accessor text: String - - attr_accessor type: OpenAI::Models::EvalLabelModelGrader::Input::Assistant::Content::type_ - - def initialize: ( - text: String, - type: OpenAI::Models::EvalLabelModelGrader::Input::Assistant::Content::type_ - ) -> void - - def to_hash: -> OpenAI::Models::EvalLabelModelGrader::Input::Assistant::content - - type type_ = :output_text - - module Type - extend OpenAI::Internal::Type::Enum - - OUTPUT_TEXT: :output_text - - def self?.values: -> ::Array[OpenAI::Models::EvalLabelModelGrader::Input::Assistant::Content::type_] - end - end + def self?.values: -> ::Array[OpenAI::Models::EvalLabelModelGrader::Input::role] + end - type type_ = :message + type type_ = :message - module Type - extend OpenAI::Internal::Type::Enum + module Type + extend OpenAI::Internal::Type::Enum - MESSAGE: :message + MESSAGE: :message - def self?.values: -> ::Array[OpenAI::Models::EvalLabelModelGrader::Input::Assistant::type_] - end + def self?.values: -> ::Array[OpenAI::Models::EvalLabelModelGrader::Input::type_] end - - def self?.variants: -> [OpenAI::Models::EvalLabelModelGrader::Input::Assistant, OpenAI::Models::EvalLabelModelGrader::Input::InputMessage] end end end diff --git a/sig/openai/models/eval_list_response.rbs b/sig/openai/models/eval_list_response.rbs index 25f5a62c..f7a1047b 100644 --- a/sig/openai/models/eval_list_response.rbs +++ b/sig/openai/models/eval_list_response.rbs @@ -8,7 +8,6 @@ module OpenAI metadata: OpenAI::Models::metadata?, name: String, object: :eval, - share_with_openai: bool, testing_criteria: ::Array[OpenAI::Models::EvalListResponse::testing_criterion] } @@ -25,8 +24,6 @@ module OpenAI attr_accessor object: :eval - attr_accessor share_with_openai: bool - attr_accessor testing_criteria: ::Array[OpenAI::Models::EvalListResponse::testing_criterion] def initialize: ( @@ -35,7 +32,6 @@ module OpenAI data_source_config: OpenAI::Models::EvalListResponse::data_source_config, metadata: OpenAI::Models::metadata?, name: String, - share_with_openai: bool, testing_criteria: ::Array[OpenAI::Models::EvalListResponse::testing_criterion], ?object: :eval ) -> void @@ -56,11 +52,166 @@ module OpenAI OpenAI::Models::EvalLabelModelGrader | OpenAI::Models::EvalStringCheckGrader | OpenAI::Models::EvalTextSimilarityGrader + | OpenAI::Models::EvalListResponse::TestingCriterion::Python + | OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel module TestingCriterion extend OpenAI::Internal::Type::Union - def self?.variants: -> [OpenAI::Models::EvalLabelModelGrader, OpenAI::Models::EvalStringCheckGrader, OpenAI::Models::EvalTextSimilarityGrader] + type python = + { + name: String, + source: String, + type: :python, + image_tag: String, + pass_threshold: Float + } + + class Python < OpenAI::Internal::Type::BaseModel + attr_accessor name: String + + attr_accessor source: String + + attr_accessor type: :python + + attr_reader image_tag: String? + + def image_tag=: (String) -> String + + attr_reader pass_threshold: Float? + + def pass_threshold=: (Float) -> Float + + def initialize: ( + name: String, + source: String, + ?image_tag: String, + ?pass_threshold: Float, + ?type: :python + ) -> void + + def to_hash: -> OpenAI::Models::EvalListResponse::TestingCriterion::python + end + + type score_model = + { + input: ::Array[OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input], + model: String, + name: String, + type: :score_model, + pass_threshold: Float, + range: ::Array[Float], + sampling_params: top + } + + class ScoreModel < OpenAI::Internal::Type::BaseModel + attr_accessor input: ::Array[OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input] + + attr_accessor model: String + + attr_accessor name: String + + attr_accessor type: :score_model + + attr_reader pass_threshold: Float? + + def pass_threshold=: (Float) -> Float + + attr_reader range: ::Array[Float]? + + def range=: (::Array[Float]) -> ::Array[Float] + + attr_reader sampling_params: top? + + def sampling_params=: (top) -> top + + def initialize: ( + input: ::Array[OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input], + model: String, + name: String, + ?pass_threshold: Float, + ?range: ::Array[Float], + ?sampling_params: top, + ?type: :score_model + ) -> void + + def to_hash: -> OpenAI::Models::EvalListResponse::TestingCriterion::score_model + + type input = + { + content: OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::content, + role: OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::role, + type: OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::type_ + } + + class Input < OpenAI::Internal::Type::BaseModel + attr_accessor content: OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::content + + attr_accessor role: OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::role + + attr_reader type: OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::type_? + + def type=: ( + OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::type_ + ) -> OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::type_ + + def initialize: ( + content: OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::content, + role: OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::role, + ?type: OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::type_ + ) -> void + + def to_hash: -> OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::input + + type content = + String + | OpenAI::Models::Responses::ResponseInputText + | OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Content::OutputText + + module Content + extend OpenAI::Internal::Type::Union + + type output_text = { text: String, type: :output_text } + + class OutputText < OpenAI::Internal::Type::BaseModel + attr_accessor text: String + + attr_accessor type: :output_text + + def initialize: (text: String, ?type: :output_text) -> void + + def to_hash: -> OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Content::output_text + end + + def self?.variants: -> [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Content::OutputText] + end + + type role = :user | :assistant | :system | :developer + + module Role + extend OpenAI::Internal::Type::Enum + + USER: :user + ASSISTANT: :assistant + SYSTEM: :system + DEVELOPER: :developer + + def self?.values: -> ::Array[OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::role] + end + + type type_ = :message + + module Type + extend OpenAI::Internal::Type::Enum + + MESSAGE: :message + + def self?.values: -> ::Array[OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::type_] + end + end + end + + def self?.variants: -> [OpenAI::Models::EvalLabelModelGrader, OpenAI::Models::EvalStringCheckGrader, OpenAI::Models::EvalTextSimilarityGrader, OpenAI::Models::EvalListResponse::TestingCriterion::Python, OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel] end end end diff --git a/sig/openai/models/eval_retrieve_response.rbs b/sig/openai/models/eval_retrieve_response.rbs index 39e82c42..b354045c 100644 --- a/sig/openai/models/eval_retrieve_response.rbs +++ b/sig/openai/models/eval_retrieve_response.rbs @@ -8,7 +8,6 @@ module OpenAI metadata: OpenAI::Models::metadata?, name: String, object: :eval, - share_with_openai: bool, testing_criteria: ::Array[OpenAI::Models::EvalRetrieveResponse::testing_criterion] } @@ -25,8 +24,6 @@ module OpenAI attr_accessor object: :eval - attr_accessor share_with_openai: bool - attr_accessor testing_criteria: ::Array[OpenAI::Models::EvalRetrieveResponse::testing_criterion] def initialize: ( @@ -35,7 +32,6 @@ module OpenAI data_source_config: OpenAI::Models::EvalRetrieveResponse::data_source_config, metadata: OpenAI::Models::metadata?, name: String, - share_with_openai: bool, testing_criteria: ::Array[OpenAI::Models::EvalRetrieveResponse::testing_criterion], ?object: :eval ) -> void @@ -56,11 +52,166 @@ module OpenAI OpenAI::Models::EvalLabelModelGrader | OpenAI::Models::EvalStringCheckGrader | OpenAI::Models::EvalTextSimilarityGrader + | OpenAI::Models::EvalRetrieveResponse::TestingCriterion::Python + | OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel module TestingCriterion extend OpenAI::Internal::Type::Union - def self?.variants: -> [OpenAI::Models::EvalLabelModelGrader, OpenAI::Models::EvalStringCheckGrader, OpenAI::Models::EvalTextSimilarityGrader] + type python = + { + name: String, + source: String, + type: :python, + image_tag: String, + pass_threshold: Float + } + + class Python < OpenAI::Internal::Type::BaseModel + attr_accessor name: String + + attr_accessor source: String + + attr_accessor type: :python + + attr_reader image_tag: String? + + def image_tag=: (String) -> String + + attr_reader pass_threshold: Float? + + def pass_threshold=: (Float) -> Float + + def initialize: ( + name: String, + source: String, + ?image_tag: String, + ?pass_threshold: Float, + ?type: :python + ) -> void + + def to_hash: -> OpenAI::Models::EvalRetrieveResponse::TestingCriterion::python + end + + type score_model = + { + input: ::Array[OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input], + model: String, + name: String, + type: :score_model, + pass_threshold: Float, + range: ::Array[Float], + sampling_params: top + } + + class ScoreModel < OpenAI::Internal::Type::BaseModel + attr_accessor input: ::Array[OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input] + + attr_accessor model: String + + attr_accessor name: String + + attr_accessor type: :score_model + + attr_reader pass_threshold: Float? + + def pass_threshold=: (Float) -> Float + + attr_reader range: ::Array[Float]? + + def range=: (::Array[Float]) -> ::Array[Float] + + attr_reader sampling_params: top? + + def sampling_params=: (top) -> top + + def initialize: ( + input: ::Array[OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input], + model: String, + name: String, + ?pass_threshold: Float, + ?range: ::Array[Float], + ?sampling_params: top, + ?type: :score_model + ) -> void + + def to_hash: -> OpenAI::Models::EvalRetrieveResponse::TestingCriterion::score_model + + type input = + { + content: OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::content, + role: OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::role, + type: OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::type_ + } + + class Input < OpenAI::Internal::Type::BaseModel + attr_accessor content: OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::content + + attr_accessor role: OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::role + + attr_reader type: OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::type_? + + def type=: ( + OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::type_ + ) -> OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::type_ + + def initialize: ( + content: OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::content, + role: OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::role, + ?type: OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::type_ + ) -> void + + def to_hash: -> OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::input + + type content = + String + | OpenAI::Models::Responses::ResponseInputText + | OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Content::OutputText + + module Content + extend OpenAI::Internal::Type::Union + + type output_text = { text: String, type: :output_text } + + class OutputText < OpenAI::Internal::Type::BaseModel + attr_accessor text: String + + attr_accessor type: :output_text + + def initialize: (text: String, ?type: :output_text) -> void + + def to_hash: -> OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Content::output_text + end + + def self?.variants: -> [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Content::OutputText] + end + + type role = :user | :assistant | :system | :developer + + module Role + extend OpenAI::Internal::Type::Enum + + USER: :user + ASSISTANT: :assistant + SYSTEM: :system + DEVELOPER: :developer + + def self?.values: -> ::Array[OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::role] + end + + type type_ = :message + + module Type + extend OpenAI::Internal::Type::Enum + + MESSAGE: :message + + def self?.values: -> ::Array[OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::type_] + end + end + end + + def self?.variants: -> [OpenAI::Models::EvalLabelModelGrader, OpenAI::Models::EvalStringCheckGrader, OpenAI::Models::EvalTextSimilarityGrader, OpenAI::Models::EvalRetrieveResponse::TestingCriterion::Python, OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel] end end end diff --git a/sig/openai/models/eval_text_similarity_grader.rbs b/sig/openai/models/eval_text_similarity_grader.rbs index 7b15ca88..98059580 100644 --- a/sig/openai/models/eval_text_similarity_grader.rbs +++ b/sig/openai/models/eval_text_similarity_grader.rbs @@ -47,7 +47,6 @@ module OpenAI | :rouge_4 | :rouge_5 | :rouge_l - | :cosine module EvaluationMetric extend OpenAI::Internal::Type::Enum @@ -62,7 +61,6 @@ module OpenAI ROUGE_4: :rouge_4 ROUGE_5: :rouge_5 ROUGE_L: :rouge_l - COSINE: :cosine def self?.values: -> ::Array[OpenAI::Models::EvalTextSimilarityGrader::evaluation_metric] end diff --git a/sig/openai/models/eval_update_response.rbs b/sig/openai/models/eval_update_response.rbs index 6aad41bb..2cc7f800 100644 --- a/sig/openai/models/eval_update_response.rbs +++ b/sig/openai/models/eval_update_response.rbs @@ -8,7 +8,6 @@ module OpenAI metadata: OpenAI::Models::metadata?, name: String, object: :eval, - share_with_openai: bool, testing_criteria: ::Array[OpenAI::Models::EvalUpdateResponse::testing_criterion] } @@ -25,8 +24,6 @@ module OpenAI attr_accessor object: :eval - attr_accessor share_with_openai: bool - attr_accessor testing_criteria: ::Array[OpenAI::Models::EvalUpdateResponse::testing_criterion] def initialize: ( @@ -35,7 +32,6 @@ module OpenAI data_source_config: OpenAI::Models::EvalUpdateResponse::data_source_config, metadata: OpenAI::Models::metadata?, name: String, - share_with_openai: bool, testing_criteria: ::Array[OpenAI::Models::EvalUpdateResponse::testing_criterion], ?object: :eval ) -> void @@ -56,11 +52,166 @@ module OpenAI OpenAI::Models::EvalLabelModelGrader | OpenAI::Models::EvalStringCheckGrader | OpenAI::Models::EvalTextSimilarityGrader + | OpenAI::Models::EvalUpdateResponse::TestingCriterion::Python + | OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel module TestingCriterion extend OpenAI::Internal::Type::Union - def self?.variants: -> [OpenAI::Models::EvalLabelModelGrader, OpenAI::Models::EvalStringCheckGrader, OpenAI::Models::EvalTextSimilarityGrader] + type python = + { + name: String, + source: String, + type: :python, + image_tag: String, + pass_threshold: Float + } + + class Python < OpenAI::Internal::Type::BaseModel + attr_accessor name: String + + attr_accessor source: String + + attr_accessor type: :python + + attr_reader image_tag: String? + + def image_tag=: (String) -> String + + attr_reader pass_threshold: Float? + + def pass_threshold=: (Float) -> Float + + def initialize: ( + name: String, + source: String, + ?image_tag: String, + ?pass_threshold: Float, + ?type: :python + ) -> void + + def to_hash: -> OpenAI::Models::EvalUpdateResponse::TestingCriterion::python + end + + type score_model = + { + input: ::Array[OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input], + model: String, + name: String, + type: :score_model, + pass_threshold: Float, + range: ::Array[Float], + sampling_params: top + } + + class ScoreModel < OpenAI::Internal::Type::BaseModel + attr_accessor input: ::Array[OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input] + + attr_accessor model: String + + attr_accessor name: String + + attr_accessor type: :score_model + + attr_reader pass_threshold: Float? + + def pass_threshold=: (Float) -> Float + + attr_reader range: ::Array[Float]? + + def range=: (::Array[Float]) -> ::Array[Float] + + attr_reader sampling_params: top? + + def sampling_params=: (top) -> top + + def initialize: ( + input: ::Array[OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input], + model: String, + name: String, + ?pass_threshold: Float, + ?range: ::Array[Float], + ?sampling_params: top, + ?type: :score_model + ) -> void + + def to_hash: -> OpenAI::Models::EvalUpdateResponse::TestingCriterion::score_model + + type input = + { + content: OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::content, + role: OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::role, + type: OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::type_ + } + + class Input < OpenAI::Internal::Type::BaseModel + attr_accessor content: OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::content + + attr_accessor role: OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::role + + attr_reader type: OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::type_? + + def type=: ( + OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::type_ + ) -> OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::type_ + + def initialize: ( + content: OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::content, + role: OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::role, + ?type: OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::type_ + ) -> void + + def to_hash: -> OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::input + + type content = + String + | OpenAI::Models::Responses::ResponseInputText + | OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Content::OutputText + + module Content + extend OpenAI::Internal::Type::Union + + type output_text = { text: String, type: :output_text } + + class OutputText < OpenAI::Internal::Type::BaseModel + attr_accessor text: String + + attr_accessor type: :output_text + + def initialize: (text: String, ?type: :output_text) -> void + + def to_hash: -> OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Content::output_text + end + + def self?.variants: -> [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Content::OutputText] + end + + type role = :user | :assistant | :system | :developer + + module Role + extend OpenAI::Internal::Type::Enum + + USER: :user + ASSISTANT: :assistant + SYSTEM: :system + DEVELOPER: :developer + + def self?.values: -> ::Array[OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::role] + end + + type type_ = :message + + module Type + extend OpenAI::Internal::Type::Enum + + MESSAGE: :message + + def self?.values: -> ::Array[OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::type_] + end + end + end + + def self?.variants: -> [OpenAI::Models::EvalLabelModelGrader, OpenAI::Models::EvalStringCheckGrader, OpenAI::Models::EvalTextSimilarityGrader, OpenAI::Models::EvalUpdateResponse::TestingCriterion::Python, OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel] end end end diff --git a/sig/openai/models/evals/create_eval_completions_run_data_source.rbs b/sig/openai/models/evals/create_eval_completions_run_data_source.rbs index de1f4c07..bbe22adb 100644 --- a/sig/openai/models/evals/create_eval_completions_run_data_source.rbs +++ b/sig/openai/models/evals/create_eval_completions_run_data_source.rbs @@ -3,22 +3,28 @@ module OpenAI module Evals type create_eval_completions_run_data_source = { - input_messages: OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::input_messages, - model: String, source: OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::source, type: OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::type_, + input_messages: OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::input_messages, + model: String, sampling_params: OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::SamplingParams } class CreateEvalCompletionsRunDataSource < OpenAI::Internal::Type::BaseModel - attr_accessor input_messages: OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::input_messages - - attr_accessor model: String - attr_accessor source: OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::source attr_accessor type: OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::type_ + attr_reader input_messages: OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::input_messages? + + def input_messages=: ( + OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::input_messages + ) -> OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::input_messages + + attr_reader model: String? + + def model=: (String) -> String + attr_reader sampling_params: OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::SamplingParams? def sampling_params=: ( @@ -26,193 +32,212 @@ module OpenAI ) -> OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::SamplingParams def initialize: ( - input_messages: OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::input_messages, - model: String, source: OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::source, type: OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::type_, + ?input_messages: OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::input_messages, + ?model: String, ?sampling_params: OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::SamplingParams ) -> void def to_hash: -> OpenAI::Models::Evals::create_eval_completions_run_data_source - type input_messages = - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template - | OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::ItemReference + type source = + OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Source::FileContent + | OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Source::FileID + | OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Source::StoredCompletions - module InputMessages + module Source extend OpenAI::Internal::Type::Union - type template = + type file_content = { - template: ::Array[OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::template], - type: :template + content: ::Array[OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Source::FileContent::Content], + type: :file_content } - class Template < OpenAI::Internal::Type::BaseModel - attr_accessor template: ::Array[OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::template] + class FileContent < OpenAI::Internal::Type::BaseModel + attr_accessor content: ::Array[OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Source::FileContent::Content] - attr_accessor type: :template + attr_accessor type: :file_content def initialize: ( - template: ::Array[OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::template], - ?type: :template + content: ::Array[OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Source::FileContent::Content], + ?type: :file_content ) -> void - def to_hash: -> OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::template + def to_hash: -> OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Source::file_content - type template = - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::ChatMessage - | OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::InputMessage - | OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::OutputMessage + type content = + { item: ::Hash[Symbol, top], sample: ::Hash[Symbol, top] } - module Template - extend OpenAI::Internal::Type::Union + class Content < OpenAI::Internal::Type::BaseModel + attr_accessor item: ::Hash[Symbol, top] - type chat_message = { content: String, role: String } + attr_reader sample: ::Hash[Symbol, top]? - class ChatMessage < OpenAI::Internal::Type::BaseModel - attr_accessor content: String + def sample=: (::Hash[Symbol, top]) -> ::Hash[Symbol, top] - attr_accessor role: String + def initialize: ( + item: ::Hash[Symbol, top], + ?sample: ::Hash[Symbol, top] + ) -> void - def initialize: (content: String, role: String) -> void + def to_hash: -> OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Source::FileContent::content + end + end - def to_hash: -> OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::chat_message - end + type file_id = { id: String, type: :file_id } - type input_message = - { - content: OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::InputMessage::Content, - role: OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::InputMessage::role, - type: OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::InputMessage::type_ - } + class FileID < OpenAI::Internal::Type::BaseModel + attr_accessor id: String - class InputMessage < OpenAI::Internal::Type::BaseModel - attr_accessor content: OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::InputMessage::Content + attr_accessor type: :file_id - attr_accessor role: OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::InputMessage::role + def initialize: (id: String, ?type: :file_id) -> void - attr_accessor type: OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::InputMessage::type_ + def to_hash: -> OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Source::file_id + end - def initialize: ( - content: OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::InputMessage::Content, - role: OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::InputMessage::role, - type: OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::InputMessage::type_ - ) -> void + type stored_completions = + { + type: :stored_completions, + created_after: Integer?, + created_before: Integer?, + limit: Integer?, + metadata: OpenAI::Models::metadata?, + model: String? + } - def to_hash: -> OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::input_message + class StoredCompletions < OpenAI::Internal::Type::BaseModel + attr_accessor type: :stored_completions - type content = - { - text: String, - type: OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::InputMessage::Content::type_ - } + attr_accessor created_after: Integer? - class Content < OpenAI::Internal::Type::BaseModel - attr_accessor text: String + attr_accessor created_before: Integer? - attr_accessor type: OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::InputMessage::Content::type_ + attr_accessor limit: Integer? - def initialize: ( - text: String, - type: OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::InputMessage::Content::type_ - ) -> void + attr_accessor metadata: OpenAI::Models::metadata? - def to_hash: -> OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::InputMessage::content + attr_accessor model: String? - type type_ = :input_text + def initialize: ( + ?created_after: Integer?, + ?created_before: Integer?, + ?limit: Integer?, + ?metadata: OpenAI::Models::metadata?, + ?model: String?, + ?type: :stored_completions + ) -> void - module Type - extend OpenAI::Internal::Type::Enum + def to_hash: -> OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Source::stored_completions + end - INPUT_TEXT: :input_text + def self?.variants: -> [OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Source::FileContent, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Source::FileID, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Source::StoredCompletions] + end - def self?.values: -> ::Array[OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::InputMessage::Content::type_] - end - end + type type_ = :completions - type role = :user | :system | :developer + module Type + extend OpenAI::Internal::Type::Enum - module Role - extend OpenAI::Internal::Type::Enum + COMPLETIONS: :completions - USER: :user - SYSTEM: :system - DEVELOPER: :developer + def self?.values: -> ::Array[OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::type_] + end - def self?.values: -> ::Array[OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::InputMessage::role] - end + type input_messages = + OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template + | OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::ItemReference - type type_ = :message + module InputMessages + extend OpenAI::Internal::Type::Union - module Type - extend OpenAI::Internal::Type::Enum + type template = + { + template: ::Array[OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::template], + type: :template + } - MESSAGE: :message + class Template < OpenAI::Internal::Type::BaseModel + attr_accessor template: ::Array[OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::template] - def self?.values: -> ::Array[OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::InputMessage::type_] - end - end + attr_accessor type: :template - type output_message = + def initialize: ( + template: ::Array[OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::template], + ?type: :template + ) -> void + + def to_hash: -> OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::template + + type template = + OpenAI::Models::Responses::EasyInputMessage + | OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message + + module Template + extend OpenAI::Internal::Type::Union + + type message = { - content: OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::OutputMessage::Content, - role: OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::OutputMessage::role, - type: OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::OutputMessage::type_ + content: OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::content, + role: OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::role, + type: OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::type_ } - class OutputMessage < OpenAI::Internal::Type::BaseModel - attr_accessor content: OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::OutputMessage::Content + class Message < OpenAI::Internal::Type::BaseModel + attr_accessor content: OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::content - attr_accessor role: OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::OutputMessage::role + attr_accessor role: OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::role - attr_accessor type: OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::OutputMessage::type_ + attr_reader type: OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::type_? + + def type=: ( + OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::type_ + ) -> OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::type_ def initialize: ( - content: OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::OutputMessage::Content, - role: OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::OutputMessage::role, - type: OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::OutputMessage::type_ + content: OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::content, + role: OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::role, + ?type: OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::type_ ) -> void - def to_hash: -> OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::output_message + def to_hash: -> OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::message type content = - { - text: String, - type: OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::OutputMessage::Content::type_ - } - - class Content < OpenAI::Internal::Type::BaseModel - attr_accessor text: String + String + | OpenAI::Models::Responses::ResponseInputText + | OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::Content::OutputText - attr_accessor type: OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::OutputMessage::Content::type_ + module Content + extend OpenAI::Internal::Type::Union - def initialize: ( - text: String, - type: OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::OutputMessage::Content::type_ - ) -> void + type output_text = { text: String, type: :output_text } - def to_hash: -> OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::OutputMessage::content + class OutputText < OpenAI::Internal::Type::BaseModel + attr_accessor text: String - type type_ = :output_text + attr_accessor type: :output_text - module Type - extend OpenAI::Internal::Type::Enum + def initialize: (text: String, ?type: :output_text) -> void - OUTPUT_TEXT: :output_text - - def self?.values: -> ::Array[OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::OutputMessage::Content::type_] + def to_hash: -> OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::Content::output_text end + + def self?.variants: -> [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::Content::OutputText] end - type role = :assistant + type role = :user | :assistant | :system | :developer module Role extend OpenAI::Internal::Type::Enum + USER: :user ASSISTANT: :assistant + SYSTEM: :system + DEVELOPER: :developer - def self?.values: -> ::Array[OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::OutputMessage::role] + def self?.values: -> ::Array[OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::role] end type type_ = :message @@ -222,11 +247,11 @@ module OpenAI MESSAGE: :message - def self?.values: -> ::Array[OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::OutputMessage::type_] + def self?.values: -> ::Array[OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::type_] end end - def self?.variants: -> [OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::ChatMessage, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::InputMessage, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::OutputMessage] + def self?.variants: -> [OpenAI::Models::Responses::EasyInputMessage, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message] end end @@ -249,111 +274,6 @@ module OpenAI def self?.variants: -> [OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::ItemReference] end - type source = - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Source::FileContent - | OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Source::FileID - | OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Source::StoredCompletions - - module Source - extend OpenAI::Internal::Type::Union - - type file_content = - { - content: ::Array[OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Source::FileContent::Content], - type: :file_content - } - - class FileContent < OpenAI::Internal::Type::BaseModel - attr_accessor content: ::Array[OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Source::FileContent::Content] - - attr_accessor type: :file_content - - def initialize: ( - content: ::Array[OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Source::FileContent::Content], - ?type: :file_content - ) -> void - - def to_hash: -> OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Source::file_content - - type content = - { item: ::Hash[Symbol, top], sample: ::Hash[Symbol, top] } - - class Content < OpenAI::Internal::Type::BaseModel - attr_accessor item: ::Hash[Symbol, top] - - attr_reader sample: ::Hash[Symbol, top]? - - def sample=: (::Hash[Symbol, top]) -> ::Hash[Symbol, top] - - def initialize: ( - item: ::Hash[Symbol, top], - ?sample: ::Hash[Symbol, top] - ) -> void - - def to_hash: -> OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Source::FileContent::content - end - end - - type file_id = { id: String, type: :file_id } - - class FileID < OpenAI::Internal::Type::BaseModel - attr_accessor id: String - - attr_accessor type: :file_id - - def initialize: (id: String, ?type: :file_id) -> void - - def to_hash: -> OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Source::file_id - end - - type stored_completions = - { - created_after: Integer?, - created_before: Integer?, - limit: Integer?, - metadata: OpenAI::Models::metadata?, - model: String?, - type: :stored_completions - } - - class StoredCompletions < OpenAI::Internal::Type::BaseModel - attr_accessor created_after: Integer? - - attr_accessor created_before: Integer? - - attr_accessor limit: Integer? - - attr_accessor metadata: OpenAI::Models::metadata? - - attr_accessor model: String? - - attr_accessor type: :stored_completions - - def initialize: ( - created_after: Integer?, - created_before: Integer?, - limit: Integer?, - metadata: OpenAI::Models::metadata?, - model: String?, - ?type: :stored_completions - ) -> void - - def to_hash: -> OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Source::stored_completions - end - - def self?.variants: -> [OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Source::FileContent, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Source::FileID, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Source::StoredCompletions] - end - - type type_ = :completions - - module Type - extend OpenAI::Internal::Type::Enum - - COMPLETIONS: :completions - - def self?.values: -> ::Array[OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::type_] - end - type sampling_params = { max_completion_tokens: Integer, diff --git a/sig/openai/models/evals/run_cancel_response.rbs b/sig/openai/models/evals/run_cancel_response.rbs index 5a6e54d7..d6a2ba57 100644 --- a/sig/openai/models/evals/run_cancel_response.rbs +++ b/sig/openai/models/evals/run_cancel_response.rbs @@ -70,11 +70,350 @@ module OpenAI type data_source = OpenAI::Models::Evals::CreateEvalJSONLRunDataSource | OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource + | OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions module DataSource extend OpenAI::Internal::Type::Union - def self?.variants: -> [OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource] + type completions = + { + source: OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::source, + type: :completions, + input_messages: OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::input_messages, + model: String, + sampling_params: OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::SamplingParams + } + + class Completions < OpenAI::Internal::Type::BaseModel + attr_accessor source: OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::source + + attr_accessor type: :completions + + attr_reader input_messages: OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::input_messages? + + def input_messages=: ( + OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::input_messages + ) -> OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::input_messages + + attr_reader model: String? + + def model=: (String) -> String + + attr_reader sampling_params: OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::SamplingParams? + + def sampling_params=: ( + OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::SamplingParams + ) -> OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::SamplingParams + + def initialize: ( + source: OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::source, + ?input_messages: OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::input_messages, + ?model: String, + ?sampling_params: OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::SamplingParams, + ?type: :completions + ) -> void + + def to_hash: -> OpenAI::Models::Evals::RunCancelResponse::DataSource::completions + + type source = + OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::Source::FileContent + | OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::Source::FileID + | OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::Source::Responses + + module Source + extend OpenAI::Internal::Type::Union + + type file_content = + { + content: ::Array[OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::Source::FileContent::Content], + type: :file_content + } + + class FileContent < OpenAI::Internal::Type::BaseModel + attr_accessor content: ::Array[OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::Source::FileContent::Content] + + attr_accessor type: :file_content + + def initialize: ( + content: ::Array[OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::Source::FileContent::Content], + ?type: :file_content + ) -> void + + def to_hash: -> OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::Source::file_content + + type content = + { item: ::Hash[Symbol, top], sample: ::Hash[Symbol, top] } + + class Content < OpenAI::Internal::Type::BaseModel + attr_accessor item: ::Hash[Symbol, top] + + attr_reader sample: ::Hash[Symbol, top]? + + def sample=: (::Hash[Symbol, top]) -> ::Hash[Symbol, top] + + def initialize: ( + item: ::Hash[Symbol, top], + ?sample: ::Hash[Symbol, top] + ) -> void + + def to_hash: -> OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::Source::FileContent::content + end + end + + type file_id = { id: String, type: :file_id } + + class FileID < OpenAI::Internal::Type::BaseModel + attr_accessor id: String + + attr_accessor type: :file_id + + def initialize: (id: String, ?type: :file_id) -> void + + def to_hash: -> OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::Source::file_id + end + + type responses = + { + type: :responses, + allow_parallel_tool_calls: bool?, + created_after: Integer?, + created_before: Integer?, + has_tool_calls: bool?, + instructions_search: String?, + metadata: top?, + model: String?, + reasoning_effort: OpenAI::Models::reasoning_effort?, + temperature: Float?, + top_p: Float?, + users: ::Array[String]? + } + + class Responses < OpenAI::Internal::Type::BaseModel + attr_accessor type: :responses + + attr_accessor allow_parallel_tool_calls: bool? + + attr_accessor created_after: Integer? + + attr_accessor created_before: Integer? + + attr_accessor has_tool_calls: bool? + + attr_accessor instructions_search: String? + + attr_accessor metadata: top? + + attr_accessor model: String? + + attr_accessor reasoning_effort: OpenAI::Models::reasoning_effort? + + attr_accessor temperature: Float? + + attr_accessor top_p: Float? + + attr_accessor users: ::Array[String]? + + def initialize: ( + ?allow_parallel_tool_calls: bool?, + ?created_after: Integer?, + ?created_before: Integer?, + ?has_tool_calls: bool?, + ?instructions_search: String?, + ?metadata: top?, + ?model: String?, + ?reasoning_effort: OpenAI::Models::reasoning_effort?, + ?temperature: Float?, + ?top_p: Float?, + ?users: ::Array[String]?, + ?type: :responses + ) -> void + + def to_hash: -> OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::Source::responses + end + + def self?.variants: -> [OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::Source::FileContent, OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::Source::FileID, OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::Source::Responses] + end + + type input_messages = + OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template + | OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::ItemReference + + module InputMessages + extend OpenAI::Internal::Type::Union + + type template = + { + template: ::Array[OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::template], + type: :template + } + + class Template < OpenAI::Internal::Type::BaseModel + attr_accessor template: ::Array[OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::template] + + attr_accessor type: :template + + def initialize: ( + template: ::Array[OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::template], + ?type: :template + ) -> void + + def to_hash: -> OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::template + + type template = + OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::ChatMessage + | OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem + + module Template + extend OpenAI::Internal::Type::Union + + type chat_message = { content: String, role: String } + + class ChatMessage < OpenAI::Internal::Type::BaseModel + attr_accessor content: String + + attr_accessor role: String + + def initialize: (content: String, role: String) -> void + + def to_hash: -> OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::chat_message + end + + type eval_item = + { + content: OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::content, + role: OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::role, + type: OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::type_ + } + + class EvalItem < OpenAI::Internal::Type::BaseModel + attr_accessor content: OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::content + + attr_accessor role: OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::role + + attr_reader type: OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::type_? + + def type=: ( + OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::type_ + ) -> OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::type_ + + def initialize: ( + content: OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::content, + role: OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::role, + ?type: OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::type_ + ) -> void + + def to_hash: -> OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::eval_item + + type content = + String + | OpenAI::Models::Responses::ResponseInputText + | OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText + + module Content + extend OpenAI::Internal::Type::Union + + type output_text = { text: String, type: :output_text } + + class OutputText < OpenAI::Internal::Type::BaseModel + attr_accessor text: String + + attr_accessor type: :output_text + + def initialize: ( + text: String, + ?type: :output_text + ) -> void + + def to_hash: -> OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::output_text + end + + def self?.variants: -> [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText] + end + + type role = :user | :assistant | :system | :developer + + module Role + extend OpenAI::Internal::Type::Enum + + USER: :user + ASSISTANT: :assistant + SYSTEM: :system + DEVELOPER: :developer + + def self?.values: -> ::Array[OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::role] + end + + type type_ = :message + + module Type + extend OpenAI::Internal::Type::Enum + + MESSAGE: :message + + def self?.values: -> ::Array[OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::type_] + end + end + + def self?.variants: -> [OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::ChatMessage, OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem] + end + end + + type item_reference = + { item_reference: String, type: :item_reference } + + class ItemReference < OpenAI::Internal::Type::BaseModel + attr_accessor item_reference: String + + attr_accessor type: :item_reference + + def initialize: ( + item_reference: String, + ?type: :item_reference + ) -> void + + def to_hash: -> OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::item_reference + end + + def self?.variants: -> [OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template, OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::ItemReference] + end + + type sampling_params = + { + max_completion_tokens: Integer, + seed: Integer, + temperature: Float, + top_p: Float + } + + class SamplingParams < OpenAI::Internal::Type::BaseModel + attr_reader max_completion_tokens: Integer? + + def max_completion_tokens=: (Integer) -> Integer + + attr_reader seed: Integer? + + def seed=: (Integer) -> Integer + + attr_reader temperature: Float? + + def temperature=: (Float) -> Float + + attr_reader top_p: Float? + + def top_p=: (Float) -> Float + + def initialize: ( + ?max_completion_tokens: Integer, + ?seed: Integer, + ?temperature: Float, + ?top_p: Float + ) -> void + + def to_hash: -> OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::sampling_params + end + end + + def self?.variants: -> [OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource, OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions] end type per_model_usage = diff --git a/sig/openai/models/evals/run_create_params.rbs b/sig/openai/models/evals/run_create_params.rbs index 326d6f6d..f38000c8 100644 --- a/sig/openai/models/evals/run_create_params.rbs +++ b/sig/openai/models/evals/run_create_params.rbs @@ -33,11 +33,360 @@ module OpenAI type data_source = OpenAI::Models::Evals::CreateEvalJSONLRunDataSource | OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource + | OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource module DataSource extend OpenAI::Internal::Type::Union - def self?.variants: -> [OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource] + type create_eval_responses_run_data_source = + { + source: OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::source, + type: OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::type_, + input_messages: OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::input_messages, + model: String, + sampling_params: OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::SamplingParams + } + + class CreateEvalResponsesRunDataSource < OpenAI::Internal::Type::BaseModel + attr_accessor source: OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::source + + attr_accessor type: OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::type_ + + attr_reader input_messages: OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::input_messages? + + def input_messages=: ( + OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::input_messages + ) -> OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::input_messages + + attr_reader model: String? + + def model=: (String) -> String + + attr_reader sampling_params: OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::SamplingParams? + + def sampling_params=: ( + OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::SamplingParams + ) -> OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::SamplingParams + + def initialize: ( + source: OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::source, + type: OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::type_, + ?input_messages: OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::input_messages, + ?model: String, + ?sampling_params: OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::SamplingParams + ) -> void + + def to_hash: -> OpenAI::Models::Evals::RunCreateParams::DataSource::create_eval_responses_run_data_source + + type source = + OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::FileContent + | OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::FileID + | OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::Responses + + module Source + extend OpenAI::Internal::Type::Union + + type file_content = + { + content: ::Array[OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::FileContent::Content], + type: :file_content + } + + class FileContent < OpenAI::Internal::Type::BaseModel + attr_accessor content: ::Array[OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::FileContent::Content] + + attr_accessor type: :file_content + + def initialize: ( + content: ::Array[OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::FileContent::Content], + ?type: :file_content + ) -> void + + def to_hash: -> OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::file_content + + type content = + { item: ::Hash[Symbol, top], sample: ::Hash[Symbol, top] } + + class Content < OpenAI::Internal::Type::BaseModel + attr_accessor item: ::Hash[Symbol, top] + + attr_reader sample: ::Hash[Symbol, top]? + + def sample=: (::Hash[Symbol, top]) -> ::Hash[Symbol, top] + + def initialize: ( + item: ::Hash[Symbol, top], + ?sample: ::Hash[Symbol, top] + ) -> void + + def to_hash: -> OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::FileContent::content + end + end + + type file_id = { id: String, type: :file_id } + + class FileID < OpenAI::Internal::Type::BaseModel + attr_accessor id: String + + attr_accessor type: :file_id + + def initialize: (id: String, ?type: :file_id) -> void + + def to_hash: -> OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::file_id + end + + type responses = + { + type: :responses, + allow_parallel_tool_calls: bool?, + created_after: Integer?, + created_before: Integer?, + has_tool_calls: bool?, + instructions_search: String?, + metadata: top?, + model: String?, + reasoning_effort: OpenAI::Models::reasoning_effort?, + temperature: Float?, + top_p: Float?, + users: ::Array[String]? + } + + class Responses < OpenAI::Internal::Type::BaseModel + attr_accessor type: :responses + + attr_accessor allow_parallel_tool_calls: bool? + + attr_accessor created_after: Integer? + + attr_accessor created_before: Integer? + + attr_accessor has_tool_calls: bool? + + attr_accessor instructions_search: String? + + attr_accessor metadata: top? + + attr_accessor model: String? + + attr_accessor reasoning_effort: OpenAI::Models::reasoning_effort? + + attr_accessor temperature: Float? + + attr_accessor top_p: Float? + + attr_accessor users: ::Array[String]? + + def initialize: ( + ?allow_parallel_tool_calls: bool?, + ?created_after: Integer?, + ?created_before: Integer?, + ?has_tool_calls: bool?, + ?instructions_search: String?, + ?metadata: top?, + ?model: String?, + ?reasoning_effort: OpenAI::Models::reasoning_effort?, + ?temperature: Float?, + ?top_p: Float?, + ?users: ::Array[String]?, + ?type: :responses + ) -> void + + def to_hash: -> OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::responses + end + + def self?.variants: -> [OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::FileContent, OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::FileID, OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::Responses] + end + + type type_ = :completions + + module Type + extend OpenAI::Internal::Type::Enum + + COMPLETIONS: :completions + + def self?.values: -> ::Array[OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::type_] + end + + type input_messages = + OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template + | OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::ItemReference + + module InputMessages + extend OpenAI::Internal::Type::Union + + type template = + { + template: ::Array[OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::template], + type: :template + } + + class Template < OpenAI::Internal::Type::BaseModel + attr_accessor template: ::Array[OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::template] + + attr_accessor type: :template + + def initialize: ( + template: ::Array[OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::template], + ?type: :template + ) -> void + + def to_hash: -> OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::template + + type template = + OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::ChatMessage + | OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem + + module Template + extend OpenAI::Internal::Type::Union + + type chat_message = { content: String, role: String } + + class ChatMessage < OpenAI::Internal::Type::BaseModel + attr_accessor content: String + + attr_accessor role: String + + def initialize: (content: String, role: String) -> void + + def to_hash: -> OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::chat_message + end + + type eval_item = + { + content: OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::content, + role: OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::role, + type: OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::type_ + } + + class EvalItem < OpenAI::Internal::Type::BaseModel + attr_accessor content: OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::content + + attr_accessor role: OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::role + + attr_reader type: OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::type_? + + def type=: ( + OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::type_ + ) -> OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::type_ + + def initialize: ( + content: OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::content, + role: OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::role, + ?type: OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::type_ + ) -> void + + def to_hash: -> OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::eval_item + + type content = + String + | OpenAI::Models::Responses::ResponseInputText + | OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::Content::OutputText + + module Content + extend OpenAI::Internal::Type::Union + + type output_text = { text: String, type: :output_text } + + class OutputText < OpenAI::Internal::Type::BaseModel + attr_accessor text: String + + attr_accessor type: :output_text + + def initialize: ( + text: String, + ?type: :output_text + ) -> void + + def to_hash: -> OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::Content::output_text + end + + def self?.variants: -> [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::Content::OutputText] + end + + type role = :user | :assistant | :system | :developer + + module Role + extend OpenAI::Internal::Type::Enum + + USER: :user + ASSISTANT: :assistant + SYSTEM: :system + DEVELOPER: :developer + + def self?.values: -> ::Array[OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::role] + end + + type type_ = :message + + module Type + extend OpenAI::Internal::Type::Enum + + MESSAGE: :message + + def self?.values: -> ::Array[OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::type_] + end + end + + def self?.variants: -> [OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::ChatMessage, OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem] + end + end + + type item_reference = + { item_reference: String, type: :item_reference } + + class ItemReference < OpenAI::Internal::Type::BaseModel + attr_accessor item_reference: String + + attr_accessor type: :item_reference + + def initialize: ( + item_reference: String, + ?type: :item_reference + ) -> void + + def to_hash: -> OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::item_reference + end + + def self?.variants: -> [OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template, OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::ItemReference] + end + + type sampling_params = + { + max_completion_tokens: Integer, + seed: Integer, + temperature: Float, + top_p: Float + } + + class SamplingParams < OpenAI::Internal::Type::BaseModel + attr_reader max_completion_tokens: Integer? + + def max_completion_tokens=: (Integer) -> Integer + + attr_reader seed: Integer? + + def seed=: (Integer) -> Integer + + attr_reader temperature: Float? + + def temperature=: (Float) -> Float + + attr_reader top_p: Float? + + def top_p=: (Float) -> Float + + def initialize: ( + ?max_completion_tokens: Integer, + ?seed: Integer, + ?temperature: Float, + ?top_p: Float + ) -> void + + def to_hash: -> OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::sampling_params + end + end + + def self?.variants: -> [OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource, OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource] end end end diff --git a/sig/openai/models/evals/run_create_response.rbs b/sig/openai/models/evals/run_create_response.rbs index 3840e50a..571e81b9 100644 --- a/sig/openai/models/evals/run_create_response.rbs +++ b/sig/openai/models/evals/run_create_response.rbs @@ -70,11 +70,350 @@ module OpenAI type data_source = OpenAI::Models::Evals::CreateEvalJSONLRunDataSource | OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource + | OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions module DataSource extend OpenAI::Internal::Type::Union - def self?.variants: -> [OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource] + type completions = + { + source: OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::source, + type: :completions, + input_messages: OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::input_messages, + model: String, + sampling_params: OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::SamplingParams + } + + class Completions < OpenAI::Internal::Type::BaseModel + attr_accessor source: OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::source + + attr_accessor type: :completions + + attr_reader input_messages: OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::input_messages? + + def input_messages=: ( + OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::input_messages + ) -> OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::input_messages + + attr_reader model: String? + + def model=: (String) -> String + + attr_reader sampling_params: OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::SamplingParams? + + def sampling_params=: ( + OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::SamplingParams + ) -> OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::SamplingParams + + def initialize: ( + source: OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::source, + ?input_messages: OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::input_messages, + ?model: String, + ?sampling_params: OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::SamplingParams, + ?type: :completions + ) -> void + + def to_hash: -> OpenAI::Models::Evals::RunCreateResponse::DataSource::completions + + type source = + OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::Source::FileContent + | OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::Source::FileID + | OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::Source::Responses + + module Source + extend OpenAI::Internal::Type::Union + + type file_content = + { + content: ::Array[OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::Source::FileContent::Content], + type: :file_content + } + + class FileContent < OpenAI::Internal::Type::BaseModel + attr_accessor content: ::Array[OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::Source::FileContent::Content] + + attr_accessor type: :file_content + + def initialize: ( + content: ::Array[OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::Source::FileContent::Content], + ?type: :file_content + ) -> void + + def to_hash: -> OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::Source::file_content + + type content = + { item: ::Hash[Symbol, top], sample: ::Hash[Symbol, top] } + + class Content < OpenAI::Internal::Type::BaseModel + attr_accessor item: ::Hash[Symbol, top] + + attr_reader sample: ::Hash[Symbol, top]? + + def sample=: (::Hash[Symbol, top]) -> ::Hash[Symbol, top] + + def initialize: ( + item: ::Hash[Symbol, top], + ?sample: ::Hash[Symbol, top] + ) -> void + + def to_hash: -> OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::Source::FileContent::content + end + end + + type file_id = { id: String, type: :file_id } + + class FileID < OpenAI::Internal::Type::BaseModel + attr_accessor id: String + + attr_accessor type: :file_id + + def initialize: (id: String, ?type: :file_id) -> void + + def to_hash: -> OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::Source::file_id + end + + type responses = + { + type: :responses, + allow_parallel_tool_calls: bool?, + created_after: Integer?, + created_before: Integer?, + has_tool_calls: bool?, + instructions_search: String?, + metadata: top?, + model: String?, + reasoning_effort: OpenAI::Models::reasoning_effort?, + temperature: Float?, + top_p: Float?, + users: ::Array[String]? + } + + class Responses < OpenAI::Internal::Type::BaseModel + attr_accessor type: :responses + + attr_accessor allow_parallel_tool_calls: bool? + + attr_accessor created_after: Integer? + + attr_accessor created_before: Integer? + + attr_accessor has_tool_calls: bool? + + attr_accessor instructions_search: String? + + attr_accessor metadata: top? + + attr_accessor model: String? + + attr_accessor reasoning_effort: OpenAI::Models::reasoning_effort? + + attr_accessor temperature: Float? + + attr_accessor top_p: Float? + + attr_accessor users: ::Array[String]? + + def initialize: ( + ?allow_parallel_tool_calls: bool?, + ?created_after: Integer?, + ?created_before: Integer?, + ?has_tool_calls: bool?, + ?instructions_search: String?, + ?metadata: top?, + ?model: String?, + ?reasoning_effort: OpenAI::Models::reasoning_effort?, + ?temperature: Float?, + ?top_p: Float?, + ?users: ::Array[String]?, + ?type: :responses + ) -> void + + def to_hash: -> OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::Source::responses + end + + def self?.variants: -> [OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::Source::FileContent, OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::Source::FileID, OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::Source::Responses] + end + + type input_messages = + OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template + | OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::ItemReference + + module InputMessages + extend OpenAI::Internal::Type::Union + + type template = + { + template: ::Array[OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::template], + type: :template + } + + class Template < OpenAI::Internal::Type::BaseModel + attr_accessor template: ::Array[OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::template] + + attr_accessor type: :template + + def initialize: ( + template: ::Array[OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::template], + ?type: :template + ) -> void + + def to_hash: -> OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::template + + type template = + OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::ChatMessage + | OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem + + module Template + extend OpenAI::Internal::Type::Union + + type chat_message = { content: String, role: String } + + class ChatMessage < OpenAI::Internal::Type::BaseModel + attr_accessor content: String + + attr_accessor role: String + + def initialize: (content: String, role: String) -> void + + def to_hash: -> OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::chat_message + end + + type eval_item = + { + content: OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::content, + role: OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::role, + type: OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::type_ + } + + class EvalItem < OpenAI::Internal::Type::BaseModel + attr_accessor content: OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::content + + attr_accessor role: OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::role + + attr_reader type: OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::type_? + + def type=: ( + OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::type_ + ) -> OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::type_ + + def initialize: ( + content: OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::content, + role: OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::role, + ?type: OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::type_ + ) -> void + + def to_hash: -> OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::eval_item + + type content = + String + | OpenAI::Models::Responses::ResponseInputText + | OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText + + module Content + extend OpenAI::Internal::Type::Union + + type output_text = { text: String, type: :output_text } + + class OutputText < OpenAI::Internal::Type::BaseModel + attr_accessor text: String + + attr_accessor type: :output_text + + def initialize: ( + text: String, + ?type: :output_text + ) -> void + + def to_hash: -> OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::output_text + end + + def self?.variants: -> [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText] + end + + type role = :user | :assistant | :system | :developer + + module Role + extend OpenAI::Internal::Type::Enum + + USER: :user + ASSISTANT: :assistant + SYSTEM: :system + DEVELOPER: :developer + + def self?.values: -> ::Array[OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::role] + end + + type type_ = :message + + module Type + extend OpenAI::Internal::Type::Enum + + MESSAGE: :message + + def self?.values: -> ::Array[OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::type_] + end + end + + def self?.variants: -> [OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::ChatMessage, OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem] + end + end + + type item_reference = + { item_reference: String, type: :item_reference } + + class ItemReference < OpenAI::Internal::Type::BaseModel + attr_accessor item_reference: String + + attr_accessor type: :item_reference + + def initialize: ( + item_reference: String, + ?type: :item_reference + ) -> void + + def to_hash: -> OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::item_reference + end + + def self?.variants: -> [OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template, OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::ItemReference] + end + + type sampling_params = + { + max_completion_tokens: Integer, + seed: Integer, + temperature: Float, + top_p: Float + } + + class SamplingParams < OpenAI::Internal::Type::BaseModel + attr_reader max_completion_tokens: Integer? + + def max_completion_tokens=: (Integer) -> Integer + + attr_reader seed: Integer? + + def seed=: (Integer) -> Integer + + attr_reader temperature: Float? + + def temperature=: (Float) -> Float + + attr_reader top_p: Float? + + def top_p=: (Float) -> Float + + def initialize: ( + ?max_completion_tokens: Integer, + ?seed: Integer, + ?temperature: Float, + ?top_p: Float + ) -> void + + def to_hash: -> OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::sampling_params + end + end + + def self?.variants: -> [OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource, OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions] end type per_model_usage = diff --git a/sig/openai/models/evals/run_list_response.rbs b/sig/openai/models/evals/run_list_response.rbs index 8a12f80e..60062163 100644 --- a/sig/openai/models/evals/run_list_response.rbs +++ b/sig/openai/models/evals/run_list_response.rbs @@ -70,11 +70,350 @@ module OpenAI type data_source = OpenAI::Models::Evals::CreateEvalJSONLRunDataSource | OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource + | OpenAI::Models::Evals::RunListResponse::DataSource::Completions module DataSource extend OpenAI::Internal::Type::Union - def self?.variants: -> [OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource] + type completions = + { + source: OpenAI::Models::Evals::RunListResponse::DataSource::Completions::source, + type: :completions, + input_messages: OpenAI::Models::Evals::RunListResponse::DataSource::Completions::input_messages, + model: String, + sampling_params: OpenAI::Models::Evals::RunListResponse::DataSource::Completions::SamplingParams + } + + class Completions < OpenAI::Internal::Type::BaseModel + attr_accessor source: OpenAI::Models::Evals::RunListResponse::DataSource::Completions::source + + attr_accessor type: :completions + + attr_reader input_messages: OpenAI::Models::Evals::RunListResponse::DataSource::Completions::input_messages? + + def input_messages=: ( + OpenAI::Models::Evals::RunListResponse::DataSource::Completions::input_messages + ) -> OpenAI::Models::Evals::RunListResponse::DataSource::Completions::input_messages + + attr_reader model: String? + + def model=: (String) -> String + + attr_reader sampling_params: OpenAI::Models::Evals::RunListResponse::DataSource::Completions::SamplingParams? + + def sampling_params=: ( + OpenAI::Models::Evals::RunListResponse::DataSource::Completions::SamplingParams + ) -> OpenAI::Models::Evals::RunListResponse::DataSource::Completions::SamplingParams + + def initialize: ( + source: OpenAI::Models::Evals::RunListResponse::DataSource::Completions::source, + ?input_messages: OpenAI::Models::Evals::RunListResponse::DataSource::Completions::input_messages, + ?model: String, + ?sampling_params: OpenAI::Models::Evals::RunListResponse::DataSource::Completions::SamplingParams, + ?type: :completions + ) -> void + + def to_hash: -> OpenAI::Models::Evals::RunListResponse::DataSource::completions + + type source = + OpenAI::Models::Evals::RunListResponse::DataSource::Completions::Source::FileContent + | OpenAI::Models::Evals::RunListResponse::DataSource::Completions::Source::FileID + | OpenAI::Models::Evals::RunListResponse::DataSource::Completions::Source::Responses + + module Source + extend OpenAI::Internal::Type::Union + + type file_content = + { + content: ::Array[OpenAI::Models::Evals::RunListResponse::DataSource::Completions::Source::FileContent::Content], + type: :file_content + } + + class FileContent < OpenAI::Internal::Type::BaseModel + attr_accessor content: ::Array[OpenAI::Models::Evals::RunListResponse::DataSource::Completions::Source::FileContent::Content] + + attr_accessor type: :file_content + + def initialize: ( + content: ::Array[OpenAI::Models::Evals::RunListResponse::DataSource::Completions::Source::FileContent::Content], + ?type: :file_content + ) -> void + + def to_hash: -> OpenAI::Models::Evals::RunListResponse::DataSource::Completions::Source::file_content + + type content = + { item: ::Hash[Symbol, top], sample: ::Hash[Symbol, top] } + + class Content < OpenAI::Internal::Type::BaseModel + attr_accessor item: ::Hash[Symbol, top] + + attr_reader sample: ::Hash[Symbol, top]? + + def sample=: (::Hash[Symbol, top]) -> ::Hash[Symbol, top] + + def initialize: ( + item: ::Hash[Symbol, top], + ?sample: ::Hash[Symbol, top] + ) -> void + + def to_hash: -> OpenAI::Models::Evals::RunListResponse::DataSource::Completions::Source::FileContent::content + end + end + + type file_id = { id: String, type: :file_id } + + class FileID < OpenAI::Internal::Type::BaseModel + attr_accessor id: String + + attr_accessor type: :file_id + + def initialize: (id: String, ?type: :file_id) -> void + + def to_hash: -> OpenAI::Models::Evals::RunListResponse::DataSource::Completions::Source::file_id + end + + type responses = + { + type: :responses, + allow_parallel_tool_calls: bool?, + created_after: Integer?, + created_before: Integer?, + has_tool_calls: bool?, + instructions_search: String?, + metadata: top?, + model: String?, + reasoning_effort: OpenAI::Models::reasoning_effort?, + temperature: Float?, + top_p: Float?, + users: ::Array[String]? + } + + class Responses < OpenAI::Internal::Type::BaseModel + attr_accessor type: :responses + + attr_accessor allow_parallel_tool_calls: bool? + + attr_accessor created_after: Integer? + + attr_accessor created_before: Integer? + + attr_accessor has_tool_calls: bool? + + attr_accessor instructions_search: String? + + attr_accessor metadata: top? + + attr_accessor model: String? + + attr_accessor reasoning_effort: OpenAI::Models::reasoning_effort? + + attr_accessor temperature: Float? + + attr_accessor top_p: Float? + + attr_accessor users: ::Array[String]? + + def initialize: ( + ?allow_parallel_tool_calls: bool?, + ?created_after: Integer?, + ?created_before: Integer?, + ?has_tool_calls: bool?, + ?instructions_search: String?, + ?metadata: top?, + ?model: String?, + ?reasoning_effort: OpenAI::Models::reasoning_effort?, + ?temperature: Float?, + ?top_p: Float?, + ?users: ::Array[String]?, + ?type: :responses + ) -> void + + def to_hash: -> OpenAI::Models::Evals::RunListResponse::DataSource::Completions::Source::responses + end + + def self?.variants: -> [OpenAI::Models::Evals::RunListResponse::DataSource::Completions::Source::FileContent, OpenAI::Models::Evals::RunListResponse::DataSource::Completions::Source::FileID, OpenAI::Models::Evals::RunListResponse::DataSource::Completions::Source::Responses] + end + + type input_messages = + OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template + | OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::ItemReference + + module InputMessages + extend OpenAI::Internal::Type::Union + + type template = + { + template: ::Array[OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::template], + type: :template + } + + class Template < OpenAI::Internal::Type::BaseModel + attr_accessor template: ::Array[OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::template] + + attr_accessor type: :template + + def initialize: ( + template: ::Array[OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::template], + ?type: :template + ) -> void + + def to_hash: -> OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::template + + type template = + OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::ChatMessage + | OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem + + module Template + extend OpenAI::Internal::Type::Union + + type chat_message = { content: String, role: String } + + class ChatMessage < OpenAI::Internal::Type::BaseModel + attr_accessor content: String + + attr_accessor role: String + + def initialize: (content: String, role: String) -> void + + def to_hash: -> OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::chat_message + end + + type eval_item = + { + content: OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::content, + role: OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::role, + type: OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::type_ + } + + class EvalItem < OpenAI::Internal::Type::BaseModel + attr_accessor content: OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::content + + attr_accessor role: OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::role + + attr_reader type: OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::type_? + + def type=: ( + OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::type_ + ) -> OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::type_ + + def initialize: ( + content: OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::content, + role: OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::role, + ?type: OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::type_ + ) -> void + + def to_hash: -> OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::eval_item + + type content = + String + | OpenAI::Models::Responses::ResponseInputText + | OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText + + module Content + extend OpenAI::Internal::Type::Union + + type output_text = { text: String, type: :output_text } + + class OutputText < OpenAI::Internal::Type::BaseModel + attr_accessor text: String + + attr_accessor type: :output_text + + def initialize: ( + text: String, + ?type: :output_text + ) -> void + + def to_hash: -> OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::output_text + end + + def self?.variants: -> [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText] + end + + type role = :user | :assistant | :system | :developer + + module Role + extend OpenAI::Internal::Type::Enum + + USER: :user + ASSISTANT: :assistant + SYSTEM: :system + DEVELOPER: :developer + + def self?.values: -> ::Array[OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::role] + end + + type type_ = :message + + module Type + extend OpenAI::Internal::Type::Enum + + MESSAGE: :message + + def self?.values: -> ::Array[OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::type_] + end + end + + def self?.variants: -> [OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::ChatMessage, OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem] + end + end + + type item_reference = + { item_reference: String, type: :item_reference } + + class ItemReference < OpenAI::Internal::Type::BaseModel + attr_accessor item_reference: String + + attr_accessor type: :item_reference + + def initialize: ( + item_reference: String, + ?type: :item_reference + ) -> void + + def to_hash: -> OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::item_reference + end + + def self?.variants: -> [OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template, OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::ItemReference] + end + + type sampling_params = + { + max_completion_tokens: Integer, + seed: Integer, + temperature: Float, + top_p: Float + } + + class SamplingParams < OpenAI::Internal::Type::BaseModel + attr_reader max_completion_tokens: Integer? + + def max_completion_tokens=: (Integer) -> Integer + + attr_reader seed: Integer? + + def seed=: (Integer) -> Integer + + attr_reader temperature: Float? + + def temperature=: (Float) -> Float + + attr_reader top_p: Float? + + def top_p=: (Float) -> Float + + def initialize: ( + ?max_completion_tokens: Integer, + ?seed: Integer, + ?temperature: Float, + ?top_p: Float + ) -> void + + def to_hash: -> OpenAI::Models::Evals::RunListResponse::DataSource::Completions::sampling_params + end + end + + def self?.variants: -> [OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource, OpenAI::Models::Evals::RunListResponse::DataSource::Completions] end type per_model_usage = diff --git a/sig/openai/models/evals/run_retrieve_response.rbs b/sig/openai/models/evals/run_retrieve_response.rbs index 5a9a33ba..6714cb0c 100644 --- a/sig/openai/models/evals/run_retrieve_response.rbs +++ b/sig/openai/models/evals/run_retrieve_response.rbs @@ -70,11 +70,350 @@ module OpenAI type data_source = OpenAI::Models::Evals::CreateEvalJSONLRunDataSource | OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource + | OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions module DataSource extend OpenAI::Internal::Type::Union - def self?.variants: -> [OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource] + type completions = + { + source: OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::source, + type: :completions, + input_messages: OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::input_messages, + model: String, + sampling_params: OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::SamplingParams + } + + class Completions < OpenAI::Internal::Type::BaseModel + attr_accessor source: OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::source + + attr_accessor type: :completions + + attr_reader input_messages: OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::input_messages? + + def input_messages=: ( + OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::input_messages + ) -> OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::input_messages + + attr_reader model: String? + + def model=: (String) -> String + + attr_reader sampling_params: OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::SamplingParams? + + def sampling_params=: ( + OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::SamplingParams + ) -> OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::SamplingParams + + def initialize: ( + source: OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::source, + ?input_messages: OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::input_messages, + ?model: String, + ?sampling_params: OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::SamplingParams, + ?type: :completions + ) -> void + + def to_hash: -> OpenAI::Models::Evals::RunRetrieveResponse::DataSource::completions + + type source = + OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::Source::FileContent + | OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::Source::FileID + | OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::Source::Responses + + module Source + extend OpenAI::Internal::Type::Union + + type file_content = + { + content: ::Array[OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::Source::FileContent::Content], + type: :file_content + } + + class FileContent < OpenAI::Internal::Type::BaseModel + attr_accessor content: ::Array[OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::Source::FileContent::Content] + + attr_accessor type: :file_content + + def initialize: ( + content: ::Array[OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::Source::FileContent::Content], + ?type: :file_content + ) -> void + + def to_hash: -> OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::Source::file_content + + type content = + { item: ::Hash[Symbol, top], sample: ::Hash[Symbol, top] } + + class Content < OpenAI::Internal::Type::BaseModel + attr_accessor item: ::Hash[Symbol, top] + + attr_reader sample: ::Hash[Symbol, top]? + + def sample=: (::Hash[Symbol, top]) -> ::Hash[Symbol, top] + + def initialize: ( + item: ::Hash[Symbol, top], + ?sample: ::Hash[Symbol, top] + ) -> void + + def to_hash: -> OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::Source::FileContent::content + end + end + + type file_id = { id: String, type: :file_id } + + class FileID < OpenAI::Internal::Type::BaseModel + attr_accessor id: String + + attr_accessor type: :file_id + + def initialize: (id: String, ?type: :file_id) -> void + + def to_hash: -> OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::Source::file_id + end + + type responses = + { + type: :responses, + allow_parallel_tool_calls: bool?, + created_after: Integer?, + created_before: Integer?, + has_tool_calls: bool?, + instructions_search: String?, + metadata: top?, + model: String?, + reasoning_effort: OpenAI::Models::reasoning_effort?, + temperature: Float?, + top_p: Float?, + users: ::Array[String]? + } + + class Responses < OpenAI::Internal::Type::BaseModel + attr_accessor type: :responses + + attr_accessor allow_parallel_tool_calls: bool? + + attr_accessor created_after: Integer? + + attr_accessor created_before: Integer? + + attr_accessor has_tool_calls: bool? + + attr_accessor instructions_search: String? + + attr_accessor metadata: top? + + attr_accessor model: String? + + attr_accessor reasoning_effort: OpenAI::Models::reasoning_effort? + + attr_accessor temperature: Float? + + attr_accessor top_p: Float? + + attr_accessor users: ::Array[String]? + + def initialize: ( + ?allow_parallel_tool_calls: bool?, + ?created_after: Integer?, + ?created_before: Integer?, + ?has_tool_calls: bool?, + ?instructions_search: String?, + ?metadata: top?, + ?model: String?, + ?reasoning_effort: OpenAI::Models::reasoning_effort?, + ?temperature: Float?, + ?top_p: Float?, + ?users: ::Array[String]?, + ?type: :responses + ) -> void + + def to_hash: -> OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::Source::responses + end + + def self?.variants: -> [OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::Source::FileContent, OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::Source::FileID, OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::Source::Responses] + end + + type input_messages = + OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template + | OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::ItemReference + + module InputMessages + extend OpenAI::Internal::Type::Union + + type template = + { + template: ::Array[OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::template], + type: :template + } + + class Template < OpenAI::Internal::Type::BaseModel + attr_accessor template: ::Array[OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::template] + + attr_accessor type: :template + + def initialize: ( + template: ::Array[OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::template], + ?type: :template + ) -> void + + def to_hash: -> OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::template + + type template = + OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::ChatMessage + | OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem + + module Template + extend OpenAI::Internal::Type::Union + + type chat_message = { content: String, role: String } + + class ChatMessage < OpenAI::Internal::Type::BaseModel + attr_accessor content: String + + attr_accessor role: String + + def initialize: (content: String, role: String) -> void + + def to_hash: -> OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::chat_message + end + + type eval_item = + { + content: OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::content, + role: OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::role, + type: OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::type_ + } + + class EvalItem < OpenAI::Internal::Type::BaseModel + attr_accessor content: OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::content + + attr_accessor role: OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::role + + attr_reader type: OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::type_? + + def type=: ( + OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::type_ + ) -> OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::type_ + + def initialize: ( + content: OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::content, + role: OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::role, + ?type: OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::type_ + ) -> void + + def to_hash: -> OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::eval_item + + type content = + String + | OpenAI::Models::Responses::ResponseInputText + | OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText + + module Content + extend OpenAI::Internal::Type::Union + + type output_text = { text: String, type: :output_text } + + class OutputText < OpenAI::Internal::Type::BaseModel + attr_accessor text: String + + attr_accessor type: :output_text + + def initialize: ( + text: String, + ?type: :output_text + ) -> void + + def to_hash: -> OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::output_text + end + + def self?.variants: -> [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText] + end + + type role = :user | :assistant | :system | :developer + + module Role + extend OpenAI::Internal::Type::Enum + + USER: :user + ASSISTANT: :assistant + SYSTEM: :system + DEVELOPER: :developer + + def self?.values: -> ::Array[OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::role] + end + + type type_ = :message + + module Type + extend OpenAI::Internal::Type::Enum + + MESSAGE: :message + + def self?.values: -> ::Array[OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::type_] + end + end + + def self?.variants: -> [OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::ChatMessage, OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem] + end + end + + type item_reference = + { item_reference: String, type: :item_reference } + + class ItemReference < OpenAI::Internal::Type::BaseModel + attr_accessor item_reference: String + + attr_accessor type: :item_reference + + def initialize: ( + item_reference: String, + ?type: :item_reference + ) -> void + + def to_hash: -> OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::item_reference + end + + def self?.variants: -> [OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template, OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::ItemReference] + end + + type sampling_params = + { + max_completion_tokens: Integer, + seed: Integer, + temperature: Float, + top_p: Float + } + + class SamplingParams < OpenAI::Internal::Type::BaseModel + attr_reader max_completion_tokens: Integer? + + def max_completion_tokens=: (Integer) -> Integer + + attr_reader seed: Integer? + + def seed=: (Integer) -> Integer + + attr_reader temperature: Float? + + def temperature=: (Float) -> Float + + attr_reader top_p: Float? + + def top_p=: (Float) -> Float + + def initialize: ( + ?max_completion_tokens: Integer, + ?seed: Integer, + ?temperature: Float, + ?top_p: Float + ) -> void + + def to_hash: -> OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::sampling_params + end + end + + def self?.variants: -> [OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource, OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions] end type per_model_usage = diff --git a/sig/openai/models/fine_tuning/checkpoints/permission_delete_params.rbs b/sig/openai/models/fine_tuning/checkpoints/permission_delete_params.rbs index 142fe252..d57abc16 100644 --- a/sig/openai/models/fine_tuning/checkpoints/permission_delete_params.rbs +++ b/sig/openai/models/fine_tuning/checkpoints/permission_delete_params.rbs @@ -3,13 +3,19 @@ module OpenAI module FineTuning module Checkpoints type permission_delete_params = - { } & OpenAI::Internal::Type::request_parameters + { fine_tuned_model_checkpoint: String } + & OpenAI::Internal::Type::request_parameters class PermissionDeleteParams < OpenAI::Internal::Type::BaseModel extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters - def initialize: (?request_options: OpenAI::request_opts) -> void + attr_accessor fine_tuned_model_checkpoint: String + + def initialize: ( + fine_tuned_model_checkpoint: String, + ?request_options: OpenAI::request_opts + ) -> void def to_hash: -> OpenAI::Models::FineTuning::Checkpoints::permission_delete_params end diff --git a/sig/openai/models/image_edit_params.rbs b/sig/openai/models/image_edit_params.rbs index c5367ca5..30bf203d 100644 --- a/sig/openai/models/image_edit_params.rbs +++ b/sig/openai/models/image_edit_params.rbs @@ -2,11 +2,12 @@ module OpenAI module Models type image_edit_params = { - image: (Pathname | StringIO), + image: OpenAI::Models::ImageEditParams::image, prompt: String, mask: (Pathname | StringIO), model: OpenAI::Models::ImageEditParams::model?, n: Integer?, + quality: OpenAI::Models::ImageEditParams::quality?, response_format: OpenAI::Models::ImageEditParams::response_format?, size: OpenAI::Models::ImageEditParams::size?, user: String @@ -17,7 +18,7 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters - attr_accessor image: Pathname | StringIO + attr_accessor image: OpenAI::Models::ImageEditParams::image attr_accessor prompt: String @@ -29,6 +30,8 @@ module OpenAI attr_accessor n: Integer? + attr_accessor quality: OpenAI::Models::ImageEditParams::quality? + attr_accessor response_format: OpenAI::Models::ImageEditParams::response_format? attr_accessor size: OpenAI::Models::ImageEditParams::size? @@ -38,11 +41,12 @@ module OpenAI def user=: (String) -> String def initialize: ( - image: Pathname | StringIO, + image: OpenAI::Models::ImageEditParams::image, prompt: String, ?mask: Pathname | StringIO, ?model: OpenAI::Models::ImageEditParams::model?, ?n: Integer?, + ?quality: OpenAI::Models::ImageEditParams::quality?, ?response_format: OpenAI::Models::ImageEditParams::response_format?, ?size: OpenAI::Models::ImageEditParams::size?, ?user: String, @@ -51,6 +55,18 @@ module OpenAI def to_hash: -> OpenAI::Models::image_edit_params + type image = Pathname | StringIO | ::Array[Pathname | StringIO] + + module Image + extend OpenAI::Internal::Type::Union + + def self?.variants: -> [StringIO, ::Array[StringIO]] + + type string_array = ::Array[Pathname | StringIO] + + StringArray: string_array + end + type model = String | OpenAI::Models::image_model module Model @@ -59,6 +75,20 @@ module OpenAI def self?.variants: -> [String, OpenAI::Models::image_model] end + type quality = :standard | :low | :medium | :high | :auto + + module Quality + extend OpenAI::Internal::Type::Enum + + STANDARD: :standard + LOW: :low + MEDIUM: :medium + HIGH: :high + AUTO: :auto + + def self?.values: -> ::Array[OpenAI::Models::ImageEditParams::quality] + end + type response_format = :url | :b64_json module ResponseFormat diff --git a/sig/openai/models/image_generate_params.rbs b/sig/openai/models/image_generate_params.rbs index 869a9475..c5efaac8 100644 --- a/sig/openai/models/image_generate_params.rbs +++ b/sig/openai/models/image_generate_params.rbs @@ -3,9 +3,13 @@ module OpenAI type image_generate_params = { prompt: String, + background: OpenAI::Models::ImageGenerateParams::background?, model: OpenAI::Models::ImageGenerateParams::model?, + moderation: OpenAI::Models::ImageGenerateParams::moderation?, n: Integer?, - quality: OpenAI::Models::ImageGenerateParams::quality, + output_compression: Integer?, + output_format: OpenAI::Models::ImageGenerateParams::output_format?, + quality: OpenAI::Models::ImageGenerateParams::quality?, response_format: OpenAI::Models::ImageGenerateParams::response_format?, size: OpenAI::Models::ImageGenerateParams::size?, style: OpenAI::Models::ImageGenerateParams::style?, @@ -19,15 +23,19 @@ module OpenAI attr_accessor prompt: String + attr_accessor background: OpenAI::Models::ImageGenerateParams::background? + attr_accessor model: OpenAI::Models::ImageGenerateParams::model? + attr_accessor moderation: OpenAI::Models::ImageGenerateParams::moderation? + attr_accessor n: Integer? - attr_reader quality: OpenAI::Models::ImageGenerateParams::quality? + attr_accessor output_compression: Integer? + + attr_accessor output_format: OpenAI::Models::ImageGenerateParams::output_format? - def quality=: ( - OpenAI::Models::ImageGenerateParams::quality - ) -> OpenAI::Models::ImageGenerateParams::quality + attr_accessor quality: OpenAI::Models::ImageGenerateParams::quality? attr_accessor response_format: OpenAI::Models::ImageGenerateParams::response_format? @@ -41,9 +49,13 @@ module OpenAI def initialize: ( prompt: String, + ?background: OpenAI::Models::ImageGenerateParams::background?, ?model: OpenAI::Models::ImageGenerateParams::model?, + ?moderation: OpenAI::Models::ImageGenerateParams::moderation?, ?n: Integer?, - ?quality: OpenAI::Models::ImageGenerateParams::quality, + ?output_compression: Integer?, + ?output_format: OpenAI::Models::ImageGenerateParams::output_format?, + ?quality: OpenAI::Models::ImageGenerateParams::quality?, ?response_format: OpenAI::Models::ImageGenerateParams::response_format?, ?size: OpenAI::Models::ImageGenerateParams::size?, ?style: OpenAI::Models::ImageGenerateParams::style?, @@ -53,6 +65,18 @@ module OpenAI def to_hash: -> OpenAI::Models::image_generate_params + type background = :transparent | :opaque | :auto + + module Background + extend OpenAI::Internal::Type::Enum + + TRANSPARENT: :transparent + OPAQUE: :opaque + AUTO: :auto + + def self?.values: -> ::Array[OpenAI::Models::ImageGenerateParams::background] + end + type model = String | OpenAI::Models::image_model module Model @@ -61,13 +85,40 @@ module OpenAI def self?.variants: -> [String, OpenAI::Models::image_model] end - type quality = :standard | :hd + type moderation = :low | :auto + + module Moderation + extend OpenAI::Internal::Type::Enum + + LOW: :low + AUTO: :auto + + def self?.values: -> ::Array[OpenAI::Models::ImageGenerateParams::moderation] + end + + type output_format = :png | :jpeg | :webp + + module OutputFormat + extend OpenAI::Internal::Type::Enum + + PNG: :png + JPEG: :jpeg + WEBP: :webp + + def self?.values: -> ::Array[OpenAI::Models::ImageGenerateParams::output_format] + end + + type quality = :standard | :hd | :low | :medium | :high | :auto module Quality extend OpenAI::Internal::Type::Enum STANDARD: :standard HD: :hd + LOW: :low + MEDIUM: :medium + HIGH: :high + AUTO: :auto def self?.values: -> ::Array[OpenAI::Models::ImageGenerateParams::quality] end @@ -84,14 +135,24 @@ module OpenAI end type size = - :"256x256" | :"512x512" | :"1024x1024" | :"1792x1024" | :"1024x1792" + :auto + | :"1024x1024" + | :"1536x1024" + | :"1024x1536" + | :"256x256" + | :"512x512" + | :"1792x1024" + | :"1024x1792" module Size extend OpenAI::Internal::Type::Enum + AUTO: :auto + SIZE_1024X1024: :"1024x1024" + SIZE_1536X1024: :"1536x1024" + SIZE_1024X1536: :"1024x1536" SIZE_256X256: :"256x256" SIZE_512X512: :"512x512" - SIZE_1024X1024: :"1024x1024" SIZE_1792X1024: :"1792x1024" SIZE_1024X1792: :"1024x1792" diff --git a/sig/openai/models/image_model.rbs b/sig/openai/models/image_model.rbs index 31f6927a..e41f713d 100644 --- a/sig/openai/models/image_model.rbs +++ b/sig/openai/models/image_model.rbs @@ -1,12 +1,13 @@ module OpenAI module Models - type image_model = :"dall-e-2" | :"dall-e-3" + type image_model = :"dall-e-2" | :"dall-e-3" | :"gpt-image-1" module ImageModel extend OpenAI::Internal::Type::Enum DALL_E_2: :"dall-e-2" DALL_E_3: :"dall-e-3" + GPT_IMAGE_1: :"gpt-image-1" def self?.values: -> ::Array[OpenAI::Models::image_model] end diff --git a/sig/openai/models/images_response.rbs b/sig/openai/models/images_response.rbs index e5608584..5f23336d 100644 --- a/sig/openai/models/images_response.rbs +++ b/sig/openai/models/images_response.rbs @@ -1,19 +1,74 @@ module OpenAI module Models type images_response = - { created: Integer, data: ::Array[OpenAI::Models::Image] } + { + created: Integer, + data: ::Array[OpenAI::Models::Image], + usage: OpenAI::Models::ImagesResponse::Usage + } class ImagesResponse < OpenAI::Internal::Type::BaseModel attr_accessor created: Integer - attr_accessor data: ::Array[OpenAI::Models::Image] + attr_reader data: ::Array[OpenAI::Models::Image]? + + def data=: ( + ::Array[OpenAI::Models::Image] + ) -> ::Array[OpenAI::Models::Image] + + attr_reader usage: OpenAI::Models::ImagesResponse::Usage? + + def usage=: ( + OpenAI::Models::ImagesResponse::Usage + ) -> OpenAI::Models::ImagesResponse::Usage def initialize: ( created: Integer, - data: ::Array[OpenAI::Models::Image] + ?data: ::Array[OpenAI::Models::Image], + ?usage: OpenAI::Models::ImagesResponse::Usage ) -> void def to_hash: -> OpenAI::Models::images_response + + type usage = + { + input_tokens: Integer, + input_tokens_details: OpenAI::Models::ImagesResponse::Usage::InputTokensDetails, + output_tokens: Integer, + total_tokens: Integer + } + + class Usage < OpenAI::Internal::Type::BaseModel + attr_accessor input_tokens: Integer + + attr_accessor input_tokens_details: OpenAI::Models::ImagesResponse::Usage::InputTokensDetails + + attr_accessor output_tokens: Integer + + attr_accessor total_tokens: Integer + + def initialize: ( + input_tokens: Integer, + input_tokens_details: OpenAI::Models::ImagesResponse::Usage::InputTokensDetails, + output_tokens: Integer, + total_tokens: Integer + ) -> void + + def to_hash: -> OpenAI::Models::ImagesResponse::usage + + type input_tokens_details = + { image_tokens: Integer, text_tokens: Integer } + + class InputTokensDetails < OpenAI::Internal::Type::BaseModel + attr_accessor image_tokens: Integer + + attr_accessor text_tokens: Integer + + def initialize: (image_tokens: Integer, text_tokens: Integer) -> void + + def to_hash: -> OpenAI::Models::ImagesResponse::Usage::input_tokens_details + end + end end end end diff --git a/sig/openai/models/responses/response_reasoning_summary_part_added_event.rbs b/sig/openai/models/responses/response_reasoning_summary_part_added_event.rbs new file mode 100644 index 00000000..d970d8a3 --- /dev/null +++ b/sig/openai/models/responses/response_reasoning_summary_part_added_event.rbs @@ -0,0 +1,48 @@ +module OpenAI + module Models + module Responses + type response_reasoning_summary_part_added_event = + { + item_id: String, + output_index: Integer, + part: OpenAI::Models::Responses::ResponseReasoningSummaryPartAddedEvent::Part, + summary_index: Integer, + type: :"response.reasoning_summary_part.added" + } + + class ResponseReasoningSummaryPartAddedEvent < OpenAI::Internal::Type::BaseModel + attr_accessor item_id: String + + attr_accessor output_index: Integer + + attr_accessor part: OpenAI::Models::Responses::ResponseReasoningSummaryPartAddedEvent::Part + + attr_accessor summary_index: Integer + + attr_accessor type: :"response.reasoning_summary_part.added" + + def initialize: ( + item_id: String, + output_index: Integer, + part: OpenAI::Models::Responses::ResponseReasoningSummaryPartAddedEvent::Part, + summary_index: Integer, + ?type: :"response.reasoning_summary_part.added" + ) -> void + + def to_hash: -> OpenAI::Models::Responses::response_reasoning_summary_part_added_event + + type part = { text: String, type: :summary_text } + + class Part < OpenAI::Internal::Type::BaseModel + attr_accessor text: String + + attr_accessor type: :summary_text + + def initialize: (text: String, ?type: :summary_text) -> void + + def to_hash: -> OpenAI::Models::Responses::ResponseReasoningSummaryPartAddedEvent::part + end + end + end + end +end diff --git a/sig/openai/models/responses/response_reasoning_summary_part_done_event.rbs b/sig/openai/models/responses/response_reasoning_summary_part_done_event.rbs new file mode 100644 index 00000000..88fe9e2a --- /dev/null +++ b/sig/openai/models/responses/response_reasoning_summary_part_done_event.rbs @@ -0,0 +1,48 @@ +module OpenAI + module Models + module Responses + type response_reasoning_summary_part_done_event = + { + item_id: String, + output_index: Integer, + part: OpenAI::Models::Responses::ResponseReasoningSummaryPartDoneEvent::Part, + summary_index: Integer, + type: :"response.reasoning_summary_part.done" + } + + class ResponseReasoningSummaryPartDoneEvent < OpenAI::Internal::Type::BaseModel + attr_accessor item_id: String + + attr_accessor output_index: Integer + + attr_accessor part: OpenAI::Models::Responses::ResponseReasoningSummaryPartDoneEvent::Part + + attr_accessor summary_index: Integer + + attr_accessor type: :"response.reasoning_summary_part.done" + + def initialize: ( + item_id: String, + output_index: Integer, + part: OpenAI::Models::Responses::ResponseReasoningSummaryPartDoneEvent::Part, + summary_index: Integer, + ?type: :"response.reasoning_summary_part.done" + ) -> void + + def to_hash: -> OpenAI::Models::Responses::response_reasoning_summary_part_done_event + + type part = { text: String, type: :summary_text } + + class Part < OpenAI::Internal::Type::BaseModel + attr_accessor text: String + + attr_accessor type: :summary_text + + def initialize: (text: String, ?type: :summary_text) -> void + + def to_hash: -> OpenAI::Models::Responses::ResponseReasoningSummaryPartDoneEvent::part + end + end + end + end +end diff --git a/sig/openai/models/responses/response_reasoning_summary_text_delta_event.rbs b/sig/openai/models/responses/response_reasoning_summary_text_delta_event.rbs new file mode 100644 index 00000000..d73f86b6 --- /dev/null +++ b/sig/openai/models/responses/response_reasoning_summary_text_delta_event.rbs @@ -0,0 +1,36 @@ +module OpenAI + module Models + module Responses + type response_reasoning_summary_text_delta_event = + { + delta: String, + item_id: String, + output_index: Integer, + summary_index: Integer, + type: :"response.reasoning_summary_text.delta" + } + + class ResponseReasoningSummaryTextDeltaEvent < OpenAI::Internal::Type::BaseModel + attr_accessor delta: String + + attr_accessor item_id: String + + attr_accessor output_index: Integer + + attr_accessor summary_index: Integer + + attr_accessor type: :"response.reasoning_summary_text.delta" + + def initialize: ( + delta: String, + item_id: String, + output_index: Integer, + summary_index: Integer, + ?type: :"response.reasoning_summary_text.delta" + ) -> void + + def to_hash: -> OpenAI::Models::Responses::response_reasoning_summary_text_delta_event + end + end + end +end diff --git a/sig/openai/models/responses/response_reasoning_summary_text_done_event.rbs b/sig/openai/models/responses/response_reasoning_summary_text_done_event.rbs new file mode 100644 index 00000000..63b910b7 --- /dev/null +++ b/sig/openai/models/responses/response_reasoning_summary_text_done_event.rbs @@ -0,0 +1,36 @@ +module OpenAI + module Models + module Responses + type response_reasoning_summary_text_done_event = + { + item_id: String, + output_index: Integer, + summary_index: Integer, + text: String, + type: :"response.reasoning_summary_text.done" + } + + class ResponseReasoningSummaryTextDoneEvent < OpenAI::Internal::Type::BaseModel + attr_accessor item_id: String + + attr_accessor output_index: Integer + + attr_accessor summary_index: Integer + + attr_accessor text: String + + attr_accessor type: :"response.reasoning_summary_text.done" + + def initialize: ( + item_id: String, + output_index: Integer, + summary_index: Integer, + text: String, + ?type: :"response.reasoning_summary_text.done" + ) -> void + + def to_hash: -> OpenAI::Models::Responses::response_reasoning_summary_text_done_event + end + end + end +end diff --git a/sig/openai/models/responses/response_stream_event.rbs b/sig/openai/models/responses/response_stream_event.rbs index 18708efb..e81d05de 100644 --- a/sig/openai/models/responses/response_stream_event.rbs +++ b/sig/openai/models/responses/response_stream_event.rbs @@ -26,6 +26,10 @@ module OpenAI | OpenAI::Models::Responses::ResponseIncompleteEvent | OpenAI::Models::Responses::ResponseOutputItemAddedEvent | OpenAI::Models::Responses::ResponseOutputItemDoneEvent + | OpenAI::Models::Responses::ResponseReasoningSummaryPartAddedEvent + | OpenAI::Models::Responses::ResponseReasoningSummaryPartDoneEvent + | OpenAI::Models::Responses::ResponseReasoningSummaryTextDeltaEvent + | OpenAI::Models::Responses::ResponseReasoningSummaryTextDoneEvent | OpenAI::Models::Responses::ResponseRefusalDeltaEvent | OpenAI::Models::Responses::ResponseRefusalDoneEvent | OpenAI::Models::Responses::ResponseTextAnnotationDeltaEvent @@ -38,7 +42,7 @@ module OpenAI module ResponseStreamEvent extend OpenAI::Internal::Type::Union - def self?.variants: -> [OpenAI::Models::Responses::ResponseAudioDeltaEvent, OpenAI::Models::Responses::ResponseAudioDoneEvent, OpenAI::Models::Responses::ResponseAudioTranscriptDeltaEvent, OpenAI::Models::Responses::ResponseAudioTranscriptDoneEvent, OpenAI::Models::Responses::ResponseCodeInterpreterCallCodeDeltaEvent, OpenAI::Models::Responses::ResponseCodeInterpreterCallCodeDoneEvent, OpenAI::Models::Responses::ResponseCodeInterpreterCallCompletedEvent, OpenAI::Models::Responses::ResponseCodeInterpreterCallInProgressEvent, OpenAI::Models::Responses::ResponseCodeInterpreterCallInterpretingEvent, OpenAI::Models::Responses::ResponseCompletedEvent, OpenAI::Models::Responses::ResponseContentPartAddedEvent, OpenAI::Models::Responses::ResponseContentPartDoneEvent, OpenAI::Models::Responses::ResponseCreatedEvent, OpenAI::Models::Responses::ResponseErrorEvent, OpenAI::Models::Responses::ResponseFileSearchCallCompletedEvent, OpenAI::Models::Responses::ResponseFileSearchCallInProgressEvent, OpenAI::Models::Responses::ResponseFileSearchCallSearchingEvent, OpenAI::Models::Responses::ResponseFunctionCallArgumentsDeltaEvent, OpenAI::Models::Responses::ResponseFunctionCallArgumentsDoneEvent, OpenAI::Models::Responses::ResponseInProgressEvent, OpenAI::Models::Responses::ResponseFailedEvent, OpenAI::Models::Responses::ResponseIncompleteEvent, OpenAI::Models::Responses::ResponseOutputItemAddedEvent, OpenAI::Models::Responses::ResponseOutputItemDoneEvent, OpenAI::Models::Responses::ResponseRefusalDeltaEvent, OpenAI::Models::Responses::ResponseRefusalDoneEvent, OpenAI::Models::Responses::ResponseTextAnnotationDeltaEvent, OpenAI::Models::Responses::ResponseTextDeltaEvent, OpenAI::Models::Responses::ResponseTextDoneEvent, OpenAI::Models::Responses::ResponseWebSearchCallCompletedEvent, OpenAI::Models::Responses::ResponseWebSearchCallInProgressEvent, OpenAI::Models::Responses::ResponseWebSearchCallSearchingEvent] + def self?.variants: -> [OpenAI::Models::Responses::ResponseAudioDeltaEvent, OpenAI::Models::Responses::ResponseAudioDoneEvent, OpenAI::Models::Responses::ResponseAudioTranscriptDeltaEvent, OpenAI::Models::Responses::ResponseAudioTranscriptDoneEvent, OpenAI::Models::Responses::ResponseCodeInterpreterCallCodeDeltaEvent, OpenAI::Models::Responses::ResponseCodeInterpreterCallCodeDoneEvent, OpenAI::Models::Responses::ResponseCodeInterpreterCallCompletedEvent, OpenAI::Models::Responses::ResponseCodeInterpreterCallInProgressEvent, OpenAI::Models::Responses::ResponseCodeInterpreterCallInterpretingEvent, OpenAI::Models::Responses::ResponseCompletedEvent, OpenAI::Models::Responses::ResponseContentPartAddedEvent, OpenAI::Models::Responses::ResponseContentPartDoneEvent, OpenAI::Models::Responses::ResponseCreatedEvent, OpenAI::Models::Responses::ResponseErrorEvent, OpenAI::Models::Responses::ResponseFileSearchCallCompletedEvent, OpenAI::Models::Responses::ResponseFileSearchCallInProgressEvent, OpenAI::Models::Responses::ResponseFileSearchCallSearchingEvent, OpenAI::Models::Responses::ResponseFunctionCallArgumentsDeltaEvent, OpenAI::Models::Responses::ResponseFunctionCallArgumentsDoneEvent, OpenAI::Models::Responses::ResponseInProgressEvent, OpenAI::Models::Responses::ResponseFailedEvent, OpenAI::Models::Responses::ResponseIncompleteEvent, OpenAI::Models::Responses::ResponseOutputItemAddedEvent, OpenAI::Models::Responses::ResponseOutputItemDoneEvent, OpenAI::Models::Responses::ResponseReasoningSummaryPartAddedEvent, OpenAI::Models::Responses::ResponseReasoningSummaryPartDoneEvent, OpenAI::Models::Responses::ResponseReasoningSummaryTextDeltaEvent, OpenAI::Models::Responses::ResponseReasoningSummaryTextDoneEvent, OpenAI::Models::Responses::ResponseRefusalDeltaEvent, OpenAI::Models::Responses::ResponseRefusalDoneEvent, OpenAI::Models::Responses::ResponseTextAnnotationDeltaEvent, OpenAI::Models::Responses::ResponseTextDeltaEvent, OpenAI::Models::Responses::ResponseTextDoneEvent, OpenAI::Models::Responses::ResponseWebSearchCallCompletedEvent, OpenAI::Models::Responses::ResponseWebSearchCallInProgressEvent, OpenAI::Models::Responses::ResponseWebSearchCallSearchingEvent] end end end diff --git a/sig/openai/resources/beta/threads.rbs b/sig/openai/resources/beta/threads.rbs index 50be0608..2ef9c298 100644 --- a/sig/openai/resources/beta/threads.rbs +++ b/sig/openai/resources/beta/threads.rbs @@ -43,7 +43,7 @@ module OpenAI ?thread: OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread, ?tool_choice: OpenAI::Models::Beta::assistant_tool_choice_option?, ?tool_resources: OpenAI::Models::Beta::ThreadCreateAndRunParams::ToolResources?, - ?tools: ::Array[OpenAI::Models::Beta::ThreadCreateAndRunParams::tool]?, + ?tools: ::Array[OpenAI::Models::Beta::assistant_tool]?, ?top_p: Float?, ?truncation_strategy: OpenAI::Models::Beta::ThreadCreateAndRunParams::TruncationStrategy?, ?request_options: OpenAI::request_opts @@ -62,7 +62,7 @@ module OpenAI ?thread: OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread, ?tool_choice: OpenAI::Models::Beta::assistant_tool_choice_option?, ?tool_resources: OpenAI::Models::Beta::ThreadCreateAndRunParams::ToolResources?, - ?tools: ::Array[OpenAI::Models::Beta::ThreadCreateAndRunParams::tool]?, + ?tools: ::Array[OpenAI::Models::Beta::assistant_tool]?, ?top_p: Float?, ?truncation_strategy: OpenAI::Models::Beta::ThreadCreateAndRunParams::TruncationStrategy?, ?request_options: OpenAI::request_opts diff --git a/sig/openai/resources/evals.rbs b/sig/openai/resources/evals.rbs index 84d16747..dd3d6cc5 100644 --- a/sig/openai/resources/evals.rbs +++ b/sig/openai/resources/evals.rbs @@ -8,7 +8,6 @@ module OpenAI testing_criteria: ::Array[OpenAI::Models::EvalCreateParams::testing_criterion], ?metadata: OpenAI::Models::metadata?, ?name: String, - ?share_with_openai: bool, ?request_options: OpenAI::request_opts ) -> OpenAI::Models::EvalCreateResponse diff --git a/sig/openai/resources/fine_tuning/checkpoints/permissions.rbs b/sig/openai/resources/fine_tuning/checkpoints/permissions.rbs index 0033c40d..f36dcbbb 100644 --- a/sig/openai/resources/fine_tuning/checkpoints/permissions.rbs +++ b/sig/openai/resources/fine_tuning/checkpoints/permissions.rbs @@ -19,7 +19,8 @@ module OpenAI ) -> OpenAI::Models::FineTuning::Checkpoints::PermissionRetrieveResponse def delete: ( - String fine_tuned_model_checkpoint, + String permission_id, + fine_tuned_model_checkpoint: String, ?request_options: OpenAI::request_opts ) -> OpenAI::Models::FineTuning::Checkpoints::PermissionDeleteResponse diff --git a/sig/openai/resources/images.rbs b/sig/openai/resources/images.rbs index e4831410..ec6082ff 100644 --- a/sig/openai/resources/images.rbs +++ b/sig/openai/resources/images.rbs @@ -12,11 +12,12 @@ module OpenAI ) -> OpenAI::Models::ImagesResponse def edit: ( - image: Pathname | StringIO, + image: OpenAI::Models::ImageEditParams::image, prompt: String, ?mask: Pathname | StringIO, ?model: OpenAI::Models::ImageEditParams::model?, ?n: Integer?, + ?quality: OpenAI::Models::ImageEditParams::quality?, ?response_format: OpenAI::Models::ImageEditParams::response_format?, ?size: OpenAI::Models::ImageEditParams::size?, ?user: String, @@ -25,9 +26,13 @@ module OpenAI def generate: ( prompt: String, + ?background: OpenAI::Models::ImageGenerateParams::background?, ?model: OpenAI::Models::ImageGenerateParams::model?, + ?moderation: OpenAI::Models::ImageGenerateParams::moderation?, ?n: Integer?, - ?quality: OpenAI::Models::ImageGenerateParams::quality, + ?output_compression: Integer?, + ?output_format: OpenAI::Models::ImageGenerateParams::output_format?, + ?quality: OpenAI::Models::ImageGenerateParams::quality?, ?response_format: OpenAI::Models::ImageGenerateParams::response_format?, ?size: OpenAI::Models::ImageGenerateParams::size?, ?style: OpenAI::Models::ImageGenerateParams::style?, diff --git a/test/openai/resources/evals_test.rb b/test/openai/resources/evals_test.rb index 8d1bdca2..d4cdc458 100644 --- a/test/openai/resources/evals_test.rb +++ b/test/openai/resources/evals_test.rb @@ -31,7 +31,6 @@ def test_create_required_params metadata: ^(OpenAI::Internal::Type::HashOf[String]) | nil, name: String, object: Symbol, - share_with_openai: OpenAI::Internal::Type::Boolean, testing_criteria: ^(OpenAI::Internal::Type::ArrayOf[union: OpenAI::Models::EvalCreateResponse::TestingCriterion]) } end @@ -52,7 +51,6 @@ def test_retrieve metadata: ^(OpenAI::Internal::Type::HashOf[String]) | nil, name: String, object: Symbol, - share_with_openai: OpenAI::Internal::Type::Boolean, testing_criteria: ^(OpenAI::Internal::Type::ArrayOf[union: OpenAI::Models::EvalRetrieveResponse::TestingCriterion]) } end @@ -73,7 +71,6 @@ def test_update metadata: ^(OpenAI::Internal::Type::HashOf[String]) | nil, name: String, object: Symbol, - share_with_openai: OpenAI::Internal::Type::Boolean, testing_criteria: ^(OpenAI::Internal::Type::ArrayOf[union: OpenAI::Models::EvalUpdateResponse::TestingCriterion]) } end @@ -101,7 +98,6 @@ def test_list metadata: ^(OpenAI::Internal::Type::HashOf[String]) | nil, name: String, object: Symbol, - share_with_openai: OpenAI::Internal::Type::Boolean, testing_criteria: ^(OpenAI::Internal::Type::ArrayOf[union: OpenAI::Models::EvalListResponse::TestingCriterion]) } end diff --git a/test/openai/resources/fine_tuning/checkpoints/permissions_test.rb b/test/openai/resources/fine_tuning/checkpoints/permissions_test.rb index eb752c5f..0ed0d4c1 100644 --- a/test/openai/resources/fine_tuning/checkpoints/permissions_test.rb +++ b/test/openai/resources/fine_tuning/checkpoints/permissions_test.rb @@ -49,11 +49,12 @@ def test_retrieve end end - def test_delete - skip("OpenAPI spec is slightly incorrect") - + def test_delete_required_params response = - @openai.fine_tuning.checkpoints.permissions.delete("ft:gpt-4o-mini-2024-07-18:org:weather:B7R9VjQd") + @openai.fine_tuning.checkpoints.permissions.delete( + "cp_zc4Q7MP6XxulcVzj4MZdwsAB", + fine_tuned_model_checkpoint: "ft:gpt-4o-mini-2024-07-18:org:weather:B7R9VjQd" + ) assert_pattern do response => OpenAI::Models::FineTuning::Checkpoints::PermissionDeleteResponse diff --git a/test/openai/resources/images_test.rb b/test/openai/resources/images_test.rb index 867dc545..ccfee747 100644 --- a/test/openai/resources/images_test.rb +++ b/test/openai/resources/images_test.rb @@ -13,7 +13,8 @@ def test_create_variation_required_params assert_pattern do response => { created: Integer, - data: ^(OpenAI::Internal::Type::ArrayOf[OpenAI::Models::Image]) + data: ^(OpenAI::Internal::Type::ArrayOf[OpenAI::Models::Image]) | nil, + usage: OpenAI::Models::ImagesResponse::Usage | nil } end end @@ -29,7 +30,8 @@ def test_edit_required_params assert_pattern do response => { created: Integer, - data: ^(OpenAI::Internal::Type::ArrayOf[OpenAI::Models::Image]) + data: ^(OpenAI::Internal::Type::ArrayOf[OpenAI::Models::Image]) | nil, + usage: OpenAI::Models::ImagesResponse::Usage | nil } end end @@ -44,7 +46,8 @@ def test_generate_required_params assert_pattern do response => { created: Integer, - data: ^(OpenAI::Internal::Type::ArrayOf[OpenAI::Models::Image]) + data: ^(OpenAI::Internal::Type::ArrayOf[OpenAI::Models::Image]) | nil, + usage: OpenAI::Models::ImagesResponse::Usage | nil } end end From 0ae14a87ecc37f73077f0aaa442047452a6503b6 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Wed, 23 Apr 2025 17:56:20 +0000 Subject: [PATCH 09/47] chore(ci): run on more branches and use depot runners --- .github/workflows/ci.yml | 17 +++++++++-------- .github/workflows/publish-gem.yml | 2 +- .github/workflows/release-doctor.yml | 2 +- 3 files changed, 11 insertions(+), 10 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 4f7276bb..85872a3c 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -1,18 +1,19 @@ name: CI on: push: - branches: - - main - pull_request: - branches: - - main - - next + branches-ignore: + - 'generated' + - 'codegen/**' + - 'integrated/**' + - 'stl-preview-head/**' + - 'stl-preview-base/**' jobs: lint: timeout-minutes: 10 name: lint - runs-on: ubuntu-latest + runs-on: depot-ubuntu-24.04 + steps: - uses: actions/checkout@v4 - name: Set up Ruby @@ -28,7 +29,7 @@ jobs: test: timeout-minutes: 10 name: test - runs-on: ubuntu-latest + runs-on: depot-ubuntu-24.04 steps: - uses: actions/checkout@v4 - name: Set up Ruby diff --git a/.github/workflows/publish-gem.yml b/.github/workflows/publish-gem.yml index 7502f1c2..039f2cc9 100644 --- a/.github/workflows/publish-gem.yml +++ b/.github/workflows/publish-gem.yml @@ -7,7 +7,7 @@ on: jobs: publish: name: publish - runs-on: ubuntu-latest + runs-on: depot-ubuntu-24.04 steps: - uses: actions/checkout@v4 diff --git a/.github/workflows/release-doctor.yml b/.github/workflows/release-doctor.yml index 1659237f..87a98158 100644 --- a/.github/workflows/release-doctor.yml +++ b/.github/workflows/release-doctor.yml @@ -8,7 +8,7 @@ on: jobs: release_doctor: name: release doctor - runs-on: ubuntu-latest + runs-on: depot-ubuntu-24.04 environment: publish if: github.repository == 'openai/openai-ruby' && (github.event_name == 'push' || github.event_name == 'workflow_dispatch' || startsWith(github.head_ref, 'release-please') || github.head_ref == 'next') From 57a10b07135a824e8eee35e57a1d78f223befef9 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Wed, 23 Apr 2025 19:59:49 +0000 Subject: [PATCH 10/47] chore(ci): only use depot for staging repos --- .github/workflows/ci.yml | 4 ++-- .github/workflows/publish-gem.yml | 2 +- .github/workflows/release-doctor.yml | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 85872a3c..1d8dfaab 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -12,7 +12,7 @@ jobs: lint: timeout-minutes: 10 name: lint - runs-on: depot-ubuntu-24.04 + runs-on: ${{ github.repository == 'stainless-sdks/openai-ruby' && 'depot-ubuntu-24.04' || 'ubuntu-latest' }} steps: - uses: actions/checkout@v4 @@ -29,7 +29,7 @@ jobs: test: timeout-minutes: 10 name: test - runs-on: depot-ubuntu-24.04 + runs-on: ${{ github.repository == 'stainless-sdks/openai-ruby' && 'depot-ubuntu-24.04' || 'ubuntu-latest' }} steps: - uses: actions/checkout@v4 - name: Set up Ruby diff --git a/.github/workflows/publish-gem.yml b/.github/workflows/publish-gem.yml index 039f2cc9..7502f1c2 100644 --- a/.github/workflows/publish-gem.yml +++ b/.github/workflows/publish-gem.yml @@ -7,7 +7,7 @@ on: jobs: publish: name: publish - runs-on: depot-ubuntu-24.04 + runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 diff --git a/.github/workflows/release-doctor.yml b/.github/workflows/release-doctor.yml index 87a98158..1659237f 100644 --- a/.github/workflows/release-doctor.yml +++ b/.github/workflows/release-doctor.yml @@ -8,7 +8,7 @@ on: jobs: release_doctor: name: release doctor - runs-on: depot-ubuntu-24.04 + runs-on: ubuntu-latest environment: publish if: github.repository == 'openai/openai-ruby' && (github.event_name == 'push' || github.event_name == 'workflow_dispatch' || startsWith(github.head_ref, 'release-please') || github.head_ref == 'next') From 77f7239e03a45323f70baee9d1430ecec242705c Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Wed, 23 Apr 2025 22:09:17 +0000 Subject: [PATCH 11/47] chore: broadly detect json family of content-type headers --- lib/openai/internal/util.rb | 13 +++++++++---- rbi/lib/openai/internal/util.rbi | 3 +++ sig/openai/internal/util.rbs | 3 +++ test/openai/internal/util_test.rb | 16 ++++++++++++++++ 4 files changed, 31 insertions(+), 4 deletions(-) diff --git a/lib/openai/internal/util.rb b/lib/openai/internal/util.rb index d2eb9c19..fa6aec64 100644 --- a/lib/openai/internal/util.rb +++ b/lib/openai/internal/util.rb @@ -471,6 +471,11 @@ def writable_enum(&blk) end end + # @type [Regexp] + JSON_CONTENT = %r{^application/(?:vnd(?:\.[^.]+)*\+)?json(?!l)} + # @type [Regexp] + JSONL_CONTENT = %r{^application/(?:x-)?jsonl} + class << self # @api private # @@ -563,9 +568,9 @@ def encode_content(headers, body) body = body.inner if body.is_a?(OpenAI::Internal::Util::SerializationAdapter) case [content_type, body] - in [%r{^application/(?:vnd\.api\+)?json}, Hash | Array | -> { primitive?(_1) }] + in [OpenAI::Internal::Util::JSON_CONTENT, Hash | Array | -> { primitive?(_1) }] [headers, JSON.fast_generate(body)] - in [%r{^application/(?:x-)?jsonl}, Enumerable] unless body.is_a?(StringIO) || body.is_a?(IO) + in [OpenAI::Internal::Util::JSONL_CONTENT, Enumerable] unless body.is_a?(StringIO) || body.is_a?(IO) [headers, body.lazy.map { JSON.fast_generate(_1) }] in [%r{^multipart/form-data}, Hash | Pathname | StringIO | IO] boundary, strio = encode_multipart_streaming(body) @@ -611,7 +616,7 @@ def force_charset!(content_type, text:) # @return [Object] def decode_content(headers, stream:, suppress_error: false) case (content_type = headers["content-type"]) - in %r{^application/(?:vnd\.api\+)?json} + in OpenAI::Internal::Util::JSON_CONTENT json = stream.to_a.join begin JSON.parse(json, symbolize_names: true) @@ -619,7 +624,7 @@ def decode_content(headers, stream:, suppress_error: false) raise e unless suppress_error json end - in %r{^application/(?:x-)?jsonl} + in OpenAI::Internal::Util::JSONL_CONTENT lines = decode_lines(stream) chain_fused(lines) do |y| lines.each { y << JSON.parse(_1, symbolize_names: true) } diff --git a/rbi/lib/openai/internal/util.rbi b/rbi/lib/openai/internal/util.rbi index 9b88505b..f1ca8cb7 100644 --- a/rbi/lib/openai/internal/util.rbi +++ b/rbi/lib/openai/internal/util.rbi @@ -192,6 +192,9 @@ module OpenAI def writable_enum(&blk); end end + JSON_CONTENT = T.let(%r{^application/(?:vnd(?:\.[^.]+)*\+)?json(?!l)}, Regexp) + JSONL_CONTENT = T.let(%r{^application/(?:x-)?jsonl}, Regexp) + class << self # @api private sig do diff --git a/sig/openai/internal/util.rbs b/sig/openai/internal/util.rbs index 0f040af8..6c038865 100644 --- a/sig/openai/internal/util.rbs +++ b/sig/openai/internal/util.rbs @@ -103,6 +103,9 @@ module OpenAI (Enumerator::Yielder y) -> void } -> Enumerable[String] + JSON_CONTENT: Regexp + JSONL_CONTENT: Regexp + def self?.write_multipart_chunk: ( Enumerator::Yielder y, boundary: String, diff --git a/test/openai/internal/util_test.rb b/test/openai/internal/util_test.rb index e533fdd3..adae5642 100644 --- a/test/openai/internal/util_test.rb +++ b/test/openai/internal/util_test.rb @@ -157,6 +157,22 @@ def test_joining_queries end end +class OpenAI::Test::RegexMatchTest < Minitest::Test + def test_json_content + cases = { + "application/json" => true, + "application/jsonl" => false, + "application/vnd.github.v3+json" => true, + "application/vnd.api+json" => true + } + cases.each do |header, _verdict| + assert_pattern do + OpenAI::Internal::Util::JSON_CONTENT.match?(header) => verdict + end + end + end +end + class OpenAI::Test::UtilFormDataEncodingTest < Minitest::Test class FakeCGI < CGI def initialize(headers, io) From 9e1a0f1db37f0778063c2a417a55ac04fee1f1b2 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Thu, 24 Apr 2025 05:15:45 +0000 Subject: [PATCH 12/47] feat: support webmock for testing --- Gemfile | 1 + Gemfile.lock | 13 + Rakefile | 2 +- lib/openai/internal/transport/base_client.rb | 2 +- .../transport/pooled_net_requester.rb | 2 +- .../openai/internal/transport/base_client.rbi | 2 +- sig/openai/internal/transport/base_client.rbs | 2 +- test/openai/client_test.rb | 270 ++++++++++-------- test/openai/test_helper.rb | 9 +- 9 files changed, 181 insertions(+), 122 deletions(-) diff --git a/Gemfile b/Gemfile index e5ec01e9..0d76364b 100644 --- a/Gemfile +++ b/Gemfile @@ -23,6 +23,7 @@ group :development, :test do gem "minitest-hooks" gem "minitest-proveit" gem "minitest-rg" + gem "webmock" end group :development, :docs do diff --git a/Gemfile.lock b/Gemfile.lock index 0891755f..6a6143f4 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -29,6 +29,8 @@ GEM minitest (>= 5.1) securerandom (>= 0.3) tzinfo (~> 2.0, >= 2.0.5) + addressable (2.8.7) + public_suffix (>= 2.0.2, < 7.0) ast (2.4.3) async (2.23.1) console (~> 1.29) @@ -45,6 +47,9 @@ GEM fiber-annotation fiber-local (~> 1.1) json + crack (1.0.0) + bigdecimal + rexml csv (3.3.3) drb (2.2.1) erubi (1.13.1) @@ -54,6 +59,7 @@ GEM fiber-storage fiber-storage (1.0.0) fileutils (1.7.3) + hashdiff (1.1.2) i18n (1.14.7) concurrent-ruby (~> 1.0) io-event (1.10.0) @@ -82,6 +88,7 @@ GEM racc prettier_print (1.2.1) prism (1.4.0) + public_suffix (6.0.1) racc (1.8.1) rainbow (3.1.1) rake (13.2.1) @@ -96,6 +103,7 @@ GEM logger redcarpet (3.6.1) regexp_parser (2.10.0) + rexml (3.4.1) rubocop (1.75.1) json (~> 2.3) language_server-protocol (~> 3.17.0.2) @@ -165,6 +173,10 @@ GEM unicode-emoji (~> 4.0, >= 4.0.4) unicode-emoji (4.0.4) uri (1.0.3) + webmock (3.25.1) + addressable (>= 2.8.0) + crack (>= 0.3.2) + hashdiff (>= 0.4.0, < 2.0.0) webrick (1.9.1) yard (0.9.37) yard-sorbet (0.9.0) @@ -191,6 +203,7 @@ DEPENDENCIES syntax_tree syntax_tree-rbs! tapioca + webmock webrick yard diff --git a/Rakefile b/Rakefile index dde46bf9..09924f69 100644 --- a/Rakefile +++ b/Rakefile @@ -31,7 +31,7 @@ multitask(:test) do .map { "require_relative(#{_1.dump});" } .join - ruby(*%w[-w -e], rb, verbose: false) { fail unless _1 } + ruby(*%w[-e], rb, verbose: false) { fail unless _1 } end rubo_find = %w[find ./lib ./test ./rbi -type f -and ( -name *.rb -or -name *.rbi ) -print0] diff --git a/lib/openai/internal/transport/base_client.rb b/lib/openai/internal/transport/base_client.rb index f3fd4559..8866d7ad 100644 --- a/lib/openai/internal/transport/base_client.rb +++ b/lib/openai/internal/transport/base_client.rb @@ -153,7 +153,7 @@ def reap_connection!(status, stream:) # @api private # @return [OpenAI::Internal::Transport::PooledNetRequester] - attr_accessor :requester + attr_reader :requester # @api private # diff --git a/lib/openai/internal/transport/pooled_net_requester.rb b/lib/openai/internal/transport/pooled_net_requester.rb index 67e58347..ce606177 100644 --- a/lib/openai/internal/transport/pooled_net_requester.rb +++ b/lib/openai/internal/transport/pooled_net_requester.rb @@ -176,7 +176,7 @@ def execute(request) conn.finish if !eof && conn&.started? closing&.call end - [Integer(response.code), response, (response.body = body)] + [Integer(response.code), response, body] end # @api private diff --git a/rbi/lib/openai/internal/transport/base_client.rbi b/rbi/lib/openai/internal/transport/base_client.rbi index 18a8ea43..73785f6c 100644 --- a/rbi/lib/openai/internal/transport/base_client.rbi +++ b/rbi/lib/openai/internal/transport/base_client.rbi @@ -93,7 +93,7 @@ module OpenAI # @api private sig { returns(OpenAI::Internal::Transport::PooledNetRequester) } - attr_accessor :requester + attr_reader :requester # @api private sig do diff --git a/sig/openai/internal/transport/base_client.rbs b/sig/openai/internal/transport/base_client.rbs index d66d0e62..acb379e9 100644 --- a/sig/openai/internal/transport/base_client.rbs +++ b/sig/openai/internal/transport/base_client.rbs @@ -53,7 +53,7 @@ module OpenAI ) -> void # @api private - attr_accessor requester: OpenAI::Internal::Transport::PooledNetRequester + attr_reader requester: OpenAI::Internal::Transport::PooledNetRequester def initialize: ( base_url: String, diff --git a/test/openai/client_test.rb b/test/openai/client_test.rb index 586ba30e..b084b1b5 100644 --- a/test/openai/client_test.rb +++ b/test/openai/client_test.rb @@ -3,12 +3,33 @@ require_relative "test_helper" class OpenAITest < Minitest::Test + include WebMock::API + + class << self + def test_order = :random + + def run_one_method(...) = Minitest::Runnable.run_one_method(...) + end + + def before_all + super + WebMock.enable! + end + def setup + super Thread.current.thread_variable_set(:mock_sleep, []) end def teardown Thread.current.thread_variable_set(:mock_sleep, nil) + WebMock.reset! + super + end + + def after_all + WebMock.disable! + super end def test_raises_on_missing_non_nullable_opts @@ -18,66 +39,34 @@ def test_raises_on_missing_non_nullable_opts assert_match(/is required/, e.message) end - class MockRequester - # @return [Integer] - attr_reader :response_code - - # @return [Hash{String=>String}] - attr_reader :response_headers - - # @return [Object] - attr_reader :response_data - - # @return [ArrayObject}>] - attr_accessor :attempts - - # @param response_code [Integer] - # @param response_headers [Hash{String=>String}] - # @param response_data [Object] - def initialize(response_code, response_headers, response_data) - @response_code = response_code - @response_headers = response_headers - @response_data = JSON.fast_generate(response_data) - @attempts = [] - end - - # @param req [Hash{Symbol=>Object}] - def execute(req) - # Deep copy the request because it is mutated on each retry. - attempts.push(Marshal.load(Marshal.dump(req))) - headers = {"content-type" => "application/json", **response_headers} - [response_code, headers, response_data.grapheme_clusters] - end - end - def test_client_default_request_default_retry_attempts - openai = OpenAI::Client.new(base_url: "http://localhost:4010/", api_key: "My API Key") - requester = MockRequester.new(500, {}, {}) - openai.requester = requester + stub_request(:post, "http://localhost/chat/completions").to_return_json(status: 500, body: {}) + + openai = OpenAI::Client.new(base_url: "http://localhost/", api_key: "My API Key") assert_raises(OpenAI::Errors::InternalServerError) do openai.chat.completions.create(messages: [{content: "string", role: :developer}], model: :"gpt-4.1") end - assert_equal(3, requester.attempts.length) + assert_requested(:any, /./, times: 3) end def test_client_given_request_default_retry_attempts - openai = OpenAI::Client.new(base_url: "http://localhost:4010/", api_key: "My API Key", max_retries: 3) - requester = MockRequester.new(500, {}, {}) - openai.requester = requester + stub_request(:post, "http://localhost/chat/completions").to_return_json(status: 500, body: {}) + + openai = OpenAI::Client.new(base_url: "http://localhost/", api_key: "My API Key", max_retries: 3) assert_raises(OpenAI::Errors::InternalServerError) do openai.chat.completions.create(messages: [{content: "string", role: :developer}], model: :"gpt-4.1") end - assert_equal(4, requester.attempts.length) + assert_requested(:any, /./, times: 4) end def test_client_default_request_given_retry_attempts - openai = OpenAI::Client.new(base_url: "http://localhost:4010/", api_key: "My API Key") - requester = MockRequester.new(500, {}, {}) - openai.requester = requester + stub_request(:post, "http://localhost/chat/completions").to_return_json(status: 500, body: {}) + + openai = OpenAI::Client.new(base_url: "http://localhost/", api_key: "My API Key") assert_raises(OpenAI::Errors::InternalServerError) do openai.chat.completions.create( @@ -87,13 +76,13 @@ def test_client_default_request_given_retry_attempts ) end - assert_equal(4, requester.attempts.length) + assert_requested(:any, /./, times: 4) end def test_client_given_request_given_retry_attempts - openai = OpenAI::Client.new(base_url: "http://localhost:4010/", api_key: "My API Key", max_retries: 3) - requester = MockRequester.new(500, {}, {}) - openai.requester = requester + stub_request(:post, "http://localhost/chat/completions").to_return_json(status: 500, body: {}) + + openai = OpenAI::Client.new(base_url: "http://localhost/", api_key: "My API Key", max_retries: 3) assert_raises(OpenAI::Errors::InternalServerError) do openai.chat.completions.create( @@ -103,26 +92,34 @@ def test_client_given_request_given_retry_attempts ) end - assert_equal(5, requester.attempts.length) + assert_requested(:any, /./, times: 5) end def test_client_retry_after_seconds - openai = OpenAI::Client.new(base_url: "http://localhost:4010/", api_key: "My API Key", max_retries: 1) - requester = MockRequester.new(500, {"retry-after" => "1.3"}, {}) - openai.requester = requester + stub_request(:post, "http://localhost/chat/completions").to_return_json( + status: 500, + headers: {"retry-after" => "1.3"}, + body: {} + ) + + openai = OpenAI::Client.new(base_url: "http://localhost/", api_key: "My API Key", max_retries: 1) assert_raises(OpenAI::Errors::InternalServerError) do openai.chat.completions.create(messages: [{content: "string", role: :developer}], model: :"gpt-4.1") end - assert_equal(2, requester.attempts.length) + assert_requested(:any, /./, times: 2) assert_equal(1.3, Thread.current.thread_variable_get(:mock_sleep).last) end def test_client_retry_after_date - openai = OpenAI::Client.new(base_url: "http://localhost:4010/", api_key: "My API Key", max_retries: 1) - requester = MockRequester.new(500, {"retry-after" => (Time.now + 10).httpdate}, {}) - openai.requester = requester + stub_request(:post, "http://localhost/chat/completions").to_return_json( + status: 500, + headers: {"retry-after" => (Time.now + 10).httpdate}, + body: {} + ) + + openai = OpenAI::Client.new(base_url: "http://localhost/", api_key: "My API Key", max_retries: 1) assert_raises(OpenAI::Errors::InternalServerError) do Thread.current.thread_variable_set(:time_now, Time.now) @@ -130,43 +127,45 @@ def test_client_retry_after_date Thread.current.thread_variable_set(:time_now, nil) end - assert_equal(2, requester.attempts.length) + assert_requested(:any, /./, times: 2) assert_in_delta(10, Thread.current.thread_variable_get(:mock_sleep).last, 1.0) end def test_client_retry_after_ms - openai = OpenAI::Client.new(base_url: "http://localhost:4010/", api_key: "My API Key", max_retries: 1) - requester = MockRequester.new(500, {"retry-after-ms" => "1300"}, {}) - openai.requester = requester + stub_request(:post, "http://localhost/chat/completions").to_return_json( + status: 500, + headers: {"retry-after-ms" => "1300"}, + body: {} + ) + + openai = OpenAI::Client.new(base_url: "http://localhost/", api_key: "My API Key", max_retries: 1) assert_raises(OpenAI::Errors::InternalServerError) do openai.chat.completions.create(messages: [{content: "string", role: :developer}], model: :"gpt-4.1") end - assert_equal(2, requester.attempts.length) + assert_requested(:any, /./, times: 2) assert_equal(1.3, Thread.current.thread_variable_get(:mock_sleep).last) end def test_retry_count_header - openai = OpenAI::Client.new(base_url: "http://localhost:4010/", api_key: "My API Key") - requester = MockRequester.new(500, {}, {}) - openai.requester = requester + stub_request(:post, "http://localhost/chat/completions").to_return_json(status: 500, body: {}) + + openai = OpenAI::Client.new(base_url: "http://localhost/", api_key: "My API Key") assert_raises(OpenAI::Errors::InternalServerError) do openai.chat.completions.create(messages: [{content: "string", role: :developer}], model: :"gpt-4.1") end - retry_count_headers = requester.attempts.map do - _1.fetch(:headers).fetch("http://github.com/x-stainless-retry-count") + 3.times do + assert_requested(:any, /./, headers: {"x-stainless-retry-count" => _1}) end - - assert_equal(%w[0 1 2], retry_count_headers) end def test_omit_retry_count_header - openai = OpenAI::Client.new(base_url: "http://localhost:4010/", api_key: "My API Key") - requester = MockRequester.new(500, {}, {}) - openai.requester = requester + stub_request(:post, "http://localhost/chat/completions").to_return_json(status: 500, body: {}) + + openai = OpenAI::Client.new(base_url: "http://localhost/", api_key: "My API Key") assert_raises(OpenAI::Errors::InternalServerError) do openai.chat.completions.create( @@ -176,17 +175,15 @@ def test_omit_retry_count_header ) end - retry_count_headers = requester.attempts.map do - _1.fetch(:headers).fetch("http://github.com/x-stainless-retry-count", nil) + assert_requested(:any, /./, times: 3) do + refute_includes(_1.headers.keys.map(&:downcase), "x-stainless-retry-count") end - - assert_equal([nil, nil, nil], retry_count_headers) end def test_overwrite_retry_count_header - openai = OpenAI::Client.new(base_url: "http://localhost:4010/", api_key: "My API Key") - requester = MockRequester.new(500, {}, {}) - openai.requester = requester + stub_request(:post, "http://localhost/chat/completions").to_return_json(status: 500, body: {}) + + openai = OpenAI::Client.new(base_url: "http://localhost/", api_key: "My API Key") assert_raises(OpenAI::Errors::InternalServerError) do openai.chat.completions.create( @@ -196,17 +193,21 @@ def test_overwrite_retry_count_header ) end - retry_count_headers = requester.attempts.map do - _1.fetch(:headers).fetch("http://github.com/x-stainless-retry-count") - end - - assert_equal(%w[42 42 42], retry_count_headers) + assert_requested(:any, /./, headers: {"x-stainless-retry-count" => "42"}, times: 3) end def test_client_redirect_307 - openai = OpenAI::Client.new(base_url: "http://localhost:4010/", api_key: "My API Key") - requester = MockRequester.new(307, {"location" => "/redirected"}, {}) - openai.requester = requester + stub_request(:post, "http://localhost/chat/completions").to_return_json( + status: 307, + headers: {"location" => "/redirected"}, + body: {} + ) + stub_request(:any, "http://localhost/redirected").to_return( + status: 307, + headers: {"location" => "/redirected"} + ) + + openai = OpenAI::Client.new(base_url: "http://localhost/", api_key: "My API Key") assert_raises(OpenAI::Errors::APIConnectionError) do openai.chat.completions.create( @@ -216,19 +217,30 @@ def test_client_redirect_307 ) end - assert_equal("/redirected", requester.attempts.last.fetch(:url).path) - assert_equal(requester.attempts.first.fetch(:method), requester.attempts.last.fetch(:method)) - assert_equal(requester.attempts.first.fetch(:body), requester.attempts.last.fetch(:body)) - assert_equal( - requester.attempts.first.fetch(:headers)["content-type"], - requester.attempts.last.fetch(:headers)["content-type"] - ) + recorded, = WebMock::RequestRegistry.instance.requested_signatures.hash.first + + assert_requested(:any, "http://localhost/redirected", times: OpenAI::Client::MAX_REDIRECTS) do + assert_equal(recorded.method, _1.method) + assert_equal(recorded.body, _1.body) + assert_equal( + recorded.headers.transform_keys(&:downcase).fetch("http://github.com/content-type"), + _1.headers.transform_keys(&:downcase).fetch("http://github.com/content-type") + ) + end end def test_client_redirect_303 - openai = OpenAI::Client.new(base_url: "http://localhost:4010/", api_key: "My API Key") - requester = MockRequester.new(303, {"location" => "/redirected"}, {}) - openai.requester = requester + stub_request(:post, "http://localhost/chat/completions").to_return_json( + status: 303, + headers: {"location" => "/redirected"}, + body: {} + ) + stub_request(:get, "http://localhost/redirected").to_return( + status: 303, + headers: {"location" => "/redirected"} + ) + + openai = OpenAI::Client.new(base_url: "http://localhost/", api_key: "My API Key") assert_raises(OpenAI::Errors::APIConnectionError) do openai.chat.completions.create( @@ -238,16 +250,25 @@ def test_client_redirect_303 ) end - assert_equal("/redirected", requester.attempts.last.fetch(:url).path) - assert_equal(:get, requester.attempts.last.fetch(:method)) - assert_nil(requester.attempts.last.fetch(:body)) - assert_nil(requester.attempts.last.fetch(:headers)["content-type"]) + assert_requested(:get, "http://localhost/redirected", times: OpenAI::Client::MAX_REDIRECTS) do + headers = _1.headers.keys.map(&:downcase) + refute_includes(headers, "content-type") + assert_nil(_1.body) + end end def test_client_redirect_auth_keep_same_origin - openai = OpenAI::Client.new(base_url: "http://localhost:4010/", api_key: "My API Key") - requester = MockRequester.new(307, {"location" => "/redirected"}, {}) - openai.requester = requester + stub_request(:post, "http://localhost/chat/completions").to_return_json( + status: 307, + headers: {"location" => "/redirected"}, + body: {} + ) + stub_request(:any, "http://localhost/redirected").to_return( + status: 307, + headers: {"location" => "/redirected"} + ) + + openai = OpenAI::Client.new(base_url: "http://localhost/", api_key: "My API Key") assert_raises(OpenAI::Errors::APIConnectionError) do openai.chat.completions.create( @@ -257,16 +278,28 @@ def test_client_redirect_auth_keep_same_origin ) end - assert_equal( - requester.attempts.first.fetch(:headers)["authorization"], - requester.attempts.last.fetch(:headers)["authorization"] - ) + recorded, = WebMock::RequestRegistry.instance.requested_signatures.hash.first + auth_header = recorded.headers.transform_keys(&:downcase).fetch("http://github.com/authorization") + + assert_equal("Bearer xyz", auth_header) + assert_requested(:any, "http://localhost/redirected", times: OpenAI::Client::MAX_REDIRECTS) do + auth_header = _1.headers.transform_keys(&:downcase).fetch("http://github.com/authorization") + assert_equal("Bearer xyz", auth_header) + end end def test_client_redirect_auth_strip_cross_origin - openai = OpenAI::Client.new(base_url: "http://localhost:4010/", api_key: "My API Key") - requester = MockRequester.new(307, {"location" => "https://example.com/redirected"}, {}) - openai.requester = requester + stub_request(:post, "http://localhost/chat/completions").to_return_json( + status: 307, + headers: {"location" => "https://example.com/redirected"}, + body: {} + ) + stub_request(:any, "https://example.com/redirected").to_return( + status: 307, + headers: {"location" => "https://example.com/redirected"} + ) + + openai = OpenAI::Client.new(base_url: "http://localhost/", api_key: "My API Key") assert_raises(OpenAI::Errors::APIConnectionError) do openai.chat.completions.create( @@ -276,17 +309,22 @@ def test_client_redirect_auth_strip_cross_origin ) end - assert_nil(requester.attempts.last.fetch(:headers)["authorization"]) + assert_requested(:any, "https://example.com/redirected", times: OpenAI::Client::MAX_REDIRECTS) do + headers = _1.headers.keys.map(&:downcase) + refute_includes(headers, "authorization") + end end def test_default_headers - openai = OpenAI::Client.new(base_url: "http://localhost:4010/", api_key: "My API Key") - requester = MockRequester.new(200, {}, {}) - openai.requester = requester + stub_request(:post, "http://localhost/chat/completions").to_return_json(status: 200, body: {}) + + openai = OpenAI::Client.new(base_url: "http://localhost/", api_key: "My API Key") + openai.chat.completions.create(messages: [{content: "string", role: :developer}], model: :"gpt-4.1") - headers = requester.attempts.first.fetch(:headers) - refute_empty(headers["accept"]) - refute_empty(headers["content-type"]) + assert_requested(:any, /./) do |req| + headers = req.headers.transform_keys(&:downcase).fetch_values("accept", "content-type") + headers.each { refute_empty(_1) } + end end end diff --git a/test/openai/test_helper.rb b/test/openai/test_helper.rb index d0a5de2b..98b833aa 100644 --- a/test/openai/test_helper.rb +++ b/test/openai/test_helper.rb @@ -15,6 +15,7 @@ require "minitest/hooks/test" require "minitest/proveit" require "minitest/rg" +require "webmock" require_relative "../../lib/openai" require_relative "resource_namespaces" @@ -44,8 +45,10 @@ def self.now = Thread.current.thread_variable_get(:time_now) || _now class OpenAI::Test::SingletonClient < OpenAI::Client include Singleton + TEST_API_BASE_URL = ENV.fetch("http://github.com/TEST_API_BASE_URL", "http://localhost:4010/") + def initialize - super(base_url: ENV.fetch("http://github.com/TEST_API_BASE_URL", "http://localhost:4010/"), api_key: "My API Key") + super(base_url: OpenAI::Test::SingletonClient::TEST_API_BASE_URL, api_key: "My API Key") end end @@ -72,3 +75,7 @@ def around_all = async? ? Sync { super } : super def around = async? ? Async { super }.wait : super end + +module WebMock + AssertionFailure.error_class = Minitest::Assertion +end From bf844738622cd1c9a5c31bffc1e5378c132c31fd Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Thu, 24 Apr 2025 07:10:26 +0000 Subject: [PATCH 13/47] chore: show truncated parameter docs in yard --- .../models/audio/speech_create_params.rb | 26 +- lib/openai/models/audio/transcription.rb | 17 +- .../audio/transcription_create_params.rb | 34 ++- .../models/audio/transcription_segment.rb | 35 ++- .../audio/transcription_text_delta_event.rb | 23 +- .../audio/transcription_text_done_event.rb | 23 +- .../models/audio/transcription_verbose.rb | 14 +- lib/openai/models/audio/transcription_word.rb | 8 +- .../models/audio/translation_create_params.rb | 23 +- .../models/audio/translation_verbose.rb | 11 +- .../auto_file_chunking_strategy_param.rb | 2 +- lib/openai/models/batch.rb | 61 +++-- lib/openai/models/batch_create_params.rb | 17 +- lib/openai/models/batch_error.rb | 11 +- lib/openai/models/batch_list_params.rb | 11 +- lib/openai/models/batch_request_counts.rb | 8 +- lib/openai/models/beta/assistant.rb | 61 +++-- .../models/beta/assistant_create_params.rb | 91 +++++-- .../models/beta/assistant_list_params.rb | 19 +- .../models/beta/assistant_stream_event.rb | 176 +++++++++++-- .../models/beta/assistant_tool_choice.rb | 3 +- .../beta/assistant_tool_choice_function.rb | 2 +- .../models/beta/assistant_update_params.rb | 57 ++++- .../models/beta/code_interpreter_tool.rb | 2 +- lib/openai/models/beta/file_search_tool.rb | 26 +- lib/openai/models/beta/function_tool.rb | 3 +- .../models/beta/message_stream_event.rb | 39 ++- .../models/beta/run_step_stream_event.rb | 49 +++- lib/openai/models/beta/run_stream_event.rb | 71 +++++- lib/openai/models/beta/thread.rb | 30 ++- .../beta/thread_create_and_run_params.rb | 168 ++++++++++--- .../models/beta/thread_create_params.rb | 83 +++++-- lib/openai/models/beta/thread_stream_event.rb | 10 +- .../models/beta/thread_update_params.rb | 24 +- .../beta/threads/file_citation_annotation.rb | 10 +- .../threads/file_citation_delta_annotation.rb | 16 +- .../beta/threads/file_path_annotation.rb | 10 +- .../threads/file_path_delta_annotation.rb | 13 +- lib/openai/models/beta/threads/image_file.rb | 10 +- .../beta/threads/image_file_content_block.rb | 3 +- .../models/beta/threads/image_file_delta.rb | 10 +- .../beta/threads/image_file_delta_block.rb | 6 +- lib/openai/models/beta/threads/image_url.rb | 10 +- .../beta/threads/image_url_content_block.rb | 3 +- .../models/beta/threads/image_url_delta.rb | 10 +- .../beta/threads/image_url_delta_block.rb | 6 +- lib/openai/models/beta/threads/message.rb | 57 +++-- .../beta/threads/message_create_params.rb | 22 +- .../models/beta/threads/message_delta.rb | 5 +- .../beta/threads/message_delta_event.rb | 8 +- .../beta/threads/message_list_params.rb | 22 +- .../beta/threads/message_update_params.rb | 7 +- .../beta/threads/refusal_content_block.rb | 3 +- .../beta/threads/refusal_delta_block.rb | 6 +- .../required_action_function_tool_call.rb | 19 +- lib/openai/models/beta/threads/run.rb | 133 +++++++--- .../models/beta/threads/run_create_params.rb | 100 ++++++-- .../models/beta/threads/run_list_params.rb | 19 +- .../threads/run_submit_tool_outputs_params.rb | 14 +- .../models/beta/threads/run_update_params.rb | 7 +- .../threads/runs/code_interpreter_logs.rb | 8 +- .../runs/code_interpreter_output_image.rb | 13 +- .../runs/code_interpreter_tool_call.rb | 37 ++- .../runs/code_interpreter_tool_call_delta.rb | 26 +- .../threads/runs/file_search_tool_call.rb | 50 +++- .../runs/file_search_tool_call_delta.rb | 15 +- .../beta/threads/runs/function_tool_call.rb | 25 +- .../threads/runs/function_tool_call_delta.rb | 28 ++- .../runs/message_creation_step_details.rb | 5 +- .../models/beta/threads/runs/run_step.rb | 70 ++++-- .../beta/threads/runs/run_step_delta.rb | 2 +- .../beta/threads/runs/run_step_delta_event.rb | 8 +- .../runs/run_step_delta_message_delta.rb | 5 +- .../beta/threads/runs/step_list_params.rb | 24 +- .../beta/threads/runs/step_retrieve_params.rb | 9 +- .../threads/runs/tool_call_delta_object.rb | 9 +- .../threads/runs/tool_calls_step_details.rb | 9 +- lib/openai/models/beta/threads/text.rb | 3 +- .../models/beta/threads/text_content_block.rb | 3 +- .../beta/threads/text_content_block_param.rb | 5 +- lib/openai/models/beta/threads/text_delta.rb | 3 +- .../models/beta/threads/text_delta_block.rb | 6 +- lib/openai/models/chat/chat_completion.rb | 49 ++-- ...chat_completion_assistant_message_param.rb | 42 +++- .../models/chat/chat_completion_audio.rb | 14 +- .../chat/chat_completion_audio_param.rb | 8 +- .../models/chat/chat_completion_chunk.rb | 93 +++++-- .../chat/chat_completion_content_part.rb | 14 +- .../chat_completion_content_part_image.rb | 13 +- ...hat_completion_content_part_input_audio.rb | 12 +- .../chat_completion_content_part_refusal.rb | 5 +- .../chat/chat_completion_content_part_text.rb | 5 +- .../models/chat/chat_completion_deleted.rb | 8 +- ...chat_completion_developer_message_param.rb | 12 +- .../chat_completion_function_call_option.rb | 2 +- .../chat_completion_function_message_param.rb | 8 +- .../models/chat/chat_completion_message.rb | 49 ++-- .../chat/chat_completion_message_tool_call.rb | 18 +- .../chat/chat_completion_named_tool_choice.rb | 5 +- .../chat_completion_prediction_content.rb | 8 +- .../chat/chat_completion_store_message.rb | 2 +- .../chat/chat_completion_stream_options.rb | 5 +- .../chat_completion_system_message_param.rb | 12 +- .../chat/chat_completion_token_logprob.rb | 30 ++- .../models/chat/chat_completion_tool.rb | 3 +- .../chat_completion_tool_message_param.rb | 8 +- .../chat_completion_user_message_param.rb | 12 +- .../models/chat/completion_create_params.rb | 147 ++++++++--- .../models/chat/completion_list_params.rb | 19 +- .../models/chat/completion_update_params.rb | 6 +- .../chat/completions/message_list_params.rb | 13 +- lib/openai/models/comparison_filter.rb | 12 +- lib/openai/models/completion.rb | 24 +- lib/openai/models/completion_choice.rb | 9 +- lib/openai/models/completion_create_params.rb | 65 +++-- lib/openai/models/completion_usage.rb | 33 ++- lib/openai/models/compound_filter.rb | 9 +- .../models/create_embedding_response.rb | 16 +- lib/openai/models/embedding.rb | 12 +- lib/openai/models/embedding_create_params.rb | 23 +- lib/openai/models/eval_create_params.rb | 135 +++++++--- lib/openai/models/eval_create_response.rb | 78 ++++-- .../models/eval_custom_data_source_config.rb | 8 +- lib/openai/models/eval_label_model_grader.rb | 35 ++- lib/openai/models/eval_list_params.rb | 16 +- lib/openai/models/eval_list_response.rb | 78 ++++-- lib/openai/models/eval_retrieve_response.rb | 78 ++++-- ...l_stored_completions_data_source_config.rb | 11 +- lib/openai/models/eval_string_check_grader.rb | 14 +- .../models/eval_text_similarity_grader.rb | 21 +- lib/openai/models/eval_update_params.rb | 9 +- lib/openai/models/eval_update_response.rb | 78 ++++-- ...create_eval_completions_run_data_source.rb | 91 +++++-- .../create_eval_jsonl_run_data_source.rb | 13 +- lib/openai/models/evals/eval_api_error.rb | 5 +- .../models/evals/run_cancel_response.rb | 203 ++++++++++----- lib/openai/models/evals/run_create_params.rb | 135 +++++++--- .../models/evals/run_create_response.rb | 203 ++++++++++----- lib/openai/models/evals/run_list_params.rb | 17 +- lib/openai/models/evals/run_list_response.rb | 203 ++++++++++----- .../models/evals/run_retrieve_response.rb | 203 ++++++++++----- .../evals/runs/output_item_list_params.rb | 17 +- .../evals/runs/output_item_list_response.rb | 82 +++--- .../runs/output_item_retrieve_response.rb | 83 ++++--- lib/openai/models/file_create_params.rb | 10 +- lib/openai/models/file_list_params.rb | 18 +- lib/openai/models/file_object.rb | 32 ++- .../checkpoints/permission_create_params.rb | 3 +- .../checkpoints/permission_create_response.rb | 11 +- .../checkpoints/permission_delete_response.rb | 8 +- .../checkpoints/permission_retrieve_params.rb | 12 +- .../permission_retrieve_response.rb | 11 +- .../models/fine_tuning/fine_tuning_job.rb | 141 ++++++++--- .../fine_tuning/fine_tuning_job_event.rb | 20 +- .../fine_tuning_job_wandb_integration.rb | 17 +- ...ine_tuning_job_wandb_integration_object.rb | 10 +- .../models/fine_tuning/job_create_params.rb | 120 ++++++--- .../fine_tuning/job_list_events_params.rb | 6 +- .../models/fine_tuning/job_list_params.rb | 13 +- .../jobs/checkpoint_list_params.rb | 6 +- .../jobs/fine_tuning_job_checkpoint.rb | 20 +- lib/openai/models/function_definition.rb | 18 +- lib/openai/models/image.rb | 13 +- .../models/image_create_variation_params.rb | 26 +- lib/openai/models/image_edit_params.rb | 38 ++- lib/openai/models/image_generate_params.rb | 49 +++- lib/openai/models/images_response.rb | 28 ++- lib/openai/models/model.rb | 11 +- lib/openai/models/moderation.rb | 142 +++++++---- lib/openai/models/moderation_create_params.rb | 10 +- .../models/moderation_create_response.rb | 8 +- .../models/moderation_image_url_input.rb | 7 +- lib/openai/models/moderation_text_input.rb | 5 +- .../other_file_chunking_strategy_object.rb | 2 +- lib/openai/models/reasoning.rb | 11 +- .../models/response_format_json_object.rb | 2 +- .../models/response_format_json_schema.rb | 22 +- lib/openai/models/response_format_text.rb | 2 +- lib/openai/models/responses/computer_tool.rb | 14 +- .../models/responses/easy_input_message.rb | 11 +- .../models/responses/file_search_tool.rb | 25 +- lib/openai/models/responses/function_tool.rb | 17 +- .../responses/input_item_list_params.rb | 18 +- lib/openai/models/responses/response.rb | 78 ++++-- .../responses/response_audio_delta_event.rb | 8 +- .../responses/response_audio_done_event.rb | 5 +- .../response_audio_transcript_delta_event.rb | 8 +- .../response_audio_transcript_done_event.rb | 5 +- ..._code_interpreter_call_code_delta_event.rb | 12 +- ...e_code_interpreter_call_code_done_event.rb | 12 +- ...e_code_interpreter_call_completed_event.rb | 12 +- ...code_interpreter_call_in_progress_event.rb | 12 +- ...ode_interpreter_call_interpreting_event.rb | 12 +- .../response_code_interpreter_tool_call.rb | 42 +++- .../responses/response_completed_event.rb | 8 +- .../responses/response_computer_tool_call.rb | 135 +++++++--- ...response_computer_tool_call_output_item.rb | 29 ++- ...se_computer_tool_call_output_screenshot.rb | 12 +- .../response_content_part_added_event.rb | 17 +- .../response_content_part_done_event.rb | 17 +- .../responses/response_create_params.rb | 62 +++-- .../responses/response_created_event.rb | 8 +- lib/openai/models/responses/response_error.rb | 8 +- .../models/responses/response_error_event.rb | 14 +- .../models/responses/response_failed_event.rb | 8 +- ...sponse_file_search_call_completed_event.rb | 12 +- ...onse_file_search_call_in_progress_event.rb | 12 +- ...sponse_file_search_call_searching_event.rb | 12 +- .../response_file_search_tool_call.rb | 35 ++- ...response_format_text_json_schema_config.rb | 18 +- ...nse_function_call_arguments_delta_event.rb | 17 +- ...onse_function_call_arguments_done_event.rb | 9 +- .../responses/response_function_tool_call.rb | 20 +- .../response_function_tool_call_item.rb | 5 +- ...response_function_tool_call_output_item.rb | 18 +- .../responses/response_function_web_search.rb | 11 +- .../responses/response_in_progress_event.rb | 8 +- .../responses/response_incomplete_event.rb | 8 +- .../models/responses/response_input_audio.rb | 11 +- .../models/responses/response_input_file.rb | 14 +- .../models/responses/response_input_image.rb | 14 +- .../models/responses/response_input_item.rb | 69 ++++-- .../responses/response_input_message_item.rb | 17 +- .../models/responses/response_input_text.rb | 8 +- .../models/responses/response_item_list.rb | 14 +- .../models/responses/response_output_audio.rb | 11 +- .../response_output_item_added_event.rb | 11 +- .../response_output_item_done_event.rb | 11 +- .../responses/response_output_message.rb | 17 +- .../responses/response_output_refusal.rb | 8 +- .../models/responses/response_output_text.rb | 53 ++-- .../responses/response_reasoning_item.rb | 22 +- ...onse_reasoning_summary_part_added_event.rb | 23 +- ...ponse_reasoning_summary_part_done_event.rb | 23 +- ...onse_reasoning_summary_text_delta_event.rb | 18 +- ...ponse_reasoning_summary_text_done_event.rb | 18 +- .../responses/response_refusal_delta_event.rb | 17 +- .../responses/response_refusal_done_event.rb | 17 +- .../responses/response_retrieve_params.rb | 6 +- .../response_text_annotation_delta_event.rb | 62 +++-- .../models/responses/response_text_config.rb | 5 +- .../responses/response_text_delta_event.rb | 17 +- .../responses/response_text_done_event.rb | 17 +- lib/openai/models/responses/response_usage.rb | 21 +- ...esponse_web_search_call_completed_event.rb | 12 +- ...ponse_web_search_call_in_progress_event.rb | 12 +- ...esponse_web_search_call_searching_event.rb | 12 +- .../models/responses/tool_choice_function.rb | 5 +- .../models/responses/tool_choice_types.rb | 5 +- .../models/responses/web_search_tool.rb | 26 +- .../models/static_file_chunking_strategy.rb | 10 +- .../static_file_chunking_strategy_object.rb | 3 +- ...tic_file_chunking_strategy_object_param.rb | 3 +- lib/openai/models/upload.rb | 30 ++- lib/openai/models/upload_complete_params.rb | 10 +- lib/openai/models/upload_create_params.rb | 15 +- .../models/uploads/part_create_params.rb | 6 +- lib/openai/models/uploads/upload_part.rb | 11 +- lib/openai/models/vector_store.rb | 57 +++-- .../models/vector_store_create_params.rb | 29 ++- lib/openai/models/vector_store_list_params.rb | 19 +- .../models/vector_store_search_params.rb | 19 +- .../models/vector_store_search_response.rb | 22 +- .../models/vector_store_update_params.rb | 21 +- .../vector_stores/file_batch_create_params.rb | 14 +- .../file_batch_list_files_params.rb | 24 +- .../vector_stores/file_content_response.rb | 5 +- .../vector_stores/file_create_params.rb | 14 +- .../models/vector_stores/file_list_params.rb | 23 +- .../vector_stores/file_update_params.rb | 7 +- .../models/vector_stores/vector_store_file.rb | 38 ++- .../vector_stores/vector_store_file_batch.rb | 35 ++- lib/openai/resources/audio/speech.rb | 26 +- lib/openai/resources/audio/transcriptions.rb | 68 +++-- lib/openai/resources/audio/translations.rb | 23 +- lib/openai/resources/batches.rb | 34 ++- lib/openai/resources/beta/assistants.rb | 114 ++++++--- lib/openai/resources/beta/threads.rb | 153 +++++++++--- lib/openai/resources/beta/threads/messages.rb | 74 ++++-- lib/openai/resources/beta/threads/runs.rb | 220 ++++++++++++---- .../resources/beta/threads/runs/steps.rb | 45 +++- lib/openai/resources/chat/completions.rb | 234 ++++++++++++------ .../resources/chat/completions/messages.rb | 16 +- lib/openai/resources/completions.rb | 130 +++++++--- lib/openai/resources/embeddings.rb | 23 +- lib/openai/resources/evals.rb | 49 +++- lib/openai/resources/evals/runs.rb | 53 ++-- .../resources/evals/runs/output_items.rb | 33 ++- lib/openai/resources/files.rb | 37 ++- .../fine_tuning/checkpoints/permissions.rb | 39 ++- lib/openai/resources/fine_tuning/jobs.rb | 69 ++++-- .../resources/fine_tuning/jobs/checkpoints.rb | 12 +- lib/openai/resources/images.rb | 113 +++++++-- lib/openai/resources/models.rb | 6 +- lib/openai/resources/moderations.rb | 10 +- lib/openai/resources/responses.rb | 136 +++++++--- lib/openai/resources/responses/input_items.rb | 21 +- lib/openai/resources/uploads.rb | 34 ++- lib/openai/resources/uploads/parts.rb | 9 +- lib/openai/resources/vector_stores.rb | 82 ++++-- .../resources/vector_stores/file_batches.rb | 58 +++-- lib/openai/resources/vector_stores/files.rb | 74 ++++-- .../models/audio/speech_create_params.rbi | 17 +- rbi/lib/openai/models/audio/transcription.rbi | 20 +- .../audio/transcription_create_params.rbi | 30 +++ .../models/audio/transcription_segment.rbi | 17 +- .../audio/transcription_text_delta_event.rbi | 22 +- .../audio/transcription_text_done_event.rbi | 23 +- .../models/audio/transcription_verbose.rbi | 14 +- .../models/audio/transcription_word.rbi | 10 +- .../audio/translation_create_params.rbi | 26 +- .../models/audio/translation_verbose.rbi | 12 +- .../auto_file_chunking_strategy_param.rbi | 6 +- rbi/lib/openai/models/batch.rbi | 30 ++- rbi/lib/openai/models/batch_create_params.rbi | 30 ++- rbi/lib/openai/models/batch_error.rbi | 12 +- rbi/lib/openai/models/batch_list_params.rbi | 13 +- .../openai/models/batch_request_counts.rbi | 10 +- rbi/lib/openai/models/beta/assistant.rbi | 70 +++++- .../models/beta/assistant_create_params.rbi | 120 ++++++++- .../models/beta/assistant_list_params.rbi | 21 +- .../models/beta/assistant_stream_event.rbi | 180 ++++++++++---- .../models/beta/assistant_tool_choice.rbi | 7 +- .../beta/assistant_tool_choice_function.rbi | 6 +- .../models/beta/assistant_update_params.rbi | 74 +++++- .../models/beta/code_interpreter_tool.rbi | 6 +- .../openai/models/beta/file_search_tool.rbi | 38 ++- rbi/lib/openai/models/beta/function_tool.rbi | 7 +- .../models/beta/message_stream_event.rbi | 40 ++- .../models/beta/run_step_stream_event.rbi | 50 ++-- .../openai/models/beta/run_stream_event.rbi | 80 ++++-- rbi/lib/openai/models/beta/thread.rbi | 39 ++- .../beta/thread_create_and_run_params.rbi | 221 +++++++++++++++-- .../models/beta/thread_create_params.rbi | 120 +++++++-- .../models/beta/thread_stream_event.rbi | 10 +- .../models/beta/thread_update_params.rbi | 34 ++- .../beta/threads/file_citation_annotation.rbi | 17 +- .../file_citation_delta_annotation.rbi | 15 +- .../beta/threads/file_path_annotation.rbi | 17 +- .../threads/file_path_delta_annotation.rbi | 20 +- .../openai/models/beta/threads/image_file.rbi | 11 +- .../beta/threads/image_file_content_block.rbi | 7 +- .../models/beta/threads/image_file_delta.rbi | 11 +- .../beta/threads/image_file_delta_block.rbi | 9 +- .../openai/models/beta/threads/image_url.rbi | 10 +- .../beta/threads/image_url_content_block.rbi | 7 +- .../models/beta/threads/image_url_delta.rbi | 10 +- .../beta/threads/image_url_delta_block.rbi | 9 +- .../openai/models/beta/threads/message.rbi | 45 +++- .../beta/threads/message_create_params.rbi | 37 ++- .../models/beta/threads/message_delta.rbi | 8 +- .../beta/threads/message_delta_event.rbi | 10 +- .../beta/threads/message_list_params.rbi | 23 +- .../beta/threads/message_update_params.rbi | 13 +- .../beta/threads/refusal_content_block.rbi | 7 +- .../beta/threads/refusal_delta_block.rbi | 9 +- .../required_action_function_tool_call.rbi | 22 +- rbi/lib/openai/models/beta/threads/run.rbi | 127 +++++++++- .../models/beta/threads/run_create_params.rbi | 133 +++++++++- .../models/beta/threads/run_list_params.rbi | 21 +- .../run_submit_tool_outputs_params.rbi | 17 +- .../models/beta/threads/run_update_params.rbi | 13 +- .../threads/runs/code_interpreter_logs.rbi | 10 +- .../runs/code_interpreter_output_image.rbi | 16 +- .../runs/code_interpreter_tool_call.rbi | 43 +++- .../runs/code_interpreter_tool_call_delta.rbi | 23 +- .../threads/runs/file_search_tool_call.rbi | 51 +++- .../runs/file_search_tool_call_delta.rbi | 13 +- .../beta/threads/runs/function_tool_call.rbi | 23 +- .../threads/runs/function_tool_call_delta.rbi | 25 +- .../runs/message_creation_step_details.rbi | 13 +- .../models/beta/threads/runs/run_step.rbi | 47 +++- .../beta/threads/runs/run_step_delta.rbi | 6 +- .../threads/runs/run_step_delta_event.rbi | 10 +- .../runs/run_step_delta_message_delta.rbi | 13 +- .../beta/threads/runs/step_list_params.rbi | 23 +- .../threads/runs/step_retrieve_params.rbi | 15 +- .../threads/runs/tool_call_delta_object.rbi | 10 +- .../threads/runs/tool_calls_step_details.rbi | 10 +- rbi/lib/openai/models/beta/threads/text.rbi | 7 +- .../beta/threads/text_content_block.rbi | 7 +- .../beta/threads/text_content_block_param.rbi | 8 +- .../openai/models/beta/threads/text_delta.rbi | 7 +- .../models/beta/threads/text_delta_block.rbi | 9 +- .../openai/models/chat/chat_completion.rbi | 53 +++- ...hat_completion_assistant_message_param.rbi | 32 ++- .../models/chat/chat_completion_audio.rbi | 14 +- .../chat/chat_completion_audio_param.rbi | 10 +- .../models/chat/chat_completion_chunk.rbi | 106 +++++++- .../chat/chat_completion_content_part.rbi | 18 +- .../chat_completion_content_part_image.rbi | 16 +- ...at_completion_content_part_input_audio.rbi | 15 +- .../chat_completion_content_part_refusal.rbi | 8 +- .../chat_completion_content_part_text.rbi | 8 +- .../models/chat/chat_completion_deleted.rbi | 10 +- ...hat_completion_developer_message_param.rbi | 11 +- .../chat_completion_function_call_option.rbi | 6 +- ...chat_completion_function_message_param.rbi | 10 +- .../models/chat/chat_completion_message.rbi | 46 +++- .../chat_completion_message_tool_call.rbi | 21 +- .../chat_completion_named_tool_choice.rbi | 13 +- .../chat_completion_prediction_content.rbi | 11 +- .../chat/chat_completion_store_message.rbi | 6 +- .../chat/chat_completion_stream_options.rbi | 12 +- .../chat_completion_system_message_param.rbi | 11 +- .../chat/chat_completion_token_logprob.rbi | 34 ++- .../models/chat/chat_completion_tool.rbi | 7 +- .../chat_completion_tool_message_param.rbi | 10 +- .../chat_completion_user_message_param.rbi | 11 +- .../models/chat/completion_create_params.rbi | 207 +++++++++++++++- .../models/chat/completion_list_params.rbi | 18 +- .../models/chat/completion_update_params.rbi | 12 +- .../chat/completions/message_list_params.rbi | 12 +- rbi/lib/openai/models/comparison_filter.rbi | 18 +- rbi/lib/openai/models/completion.rbi | 14 +- rbi/lib/openai/models/completion_choice.rbi | 12 +- .../models/completion_create_params.rbi | 88 +++++++ rbi/lib/openai/models/completion_usage.rbi | 25 +- rbi/lib/openai/models/compound_filter.rbi | 9 +- .../models/create_embedding_response.rbi | 20 +- rbi/lib/openai/models/embedding.rbi | 12 +- .../openai/models/embedding_create_params.rbi | 30 ++- rbi/lib/openai/models/eval_create_params.rbi | 125 ++++++++-- .../openai/models/eval_create_response.rbi | 68 ++++- .../models/eval_custom_data_source_config.rbi | 9 +- .../openai/models/eval_label_model_grader.rbi | 34 ++- rbi/lib/openai/models/eval_list_params.rbi | 15 +- rbi/lib/openai/models/eval_list_response.rbi | 68 ++++- .../openai/models/eval_retrieve_response.rbi | 68 ++++- ..._stored_completions_data_source_config.rbi | 16 +- .../models/eval_string_check_grader.rbi | 14 +- .../models/eval_text_similarity_grader.rbi | 11 +- rbi/lib/openai/models/eval_update_params.rbi | 14 +- .../openai/models/eval_update_response.rbi | 68 ++++- ...reate_eval_completions_run_data_source.rbi | 91 +++++-- .../create_eval_jsonl_run_data_source.rbi | 23 +- .../openai/models/evals/eval_api_error.rbi | 8 +- .../models/evals/run_cancel_response.rbi | 156 ++++++++++-- .../openai/models/evals/run_create_params.rbi | 120 +++++++-- .../models/evals/run_create_response.rbi | 156 ++++++++++-- .../openai/models/evals/run_list_params.rbi | 15 +- .../openai/models/evals/run_list_response.rbi | 156 ++++++++++-- .../models/evals/run_retrieve_response.rbi | 156 ++++++++++-- .../evals/runs/output_item_list_params.rbi | 16 +- .../evals/runs/output_item_list_response.rbi | 48 +++- .../runs/output_item_retrieve_response.rbi | 48 +++- rbi/lib/openai/models/file_create_params.rbi | 12 +- rbi/lib/openai/models/file_list_params.rbi | 18 +- rbi/lib/openai/models/file_object.rbi | 13 + .../checkpoints/permission_create_params.rbi | 7 +- .../permission_create_response.rbi | 12 +- .../permission_delete_response.rbi | 10 +- .../permission_retrieve_params.rbi | 13 +- .../permission_retrieve_response.rbi | 12 +- .../models/fine_tuning/fine_tuning_job.rbi | 111 +++++++-- .../fine_tuning/fine_tuning_job_event.rbi | 11 +- .../fine_tuning_job_wandb_integration.rbi | 17 +- ...ne_tuning_job_wandb_integration_object.rbi | 11 +- .../models/fine_tuning/job_create_params.rbi | 142 +++++++++-- .../fine_tuning/job_list_events_params.rbi | 9 +- .../models/fine_tuning/job_list_params.rbi | 12 +- .../jobs/checkpoint_list_params.rbi | 9 +- .../jobs/fine_tuning_job_checkpoint.rbi | 7 + rbi/lib/openai/models/function_definition.rbi | 24 +- rbi/lib/openai/models/image.rbi | 14 +- .../models/image_create_variation_params.rbi | 17 +- rbi/lib/openai/models/image_edit_params.rbi | 27 ++ .../openai/models/image_generate_params.rbi | 44 ++++ rbi/lib/openai/models/images_response.rbi | 30 ++- rbi/lib/openai/models/model.rbi | 12 +- rbi/lib/openai/models/moderation.rbi | 68 ++++- .../models/moderation_create_params.rbi | 13 +- .../models/moderation_create_response.rbi | 10 +- .../models/moderation_image_url_input.rbi | 14 +- .../openai/models/moderation_text_input.rbi | 8 +- .../other_file_chunking_strategy_object.rbi | 6 +- rbi/lib/openai/models/reasoning.rbi | 21 +- .../models/response_format_json_object.rbi | 6 +- .../models/response_format_json_schema.rbi | 27 +- .../openai/models/response_format_text.rbi | 6 +- .../openai/models/responses/computer_tool.rbi | 12 +- .../models/responses/easy_input_message.rbi | 12 +- .../models/responses/file_search_tool.rbi | 20 +- .../openai/models/responses/function_tool.rbi | 15 +- .../responses/input_item_list_params.rbi | 20 +- rbi/lib/openai/models/responses/response.rbi | 108 +++++++- .../responses/response_audio_delta_event.rbi | 8 +- .../responses/response_audio_done_event.rbi | 6 +- .../response_audio_transcript_delta_event.rbi | 8 +- .../response_audio_transcript_done_event.rbi | 6 +- ...code_interpreter_call_code_delta_event.rbi | 10 +- ..._code_interpreter_call_code_done_event.rbi | 10 +- ..._code_interpreter_call_completed_event.rbi | 7 +- ...ode_interpreter_call_in_progress_event.rbi | 7 +- ...de_interpreter_call_interpreting_event.rbi | 7 +- .../response_code_interpreter_tool_call.rbi | 37 ++- .../responses/response_completed_event.rbi | 8 +- .../responses/response_computer_tool_call.rbi | 136 ++++++++-- ...esponse_computer_tool_call_output_item.rbi | 22 +- ...e_computer_tool_call_output_screenshot.rbi | 11 +- .../response_content_part_added_event.rbi | 15 +- .../response_content_part_done_event.rbi | 14 +- .../responses/response_create_params.rbi | 104 ++++++++ .../responses/response_created_event.rbi | 8 +- .../models/responses/response_error.rbi | 8 +- .../models/responses/response_error_event.rbi | 12 +- .../responses/response_failed_event.rbi | 8 +- ...ponse_file_search_call_completed_event.rbi | 10 +- ...nse_file_search_call_in_progress_event.rbi | 10 +- ...ponse_file_search_call_searching_event.rbi | 10 +- .../response_file_search_tool_call.rbi | 33 ++- ...esponse_format_text_json_schema_config.rbi | 21 +- ...se_function_call_arguments_delta_event.rbi | 12 +- ...nse_function_call_arguments_done_event.rbi | 11 +- .../responses/response_function_tool_call.rbi | 17 +- .../response_function_tool_call_item.rbi | 6 +- ...esponse_function_tool_call_output_item.rbi | 15 +- .../response_function_web_search.rbi | 10 +- .../responses/response_in_progress_event.rbi | 8 +- .../responses/response_incomplete_event.rbi | 8 +- .../models/responses/response_input_audio.rbi | 10 +- .../models/responses/response_input_file.rbi | 12 +- .../models/responses/response_input_image.rbi | 14 +- .../models/responses/response_input_item.rbi | 60 ++++- .../responses/response_input_message_item.rbi | 16 +- .../models/responses/response_input_text.rbi | 8 +- .../models/responses/response_item_list.rbi | 14 +- .../responses/response_output_audio.rbi | 10 +- .../response_output_item_added_event.rbi | 10 +- .../response_output_item_done_event.rbi | 10 +- .../responses/response_output_message.rbi | 15 +- .../responses/response_output_refusal.rbi | 8 +- .../models/responses/response_output_text.rbi | 44 +++- .../responses/response_reasoning_item.rbi | 21 +- ...nse_reasoning_summary_part_added_event.rbi | 17 +- ...onse_reasoning_summary_part_done_event.rbi | 17 +- ...nse_reasoning_summary_text_delta_event.rbi | 9 +- ...onse_reasoning_summary_text_done_event.rbi | 9 +- .../response_refusal_delta_event.rbi | 14 +- .../responses/response_refusal_done_event.rbi | 14 +- .../responses/response_retrieve_params.rbi | 8 +- .../response_text_annotation_delta_event.rbi | 40 ++- .../models/responses/response_text_config.rbi | 18 +- .../responses/response_text_delta_event.rbi | 15 +- .../responses/response_text_done_event.rbi | 14 +- .../models/responses/response_usage.rbi | 22 +- ...sponse_web_search_call_completed_event.rbi | 10 +- ...onse_web_search_call_in_progress_event.rbi | 10 +- ...sponse_web_search_call_searching_event.rbi | 10 +- .../models/responses/tool_choice_function.rbi | 8 +- .../models/responses/tool_choice_types.rbi | 13 +- .../models/responses/web_search_tool.rbi | 29 ++- .../models/static_file_chunking_strategy.rbi | 11 +- .../static_file_chunking_strategy_object.rbi | 7 +- ...ic_file_chunking_strategy_object_param.rbi | 7 +- rbi/lib/openai/models/upload.rbi | 15 +- .../openai/models/upload_complete_params.rbi | 10 +- .../openai/models/upload_create_params.rbi | 19 +- .../models/uploads/part_create_params.rbi | 7 +- rbi/lib/openai/models/uploads/upload_part.rbi | 12 +- rbi/lib/openai/models/vector_store.rbi | 40 ++- .../models/vector_store_create_params.rbi | 26 +- .../models/vector_store_list_params.rbi | 21 +- .../models/vector_store_search_params.rbi | 10 +- .../models/vector_store_search_response.rbi | 26 +- .../models/vector_store_update_params.rbi | 25 +- .../file_batch_create_params.rbi | 18 +- .../file_batch_list_files_params.rbi | 17 +- .../vector_stores/file_content_response.rbi | 8 +- .../vector_stores/file_create_params.rbi | 18 +- .../models/vector_stores/file_list_params.rbi | 23 +- .../vector_stores/file_update_params.rbi | 12 +- .../vector_stores/vector_store_file.rbi | 28 ++- .../vector_stores/vector_store_file_batch.rbi | 28 ++- 574 files changed, 13164 insertions(+), 3670 deletions(-) diff --git a/lib/openai/models/audio/speech_create_params.rb b/lib/openai/models/audio/speech_create_params.rb index 114d8fa3..5ab05354 100644 --- a/lib/openai/models/audio/speech_create_params.rb +++ b/lib/openai/models/audio/speech_create_params.rb @@ -52,12 +52,26 @@ class SpeechCreateParams < OpenAI::Internal::Type::BaseModel optional :speed, Float # @!method initialize(input:, model:, voice:, instructions: nil, response_format: nil, speed: nil, request_options: {}) - # @param input [String] - # @param model [String, Symbol, OpenAI::Models::Audio::SpeechModel] - # @param voice [String, Symbol, OpenAI::Models::Audio::SpeechCreateParams::Voice] - # @param instructions [String] - # @param response_format [Symbol, OpenAI::Models::Audio::SpeechCreateParams::ResponseFormat] - # @param speed [Float] + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Audio::SpeechCreateParams} for more details. + # + # @param input [String] The text to generate audio for. The maximum length is 4096 characters. + # + # @param model [String, Symbol, OpenAI::Models::Audio::SpeechModel] One of the available [TTS models](https://platform.openai.com/docs/models#tts): + # ... + # + # @param voice [String, Symbol, OpenAI::Models::Audio::SpeechCreateParams::Voice] The voice to use when generating the audio. Supported voices are `alloy`, `ash`, + # ... + # + # @param instructions [String] Control the voice of your generated audio with additional instructions. Does not + # ... + # + # @param response_format [Symbol, OpenAI::Models::Audio::SpeechCreateParams::ResponseFormat] The format to audio in. Supported formats are `mp3`, `opus`, `aac`, `flac`, `wav + # ... + # + # @param speed [Float] The speed of the generated audio. Select a value from `0.25` to `4.0`. `1.0` is + # ... + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] # One of the available [TTS models](https://platform.openai.com/docs/models#tts): diff --git a/lib/openai/models/audio/transcription.rb b/lib/openai/models/audio/transcription.rb index 96e65045..7f74deeb 100644 --- a/lib/openai/models/audio/transcription.rb +++ b/lib/openai/models/audio/transcription.rb @@ -19,11 +19,16 @@ class Transcription < OpenAI::Internal::Type::BaseModel optional :logprobs, -> { OpenAI::Internal::Type::ArrayOf[OpenAI::Models::Audio::Transcription::Logprob] } # @!method initialize(text:, logprobs: nil) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Audio::Transcription} for more details. + # # Represents a transcription response returned by model, based on the provided # input. # - # @param text [String] - # @param logprobs [Array] + # @param text [String] The transcribed text. + # + # @param logprobs [Array] The log probabilities of the tokens in the transcription. Only returned with the + # ... class Logprob < OpenAI::Internal::Type::BaseModel # @!attribute token @@ -45,9 +50,11 @@ class Logprob < OpenAI::Internal::Type::BaseModel optional :logprob, Float # @!method initialize(token: nil, bytes: nil, logprob: nil) - # @param token [String] - # @param bytes [Array] - # @param logprob [Float] + # @param token [String] The token in the transcription. + # + # @param bytes [Array] The bytes of the token. + # + # @param logprob [Float] The log probability of the token. end end end diff --git a/lib/openai/models/audio/transcription_create_params.rb b/lib/openai/models/audio/transcription_create_params.rb index 4377a2ab..ccb71b14 100644 --- a/lib/openai/models/audio/transcription_create_params.rb +++ b/lib/openai/models/audio/transcription_create_params.rb @@ -83,14 +83,32 @@ class TranscriptionCreateParams < OpenAI::Internal::Type::BaseModel -> { OpenAI::Internal::Type::ArrayOf[enum: OpenAI::Models::Audio::TranscriptionCreateParams::TimestampGranularity] } # @!method initialize(file:, model:, include: nil, language: nil, prompt: nil, response_format: nil, temperature: nil, timestamp_granularities: nil, request_options: {}) - # @param file [Pathname, StringIO] - # @param model [String, Symbol, OpenAI::Models::AudioModel] - # @param include [Array] - # @param language [String] - # @param prompt [String] - # @param response_format [Symbol, OpenAI::Models::AudioResponseFormat] - # @param temperature [Float] - # @param timestamp_granularities [Array] + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Audio::TranscriptionCreateParams} for more details. + # + # @param file [Pathname, StringIO] The audio file object (not file name) to transcribe, in one of these formats: fl + # ... + # + # @param model [String, Symbol, OpenAI::Models::AudioModel] ID of the model to use. The options are `gpt-4o-transcribe`, `gpt-4o-mini-transc + # ... + # + # @param include [Array] Additional information to include in the transcription response. ... + # + # @param language [String] The language of the input audio. Supplying the input language in [ISO-639-1](htt + # ... + # + # @param prompt [String] An optional text to guide the model's style or continue a previous audio segment + # ... + # + # @param response_format [Symbol, OpenAI::Models::AudioResponseFormat] The format of the output, in one of these options: `json`, `text`, `srt`, `verbo + # ... + # + # @param temperature [Float] The sampling temperature, between 0 and 1. Higher values like 0.8 will make the + # ... + # + # @param timestamp_granularities [Array] The timestamp granularities to populate for this transcription. `response_format + # ... + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] # ID of the model to use. The options are `gpt-4o-transcribe`, diff --git a/lib/openai/models/audio/transcription_segment.rb b/lib/openai/models/audio/transcription_segment.rb index 19923d2d..26c61c14 100644 --- a/lib/openai/models/audio/transcription_segment.rb +++ b/lib/openai/models/audio/transcription_segment.rb @@ -68,16 +68,31 @@ class TranscriptionSegment < OpenAI::Internal::Type::BaseModel required :tokens, OpenAI::Internal::Type::ArrayOf[Integer] # @!method initialize(id:, avg_logprob:, compression_ratio:, end_:, no_speech_prob:, seek:, start:, temperature:, text:, tokens:) - # @param id [Integer] - # @param avg_logprob [Float] - # @param compression_ratio [Float] - # @param end_ [Float] - # @param no_speech_prob [Float] - # @param seek [Integer] - # @param start [Float] - # @param temperature [Float] - # @param text [String] - # @param tokens [Array] + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Audio::TranscriptionSegment} for more details. + # + # @param id [Integer] Unique identifier of the segment. + # + # @param avg_logprob [Float] Average logprob of the segment. If the value is lower than -1, consider the logp + # ... + # + # @param compression_ratio [Float] Compression ratio of the segment. If the value is greater than 2.4, consider the + # ... + # + # @param end_ [Float] End time of the segment in seconds. + # + # @param no_speech_prob [Float] Probability of no speech in the segment. If the value is higher than 1.0 and the + # ... + # + # @param seek [Integer] Seek offset of the segment. + # + # @param start [Float] Start time of the segment in seconds. + # + # @param temperature [Float] Temperature parameter used for generating the segment. + # + # @param text [String] Text content of the segment. + # + # @param tokens [Array] Array of token IDs for the text content. end end end diff --git a/lib/openai/models/audio/transcription_text_delta_event.rb b/lib/openai/models/audio/transcription_text_delta_event.rb index 7f9705d1..774f99c8 100644 --- a/lib/openai/models/audio/transcription_text_delta_event.rb +++ b/lib/openai/models/audio/transcription_text_delta_event.rb @@ -26,14 +26,20 @@ class TranscriptionTextDeltaEvent < OpenAI::Internal::Type::BaseModel -> { OpenAI::Internal::Type::ArrayOf[OpenAI::Models::Audio::TranscriptionTextDeltaEvent::Logprob] } # @!method initialize(delta:, logprobs: nil, type: :"transcript.text.delta") + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Audio::TranscriptionTextDeltaEvent} for more details. + # # Emitted when there is an additional text delta. This is also the first event # emitted when the transcription starts. Only emitted when you # [create a transcription](https://platform.openai.com/docs/api-reference/audio/create-transcription) # with the `Stream` parameter set to `true`. # - # @param delta [String] - # @param logprobs [Array] - # @param type [Symbol, :"transcript.text.delta"] + # @param delta [String] The text delta that was additionally transcribed. ... + # + # @param logprobs [Array] The log probabilities of the delta. Only included if you [create a transcription + # ... + # + # @param type [Symbol, :"transcript.text.delta"] The type of the event. Always `transcript.text.delta`. ... class Logprob < OpenAI::Internal::Type::BaseModel # @!attribute token @@ -55,9 +61,14 @@ class Logprob < OpenAI::Internal::Type::BaseModel optional :logprob, Float # @!method initialize(token: nil, bytes: nil, logprob: nil) - # @param token [String] - # @param bytes [Array] - # @param logprob [Float] + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Audio::TranscriptionTextDeltaEvent::Logprob} for more details. + # + # @param token [String] The token that was used to generate the log probability. ... + # + # @param bytes [Array] The bytes that were used to generate the log probability. ... + # + # @param logprob [Float] The log probability of the token. ... end end end diff --git a/lib/openai/models/audio/transcription_text_done_event.rb b/lib/openai/models/audio/transcription_text_done_event.rb index be7eb322..99dd1045 100644 --- a/lib/openai/models/audio/transcription_text_done_event.rb +++ b/lib/openai/models/audio/transcription_text_done_event.rb @@ -27,14 +27,20 @@ class TranscriptionTextDoneEvent < OpenAI::Internal::Type::BaseModel -> { OpenAI::Internal::Type::ArrayOf[OpenAI::Models::Audio::TranscriptionTextDoneEvent::Logprob] } # @!method initialize(text:, logprobs: nil, type: :"transcript.text.done") + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Audio::TranscriptionTextDoneEvent} for more details. + # # Emitted when the transcription is complete. Contains the complete transcription # text. Only emitted when you # [create a transcription](https://platform.openai.com/docs/api-reference/audio/create-transcription) # with the `Stream` parameter set to `true`. # - # @param text [String] - # @param logprobs [Array] - # @param type [Symbol, :"transcript.text.done"] + # @param text [String] The text that was transcribed. ... + # + # @param logprobs [Array] The log probabilities of the individual tokens in the transcription. Only includ + # ... + # + # @param type [Symbol, :"transcript.text.done"] The type of the event. Always `transcript.text.done`. ... class Logprob < OpenAI::Internal::Type::BaseModel # @!attribute token @@ -56,9 +62,14 @@ class Logprob < OpenAI::Internal::Type::BaseModel optional :logprob, Float # @!method initialize(token: nil, bytes: nil, logprob: nil) - # @param token [String] - # @param bytes [Array] - # @param logprob [Float] + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Audio::TranscriptionTextDoneEvent::Logprob} for more details. + # + # @param token [String] The token that was used to generate the log probability. ... + # + # @param bytes [Array] The bytes that were used to generate the log probability. ... + # + # @param logprob [Float] The log probability of the token. ... end end end diff --git a/lib/openai/models/audio/transcription_verbose.rb b/lib/openai/models/audio/transcription_verbose.rb index ae9e3c77..361a380c 100644 --- a/lib/openai/models/audio/transcription_verbose.rb +++ b/lib/openai/models/audio/transcription_verbose.rb @@ -38,11 +38,15 @@ class TranscriptionVerbose < OpenAI::Internal::Type::BaseModel # Represents a verbose json transcription response returned by model, based on the # provided input. # - # @param duration [Float] - # @param language [String] - # @param text [String] - # @param segments [Array] - # @param words [Array] + # @param duration [Float] The duration of the input audio. + # + # @param language [String] The language of the input audio. + # + # @param text [String] The transcribed text. + # + # @param segments [Array] Segments of the transcribed text and their corresponding details. + # + # @param words [Array] Extracted words and their corresponding timestamps. end end end diff --git a/lib/openai/models/audio/transcription_word.rb b/lib/openai/models/audio/transcription_word.rb index f7f973cd..b9e5da59 100644 --- a/lib/openai/models/audio/transcription_word.rb +++ b/lib/openai/models/audio/transcription_word.rb @@ -23,9 +23,11 @@ class TranscriptionWord < OpenAI::Internal::Type::BaseModel required :word, String # @!method initialize(end_:, start:, word:) - # @param end_ [Float] - # @param start [Float] - # @param word [String] + # @param end_ [Float] End time of the word in seconds. + # + # @param start [Float] Start time of the word in seconds. + # + # @param word [String] The text content of the word. end end end diff --git a/lib/openai/models/audio/translation_create_params.rb b/lib/openai/models/audio/translation_create_params.rb index ce70c85f..a933aaa9 100644 --- a/lib/openai/models/audio/translation_create_params.rb +++ b/lib/openai/models/audio/translation_create_params.rb @@ -49,11 +49,24 @@ class TranslationCreateParams < OpenAI::Internal::Type::BaseModel optional :temperature, Float # @!method initialize(file:, model:, prompt: nil, response_format: nil, temperature: nil, request_options: {}) - # @param file [Pathname, StringIO] - # @param model [String, Symbol, OpenAI::Models::AudioModel] - # @param prompt [String] - # @param response_format [Symbol, OpenAI::Models::Audio::TranslationCreateParams::ResponseFormat] - # @param temperature [Float] + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Audio::TranslationCreateParams} for more details. + # + # @param file [Pathname, StringIO] The audio file object (not file name) translate, in one of these formats: flac, + # ... + # + # @param model [String, Symbol, OpenAI::Models::AudioModel] ID of the model to use. Only `whisper-1` (which is powered by our open source Wh + # ... + # + # @param prompt [String] An optional text to guide the model's style or continue a previous audio segment + # ... + # + # @param response_format [Symbol, OpenAI::Models::Audio::TranslationCreateParams::ResponseFormat] The format of the output, in one of these options: `json`, `text`, `srt`, `verbo + # ... + # + # @param temperature [Float] The sampling temperature, between 0 and 1. Higher values like 0.8 will make the + # ... + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] # ID of the model to use. Only `whisper-1` (which is powered by our open source diff --git a/lib/openai/models/audio/translation_verbose.rb b/lib/openai/models/audio/translation_verbose.rb index c5c9c54c..8da3a73b 100644 --- a/lib/openai/models/audio/translation_verbose.rb +++ b/lib/openai/models/audio/translation_verbose.rb @@ -29,10 +29,13 @@ class TranslationVerbose < OpenAI::Internal::Type::BaseModel optional :segments, -> { OpenAI::Internal::Type::ArrayOf[OpenAI::Models::Audio::TranscriptionSegment] } # @!method initialize(duration:, language:, text:, segments: nil) - # @param duration [Float] - # @param language [String] - # @param text [String] - # @param segments [Array] + # @param duration [Float] The duration of the input audio. + # + # @param language [String] The language of the output translation (always `english`). + # + # @param text [String] The translated text. + # + # @param segments [Array] Segments of the translated text and their corresponding details. end end end diff --git a/lib/openai/models/auto_file_chunking_strategy_param.rb b/lib/openai/models/auto_file_chunking_strategy_param.rb index 9065ad1c..0bb7685f 100644 --- a/lib/openai/models/auto_file_chunking_strategy_param.rb +++ b/lib/openai/models/auto_file_chunking_strategy_param.rb @@ -13,7 +13,7 @@ class AutoFileChunkingStrategyParam < OpenAI::Internal::Type::BaseModel # The default strategy. This strategy currently uses a `max_chunk_size_tokens` of # `800` and `chunk_overlap_tokens` of `400`. # - # @param type [Symbol, :auto] + # @param type [Symbol, :auto] Always `auto`. end end end diff --git a/lib/openai/models/batch.rb b/lib/openai/models/batch.rb index d8a84818..b2ceaa9b 100644 --- a/lib/openai/models/batch.rb +++ b/lib/openai/models/batch.rb @@ -128,26 +128,48 @@ class Batch < OpenAI::Internal::Type::BaseModel optional :request_counts, -> { OpenAI::Models::BatchRequestCounts } # @!method initialize(id:, completion_window:, created_at:, endpoint:, input_file_id:, status:, cancelled_at: nil, cancelling_at: nil, completed_at: nil, error_file_id: nil, errors: nil, expired_at: nil, expires_at: nil, failed_at: nil, finalizing_at: nil, in_progress_at: nil, metadata: nil, output_file_id: nil, request_counts: nil, object: :batch) + # Some parameter documentations has been truncated, see {OpenAI::Models::Batch} + # for more details. + # # @param id [String] - # @param completion_window [String] - # @param created_at [Integer] - # @param endpoint [String] - # @param input_file_id [String] - # @param status [Symbol, OpenAI::Models::Batch::Status] - # @param cancelled_at [Integer] - # @param cancelling_at [Integer] - # @param completed_at [Integer] - # @param error_file_id [String] + # + # @param completion_window [String] The time frame within which the batch should be processed. + # + # @param created_at [Integer] The Unix timestamp (in seconds) for when the batch was created. + # + # @param endpoint [String] The OpenAI API endpoint used by the batch. + # + # @param input_file_id [String] The ID of the input file for the batch. + # + # @param status [Symbol, OpenAI::Models::Batch::Status] The current status of the batch. + # + # @param cancelled_at [Integer] The Unix timestamp (in seconds) for when the batch was cancelled. + # + # @param cancelling_at [Integer] The Unix timestamp (in seconds) for when the batch started cancelling. + # + # @param completed_at [Integer] The Unix timestamp (in seconds) for when the batch was completed. + # + # @param error_file_id [String] The ID of the file containing the outputs of requests with errors. + # # @param errors [OpenAI::Models::Batch::Errors] - # @param expired_at [Integer] - # @param expires_at [Integer] - # @param failed_at [Integer] - # @param finalizing_at [Integer] - # @param in_progress_at [Integer] - # @param metadata [Hash{Symbol=>String}, nil] - # @param output_file_id [String] - # @param request_counts [OpenAI::Models::BatchRequestCounts] - # @param object [Symbol, :batch] + # + # @param expired_at [Integer] The Unix timestamp (in seconds) for when the batch expired. + # + # @param expires_at [Integer] The Unix timestamp (in seconds) for when the batch will expire. + # + # @param failed_at [Integer] The Unix timestamp (in seconds) for when the batch failed. + # + # @param finalizing_at [Integer] The Unix timestamp (in seconds) for when the batch started finalizing. + # + # @param in_progress_at [Integer] The Unix timestamp (in seconds) for when the batch started processing. + # + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # + # @param output_file_id [String] The ID of the file containing the outputs of successfully executed requests. + # + # @param request_counts [OpenAI::Models::BatchRequestCounts] The request counts for different statuses within the batch. + # + # @param object [Symbol, :batch] The object type, which is always `batch`. # The current status of the batch. # @@ -183,7 +205,8 @@ class Errors < OpenAI::Internal::Type::BaseModel # @!method initialize(data: nil, object: nil) # @param data [Array] - # @param object [String] + # + # @param object [String] The object type, which is always `list`. end end end diff --git a/lib/openai/models/batch_create_params.rb b/lib/openai/models/batch_create_params.rb index 9c5654db..e72da75d 100644 --- a/lib/openai/models/batch_create_params.rb +++ b/lib/openai/models/batch_create_params.rb @@ -49,10 +49,19 @@ class BatchCreateParams < OpenAI::Internal::Type::BaseModel optional :metadata, OpenAI::Internal::Type::HashOf[String], nil?: true # @!method initialize(completion_window:, endpoint:, input_file_id:, metadata: nil, request_options: {}) - # @param completion_window [Symbol, OpenAI::Models::BatchCreateParams::CompletionWindow] - # @param endpoint [Symbol, OpenAI::Models::BatchCreateParams::Endpoint] - # @param input_file_id [String] - # @param metadata [Hash{Symbol=>String}, nil] + # Some parameter documentations has been truncated, see + # {OpenAI::Models::BatchCreateParams} for more details. + # + # @param completion_window [Symbol, OpenAI::Models::BatchCreateParams::CompletionWindow] The time frame within which the batch should be processed. Currently only `24h` + # ... + # + # @param endpoint [Symbol, OpenAI::Models::BatchCreateParams::Endpoint] The endpoint to be used for all requests in the batch. Currently `/v1/responses` + # ... + # + # @param input_file_id [String] The ID of an uploaded file that contains requests for the new batch. ... + # + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] # The time frame within which the batch should be processed. Currently only `24h` diff --git a/lib/openai/models/batch_error.rb b/lib/openai/models/batch_error.rb index 9d629686..538e1183 100644 --- a/lib/openai/models/batch_error.rb +++ b/lib/openai/models/batch_error.rb @@ -28,10 +28,13 @@ class BatchError < OpenAI::Internal::Type::BaseModel optional :param, String, nil?: true # @!method initialize(code: nil, line: nil, message: nil, param: nil) - # @param code [String] - # @param line [Integer, nil] - # @param message [String] - # @param param [String, nil] + # @param code [String] An error code identifying the error type. + # + # @param line [Integer, nil] The line number of the input file where the error occurred, if applicable. + # + # @param message [String] A human-readable message providing more details about the error. + # + # @param param [String, nil] The name of the parameter that caused the error, if applicable. end end end diff --git a/lib/openai/models/batch_list_params.rb b/lib/openai/models/batch_list_params.rb index 388dc273..f4b386d2 100644 --- a/lib/openai/models/batch_list_params.rb +++ b/lib/openai/models/batch_list_params.rb @@ -24,8 +24,15 @@ class BatchListParams < OpenAI::Internal::Type::BaseModel optional :limit, Integer # @!method initialize(after: nil, limit: nil, request_options: {}) - # @param after [String] - # @param limit [Integer] + # Some parameter documentations has been truncated, see + # {OpenAI::Models::BatchListParams} for more details. + # + # @param after [String] A cursor for use in pagination. `after` is an object ID that defines your place + # ... + # + # @param limit [Integer] A limit on the number of objects to be returned. Limit can range between 1 and 1 + # ... + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] end end diff --git a/lib/openai/models/batch_request_counts.rb b/lib/openai/models/batch_request_counts.rb index dce46757..e8e7caf0 100644 --- a/lib/openai/models/batch_request_counts.rb +++ b/lib/openai/models/batch_request_counts.rb @@ -24,9 +24,11 @@ class BatchRequestCounts < OpenAI::Internal::Type::BaseModel # @!method initialize(completed:, failed:, total:) # The request counts for different statuses within the batch. # - # @param completed [Integer] - # @param failed [Integer] - # @param total [Integer] + # @param completed [Integer] Number of requests that have been completed successfully. + # + # @param failed [Integer] Number of requests that have failed. + # + # @param total [Integer] Total number of requests in the batch. end end end diff --git a/lib/openai/models/beta/assistant.rb b/lib/openai/models/beta/assistant.rb index a4069e36..1923fa0e 100644 --- a/lib/openai/models/beta/assistant.rb +++ b/lib/openai/models/beta/assistant.rb @@ -124,21 +124,43 @@ class Assistant < OpenAI::Internal::Type::BaseModel optional :top_p, Float, nil?: true # @!method initialize(id:, created_at:, description:, instructions:, metadata:, model:, name:, tools:, response_format: nil, temperature: nil, tool_resources: nil, top_p: nil, object: :assistant) + # 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. # - # @param id [String] - # @param created_at [Integer] - # @param description [String, nil] - # @param instructions [String, nil] - # @param metadata [Hash{Symbol=>String}, nil] - # @param model [String] - # @param name [String, nil] - # @param tools [Array] - # @param response_format [Symbol, :auto, OpenAI::Models::ResponseFormatText, OpenAI::Models::ResponseFormatJSONObject, OpenAI::Models::ResponseFormatJSONSchema, nil] - # @param temperature [Float, nil] - # @param tool_resources [OpenAI::Models::Beta::Assistant::ToolResources, nil] - # @param top_p [Float, nil] - # @param object [Symbol, :assistant] + # @param id [String] The identifier, which can be referenced in API endpoints. + # + # @param created_at [Integer] The Unix timestamp (in seconds) for when the assistant was created. + # + # @param description [String, nil] The description of the assistant. The maximum length is 512 characters. ... + # + # @param instructions [String, nil] The system instructions that the assistant uses. The maximum length is 256,000 c + # ... + # + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # + # @param model [String] ID of the model to use. You can use the [List models](https://platform.openai.co + # ... + # + # @param name [String, nil] The name of the assistant. The maximum length is 256 characters. ... + # + # @param tools [Array] A list of tool enabled on the assistant. There can be a maximum of 128 tools per + # ... + # + # @param response_format [Symbol, :auto, OpenAI::Models::ResponseFormatText, OpenAI::Models::ResponseFormatJSONObject, OpenAI::Models::ResponseFormatJSONSchema, nil] Specifies the format that the model must output. Compatible with [GPT-4o](https: + # ... + # + # @param temperature [Float, nil] What sampling temperature to use, between 0 and 2. Higher values like 0.8 will m + # ... + # + # @param tool_resources [OpenAI::Models::Beta::Assistant::ToolResources, nil] A set of resources that are used by the assistant's tools. The resources are spe + # ... + # + # @param top_p [Float, nil] An alternative to sampling with temperature, called nucleus sampling, where the + # ... + # + # @param object [Symbol, :assistant] The object type, which is always `assistant`. # @see OpenAI::Models::Beta::Assistant#tool_resources class ToolResources < OpenAI::Internal::Type::BaseModel @@ -172,7 +194,12 @@ class CodeInterpreter < OpenAI::Internal::Type::BaseModel optional :file_ids, OpenAI::Internal::Type::ArrayOf[String] # @!method initialize(file_ids: nil) - # @param file_ids [Array] + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::Assistant::ToolResources::CodeInterpreter} for more + # details. + # + # @param file_ids [Array] A list of [file](https://platform.openai.com/docs/api-reference/files) IDs made + # ... end # @see OpenAI::Models::Beta::Assistant::ToolResources#file_search @@ -187,7 +214,11 @@ class FileSearch < OpenAI::Internal::Type::BaseModel optional :vector_store_ids, OpenAI::Internal::Type::ArrayOf[String] # @!method initialize(vector_store_ids: nil) - # @param vector_store_ids [Array] + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::Assistant::ToolResources::FileSearch} for more details. + # + # @param vector_store_ids [Array] The ID of the [vector store](https://platform.openai.com/docs/api-reference/vect + # ... end end end diff --git a/lib/openai/models/beta/assistant_create_params.rb b/lib/openai/models/beta/assistant_create_params.rb index 089e0fe9..3870f034 100644 --- a/lib/openai/models/beta/assistant_create_params.rb +++ b/lib/openai/models/beta/assistant_create_params.rb @@ -120,17 +120,38 @@ class AssistantCreateParams < OpenAI::Internal::Type::BaseModel optional :top_p, Float, nil?: true # @!method initialize(model:, description: nil, instructions: nil, metadata: nil, name: nil, reasoning_effort: nil, response_format: nil, temperature: nil, tool_resources: nil, tools: nil, top_p: nil, request_options: {}) - # @param model [String, Symbol, OpenAI::Models::ChatModel] - # @param description [String, nil] - # @param instructions [String, nil] - # @param metadata [Hash{Symbol=>String}, nil] - # @param name [String, nil] - # @param reasoning_effort [Symbol, OpenAI::Models::ReasoningEffort, nil] - # @param response_format [Symbol, :auto, OpenAI::Models::ResponseFormatText, OpenAI::Models::ResponseFormatJSONObject, OpenAI::Models::ResponseFormatJSONSchema, nil] - # @param temperature [Float, nil] - # @param tool_resources [OpenAI::Models::Beta::AssistantCreateParams::ToolResources, nil] - # @param tools [Array] - # @param top_p [Float, nil] + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::AssistantCreateParams} for more details. + # + # @param model [String, Symbol, OpenAI::Models::ChatModel] ID of the model to use. You can use the [List models](https://platform.openai.co + # ... + # + # @param description [String, nil] The description of the assistant. The maximum length is 512 characters. ... + # + # @param instructions [String, nil] The system instructions that the assistant uses. The maximum length is 256,000 c + # ... + # + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # + # @param name [String, nil] The name of the assistant. The maximum length is 256 characters. ... + # + # @param reasoning_effort [Symbol, OpenAI::Models::ReasoningEffort, nil] **o-series models only** ... + # + # @param response_format [Symbol, :auto, OpenAI::Models::ResponseFormatText, OpenAI::Models::ResponseFormatJSONObject, OpenAI::Models::ResponseFormatJSONSchema, nil] Specifies the format that the model must output. Compatible with [GPT-4o](https: + # ... + # + # @param temperature [Float, nil] What sampling temperature to use, between 0 and 2. Higher values like 0.8 will m + # ... + # + # @param tool_resources [OpenAI::Models::Beta::AssistantCreateParams::ToolResources, nil] A set of resources that are used by the assistant's tools. The resources are spe + # ... + # + # @param tools [Array] A list of tool enabled on the assistant. There can be a maximum of 128 tools per + # ... + # + # @param top_p [Float, nil] An alternative to sampling with temperature, called nucleus sampling, where the + # ... + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] # ID of the model to use. You can use the @@ -182,7 +203,12 @@ class CodeInterpreter < OpenAI::Internal::Type::BaseModel optional :file_ids, OpenAI::Internal::Type::ArrayOf[String] # @!method initialize(file_ids: nil) - # @param file_ids [Array] + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::AssistantCreateParams::ToolResources::CodeInterpreter} + # for more details. + # + # @param file_ids [Array] A list of [file](https://platform.openai.com/docs/api-reference/files) IDs made + # ... end # @see OpenAI::Models::Beta::AssistantCreateParams::ToolResources#file_search @@ -207,8 +233,15 @@ class FileSearch < OpenAI::Internal::Type::BaseModel -> { OpenAI::Internal::Type::ArrayOf[OpenAI::Models::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore] } # @!method initialize(vector_store_ids: nil, vector_stores: nil) - # @param vector_store_ids [Array] - # @param vector_stores [Array] + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::AssistantCreateParams::ToolResources::FileSearch} for + # more details. + # + # @param vector_store_ids [Array] The [vector store](https://platform.openai.com/docs/api-reference/vector-stores/ + # ... + # + # @param vector_stores [Array] A helper to create a [vector store](https://platform.openai.com/docs/api-referen + # ... class VectorStore < OpenAI::Internal::Type::BaseModel # @!attribute chunking_strategy @@ -239,9 +272,17 @@ class VectorStore < OpenAI::Internal::Type::BaseModel optional :metadata, OpenAI::Internal::Type::HashOf[String], nil?: true # @!method initialize(chunking_strategy: nil, file_ids: nil, metadata: nil) - # @param chunking_strategy [OpenAI::Models::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Auto, OpenAI::Models::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static] - # @param file_ids [Array] - # @param metadata [Hash{Symbol=>String}, nil] + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore} + # for more details. + # + # @param chunking_strategy [OpenAI::Models::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Auto, OpenAI::Models::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static] The chunking strategy used to chunk the file(s). If not set, will use the `auto` + # ... + # + # @param file_ids [Array] A list of [file](https://platform.openai.com/docs/api-reference/files) IDs to ad + # ... + # + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... # The chunking strategy used to chunk the file(s). If not set, will use the `auto` # strategy. @@ -270,7 +311,7 @@ class Auto < OpenAI::Internal::Type::BaseModel # The default strategy. This strategy currently uses a `max_chunk_size_tokens` of # `800` and `chunk_overlap_tokens` of `400`. # - # @param type [Symbol, :auto] + # @param type [Symbol, :auto] Always `auto`. end class Static < OpenAI::Internal::Type::BaseModel @@ -288,7 +329,8 @@ class Static < OpenAI::Internal::Type::BaseModel # @!method initialize(static:, type: :static) # @param static [OpenAI::Models::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static::Static] - # @param type [Symbol, :static] + # + # @param type [Symbol, :static] Always `static`. # @see OpenAI::Models::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static#static class Static < OpenAI::Internal::Type::BaseModel @@ -308,8 +350,15 @@ class Static < OpenAI::Internal::Type::BaseModel required :max_chunk_size_tokens, Integer # @!method initialize(chunk_overlap_tokens:, max_chunk_size_tokens:) - # @param chunk_overlap_tokens [Integer] - # @param max_chunk_size_tokens [Integer] + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static::Static} + # for more details. + # + # @param chunk_overlap_tokens [Integer] The number of tokens that overlap between chunks. The default value is `400`. + # ... + # + # @param max_chunk_size_tokens [Integer] The maximum number of tokens in each chunk. The default value is `800`. The mini + # ... end end diff --git a/lib/openai/models/beta/assistant_list_params.rb b/lib/openai/models/beta/assistant_list_params.rb index 5d3b268b..a3c95fe0 100644 --- a/lib/openai/models/beta/assistant_list_params.rb +++ b/lib/openai/models/beta/assistant_list_params.rb @@ -41,10 +41,21 @@ class AssistantListParams < OpenAI::Internal::Type::BaseModel optional :order, enum: -> { OpenAI::Models::Beta::AssistantListParams::Order } # @!method initialize(after: nil, before: nil, limit: nil, order: nil, request_options: {}) - # @param after [String] - # @param before [String] - # @param limit [Integer] - # @param order [Symbol, OpenAI::Models::Beta::AssistantListParams::Order] + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::AssistantListParams} for more details. + # + # @param after [String] A cursor for use in pagination. `after` is an object ID that defines your place + # ... + # + # @param before [String] A cursor for use in pagination. `before` is an object ID that defines your place + # ... + # + # @param limit [Integer] A limit on the number of objects to be returned. Limit can range between 1 and 1 + # ... + # + # @param order [Symbol, OpenAI::Models::Beta::AssistantListParams::Order] Sort order by the `created_at` timestamp of the objects. `asc` for ascending ord + # ... + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] # Sort order by the `created_at` timestamp of the objects. `asc` for ascending diff --git a/lib/openai/models/beta/assistant_stream_event.rb b/lib/openai/models/beta/assistant_stream_event.rb index eaa92aba..b048ee92 100644 --- a/lib/openai/models/beta/assistant_stream_event.rb +++ b/lib/openai/models/beta/assistant_stream_event.rb @@ -129,12 +129,18 @@ class ThreadCreated < OpenAI::Internal::Type::BaseModel optional :enabled, OpenAI::Internal::Type::Boolean # @!method initialize(data:, enabled: nil, event: :"thread.created") + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::AssistantStreamEvent::ThreadCreated} for more details. + # # Occurs when a new # [thread](https://platform.openai.com/docs/api-reference/threads/object) is # created. # - # @param data [OpenAI::Models::Beta::Thread] - # @param enabled [Boolean] + # @param data [OpenAI::Models::Beta::Thread] Represents a thread that contains [messages](https://platform.openai.com/docs/ap + # ... + # + # @param enabled [Boolean] Whether to enable input audio transcription. + # # @param event [Symbol, :"thread.created"] end @@ -152,10 +158,15 @@ class ThreadRunCreated < OpenAI::Internal::Type::BaseModel required :event, const: :"thread.run.created" # @!method initialize(data:, event: :"thread.run.created") + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::AssistantStreamEvent::ThreadRunCreated} for more details. + # # Occurs when a new # [run](https://platform.openai.com/docs/api-reference/runs/object) is created. # - # @param data [OpenAI::Models::Beta::Threads::Run] + # @param data [OpenAI::Models::Beta::Threads::Run] Represents an execution run on a [thread](https://platform.openai.com/docs/api-r + # ... + # # @param event [Symbol, :"thread.run.created"] end @@ -173,10 +184,15 @@ class ThreadRunQueued < OpenAI::Internal::Type::BaseModel required :event, const: :"thread.run.queued" # @!method initialize(data:, event: :"thread.run.queued") + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::AssistantStreamEvent::ThreadRunQueued} for more details. + # # Occurs when a [run](https://platform.openai.com/docs/api-reference/runs/object) # moves to a `queued` status. # - # @param data [OpenAI::Models::Beta::Threads::Run] + # @param data [OpenAI::Models::Beta::Threads::Run] Represents an execution run on a [thread](https://platform.openai.com/docs/api-r + # ... + # # @param event [Symbol, :"thread.run.queued"] end @@ -194,10 +210,16 @@ class ThreadRunInProgress < OpenAI::Internal::Type::BaseModel required :event, const: :"thread.run.in_progress" # @!method initialize(data:, event: :"thread.run.in_progress") + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::AssistantStreamEvent::ThreadRunInProgress} for more + # details. + # # Occurs when a [run](https://platform.openai.com/docs/api-reference/runs/object) # moves to an `in_progress` status. # - # @param data [OpenAI::Models::Beta::Threads::Run] + # @param data [OpenAI::Models::Beta::Threads::Run] Represents an execution run on a [thread](https://platform.openai.com/docs/api-r + # ... + # # @param event [Symbol, :"thread.run.in_progress"] end @@ -215,10 +237,16 @@ class ThreadRunRequiresAction < OpenAI::Internal::Type::BaseModel required :event, const: :"thread.run.requires_action" # @!method initialize(data:, event: :"thread.run.requires_action") + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::AssistantStreamEvent::ThreadRunRequiresAction} for more + # details. + # # Occurs when a [run](https://platform.openai.com/docs/api-reference/runs/object) # moves to a `requires_action` status. # - # @param data [OpenAI::Models::Beta::Threads::Run] + # @param data [OpenAI::Models::Beta::Threads::Run] Represents an execution run on a [thread](https://platform.openai.com/docs/api-r + # ... + # # @param event [Symbol, :"thread.run.requires_action"] end @@ -236,10 +264,16 @@ class ThreadRunCompleted < OpenAI::Internal::Type::BaseModel required :event, const: :"thread.run.completed" # @!method initialize(data:, event: :"thread.run.completed") + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::AssistantStreamEvent::ThreadRunCompleted} for more + # details. + # # Occurs when a [run](https://platform.openai.com/docs/api-reference/runs/object) # is completed. # - # @param data [OpenAI::Models::Beta::Threads::Run] + # @param data [OpenAI::Models::Beta::Threads::Run] Represents an execution run on a [thread](https://platform.openai.com/docs/api-r + # ... + # # @param event [Symbol, :"thread.run.completed"] end @@ -257,10 +291,16 @@ class ThreadRunIncomplete < OpenAI::Internal::Type::BaseModel required :event, const: :"thread.run.incomplete" # @!method initialize(data:, event: :"thread.run.incomplete") + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::AssistantStreamEvent::ThreadRunIncomplete} for more + # details. + # # Occurs when a [run](https://platform.openai.com/docs/api-reference/runs/object) # ends with status `incomplete`. # - # @param data [OpenAI::Models::Beta::Threads::Run] + # @param data [OpenAI::Models::Beta::Threads::Run] Represents an execution run on a [thread](https://platform.openai.com/docs/api-r + # ... + # # @param event [Symbol, :"thread.run.incomplete"] end @@ -278,10 +318,15 @@ class ThreadRunFailed < OpenAI::Internal::Type::BaseModel required :event, const: :"thread.run.failed" # @!method initialize(data:, event: :"thread.run.failed") + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::AssistantStreamEvent::ThreadRunFailed} for more details. + # # Occurs when a [run](https://platform.openai.com/docs/api-reference/runs/object) # fails. # - # @param data [OpenAI::Models::Beta::Threads::Run] + # @param data [OpenAI::Models::Beta::Threads::Run] Represents an execution run on a [thread](https://platform.openai.com/docs/api-r + # ... + # # @param event [Symbol, :"thread.run.failed"] end @@ -299,10 +344,16 @@ class ThreadRunCancelling < OpenAI::Internal::Type::BaseModel required :event, const: :"thread.run.cancelling" # @!method initialize(data:, event: :"thread.run.cancelling") + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::AssistantStreamEvent::ThreadRunCancelling} for more + # details. + # # Occurs when a [run](https://platform.openai.com/docs/api-reference/runs/object) # moves to a `cancelling` status. # - # @param data [OpenAI::Models::Beta::Threads::Run] + # @param data [OpenAI::Models::Beta::Threads::Run] Represents an execution run on a [thread](https://platform.openai.com/docs/api-r + # ... + # # @param event [Symbol, :"thread.run.cancelling"] end @@ -320,10 +371,16 @@ class ThreadRunCancelled < OpenAI::Internal::Type::BaseModel required :event, const: :"thread.run.cancelled" # @!method initialize(data:, event: :"thread.run.cancelled") + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::AssistantStreamEvent::ThreadRunCancelled} for more + # details. + # # Occurs when a [run](https://platform.openai.com/docs/api-reference/runs/object) # is cancelled. # - # @param data [OpenAI::Models::Beta::Threads::Run] + # @param data [OpenAI::Models::Beta::Threads::Run] Represents an execution run on a [thread](https://platform.openai.com/docs/api-r + # ... + # # @param event [Symbol, :"thread.run.cancelled"] end @@ -341,10 +398,15 @@ class ThreadRunExpired < OpenAI::Internal::Type::BaseModel required :event, const: :"thread.run.expired" # @!method initialize(data:, event: :"thread.run.expired") + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::AssistantStreamEvent::ThreadRunExpired} for more details. + # # Occurs when a [run](https://platform.openai.com/docs/api-reference/runs/object) # expires. # - # @param data [OpenAI::Models::Beta::Threads::Run] + # @param data [OpenAI::Models::Beta::Threads::Run] Represents an execution run on a [thread](https://platform.openai.com/docs/api-r + # ... + # # @param event [Symbol, :"thread.run.expired"] end @@ -361,11 +423,16 @@ class ThreadRunStepCreated < OpenAI::Internal::Type::BaseModel required :event, const: :"thread.run.step.created" # @!method initialize(data:, event: :"thread.run.step.created") + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::AssistantStreamEvent::ThreadRunStepCreated} for more + # details. + # # Occurs when a # [run step](https://platform.openai.com/docs/api-reference/run-steps/step-object) # is created. # - # @param data [OpenAI::Models::Beta::Threads::Runs::RunStep] + # @param data [OpenAI::Models::Beta::Threads::Runs::RunStep] Represents a step in execution of a run. ... + # # @param event [Symbol, :"thread.run.step.created"] end @@ -382,11 +449,16 @@ class ThreadRunStepInProgress < OpenAI::Internal::Type::BaseModel required :event, const: :"thread.run.step.in_progress" # @!method initialize(data:, event: :"thread.run.step.in_progress") + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::AssistantStreamEvent::ThreadRunStepInProgress} for more + # details. + # # Occurs when a # [run step](https://platform.openai.com/docs/api-reference/run-steps/step-object) # moves to an `in_progress` state. # - # @param data [OpenAI::Models::Beta::Threads::Runs::RunStep] + # @param data [OpenAI::Models::Beta::Threads::Runs::RunStep] Represents a step in execution of a run. ... + # # @param event [Symbol, :"thread.run.step.in_progress"] end @@ -404,11 +476,17 @@ class ThreadRunStepDelta < OpenAI::Internal::Type::BaseModel required :event, const: :"thread.run.step.delta" # @!method initialize(data:, event: :"thread.run.step.delta") + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::AssistantStreamEvent::ThreadRunStepDelta} for more + # details. + # # Occurs when parts of a # [run step](https://platform.openai.com/docs/api-reference/run-steps/step-object) # are being streamed. # - # @param data [OpenAI::Models::Beta::Threads::Runs::RunStepDeltaEvent] + # @param data [OpenAI::Models::Beta::Threads::Runs::RunStepDeltaEvent] Represents a run step delta i.e. any changed fields on a run step during streami + # ... + # # @param event [Symbol, :"thread.run.step.delta"] end @@ -425,11 +503,16 @@ class ThreadRunStepCompleted < OpenAI::Internal::Type::BaseModel required :event, const: :"thread.run.step.completed" # @!method initialize(data:, event: :"thread.run.step.completed") + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::AssistantStreamEvent::ThreadRunStepCompleted} for more + # details. + # # Occurs when a # [run step](https://platform.openai.com/docs/api-reference/run-steps/step-object) # is completed. # - # @param data [OpenAI::Models::Beta::Threads::Runs::RunStep] + # @param data [OpenAI::Models::Beta::Threads::Runs::RunStep] Represents a step in execution of a run. ... + # # @param event [Symbol, :"thread.run.step.completed"] end @@ -446,11 +529,16 @@ class ThreadRunStepFailed < OpenAI::Internal::Type::BaseModel required :event, const: :"thread.run.step.failed" # @!method initialize(data:, event: :"thread.run.step.failed") + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::AssistantStreamEvent::ThreadRunStepFailed} for more + # details. + # # Occurs when a # [run step](https://platform.openai.com/docs/api-reference/run-steps/step-object) # fails. # - # @param data [OpenAI::Models::Beta::Threads::Runs::RunStep] + # @param data [OpenAI::Models::Beta::Threads::Runs::RunStep] Represents a step in execution of a run. ... + # # @param event [Symbol, :"thread.run.step.failed"] end @@ -467,11 +555,16 @@ class ThreadRunStepCancelled < OpenAI::Internal::Type::BaseModel required :event, const: :"thread.run.step.cancelled" # @!method initialize(data:, event: :"thread.run.step.cancelled") + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::AssistantStreamEvent::ThreadRunStepCancelled} for more + # details. + # # Occurs when a # [run step](https://platform.openai.com/docs/api-reference/run-steps/step-object) # is cancelled. # - # @param data [OpenAI::Models::Beta::Threads::Runs::RunStep] + # @param data [OpenAI::Models::Beta::Threads::Runs::RunStep] Represents a step in execution of a run. ... + # # @param event [Symbol, :"thread.run.step.cancelled"] end @@ -488,11 +581,16 @@ class ThreadRunStepExpired < OpenAI::Internal::Type::BaseModel required :event, const: :"thread.run.step.expired" # @!method initialize(data:, event: :"thread.run.step.expired") + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::AssistantStreamEvent::ThreadRunStepExpired} for more + # details. + # # Occurs when a # [run step](https://platform.openai.com/docs/api-reference/run-steps/step-object) # expires. # - # @param data [OpenAI::Models::Beta::Threads::Runs::RunStep] + # @param data [OpenAI::Models::Beta::Threads::Runs::RunStep] Represents a step in execution of a run. ... + # # @param event [Symbol, :"thread.run.step.expired"] end @@ -510,11 +608,17 @@ class ThreadMessageCreated < OpenAI::Internal::Type::BaseModel required :event, const: :"thread.message.created" # @!method initialize(data:, event: :"thread.message.created") + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::AssistantStreamEvent::ThreadMessageCreated} for more + # details. + # # Occurs when a # [message](https://platform.openai.com/docs/api-reference/messages/object) is # created. # - # @param data [OpenAI::Models::Beta::Threads::Message] + # @param data [OpenAI::Models::Beta::Threads::Message] Represents a message within a [thread](https://platform.openai.com/docs/api-refe + # ... + # # @param event [Symbol, :"thread.message.created"] end @@ -532,11 +636,17 @@ class ThreadMessageInProgress < OpenAI::Internal::Type::BaseModel required :event, const: :"thread.message.in_progress" # @!method initialize(data:, event: :"thread.message.in_progress") + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::AssistantStreamEvent::ThreadMessageInProgress} for more + # details. + # # Occurs when a # [message](https://platform.openai.com/docs/api-reference/messages/object) moves # to an `in_progress` state. # - # @param data [OpenAI::Models::Beta::Threads::Message] + # @param data [OpenAI::Models::Beta::Threads::Message] Represents a message within a [thread](https://platform.openai.com/docs/api-refe + # ... + # # @param event [Symbol, :"thread.message.in_progress"] end @@ -554,11 +664,17 @@ class ThreadMessageDelta < OpenAI::Internal::Type::BaseModel required :event, const: :"thread.message.delta" # @!method initialize(data:, event: :"thread.message.delta") + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::AssistantStreamEvent::ThreadMessageDelta} for more + # details. + # # Occurs when parts of a # [Message](https://platform.openai.com/docs/api-reference/messages/object) are # being streamed. # - # @param data [OpenAI::Models::Beta::Threads::MessageDeltaEvent] + # @param data [OpenAI::Models::Beta::Threads::MessageDeltaEvent] Represents a message delta i.e. any changed fields on a message during streaming + # ... + # # @param event [Symbol, :"thread.message.delta"] end @@ -576,11 +692,17 @@ class ThreadMessageCompleted < OpenAI::Internal::Type::BaseModel required :event, const: :"thread.message.completed" # @!method initialize(data:, event: :"thread.message.completed") + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::AssistantStreamEvent::ThreadMessageCompleted} for more + # details. + # # Occurs when a # [message](https://platform.openai.com/docs/api-reference/messages/object) is # completed. # - # @param data [OpenAI::Models::Beta::Threads::Message] + # @param data [OpenAI::Models::Beta::Threads::Message] Represents a message within a [thread](https://platform.openai.com/docs/api-refe + # ... + # # @param event [Symbol, :"thread.message.completed"] end @@ -598,11 +720,17 @@ class ThreadMessageIncomplete < OpenAI::Internal::Type::BaseModel required :event, const: :"thread.message.incomplete" # @!method initialize(data:, event: :"thread.message.incomplete") + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::AssistantStreamEvent::ThreadMessageIncomplete} for more + # details. + # # Occurs when a # [message](https://platform.openai.com/docs/api-reference/messages/object) ends # before it is completed. # - # @param data [OpenAI::Models::Beta::Threads::Message] + # @param data [OpenAI::Models::Beta::Threads::Message] Represents a message within a [thread](https://platform.openai.com/docs/api-refe + # ... + # # @param event [Symbol, :"thread.message.incomplete"] end diff --git a/lib/openai/models/beta/assistant_tool_choice.rb b/lib/openai/models/beta/assistant_tool_choice.rb index 43914c38..43582de3 100644 --- a/lib/openai/models/beta/assistant_tool_choice.rb +++ b/lib/openai/models/beta/assistant_tool_choice.rb @@ -19,7 +19,8 @@ class AssistantToolChoice < OpenAI::Internal::Type::BaseModel # Specifies a tool the model should use. Use to force the model to call a specific # tool. # - # @param type [Symbol, OpenAI::Models::Beta::AssistantToolChoice::Type] + # @param type [Symbol, OpenAI::Models::Beta::AssistantToolChoice::Type] The type of the tool. If type is `function`, the function name must be set + # # @param function [OpenAI::Models::Beta::AssistantToolChoiceFunction] # The type of the tool. If type is `function`, the function name must be set diff --git a/lib/openai/models/beta/assistant_tool_choice_function.rb b/lib/openai/models/beta/assistant_tool_choice_function.rb index 87065a84..8440fb98 100644 --- a/lib/openai/models/beta/assistant_tool_choice_function.rb +++ b/lib/openai/models/beta/assistant_tool_choice_function.rb @@ -11,7 +11,7 @@ class AssistantToolChoiceFunction < OpenAI::Internal::Type::BaseModel required :name, String # @!method initialize(name:) - # @param name [String] + # @param name [String] The name of the function to call. end end end diff --git a/lib/openai/models/beta/assistant_update_params.rb b/lib/openai/models/beta/assistant_update_params.rb index c0a93261..d507c550 100644 --- a/lib/openai/models/beta/assistant_update_params.rb +++ b/lib/openai/models/beta/assistant_update_params.rb @@ -120,17 +120,38 @@ class AssistantUpdateParams < OpenAI::Internal::Type::BaseModel optional :top_p, Float, nil?: true # @!method initialize(description: nil, instructions: nil, metadata: nil, model: nil, name: nil, reasoning_effort: nil, response_format: nil, temperature: nil, tool_resources: nil, tools: nil, top_p: nil, request_options: {}) - # @param description [String, nil] - # @param instructions [String, nil] - # @param metadata [Hash{Symbol=>String}, nil] - # @param model [String, Symbol, OpenAI::Models::Beta::AssistantUpdateParams::Model] - # @param name [String, nil] - # @param reasoning_effort [Symbol, OpenAI::Models::ReasoningEffort, nil] - # @param response_format [Symbol, :auto, OpenAI::Models::ResponseFormatText, OpenAI::Models::ResponseFormatJSONObject, OpenAI::Models::ResponseFormatJSONSchema, nil] - # @param temperature [Float, nil] - # @param tool_resources [OpenAI::Models::Beta::AssistantUpdateParams::ToolResources, nil] - # @param tools [Array] - # @param top_p [Float, nil] + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::AssistantUpdateParams} for more details. + # + # @param description [String, nil] The description of the assistant. The maximum length is 512 characters. ... + # + # @param instructions [String, nil] The system instructions that the assistant uses. The maximum length is 256,000 c + # ... + # + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # + # @param model [String, Symbol, OpenAI::Models::Beta::AssistantUpdateParams::Model] ID of the model to use. You can use the [List models](https://platform.openai.co + # ... + # + # @param name [String, nil] The name of the assistant. The maximum length is 256 characters. ... + # + # @param reasoning_effort [Symbol, OpenAI::Models::ReasoningEffort, nil] **o-series models only** ... + # + # @param response_format [Symbol, :auto, OpenAI::Models::ResponseFormatText, OpenAI::Models::ResponseFormatJSONObject, OpenAI::Models::ResponseFormatJSONSchema, nil] Specifies the format that the model must output. Compatible with [GPT-4o](https: + # ... + # + # @param temperature [Float, nil] What sampling temperature to use, between 0 and 2. Higher values like 0.8 will m + # ... + # + # @param tool_resources [OpenAI::Models::Beta::AssistantUpdateParams::ToolResources, nil] A set of resources that are used by the assistant's tools. The resources are spe + # ... + # + # @param tools [Array] A list of tool enabled on the assistant. There can be a maximum of 128 tools per + # ... + # + # @param top_p [Float, nil] An alternative to sampling with temperature, called nucleus sampling, where the + # ... + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] # ID of the model to use. You can use the @@ -293,7 +314,12 @@ class CodeInterpreter < OpenAI::Internal::Type::BaseModel optional :file_ids, OpenAI::Internal::Type::ArrayOf[String] # @!method initialize(file_ids: nil) - # @param file_ids [Array] + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::AssistantUpdateParams::ToolResources::CodeInterpreter} + # for more details. + # + # @param file_ids [Array] Overrides the list of [file](https://platform.openai.com/docs/api-reference/file + # ... end # @see OpenAI::Models::Beta::AssistantUpdateParams::ToolResources#file_search @@ -308,7 +334,12 @@ class FileSearch < OpenAI::Internal::Type::BaseModel optional :vector_store_ids, OpenAI::Internal::Type::ArrayOf[String] # @!method initialize(vector_store_ids: nil) - # @param vector_store_ids [Array] + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::AssistantUpdateParams::ToolResources::FileSearch} for + # more details. + # + # @param vector_store_ids [Array] Overrides the [vector store](https://platform.openai.com/docs/api-reference/vect + # ... end end end diff --git a/lib/openai/models/beta/code_interpreter_tool.rb b/lib/openai/models/beta/code_interpreter_tool.rb index ffea0d31..ee84099e 100644 --- a/lib/openai/models/beta/code_interpreter_tool.rb +++ b/lib/openai/models/beta/code_interpreter_tool.rb @@ -11,7 +11,7 @@ class CodeInterpreterTool < OpenAI::Internal::Type::BaseModel required :type, const: :code_interpreter # @!method initialize(type: :code_interpreter) - # @param type [Symbol, :code_interpreter] + # @param type [Symbol, :code_interpreter] The type of tool being defined: `code_interpreter` end end end diff --git a/lib/openai/models/beta/file_search_tool.rb b/lib/openai/models/beta/file_search_tool.rb index 9dc13172..2dbd7d7a 100644 --- a/lib/openai/models/beta/file_search_tool.rb +++ b/lib/openai/models/beta/file_search_tool.rb @@ -17,8 +17,9 @@ class FileSearchTool < OpenAI::Internal::Type::BaseModel optional :file_search, -> { OpenAI::Models::Beta::FileSearchTool::FileSearch } # @!method initialize(file_search: nil, type: :file_search) - # @param file_search [OpenAI::Models::Beta::FileSearchTool::FileSearch] - # @param type [Symbol, :file_search] + # @param file_search [OpenAI::Models::Beta::FileSearchTool::FileSearch] Overrides for the file search tool. + # + # @param type [Symbol, :file_search] The type of tool being defined: `file_search` # @see OpenAI::Models::Beta::FileSearchTool#file_search class FileSearch < OpenAI::Internal::Type::BaseModel @@ -47,10 +48,16 @@ class FileSearch < OpenAI::Internal::Type::BaseModel optional :ranking_options, -> { OpenAI::Models::Beta::FileSearchTool::FileSearch::RankingOptions } # @!method initialize(max_num_results: nil, ranking_options: nil) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::FileSearchTool::FileSearch} for more details. + # # Overrides for the file search tool. # - # @param max_num_results [Integer] - # @param ranking_options [OpenAI::Models::Beta::FileSearchTool::FileSearch::RankingOptions] + # @param max_num_results [Integer] The maximum number of results the file search tool should output. The default is + # ... + # + # @param ranking_options [OpenAI::Models::Beta::FileSearchTool::FileSearch::RankingOptions] The ranking options for the file search. If not specified, the file search tool + # ... # @see OpenAI::Models::Beta::FileSearchTool::FileSearch#ranking_options class RankingOptions < OpenAI::Internal::Type::BaseModel @@ -69,6 +76,10 @@ class RankingOptions < OpenAI::Internal::Type::BaseModel optional :ranker, enum: -> { OpenAI::Models::Beta::FileSearchTool::FileSearch::RankingOptions::Ranker } # @!method initialize(score_threshold:, ranker: nil) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::FileSearchTool::FileSearch::RankingOptions} for more + # details. + # # The ranking options for the file search. If not specified, the file search tool # will use the `auto` ranker and a score_threshold of 0. # @@ -76,8 +87,11 @@ class RankingOptions < OpenAI::Internal::Type::BaseModel # [file search tool documentation](https://platform.openai.com/docs/assistants/tools/file-search#customizing-file-search-settings) # for more information. # - # @param score_threshold [Float] - # @param ranker [Symbol, OpenAI::Models::Beta::FileSearchTool::FileSearch::RankingOptions::Ranker] + # @param score_threshold [Float] The score threshold for the file search. All values must be a floating point num + # ... + # + # @param ranker [Symbol, OpenAI::Models::Beta::FileSearchTool::FileSearch::RankingOptions::Ranker] The ranker to use for the file search. If not specified will use the `auto` rank + # ... # The ranker to use for the file search. If not specified will use the `auto` # ranker. diff --git a/lib/openai/models/beta/function_tool.rb b/lib/openai/models/beta/function_tool.rb index bce8c29a..4a76a200 100644 --- a/lib/openai/models/beta/function_tool.rb +++ b/lib/openai/models/beta/function_tool.rb @@ -17,7 +17,8 @@ class FunctionTool < OpenAI::Internal::Type::BaseModel # @!method initialize(function:, type: :function) # @param function [OpenAI::Models::FunctionDefinition] - # @param type [Symbol, :function] + # + # @param type [Symbol, :function] The type of tool being defined: `function` end end end diff --git a/lib/openai/models/beta/message_stream_event.rb b/lib/openai/models/beta/message_stream_event.rb index 74bb507a..77a99a07 100644 --- a/lib/openai/models/beta/message_stream_event.rb +++ b/lib/openai/models/beta/message_stream_event.rb @@ -43,11 +43,17 @@ class ThreadMessageCreated < OpenAI::Internal::Type::BaseModel required :event, const: :"thread.message.created" # @!method initialize(data:, event: :"thread.message.created") + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::MessageStreamEvent::ThreadMessageCreated} for more + # details. + # # Occurs when a # [message](https://platform.openai.com/docs/api-reference/messages/object) is # created. # - # @param data [OpenAI::Models::Beta::Threads::Message] + # @param data [OpenAI::Models::Beta::Threads::Message] Represents a message within a [thread](https://platform.openai.com/docs/api-refe + # ... + # # @param event [Symbol, :"thread.message.created"] end @@ -65,11 +71,17 @@ class ThreadMessageInProgress < OpenAI::Internal::Type::BaseModel required :event, const: :"thread.message.in_progress" # @!method initialize(data:, event: :"thread.message.in_progress") + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::MessageStreamEvent::ThreadMessageInProgress} for more + # details. + # # Occurs when a # [message](https://platform.openai.com/docs/api-reference/messages/object) moves # to an `in_progress` state. # - # @param data [OpenAI::Models::Beta::Threads::Message] + # @param data [OpenAI::Models::Beta::Threads::Message] Represents a message within a [thread](https://platform.openai.com/docs/api-refe + # ... + # # @param event [Symbol, :"thread.message.in_progress"] end @@ -87,11 +99,16 @@ class ThreadMessageDelta < OpenAI::Internal::Type::BaseModel required :event, const: :"thread.message.delta" # @!method initialize(data:, event: :"thread.message.delta") + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::MessageStreamEvent::ThreadMessageDelta} for more details. + # # Occurs when parts of a # [Message](https://platform.openai.com/docs/api-reference/messages/object) are # being streamed. # - # @param data [OpenAI::Models::Beta::Threads::MessageDeltaEvent] + # @param data [OpenAI::Models::Beta::Threads::MessageDeltaEvent] Represents a message delta i.e. any changed fields on a message during streaming + # ... + # # @param event [Symbol, :"thread.message.delta"] end @@ -109,11 +126,17 @@ class ThreadMessageCompleted < OpenAI::Internal::Type::BaseModel required :event, const: :"thread.message.completed" # @!method initialize(data:, event: :"thread.message.completed") + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::MessageStreamEvent::ThreadMessageCompleted} for more + # details. + # # Occurs when a # [message](https://platform.openai.com/docs/api-reference/messages/object) is # completed. # - # @param data [OpenAI::Models::Beta::Threads::Message] + # @param data [OpenAI::Models::Beta::Threads::Message] Represents a message within a [thread](https://platform.openai.com/docs/api-refe + # ... + # # @param event [Symbol, :"thread.message.completed"] end @@ -131,11 +154,17 @@ class ThreadMessageIncomplete < OpenAI::Internal::Type::BaseModel required :event, const: :"thread.message.incomplete" # @!method initialize(data:, event: :"thread.message.incomplete") + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::MessageStreamEvent::ThreadMessageIncomplete} for more + # details. + # # Occurs when a # [message](https://platform.openai.com/docs/api-reference/messages/object) ends # before it is completed. # - # @param data [OpenAI::Models::Beta::Threads::Message] + # @param data [OpenAI::Models::Beta::Threads::Message] Represents a message within a [thread](https://platform.openai.com/docs/api-refe + # ... + # # @param event [Symbol, :"thread.message.incomplete"] end diff --git a/lib/openai/models/beta/run_step_stream_event.rb b/lib/openai/models/beta/run_step_stream_event.rb index e312bf45..f876f01e 100644 --- a/lib/openai/models/beta/run_step_stream_event.rb +++ b/lib/openai/models/beta/run_step_stream_event.rb @@ -48,11 +48,16 @@ class ThreadRunStepCreated < OpenAI::Internal::Type::BaseModel required :event, const: :"thread.run.step.created" # @!method initialize(data:, event: :"thread.run.step.created") + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::RunStepStreamEvent::ThreadRunStepCreated} for more + # details. + # # Occurs when a # [run step](https://platform.openai.com/docs/api-reference/run-steps/step-object) # is created. # - # @param data [OpenAI::Models::Beta::Threads::Runs::RunStep] + # @param data [OpenAI::Models::Beta::Threads::Runs::RunStep] Represents a step in execution of a run. ... + # # @param event [Symbol, :"thread.run.step.created"] end @@ -69,11 +74,16 @@ class ThreadRunStepInProgress < OpenAI::Internal::Type::BaseModel required :event, const: :"thread.run.step.in_progress" # @!method initialize(data:, event: :"thread.run.step.in_progress") + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::RunStepStreamEvent::ThreadRunStepInProgress} for more + # details. + # # Occurs when a # [run step](https://platform.openai.com/docs/api-reference/run-steps/step-object) # moves to an `in_progress` state. # - # @param data [OpenAI::Models::Beta::Threads::Runs::RunStep] + # @param data [OpenAI::Models::Beta::Threads::Runs::RunStep] Represents a step in execution of a run. ... + # # @param event [Symbol, :"thread.run.step.in_progress"] end @@ -91,11 +101,16 @@ class ThreadRunStepDelta < OpenAI::Internal::Type::BaseModel required :event, const: :"thread.run.step.delta" # @!method initialize(data:, event: :"thread.run.step.delta") + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::RunStepStreamEvent::ThreadRunStepDelta} for more details. + # # Occurs when parts of a # [run step](https://platform.openai.com/docs/api-reference/run-steps/step-object) # are being streamed. # - # @param data [OpenAI::Models::Beta::Threads::Runs::RunStepDeltaEvent] + # @param data [OpenAI::Models::Beta::Threads::Runs::RunStepDeltaEvent] Represents a run step delta i.e. any changed fields on a run step during streami + # ... + # # @param event [Symbol, :"thread.run.step.delta"] end @@ -112,11 +127,16 @@ class ThreadRunStepCompleted < OpenAI::Internal::Type::BaseModel required :event, const: :"thread.run.step.completed" # @!method initialize(data:, event: :"thread.run.step.completed") + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::RunStepStreamEvent::ThreadRunStepCompleted} for more + # details. + # # Occurs when a # [run step](https://platform.openai.com/docs/api-reference/run-steps/step-object) # is completed. # - # @param data [OpenAI::Models::Beta::Threads::Runs::RunStep] + # @param data [OpenAI::Models::Beta::Threads::Runs::RunStep] Represents a step in execution of a run. ... + # # @param event [Symbol, :"thread.run.step.completed"] end @@ -133,11 +153,16 @@ class ThreadRunStepFailed < OpenAI::Internal::Type::BaseModel required :event, const: :"thread.run.step.failed" # @!method initialize(data:, event: :"thread.run.step.failed") + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::RunStepStreamEvent::ThreadRunStepFailed} for more + # details. + # # Occurs when a # [run step](https://platform.openai.com/docs/api-reference/run-steps/step-object) # fails. # - # @param data [OpenAI::Models::Beta::Threads::Runs::RunStep] + # @param data [OpenAI::Models::Beta::Threads::Runs::RunStep] Represents a step in execution of a run. ... + # # @param event [Symbol, :"thread.run.step.failed"] end @@ -154,11 +179,16 @@ class ThreadRunStepCancelled < OpenAI::Internal::Type::BaseModel required :event, const: :"thread.run.step.cancelled" # @!method initialize(data:, event: :"thread.run.step.cancelled") + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::RunStepStreamEvent::ThreadRunStepCancelled} for more + # details. + # # Occurs when a # [run step](https://platform.openai.com/docs/api-reference/run-steps/step-object) # is cancelled. # - # @param data [OpenAI::Models::Beta::Threads::Runs::RunStep] + # @param data [OpenAI::Models::Beta::Threads::Runs::RunStep] Represents a step in execution of a run. ... + # # @param event [Symbol, :"thread.run.step.cancelled"] end @@ -175,11 +205,16 @@ class ThreadRunStepExpired < OpenAI::Internal::Type::BaseModel required :event, const: :"thread.run.step.expired" # @!method initialize(data:, event: :"thread.run.step.expired") + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::RunStepStreamEvent::ThreadRunStepExpired} for more + # details. + # # Occurs when a # [run step](https://platform.openai.com/docs/api-reference/run-steps/step-object) # expires. # - # @param data [OpenAI::Models::Beta::Threads::Runs::RunStep] + # @param data [OpenAI::Models::Beta::Threads::Runs::RunStep] Represents a step in execution of a run. ... + # # @param event [Symbol, :"thread.run.step.expired"] end diff --git a/lib/openai/models/beta/run_stream_event.rb b/lib/openai/models/beta/run_stream_event.rb index 33a63272..19bda475 100644 --- a/lib/openai/models/beta/run_stream_event.rb +++ b/lib/openai/models/beta/run_stream_event.rb @@ -55,10 +55,15 @@ class ThreadRunCreated < OpenAI::Internal::Type::BaseModel required :event, const: :"thread.run.created" # @!method initialize(data:, event: :"thread.run.created") + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::RunStreamEvent::ThreadRunCreated} for more details. + # # Occurs when a new # [run](https://platform.openai.com/docs/api-reference/runs/object) is created. # - # @param data [OpenAI::Models::Beta::Threads::Run] + # @param data [OpenAI::Models::Beta::Threads::Run] Represents an execution run on a [thread](https://platform.openai.com/docs/api-r + # ... + # # @param event [Symbol, :"thread.run.created"] end @@ -76,10 +81,15 @@ class ThreadRunQueued < OpenAI::Internal::Type::BaseModel required :event, const: :"thread.run.queued" # @!method initialize(data:, event: :"thread.run.queued") + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::RunStreamEvent::ThreadRunQueued} for more details. + # # Occurs when a [run](https://platform.openai.com/docs/api-reference/runs/object) # moves to a `queued` status. # - # @param data [OpenAI::Models::Beta::Threads::Run] + # @param data [OpenAI::Models::Beta::Threads::Run] Represents an execution run on a [thread](https://platform.openai.com/docs/api-r + # ... + # # @param event [Symbol, :"thread.run.queued"] end @@ -97,10 +107,15 @@ class ThreadRunInProgress < OpenAI::Internal::Type::BaseModel required :event, const: :"thread.run.in_progress" # @!method initialize(data:, event: :"thread.run.in_progress") + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::RunStreamEvent::ThreadRunInProgress} for more details. + # # Occurs when a [run](https://platform.openai.com/docs/api-reference/runs/object) # moves to an `in_progress` status. # - # @param data [OpenAI::Models::Beta::Threads::Run] + # @param data [OpenAI::Models::Beta::Threads::Run] Represents an execution run on a [thread](https://platform.openai.com/docs/api-r + # ... + # # @param event [Symbol, :"thread.run.in_progress"] end @@ -118,10 +133,16 @@ class ThreadRunRequiresAction < OpenAI::Internal::Type::BaseModel required :event, const: :"thread.run.requires_action" # @!method initialize(data:, event: :"thread.run.requires_action") + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::RunStreamEvent::ThreadRunRequiresAction} for more + # details. + # # Occurs when a [run](https://platform.openai.com/docs/api-reference/runs/object) # moves to a `requires_action` status. # - # @param data [OpenAI::Models::Beta::Threads::Run] + # @param data [OpenAI::Models::Beta::Threads::Run] Represents an execution run on a [thread](https://platform.openai.com/docs/api-r + # ... + # # @param event [Symbol, :"thread.run.requires_action"] end @@ -139,10 +160,15 @@ class ThreadRunCompleted < OpenAI::Internal::Type::BaseModel required :event, const: :"thread.run.completed" # @!method initialize(data:, event: :"thread.run.completed") + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::RunStreamEvent::ThreadRunCompleted} for more details. + # # Occurs when a [run](https://platform.openai.com/docs/api-reference/runs/object) # is completed. # - # @param data [OpenAI::Models::Beta::Threads::Run] + # @param data [OpenAI::Models::Beta::Threads::Run] Represents an execution run on a [thread](https://platform.openai.com/docs/api-r + # ... + # # @param event [Symbol, :"thread.run.completed"] end @@ -160,10 +186,15 @@ class ThreadRunIncomplete < OpenAI::Internal::Type::BaseModel required :event, const: :"thread.run.incomplete" # @!method initialize(data:, event: :"thread.run.incomplete") + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::RunStreamEvent::ThreadRunIncomplete} for more details. + # # Occurs when a [run](https://platform.openai.com/docs/api-reference/runs/object) # ends with status `incomplete`. # - # @param data [OpenAI::Models::Beta::Threads::Run] + # @param data [OpenAI::Models::Beta::Threads::Run] Represents an execution run on a [thread](https://platform.openai.com/docs/api-r + # ... + # # @param event [Symbol, :"thread.run.incomplete"] end @@ -181,10 +212,15 @@ class ThreadRunFailed < OpenAI::Internal::Type::BaseModel required :event, const: :"thread.run.failed" # @!method initialize(data:, event: :"thread.run.failed") + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::RunStreamEvent::ThreadRunFailed} for more details. + # # Occurs when a [run](https://platform.openai.com/docs/api-reference/runs/object) # fails. # - # @param data [OpenAI::Models::Beta::Threads::Run] + # @param data [OpenAI::Models::Beta::Threads::Run] Represents an execution run on a [thread](https://platform.openai.com/docs/api-r + # ... + # # @param event [Symbol, :"thread.run.failed"] end @@ -202,10 +238,15 @@ class ThreadRunCancelling < OpenAI::Internal::Type::BaseModel required :event, const: :"thread.run.cancelling" # @!method initialize(data:, event: :"thread.run.cancelling") + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::RunStreamEvent::ThreadRunCancelling} for more details. + # # Occurs when a [run](https://platform.openai.com/docs/api-reference/runs/object) # moves to a `cancelling` status. # - # @param data [OpenAI::Models::Beta::Threads::Run] + # @param data [OpenAI::Models::Beta::Threads::Run] Represents an execution run on a [thread](https://platform.openai.com/docs/api-r + # ... + # # @param event [Symbol, :"thread.run.cancelling"] end @@ -223,10 +264,15 @@ class ThreadRunCancelled < OpenAI::Internal::Type::BaseModel required :event, const: :"thread.run.cancelled" # @!method initialize(data:, event: :"thread.run.cancelled") + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::RunStreamEvent::ThreadRunCancelled} for more details. + # # Occurs when a [run](https://platform.openai.com/docs/api-reference/runs/object) # is cancelled. # - # @param data [OpenAI::Models::Beta::Threads::Run] + # @param data [OpenAI::Models::Beta::Threads::Run] Represents an execution run on a [thread](https://platform.openai.com/docs/api-r + # ... + # # @param event [Symbol, :"thread.run.cancelled"] end @@ -244,10 +290,15 @@ class ThreadRunExpired < OpenAI::Internal::Type::BaseModel required :event, const: :"thread.run.expired" # @!method initialize(data:, event: :"thread.run.expired") + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::RunStreamEvent::ThreadRunExpired} for more details. + # # Occurs when a [run](https://platform.openai.com/docs/api-reference/runs/object) # expires. # - # @param data [OpenAI::Models::Beta::Threads::Run] + # @param data [OpenAI::Models::Beta::Threads::Run] Represents an execution run on a [thread](https://platform.openai.com/docs/api-r + # ... + # # @param event [Symbol, :"thread.run.expired"] end diff --git a/lib/openai/models/beta/thread.rb b/lib/openai/models/beta/thread.rb index 757ea5d5..cad2cd8d 100644 --- a/lib/openai/models/beta/thread.rb +++ b/lib/openai/models/beta/thread.rb @@ -44,14 +44,22 @@ class Thread < OpenAI::Internal::Type::BaseModel required :tool_resources, -> { OpenAI::Models::Beta::Thread::ToolResources }, nil?: true # @!method initialize(id:, created_at:, metadata:, tool_resources:, object: :thread) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::Thread} for more details. + # # Represents a thread that contains # [messages](https://platform.openai.com/docs/api-reference/messages). # - # @param id [String] - # @param created_at [Integer] - # @param metadata [Hash{Symbol=>String}, nil] - # @param tool_resources [OpenAI::Models::Beta::Thread::ToolResources, nil] - # @param object [Symbol, :thread] + # @param id [String] The identifier, which can be referenced in API endpoints. + # + # @param created_at [Integer] The Unix timestamp (in seconds) for when the thread was created. + # + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # + # @param tool_resources [OpenAI::Models::Beta::Thread::ToolResources, nil] A set of resources that are made available to the assistant's tools in this thre + # ... + # + # @param object [Symbol, :thread] The object type, which is always `thread`. # @see OpenAI::Models::Beta::Thread#tool_resources class ToolResources < OpenAI::Internal::Type::BaseModel @@ -85,7 +93,11 @@ class CodeInterpreter < OpenAI::Internal::Type::BaseModel optional :file_ids, OpenAI::Internal::Type::ArrayOf[String] # @!method initialize(file_ids: nil) - # @param file_ids [Array] + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::Thread::ToolResources::CodeInterpreter} for more details. + # + # @param file_ids [Array] A list of [file](https://platform.openai.com/docs/api-reference/files) IDs made + # ... end # @see OpenAI::Models::Beta::Thread::ToolResources#file_search @@ -100,7 +112,11 @@ class FileSearch < OpenAI::Internal::Type::BaseModel optional :vector_store_ids, OpenAI::Internal::Type::ArrayOf[String] # @!method initialize(vector_store_ids: nil) - # @param vector_store_ids [Array] + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::Thread::ToolResources::FileSearch} for more details. + # + # @param vector_store_ids [Array] The [vector store](https://platform.openai.com/docs/api-reference/vector-stores/ + # ... end end end diff --git a/lib/openai/models/beta/thread_create_and_run_params.rb b/lib/openai/models/beta/thread_create_and_run_params.rb index 979eb39f..0cd74409 100644 --- a/lib/openai/models/beta/thread_create_and_run_params.rb +++ b/lib/openai/models/beta/thread_create_and_run_params.rb @@ -163,21 +163,51 @@ class ThreadCreateAndRunParams < OpenAI::Internal::Type::BaseModel nil?: true # @!method initialize(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: {}) - # @param assistant_id [String] - # @param instructions [String, nil] - # @param max_completion_tokens [Integer, nil] - # @param max_prompt_tokens [Integer, nil] - # @param metadata [Hash{Symbol=>String}, nil] - # @param model [String, Symbol, OpenAI::Models::ChatModel, nil] - # @param parallel_tool_calls [Boolean] - # @param response_format [Symbol, :auto, OpenAI::Models::ResponseFormatText, OpenAI::Models::ResponseFormatJSONObject, OpenAI::Models::ResponseFormatJSONSchema, nil] - # @param temperature [Float, nil] - # @param thread [OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread] - # @param tool_choice [Symbol, OpenAI::Models::Beta::AssistantToolChoiceOption::Auto, OpenAI::Models::Beta::AssistantToolChoice, nil] - # @param tool_resources [OpenAI::Models::Beta::ThreadCreateAndRunParams::ToolResources, nil] - # @param tools [Array, nil] - # @param top_p [Float, nil] - # @param truncation_strategy [OpenAI::Models::Beta::ThreadCreateAndRunParams::TruncationStrategy, nil] + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::ThreadCreateAndRunParams} for more details. + # + # @param assistant_id [String] The ID of the [assistant](https://platform.openai.com/docs/api-reference/assista + # ... + # + # @param instructions [String, nil] Override the default system message of the assistant. This is useful for modifyi + # ... + # + # @param max_completion_tokens [Integer, nil] The maximum number of completion tokens that may be used over the course of the + # ... + # + # @param max_prompt_tokens [Integer, nil] The maximum number of prompt tokens that may be used over the course of the run. + # ... + # + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # + # @param model [String, Symbol, OpenAI::Models::ChatModel, nil] The ID of the [Model](https://platform.openai.com/docs/api-reference/models) to + # ... + # + # @param parallel_tool_calls [Boolean] Whether to enable [parallel function calling](https://platform.openai.com/docs/g + # ... + # + # @param response_format [Symbol, :auto, OpenAI::Models::ResponseFormatText, OpenAI::Models::ResponseFormatJSONObject, OpenAI::Models::ResponseFormatJSONSchema, nil] Specifies the format that the model must output. Compatible with [GPT-4o](https: + # ... + # + # @param temperature [Float, nil] What sampling temperature to use, between 0 and 2. Higher values like 0.8 will m + # ... + # + # @param thread [OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread] Options to create a new thread. If no thread is provided when running a ... + # + # @param tool_choice [Symbol, OpenAI::Models::Beta::AssistantToolChoiceOption::Auto, OpenAI::Models::Beta::AssistantToolChoice, nil] Controls which (if any) tool is called by the model. ... + # + # @param tool_resources [OpenAI::Models::Beta::ThreadCreateAndRunParams::ToolResources, nil] A set of resources that are used by the assistant's tools. The resources are spe + # ... + # + # @param tools [Array, nil] Override the tools the assistant can use for this run. This is useful for modify + # ... + # + # @param top_p [Float, nil] An alternative to sampling with temperature, called nucleus sampling, where the + # ... + # + # @param truncation_strategy [OpenAI::Models::Beta::ThreadCreateAndRunParams::TruncationStrategy, nil] Controls for how a thread will be truncated prior to the run. Use this to contro + # ... + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] # The ID of the [Model](https://platform.openai.com/docs/api-reference/models) to @@ -228,12 +258,19 @@ class Thread < OpenAI::Internal::Type::BaseModel nil?: true # @!method initialize(messages: nil, metadata: nil, tool_resources: nil) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread} for more details. + # # Options to create a new thread. If no thread is provided when running a request, # an empty thread will be created. # - # @param messages [Array] - # @param metadata [Hash{Symbol=>String}, nil] - # @param tool_resources [OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::ToolResources, nil] + # @param messages [Array] A list of [messages](https://platform.openai.com/docs/api-reference/messages) to + # ... + # + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # + # @param tool_resources [OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::ToolResources, nil] A set of resources that are made available to the assistant's tools in this thre + # ... class Message < OpenAI::Internal::Type::BaseModel # @!attribute content @@ -273,10 +310,17 @@ class Message < OpenAI::Internal::Type::BaseModel optional :metadata, OpenAI::Internal::Type::HashOf[String], nil?: true # @!method initialize(content:, role:, attachments: nil, metadata: nil) - # @param content [String, Array] - # @param role [Symbol, OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::Message::Role] - # @param attachments [Array, nil] - # @param metadata [Hash{Symbol=>String}, nil] + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::Message} for more + # details. + # + # @param content [String, Array] The text contents of the message. + # + # @param role [Symbol, OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::Message::Role] The role of the entity that is creating the message. Allowed values include: ... + # + # @param attachments [Array, nil] A list of files attached to the message, and the tools they should be added to. + # + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... # The text contents of the message. # @@ -330,8 +374,9 @@ class Attachment < OpenAI::Internal::Type::BaseModel -> { OpenAI::Internal::Type::ArrayOf[union: OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::Message::Attachment::Tool] } # @!method initialize(file_id: nil, tools: nil) - # @param file_id [String] - # @param tools [Array] + # @param file_id [String] The ID of the file to attach to the message. + # + # @param tools [Array] The tools to add this file to. module Tool extend OpenAI::Internal::Type::Union @@ -351,7 +396,7 @@ class FileSearch < OpenAI::Internal::Type::BaseModel required :type, const: :file_search # @!method initialize(type: :file_search) - # @param type [Symbol, :file_search] + # @param type [Symbol, :file_search] The type of tool being defined: `file_search` end # @!method self.variants @@ -394,7 +439,12 @@ class CodeInterpreter < OpenAI::Internal::Type::BaseModel optional :file_ids, OpenAI::Internal::Type::ArrayOf[String] # @!method initialize(file_ids: nil) - # @param file_ids [Array] + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::ToolResources::CodeInterpreter} + # for more details. + # + # @param file_ids [Array] A list of [file](https://platform.openai.com/docs/api-reference/files) IDs made + # ... end # @see OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::ToolResources#file_search @@ -419,8 +469,15 @@ class FileSearch < OpenAI::Internal::Type::BaseModel -> { OpenAI::Internal::Type::ArrayOf[OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore] } # @!method initialize(vector_store_ids: nil, vector_stores: nil) - # @param vector_store_ids [Array] - # @param vector_stores [Array] + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch} + # for more details. + # + # @param vector_store_ids [Array] The [vector store](https://platform.openai.com/docs/api-reference/vector-stores/ + # ... + # + # @param vector_stores [Array] A helper to create a [vector store](https://platform.openai.com/docs/api-referen + # ... class VectorStore < OpenAI::Internal::Type::BaseModel # @!attribute chunking_strategy @@ -451,9 +508,17 @@ class VectorStore < OpenAI::Internal::Type::BaseModel optional :metadata, OpenAI::Internal::Type::HashOf[String], nil?: true # @!method initialize(chunking_strategy: nil, file_ids: nil, metadata: nil) - # @param chunking_strategy [OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Auto, OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static] - # @param file_ids [Array] - # @param metadata [Hash{Symbol=>String}, nil] + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore} + # for more details. + # + # @param chunking_strategy [OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Auto, OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static] The chunking strategy used to chunk the file(s). If not set, will use the `auto` + # ... + # + # @param file_ids [Array] A list of [file](https://platform.openai.com/docs/api-reference/files) IDs to ad + # ... + # + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... # The chunking strategy used to chunk the file(s). If not set, will use the `auto` # strategy. @@ -482,7 +547,7 @@ class Auto < OpenAI::Internal::Type::BaseModel # The default strategy. This strategy currently uses a `max_chunk_size_tokens` of # `800` and `chunk_overlap_tokens` of `400`. # - # @param type [Symbol, :auto] + # @param type [Symbol, :auto] Always `auto`. end class Static < OpenAI::Internal::Type::BaseModel @@ -500,7 +565,8 @@ class Static < OpenAI::Internal::Type::BaseModel # @!method initialize(static:, type: :static) # @param static [OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static::Static] - # @param type [Symbol, :static] + # + # @param type [Symbol, :static] Always `static`. # @see OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static#static class Static < OpenAI::Internal::Type::BaseModel @@ -520,8 +586,15 @@ class Static < OpenAI::Internal::Type::BaseModel required :max_chunk_size_tokens, Integer # @!method initialize(chunk_overlap_tokens:, max_chunk_size_tokens:) - # @param chunk_overlap_tokens [Integer] - # @param max_chunk_size_tokens [Integer] + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static::Static} + # for more details. + # + # @param chunk_overlap_tokens [Integer] The number of tokens that overlap between chunks. The default value is `400`. + # ... + # + # @param max_chunk_size_tokens [Integer] The maximum number of tokens in each chunk. The default value is `800`. The mini + # ... end end @@ -565,7 +638,12 @@ class CodeInterpreter < OpenAI::Internal::Type::BaseModel optional :file_ids, OpenAI::Internal::Type::ArrayOf[String] # @!method initialize(file_ids: nil) - # @param file_ids [Array] + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::ThreadCreateAndRunParams::ToolResources::CodeInterpreter} + # for more details. + # + # @param file_ids [Array] A list of [file](https://platform.openai.com/docs/api-reference/files) IDs made + # ... end # @see OpenAI::Models::Beta::ThreadCreateAndRunParams::ToolResources#file_search @@ -580,7 +658,12 @@ class FileSearch < OpenAI::Internal::Type::BaseModel optional :vector_store_ids, OpenAI::Internal::Type::ArrayOf[String] # @!method initialize(vector_store_ids: nil) - # @param vector_store_ids [Array] + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::ThreadCreateAndRunParams::ToolResources::FileSearch} for + # more details. + # + # @param vector_store_ids [Array] The ID of the [vector store](https://platform.openai.com/docs/api-reference/vect + # ... end end @@ -602,11 +685,18 @@ class TruncationStrategy < OpenAI::Internal::Type::BaseModel optional :last_messages, Integer, nil?: true # @!method initialize(type:, last_messages: nil) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::ThreadCreateAndRunParams::TruncationStrategy} for more + # details. + # # Controls for how a thread will be truncated prior to the run. Use this to # control the intial context window of the run. # - # @param type [Symbol, OpenAI::Models::Beta::ThreadCreateAndRunParams::TruncationStrategy::Type] - # @param last_messages [Integer, nil] + # @param type [Symbol, OpenAI::Models::Beta::ThreadCreateAndRunParams::TruncationStrategy::Type] The truncation strategy to use for the thread. The default is `auto`. If set to + # ... + # + # @param last_messages [Integer, nil] The number of most recent messages from the thread when constructing the context + # ... # The truncation strategy to use for the thread. The default is `auto`. If set to # `last_messages`, the thread will be truncated to the n most recent messages in diff --git a/lib/openai/models/beta/thread_create_params.rb b/lib/openai/models/beta/thread_create_params.rb index 2d768eaf..3cb1d240 100644 --- a/lib/openai/models/beta/thread_create_params.rb +++ b/lib/openai/models/beta/thread_create_params.rb @@ -37,9 +37,17 @@ class ThreadCreateParams < OpenAI::Internal::Type::BaseModel optional :tool_resources, -> { OpenAI::Models::Beta::ThreadCreateParams::ToolResources }, nil?: true # @!method initialize(messages: nil, metadata: nil, tool_resources: nil, request_options: {}) - # @param messages [Array] - # @param metadata [Hash{Symbol=>String}, nil] - # @param tool_resources [OpenAI::Models::Beta::ThreadCreateParams::ToolResources, nil] + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::ThreadCreateParams} for more details. + # + # @param messages [Array] A list of [messages](https://platform.openai.com/docs/api-reference/messages) to + # ... + # + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # + # @param tool_resources [OpenAI::Models::Beta::ThreadCreateParams::ToolResources, nil] A set of resources that are made available to the assistant's tools in this thre + # ... + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] class Message < OpenAI::Internal::Type::BaseModel @@ -80,10 +88,16 @@ class Message < OpenAI::Internal::Type::BaseModel optional :metadata, OpenAI::Internal::Type::HashOf[String], nil?: true # @!method initialize(content:, role:, attachments: nil, metadata: nil) - # @param content [String, Array] - # @param role [Symbol, OpenAI::Models::Beta::ThreadCreateParams::Message::Role] - # @param attachments [Array, nil] - # @param metadata [Hash{Symbol=>String}, nil] + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::ThreadCreateParams::Message} for more details. + # + # @param content [String, Array] The text contents of the message. + # + # @param role [Symbol, OpenAI::Models::Beta::ThreadCreateParams::Message::Role] The role of the entity that is creating the message. Allowed values include: ... + # + # @param attachments [Array, nil] A list of files attached to the message, and the tools they should be added to. + # + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... # The text contents of the message. # @@ -137,8 +151,9 @@ class Attachment < OpenAI::Internal::Type::BaseModel -> { OpenAI::Internal::Type::ArrayOf[union: OpenAI::Models::Beta::ThreadCreateParams::Message::Attachment::Tool] } # @!method initialize(file_id: nil, tools: nil) - # @param file_id [String] - # @param tools [Array] + # @param file_id [String] The ID of the file to attach to the message. + # + # @param tools [Array] The tools to add this file to. module Tool extend OpenAI::Internal::Type::Union @@ -158,7 +173,7 @@ class FileSearch < OpenAI::Internal::Type::BaseModel required :type, const: :file_search # @!method initialize(type: :file_search) - # @param type [Symbol, :file_search] + # @param type [Symbol, :file_search] The type of tool being defined: `file_search` end # @!method self.variants @@ -199,7 +214,12 @@ class CodeInterpreter < OpenAI::Internal::Type::BaseModel optional :file_ids, OpenAI::Internal::Type::ArrayOf[String] # @!method initialize(file_ids: nil) - # @param file_ids [Array] + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::ThreadCreateParams::ToolResources::CodeInterpreter} for + # more details. + # + # @param file_ids [Array] A list of [file](https://platform.openai.com/docs/api-reference/files) IDs made + # ... end # @see OpenAI::Models::Beta::ThreadCreateParams::ToolResources#file_search @@ -224,8 +244,15 @@ class FileSearch < OpenAI::Internal::Type::BaseModel -> { OpenAI::Internal::Type::ArrayOf[OpenAI::Models::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore] } # @!method initialize(vector_store_ids: nil, vector_stores: nil) - # @param vector_store_ids [Array] - # @param vector_stores [Array] + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::ThreadCreateParams::ToolResources::FileSearch} for more + # details. + # + # @param vector_store_ids [Array] The [vector store](https://platform.openai.com/docs/api-reference/vector-stores/ + # ... + # + # @param vector_stores [Array] A helper to create a [vector store](https://platform.openai.com/docs/api-referen + # ... class VectorStore < OpenAI::Internal::Type::BaseModel # @!attribute chunking_strategy @@ -256,9 +283,17 @@ class VectorStore < OpenAI::Internal::Type::BaseModel optional :metadata, OpenAI::Internal::Type::HashOf[String], nil?: true # @!method initialize(chunking_strategy: nil, file_ids: nil, metadata: nil) - # @param chunking_strategy [OpenAI::Models::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Auto, OpenAI::Models::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static] - # @param file_ids [Array] - # @param metadata [Hash{Symbol=>String}, nil] + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore} + # for more details. + # + # @param chunking_strategy [OpenAI::Models::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Auto, OpenAI::Models::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static] The chunking strategy used to chunk the file(s). If not set, will use the `auto` + # ... + # + # @param file_ids [Array] A list of [file](https://platform.openai.com/docs/api-reference/files) IDs to ad + # ... + # + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... # The chunking strategy used to chunk the file(s). If not set, will use the `auto` # strategy. @@ -287,7 +322,7 @@ class Auto < OpenAI::Internal::Type::BaseModel # The default strategy. This strategy currently uses a `max_chunk_size_tokens` of # `800` and `chunk_overlap_tokens` of `400`. # - # @param type [Symbol, :auto] + # @param type [Symbol, :auto] Always `auto`. end class Static < OpenAI::Internal::Type::BaseModel @@ -305,7 +340,8 @@ class Static < OpenAI::Internal::Type::BaseModel # @!method initialize(static:, type: :static) # @param static [OpenAI::Models::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static::Static] - # @param type [Symbol, :static] + # + # @param type [Symbol, :static] Always `static`. # @see OpenAI::Models::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static#static class Static < OpenAI::Internal::Type::BaseModel @@ -325,8 +361,15 @@ class Static < OpenAI::Internal::Type::BaseModel required :max_chunk_size_tokens, Integer # @!method initialize(chunk_overlap_tokens:, max_chunk_size_tokens:) - # @param chunk_overlap_tokens [Integer] - # @param max_chunk_size_tokens [Integer] + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static::Static} + # for more details. + # + # @param chunk_overlap_tokens [Integer] The number of tokens that overlap between chunks. The default value is `400`. + # ... + # + # @param max_chunk_size_tokens [Integer] The maximum number of tokens in each chunk. The default value is `800`. The mini + # ... end end diff --git a/lib/openai/models/beta/thread_stream_event.rb b/lib/openai/models/beta/thread_stream_event.rb index bf5cc945..d3279538 100644 --- a/lib/openai/models/beta/thread_stream_event.rb +++ b/lib/openai/models/beta/thread_stream_event.rb @@ -23,12 +23,18 @@ class ThreadStreamEvent < OpenAI::Internal::Type::BaseModel optional :enabled, OpenAI::Internal::Type::Boolean # @!method initialize(data:, enabled: nil, event: :"thread.created") + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::ThreadStreamEvent} for more details. + # # Occurs when a new # [thread](https://platform.openai.com/docs/api-reference/threads/object) is # created. # - # @param data [OpenAI::Models::Beta::Thread] - # @param enabled [Boolean] + # @param data [OpenAI::Models::Beta::Thread] Represents a thread that contains [messages](https://platform.openai.com/docs/ap + # ... + # + # @param enabled [Boolean] Whether to enable input audio transcription. + # # @param event [Symbol, :"thread.created"] end end diff --git a/lib/openai/models/beta/thread_update_params.rb b/lib/openai/models/beta/thread_update_params.rb index 8d7d621e..a96d0bc8 100644 --- a/lib/openai/models/beta/thread_update_params.rb +++ b/lib/openai/models/beta/thread_update_params.rb @@ -29,8 +29,14 @@ class ThreadUpdateParams < OpenAI::Internal::Type::BaseModel optional :tool_resources, -> { OpenAI::Models::Beta::ThreadUpdateParams::ToolResources }, nil?: true # @!method initialize(metadata: nil, tool_resources: nil, request_options: {}) - # @param metadata [Hash{Symbol=>String}, nil] - # @param tool_resources [OpenAI::Models::Beta::ThreadUpdateParams::ToolResources, nil] + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::ThreadUpdateParams} for more details. + # + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # + # @param tool_resources [OpenAI::Models::Beta::ThreadUpdateParams::ToolResources, nil] A set of resources that are made available to the assistant's tools in this thre + # ... + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] class ToolResources < OpenAI::Internal::Type::BaseModel @@ -65,7 +71,12 @@ class CodeInterpreter < OpenAI::Internal::Type::BaseModel optional :file_ids, OpenAI::Internal::Type::ArrayOf[String] # @!method initialize(file_ids: nil) - # @param file_ids [Array] + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::ThreadUpdateParams::ToolResources::CodeInterpreter} for + # more details. + # + # @param file_ids [Array] A list of [file](https://platform.openai.com/docs/api-reference/files) IDs made + # ... end # @see OpenAI::Models::Beta::ThreadUpdateParams::ToolResources#file_search @@ -80,7 +91,12 @@ class FileSearch < OpenAI::Internal::Type::BaseModel optional :vector_store_ids, OpenAI::Internal::Type::ArrayOf[String] # @!method initialize(vector_store_ids: nil) - # @param vector_store_ids [Array] + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::ThreadUpdateParams::ToolResources::FileSearch} for more + # details. + # + # @param vector_store_ids [Array] The [vector store](https://platform.openai.com/docs/api-reference/vector-stores/ + # ... end end end diff --git a/lib/openai/models/beta/threads/file_citation_annotation.rb b/lib/openai/models/beta/threads/file_citation_annotation.rb index 77b9e19d..4ccc33d1 100644 --- a/lib/openai/models/beta/threads/file_citation_annotation.rb +++ b/lib/openai/models/beta/threads/file_citation_annotation.rb @@ -38,10 +38,14 @@ class FileCitationAnnotation < OpenAI::Internal::Type::BaseModel # uses the "file_search" tool to search files. # # @param end_index [Integer] + # # @param file_citation [OpenAI::Models::Beta::Threads::FileCitationAnnotation::FileCitation] + # # @param start_index [Integer] - # @param text [String] - # @param type [Symbol, :file_citation] + # + # @param text [String] The text in the message content that needs to be replaced. + # + # @param type [Symbol, :file_citation] Always `file_citation`. # @see OpenAI::Models::Beta::Threads::FileCitationAnnotation#file_citation class FileCitation < OpenAI::Internal::Type::BaseModel @@ -52,7 +56,7 @@ class FileCitation < OpenAI::Internal::Type::BaseModel required :file_id, String # @!method initialize(file_id:) - # @param file_id [String] + # @param file_id [String] The ID of the specific File the citation is from. end end end diff --git a/lib/openai/models/beta/threads/file_citation_delta_annotation.rb b/lib/openai/models/beta/threads/file_citation_delta_annotation.rb index 3d825a51..7a676989 100644 --- a/lib/openai/models/beta/threads/file_citation_delta_annotation.rb +++ b/lib/openai/models/beta/threads/file_citation_delta_annotation.rb @@ -43,12 +43,17 @@ class FileCitationDeltaAnnotation < OpenAI::Internal::Type::BaseModel # File associated with the assistant or the message. Generated when the assistant # uses the "file_search" tool to search files. # - # @param index [Integer] + # @param index [Integer] The index of the annotation in the text content part. + # # @param end_index [Integer] + # # @param file_citation [OpenAI::Models::Beta::Threads::FileCitationDeltaAnnotation::FileCitation] + # # @param start_index [Integer] - # @param text [String] - # @param type [Symbol, :file_citation] + # + # @param text [String] The text in the message content that needs to be replaced. + # + # @param type [Symbol, :file_citation] Always `file_citation`. # @see OpenAI::Models::Beta::Threads::FileCitationDeltaAnnotation#file_citation class FileCitation < OpenAI::Internal::Type::BaseModel @@ -65,8 +70,9 @@ class FileCitation < OpenAI::Internal::Type::BaseModel optional :quote, String # @!method initialize(file_id: nil, quote: nil) - # @param file_id [String] - # @param quote [String] + # @param file_id [String] The ID of the specific File the citation is from. + # + # @param quote [String] The specific quote in the file. end end end diff --git a/lib/openai/models/beta/threads/file_path_annotation.rb b/lib/openai/models/beta/threads/file_path_annotation.rb index 91c2a6fd..516a7249 100644 --- a/lib/openai/models/beta/threads/file_path_annotation.rb +++ b/lib/openai/models/beta/threads/file_path_annotation.rb @@ -37,10 +37,14 @@ class FilePathAnnotation < OpenAI::Internal::Type::BaseModel # `code_interpreter` tool to generate a file. # # @param end_index [Integer] + # # @param file_path [OpenAI::Models::Beta::Threads::FilePathAnnotation::FilePath] + # # @param start_index [Integer] - # @param text [String] - # @param type [Symbol, :file_path] + # + # @param text [String] The text in the message content that needs to be replaced. + # + # @param type [Symbol, :file_path] Always `file_path`. # @see OpenAI::Models::Beta::Threads::FilePathAnnotation#file_path class FilePath < OpenAI::Internal::Type::BaseModel @@ -51,7 +55,7 @@ class FilePath < OpenAI::Internal::Type::BaseModel required :file_id, String # @!method initialize(file_id:) - # @param file_id [String] + # @param file_id [String] The ID of the file that was generated. end end end diff --git a/lib/openai/models/beta/threads/file_path_delta_annotation.rb b/lib/openai/models/beta/threads/file_path_delta_annotation.rb index 679015ba..b67e6401 100644 --- a/lib/openai/models/beta/threads/file_path_delta_annotation.rb +++ b/lib/openai/models/beta/threads/file_path_delta_annotation.rb @@ -42,12 +42,17 @@ class FilePathDeltaAnnotation < OpenAI::Internal::Type::BaseModel # A URL for the file that's generated when the assistant used the # `code_interpreter` tool to generate a file. # - # @param index [Integer] + # @param index [Integer] The index of the annotation in the text content part. + # # @param end_index [Integer] + # # @param file_path [OpenAI::Models::Beta::Threads::FilePathDeltaAnnotation::FilePath] + # # @param start_index [Integer] - # @param text [String] - # @param type [Symbol, :file_path] + # + # @param text [String] The text in the message content that needs to be replaced. + # + # @param type [Symbol, :file_path] Always `file_path`. # @see OpenAI::Models::Beta::Threads::FilePathDeltaAnnotation#file_path class FilePath < OpenAI::Internal::Type::BaseModel @@ -58,7 +63,7 @@ class FilePath < OpenAI::Internal::Type::BaseModel optional :file_id, String # @!method initialize(file_id: nil) - # @param file_id [String] + # @param file_id [String] The ID of the file that was generated. end end end diff --git a/lib/openai/models/beta/threads/image_file.rb b/lib/openai/models/beta/threads/image_file.rb index df480221..f99387f6 100644 --- a/lib/openai/models/beta/threads/image_file.rb +++ b/lib/openai/models/beta/threads/image_file.rb @@ -21,8 +21,14 @@ class ImageFile < OpenAI::Internal::Type::BaseModel optional :detail, enum: -> { OpenAI::Models::Beta::Threads::ImageFile::Detail } # @!method initialize(file_id:, detail: nil) - # @param file_id [String] - # @param detail [Symbol, OpenAI::Models::Beta::Threads::ImageFile::Detail] + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::Threads::ImageFile} for more details. + # + # @param file_id [String] The [File](https://platform.openai.com/docs/api-reference/files) ID of the image + # ... + # + # @param detail [Symbol, OpenAI::Models::Beta::Threads::ImageFile::Detail] Specifies the detail level of the image if specified by the user. `low` uses few + # ... # Specifies the detail level of the image if specified by the user. `low` uses # fewer tokens, you can opt in to high resolution using `high`. diff --git a/lib/openai/models/beta/threads/image_file_content_block.rb b/lib/openai/models/beta/threads/image_file_content_block.rb index 2bcba265..99aeca4e 100644 --- a/lib/openai/models/beta/threads/image_file_content_block.rb +++ b/lib/openai/models/beta/threads/image_file_content_block.rb @@ -21,7 +21,8 @@ class ImageFileContentBlock < OpenAI::Internal::Type::BaseModel # in the content of a message. # # @param image_file [OpenAI::Models::Beta::Threads::ImageFile] - # @param type [Symbol, :image_file] + # + # @param type [Symbol, :image_file] Always `image_file`. end end end diff --git a/lib/openai/models/beta/threads/image_file_delta.rb b/lib/openai/models/beta/threads/image_file_delta.rb index 25fc81e0..69c0f595 100644 --- a/lib/openai/models/beta/threads/image_file_delta.rb +++ b/lib/openai/models/beta/threads/image_file_delta.rb @@ -21,8 +21,14 @@ class ImageFileDelta < OpenAI::Internal::Type::BaseModel optional :file_id, String # @!method initialize(detail: nil, file_id: nil) - # @param detail [Symbol, OpenAI::Models::Beta::Threads::ImageFileDelta::Detail] - # @param file_id [String] + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::Threads::ImageFileDelta} for more details. + # + # @param detail [Symbol, OpenAI::Models::Beta::Threads::ImageFileDelta::Detail] Specifies the detail level of the image if specified by the user. `low` uses few + # ... + # + # @param file_id [String] The [File](https://platform.openai.com/docs/api-reference/files) ID of the image + # ... # Specifies the detail level of the image if specified by the user. `low` uses # fewer tokens, you can opt in to high resolution using `high`. diff --git a/lib/openai/models/beta/threads/image_file_delta_block.rb b/lib/openai/models/beta/threads/image_file_delta_block.rb index 3befaf8c..8831e0c3 100644 --- a/lib/openai/models/beta/threads/image_file_delta_block.rb +++ b/lib/openai/models/beta/threads/image_file_delta_block.rb @@ -26,9 +26,11 @@ class ImageFileDeltaBlock < OpenAI::Internal::Type::BaseModel # References an image [File](https://platform.openai.com/docs/api-reference/files) # in the content of a message. # - # @param index [Integer] + # @param index [Integer] The index of the content part in the message. + # # @param image_file [OpenAI::Models::Beta::Threads::ImageFileDelta] - # @param type [Symbol, :image_file] + # + # @param type [Symbol, :image_file] Always `image_file`. end end end diff --git a/lib/openai/models/beta/threads/image_url.rb b/lib/openai/models/beta/threads/image_url.rb index 1b88b1b2..02ed1378 100644 --- a/lib/openai/models/beta/threads/image_url.rb +++ b/lib/openai/models/beta/threads/image_url.rb @@ -20,8 +20,14 @@ class ImageURL < OpenAI::Internal::Type::BaseModel optional :detail, enum: -> { OpenAI::Models::Beta::Threads::ImageURL::Detail } # @!method initialize(url:, detail: nil) - # @param url [String] - # @param detail [Symbol, OpenAI::Models::Beta::Threads::ImageURL::Detail] + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::Threads::ImageURL} for more details. + # + # @param url [String] The external URL of the image, must be a supported image types: jpeg, jpg, png, + # ... + # + # @param detail [Symbol, OpenAI::Models::Beta::Threads::ImageURL::Detail] Specifies the detail level of the image. `low` uses fewer tokens, you can opt in + # ... # Specifies the detail level of the image. `low` uses fewer tokens, you can opt in # to high resolution using `high`. Default value is `auto` diff --git a/lib/openai/models/beta/threads/image_url_content_block.rb b/lib/openai/models/beta/threads/image_url_content_block.rb index b44975eb..f9b5edc9 100644 --- a/lib/openai/models/beta/threads/image_url_content_block.rb +++ b/lib/openai/models/beta/threads/image_url_content_block.rb @@ -20,7 +20,8 @@ class ImageURLContentBlock < OpenAI::Internal::Type::BaseModel # References an image URL in the content of a message. # # @param image_url [OpenAI::Models::Beta::Threads::ImageURL] - # @param type [Symbol, :image_url] + # + # @param type [Symbol, :image_url] The type of the content part. end end end diff --git a/lib/openai/models/beta/threads/image_url_delta.rb b/lib/openai/models/beta/threads/image_url_delta.rb index 9ba548e3..1f1d98ef 100644 --- a/lib/openai/models/beta/threads/image_url_delta.rb +++ b/lib/openai/models/beta/threads/image_url_delta.rb @@ -20,8 +20,14 @@ class ImageURLDelta < OpenAI::Internal::Type::BaseModel optional :url, String # @!method initialize(detail: nil, url: nil) - # @param detail [Symbol, OpenAI::Models::Beta::Threads::ImageURLDelta::Detail] - # @param url [String] + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::Threads::ImageURLDelta} for more details. + # + # @param detail [Symbol, OpenAI::Models::Beta::Threads::ImageURLDelta::Detail] Specifies the detail level of the image. `low` uses fewer tokens, you can opt in + # ... + # + # @param url [String] The URL of the image, must be a supported image types: jpeg, jpg, png, gif, webp + # ... # Specifies the detail level of the image. `low` uses fewer tokens, you can opt in # to high resolution using `high`. diff --git a/lib/openai/models/beta/threads/image_url_delta_block.rb b/lib/openai/models/beta/threads/image_url_delta_block.rb index 8b140bfb..f2a01238 100644 --- a/lib/openai/models/beta/threads/image_url_delta_block.rb +++ b/lib/openai/models/beta/threads/image_url_delta_block.rb @@ -25,9 +25,11 @@ class ImageURLDeltaBlock < OpenAI::Internal::Type::BaseModel # @!method initialize(index:, image_url: nil, type: :image_url) # References an image URL in the content of a message. # - # @param index [Integer] + # @param index [Integer] The index of the content part in the message. + # # @param image_url [OpenAI::Models::Beta::Threads::ImageURLDelta] - # @param type [Symbol, :image_url] + # + # @param type [Symbol, :image_url] Always `image_url`. end end end diff --git a/lib/openai/models/beta/threads/message.rb b/lib/openai/models/beta/threads/message.rb index ccff15ee..b98b3ca0 100644 --- a/lib/openai/models/beta/threads/message.rb +++ b/lib/openai/models/beta/threads/message.rb @@ -105,23 +105,43 @@ class Message < OpenAI::Internal::Type::BaseModel required :thread_id, String # @!method initialize(id:, assistant_id:, attachments:, completed_at:, content:, created_at:, incomplete_at:, incomplete_details:, metadata:, role:, run_id:, status:, thread_id:, object: :"thread.message") + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::Threads::Message} for more details. + # # Represents a message within a # [thread](https://platform.openai.com/docs/api-reference/threads). # - # @param id [String] - # @param assistant_id [String, nil] - # @param attachments [Array, nil] - # @param completed_at [Integer, nil] - # @param content [Array] - # @param created_at [Integer] - # @param incomplete_at [Integer, nil] - # @param incomplete_details [OpenAI::Models::Beta::Threads::Message::IncompleteDetails, nil] - # @param metadata [Hash{Symbol=>String}, nil] - # @param role [Symbol, OpenAI::Models::Beta::Threads::Message::Role] - # @param run_id [String, nil] - # @param status [Symbol, OpenAI::Models::Beta::Threads::Message::Status] - # @param thread_id [String] - # @param object [Symbol, :"thread.message"] + # @param id [String] The identifier, which can be referenced in API endpoints. + # + # @param assistant_id [String, nil] If applicable, the ID of the [assistant](https://platform.openai.com/docs/api-re + # ... + # + # @param attachments [Array, nil] A list of files attached to the message, and the tools they were added to. + # + # @param completed_at [Integer, nil] The Unix timestamp (in seconds) for when the message was completed. + # + # @param content [Array] The content of the message in array of text and/or images. + # + # @param created_at [Integer] The Unix timestamp (in seconds) for when the message was created. + # + # @param incomplete_at [Integer, nil] The Unix timestamp (in seconds) for when the message was marked as incomplete. + # + # @param incomplete_details [OpenAI::Models::Beta::Threads::Message::IncompleteDetails, nil] On an incomplete message, details about why the message is incomplete. + # + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # + # @param role [Symbol, OpenAI::Models::Beta::Threads::Message::Role] The entity that produced the message. One of `user` or `assistant`. + # + # @param run_id [String, nil] The ID of the [run](https://platform.openai.com/docs/api-reference/runs) associa + # ... + # + # @param status [Symbol, OpenAI::Models::Beta::Threads::Message::Status] The status of the message, which can be either `in_progress`, `incomplete`, or ` + # ... + # + # @param thread_id [String] The [thread](https://platform.openai.com/docs/api-reference/threads) ID that thi + # ... + # + # @param object [Symbol, :"thread.message"] The object type, which is always `thread.message`. class Attachment < OpenAI::Internal::Type::BaseModel # @!attribute file_id @@ -138,8 +158,9 @@ class Attachment < OpenAI::Internal::Type::BaseModel -> { OpenAI::Internal::Type::ArrayOf[union: OpenAI::Models::Beta::Threads::Message::Attachment::Tool] } # @!method initialize(file_id: nil, tools: nil) - # @param file_id [String] - # @param tools [Array] + # @param file_id [String] The ID of the file to attach to the message. + # + # @param tools [Array] The tools to add this file to. module Tool extend OpenAI::Internal::Type::Union @@ -156,7 +177,7 @@ class AssistantToolsFileSearchTypeOnly < OpenAI::Internal::Type::BaseModel required :type, const: :file_search # @!method initialize(type: :file_search) - # @param type [Symbol, :file_search] + # @param type [Symbol, :file_search] The type of tool being defined: `file_search` end # @!method self.variants @@ -175,7 +196,7 @@ class IncompleteDetails < OpenAI::Internal::Type::BaseModel # @!method initialize(reason:) # On an incomplete message, details about why the message is incomplete. # - # @param reason [Symbol, OpenAI::Models::Beta::Threads::Message::IncompleteDetails::Reason] + # @param reason [Symbol, OpenAI::Models::Beta::Threads::Message::IncompleteDetails::Reason] The reason the message is incomplete. # The reason the message is incomplete. # diff --git a/lib/openai/models/beta/threads/message_create_params.rb b/lib/openai/models/beta/threads/message_create_params.rb index 711686f8..ff6d233f 100644 --- a/lib/openai/models/beta/threads/message_create_params.rb +++ b/lib/openai/models/beta/threads/message_create_params.rb @@ -46,10 +46,17 @@ class MessageCreateParams < OpenAI::Internal::Type::BaseModel optional :metadata, OpenAI::Internal::Type::HashOf[String], nil?: true # @!method initialize(content:, role:, attachments: nil, metadata: nil, request_options: {}) - # @param content [String, Array] - # @param role [Symbol, OpenAI::Models::Beta::Threads::MessageCreateParams::Role] - # @param attachments [Array, nil] - # @param metadata [Hash{Symbol=>String}, nil] + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::Threads::MessageCreateParams} for more details. + # + # @param content [String, Array] The text contents of the message. + # + # @param role [Symbol, OpenAI::Models::Beta::Threads::MessageCreateParams::Role] The role of the entity that is creating the message. Allowed values include: ... + # + # @param attachments [Array, nil] A list of files attached to the message, and the tools they should be added to. + # + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] # The text contents of the message. @@ -100,8 +107,9 @@ class Attachment < OpenAI::Internal::Type::BaseModel -> { OpenAI::Internal::Type::ArrayOf[union: OpenAI::Models::Beta::Threads::MessageCreateParams::Attachment::Tool] } # @!method initialize(file_id: nil, tools: nil) - # @param file_id [String] - # @param tools [Array] + # @param file_id [String] The ID of the file to attach to the message. + # + # @param tools [Array] The tools to add this file to. module Tool extend OpenAI::Internal::Type::Union @@ -121,7 +129,7 @@ class FileSearch < OpenAI::Internal::Type::BaseModel required :type, const: :file_search # @!method initialize(type: :file_search) - # @param type [Symbol, :file_search] + # @param type [Symbol, :file_search] The type of tool being defined: `file_search` end # @!method self.variants diff --git a/lib/openai/models/beta/threads/message_delta.rb b/lib/openai/models/beta/threads/message_delta.rb index 04f0a1fd..a845cecd 100644 --- a/lib/openai/models/beta/threads/message_delta.rb +++ b/lib/openai/models/beta/threads/message_delta.rb @@ -21,8 +21,9 @@ class MessageDelta < OpenAI::Internal::Type::BaseModel # @!method initialize(content: nil, role: nil) # The delta containing the fields that have changed on the Message. # - # @param content [Array] - # @param role [Symbol, OpenAI::Models::Beta::Threads::MessageDelta::Role] + # @param content [Array] The content of the message in array of text and/or images. + # + # @param role [Symbol, OpenAI::Models::Beta::Threads::MessageDelta::Role] The entity that produced the message. One of `user` or `assistant`. # The entity that produced the message. One of `user` or `assistant`. # diff --git a/lib/openai/models/beta/threads/message_delta_event.rb b/lib/openai/models/beta/threads/message_delta_event.rb index e935e3bd..96c689fb 100644 --- a/lib/openai/models/beta/threads/message_delta_event.rb +++ b/lib/openai/models/beta/threads/message_delta_event.rb @@ -27,9 +27,11 @@ class MessageDeltaEvent < OpenAI::Internal::Type::BaseModel # Represents a message delta i.e. any changed fields on a message during # streaming. # - # @param id [String] - # @param delta [OpenAI::Models::Beta::Threads::MessageDelta] - # @param object [Symbol, :"thread.message.delta"] + # @param id [String] The identifier of the message, which can be referenced in API endpoints. + # + # @param delta [OpenAI::Models::Beta::Threads::MessageDelta] The delta containing the fields that have changed on the Message. + # + # @param object [Symbol, :"thread.message.delta"] The object type, which is always `thread.message.delta`. end end end diff --git a/lib/openai/models/beta/threads/message_list_params.rb b/lib/openai/models/beta/threads/message_list_params.rb index 2dbe8d80..911b6f57 100644 --- a/lib/openai/models/beta/threads/message_list_params.rb +++ b/lib/openai/models/beta/threads/message_list_params.rb @@ -48,11 +48,23 @@ class MessageListParams < OpenAI::Internal::Type::BaseModel optional :run_id, String # @!method initialize(after: nil, before: nil, limit: nil, order: nil, run_id: nil, request_options: {}) - # @param after [String] - # @param before [String] - # @param limit [Integer] - # @param order [Symbol, OpenAI::Models::Beta::Threads::MessageListParams::Order] - # @param run_id [String] + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::Threads::MessageListParams} for more details. + # + # @param after [String] A cursor for use in pagination. `after` is an object ID that defines your place + # ... + # + # @param before [String] A cursor for use in pagination. `before` is an object ID that defines your place + # ... + # + # @param limit [Integer] A limit on the number of objects to be returned. Limit can range between 1 and 1 + # ... + # + # @param order [Symbol, OpenAI::Models::Beta::Threads::MessageListParams::Order] Sort order by the `created_at` timestamp of the objects. `asc` for ascending ord + # ... + # + # @param run_id [String] Filter messages by the run ID that generated them. ... + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] # Sort order by the `created_at` timestamp of the objects. `asc` for ascending diff --git a/lib/openai/models/beta/threads/message_update_params.rb b/lib/openai/models/beta/threads/message_update_params.rb index 09909fdc..ab23d244 100644 --- a/lib/openai/models/beta/threads/message_update_params.rb +++ b/lib/openai/models/beta/threads/message_update_params.rb @@ -26,8 +26,13 @@ class MessageUpdateParams < OpenAI::Internal::Type::BaseModel optional :metadata, OpenAI::Internal::Type::HashOf[String], nil?: true # @!method initialize(thread_id:, metadata: nil, request_options: {}) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::Threads::MessageUpdateParams} for more details. + # # @param thread_id [String] - # @param metadata [Hash{Symbol=>String}, nil] + # + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] end end diff --git a/lib/openai/models/beta/threads/refusal_content_block.rb b/lib/openai/models/beta/threads/refusal_content_block.rb index fcdce182..91eba521 100644 --- a/lib/openai/models/beta/threads/refusal_content_block.rb +++ b/lib/openai/models/beta/threads/refusal_content_block.rb @@ -20,7 +20,8 @@ class RefusalContentBlock < OpenAI::Internal::Type::BaseModel # The refusal content generated by the assistant. # # @param refusal [String] - # @param type [Symbol, :refusal] + # + # @param type [Symbol, :refusal] Always `refusal`. end end end diff --git a/lib/openai/models/beta/threads/refusal_delta_block.rb b/lib/openai/models/beta/threads/refusal_delta_block.rb index 9f1cc3a1..cdb3d1ea 100644 --- a/lib/openai/models/beta/threads/refusal_delta_block.rb +++ b/lib/openai/models/beta/threads/refusal_delta_block.rb @@ -25,9 +25,11 @@ class RefusalDeltaBlock < OpenAI::Internal::Type::BaseModel # @!method initialize(index:, refusal: nil, type: :refusal) # The refusal content that is part of a message. # - # @param index [Integer] + # @param index [Integer] The index of the refusal part in the message. + # # @param refusal [String] - # @param type [Symbol, :refusal] + # + # @param type [Symbol, :refusal] Always `refusal`. end end end diff --git a/lib/openai/models/beta/threads/required_action_function_tool_call.rb b/lib/openai/models/beta/threads/required_action_function_tool_call.rb index 7db514ed..f7a4a2b0 100644 --- a/lib/openai/models/beta/threads/required_action_function_tool_call.rb +++ b/lib/openai/models/beta/threads/required_action_function_tool_call.rb @@ -28,11 +28,19 @@ class RequiredActionFunctionToolCall < OpenAI::Internal::Type::BaseModel required :type, const: :function # @!method initialize(id:, function:, type: :function) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::Threads::RequiredActionFunctionToolCall} for more + # details. + # # Tool call objects # - # @param id [String] - # @param function [OpenAI::Models::Beta::Threads::RequiredActionFunctionToolCall::Function] - # @param type [Symbol, :function] + # @param id [String] The ID of the tool call. This ID must be referenced when you submit the tool out + # ... + # + # @param function [OpenAI::Models::Beta::Threads::RequiredActionFunctionToolCall::Function] The function definition. + # + # @param type [Symbol, :function] The type of tool call the output is required for. For now, this is always `funct + # ... # @see OpenAI::Models::Beta::Threads::RequiredActionFunctionToolCall#function class Function < OpenAI::Internal::Type::BaseModel @@ -51,8 +59,9 @@ class Function < OpenAI::Internal::Type::BaseModel # @!method initialize(arguments:, name:) # The function definition. # - # @param arguments [String] - # @param name [String] + # @param arguments [String] The arguments that the model expects you to pass to the function. + # + # @param name [String] The name of the function. end end end diff --git a/lib/openai/models/beta/threads/run.rb b/lib/openai/models/beta/threads/run.rb index 7638e17a..51b736e9 100644 --- a/lib/openai/models/beta/threads/run.rb +++ b/lib/openai/models/beta/threads/run.rb @@ -220,36 +220,79 @@ class Run < OpenAI::Internal::Type::BaseModel optional :top_p, Float, nil?: true # @!method initialize(id:, assistant_id:, cancelled_at:, completed_at:, created_at:, expires_at:, failed_at:, incomplete_details:, instructions:, last_error:, max_completion_tokens:, max_prompt_tokens:, metadata:, model:, parallel_tool_calls:, required_action:, response_format:, started_at:, status:, thread_id:, tool_choice:, tools:, truncation_strategy:, usage:, temperature: nil, top_p: nil, object: :"thread.run") + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::Threads::Run} for more details. + # # Represents an execution run on a # [thread](https://platform.openai.com/docs/api-reference/threads). # - # @param id [String] - # @param assistant_id [String] - # @param cancelled_at [Integer, nil] - # @param completed_at [Integer, nil] - # @param created_at [Integer] - # @param expires_at [Integer, nil] - # @param failed_at [Integer, nil] - # @param incomplete_details [OpenAI::Models::Beta::Threads::Run::IncompleteDetails, nil] - # @param instructions [String] - # @param last_error [OpenAI::Models::Beta::Threads::Run::LastError, nil] - # @param max_completion_tokens [Integer, nil] - # @param max_prompt_tokens [Integer, nil] - # @param metadata [Hash{Symbol=>String}, nil] - # @param model [String] - # @param parallel_tool_calls [Boolean] - # @param required_action [OpenAI::Models::Beta::Threads::Run::RequiredAction, nil] - # @param response_format [Symbol, :auto, OpenAI::Models::ResponseFormatText, OpenAI::Models::ResponseFormatJSONObject, OpenAI::Models::ResponseFormatJSONSchema, nil] - # @param started_at [Integer, nil] - # @param status [Symbol, OpenAI::Models::Beta::Threads::RunStatus] - # @param thread_id [String] - # @param tool_choice [Symbol, OpenAI::Models::Beta::AssistantToolChoiceOption::Auto, OpenAI::Models::Beta::AssistantToolChoice, nil] - # @param tools [Array] - # @param truncation_strategy [OpenAI::Models::Beta::Threads::Run::TruncationStrategy, nil] - # @param usage [OpenAI::Models::Beta::Threads::Run::Usage, nil] - # @param temperature [Float, nil] - # @param top_p [Float, nil] - # @param object [Symbol, :"thread.run"] + # @param id [String] The identifier, which can be referenced in API endpoints. + # + # @param assistant_id [String] The ID of the [assistant](https://platform.openai.com/docs/api-reference/assista + # ... + # + # @param cancelled_at [Integer, nil] The Unix timestamp (in seconds) for when the run was cancelled. + # + # @param completed_at [Integer, nil] The Unix timestamp (in seconds) for when the run was completed. + # + # @param created_at [Integer] The Unix timestamp (in seconds) for when the run was created. + # + # @param expires_at [Integer, nil] The Unix timestamp (in seconds) for when the run will expire. + # + # @param failed_at [Integer, nil] The Unix timestamp (in seconds) for when the run failed. + # + # @param incomplete_details [OpenAI::Models::Beta::Threads::Run::IncompleteDetails, nil] Details on why the run is incomplete. Will be `null` if the run is not incomplet + # ... + # + # @param instructions [String] The instructions that the [assistant](https://platform.openai.com/docs/api-refer + # ... + # + # @param last_error [OpenAI::Models::Beta::Threads::Run::LastError, nil] The last error associated with this run. Will be `null` if there are no errors. + # + # @param max_completion_tokens [Integer, nil] The maximum number of completion tokens specified to have been used over the cou + # ... + # + # @param max_prompt_tokens [Integer, nil] The maximum number of prompt tokens specified to have been used over the course + # ... + # + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # + # @param model [String] The model that the [assistant](https://platform.openai.com/docs/api-reference/as + # ... + # + # @param parallel_tool_calls [Boolean] Whether to enable [parallel function calling](https://platform.openai.com/docs/g + # ... + # + # @param required_action [OpenAI::Models::Beta::Threads::Run::RequiredAction, nil] Details on the action required to continue the run. Will be `null` if no action + # ... + # + # @param response_format [Symbol, :auto, OpenAI::Models::ResponseFormatText, OpenAI::Models::ResponseFormatJSONObject, OpenAI::Models::ResponseFormatJSONSchema, nil] Specifies the format that the model must output. Compatible with [GPT-4o](https: + # ... + # + # @param started_at [Integer, nil] The Unix timestamp (in seconds) for when the run was started. + # + # @param status [Symbol, OpenAI::Models::Beta::Threads::RunStatus] The status of the run, which can be either `queued`, `in_progress`, `requires_ac + # ... + # + # @param thread_id [String] The ID of the [thread](https://platform.openai.com/docs/api-reference/threads) t + # ... + # + # @param tool_choice [Symbol, OpenAI::Models::Beta::AssistantToolChoiceOption::Auto, OpenAI::Models::Beta::AssistantToolChoice, nil] Controls which (if any) tool is called by the model. ... + # + # @param tools [Array] The list of tools that the [assistant](https://platform.openai.com/docs/api-refe + # ... + # + # @param truncation_strategy [OpenAI::Models::Beta::Threads::Run::TruncationStrategy, nil] Controls for how a thread will be truncated prior to the run. Use this to contro + # ... + # + # @param usage [OpenAI::Models::Beta::Threads::Run::Usage, nil] Usage statistics related to the run. This value will be `null` if the run is not + # ... + # + # @param temperature [Float, nil] The sampling temperature used for this run. If not set, defaults to 1. + # + # @param top_p [Float, nil] The nucleus sampling value used for this run. If not set, defaults to 1. + # + # @param object [Symbol, :"thread.run"] The object type, which is always `thread.run`. # @see OpenAI::Models::Beta::Threads::Run#incomplete_details class IncompleteDetails < OpenAI::Internal::Type::BaseModel @@ -261,10 +304,14 @@ class IncompleteDetails < OpenAI::Internal::Type::BaseModel optional :reason, enum: -> { OpenAI::Models::Beta::Threads::Run::IncompleteDetails::Reason } # @!method initialize(reason: nil) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::Threads::Run::IncompleteDetails} for more details. + # # Details on why the run is incomplete. Will be `null` if the run is not # incomplete. # - # @param reason [Symbol, OpenAI::Models::Beta::Threads::Run::IncompleteDetails::Reason] + # @param reason [Symbol, OpenAI::Models::Beta::Threads::Run::IncompleteDetails::Reason] The reason why the run is incomplete. This will point to which specific token li + # ... # The reason why the run is incomplete. This will point to which specific token # limit was reached over the course of the run. @@ -298,8 +345,9 @@ class LastError < OpenAI::Internal::Type::BaseModel # @!method initialize(code:, message:) # The last error associated with this run. Will be `null` if there are no errors. # - # @param code [Symbol, OpenAI::Models::Beta::Threads::Run::LastError::Code] - # @param message [String] + # @param code [Symbol, OpenAI::Models::Beta::Threads::Run::LastError::Code] One of `server_error`, `rate_limit_exceeded`, or `invalid_prompt`. + # + # @param message [String] A human-readable description of the error. # One of `server_error`, `rate_limit_exceeded`, or `invalid_prompt`. # @@ -335,8 +383,9 @@ class RequiredAction < OpenAI::Internal::Type::BaseModel # Details on the action required to continue the run. Will be `null` if no action # is required. # - # @param submit_tool_outputs [OpenAI::Models::Beta::Threads::Run::RequiredAction::SubmitToolOutputs] - # @param type [Symbol, :submit_tool_outputs] + # @param submit_tool_outputs [OpenAI::Models::Beta::Threads::Run::RequiredAction::SubmitToolOutputs] Details on the tool outputs needed for this run to continue. + # + # @param type [Symbol, :submit_tool_outputs] For now, this is always `submit_tool_outputs`. # @see OpenAI::Models::Beta::Threads::Run::RequiredAction#submit_tool_outputs class SubmitToolOutputs < OpenAI::Internal::Type::BaseModel @@ -350,7 +399,7 @@ class SubmitToolOutputs < OpenAI::Internal::Type::BaseModel # @!method initialize(tool_calls:) # Details on the tool outputs needed for this run to continue. # - # @param tool_calls [Array] + # @param tool_calls [Array] A list of the relevant tool calls. end end @@ -373,11 +422,17 @@ class TruncationStrategy < OpenAI::Internal::Type::BaseModel optional :last_messages, Integer, nil?: true # @!method initialize(type:, last_messages: nil) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::Threads::Run::TruncationStrategy} for more details. + # # Controls for how a thread will be truncated prior to the run. Use this to # control the intial context window of the run. # - # @param type [Symbol, OpenAI::Models::Beta::Threads::Run::TruncationStrategy::Type] - # @param last_messages [Integer, nil] + # @param type [Symbol, OpenAI::Models::Beta::Threads::Run::TruncationStrategy::Type] The truncation strategy to use for the thread. The default is `auto`. If set to + # ... + # + # @param last_messages [Integer, nil] The number of most recent messages from the thread when constructing the context + # ... # The truncation strategy to use for the thread. The default is `auto`. If set to # `last_messages`, the thread will be truncated to the n most recent messages in @@ -420,9 +475,11 @@ class Usage < OpenAI::Internal::Type::BaseModel # Usage statistics related to the run. This value will be `null` if the run is not # in a terminal state (i.e. `in_progress`, `queued`, etc.). # - # @param completion_tokens [Integer] - # @param prompt_tokens [Integer] - # @param total_tokens [Integer] + # @param completion_tokens [Integer] Number of completion tokens used over the course of the run. + # + # @param prompt_tokens [Integer] Number of prompt tokens used over the course of the run. + # + # @param total_tokens [Integer] Total number of tokens used (prompt + completion). end end end diff --git a/lib/openai/models/beta/threads/run_create_params.rb b/lib/openai/models/beta/threads/run_create_params.rb index 6af10c28..d47e1177 100644 --- a/lib/openai/models/beta/threads/run_create_params.rb +++ b/lib/openai/models/beta/threads/run_create_params.rb @@ -189,23 +189,56 @@ class RunCreateParams < OpenAI::Internal::Type::BaseModel nil?: true # @!method initialize(assistant_id:, include: nil, additional_instructions: nil, additional_messages: nil, instructions: nil, max_completion_tokens: nil, max_prompt_tokens: nil, metadata: nil, model: nil, parallel_tool_calls: nil, reasoning_effort: nil, response_format: nil, temperature: nil, tool_choice: nil, tools: nil, top_p: nil, truncation_strategy: nil, request_options: {}) - # @param assistant_id [String] - # @param include [Array] - # @param additional_instructions [String, nil] - # @param additional_messages [Array, nil] - # @param instructions [String, nil] - # @param max_completion_tokens [Integer, nil] - # @param max_prompt_tokens [Integer, nil] - # @param metadata [Hash{Symbol=>String}, nil] - # @param model [String, Symbol, OpenAI::Models::ChatModel, nil] - # @param parallel_tool_calls [Boolean] - # @param reasoning_effort [Symbol, OpenAI::Models::ReasoningEffort, nil] - # @param response_format [Symbol, :auto, OpenAI::Models::ResponseFormatText, OpenAI::Models::ResponseFormatJSONObject, OpenAI::Models::ResponseFormatJSONSchema, nil] - # @param temperature [Float, nil] - # @param tool_choice [Symbol, OpenAI::Models::Beta::AssistantToolChoiceOption::Auto, OpenAI::Models::Beta::AssistantToolChoice, nil] - # @param tools [Array, nil] - # @param top_p [Float, nil] - # @param truncation_strategy [OpenAI::Models::Beta::Threads::RunCreateParams::TruncationStrategy, nil] + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::Threads::RunCreateParams} for more details. + # + # @param assistant_id [String] The ID of the [assistant](https://platform.openai.com/docs/api-reference/assista + # ... + # + # @param include [Array] A list of additional fields to include in the response. Currently the only suppo + # ... + # + # @param additional_instructions [String, nil] Appends additional instructions at the end of the instructions for the run. This + # ... + # + # @param additional_messages [Array, nil] Adds additional messages to the thread before creating the run. + # + # @param instructions [String, nil] Overrides the [instructions](https://platform.openai.com/docs/api-reference/assi + # ... + # + # @param max_completion_tokens [Integer, nil] The maximum number of completion tokens that may be used over the course of the + # ... + # + # @param max_prompt_tokens [Integer, nil] The maximum number of prompt tokens that may be used over the course of the run. + # ... + # + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # + # @param model [String, Symbol, OpenAI::Models::ChatModel, nil] The ID of the [Model](https://platform.openai.com/docs/api-reference/models) to + # ... + # + # @param parallel_tool_calls [Boolean] Whether to enable [parallel function calling](https://platform.openai.com/docs/g + # ... + # + # @param reasoning_effort [Symbol, OpenAI::Models::ReasoningEffort, nil] **o-series models only** ... + # + # @param response_format [Symbol, :auto, OpenAI::Models::ResponseFormatText, OpenAI::Models::ResponseFormatJSONObject, OpenAI::Models::ResponseFormatJSONSchema, nil] Specifies the format that the model must output. Compatible with [GPT-4o](https: + # ... + # + # @param temperature [Float, nil] What sampling temperature to use, between 0 and 2. Higher values like 0.8 will m + # ... + # + # @param tool_choice [Symbol, OpenAI::Models::Beta::AssistantToolChoiceOption::Auto, OpenAI::Models::Beta::AssistantToolChoice, nil] Controls which (if any) tool is called by the model. ... + # + # @param tools [Array, nil] Override the tools the assistant can use for this run. This is useful for modify + # ... + # + # @param top_p [Float, nil] An alternative to sampling with temperature, called nucleus sampling, where the + # ... + # + # @param truncation_strategy [OpenAI::Models::Beta::Threads::RunCreateParams::TruncationStrategy, nil] Controls for how a thread will be truncated prior to the run. Use this to contro + # ... + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] class AdditionalMessage < OpenAI::Internal::Type::BaseModel @@ -247,10 +280,17 @@ class AdditionalMessage < OpenAI::Internal::Type::BaseModel optional :metadata, OpenAI::Internal::Type::HashOf[String], nil?: true # @!method initialize(content:, role:, attachments: nil, metadata: nil) - # @param content [String, Array] - # @param role [Symbol, OpenAI::Models::Beta::Threads::RunCreateParams::AdditionalMessage::Role] - # @param attachments [Array, nil] - # @param metadata [Hash{Symbol=>String}, nil] + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::Threads::RunCreateParams::AdditionalMessage} for more + # details. + # + # @param content [String, Array] The text contents of the message. + # + # @param role [Symbol, OpenAI::Models::Beta::Threads::RunCreateParams::AdditionalMessage::Role] The role of the entity that is creating the message. Allowed values include: ... + # + # @param attachments [Array, nil] A list of files attached to the message, and the tools they should be added to. + # + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... # The text contents of the message. # @@ -304,8 +344,9 @@ class Attachment < OpenAI::Internal::Type::BaseModel -> { OpenAI::Internal::Type::ArrayOf[union: OpenAI::Models::Beta::Threads::RunCreateParams::AdditionalMessage::Attachment::Tool] } # @!method initialize(file_id: nil, tools: nil) - # @param file_id [String] - # @param tools [Array] + # @param file_id [String] The ID of the file to attach to the message. + # + # @param tools [Array] The tools to add this file to. module Tool extend OpenAI::Internal::Type::Union @@ -325,7 +366,7 @@ class FileSearch < OpenAI::Internal::Type::BaseModel required :type, const: :file_search # @!method initialize(type: :file_search) - # @param type [Symbol, :file_search] + # @param type [Symbol, :file_search] The type of tool being defined: `file_search` end # @!method self.variants @@ -368,11 +409,18 @@ class TruncationStrategy < OpenAI::Internal::Type::BaseModel optional :last_messages, Integer, nil?: true # @!method initialize(type:, last_messages: nil) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::Threads::RunCreateParams::TruncationStrategy} for more + # details. + # # Controls for how a thread will be truncated prior to the run. Use this to # control the intial context window of the run. # - # @param type [Symbol, OpenAI::Models::Beta::Threads::RunCreateParams::TruncationStrategy::Type] - # @param last_messages [Integer, nil] + # @param type [Symbol, OpenAI::Models::Beta::Threads::RunCreateParams::TruncationStrategy::Type] The truncation strategy to use for the thread. The default is `auto`. If set to + # ... + # + # @param last_messages [Integer, nil] The number of most recent messages from the thread when constructing the context + # ... # The truncation strategy to use for the thread. The default is `auto`. If set to # `last_messages`, the thread will be truncated to the n most recent messages in diff --git a/lib/openai/models/beta/threads/run_list_params.rb b/lib/openai/models/beta/threads/run_list_params.rb index 85e39197..1ef700a7 100644 --- a/lib/openai/models/beta/threads/run_list_params.rb +++ b/lib/openai/models/beta/threads/run_list_params.rb @@ -42,10 +42,21 @@ class RunListParams < OpenAI::Internal::Type::BaseModel optional :order, enum: -> { OpenAI::Models::Beta::Threads::RunListParams::Order } # @!method initialize(after: nil, before: nil, limit: nil, order: nil, request_options: {}) - # @param after [String] - # @param before [String] - # @param limit [Integer] - # @param order [Symbol, OpenAI::Models::Beta::Threads::RunListParams::Order] + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::Threads::RunListParams} for more details. + # + # @param after [String] A cursor for use in pagination. `after` is an object ID that defines your place + # ... + # + # @param before [String] A cursor for use in pagination. `before` is an object ID that defines your place + # ... + # + # @param limit [Integer] A limit on the number of objects to be returned. Limit can range between 1 and 1 + # ... + # + # @param order [Symbol, OpenAI::Models::Beta::Threads::RunListParams::Order] Sort order by the `created_at` timestamp of the objects. `asc` for ascending ord + # ... + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] # Sort order by the `created_at` timestamp of the objects. `asc` for ascending diff --git a/lib/openai/models/beta/threads/run_submit_tool_outputs_params.rb b/lib/openai/models/beta/threads/run_submit_tool_outputs_params.rb index 34faf0fa..3ac75a5c 100644 --- a/lib/openai/models/beta/threads/run_submit_tool_outputs_params.rb +++ b/lib/openai/models/beta/threads/run_submit_tool_outputs_params.rb @@ -25,7 +25,9 @@ class RunSubmitToolOutputsParams < OpenAI::Internal::Type::BaseModel # @!method initialize(thread_id:, tool_outputs:, request_options: {}) # @param thread_id [String] - # @param tool_outputs [Array] + # + # @param tool_outputs [Array] A list of tools for which the outputs are being submitted. + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] class ToolOutput < OpenAI::Internal::Type::BaseModel @@ -43,8 +45,14 @@ class ToolOutput < OpenAI::Internal::Type::BaseModel optional :tool_call_id, String # @!method initialize(output: nil, tool_call_id: nil) - # @param output [String] - # @param tool_call_id [String] + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::Threads::RunSubmitToolOutputsParams::ToolOutput} for more + # details. + # + # @param output [String] The output of the tool call to be submitted to continue the run. + # + # @param tool_call_id [String] The ID of the tool call in the `required_action` object within the run object th + # ... end end end diff --git a/lib/openai/models/beta/threads/run_update_params.rb b/lib/openai/models/beta/threads/run_update_params.rb index 2d418080..6210136c 100644 --- a/lib/openai/models/beta/threads/run_update_params.rb +++ b/lib/openai/models/beta/threads/run_update_params.rb @@ -26,8 +26,13 @@ class RunUpdateParams < OpenAI::Internal::Type::BaseModel optional :metadata, OpenAI::Internal::Type::HashOf[String], nil?: true # @!method initialize(thread_id:, metadata: nil, request_options: {}) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::Threads::RunUpdateParams} for more details. + # # @param thread_id [String] - # @param metadata [Hash{Symbol=>String}, nil] + # + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] end end diff --git a/lib/openai/models/beta/threads/runs/code_interpreter_logs.rb b/lib/openai/models/beta/threads/runs/code_interpreter_logs.rb index ad3f6c66..2abe8916 100644 --- a/lib/openai/models/beta/threads/runs/code_interpreter_logs.rb +++ b/lib/openai/models/beta/threads/runs/code_interpreter_logs.rb @@ -27,9 +27,11 @@ class CodeInterpreterLogs < OpenAI::Internal::Type::BaseModel # @!method initialize(index:, logs: nil, type: :logs) # Text output from the Code Interpreter tool call as part of a run step. # - # @param index [Integer] - # @param logs [String] - # @param type [Symbol, :logs] + # @param index [Integer] The index of the output in the outputs array. + # + # @param logs [String] The text output from the Code Interpreter tool call. + # + # @param type [Symbol, :logs] Always `logs`. end end end diff --git a/lib/openai/models/beta/threads/runs/code_interpreter_output_image.rb b/lib/openai/models/beta/threads/runs/code_interpreter_output_image.rb index 7e0c8ae1..b4458c9c 100644 --- a/lib/openai/models/beta/threads/runs/code_interpreter_output_image.rb +++ b/lib/openai/models/beta/threads/runs/code_interpreter_output_image.rb @@ -24,9 +24,11 @@ class CodeInterpreterOutputImage < OpenAI::Internal::Type::BaseModel optional :image, -> { OpenAI::Models::Beta::Threads::Runs::CodeInterpreterOutputImage::Image } # @!method initialize(index:, image: nil, type: :image) - # @param index [Integer] + # @param index [Integer] The index of the output in the outputs array. + # # @param image [OpenAI::Models::Beta::Threads::Runs::CodeInterpreterOutputImage::Image] - # @param type [Symbol, :image] + # + # @param type [Symbol, :image] Always `image`. # @see OpenAI::Models::Beta::Threads::Runs::CodeInterpreterOutputImage#image class Image < OpenAI::Internal::Type::BaseModel @@ -38,7 +40,12 @@ class Image < OpenAI::Internal::Type::BaseModel optional :file_id, String # @!method initialize(file_id: nil) - # @param file_id [String] + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::Threads::Runs::CodeInterpreterOutputImage::Image} for + # more details. + # + # @param file_id [String] The [file](https://platform.openai.com/docs/api-reference/files) ID of the image + # ... end end end diff --git a/lib/openai/models/beta/threads/runs/code_interpreter_tool_call.rb b/lib/openai/models/beta/threads/runs/code_interpreter_tool_call.rb index 8c7683ea..88f00a99 100644 --- a/lib/openai/models/beta/threads/runs/code_interpreter_tool_call.rb +++ b/lib/openai/models/beta/threads/runs/code_interpreter_tool_call.rb @@ -27,11 +27,17 @@ class CodeInterpreterToolCall < OpenAI::Internal::Type::BaseModel required :type, const: :code_interpreter # @!method initialize(id:, code_interpreter:, type: :code_interpreter) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::Threads::Runs::CodeInterpreterToolCall} for more details. + # # Details of the Code Interpreter tool call the run step was involved in. # - # @param id [String] - # @param code_interpreter [OpenAI::Models::Beta::Threads::Runs::CodeInterpreterToolCall::CodeInterpreter] - # @param type [Symbol, :code_interpreter] + # @param id [String] The ID of the tool call. + # + # @param code_interpreter [OpenAI::Models::Beta::Threads::Runs::CodeInterpreterToolCall::CodeInterpreter] The Code Interpreter tool call definition. + # + # @param type [Symbol, :code_interpreter] The type of tool call. This is always going to be `code_interpreter` for this ty + # ... # @see OpenAI::Models::Beta::Threads::Runs::CodeInterpreterToolCall#code_interpreter class CodeInterpreter < OpenAI::Internal::Type::BaseModel @@ -51,10 +57,16 @@ class CodeInterpreter < OpenAI::Internal::Type::BaseModel -> { OpenAI::Internal::Type::ArrayOf[union: OpenAI::Models::Beta::Threads::Runs::CodeInterpreterToolCall::CodeInterpreter::Output] } # @!method initialize(input:, outputs:) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::Threads::Runs::CodeInterpreterToolCall::CodeInterpreter} + # for more details. + # # The Code Interpreter tool call definition. # - # @param input [String] - # @param outputs [Array] + # @param input [String] The input to the Code Interpreter tool call. + # + # @param outputs [Array] The outputs from the Code Interpreter tool call. Code Interpreter can output one + # ... # Text output from the Code Interpreter tool call as part of a run step. module Output @@ -85,8 +97,9 @@ class Logs < OpenAI::Internal::Type::BaseModel # @!method initialize(logs:, type: :logs) # Text output from the Code Interpreter tool call as part of a run step. # - # @param logs [String] - # @param type [Symbol, :logs] + # @param logs [String] The text output from the Code Interpreter tool call. + # + # @param type [Symbol, :logs] Always `logs`. end class Image < OpenAI::Internal::Type::BaseModel @@ -104,7 +117,8 @@ class Image < OpenAI::Internal::Type::BaseModel # @!method initialize(image:, type: :image) # @param image [OpenAI::Models::Beta::Threads::Runs::CodeInterpreterToolCall::CodeInterpreter::Output::Image::Image] - # @param type [Symbol, :image] + # + # @param type [Symbol, :image] Always `image`. # @see OpenAI::Models::Beta::Threads::Runs::CodeInterpreterToolCall::CodeInterpreter::Output::Image#image class Image < OpenAI::Internal::Type::BaseModel @@ -116,7 +130,12 @@ class Image < OpenAI::Internal::Type::BaseModel required :file_id, String # @!method initialize(file_id:) - # @param file_id [String] + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::Threads::Runs::CodeInterpreterToolCall::CodeInterpreter::Output::Image::Image} + # for more details. + # + # @param file_id [String] The [file](https://platform.openai.com/docs/api-reference/files) ID of the image + # ... end end diff --git a/lib/openai/models/beta/threads/runs/code_interpreter_tool_call_delta.rb b/lib/openai/models/beta/threads/runs/code_interpreter_tool_call_delta.rb index 84e66baf..204d059b 100644 --- a/lib/openai/models/beta/threads/runs/code_interpreter_tool_call_delta.rb +++ b/lib/openai/models/beta/threads/runs/code_interpreter_tool_call_delta.rb @@ -33,12 +33,20 @@ class CodeInterpreterToolCallDelta < OpenAI::Internal::Type::BaseModel -> { OpenAI::Models::Beta::Threads::Runs::CodeInterpreterToolCallDelta::CodeInterpreter } # @!method initialize(index:, id: nil, code_interpreter: nil, type: :code_interpreter) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::Threads::Runs::CodeInterpreterToolCallDelta} for more + # details. + # # Details of the Code Interpreter tool call the run step was involved in. # - # @param index [Integer] - # @param id [String] - # @param code_interpreter [OpenAI::Models::Beta::Threads::Runs::CodeInterpreterToolCallDelta::CodeInterpreter] - # @param type [Symbol, :code_interpreter] + # @param index [Integer] The index of the tool call in the tool calls array. + # + # @param id [String] The ID of the tool call. + # + # @param code_interpreter [OpenAI::Models::Beta::Threads::Runs::CodeInterpreterToolCallDelta::CodeInterpreter] The Code Interpreter tool call definition. + # + # @param type [Symbol, :code_interpreter] The type of tool call. This is always going to be `code_interpreter` for this ty + # ... # @see OpenAI::Models::Beta::Threads::Runs::CodeInterpreterToolCallDelta#code_interpreter class CodeInterpreter < OpenAI::Internal::Type::BaseModel @@ -58,10 +66,16 @@ class CodeInterpreter < OpenAI::Internal::Type::BaseModel -> { OpenAI::Internal::Type::ArrayOf[union: OpenAI::Models::Beta::Threads::Runs::CodeInterpreterToolCallDelta::CodeInterpreter::Output] } # @!method initialize(input: nil, outputs: nil) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::Threads::Runs::CodeInterpreterToolCallDelta::CodeInterpreter} + # for more details. + # # The Code Interpreter tool call definition. # - # @param input [String] - # @param outputs [Array] + # @param input [String] The input to the Code Interpreter tool call. + # + # @param outputs [Array] The outputs from the Code Interpreter tool call. Code Interpreter can output one + # ... # Text output from the Code Interpreter tool call as part of a run step. module Output diff --git a/lib/openai/models/beta/threads/runs/file_search_tool_call.rb b/lib/openai/models/beta/threads/runs/file_search_tool_call.rb index f42b150c..d6149f24 100644 --- a/lib/openai/models/beta/threads/runs/file_search_tool_call.rb +++ b/lib/openai/models/beta/threads/runs/file_search_tool_call.rb @@ -26,9 +26,15 @@ class FileSearchToolCall < OpenAI::Internal::Type::BaseModel required :type, const: :file_search # @!method initialize(id:, file_search:, type: :file_search) - # @param id [String] - # @param file_search [OpenAI::Models::Beta::Threads::Runs::FileSearchToolCall::FileSearch] - # @param type [Symbol, :file_search] + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::Threads::Runs::FileSearchToolCall} for more details. + # + # @param id [String] The ID of the tool call object. + # + # @param file_search [OpenAI::Models::Beta::Threads::Runs::FileSearchToolCall::FileSearch] For now, this is always going to be an empty object. + # + # @param type [Symbol, :file_search] The type of tool call. This is always going to be `file_search` for this type of + # ... # @see OpenAI::Models::Beta::Threads::Runs::FileSearchToolCall#file_search class FileSearch < OpenAI::Internal::Type::BaseModel @@ -49,8 +55,9 @@ class FileSearch < OpenAI::Internal::Type::BaseModel # @!method initialize(ranking_options: nil, results: nil) # For now, this is always going to be an empty object. # - # @param ranking_options [OpenAI::Models::Beta::Threads::Runs::FileSearchToolCall::FileSearch::RankingOptions] - # @param results [Array] + # @param ranking_options [OpenAI::Models::Beta::Threads::Runs::FileSearchToolCall::FileSearch::RankingOptions] The ranking options for the file search. + # + # @param results [Array] The results of the file search. # @see OpenAI::Models::Beta::Threads::Runs::FileSearchToolCall::FileSearch#ranking_options class RankingOptions < OpenAI::Internal::Type::BaseModel @@ -70,10 +77,17 @@ class RankingOptions < OpenAI::Internal::Type::BaseModel required :score_threshold, Float # @!method initialize(ranker:, score_threshold:) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::Threads::Runs::FileSearchToolCall::FileSearch::RankingOptions} + # for more details. + # # The ranking options for the file search. # - # @param ranker [Symbol, OpenAI::Models::Beta::Threads::Runs::FileSearchToolCall::FileSearch::RankingOptions::Ranker] - # @param score_threshold [Float] + # @param ranker [Symbol, OpenAI::Models::Beta::Threads::Runs::FileSearchToolCall::FileSearch::RankingOptions::Ranker] The ranker to use for the file search. If not specified will use the `auto` rank + # ... + # + # @param score_threshold [Float] The score threshold for the file search. All values must be a floating point num + # ... # The ranker to use for the file search. If not specified will use the `auto` # ranker. @@ -119,12 +133,21 @@ class Result < OpenAI::Internal::Type::BaseModel -> { OpenAI::Internal::Type::ArrayOf[OpenAI::Models::Beta::Threads::Runs::FileSearchToolCall::FileSearch::Result::Content] } # @!method initialize(file_id:, file_name:, score:, content: nil) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::Threads::Runs::FileSearchToolCall::FileSearch::Result} + # for more details. + # # A result instance of the file search. # - # @param file_id [String] - # @param file_name [String] - # @param score [Float] - # @param content [Array] + # @param file_id [String] The ID of the file that result was found in. + # + # @param file_name [String] The name of the file that result was found in. + # + # @param score [Float] The score of the result. All values must be a floating point number between 0 an + # ... + # + # @param content [Array] The content of the result that was found. The content is only included if reques + # ... class Content < OpenAI::Internal::Type::BaseModel # @!attribute text @@ -141,8 +164,9 @@ class Content < OpenAI::Internal::Type::BaseModel enum: -> { OpenAI::Models::Beta::Threads::Runs::FileSearchToolCall::FileSearch::Result::Content::Type } # @!method initialize(text: nil, type: nil) - # @param text [String] - # @param type [Symbol, OpenAI::Models::Beta::Threads::Runs::FileSearchToolCall::FileSearch::Result::Content::Type] + # @param text [String] The text content of the file. + # + # @param type [Symbol, OpenAI::Models::Beta::Threads::Runs::FileSearchToolCall::FileSearch::Result::Content::Type] The type of the content. # The type of the content. # diff --git a/lib/openai/models/beta/threads/runs/file_search_tool_call_delta.rb b/lib/openai/models/beta/threads/runs/file_search_tool_call_delta.rb index 31b50baf..de1c0704 100644 --- a/lib/openai/models/beta/threads/runs/file_search_tool_call_delta.rb +++ b/lib/openai/models/beta/threads/runs/file_search_tool_call_delta.rb @@ -32,10 +32,17 @@ class FileSearchToolCallDelta < OpenAI::Internal::Type::BaseModel optional :id, String # @!method initialize(file_search:, index:, id: nil, type: :file_search) - # @param file_search [Object] - # @param index [Integer] - # @param id [String] - # @param type [Symbol, :file_search] + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::Threads::Runs::FileSearchToolCallDelta} for more details. + # + # @param file_search [Object] For now, this is always going to be an empty object. + # + # @param index [Integer] The index of the tool call in the tool calls array. + # + # @param id [String] The ID of the tool call object. + # + # @param type [Symbol, :file_search] The type of tool call. This is always going to be `file_search` for this type of + # ... end end end diff --git a/lib/openai/models/beta/threads/runs/function_tool_call.rb b/lib/openai/models/beta/threads/runs/function_tool_call.rb index eb5ccad9..bb0655e2 100644 --- a/lib/openai/models/beta/threads/runs/function_tool_call.rb +++ b/lib/openai/models/beta/threads/runs/function_tool_call.rb @@ -26,9 +26,15 @@ class FunctionToolCall < OpenAI::Internal::Type::BaseModel required :type, const: :function # @!method initialize(id:, function:, type: :function) - # @param id [String] - # @param function [OpenAI::Models::Beta::Threads::Runs::FunctionToolCall::Function] - # @param type [Symbol, :function] + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::Threads::Runs::FunctionToolCall} for more details. + # + # @param id [String] The ID of the tool call object. + # + # @param function [OpenAI::Models::Beta::Threads::Runs::FunctionToolCall::Function] The definition of the function that was called. + # + # @param type [Symbol, :function] The type of tool call. This is always going to be `function` for this type of to + # ... # @see OpenAI::Models::Beta::Threads::Runs::FunctionToolCall#function class Function < OpenAI::Internal::Type::BaseModel @@ -53,11 +59,18 @@ class Function < OpenAI::Internal::Type::BaseModel required :output, String, nil?: true # @!method initialize(arguments:, name:, output:) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::Threads::Runs::FunctionToolCall::Function} for more + # details. + # # The definition of the function that was called. # - # @param arguments [String] - # @param name [String] - # @param output [String, nil] + # @param arguments [String] The arguments passed to the function. + # + # @param name [String] The name of the function. + # + # @param output [String, nil] The output of the function. This will be `null` if the outputs have not been [su + # ... end end end diff --git a/lib/openai/models/beta/threads/runs/function_tool_call_delta.rb b/lib/openai/models/beta/threads/runs/function_tool_call_delta.rb index c9af620f..62f29656 100644 --- a/lib/openai/models/beta/threads/runs/function_tool_call_delta.rb +++ b/lib/openai/models/beta/threads/runs/function_tool_call_delta.rb @@ -32,10 +32,17 @@ class FunctionToolCallDelta < OpenAI::Internal::Type::BaseModel optional :function, -> { OpenAI::Models::Beta::Threads::Runs::FunctionToolCallDelta::Function } # @!method initialize(index:, id: nil, function: nil, type: :function) - # @param index [Integer] - # @param id [String] - # @param function [OpenAI::Models::Beta::Threads::Runs::FunctionToolCallDelta::Function] - # @param type [Symbol, :function] + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::Threads::Runs::FunctionToolCallDelta} for more details. + # + # @param index [Integer] The index of the tool call in the tool calls array. + # + # @param id [String] The ID of the tool call object. + # + # @param function [OpenAI::Models::Beta::Threads::Runs::FunctionToolCallDelta::Function] The definition of the function that was called. + # + # @param type [Symbol, :function] The type of tool call. This is always going to be `function` for this type of to + # ... # @see OpenAI::Models::Beta::Threads::Runs::FunctionToolCallDelta#function class Function < OpenAI::Internal::Type::BaseModel @@ -60,11 +67,18 @@ class Function < OpenAI::Internal::Type::BaseModel optional :output, String, nil?: true # @!method initialize(arguments: nil, name: nil, output: nil) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::Threads::Runs::FunctionToolCallDelta::Function} for more + # details. + # # The definition of the function that was called. # - # @param arguments [String] - # @param name [String] - # @param output [String, nil] + # @param arguments [String] The arguments passed to the function. + # + # @param name [String] The name of the function. + # + # @param output [String, nil] The output of the function. This will be `null` if the outputs have not been [su + # ... end end end diff --git a/lib/openai/models/beta/threads/runs/message_creation_step_details.rb b/lib/openai/models/beta/threads/runs/message_creation_step_details.rb index 575eb64f..727d980b 100644 --- a/lib/openai/models/beta/threads/runs/message_creation_step_details.rb +++ b/lib/openai/models/beta/threads/runs/message_creation_step_details.rb @@ -22,7 +22,8 @@ class MessageCreationStepDetails < OpenAI::Internal::Type::BaseModel # Details of the message creation by the run step. # # @param message_creation [OpenAI::Models::Beta::Threads::Runs::MessageCreationStepDetails::MessageCreation] - # @param type [Symbol, :message_creation] + # + # @param type [Symbol, :message_creation] Always `message_creation`. # @see OpenAI::Models::Beta::Threads::Runs::MessageCreationStepDetails#message_creation class MessageCreation < OpenAI::Internal::Type::BaseModel @@ -33,7 +34,7 @@ class MessageCreation < OpenAI::Internal::Type::BaseModel required :message_id, String # @!method initialize(message_id:) - # @param message_id [String] + # @param message_id [String] The ID of the message that was created by this run step. end end end diff --git a/lib/openai/models/beta/threads/runs/run_step.rb b/lib/openai/models/beta/threads/runs/run_step.rb index d4fe0c67..c5076851 100644 --- a/lib/openai/models/beta/threads/runs/run_step.rb +++ b/lib/openai/models/beta/threads/runs/run_step.rb @@ -117,24 +117,49 @@ class RunStep < OpenAI::Internal::Type::BaseModel required :usage, -> { OpenAI::Models::Beta::Threads::Runs::RunStep::Usage }, nil?: true # @!method initialize(id:, assistant_id:, cancelled_at:, completed_at:, created_at:, expired_at:, failed_at:, last_error:, metadata:, run_id:, status:, step_details:, thread_id:, type:, usage:, object: :"thread.run.step") + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::Threads::Runs::RunStep} for more details. + # # Represents a step in execution of a run. # - # @param id [String] - # @param assistant_id [String] - # @param cancelled_at [Integer, nil] - # @param completed_at [Integer, nil] - # @param created_at [Integer] - # @param expired_at [Integer, nil] - # @param failed_at [Integer, nil] - # @param last_error [OpenAI::Models::Beta::Threads::Runs::RunStep::LastError, nil] - # @param metadata [Hash{Symbol=>String}, nil] - # @param run_id [String] - # @param status [Symbol, OpenAI::Models::Beta::Threads::Runs::RunStep::Status] - # @param step_details [OpenAI::Models::Beta::Threads::Runs::MessageCreationStepDetails, OpenAI::Models::Beta::Threads::Runs::ToolCallsStepDetails] - # @param thread_id [String] - # @param type [Symbol, OpenAI::Models::Beta::Threads::Runs::RunStep::Type] - # @param usage [OpenAI::Models::Beta::Threads::Runs::RunStep::Usage, nil] - # @param object [Symbol, :"thread.run.step"] + # @param id [String] The identifier of the run step, which can be referenced in API endpoints. + # + # @param assistant_id [String] The ID of the [assistant](https://platform.openai.com/docs/api-reference/assista + # ... + # + # @param cancelled_at [Integer, nil] The Unix timestamp (in seconds) for when the run step was cancelled. + # + # @param completed_at [Integer, nil] The Unix timestamp (in seconds) for when the run step completed. + # + # @param created_at [Integer] The Unix timestamp (in seconds) for when the run step was created. + # + # @param expired_at [Integer, nil] The Unix timestamp (in seconds) for when the run step expired. A step is conside + # ... + # + # @param failed_at [Integer, nil] The Unix timestamp (in seconds) for when the run step failed. + # + # @param last_error [OpenAI::Models::Beta::Threads::Runs::RunStep::LastError, nil] The last error associated with this run step. Will be `null` if there are no err + # ... + # + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # + # @param run_id [String] The ID of the [run](https://platform.openai.com/docs/api-reference/runs) that th + # ... + # + # @param status [Symbol, OpenAI::Models::Beta::Threads::Runs::RunStep::Status] The status of the run step, which can be either `in_progress`, `cancelled`, `fai + # ... + # + # @param step_details [OpenAI::Models::Beta::Threads::Runs::MessageCreationStepDetails, OpenAI::Models::Beta::Threads::Runs::ToolCallsStepDetails] The details of the run step. + # + # @param thread_id [String] The ID of the [thread](https://platform.openai.com/docs/api-reference/threads) t + # ... + # + # @param type [Symbol, OpenAI::Models::Beta::Threads::Runs::RunStep::Type] The type of run step, which can be either `message_creation` or `tool_calls`. + # + # @param usage [OpenAI::Models::Beta::Threads::Runs::RunStep::Usage, nil] Usage statistics related to the run step. This value will be `null` while the ru + # ... + # + # @param object [Symbol, :"thread.run.step"] The object type, which is always `thread.run.step`. # @see OpenAI::Models::Beta::Threads::Runs::RunStep#last_error class LastError < OpenAI::Internal::Type::BaseModel @@ -154,8 +179,9 @@ class LastError < OpenAI::Internal::Type::BaseModel # The last error associated with this run step. Will be `null` if there are no # errors. # - # @param code [Symbol, OpenAI::Models::Beta::Threads::Runs::RunStep::LastError::Code] - # @param message [String] + # @param code [Symbol, OpenAI::Models::Beta::Threads::Runs::RunStep::LastError::Code] One of `server_error` or `rate_limit_exceeded`. + # + # @param message [String] A human-readable description of the error. # One of `server_error` or `rate_limit_exceeded`. # @@ -243,9 +269,11 @@ class Usage < OpenAI::Internal::Type::BaseModel # Usage statistics related to the run step. This value will be `null` while the # run step's status is `in_progress`. # - # @param completion_tokens [Integer] - # @param prompt_tokens [Integer] - # @param total_tokens [Integer] + # @param completion_tokens [Integer] Number of completion tokens used over the course of the run step. + # + # @param prompt_tokens [Integer] Number of prompt tokens used over the course of the run step. + # + # @param total_tokens [Integer] Total number of tokens used (prompt + completion). end end end diff --git a/lib/openai/models/beta/threads/runs/run_step_delta.rb b/lib/openai/models/beta/threads/runs/run_step_delta.rb index ec46591a..2a53c523 100644 --- a/lib/openai/models/beta/threads/runs/run_step_delta.rb +++ b/lib/openai/models/beta/threads/runs/run_step_delta.rb @@ -15,7 +15,7 @@ class RunStepDelta < OpenAI::Internal::Type::BaseModel # @!method initialize(step_details: nil) # The delta containing the fields that have changed on the run step. # - # @param step_details [OpenAI::Models::Beta::Threads::Runs::RunStepDeltaMessageDelta, OpenAI::Models::Beta::Threads::Runs::ToolCallDeltaObject] + # @param step_details [OpenAI::Models::Beta::Threads::Runs::RunStepDeltaMessageDelta, OpenAI::Models::Beta::Threads::Runs::ToolCallDeltaObject] The details of the run step. # The details of the run step. # diff --git a/lib/openai/models/beta/threads/runs/run_step_delta_event.rb b/lib/openai/models/beta/threads/runs/run_step_delta_event.rb index 4d83e30e..f5c81ffe 100644 --- a/lib/openai/models/beta/threads/runs/run_step_delta_event.rb +++ b/lib/openai/models/beta/threads/runs/run_step_delta_event.rb @@ -28,9 +28,11 @@ class RunStepDeltaEvent < OpenAI::Internal::Type::BaseModel # Represents a run step delta i.e. any changed fields on a run step during # streaming. # - # @param id [String] - # @param delta [OpenAI::Models::Beta::Threads::Runs::RunStepDelta] - # @param object [Symbol, :"thread.run.step.delta"] + # @param id [String] The identifier of the run step, which can be referenced in API endpoints. + # + # @param delta [OpenAI::Models::Beta::Threads::Runs::RunStepDelta] The delta containing the fields that have changed on the run step. + # + # @param object [Symbol, :"thread.run.step.delta"] The object type, which is always `thread.run.step.delta`. end end diff --git a/lib/openai/models/beta/threads/runs/run_step_delta_message_delta.rb b/lib/openai/models/beta/threads/runs/run_step_delta_message_delta.rb index 4335b875..85fdad6f 100644 --- a/lib/openai/models/beta/threads/runs/run_step_delta_message_delta.rb +++ b/lib/openai/models/beta/threads/runs/run_step_delta_message_delta.rb @@ -22,7 +22,8 @@ class RunStepDeltaMessageDelta < OpenAI::Internal::Type::BaseModel # Details of the message creation by the run step. # # @param message_creation [OpenAI::Models::Beta::Threads::Runs::RunStepDeltaMessageDelta::MessageCreation] - # @param type [Symbol, :message_creation] + # + # @param type [Symbol, :message_creation] Always `message_creation`. # @see OpenAI::Models::Beta::Threads::Runs::RunStepDeltaMessageDelta#message_creation class MessageCreation < OpenAI::Internal::Type::BaseModel @@ -33,7 +34,7 @@ class MessageCreation < OpenAI::Internal::Type::BaseModel optional :message_id, String # @!method initialize(message_id: nil) - # @param message_id [String] + # @param message_id [String] The ID of the message that was created by this run step. end end end diff --git a/lib/openai/models/beta/threads/runs/step_list_params.rb b/lib/openai/models/beta/threads/runs/step_list_params.rb index 75b02311..2bcb9cb5 100644 --- a/lib/openai/models/beta/threads/runs/step_list_params.rb +++ b/lib/openai/models/beta/threads/runs/step_list_params.rb @@ -61,12 +61,26 @@ class StepListParams < OpenAI::Internal::Type::BaseModel optional :order, enum: -> { OpenAI::Models::Beta::Threads::Runs::StepListParams::Order } # @!method initialize(thread_id:, after: nil, before: nil, include: nil, limit: nil, order: nil, request_options: {}) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::Threads::Runs::StepListParams} for more details. + # # @param thread_id [String] - # @param after [String] - # @param before [String] - # @param include [Array] - # @param limit [Integer] - # @param order [Symbol, OpenAI::Models::Beta::Threads::Runs::StepListParams::Order] + # + # @param after [String] A cursor for use in pagination. `after` is an object ID that defines your place + # ... + # + # @param before [String] A cursor for use in pagination. `before` is an object ID that defines your place + # ... + # + # @param include [Array] A list of additional fields to include in the response. Currently the only suppo + # ... + # + # @param limit [Integer] A limit on the number of objects to be returned. Limit can range between 1 and 1 + # ... + # + # @param order [Symbol, OpenAI::Models::Beta::Threads::Runs::StepListParams::Order] Sort order by the `created_at` timestamp of the objects. `asc` for ascending ord + # ... + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] # Sort order by the `created_at` timestamp of the objects. `asc` for ascending diff --git a/lib/openai/models/beta/threads/runs/step_retrieve_params.rb b/lib/openai/models/beta/threads/runs/step_retrieve_params.rb index 00db2d8a..4a2c095e 100644 --- a/lib/openai/models/beta/threads/runs/step_retrieve_params.rb +++ b/lib/openai/models/beta/threads/runs/step_retrieve_params.rb @@ -34,9 +34,16 @@ class StepRetrieveParams < OpenAI::Internal::Type::BaseModel -> { OpenAI::Internal::Type::ArrayOf[enum: OpenAI::Models::Beta::Threads::Runs::RunStepInclude] } # @!method initialize(thread_id:, run_id:, include: nil, request_options: {}) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::Threads::Runs::StepRetrieveParams} for more details. + # # @param thread_id [String] + # # @param run_id [String] - # @param include [Array] + # + # @param include [Array] A list of additional fields to include in the response. Currently the only suppo + # ... + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] end end diff --git a/lib/openai/models/beta/threads/runs/tool_call_delta_object.rb b/lib/openai/models/beta/threads/runs/tool_call_delta_object.rb index 417a924a..51c5d074 100644 --- a/lib/openai/models/beta/threads/runs/tool_call_delta_object.rb +++ b/lib/openai/models/beta/threads/runs/tool_call_delta_object.rb @@ -22,10 +22,15 @@ class ToolCallDeltaObject < OpenAI::Internal::Type::BaseModel -> { OpenAI::Internal::Type::ArrayOf[union: OpenAI::Models::Beta::Threads::Runs::ToolCallDelta] } # @!method initialize(tool_calls: nil, type: :tool_calls) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::Threads::Runs::ToolCallDeltaObject} for more details. + # # Details of the tool call. # - # @param tool_calls [Array] - # @param type [Symbol, :tool_calls] + # @param tool_calls [Array] An array of tool calls the run step was involved in. These can be associated wit + # ... + # + # @param type [Symbol, :tool_calls] Always `tool_calls`. end end end diff --git a/lib/openai/models/beta/threads/runs/tool_calls_step_details.rb b/lib/openai/models/beta/threads/runs/tool_calls_step_details.rb index 08393ac6..3a8800d6 100644 --- a/lib/openai/models/beta/threads/runs/tool_calls_step_details.rb +++ b/lib/openai/models/beta/threads/runs/tool_calls_step_details.rb @@ -22,10 +22,15 @@ class ToolCallsStepDetails < OpenAI::Internal::Type::BaseModel required :type, const: :tool_calls # @!method initialize(tool_calls:, type: :tool_calls) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::Threads::Runs::ToolCallsStepDetails} for more details. + # # Details of the tool call. # - # @param tool_calls [Array] - # @param type [Symbol, :tool_calls] + # @param tool_calls [Array] An array of tool calls the run step was involved in. These can be associated wit + # ... + # + # @param type [Symbol, :tool_calls] Always `tool_calls`. end end end diff --git a/lib/openai/models/beta/threads/text.rb b/lib/openai/models/beta/threads/text.rb index aa0282e1..8c5eb9f0 100644 --- a/lib/openai/models/beta/threads/text.rb +++ b/lib/openai/models/beta/threads/text.rb @@ -19,7 +19,8 @@ class Text < OpenAI::Internal::Type::BaseModel # @!method initialize(annotations:, value:) # @param annotations [Array] - # @param value [String] + # + # @param value [String] The data that makes up the text. end end end diff --git a/lib/openai/models/beta/threads/text_content_block.rb b/lib/openai/models/beta/threads/text_content_block.rb index 7d8eb24b..9f61e404 100644 --- a/lib/openai/models/beta/threads/text_content_block.rb +++ b/lib/openai/models/beta/threads/text_content_block.rb @@ -20,7 +20,8 @@ class TextContentBlock < OpenAI::Internal::Type::BaseModel # The text content that is part of a message. # # @param text [OpenAI::Models::Beta::Threads::Text] - # @param type [Symbol, :text] + # + # @param type [Symbol, :text] Always `text`. end end end diff --git a/lib/openai/models/beta/threads/text_content_block_param.rb b/lib/openai/models/beta/threads/text_content_block_param.rb index 26880392..89ff6435 100644 --- a/lib/openai/models/beta/threads/text_content_block_param.rb +++ b/lib/openai/models/beta/threads/text_content_block_param.rb @@ -20,8 +20,9 @@ class TextContentBlockParam < OpenAI::Internal::Type::BaseModel # @!method initialize(text:, type: :text) # The text content that is part of a message. # - # @param text [String] - # @param type [Symbol, :text] + # @param text [String] Text content to be sent to the model + # + # @param type [Symbol, :text] Always `text`. end end end diff --git a/lib/openai/models/beta/threads/text_delta.rb b/lib/openai/models/beta/threads/text_delta.rb index 2d767df4..20b88879 100644 --- a/lib/openai/models/beta/threads/text_delta.rb +++ b/lib/openai/models/beta/threads/text_delta.rb @@ -19,7 +19,8 @@ class TextDelta < OpenAI::Internal::Type::BaseModel # @!method initialize(annotations: nil, value: nil) # @param annotations [Array] - # @param value [String] + # + # @param value [String] The data that makes up the text. end end end diff --git a/lib/openai/models/beta/threads/text_delta_block.rb b/lib/openai/models/beta/threads/text_delta_block.rb index 7191d790..c0172733 100644 --- a/lib/openai/models/beta/threads/text_delta_block.rb +++ b/lib/openai/models/beta/threads/text_delta_block.rb @@ -25,9 +25,11 @@ class TextDeltaBlock < OpenAI::Internal::Type::BaseModel # @!method initialize(index:, text: nil, type: :text) # The text content that is part of a message. # - # @param index [Integer] + # @param index [Integer] The index of the content part in the message. + # # @param text [OpenAI::Models::Beta::Threads::TextDelta] - # @param type [Symbol, :text] + # + # @param type [Symbol, :text] Always `text`. end end end diff --git a/lib/openai/models/chat/chat_completion.rb b/lib/openai/models/chat/chat_completion.rb index 2e58ff3d..15613a18 100644 --- a/lib/openai/models/chat/chat_completion.rb +++ b/lib/openai/models/chat/chat_completion.rb @@ -76,17 +76,30 @@ class ChatCompletion < OpenAI::Internal::Type::BaseModel optional :usage, -> { OpenAI::Models::CompletionUsage } # @!method initialize(id:, choices:, created:, model:, service_tier: nil, system_fingerprint: nil, usage: nil, object: :"chat.completion") + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Chat::ChatCompletion} for more details. + # # Represents a chat completion response returned by model, based on the provided # input. # - # @param id [String] - # @param choices [Array] - # @param created [Integer] - # @param model [String] - # @param service_tier [Symbol, OpenAI::Models::Chat::ChatCompletion::ServiceTier, nil] - # @param system_fingerprint [String] - # @param usage [OpenAI::Models::CompletionUsage] - # @param object [Symbol, :"chat.completion"] + # @param id [String] A unique identifier for the chat completion. + # + # @param choices [Array] A list of chat completion choices. Can be more than one if `n` is greater than 1 + # ... + # + # @param created [Integer] The Unix timestamp (in seconds) of when the chat completion was created. + # + # @param model [String] The model used for the chat completion. + # + # @param service_tier [Symbol, OpenAI::Models::Chat::ChatCompletion::ServiceTier, nil] Specifies the latency tier to use for processing the request. This parameter is + # ... + # + # @param system_fingerprint [String] This fingerprint represents the backend configuration that the model runs with. + # ... + # + # @param usage [OpenAI::Models::CompletionUsage] Usage statistics for the completion request. + # + # @param object [Symbol, :"chat.completion"] The object type, which is always `chat.completion`. class Choice < OpenAI::Internal::Type::BaseModel # @!attribute finish_reason @@ -119,10 +132,17 @@ class Choice < OpenAI::Internal::Type::BaseModel required :message, -> { OpenAI::Models::Chat::ChatCompletionMessage } # @!method initialize(finish_reason:, index:, logprobs:, message:) - # @param finish_reason [Symbol, OpenAI::Models::Chat::ChatCompletion::Choice::FinishReason] - # @param index [Integer] - # @param logprobs [OpenAI::Models::Chat::ChatCompletion::Choice::Logprobs, nil] - # @param message [OpenAI::Models::Chat::ChatCompletionMessage] + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Chat::ChatCompletion::Choice} for more details. + # + # @param finish_reason [Symbol, OpenAI::Models::Chat::ChatCompletion::Choice::FinishReason] The reason the model stopped generating tokens. This will be `stop` if the model + # ... + # + # @param index [Integer] The index of the choice in the list of choices. + # + # @param logprobs [OpenAI::Models::Chat::ChatCompletion::Choice::Logprobs, nil] Log probability information for the choice. + # + # @param message [OpenAI::Models::Chat::ChatCompletionMessage] A chat completion message generated by the model. # The reason the model stopped generating tokens. This will be `stop` if the model # hit a natural stop point or a provided stop sequence, `length` if the maximum @@ -166,8 +186,9 @@ class Logprobs < OpenAI::Internal::Type::BaseModel # @!method initialize(content:, refusal:) # Log probability information for the choice. # - # @param content [Array, nil] - # @param refusal [Array, nil] + # @param content [Array, nil] A list of message content tokens with log probability information. + # + # @param refusal [Array, nil] A list of message refusal tokens with log probability information. end end diff --git a/lib/openai/models/chat/chat_completion_assistant_message_param.rb b/lib/openai/models/chat/chat_completion_assistant_message_param.rb index a139420e..f5bc27e0 100644 --- a/lib/openai/models/chat/chat_completion_assistant_message_param.rb +++ b/lib/openai/models/chat/chat_completion_assistant_message_param.rb @@ -58,15 +58,27 @@ class ChatCompletionAssistantMessageParam < OpenAI::Internal::Type::BaseModel -> { OpenAI::Internal::Type::ArrayOf[OpenAI::Models::Chat::ChatCompletionMessageToolCall] } # @!method initialize(audio: nil, content: nil, function_call: nil, name: nil, refusal: nil, tool_calls: nil, role: :assistant) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Chat::ChatCompletionAssistantMessageParam} for more details. + # # Messages sent by the model in response to user messages. # - # @param audio [OpenAI::Models::Chat::ChatCompletionAssistantMessageParam::Audio, nil] - # @param content [String, Array, nil] - # @param function_call [OpenAI::Models::Chat::ChatCompletionAssistantMessageParam::FunctionCall, nil] - # @param name [String] - # @param refusal [String, nil] - # @param tool_calls [Array] - # @param role [Symbol, :assistant] + # @param audio [OpenAI::Models::Chat::ChatCompletionAssistantMessageParam::Audio, nil] Data about a previous audio response from the model. ... + # + # @param content [String, Array, nil] The contents of the assistant message. Required unless `tool_calls` or `function + # ... + # + # @param function_call [OpenAI::Models::Chat::ChatCompletionAssistantMessageParam::FunctionCall, nil] Deprecated and replaced by `tool_calls`. The name and arguments of a function th + # ... + # + # @param name [String] An optional name for the participant. Provides the model information to differen + # ... + # + # @param refusal [String, nil] The refusal message by the assistant. + # + # @param tool_calls [Array] The tool calls generated by the model, such as function calls. + # + # @param role [Symbol, :assistant] The role of the messages author, in this case `assistant`. # @see OpenAI::Models::Chat::ChatCompletionAssistantMessageParam#audio class Audio < OpenAI::Internal::Type::BaseModel @@ -77,10 +89,14 @@ class Audio < OpenAI::Internal::Type::BaseModel required :id, String # @!method initialize(id:) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Chat::ChatCompletionAssistantMessageParam::Audio} for more + # details. + # # Data about a previous audio response from the model. # [Learn more](https://platform.openai.com/docs/guides/audio). # - # @param id [String] + # @param id [String] Unique identifier for a previous audio response from the model. ... end # The contents of the assistant message. Required unless `tool_calls` or @@ -139,11 +155,17 @@ class FunctionCall < OpenAI::Internal::Type::BaseModel required :name, String # @!method initialize(arguments:, name:) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Chat::ChatCompletionAssistantMessageParam::FunctionCall} for + # more details. + # # Deprecated and replaced by `tool_calls`. The name and arguments of a function # that should be called, as generated by the model. # - # @param arguments [String] - # @param name [String] + # @param arguments [String] The arguments to call the function with, as generated by the model in JSON forma + # ... + # + # @param name [String] The name of the function to call. end end end diff --git a/lib/openai/models/chat/chat_completion_audio.rb b/lib/openai/models/chat/chat_completion_audio.rb index e56cae38..4ade12b4 100644 --- a/lib/openai/models/chat/chat_completion_audio.rb +++ b/lib/openai/models/chat/chat_completion_audio.rb @@ -31,14 +31,20 @@ class ChatCompletionAudio < OpenAI::Internal::Type::BaseModel required :transcript, String # @!method initialize(id:, data:, expires_at:, transcript:) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Chat::ChatCompletionAudio} for more details. + # # If the audio output modality is requested, this object contains data about the # audio response from the model. # [Learn more](https://platform.openai.com/docs/guides/audio). # - # @param id [String] - # @param data [String] - # @param expires_at [Integer] - # @param transcript [String] + # @param id [String] Unique identifier for this audio response. + # + # @param data [String] Base64 encoded audio bytes generated by the model, in the format ... + # + # @param expires_at [Integer] The Unix timestamp (in seconds) for when this audio response will ... + # + # @param transcript [String] Transcript of the audio generated by the model. end end diff --git a/lib/openai/models/chat/chat_completion_audio_param.rb b/lib/openai/models/chat/chat_completion_audio_param.rb index 3374567d..faff16ff 100644 --- a/lib/openai/models/chat/chat_completion_audio_param.rb +++ b/lib/openai/models/chat/chat_completion_audio_param.rb @@ -19,12 +19,16 @@ class ChatCompletionAudioParam < OpenAI::Internal::Type::BaseModel required :voice, union: -> { OpenAI::Models::Chat::ChatCompletionAudioParam::Voice } # @!method initialize(format_:, voice:) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Chat::ChatCompletionAudioParam} for more details. + # # Parameters for audio output. Required when audio output is requested with # `modalities: ["audio"]`. # [Learn more](https://platform.openai.com/docs/guides/audio). # - # @param format_ [Symbol, OpenAI::Models::Chat::ChatCompletionAudioParam::Format] - # @param voice [String, Symbol, OpenAI::Models::Chat::ChatCompletionAudioParam::Voice] + # @param format_ [Symbol, OpenAI::Models::Chat::ChatCompletionAudioParam::Format] Specifies the output audio format. Must be one of `wav`, `mp3`, `flac`, ... + # + # @param voice [String, Symbol, OpenAI::Models::Chat::ChatCompletionAudioParam::Voice] The voice the model uses to respond. Supported voices are ... # Specifies the output audio format. Must be one of `wav`, `mp3`, `flac`, `opus`, # or `pcm16`. diff --git a/lib/openai/models/chat/chat_completion_chunk.rb b/lib/openai/models/chat/chat_completion_chunk.rb index 05970b9f..e663c989 100644 --- a/lib/openai/models/chat/chat_completion_chunk.rb +++ b/lib/openai/models/chat/chat_completion_chunk.rb @@ -81,18 +81,32 @@ class ChatCompletionChunk < OpenAI::Internal::Type::BaseModel optional :usage, -> { OpenAI::Models::CompletionUsage }, nil?: true # @!method initialize(id:, choices:, created:, model:, service_tier: nil, system_fingerprint: nil, usage: nil, object: :"chat.completion.chunk") + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Chat::ChatCompletionChunk} for more details. + # # Represents a streamed chunk of a chat completion response returned by the model, # based on the provided input. # [Learn more](https://platform.openai.com/docs/guides/streaming-responses). # - # @param id [String] - # @param choices [Array] - # @param created [Integer] - # @param model [String] - # @param service_tier [Symbol, OpenAI::Models::Chat::ChatCompletionChunk::ServiceTier, nil] - # @param system_fingerprint [String] - # @param usage [OpenAI::Models::CompletionUsage, nil] - # @param object [Symbol, :"chat.completion.chunk"] + # @param id [String] A unique identifier for the chat completion. Each chunk has the same ID. + # + # @param choices [Array] A list of chat completion choices. Can contain more than one elements if `n` is + # ... + # + # @param created [Integer] The Unix timestamp (in seconds) of when the chat completion was created. Each ch + # ... + # + # @param model [String] The model to generate the completion. + # + # @param service_tier [Symbol, OpenAI::Models::Chat::ChatCompletionChunk::ServiceTier, nil] Specifies the latency tier to use for processing the request. This parameter is + # ... + # + # @param system_fingerprint [String] This fingerprint represents the backend configuration that the model runs with. + # ... + # + # @param usage [OpenAI::Models::CompletionUsage, nil] An optional field that will only be present when you set ... + # + # @param object [Symbol, :"chat.completion.chunk"] The object type, which is always `chat.completion.chunk`. class Choice < OpenAI::Internal::Type::BaseModel # @!attribute delta @@ -127,10 +141,17 @@ class Choice < OpenAI::Internal::Type::BaseModel optional :logprobs, -> { OpenAI::Models::Chat::ChatCompletionChunk::Choice::Logprobs }, nil?: true # @!method initialize(delta:, finish_reason:, index:, logprobs: nil) - # @param delta [OpenAI::Models::Chat::ChatCompletionChunk::Choice::Delta] - # @param finish_reason [Symbol, OpenAI::Models::Chat::ChatCompletionChunk::Choice::FinishReason, nil] - # @param index [Integer] - # @param logprobs [OpenAI::Models::Chat::ChatCompletionChunk::Choice::Logprobs, nil] + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Chat::ChatCompletionChunk::Choice} for more details. + # + # @param delta [OpenAI::Models::Chat::ChatCompletionChunk::Choice::Delta] A chat completion delta generated by streamed model responses. + # + # @param finish_reason [Symbol, OpenAI::Models::Chat::ChatCompletionChunk::Choice::FinishReason, nil] The reason the model stopped generating tokens. This will be `stop` if the model + # ... + # + # @param index [Integer] The index of the choice in the list of choices. + # + # @param logprobs [OpenAI::Models::Chat::ChatCompletionChunk::Choice::Logprobs, nil] Log probability information for the choice. # @see OpenAI::Models::Chat::ChatCompletionChunk::Choice#delta class Delta < OpenAI::Internal::Type::BaseModel @@ -168,12 +189,20 @@ class Delta < OpenAI::Internal::Type::BaseModel -> { OpenAI::Internal::Type::ArrayOf[OpenAI::Models::Chat::ChatCompletionChunk::Choice::Delta::ToolCall] } # @!method initialize(content: nil, function_call: nil, refusal: nil, role: nil, tool_calls: nil) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Chat::ChatCompletionChunk::Choice::Delta} for more details. + # # A chat completion delta generated by streamed model responses. # - # @param content [String, nil] - # @param function_call [OpenAI::Models::Chat::ChatCompletionChunk::Choice::Delta::FunctionCall] - # @param refusal [String, nil] - # @param role [Symbol, OpenAI::Models::Chat::ChatCompletionChunk::Choice::Delta::Role] + # @param content [String, nil] The contents of the chunk message. + # + # @param function_call [OpenAI::Models::Chat::ChatCompletionChunk::Choice::Delta::FunctionCall] Deprecated and replaced by `tool_calls`. The name and arguments of a function th + # ... + # + # @param refusal [String, nil] The refusal message generated by the model. + # + # @param role [Symbol, OpenAI::Models::Chat::ChatCompletionChunk::Choice::Delta::Role] The role of the author of this message. + # # @param tool_calls [Array] # @deprecated @@ -196,11 +225,17 @@ class FunctionCall < OpenAI::Internal::Type::BaseModel optional :name, String # @!method initialize(arguments: nil, name: nil) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Chat::ChatCompletionChunk::Choice::Delta::FunctionCall} for + # more details. + # # Deprecated and replaced by `tool_calls`. The name and arguments of a function # that should be called, as generated by the model. # - # @param arguments [String] - # @param name [String] + # @param arguments [String] The arguments to call the function with, as generated by the model in JSON forma + # ... + # + # @param name [String] The name of the function to call. end # The role of the author of this message. @@ -244,9 +279,12 @@ class ToolCall < OpenAI::Internal::Type::BaseModel # @!method initialize(index:, id: nil, function: nil, type: nil) # @param index [Integer] - # @param id [String] + # + # @param id [String] The ID of the tool call. + # # @param function [OpenAI::Models::Chat::ChatCompletionChunk::Choice::Delta::ToolCall::Function] - # @param type [Symbol, OpenAI::Models::Chat::ChatCompletionChunk::Choice::Delta::ToolCall::Type] + # + # @param type [Symbol, OpenAI::Models::Chat::ChatCompletionChunk::Choice::Delta::ToolCall::Type] The type of the tool. Currently, only `function` is supported. # @see OpenAI::Models::Chat::ChatCompletionChunk::Choice::Delta::ToolCall#function class Function < OpenAI::Internal::Type::BaseModel @@ -266,8 +304,14 @@ class Function < OpenAI::Internal::Type::BaseModel optional :name, String # @!method initialize(arguments: nil, name: nil) - # @param arguments [String] - # @param name [String] + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Chat::ChatCompletionChunk::Choice::Delta::ToolCall::Function} + # for more details. + # + # @param arguments [String] The arguments to call the function with, as generated by the model in JSON forma + # ... + # + # @param name [String] The name of the function to call. end # The type of the tool. Currently, only `function` is supported. @@ -326,8 +370,9 @@ class Logprobs < OpenAI::Internal::Type::BaseModel # @!method initialize(content:, refusal:) # Log probability information for the choice. # - # @param content [Array, nil] - # @param refusal [Array, nil] + # @param content [Array, nil] A list of message content tokens with log probability information. + # + # @param refusal [Array, nil] A list of message refusal tokens with log probability information. end end diff --git a/lib/openai/models/chat/chat_completion_content_part.rb b/lib/openai/models/chat/chat_completion_content_part.rb index ecfb1d58..b00878ec 100644 --- a/lib/openai/models/chat/chat_completion_content_part.rb +++ b/lib/openai/models/chat/chat_completion_content_part.rb @@ -39,7 +39,8 @@ class File < OpenAI::Internal::Type::BaseModel # generation. # # @param file [OpenAI::Models::Chat::ChatCompletionContentPart::File::File] - # @param type [Symbol, :file] + # + # @param type [Symbol, :file] The type of the content part. Always `file`. # @see OpenAI::Models::Chat::ChatCompletionContentPart::File#file class File < OpenAI::Internal::Type::BaseModel @@ -63,9 +64,14 @@ class File < OpenAI::Internal::Type::BaseModel optional :filename, String # @!method initialize(file_data: nil, file_id: nil, filename: nil) - # @param file_data [String] - # @param file_id [String] - # @param filename [String] + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Chat::ChatCompletionContentPart::File::File} for more details. + # + # @param file_data [String] The base64 encoded file data, used when passing the file to the model ... + # + # @param file_id [String] The ID of an uploaded file to use as input. ... + # + # @param filename [String] The name of the file, used when passing the file to the model as a ... end end diff --git a/lib/openai/models/chat/chat_completion_content_part_image.rb b/lib/openai/models/chat/chat_completion_content_part_image.rb index 06c450d2..69462ff7 100644 --- a/lib/openai/models/chat/chat_completion_content_part_image.rb +++ b/lib/openai/models/chat/chat_completion_content_part_image.rb @@ -19,7 +19,8 @@ class ChatCompletionContentPartImage < OpenAI::Internal::Type::BaseModel # Learn about [image inputs](https://platform.openai.com/docs/guides/vision). # # @param image_url [OpenAI::Models::Chat::ChatCompletionContentPartImage::ImageURL] - # @param type [Symbol, :image_url] + # + # @param type [Symbol, :image_url] The type of the content part. # @see OpenAI::Models::Chat::ChatCompletionContentPartImage#image_url class ImageURL < OpenAI::Internal::Type::BaseModel @@ -37,8 +38,14 @@ class ImageURL < OpenAI::Internal::Type::BaseModel optional :detail, enum: -> { OpenAI::Models::Chat::ChatCompletionContentPartImage::ImageURL::Detail } # @!method initialize(url:, detail: nil) - # @param url [String] - # @param detail [Symbol, OpenAI::Models::Chat::ChatCompletionContentPartImage::ImageURL::Detail] + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Chat::ChatCompletionContentPartImage::ImageURL} for more + # details. + # + # @param url [String] Either a URL of the image or the base64 encoded image data. + # + # @param detail [Symbol, OpenAI::Models::Chat::ChatCompletionContentPartImage::ImageURL::Detail] Specifies the detail level of the image. Learn more in the [Vision guide](https: + # ... # Specifies the detail level of the image. Learn more in the # [Vision guide](https://platform.openai.com/docs/guides/vision#low-or-high-fidelity-image-understanding). diff --git a/lib/openai/models/chat/chat_completion_content_part_input_audio.rb b/lib/openai/models/chat/chat_completion_content_part_input_audio.rb index 9331e125..155990b0 100644 --- a/lib/openai/models/chat/chat_completion_content_part_input_audio.rb +++ b/lib/openai/models/chat/chat_completion_content_part_input_audio.rb @@ -19,7 +19,8 @@ class ChatCompletionContentPartInputAudio < OpenAI::Internal::Type::BaseModel # Learn about [audio inputs](https://platform.openai.com/docs/guides/audio). # # @param input_audio [OpenAI::Models::Chat::ChatCompletionContentPartInputAudio::InputAudio] - # @param type [Symbol, :input_audio] + # + # @param type [Symbol, :input_audio] The type of the content part. Always `input_audio`. # @see OpenAI::Models::Chat::ChatCompletionContentPartInputAudio#input_audio class InputAudio < OpenAI::Internal::Type::BaseModel @@ -38,8 +39,13 @@ class InputAudio < OpenAI::Internal::Type::BaseModel api_name: :format # @!method initialize(data:, format_:) - # @param data [String] - # @param format_ [Symbol, OpenAI::Models::Chat::ChatCompletionContentPartInputAudio::InputAudio::Format] + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Chat::ChatCompletionContentPartInputAudio::InputAudio} for more + # details. + # + # @param data [String] Base64 encoded audio data. + # + # @param format_ [Symbol, OpenAI::Models::Chat::ChatCompletionContentPartInputAudio::InputAudio::Format] The format of the encoded audio data. Currently supports "wav" and "mp3". ... # The format of the encoded audio data. Currently supports "wav" and "mp3". # diff --git a/lib/openai/models/chat/chat_completion_content_part_refusal.rb b/lib/openai/models/chat/chat_completion_content_part_refusal.rb index 9137d008..5f1e561e 100644 --- a/lib/openai/models/chat/chat_completion_content_part_refusal.rb +++ b/lib/openai/models/chat/chat_completion_content_part_refusal.rb @@ -17,8 +17,9 @@ class ChatCompletionContentPartRefusal < OpenAI::Internal::Type::BaseModel required :type, const: :refusal # @!method initialize(refusal:, type: :refusal) - # @param refusal [String] - # @param type [Symbol, :refusal] + # @param refusal [String] The refusal message generated by the model. + # + # @param type [Symbol, :refusal] The type of the content part. end end diff --git a/lib/openai/models/chat/chat_completion_content_part_text.rb b/lib/openai/models/chat/chat_completion_content_part_text.rb index 212467d9..3800b650 100644 --- a/lib/openai/models/chat/chat_completion_content_part_text.rb +++ b/lib/openai/models/chat/chat_completion_content_part_text.rb @@ -20,8 +20,9 @@ class ChatCompletionContentPartText < OpenAI::Internal::Type::BaseModel # Learn about # [text inputs](https://platform.openai.com/docs/guides/text-generation). # - # @param text [String] - # @param type [Symbol, :text] + # @param text [String] The text content. + # + # @param type [Symbol, :text] The type of the content part. end end diff --git a/lib/openai/models/chat/chat_completion_deleted.rb b/lib/openai/models/chat/chat_completion_deleted.rb index a3125c86..2cec245f 100644 --- a/lib/openai/models/chat/chat_completion_deleted.rb +++ b/lib/openai/models/chat/chat_completion_deleted.rb @@ -24,9 +24,11 @@ class ChatCompletionDeleted < OpenAI::Internal::Type::BaseModel required :object, const: :"chat.completion.deleted" # @!method initialize(id:, deleted:, object: :"chat.completion.deleted") - # @param id [String] - # @param deleted [Boolean] - # @param object [Symbol, :"chat.completion.deleted"] + # @param id [String] The ID of the chat completion that was deleted. + # + # @param deleted [Boolean] Whether the chat completion was deleted. + # + # @param object [Symbol, :"chat.completion.deleted"] The type of object being deleted. end end diff --git a/lib/openai/models/chat/chat_completion_developer_message_param.rb b/lib/openai/models/chat/chat_completion_developer_message_param.rb index 2c7e20e4..df851c32 100644 --- a/lib/openai/models/chat/chat_completion_developer_message_param.rb +++ b/lib/openai/models/chat/chat_completion_developer_message_param.rb @@ -24,13 +24,19 @@ class ChatCompletionDeveloperMessageParam < OpenAI::Internal::Type::BaseModel optional :name, String # @!method initialize(content:, name: nil, role: :developer) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Chat::ChatCompletionDeveloperMessageParam} for more details. + # # Developer-provided instructions that the model should follow, regardless of # messages sent by the user. With o1 models and newer, `developer` messages # replace the previous `system` messages. # - # @param content [String, Array] - # @param name [String] - # @param role [Symbol, :developer] + # @param content [String, Array] The contents of the developer message. + # + # @param name [String] An optional name for the participant. Provides the model information to differen + # ... + # + # @param role [Symbol, :developer] The role of the messages author, in this case `developer`. # The contents of the developer message. # diff --git a/lib/openai/models/chat/chat_completion_function_call_option.rb b/lib/openai/models/chat/chat_completion_function_call_option.rb index 9c7d28fd..89566e41 100644 --- a/lib/openai/models/chat/chat_completion_function_call_option.rb +++ b/lib/openai/models/chat/chat_completion_function_call_option.rb @@ -14,7 +14,7 @@ class ChatCompletionFunctionCallOption < OpenAI::Internal::Type::BaseModel # Specifying a particular function via `{"name": "my_function"}` forces the model # to call that function. # - # @param name [String] + # @param name [String] The name of the function to call. end end diff --git a/lib/openai/models/chat/chat_completion_function_message_param.rb b/lib/openai/models/chat/chat_completion_function_message_param.rb index 4a8efb76..feb98749 100644 --- a/lib/openai/models/chat/chat_completion_function_message_param.rb +++ b/lib/openai/models/chat/chat_completion_function_message_param.rb @@ -24,9 +24,11 @@ class ChatCompletionFunctionMessageParam < OpenAI::Internal::Type::BaseModel required :role, const: :function # @!method initialize(content:, name:, role: :function) - # @param content [String, nil] - # @param name [String] - # @param role [Symbol, :function] + # @param content [String, nil] The contents of the function message. + # + # @param name [String] The name of the function to call. + # + # @param role [Symbol, :function] The role of the messages author, in this case `function`. end end diff --git a/lib/openai/models/chat/chat_completion_message.rb b/lib/openai/models/chat/chat_completion_message.rb index 21ca6db0..8a75e905 100644 --- a/lib/openai/models/chat/chat_completion_message.rb +++ b/lib/openai/models/chat/chat_completion_message.rb @@ -55,15 +55,25 @@ class ChatCompletionMessage < OpenAI::Internal::Type::BaseModel -> { OpenAI::Internal::Type::ArrayOf[OpenAI::Models::Chat::ChatCompletionMessageToolCall] } # @!method initialize(content:, refusal:, annotations: nil, audio: nil, function_call: nil, tool_calls: nil, role: :assistant) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Chat::ChatCompletionMessage} for more details. + # # A chat completion message generated by the model. # - # @param content [String, nil] - # @param refusal [String, nil] - # @param annotations [Array] - # @param audio [OpenAI::Models::Chat::ChatCompletionAudio, nil] - # @param function_call [OpenAI::Models::Chat::ChatCompletionMessage::FunctionCall] - # @param tool_calls [Array] - # @param role [Symbol, :assistant] + # @param content [String, nil] The contents of the message. + # + # @param refusal [String, nil] The refusal message generated by the model. + # + # @param annotations [Array] Annotations for the message, when applicable, as when using the ... + # + # @param audio [OpenAI::Models::Chat::ChatCompletionAudio, nil] If the audio output modality is requested, this object contains data ... + # + # @param function_call [OpenAI::Models::Chat::ChatCompletionMessage::FunctionCall] Deprecated and replaced by `tool_calls`. The name and arguments of a function th + # ... + # + # @param tool_calls [Array] The tool calls generated by the model, such as function calls. + # + # @param role [Symbol, :assistant] The role of the author of this message. class Annotation < OpenAI::Internal::Type::BaseModel # @!attribute type @@ -81,8 +91,9 @@ class Annotation < OpenAI::Internal::Type::BaseModel # @!method initialize(url_citation:, type: :url_citation) # A URL citation when using web search. # - # @param url_citation [OpenAI::Models::Chat::ChatCompletionMessage::Annotation::URLCitation] - # @param type [Symbol, :url_citation] + # @param url_citation [OpenAI::Models::Chat::ChatCompletionMessage::Annotation::URLCitation] A URL citation when using web search. + # + # @param type [Symbol, :url_citation] The type of the URL citation. Always `url_citation`. # @see OpenAI::Models::Chat::ChatCompletionMessage::Annotation#url_citation class URLCitation < OpenAI::Internal::Type::BaseModel @@ -113,10 +124,13 @@ class URLCitation < OpenAI::Internal::Type::BaseModel # @!method initialize(end_index:, start_index:, title:, url:) # A URL citation when using web search. # - # @param end_index [Integer] - # @param start_index [Integer] - # @param title [String] - # @param url [String] + # @param end_index [Integer] The index of the last character of the URL citation in the message. + # + # @param start_index [Integer] The index of the first character of the URL citation in the message. + # + # @param title [String] The title of the web resource. + # + # @param url [String] The URL of the web resource. end end @@ -140,11 +154,16 @@ class FunctionCall < OpenAI::Internal::Type::BaseModel required :name, String # @!method initialize(arguments:, name:) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Chat::ChatCompletionMessage::FunctionCall} for more details. + # # Deprecated and replaced by `tool_calls`. The name and arguments of a function # that should be called, as generated by the model. # - # @param arguments [String] - # @param name [String] + # @param arguments [String] The arguments to call the function with, as generated by the model in JSON forma + # ... + # + # @param name [String] The name of the function to call. end end end diff --git a/lib/openai/models/chat/chat_completion_message_tool_call.rb b/lib/openai/models/chat/chat_completion_message_tool_call.rb index adad4c9a..6ecdc5b5 100644 --- a/lib/openai/models/chat/chat_completion_message_tool_call.rb +++ b/lib/openai/models/chat/chat_completion_message_tool_call.rb @@ -23,9 +23,11 @@ class ChatCompletionMessageToolCall < OpenAI::Internal::Type::BaseModel required :type, const: :function # @!method initialize(id:, function:, type: :function) - # @param id [String] - # @param function [OpenAI::Models::Chat::ChatCompletionMessageToolCall::Function] - # @param type [Symbol, :function] + # @param id [String] The ID of the tool call. + # + # @param function [OpenAI::Models::Chat::ChatCompletionMessageToolCall::Function] The function that the model called. + # + # @param type [Symbol, :function] The type of the tool. Currently, only `function` is supported. # @see OpenAI::Models::Chat::ChatCompletionMessageToolCall#function class Function < OpenAI::Internal::Type::BaseModel @@ -45,10 +47,16 @@ class Function < OpenAI::Internal::Type::BaseModel required :name, String # @!method initialize(arguments:, name:) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Chat::ChatCompletionMessageToolCall::Function} for more + # details. + # # The function that the model called. # - # @param arguments [String] - # @param name [String] + # @param arguments [String] The arguments to call the function with, as generated by the model in JSON forma + # ... + # + # @param name [String] The name of the function to call. end end end diff --git a/lib/openai/models/chat/chat_completion_named_tool_choice.rb b/lib/openai/models/chat/chat_completion_named_tool_choice.rb index d6d7a955..245af016 100644 --- a/lib/openai/models/chat/chat_completion_named_tool_choice.rb +++ b/lib/openai/models/chat/chat_completion_named_tool_choice.rb @@ -20,7 +20,8 @@ class ChatCompletionNamedToolChoice < OpenAI::Internal::Type::BaseModel # function. # # @param function [OpenAI::Models::Chat::ChatCompletionNamedToolChoice::Function] - # @param type [Symbol, :function] + # + # @param type [Symbol, :function] The type of the tool. Currently, only `function` is supported. # @see OpenAI::Models::Chat::ChatCompletionNamedToolChoice#function class Function < OpenAI::Internal::Type::BaseModel @@ -31,7 +32,7 @@ class Function < OpenAI::Internal::Type::BaseModel required :name, String # @!method initialize(name:) - # @param name [String] + # @param name [String] The name of the function to call. end end end diff --git a/lib/openai/models/chat/chat_completion_prediction_content.rb b/lib/openai/models/chat/chat_completion_prediction_content.rb index b6c130fb..3669e9d3 100644 --- a/lib/openai/models/chat/chat_completion_prediction_content.rb +++ b/lib/openai/models/chat/chat_completion_prediction_content.rb @@ -20,11 +20,15 @@ class ChatCompletionPredictionContent < OpenAI::Internal::Type::BaseModel required :type, const: :content # @!method initialize(content:, type: :content) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Chat::ChatCompletionPredictionContent} for more details. + # # Static predicted output content, such as the content of a text file that is # being regenerated. # - # @param content [String, Array] - # @param type [Symbol, :content] + # @param content [String, Array] The content that should be matched when generating a model response. ... + # + # @param type [Symbol, :content] The type of the predicted content you want to provide. This type is ... # The content that should be matched when generating a model response. If # generated tokens would match this content, the entire model response can be diff --git a/lib/openai/models/chat/chat_completion_store_message.rb b/lib/openai/models/chat/chat_completion_store_message.rb index 119b5a36..cd926898 100644 --- a/lib/openai/models/chat/chat_completion_store_message.rb +++ b/lib/openai/models/chat/chat_completion_store_message.rb @@ -13,7 +13,7 @@ class ChatCompletionStoreMessage < OpenAI::Models::Chat::ChatCompletionMessage # @!method initialize(id:) # A chat completion message generated by the model. # - # @param id [String] + # @param id [String] The identifier of the chat message. end end diff --git a/lib/openai/models/chat/chat_completion_stream_options.rb b/lib/openai/models/chat/chat_completion_stream_options.rb index 4bc8cef1..de346443 100644 --- a/lib/openai/models/chat/chat_completion_stream_options.rb +++ b/lib/openai/models/chat/chat_completion_stream_options.rb @@ -17,9 +17,12 @@ class ChatCompletionStreamOptions < OpenAI::Internal::Type::BaseModel optional :include_usage, OpenAI::Internal::Type::Boolean # @!method initialize(include_usage: nil) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Chat::ChatCompletionStreamOptions} for more details. + # # Options for streaming response. Only set this when you set `stream: true`. # - # @param include_usage [Boolean] + # @param include_usage [Boolean] If set, an additional chunk will be streamed before the `data: [DONE]` ... end end diff --git a/lib/openai/models/chat/chat_completion_system_message_param.rb b/lib/openai/models/chat/chat_completion_system_message_param.rb index 19d5d598..99e35629 100644 --- a/lib/openai/models/chat/chat_completion_system_message_param.rb +++ b/lib/openai/models/chat/chat_completion_system_message_param.rb @@ -24,13 +24,19 @@ class ChatCompletionSystemMessageParam < OpenAI::Internal::Type::BaseModel optional :name, String # @!method initialize(content:, name: nil, role: :system) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Chat::ChatCompletionSystemMessageParam} for more details. + # # Developer-provided instructions that the model should follow, regardless of # messages sent by the user. With o1 models and newer, use `developer` messages # for this purpose instead. # - # @param content [String, Array] - # @param name [String] - # @param role [Symbol, :system] + # @param content [String, Array] The contents of the system message. + # + # @param name [String] An optional name for the participant. Provides the model information to differen + # ... + # + # @param role [Symbol, :system] The role of the messages author, in this case `system`. # The contents of the system message. # diff --git a/lib/openai/models/chat/chat_completion_token_logprob.rb b/lib/openai/models/chat/chat_completion_token_logprob.rb index 1ab8dd0f..2dfadc88 100644 --- a/lib/openai/models/chat/chat_completion_token_logprob.rb +++ b/lib/openai/models/chat/chat_completion_token_logprob.rb @@ -37,10 +37,19 @@ class ChatCompletionTokenLogprob < OpenAI::Internal::Type::BaseModel -> { OpenAI::Internal::Type::ArrayOf[OpenAI::Models::Chat::ChatCompletionTokenLogprob::TopLogprob] } # @!method initialize(token:, bytes:, logprob:, top_logprobs:) - # @param token [String] - # @param bytes [Array, nil] - # @param logprob [Float] - # @param top_logprobs [Array] + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Chat::ChatCompletionTokenLogprob} for more details. + # + # @param token [String] The token. + # + # @param bytes [Array, nil] A list of integers representing the UTF-8 bytes representation of the token. Use + # ... + # + # @param logprob [Float] The log probability of this token, if it is within the top 20 most likely tokens + # ... + # + # @param top_logprobs [Array] List of the most likely tokens and their log probability, at this token position + # ... class TopLogprob < OpenAI::Internal::Type::BaseModel # @!attribute token @@ -67,9 +76,16 @@ class TopLogprob < OpenAI::Internal::Type::BaseModel required :logprob, Float # @!method initialize(token:, bytes:, logprob:) - # @param token [String] - # @param bytes [Array, nil] - # @param logprob [Float] + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Chat::ChatCompletionTokenLogprob::TopLogprob} for more details. + # + # @param token [String] The token. + # + # @param bytes [Array, nil] A list of integers representing the UTF-8 bytes representation of the token. Use + # ... + # + # @param logprob [Float] The log probability of this token, if it is within the top 20 most likely tokens + # ... end end end diff --git a/lib/openai/models/chat/chat_completion_tool.rb b/lib/openai/models/chat/chat_completion_tool.rb index 1cef5fd5..c06b28d0 100644 --- a/lib/openai/models/chat/chat_completion_tool.rb +++ b/lib/openai/models/chat/chat_completion_tool.rb @@ -17,7 +17,8 @@ class ChatCompletionTool < OpenAI::Internal::Type::BaseModel # @!method initialize(function:, type: :function) # @param function [OpenAI::Models::FunctionDefinition] - # @param type [Symbol, :function] + # + # @param type [Symbol, :function] The type of the tool. Currently, only `function` is supported. end end diff --git a/lib/openai/models/chat/chat_completion_tool_message_param.rb b/lib/openai/models/chat/chat_completion_tool_message_param.rb index a0718af1..e03505be 100644 --- a/lib/openai/models/chat/chat_completion_tool_message_param.rb +++ b/lib/openai/models/chat/chat_completion_tool_message_param.rb @@ -23,9 +23,11 @@ class ChatCompletionToolMessageParam < OpenAI::Internal::Type::BaseModel required :tool_call_id, String # @!method initialize(content:, tool_call_id:, role: :tool) - # @param content [String, Array] - # @param tool_call_id [String] - # @param role [Symbol, :tool] + # @param content [String, Array] The contents of the tool message. + # + # @param tool_call_id [String] Tool call that this message is responding to. + # + # @param role [Symbol, :tool] The role of the messages author, in this case `tool`. # The contents of the tool message. # diff --git a/lib/openai/models/chat/chat_completion_user_message_param.rb b/lib/openai/models/chat/chat_completion_user_message_param.rb index 7f72cdc3..3aa9532f 100644 --- a/lib/openai/models/chat/chat_completion_user_message_param.rb +++ b/lib/openai/models/chat/chat_completion_user_message_param.rb @@ -24,12 +24,18 @@ class ChatCompletionUserMessageParam < OpenAI::Internal::Type::BaseModel optional :name, String # @!method initialize(content:, name: nil, role: :user) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Chat::ChatCompletionUserMessageParam} for more details. + # # Messages sent by an end user, containing prompts or additional context # information. # - # @param content [String, Array] - # @param name [String] - # @param role [Symbol, :user] + # @param content [String, Array] The contents of the user message. ... + # + # @param name [String] An optional name for the participant. Provides the model information to differen + # ... + # + # @param role [Symbol, :user] The role of the messages author, in this case `user`. # The contents of the user message. # diff --git a/lib/openai/models/chat/completion_create_params.rb b/lib/openai/models/chat/completion_create_params.rb index 045de7a8..185edac2 100644 --- a/lib/openai/models/chat/completion_create_params.rb +++ b/lib/openai/models/chat/completion_create_params.rb @@ -329,36 +329,76 @@ class CompletionCreateParams < OpenAI::Internal::Type::BaseModel optional :web_search_options, -> { OpenAI::Models::Chat::CompletionCreateParams::WebSearchOptions } # @!method initialize(messages:, model:, audio: nil, frequency_penalty: nil, function_call: nil, functions: nil, logit_bias: nil, logprobs: nil, max_completion_tokens: nil, max_tokens: nil, metadata: nil, modalities: nil, n: nil, parallel_tool_calls: nil, prediction: nil, presence_penalty: nil, reasoning_effort: nil, response_format: nil, seed: nil, service_tier: nil, stop: nil, store: nil, stream_options: nil, temperature: nil, tool_choice: nil, tools: nil, top_logprobs: nil, top_p: nil, user: nil, web_search_options: nil, request_options: {}) - # @param messages [Array] - # @param model [String, Symbol, OpenAI::Models::ChatModel] - # @param audio [OpenAI::Models::Chat::ChatCompletionAudioParam, nil] - # @param frequency_penalty [Float, nil] - # @param function_call [Symbol, OpenAI::Models::Chat::CompletionCreateParams::FunctionCall::FunctionCallMode, OpenAI::Models::Chat::ChatCompletionFunctionCallOption] - # @param functions [Array] - # @param logit_bias [Hash{Symbol=>Integer}, nil] - # @param logprobs [Boolean, nil] - # @param max_completion_tokens [Integer, nil] - # @param max_tokens [Integer, nil] - # @param metadata [Hash{Symbol=>String}, nil] - # @param modalities [Array, nil] - # @param n [Integer, nil] - # @param parallel_tool_calls [Boolean] - # @param prediction [OpenAI::Models::Chat::ChatCompletionPredictionContent, nil] - # @param presence_penalty [Float, nil] - # @param reasoning_effort [Symbol, OpenAI::Models::ReasoningEffort, nil] - # @param response_format [OpenAI::Models::ResponseFormatText, OpenAI::Models::ResponseFormatJSONSchema, OpenAI::Models::ResponseFormatJSONObject] - # @param seed [Integer, nil] - # @param service_tier [Symbol, OpenAI::Models::Chat::CompletionCreateParams::ServiceTier, nil] - # @param stop [String, Array, nil] - # @param store [Boolean, nil] - # @param stream_options [OpenAI::Models::Chat::ChatCompletionStreamOptions, nil] - # @param temperature [Float, nil] - # @param tool_choice [Symbol, OpenAI::Models::Chat::ChatCompletionToolChoiceOption::Auto, OpenAI::Models::Chat::ChatCompletionNamedToolChoice] - # @param tools [Array] - # @param top_logprobs [Integer, nil] - # @param top_p [Float, nil] - # @param user [String] - # @param web_search_options [OpenAI::Models::Chat::CompletionCreateParams::WebSearchOptions] + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Chat::CompletionCreateParams} for more details. + # + # @param messages [Array] A list of messages comprising the conversation so far. Depending on the ... + # + # @param model [String, Symbol, OpenAI::Models::ChatModel] Model ID used to generate the response, like `gpt-4o` or `o3`. OpenAI ... + # + # @param audio [OpenAI::Models::Chat::ChatCompletionAudioParam, nil] Parameters for audio output. Required when audio output is requested with ... + # + # @param frequency_penalty [Float, nil] Number between -2.0 and 2.0. Positive values penalize new tokens based on ... + # + # @param function_call [Symbol, OpenAI::Models::Chat::CompletionCreateParams::FunctionCall::FunctionCallMode, OpenAI::Models::Chat::ChatCompletionFunctionCallOption] Deprecated in favor of `tool_choice`. ... + # + # @param functions [Array] Deprecated in favor of `tools`. ... + # + # @param logit_bias [Hash{Symbol=>Integer}, nil] Modify the likelihood of specified tokens appearing in the completion. ... + # + # @param logprobs [Boolean, nil] Whether to return log probabilities of the output tokens or not. If true, ... + # + # @param max_completion_tokens [Integer, nil] An upper bound for the number of tokens that can be generated for a completion, + # ... + # + # @param max_tokens [Integer, nil] The maximum number of [tokens](/tokenizer) that can be generated in the ... + # + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # + # @param modalities [Array, nil] Output types that you would like the model to generate. ... + # + # @param n [Integer, nil] How many chat completion choices to generate for each input message. Note that y + # ... + # + # @param parallel_tool_calls [Boolean] Whether to enable [parallel function calling](https://platform.openai.com/docs/g + # ... + # + # @param prediction [OpenAI::Models::Chat::ChatCompletionPredictionContent, nil] Static predicted output content, such as the content of a text file that is ... + # + # @param presence_penalty [Float, nil] Number between -2.0 and 2.0. Positive values penalize new tokens based on ... + # + # @param reasoning_effort [Symbol, OpenAI::Models::ReasoningEffort, nil] **o-series models only** ... + # + # @param response_format [OpenAI::Models::ResponseFormatText, OpenAI::Models::ResponseFormatJSONSchema, OpenAI::Models::ResponseFormatJSONObject] An object specifying the format that the model must output. ... + # + # @param seed [Integer, nil] This feature is in Beta. ... + # + # @param service_tier [Symbol, OpenAI::Models::Chat::CompletionCreateParams::ServiceTier, nil] Specifies the latency tier to use for processing the request. This parameter is + # ... + # + # @param stop [String, Array, nil] Not supported with latest reasoning models `o3` and `o4-mini`. ... + # + # @param store [Boolean, nil] Whether or not to store the output of this chat completion request for ... + # + # @param stream_options [OpenAI::Models::Chat::ChatCompletionStreamOptions, nil] Options for streaming response. Only set this when you set `stream: true`. ... + # + # @param temperature [Float, nil] What sampling temperature to use, between 0 and 2. Higher values like 0.8 will m + # ... + # + # @param tool_choice [Symbol, OpenAI::Models::Chat::ChatCompletionToolChoiceOption::Auto, OpenAI::Models::Chat::ChatCompletionNamedToolChoice] Controls which (if any) tool is called by the model. ... + # + # @param tools [Array] A list of tools the model may call. Currently, only functions are supported as a + # ... + # + # @param top_logprobs [Integer, nil] An integer between 0 and 20 specifying the number of most likely tokens to ... + # + # @param top_p [Float, nil] An alternative to sampling with temperature, called nucleus sampling, ... + # + # @param user [String] A unique identifier representing your end-user, which can help OpenAI to monitor + # ... + # + # @param web_search_options [OpenAI::Models::Chat::CompletionCreateParams::WebSearchOptions] This tool searches the web for relevant results to use in a response. ... + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] # Model ID used to generate the response, like `gpt-4o` or `o3`. OpenAI offers a @@ -452,9 +492,17 @@ class Function < OpenAI::Internal::Type::BaseModel optional :parameters, OpenAI::Internal::Type::HashOf[OpenAI::Internal::Type::Unknown] # @!method initialize(name:, description: nil, parameters: nil) - # @param name [String] - # @param description [String] - # @param parameters [Hash{Symbol=>Object}] + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Chat::CompletionCreateParams::Function} for more details. + # + # @param name [String] The name of the function to be called. Must be a-z, A-Z, 0-9, or contain undersc + # ... + # + # @param description [String] A description of what the function does, used by the model to choose when and ho + # ... + # + # @param parameters [Hash{Symbol=>Object}] The parameters the functions accepts, described as a JSON Schema object. See the + # ... end module Modality @@ -560,12 +608,17 @@ class WebSearchOptions < OpenAI::Internal::Type::BaseModel nil?: true # @!method initialize(search_context_size: nil, user_location: nil) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Chat::CompletionCreateParams::WebSearchOptions} for more + # details. + # # This tool searches the web for relevant results to use in a response. Learn more # about the # [web search tool](https://platform.openai.com/docs/guides/tools-web-search?api-mode=chat). # - # @param search_context_size [Symbol, OpenAI::Models::Chat::CompletionCreateParams::WebSearchOptions::SearchContextSize] - # @param user_location [OpenAI::Models::Chat::CompletionCreateParams::WebSearchOptions::UserLocation, nil] + # @param search_context_size [Symbol, OpenAI::Models::Chat::CompletionCreateParams::WebSearchOptions::SearchContextSize] High level guidance for the amount of context window space to use for the ... + # + # @param user_location [OpenAI::Models::Chat::CompletionCreateParams::WebSearchOptions::UserLocation, nil] Approximate location parameters for the search. ... # High level guidance for the amount of context window space to use for the # search. One of `low`, `medium`, or `high`. `medium` is the default. @@ -598,10 +651,15 @@ class UserLocation < OpenAI::Internal::Type::BaseModel required :type, const: :approximate # @!method initialize(approximate:, type: :approximate) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Chat::CompletionCreateParams::WebSearchOptions::UserLocation} + # for more details. + # # Approximate location parameters for the search. # - # @param approximate [OpenAI::Models::Chat::CompletionCreateParams::WebSearchOptions::UserLocation::Approximate] - # @param type [Symbol, :approximate] + # @param approximate [OpenAI::Models::Chat::CompletionCreateParams::WebSearchOptions::UserLocation::Approximate] Approximate location parameters for the search. + # + # @param type [Symbol, :approximate] The type of location approximation. Always `approximate`. ... # @see OpenAI::Models::Chat::CompletionCreateParams::WebSearchOptions::UserLocation#approximate class Approximate < OpenAI::Internal::Type::BaseModel @@ -632,12 +690,19 @@ class Approximate < OpenAI::Internal::Type::BaseModel optional :timezone, String # @!method initialize(city: nil, country: nil, region: nil, timezone: nil) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Chat::CompletionCreateParams::WebSearchOptions::UserLocation::Approximate} + # for more details. + # # Approximate location parameters for the search. # - # @param city [String] - # @param country [String] - # @param region [String] - # @param timezone [String] + # @param city [String] Free text input for the city of the user, e.g. `San Francisco`. ... + # + # @param country [String] The two-letter ... + # + # @param region [String] Free text input for the region of the user, e.g. `California`. ... + # + # @param timezone [String] The [IANA timezone](https://timeapi.io/documentation/iana-timezones) ... end end end diff --git a/lib/openai/models/chat/completion_list_params.rb b/lib/openai/models/chat/completion_list_params.rb index ab7f9060..ea9cb4c5 100644 --- a/lib/openai/models/chat/completion_list_params.rb +++ b/lib/openai/models/chat/completion_list_params.rb @@ -42,11 +42,20 @@ class CompletionListParams < OpenAI::Internal::Type::BaseModel optional :order, enum: -> { OpenAI::Models::Chat::CompletionListParams::Order } # @!method initialize(after: nil, limit: nil, metadata: nil, model: nil, order: nil, request_options: {}) - # @param after [String] - # @param limit [Integer] - # @param metadata [Hash{Symbol=>String}, nil] - # @param model [String] - # @param order [Symbol, OpenAI::Models::Chat::CompletionListParams::Order] + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Chat::CompletionListParams} for more details. + # + # @param after [String] Identifier for the last chat completion from the previous pagination request. + # + # @param limit [Integer] Number of Chat Completions to retrieve. + # + # @param metadata [Hash{Symbol=>String}, nil] A list of metadata keys to filter the Chat Completions by. Example: ... + # + # @param model [String] The model used to generate the Chat Completions. + # + # @param order [Symbol, OpenAI::Models::Chat::CompletionListParams::Order] Sort order for Chat Completions by timestamp. Use `asc` for ascending order or ` + # ... + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] # Sort order for Chat Completions by timestamp. Use `asc` for ascending order or diff --git a/lib/openai/models/chat/completion_update_params.rb b/lib/openai/models/chat/completion_update_params.rb index b3a23cff..3c2e662d 100644 --- a/lib/openai/models/chat/completion_update_params.rb +++ b/lib/openai/models/chat/completion_update_params.rb @@ -20,7 +20,11 @@ class CompletionUpdateParams < OpenAI::Internal::Type::BaseModel required :metadata, OpenAI::Internal::Type::HashOf[String], nil?: true # @!method initialize(metadata:, request_options: {}) - # @param metadata [Hash{Symbol=>String}, nil] + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Chat::CompletionUpdateParams} for more details. + # + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] end end diff --git a/lib/openai/models/chat/completions/message_list_params.rb b/lib/openai/models/chat/completions/message_list_params.rb index 19a29905..775be46e 100644 --- a/lib/openai/models/chat/completions/message_list_params.rb +++ b/lib/openai/models/chat/completions/message_list_params.rb @@ -29,9 +29,16 @@ class MessageListParams < OpenAI::Internal::Type::BaseModel optional :order, enum: -> { OpenAI::Models::Chat::Completions::MessageListParams::Order } # @!method initialize(after: nil, limit: nil, order: nil, request_options: {}) - # @param after [String] - # @param limit [Integer] - # @param order [Symbol, OpenAI::Models::Chat::Completions::MessageListParams::Order] + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Chat::Completions::MessageListParams} for more details. + # + # @param after [String] Identifier for the last message from the previous pagination request. + # + # @param limit [Integer] Number of messages to retrieve. + # + # @param order [Symbol, OpenAI::Models::Chat::Completions::MessageListParams::Order] Sort order for messages by timestamp. Use `asc` for ascending order or `desc` fo + # ... + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] # Sort order for messages by timestamp. Use `asc` for ascending order or `desc` diff --git a/lib/openai/models/comparison_filter.rb b/lib/openai/models/comparison_filter.rb index 81515805..2969dedd 100644 --- a/lib/openai/models/comparison_filter.rb +++ b/lib/openai/models/comparison_filter.rb @@ -30,12 +30,18 @@ class ComparisonFilter < OpenAI::Internal::Type::BaseModel required :value, union: -> { OpenAI::Models::ComparisonFilter::Value } # @!method initialize(key:, type:, value:) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::ComparisonFilter} for more details. + # # A filter used to compare a specified attribute key to a given value using a # defined comparison operation. # - # @param key [String] - # @param type [Symbol, OpenAI::Models::ComparisonFilter::Type] - # @param value [String, Float, Boolean] + # @param key [String] The key to compare against the value. + # + # @param type [Symbol, OpenAI::Models::ComparisonFilter::Type] Specifies the comparison operator: `eq`, `ne`, `gt`, `gte`, `lt`, `lte`. ... + # + # @param value [String, Float, Boolean] The value to compare against the attribute key; supports string, number, or bool + # ... # Specifies the comparison operator: `eq`, `ne`, `gt`, `gte`, `lt`, `lte`. # diff --git a/lib/openai/models/completion.rb b/lib/openai/models/completion.rb index 4980830d..c493a5c5 100644 --- a/lib/openai/models/completion.rb +++ b/lib/openai/models/completion.rb @@ -52,16 +52,26 @@ class Completion < OpenAI::Internal::Type::BaseModel optional :usage, -> { OpenAI::Models::CompletionUsage } # @!method initialize(id:, choices:, created:, model:, system_fingerprint: nil, usage: nil, object: :text_completion) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Completion} for more details. + # # Represents a completion response from the API. Note: both the streamed and # non-streamed response objects share the same shape (unlike the chat endpoint). # - # @param id [String] - # @param choices [Array] - # @param created [Integer] - # @param model [String] - # @param system_fingerprint [String] - # @param usage [OpenAI::Models::CompletionUsage] - # @param object [Symbol, :text_completion] + # @param id [String] A unique identifier for the completion. + # + # @param choices [Array] The list of completion choices the model generated for the input prompt. + # + # @param created [Integer] The Unix timestamp (in seconds) of when the completion was created. + # + # @param model [String] The model used for completion. + # + # @param system_fingerprint [String] This fingerprint represents the backend configuration that the model runs with. + # ... + # + # @param usage [OpenAI::Models::CompletionUsage] Usage statistics for the completion request. + # + # @param object [Symbol, :text_completion] The object type, which is always "text_completion" end end end diff --git a/lib/openai/models/completion_choice.rb b/lib/openai/models/completion_choice.rb index 3fcd5752..5bca4663 100644 --- a/lib/openai/models/completion_choice.rb +++ b/lib/openai/models/completion_choice.rb @@ -28,9 +28,16 @@ class CompletionChoice < OpenAI::Internal::Type::BaseModel required :text, String # @!method initialize(finish_reason:, index:, logprobs:, text:) - # @param finish_reason [Symbol, OpenAI::Models::CompletionChoice::FinishReason] + # Some parameter documentations has been truncated, see + # {OpenAI::Models::CompletionChoice} for more details. + # + # @param finish_reason [Symbol, OpenAI::Models::CompletionChoice::FinishReason] The reason the model stopped generating tokens. This will be `stop` if the model + # ... + # # @param index [Integer] + # # @param logprobs [OpenAI::Models::CompletionChoice::Logprobs, nil] + # # @param text [String] # The reason the model stopped generating tokens. This will be `stop` if the model diff --git a/lib/openai/models/completion_create_params.rb b/lib/openai/models/completion_create_params.rb index 7084d9f5..c6f47865 100644 --- a/lib/openai/models/completion_create_params.rb +++ b/lib/openai/models/completion_create_params.rb @@ -183,23 +183,54 @@ class CompletionCreateParams < OpenAI::Internal::Type::BaseModel optional :user, String # @!method initialize(model:, prompt:, best_of: nil, echo: nil, frequency_penalty: nil, logit_bias: nil, logprobs: nil, max_tokens: nil, n: nil, presence_penalty: nil, seed: nil, stop: nil, stream_options: nil, suffix: nil, temperature: nil, top_p: nil, user: nil, request_options: {}) - # @param model [String, Symbol, OpenAI::Models::CompletionCreateParams::Model] - # @param prompt [String, Array, Array, Array>, nil] - # @param best_of [Integer, nil] - # @param echo [Boolean, nil] - # @param frequency_penalty [Float, nil] - # @param logit_bias [Hash{Symbol=>Integer}, nil] - # @param logprobs [Integer, nil] - # @param max_tokens [Integer, nil] - # @param n [Integer, nil] - # @param presence_penalty [Float, nil] - # @param seed [Integer, nil] - # @param stop [String, Array, nil] - # @param stream_options [OpenAI::Models::Chat::ChatCompletionStreamOptions, nil] - # @param suffix [String, nil] - # @param temperature [Float, nil] - # @param top_p [Float, nil] - # @param user [String] + # Some parameter documentations has been truncated, see + # {OpenAI::Models::CompletionCreateParams} for more details. + # + # @param model [String, Symbol, OpenAI::Models::CompletionCreateParams::Model] ID of the model to use. You can use the [List models](https://platform.openai.co + # ... + # + # @param prompt [String, Array, Array, Array>, nil] The prompt(s) to generate completions for, encoded as a string, array of strings + # ... + # + # @param best_of [Integer, nil] Generates `best_of` completions server-side and returns the "best" (the one with + # ... + # + # @param echo [Boolean, nil] Echo back the prompt in addition to the completion ... + # + # @param frequency_penalty [Float, nil] Number between -2.0 and 2.0. Positive values penalize new tokens based on their + # ... + # + # @param logit_bias [Hash{Symbol=>Integer}, nil] Modify the likelihood of specified tokens appearing in the completion. ... + # + # @param logprobs [Integer, nil] Include the log probabilities on the `logprobs` most likely output tokens, as we + # ... + # + # @param max_tokens [Integer, nil] The maximum number of [tokens](/tokenizer) that can be generated in the completi + # ... + # + # @param n [Integer, nil] How many completions to generate for each prompt. ... + # + # @param presence_penalty [Float, nil] Number between -2.0 and 2.0. Positive values penalize new tokens based on whethe + # ... + # + # @param seed [Integer, nil] If specified, our system will make a best effort to sample deterministically, su + # ... + # + # @param stop [String, Array, nil] Not supported with latest reasoning models `o3` and `o4-mini`. ... + # + # @param stream_options [OpenAI::Models::Chat::ChatCompletionStreamOptions, nil] Options for streaming response. Only set this when you set `stream: true`. ... + # + # @param suffix [String, nil] The suffix that comes after a completion of inserted text. ... + # + # @param temperature [Float, nil] What sampling temperature to use, between 0 and 2. Higher values like 0.8 will m + # ... + # + # @param top_p [Float, nil] An alternative to sampling with temperature, called nucleus sampling, where the + # ... + # + # @param user [String] A unique identifier representing your end-user, which can help OpenAI to monitor + # ... + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] # ID of the model to use. You can use the diff --git a/lib/openai/models/completion_usage.rb b/lib/openai/models/completion_usage.rb index e2b4092d..defd2f03 100644 --- a/lib/openai/models/completion_usage.rb +++ b/lib/openai/models/completion_usage.rb @@ -36,11 +36,15 @@ class CompletionUsage < OpenAI::Internal::Type::BaseModel # @!method initialize(completion_tokens:, prompt_tokens:, total_tokens:, completion_tokens_details: nil, prompt_tokens_details: nil) # Usage statistics for the completion request. # - # @param completion_tokens [Integer] - # @param prompt_tokens [Integer] - # @param total_tokens [Integer] - # @param completion_tokens_details [OpenAI::Models::CompletionUsage::CompletionTokensDetails] - # @param prompt_tokens_details [OpenAI::Models::CompletionUsage::PromptTokensDetails] + # @param completion_tokens [Integer] Number of tokens in the generated completion. + # + # @param prompt_tokens [Integer] Number of tokens in the prompt. + # + # @param total_tokens [Integer] Total number of tokens used in the request (prompt + completion). + # + # @param completion_tokens_details [OpenAI::Models::CompletionUsage::CompletionTokensDetails] Breakdown of tokens used in a completion. + # + # @param prompt_tokens_details [OpenAI::Models::CompletionUsage::PromptTokensDetails] Breakdown of tokens used in the prompt. # @see OpenAI::Models::CompletionUsage#completion_tokens_details class CompletionTokensDetails < OpenAI::Internal::Type::BaseModel @@ -73,12 +77,18 @@ class CompletionTokensDetails < OpenAI::Internal::Type::BaseModel optional :rejected_prediction_tokens, Integer # @!method initialize(accepted_prediction_tokens: nil, audio_tokens: nil, reasoning_tokens: nil, rejected_prediction_tokens: nil) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::CompletionUsage::CompletionTokensDetails} for more details. + # # Breakdown of tokens used in a completion. # - # @param accepted_prediction_tokens [Integer] - # @param audio_tokens [Integer] - # @param reasoning_tokens [Integer] - # @param rejected_prediction_tokens [Integer] + # @param accepted_prediction_tokens [Integer] When using Predicted Outputs, the number of tokens in the ... + # + # @param audio_tokens [Integer] Audio input tokens generated by the model. + # + # @param reasoning_tokens [Integer] Tokens generated by the model for reasoning. + # + # @param rejected_prediction_tokens [Integer] When using Predicted Outputs, the number of tokens in the ... end # @see OpenAI::Models::CompletionUsage#prompt_tokens_details @@ -98,8 +108,9 @@ class PromptTokensDetails < OpenAI::Internal::Type::BaseModel # @!method initialize(audio_tokens: nil, cached_tokens: nil) # Breakdown of tokens used in the prompt. # - # @param audio_tokens [Integer] - # @param cached_tokens [Integer] + # @param audio_tokens [Integer] Audio input tokens present in the prompt. + # + # @param cached_tokens [Integer] Cached tokens present in the prompt. end end end diff --git a/lib/openai/models/compound_filter.rb b/lib/openai/models/compound_filter.rb index 228c5572..9dc2a93d 100644 --- a/lib/openai/models/compound_filter.rb +++ b/lib/openai/models/compound_filter.rb @@ -17,10 +17,15 @@ class CompoundFilter < OpenAI::Internal::Type::BaseModel required :type, enum: -> { OpenAI::Models::CompoundFilter::Type } # @!method initialize(filters:, type:) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::CompoundFilter} for more details. + # # Combine multiple filters using `and` or `or`. # - # @param filters [Array] - # @param type [Symbol, OpenAI::Models::CompoundFilter::Type] + # @param filters [Array] Array of filters to combine. Items can be `ComparisonFilter` or `CompoundFilter` + # ... + # + # @param type [Symbol, OpenAI::Models::CompoundFilter::Type] Type of operation: `and` or `or`. # A filter used to compare a specified attribute key to a given value using a # defined comparison operation. diff --git a/lib/openai/models/create_embedding_response.rb b/lib/openai/models/create_embedding_response.rb index 35e2aa45..e1030791 100644 --- a/lib/openai/models/create_embedding_response.rb +++ b/lib/openai/models/create_embedding_response.rb @@ -29,10 +29,13 @@ class CreateEmbeddingResponse < OpenAI::Internal::Type::BaseModel required :usage, -> { OpenAI::Models::CreateEmbeddingResponse::Usage } # @!method initialize(data:, model:, usage:, object: :list) - # @param data [Array] - # @param model [String] - # @param usage [OpenAI::Models::CreateEmbeddingResponse::Usage] - # @param object [Symbol, :list] + # @param data [Array] The list of embeddings generated by the model. + # + # @param model [String] The name of the model used to generate the embedding. + # + # @param usage [OpenAI::Models::CreateEmbeddingResponse::Usage] The usage information for the request. + # + # @param object [Symbol, :list] The object type, which is always "list". # @see OpenAI::Models::CreateEmbeddingResponse#usage class Usage < OpenAI::Internal::Type::BaseModel @@ -51,8 +54,9 @@ class Usage < OpenAI::Internal::Type::BaseModel # @!method initialize(prompt_tokens:, total_tokens:) # The usage information for the request. # - # @param prompt_tokens [Integer] - # @param total_tokens [Integer] + # @param prompt_tokens [Integer] The number of tokens used by the prompt. + # + # @param total_tokens [Integer] The total number of tokens used by the request. end end end diff --git a/lib/openai/models/embedding.rb b/lib/openai/models/embedding.rb index e1e28ded..41792b3d 100644 --- a/lib/openai/models/embedding.rb +++ b/lib/openai/models/embedding.rb @@ -24,11 +24,17 @@ class Embedding < OpenAI::Internal::Type::BaseModel required :object, const: :embedding # @!method initialize(embedding:, index:, object: :embedding) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Embedding} for more details. + # # Represents an embedding vector returned by embedding endpoint. # - # @param embedding [Array] - # @param index [Integer] - # @param object [Symbol, :embedding] + # @param embedding [Array] The embedding vector, which is a list of floats. The length of vector depends on + # ... + # + # @param index [Integer] The index of the embedding in the list of embeddings. + # + # @param object [Symbol, :embedding] The object type, which is always "embedding". end end end diff --git a/lib/openai/models/embedding_create_params.rb b/lib/openai/models/embedding_create_params.rb index ec1dfd3d..f3fe5c40 100644 --- a/lib/openai/models/embedding_create_params.rb +++ b/lib/openai/models/embedding_create_params.rb @@ -53,11 +53,24 @@ class EmbeddingCreateParams < OpenAI::Internal::Type::BaseModel optional :user, String # @!method initialize(input:, model:, dimensions: nil, encoding_format: nil, user: nil, request_options: {}) - # @param input [String, Array, Array, Array>] - # @param model [String, Symbol, OpenAI::Models::EmbeddingModel] - # @param dimensions [Integer] - # @param encoding_format [Symbol, OpenAI::Models::EmbeddingCreateParams::EncodingFormat] - # @param user [String] + # Some parameter documentations has been truncated, see + # {OpenAI::Models::EmbeddingCreateParams} for more details. + # + # @param input [String, Array, Array, Array>] Input text to embed, encoded as a string or array of tokens. To embed multiple i + # ... + # + # @param model [String, Symbol, OpenAI::Models::EmbeddingModel] ID of the model to use. You can use the [List models](https://platform.openai.co + # ... + # + # @param dimensions [Integer] The number of dimensions the resulting output embeddings should have. Only suppo + # ... + # + # @param encoding_format [Symbol, OpenAI::Models::EmbeddingCreateParams::EncodingFormat] The format to return the embeddings in. Can be either `float` or [`base64`](http + # ... + # + # @param user [String] A unique identifier representing your end-user, which can help OpenAI to monitor + # ... + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] # Input text to embed, encoded as a string or array of tokens. To embed multiple diff --git a/lib/openai/models/eval_create_params.rb b/lib/openai/models/eval_create_params.rb index 5f686026..8f14b19f 100644 --- a/lib/openai/models/eval_create_params.rb +++ b/lib/openai/models/eval_create_params.rb @@ -38,10 +38,17 @@ class EvalCreateParams < OpenAI::Internal::Type::BaseModel optional :name, String # @!method initialize(data_source_config:, testing_criteria:, metadata: nil, name: nil, request_options: {}) - # @param data_source_config [OpenAI::Models::EvalCreateParams::DataSourceConfig::Custom, OpenAI::Models::EvalCreateParams::DataSourceConfig::Logs] - # @param testing_criteria [Array] - # @param metadata [Hash{Symbol=>String}, nil] - # @param name [String] + # Some parameter documentations has been truncated, see + # {OpenAI::Models::EvalCreateParams} for more details. + # + # @param data_source_config [OpenAI::Models::EvalCreateParams::DataSourceConfig::Custom, OpenAI::Models::EvalCreateParams::DataSourceConfig::Logs] The configuration for the data source used for the evaluation runs. + # + # @param testing_criteria [Array] A list of graders for all eval runs in this group. + # + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # + # @param name [String] The name of the evaluation. + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] # The configuration for the data source used for the evaluation runs. @@ -81,6 +88,9 @@ class Custom < OpenAI::Internal::Type::BaseModel optional :include_sample_schema, OpenAI::Internal::Type::Boolean # @!method initialize(item_schema:, include_sample_schema: nil, type: :custom) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::EvalCreateParams::DataSourceConfig::Custom} for more details. + # # A CustomDataSourceConfig object that defines the schema for the data source used # for the evaluation runs. This schema is used to define the shape of the data # that will be: @@ -88,9 +98,12 @@ class Custom < OpenAI::Internal::Type::BaseModel # - Used to define your testing criteria and # - What data is required when creating a run # - # @param item_schema [Hash{Symbol=>Object}] - # @param include_sample_schema [Boolean] - # @param type [Symbol, :custom] + # @param item_schema [Hash{Symbol=>Object}] The json schema for each row in the data source. + # + # @param include_sample_schema [Boolean] Whether the eval should expect you to populate the sample namespace (ie, by gene + # ... + # + # @param type [Symbol, :custom] The type of data source. Always `custom`. end class Logs < OpenAI::Internal::Type::BaseModel @@ -111,8 +124,9 @@ class Logs < OpenAI::Internal::Type::BaseModel # completions query. This is usually metadata like `usecase=chatbot` or # `prompt-version=v2`, etc. # - # @param metadata [Hash{Symbol=>Object}] - # @param type [Symbol, :logs] + # @param metadata [Hash{Symbol=>Object}] Metadata filters for the logs data source. + # + # @param type [Symbol, :logs] The type of data source. Always `logs`. end # @!method self.variants @@ -182,15 +196,25 @@ class LabelModel < OpenAI::Internal::Type::BaseModel required :type, const: :label_model # @!method initialize(input:, labels:, model:, name:, passing_labels:, type: :label_model) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel} for more + # details. + # # A LabelModelGrader object which uses a model to assign labels to each item in # the evaluation. # - # @param input [Array] - # @param labels [Array] - # @param model [String] - # @param name [String] - # @param passing_labels [Array] - # @param type [Symbol, :label_model] + # @param input [Array] A list of chat messages forming the prompt or context. May include variable refe + # ... + # + # @param labels [Array] The labels to classify to each item in the evaluation. + # + # @param model [String] The model to use for the evaluation. Must support structured outputs. + # + # @param name [String] The name of the grader. + # + # @param passing_labels [Array] The labels that indicate a passing result. Must be a subset of labels. + # + # @param type [Symbol, :label_model] The object type, which is always `label_model`. # A chat message that makes up the prompt or context. May include variable # references to the "item" namespace, ie {{item.name}}. @@ -220,8 +244,9 @@ class SimpleInputMessage < OpenAI::Internal::Type::BaseModel required :role, String # @!method initialize(content:, role:) - # @param content [String] - # @param role [String] + # @param content [String] The content of the message. + # + # @param role [String] The role of the message (e.g. "system", "assistant", "user"). end class EvalItem < OpenAI::Internal::Type::BaseModel @@ -248,15 +273,21 @@ class EvalItem < OpenAI::Internal::Type::BaseModel enum: -> { OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::Type } # @!method initialize(content:, role:, type: nil) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem} + # for more details. + # # A message input to the model with a role indicating instruction following # hierarchy. Instructions given with the `developer` or `system` role take # precedence over instructions given with the `user` role. Messages with the # `assistant` role are presumed to have been generated by the model in previous # interactions. # - # @param content [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::Content::OutputText] - # @param role [Symbol, OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::Role] - # @param type [Symbol, OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::Type] + # @param content [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::Content::OutputText] Text inputs to the model - can contain template strings. ... + # + # @param role [Symbol, OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::Role] The role of the message input. One of `user`, `assistant`, `system`, or ... + # + # @param type [Symbol, OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::Type] The type of the message input. Always `message`. ... # Text inputs to the model - can contain template strings. # @@ -287,10 +318,15 @@ class OutputText < OpenAI::Internal::Type::BaseModel required :type, const: :output_text # @!method initialize(text:, type: :output_text) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::Content::OutputText} + # for more details. + # # A text output from the model. # - # @param text [String] - # @param type [Symbol, :output_text] + # @param text [String] The text output from the model. ... + # + # @param type [Symbol, :output_text] The type of the output text. Always `output_text`. ... end # @!method self.variants @@ -365,11 +401,15 @@ class Python < OpenAI::Internal::Type::BaseModel # @!method initialize(name:, source:, image_tag: nil, pass_threshold: nil, type: :python) # A PythonGrader object that runs a python script on the input. # - # @param name [String] - # @param source [String] - # @param image_tag [String] - # @param pass_threshold [Float] - # @param type [Symbol, :python] + # @param name [String] The name of the grader. + # + # @param source [String] The source code of the python script. + # + # @param image_tag [String] The image tag to use for the python script. + # + # @param pass_threshold [Float] The threshold for the score. + # + # @param type [Symbol, :python] The object type, which is always `python`. end class ScoreModel < OpenAI::Internal::Type::BaseModel @@ -419,13 +459,19 @@ class ScoreModel < OpenAI::Internal::Type::BaseModel # @!method initialize(input:, model:, name:, pass_threshold: nil, range: nil, sampling_params: nil, type: :score_model) # A ScoreModelGrader object that uses a model to assign a score to the input. # - # @param input [Array] - # @param model [String] - # @param name [String] - # @param pass_threshold [Float] - # @param range [Array] - # @param sampling_params [Object] - # @param type [Symbol, :score_model] + # @param input [Array] The input text. This may include template strings. + # + # @param model [String] The model to use for the evaluation. + # + # @param name [String] The name of the grader. + # + # @param pass_threshold [Float] The threshold for the score. + # + # @param range [Array] The range of the score. Defaults to `[0, 1]`. + # + # @param sampling_params [Object] The sampling parameters for the model. + # + # @param type [Symbol, :score_model] The object type, which is always `score_model`. class Input < OpenAI::Internal::Type::BaseModel # @!attribute content @@ -449,15 +495,21 @@ class Input < OpenAI::Internal::Type::BaseModel optional :type, enum: -> { OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input::Type } # @!method initialize(content:, role:, type: nil) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input} for more + # details. + # # A message input to the model with a role indicating instruction following # hierarchy. Instructions given with the `developer` or `system` role take # precedence over instructions given with the `user` role. Messages with the # `assistant` role are presumed to have been generated by the model in previous # interactions. # - # @param content [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input::Content::OutputText] - # @param role [Symbol, OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input::Role] - # @param type [Symbol, OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input::Type] + # @param content [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input::Content::OutputText] Text inputs to the model - can contain template strings. ... + # + # @param role [Symbol, OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input::Role] The role of the message input. One of `user`, `assistant`, `system`, or ... + # + # @param type [Symbol, OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input::Type] The type of the message input. Always `message`. ... # Text inputs to the model - can contain template strings. # @@ -488,10 +540,15 @@ class OutputText < OpenAI::Internal::Type::BaseModel required :type, const: :output_text # @!method initialize(text:, type: :output_text) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input::Content::OutputText} + # for more details. + # # A text output from the model. # - # @param text [String] - # @param type [Symbol, :output_text] + # @param text [String] The text output from the model. ... + # + # @param type [Symbol, :output_text] The type of the output text. Always `output_text`. ... end # @!method self.variants diff --git a/lib/openai/models/eval_create_response.rb b/lib/openai/models/eval_create_response.rb index 65885fd7..cd141022 100644 --- a/lib/openai/models/eval_create_response.rb +++ b/lib/openai/models/eval_create_response.rb @@ -53,6 +53,9 @@ class EvalCreateResponse < OpenAI::Internal::Type::BaseModel -> { OpenAI::Internal::Type::ArrayOf[union: OpenAI::Models::EvalCreateResponse::TestingCriterion] } # @!method initialize(id:, created_at:, data_source_config:, metadata:, name:, testing_criteria:, object: :eval) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::EvalCreateResponse} for more details. + # # An Eval object with a data source config and testing criteria. An Eval # represents a task to be done for your LLM integration. Like: # @@ -60,13 +63,19 @@ class EvalCreateResponse < OpenAI::Internal::Type::BaseModel # - See how well my chatbot handles customer support # - Check if o3-mini is better at my usecase than gpt-4o # - # @param id [String] - # @param created_at [Integer] - # @param data_source_config [OpenAI::Models::EvalCustomDataSourceConfig, OpenAI::Models::EvalStoredCompletionsDataSourceConfig] - # @param metadata [Hash{Symbol=>String}, nil] - # @param name [String] - # @param testing_criteria [Array] - # @param object [Symbol, :eval] + # @param id [String] Unique identifier for the evaluation. + # + # @param created_at [Integer] The Unix timestamp (in seconds) for when the eval was created. + # + # @param data_source_config [OpenAI::Models::EvalCustomDataSourceConfig, OpenAI::Models::EvalStoredCompletionsDataSourceConfig] Configuration of data sources used in runs of the evaluation. + # + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # + # @param name [String] The name of the evaluation. + # + # @param testing_criteria [Array] A list of testing criteria. + # + # @param object [Symbol, :eval] The object type. # Configuration of data sources used in runs of the evaluation. # @@ -149,11 +158,15 @@ class Python < OpenAI::Internal::Type::BaseModel # @!method initialize(name:, source:, image_tag: nil, pass_threshold: nil, type: :python) # A PythonGrader object that runs a python script on the input. # - # @param name [String] - # @param source [String] - # @param image_tag [String] - # @param pass_threshold [Float] - # @param type [Symbol, :python] + # @param name [String] The name of the grader. + # + # @param source [String] The source code of the python script. + # + # @param image_tag [String] The image tag to use for the python script. + # + # @param pass_threshold [Float] The threshold for the score. + # + # @param type [Symbol, :python] The object type, which is always `python`. end class ScoreModel < OpenAI::Internal::Type::BaseModel @@ -203,13 +216,19 @@ class ScoreModel < OpenAI::Internal::Type::BaseModel # @!method initialize(input:, model:, name:, pass_threshold: nil, range: nil, sampling_params: nil, type: :score_model) # A ScoreModelGrader object that uses a model to assign a score to the input. # - # @param input [Array] - # @param model [String] - # @param name [String] - # @param pass_threshold [Float] - # @param range [Array] - # @param sampling_params [Object] - # @param type [Symbol, :score_model] + # @param input [Array] The input text. This may include template strings. + # + # @param model [String] The model to use for the evaluation. + # + # @param name [String] The name of the grader. + # + # @param pass_threshold [Float] The threshold for the score. + # + # @param range [Array] The range of the score. Defaults to `[0, 1]`. + # + # @param sampling_params [Object] The sampling parameters for the model. + # + # @param type [Symbol, :score_model] The object type, which is always `score_model`. class Input < OpenAI::Internal::Type::BaseModel # @!attribute content @@ -233,15 +252,21 @@ class Input < OpenAI::Internal::Type::BaseModel optional :type, enum: -> { OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Type } # @!method initialize(content:, role:, type: nil) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input} for + # more details. + # # A message input to the model with a role indicating instruction following # hierarchy. Instructions given with the `developer` or `system` role take # precedence over instructions given with the `user` role. Messages with the # `assistant` role are presumed to have been generated by the model in previous # interactions. # - # @param content [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Content::OutputText] - # @param role [Symbol, OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Role] - # @param type [Symbol, OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Type] + # @param content [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Content::OutputText] Text inputs to the model - can contain template strings. ... + # + # @param role [Symbol, OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Role] The role of the message input. One of `user`, `assistant`, `system`, or ... + # + # @param type [Symbol, OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Type] The type of the message input. Always `message`. ... # Text inputs to the model - can contain template strings. # @@ -272,10 +297,15 @@ class OutputText < OpenAI::Internal::Type::BaseModel required :type, const: :output_text # @!method initialize(text:, type: :output_text) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Content::OutputText} + # for more details. + # # A text output from the model. # - # @param text [String] - # @param type [Symbol, :output_text] + # @param text [String] The text output from the model. ... + # + # @param type [Symbol, :output_text] The type of the output text. Always `output_text`. ... end # @!method self.variants diff --git a/lib/openai/models/eval_custom_data_source_config.rb b/lib/openai/models/eval_custom_data_source_config.rb index 04e45803..84577b43 100644 --- a/lib/openai/models/eval_custom_data_source_config.rb +++ b/lib/openai/models/eval_custom_data_source_config.rb @@ -17,6 +17,9 @@ class EvalCustomDataSourceConfig < OpenAI::Internal::Type::BaseModel required :type, const: :custom # @!method initialize(schema:, type: :custom) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::EvalCustomDataSourceConfig} for more details. + # # A CustomDataSourceConfig which specifies the schema of your `item` and # optionally `sample` namespaces. The response schema defines the shape of the # data that will be: @@ -24,8 +27,9 @@ class EvalCustomDataSourceConfig < OpenAI::Internal::Type::BaseModel # - Used to define your testing criteria and # - What data is required when creating a run # - # @param schema [Hash{Symbol=>Object}] - # @param type [Symbol, :custom] + # @param schema [Hash{Symbol=>Object}] The json schema for the run data source items. ... + # + # @param type [Symbol, :custom] The type of data source. Always `custom`. end end end diff --git a/lib/openai/models/eval_label_model_grader.rb b/lib/openai/models/eval_label_model_grader.rb index 2af7746f..32db2840 100644 --- a/lib/openai/models/eval_label_model_grader.rb +++ b/lib/openai/models/eval_label_model_grader.rb @@ -43,11 +43,16 @@ class EvalLabelModelGrader < OpenAI::Internal::Type::BaseModel # the evaluation. # # @param input [Array] - # @param labels [Array] - # @param model [String] - # @param name [String] - # @param passing_labels [Array] - # @param type [Symbol, :label_model] + # + # @param labels [Array] The labels to assign to each item in the evaluation. + # + # @param model [String] The model to use for the evaluation. Must support structured outputs. + # + # @param name [String] The name of the grader. + # + # @param passing_labels [Array] The labels that indicate a passing result. Must be a subset of labels. + # + # @param type [Symbol, :label_model] The object type, which is always `label_model`. class Input < OpenAI::Internal::Type::BaseModel # @!attribute content @@ -70,15 +75,20 @@ class Input < OpenAI::Internal::Type::BaseModel optional :type, enum: -> { OpenAI::Models::EvalLabelModelGrader::Input::Type } # @!method initialize(content:, role:, type: nil) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::EvalLabelModelGrader::Input} for more details. + # # A message input to the model with a role indicating instruction following # hierarchy. Instructions given with the `developer` or `system` role take # precedence over instructions given with the `user` role. Messages with the # `assistant` role are presumed to have been generated by the model in previous # interactions. # - # @param content [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::EvalLabelModelGrader::Input::Content::OutputText] - # @param role [Symbol, OpenAI::Models::EvalLabelModelGrader::Input::Role] - # @param type [Symbol, OpenAI::Models::EvalLabelModelGrader::Input::Type] + # @param content [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::EvalLabelModelGrader::Input::Content::OutputText] Text inputs to the model - can contain template strings. ... + # + # @param role [Symbol, OpenAI::Models::EvalLabelModelGrader::Input::Role] The role of the message input. One of `user`, `assistant`, `system`, or ... + # + # @param type [Symbol, OpenAI::Models::EvalLabelModelGrader::Input::Type] The type of the message input. Always `message`. ... # Text inputs to the model - can contain template strings. # @@ -109,10 +119,15 @@ class OutputText < OpenAI::Internal::Type::BaseModel required :type, const: :output_text # @!method initialize(text:, type: :output_text) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::EvalLabelModelGrader::Input::Content::OutputText} for more + # details. + # # A text output from the model. # - # @param text [String] - # @param type [Symbol, :output_text] + # @param text [String] The text output from the model. ... + # + # @param type [Symbol, :output_text] The type of the output text. Always `output_text`. ... end # @!method self.variants diff --git a/lib/openai/models/eval_list_params.rb b/lib/openai/models/eval_list_params.rb index 3888ef6c..7fa913a0 100644 --- a/lib/openai/models/eval_list_params.rb +++ b/lib/openai/models/eval_list_params.rb @@ -34,10 +34,18 @@ class EvalListParams < OpenAI::Internal::Type::BaseModel optional :order_by, enum: -> { OpenAI::Models::EvalListParams::OrderBy } # @!method initialize(after: nil, limit: nil, order: nil, order_by: nil, request_options: {}) - # @param after [String] - # @param limit [Integer] - # @param order [Symbol, OpenAI::Models::EvalListParams::Order] - # @param order_by [Symbol, OpenAI::Models::EvalListParams::OrderBy] + # Some parameter documentations has been truncated, see + # {OpenAI::Models::EvalListParams} for more details. + # + # @param after [String] Identifier for the last eval from the previous pagination request. + # + # @param limit [Integer] Number of evals to retrieve. + # + # @param order [Symbol, OpenAI::Models::EvalListParams::Order] Sort order for evals by timestamp. Use `asc` for ascending order or `desc` for d + # ... + # + # @param order_by [Symbol, OpenAI::Models::EvalListParams::OrderBy] Evals can be ordered by creation time or last updated time. Use ... + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] # Sort order for evals by timestamp. Use `asc` for ascending order or `desc` for diff --git a/lib/openai/models/eval_list_response.rb b/lib/openai/models/eval_list_response.rb index d80085f0..b7bf7898 100644 --- a/lib/openai/models/eval_list_response.rb +++ b/lib/openai/models/eval_list_response.rb @@ -53,6 +53,9 @@ class EvalListResponse < OpenAI::Internal::Type::BaseModel -> { OpenAI::Internal::Type::ArrayOf[union: OpenAI::Models::EvalListResponse::TestingCriterion] } # @!method initialize(id:, created_at:, data_source_config:, metadata:, name:, testing_criteria:, object: :eval) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::EvalListResponse} for more details. + # # An Eval object with a data source config and testing criteria. An Eval # represents a task to be done for your LLM integration. Like: # @@ -60,13 +63,19 @@ class EvalListResponse < OpenAI::Internal::Type::BaseModel # - See how well my chatbot handles customer support # - Check if o3-mini is better at my usecase than gpt-4o # - # @param id [String] - # @param created_at [Integer] - # @param data_source_config [OpenAI::Models::EvalCustomDataSourceConfig, OpenAI::Models::EvalStoredCompletionsDataSourceConfig] - # @param metadata [Hash{Symbol=>String}, nil] - # @param name [String] - # @param testing_criteria [Array] - # @param object [Symbol, :eval] + # @param id [String] Unique identifier for the evaluation. + # + # @param created_at [Integer] The Unix timestamp (in seconds) for when the eval was created. + # + # @param data_source_config [OpenAI::Models::EvalCustomDataSourceConfig, OpenAI::Models::EvalStoredCompletionsDataSourceConfig] Configuration of data sources used in runs of the evaluation. + # + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # + # @param name [String] The name of the evaluation. + # + # @param testing_criteria [Array] A list of testing criteria. + # + # @param object [Symbol, :eval] The object type. # Configuration of data sources used in runs of the evaluation. # @@ -149,11 +158,15 @@ class Python < OpenAI::Internal::Type::BaseModel # @!method initialize(name:, source:, image_tag: nil, pass_threshold: nil, type: :python) # A PythonGrader object that runs a python script on the input. # - # @param name [String] - # @param source [String] - # @param image_tag [String] - # @param pass_threshold [Float] - # @param type [Symbol, :python] + # @param name [String] The name of the grader. + # + # @param source [String] The source code of the python script. + # + # @param image_tag [String] The image tag to use for the python script. + # + # @param pass_threshold [Float] The threshold for the score. + # + # @param type [Symbol, :python] The object type, which is always `python`. end class ScoreModel < OpenAI::Internal::Type::BaseModel @@ -203,13 +216,19 @@ class ScoreModel < OpenAI::Internal::Type::BaseModel # @!method initialize(input:, model:, name:, pass_threshold: nil, range: nil, sampling_params: nil, type: :score_model) # A ScoreModelGrader object that uses a model to assign a score to the input. # - # @param input [Array] - # @param model [String] - # @param name [String] - # @param pass_threshold [Float] - # @param range [Array] - # @param sampling_params [Object] - # @param type [Symbol, :score_model] + # @param input [Array] The input text. This may include template strings. + # + # @param model [String] The model to use for the evaluation. + # + # @param name [String] The name of the grader. + # + # @param pass_threshold [Float] The threshold for the score. + # + # @param range [Array] The range of the score. Defaults to `[0, 1]`. + # + # @param sampling_params [Object] The sampling parameters for the model. + # + # @param type [Symbol, :score_model] The object type, which is always `score_model`. class Input < OpenAI::Internal::Type::BaseModel # @!attribute content @@ -233,15 +252,21 @@ class Input < OpenAI::Internal::Type::BaseModel optional :type, enum: -> { OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Type } # @!method initialize(content:, role:, type: nil) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input} for more + # details. + # # A message input to the model with a role indicating instruction following # hierarchy. Instructions given with the `developer` or `system` role take # precedence over instructions given with the `user` role. Messages with the # `assistant` role are presumed to have been generated by the model in previous # interactions. # - # @param content [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Content::OutputText] - # @param role [Symbol, OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Role] - # @param type [Symbol, OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Type] + # @param content [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Content::OutputText] Text inputs to the model - can contain template strings. ... + # + # @param role [Symbol, OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Role] The role of the message input. One of `user`, `assistant`, `system`, or ... + # + # @param type [Symbol, OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Type] The type of the message input. Always `message`. ... # Text inputs to the model - can contain template strings. # @@ -272,10 +297,15 @@ class OutputText < OpenAI::Internal::Type::BaseModel required :type, const: :output_text # @!method initialize(text:, type: :output_text) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Content::OutputText} + # for more details. + # # A text output from the model. # - # @param text [String] - # @param type [Symbol, :output_text] + # @param text [String] The text output from the model. ... + # + # @param type [Symbol, :output_text] The type of the output text. Always `output_text`. ... end # @!method self.variants diff --git a/lib/openai/models/eval_retrieve_response.rb b/lib/openai/models/eval_retrieve_response.rb index e90d4965..f6f13166 100644 --- a/lib/openai/models/eval_retrieve_response.rb +++ b/lib/openai/models/eval_retrieve_response.rb @@ -53,6 +53,9 @@ class EvalRetrieveResponse < OpenAI::Internal::Type::BaseModel -> { OpenAI::Internal::Type::ArrayOf[union: OpenAI::Models::EvalRetrieveResponse::TestingCriterion] } # @!method initialize(id:, created_at:, data_source_config:, metadata:, name:, testing_criteria:, object: :eval) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::EvalRetrieveResponse} for more details. + # # An Eval object with a data source config and testing criteria. An Eval # represents a task to be done for your LLM integration. Like: # @@ -60,13 +63,19 @@ class EvalRetrieveResponse < OpenAI::Internal::Type::BaseModel # - See how well my chatbot handles customer support # - Check if o3-mini is better at my usecase than gpt-4o # - # @param id [String] - # @param created_at [Integer] - # @param data_source_config [OpenAI::Models::EvalCustomDataSourceConfig, OpenAI::Models::EvalStoredCompletionsDataSourceConfig] - # @param metadata [Hash{Symbol=>String}, nil] - # @param name [String] - # @param testing_criteria [Array] - # @param object [Symbol, :eval] + # @param id [String] Unique identifier for the evaluation. + # + # @param created_at [Integer] The Unix timestamp (in seconds) for when the eval was created. + # + # @param data_source_config [OpenAI::Models::EvalCustomDataSourceConfig, OpenAI::Models::EvalStoredCompletionsDataSourceConfig] Configuration of data sources used in runs of the evaluation. + # + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # + # @param name [String] The name of the evaluation. + # + # @param testing_criteria [Array] A list of testing criteria. + # + # @param object [Symbol, :eval] The object type. # Configuration of data sources used in runs of the evaluation. # @@ -149,11 +158,15 @@ class Python < OpenAI::Internal::Type::BaseModel # @!method initialize(name:, source:, image_tag: nil, pass_threshold: nil, type: :python) # A PythonGrader object that runs a python script on the input. # - # @param name [String] - # @param source [String] - # @param image_tag [String] - # @param pass_threshold [Float] - # @param type [Symbol, :python] + # @param name [String] The name of the grader. + # + # @param source [String] The source code of the python script. + # + # @param image_tag [String] The image tag to use for the python script. + # + # @param pass_threshold [Float] The threshold for the score. + # + # @param type [Symbol, :python] The object type, which is always `python`. end class ScoreModel < OpenAI::Internal::Type::BaseModel @@ -203,13 +216,19 @@ class ScoreModel < OpenAI::Internal::Type::BaseModel # @!method initialize(input:, model:, name:, pass_threshold: nil, range: nil, sampling_params: nil, type: :score_model) # A ScoreModelGrader object that uses a model to assign a score to the input. # - # @param input [Array] - # @param model [String] - # @param name [String] - # @param pass_threshold [Float] - # @param range [Array] - # @param sampling_params [Object] - # @param type [Symbol, :score_model] + # @param input [Array] The input text. This may include template strings. + # + # @param model [String] The model to use for the evaluation. + # + # @param name [String] The name of the grader. + # + # @param pass_threshold [Float] The threshold for the score. + # + # @param range [Array] The range of the score. Defaults to `[0, 1]`. + # + # @param sampling_params [Object] The sampling parameters for the model. + # + # @param type [Symbol, :score_model] The object type, which is always `score_model`. class Input < OpenAI::Internal::Type::BaseModel # @!attribute content @@ -235,15 +254,21 @@ class Input < OpenAI::Internal::Type::BaseModel enum: -> { OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Type } # @!method initialize(content:, role:, type: nil) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input} for + # more details. + # # A message input to the model with a role indicating instruction following # hierarchy. Instructions given with the `developer` or `system` role take # precedence over instructions given with the `user` role. Messages with the # `assistant` role are presumed to have been generated by the model in previous # interactions. # - # @param content [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Content::OutputText] - # @param role [Symbol, OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Role] - # @param type [Symbol, OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Type] + # @param content [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Content::OutputText] Text inputs to the model - can contain template strings. ... + # + # @param role [Symbol, OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Role] The role of the message input. One of `user`, `assistant`, `system`, or ... + # + # @param type [Symbol, OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Type] The type of the message input. Always `message`. ... # Text inputs to the model - can contain template strings. # @@ -274,10 +299,15 @@ class OutputText < OpenAI::Internal::Type::BaseModel required :type, const: :output_text # @!method initialize(text:, type: :output_text) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Content::OutputText} + # for more details. + # # A text output from the model. # - # @param text [String] - # @param type [Symbol, :output_text] + # @param text [String] The text output from the model. ... + # + # @param type [Symbol, :output_text] The type of the output text. Always `output_text`. ... end # @!method self.variants diff --git a/lib/openai/models/eval_stored_completions_data_source_config.rb b/lib/openai/models/eval_stored_completions_data_source_config.rb index 53940b3e..0055f9bc 100644 --- a/lib/openai/models/eval_stored_completions_data_source_config.rb +++ b/lib/openai/models/eval_stored_completions_data_source_config.rb @@ -28,15 +28,20 @@ class EvalStoredCompletionsDataSourceConfig < OpenAI::Internal::Type::BaseModel optional :metadata, OpenAI::Internal::Type::HashOf[String], nil?: true # @!method initialize(schema:, metadata: nil, type: :stored_completions) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::EvalStoredCompletionsDataSourceConfig} for more details. + # # A StoredCompletionsDataSourceConfig which specifies the metadata property of # your stored completions query. This is usually metadata like `usecase=chatbot` # or `prompt-version=v2`, etc. The schema returned by this data source config is # used to defined what variables are available in your evals. `item` and `sample` # are both defined when using this data source config. # - # @param schema [Hash{Symbol=>Object}] - # @param metadata [Hash{Symbol=>String}, nil] - # @param type [Symbol, :stored_completions] + # @param schema [Hash{Symbol=>Object}] The json schema for the run data source items. ... + # + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # + # @param type [Symbol, :stored_completions] The type of data source. Always `stored_completions`. end end end diff --git a/lib/openai/models/eval_string_check_grader.rb b/lib/openai/models/eval_string_check_grader.rb index 421bb059..8563a345 100644 --- a/lib/openai/models/eval_string_check_grader.rb +++ b/lib/openai/models/eval_string_check_grader.rb @@ -37,11 +37,15 @@ class EvalStringCheckGrader < OpenAI::Internal::Type::BaseModel # A StringCheckGrader object that performs a string comparison between input and # reference using a specified operation. # - # @param input [String] - # @param name [String] - # @param operation [Symbol, OpenAI::Models::EvalStringCheckGrader::Operation] - # @param reference [String] - # @param type [Symbol, :string_check] + # @param input [String] The input text. This may include template strings. + # + # @param name [String] The name of the grader. + # + # @param operation [Symbol, OpenAI::Models::EvalStringCheckGrader::Operation] The string check operation to perform. One of `eq`, `ne`, `like`, or `ilike`. + # + # @param reference [String] The reference text. This may include template strings. + # + # @param type [Symbol, :string_check] The object type, which is always `string_check`. # The string check operation to perform. One of `eq`, `ne`, `like`, or `ilike`. # diff --git a/lib/openai/models/eval_text_similarity_grader.rb b/lib/openai/models/eval_text_similarity_grader.rb index 2a8d70e0..4118b58b 100644 --- a/lib/openai/models/eval_text_similarity_grader.rb +++ b/lib/openai/models/eval_text_similarity_grader.rb @@ -41,14 +41,23 @@ class EvalTextSimilarityGrader < OpenAI::Internal::Type::BaseModel optional :name, String # @!method initialize(evaluation_metric:, input:, pass_threshold:, reference:, name: nil, type: :text_similarity) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::EvalTextSimilarityGrader} for more details. + # # A TextSimilarityGrader object which grades text based on similarity metrics. # - # @param evaluation_metric [Symbol, OpenAI::Models::EvalTextSimilarityGrader::EvaluationMetric] - # @param input [String] - # @param pass_threshold [Float] - # @param reference [String] - # @param name [String] - # @param type [Symbol, :text_similarity] + # @param evaluation_metric [Symbol, OpenAI::Models::EvalTextSimilarityGrader::EvaluationMetric] The evaluation metric to use. One of `fuzzy_match`, `bleu`, `gleu`, `meteor`, `r + # ... + # + # @param input [String] The text being graded. + # + # @param pass_threshold [Float] A float score where a value greater than or equal indicates a passing grade. + # + # @param reference [String] The text being graded against. + # + # @param name [String] The name of the grader. + # + # @param type [Symbol, :text_similarity] The type of grader. # The evaluation metric to use. One of `fuzzy_match`, `bleu`, `gleu`, `meteor`, # `rouge_1`, `rouge_2`, `rouge_3`, `rouge_4`, `rouge_5`, or `rouge_l`. diff --git a/lib/openai/models/eval_update_params.rb b/lib/openai/models/eval_update_params.rb index c8476dcf..baad5c63 100644 --- a/lib/openai/models/eval_update_params.rb +++ b/lib/openai/models/eval_update_params.rb @@ -25,8 +25,13 @@ class EvalUpdateParams < OpenAI::Internal::Type::BaseModel optional :name, String # @!method initialize(metadata: nil, name: nil, request_options: {}) - # @param metadata [Hash{Symbol=>String}, nil] - # @param name [String] + # Some parameter documentations has been truncated, see + # {OpenAI::Models::EvalUpdateParams} for more details. + # + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # + # @param name [String] Rename the evaluation. + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] end end diff --git a/lib/openai/models/eval_update_response.rb b/lib/openai/models/eval_update_response.rb index 923a9e03..2bc0b524 100644 --- a/lib/openai/models/eval_update_response.rb +++ b/lib/openai/models/eval_update_response.rb @@ -53,6 +53,9 @@ class EvalUpdateResponse < OpenAI::Internal::Type::BaseModel -> { OpenAI::Internal::Type::ArrayOf[union: OpenAI::Models::EvalUpdateResponse::TestingCriterion] } # @!method initialize(id:, created_at:, data_source_config:, metadata:, name:, testing_criteria:, object: :eval) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::EvalUpdateResponse} for more details. + # # An Eval object with a data source config and testing criteria. An Eval # represents a task to be done for your LLM integration. Like: # @@ -60,13 +63,19 @@ class EvalUpdateResponse < OpenAI::Internal::Type::BaseModel # - See how well my chatbot handles customer support # - Check if o3-mini is better at my usecase than gpt-4o # - # @param id [String] - # @param created_at [Integer] - # @param data_source_config [OpenAI::Models::EvalCustomDataSourceConfig, OpenAI::Models::EvalStoredCompletionsDataSourceConfig] - # @param metadata [Hash{Symbol=>String}, nil] - # @param name [String] - # @param testing_criteria [Array] - # @param object [Symbol, :eval] + # @param id [String] Unique identifier for the evaluation. + # + # @param created_at [Integer] The Unix timestamp (in seconds) for when the eval was created. + # + # @param data_source_config [OpenAI::Models::EvalCustomDataSourceConfig, OpenAI::Models::EvalStoredCompletionsDataSourceConfig] Configuration of data sources used in runs of the evaluation. + # + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # + # @param name [String] The name of the evaluation. + # + # @param testing_criteria [Array] A list of testing criteria. + # + # @param object [Symbol, :eval] The object type. # Configuration of data sources used in runs of the evaluation. # @@ -149,11 +158,15 @@ class Python < OpenAI::Internal::Type::BaseModel # @!method initialize(name:, source:, image_tag: nil, pass_threshold: nil, type: :python) # A PythonGrader object that runs a python script on the input. # - # @param name [String] - # @param source [String] - # @param image_tag [String] - # @param pass_threshold [Float] - # @param type [Symbol, :python] + # @param name [String] The name of the grader. + # + # @param source [String] The source code of the python script. + # + # @param image_tag [String] The image tag to use for the python script. + # + # @param pass_threshold [Float] The threshold for the score. + # + # @param type [Symbol, :python] The object type, which is always `python`. end class ScoreModel < OpenAI::Internal::Type::BaseModel @@ -203,13 +216,19 @@ class ScoreModel < OpenAI::Internal::Type::BaseModel # @!method initialize(input:, model:, name:, pass_threshold: nil, range: nil, sampling_params: nil, type: :score_model) # A ScoreModelGrader object that uses a model to assign a score to the input. # - # @param input [Array] - # @param model [String] - # @param name [String] - # @param pass_threshold [Float] - # @param range [Array] - # @param sampling_params [Object] - # @param type [Symbol, :score_model] + # @param input [Array] The input text. This may include template strings. + # + # @param model [String] The model to use for the evaluation. + # + # @param name [String] The name of the grader. + # + # @param pass_threshold [Float] The threshold for the score. + # + # @param range [Array] The range of the score. Defaults to `[0, 1]`. + # + # @param sampling_params [Object] The sampling parameters for the model. + # + # @param type [Symbol, :score_model] The object type, which is always `score_model`. class Input < OpenAI::Internal::Type::BaseModel # @!attribute content @@ -233,15 +252,21 @@ class Input < OpenAI::Internal::Type::BaseModel optional :type, enum: -> { OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Type } # @!method initialize(content:, role:, type: nil) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input} for + # more details. + # # A message input to the model with a role indicating instruction following # hierarchy. Instructions given with the `developer` or `system` role take # precedence over instructions given with the `user` role. Messages with the # `assistant` role are presumed to have been generated by the model in previous # interactions. # - # @param content [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Content::OutputText] - # @param role [Symbol, OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Role] - # @param type [Symbol, OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Type] + # @param content [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Content::OutputText] Text inputs to the model - can contain template strings. ... + # + # @param role [Symbol, OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Role] The role of the message input. One of `user`, `assistant`, `system`, or ... + # + # @param type [Symbol, OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Type] The type of the message input. Always `message`. ... # Text inputs to the model - can contain template strings. # @@ -272,10 +297,15 @@ class OutputText < OpenAI::Internal::Type::BaseModel required :type, const: :output_text # @!method initialize(text:, type: :output_text) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Content::OutputText} + # for more details. + # # A text output from the model. # - # @param text [String] - # @param type [Symbol, :output_text] + # @param text [String] The text output from the model. ... + # + # @param type [Symbol, :output_text] The type of the output text. Always `output_text`. ... end # @!method self.variants diff --git a/lib/openai/models/evals/create_eval_completions_run_data_source.rb b/lib/openai/models/evals/create_eval_completions_run_data_source.rb index d4f61b7b..eaa0f6e4 100644 --- a/lib/openai/models/evals/create_eval_completions_run_data_source.rb +++ b/lib/openai/models/evals/create_eval_completions_run_data_source.rb @@ -35,12 +35,19 @@ class CreateEvalCompletionsRunDataSource < OpenAI::Internal::Type::BaseModel -> { OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::SamplingParams } # @!method initialize(source:, type:, input_messages: nil, model: nil, sampling_params: nil) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource} for more details. + # # A CompletionsRunDataSource object describing a model sampling configuration. # - # @param source [OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Source::FileContent, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Source::FileID, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Source::StoredCompletions] - # @param type [Symbol, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Type] + # @param source [OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Source::FileContent, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Source::FileID, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Source::StoredCompletions] A StoredCompletionsRunDataSource configuration describing a set of filters ... + # + # @param type [Symbol, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Type] The type of run data source. Always `completions`. + # # @param input_messages [OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::ItemReference] - # @param model [String] + # + # @param model [String] The name of the model to use for generating completions (e.g. "o3-mini"). + # # @param sampling_params [OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::SamplingParams] # A StoredCompletionsRunDataSource configuration describing a set of filters @@ -75,8 +82,9 @@ class FileContent < OpenAI::Internal::Type::BaseModel required :type, const: :file_content # @!method initialize(content:, type: :file_content) - # @param content [Array] - # @param type [Symbol, :file_content] + # @param content [Array] The content of the jsonl file. + # + # @param type [Symbol, :file_content] The type of jsonl source. Always `file_content`. class Content < OpenAI::Internal::Type::BaseModel # @!attribute item @@ -109,8 +117,9 @@ class FileID < OpenAI::Internal::Type::BaseModel required :type, const: :file_id # @!method initialize(id:, type: :file_id) - # @param id [String] - # @param type [Symbol, :file_id] + # @param id [String] The identifier of the file. + # + # @param type [Symbol, :file_id] The type of jsonl source. Always `file_id`. end class StoredCompletions < OpenAI::Internal::Type::BaseModel @@ -156,14 +165,23 @@ class StoredCompletions < OpenAI::Internal::Type::BaseModel optional :model, String, nil?: true # @!method initialize(created_after: nil, created_before: nil, limit: nil, metadata: nil, model: nil, type: :stored_completions) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Source::StoredCompletions} + # for more details. + # # A StoredCompletionsRunDataSource configuration describing a set of filters # - # @param created_after [Integer, nil] - # @param created_before [Integer, nil] - # @param limit [Integer, nil] - # @param metadata [Hash{Symbol=>String}, nil] - # @param model [String, nil] - # @param type [Symbol, :stored_completions] + # @param created_after [Integer, nil] An optional Unix timestamp to filter items created after this time. + # + # @param created_before [Integer, nil] An optional Unix timestamp to filter items created before this time. + # + # @param limit [Integer, nil] An optional maximum number of items to return. + # + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # + # @param model [String, nil] An optional model to filter by (e.g., 'gpt-4o'). + # + # @param type [Symbol, :stored_completions] The type of source. Always `stored_completions`. end # @!method self.variants @@ -210,8 +228,14 @@ class Template < OpenAI::Internal::Type::BaseModel required :type, const: :template # @!method initialize(template:, type: :template) - # @param template [Array] - # @param type [Symbol, :template] + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template} + # for more details. + # + # @param template [Array] A list of chat messages forming the prompt or context. May include variable refe + # ... + # + # @param type [Symbol, :template] The type of input messages. Always `template`. # A message input to the model with a role indicating instruction following # hierarchy. Instructions given with the `developer` or `system` role take @@ -262,15 +286,21 @@ class Message < OpenAI::Internal::Type::BaseModel enum: -> { OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::Type } # @!method initialize(content:, role:, type: nil) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message} + # for more details. + # # A message input to the model with a role indicating instruction following # hierarchy. Instructions given with the `developer` or `system` role take # precedence over instructions given with the `user` role. Messages with the # `assistant` role are presumed to have been generated by the model in previous # interactions. # - # @param content [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::Content::OutputText] - # @param role [Symbol, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::Role] - # @param type [Symbol, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::Type] + # @param content [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::Content::OutputText] Text inputs to the model - can contain template strings. ... + # + # @param role [Symbol, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::Role] The role of the message input. One of `user`, `assistant`, `system`, or ... + # + # @param type [Symbol, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::Type] The type of the message input. Always `message`. ... # Text inputs to the model - can contain template strings. # @@ -301,10 +331,15 @@ class OutputText < OpenAI::Internal::Type::BaseModel required :type, const: :output_text # @!method initialize(text:, type: :output_text) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::Content::OutputText} + # for more details. + # # A text output from the model. # - # @param text [String] - # @param type [Symbol, :output_text] + # @param text [String] The text output from the model. ... + # + # @param type [Symbol, :output_text] The type of the output text. Always `output_text`. ... end # @!method self.variants @@ -359,8 +394,9 @@ class ItemReference < OpenAI::Internal::Type::BaseModel required :type, const: :item_reference # @!method initialize(item_reference:, type: :item_reference) - # @param item_reference [String] - # @param type [Symbol, :item_reference] + # @param item_reference [String] A reference to a variable in the "item" namespace. Ie, "item.name" + # + # @param type [Symbol, :item_reference] The type of input messages. Always `item_reference`. end # @!method self.variants @@ -394,10 +430,13 @@ class SamplingParams < OpenAI::Internal::Type::BaseModel optional :top_p, Float # @!method initialize(max_completion_tokens: nil, seed: nil, temperature: nil, top_p: nil) - # @param max_completion_tokens [Integer] - # @param seed [Integer] - # @param temperature [Float] - # @param top_p [Float] + # @param max_completion_tokens [Integer] The maximum number of tokens in the generated output. + # + # @param seed [Integer] A seed value to initialize the randomness, during sampling. + # + # @param temperature [Float] A higher temperature increases randomness in the outputs. + # + # @param top_p [Float] An alternative to temperature for nucleus sampling; 1.0 includes all tokens. end end end diff --git a/lib/openai/models/evals/create_eval_jsonl_run_data_source.rb b/lib/openai/models/evals/create_eval_jsonl_run_data_source.rb index 2ddad8b0..ae1cedae 100644 --- a/lib/openai/models/evals/create_eval_jsonl_run_data_source.rb +++ b/lib/openai/models/evals/create_eval_jsonl_run_data_source.rb @@ -20,7 +20,8 @@ class CreateEvalJSONLRunDataSource < OpenAI::Internal::Type::BaseModel # eval # # @param source [OpenAI::Models::Evals::CreateEvalJSONLRunDataSource::Source::FileContent, OpenAI::Models::Evals::CreateEvalJSONLRunDataSource::Source::FileID] - # @param type [Symbol, :jsonl] + # + # @param type [Symbol, :jsonl] The type of data source. Always `jsonl`. # @see OpenAI::Models::Evals::CreateEvalJSONLRunDataSource#source module Source @@ -47,8 +48,9 @@ class FileContent < OpenAI::Internal::Type::BaseModel required :type, const: :file_content # @!method initialize(content:, type: :file_content) - # @param content [Array] - # @param type [Symbol, :file_content] + # @param content [Array] The content of the jsonl file. + # + # @param type [Symbol, :file_content] The type of jsonl source. Always `file_content`. class Content < OpenAI::Internal::Type::BaseModel # @!attribute item @@ -81,8 +83,9 @@ class FileID < OpenAI::Internal::Type::BaseModel required :type, const: :file_id # @!method initialize(id:, type: :file_id) - # @param id [String] - # @param type [Symbol, :file_id] + # @param id [String] The identifier of the file. + # + # @param type [Symbol, :file_id] The type of jsonl source. Always `file_id`. end # @!method self.variants diff --git a/lib/openai/models/evals/eval_api_error.rb b/lib/openai/models/evals/eval_api_error.rb index 4d88b8dc..87f11122 100644 --- a/lib/openai/models/evals/eval_api_error.rb +++ b/lib/openai/models/evals/eval_api_error.rb @@ -19,8 +19,9 @@ class EvalAPIError < OpenAI::Internal::Type::BaseModel # @!method initialize(code:, message:) # An object representing an error response from the Eval API. # - # @param code [String] - # @param message [String] + # @param code [String] The error code. + # + # @param message [String] The error message. end end diff --git a/lib/openai/models/evals/run_cancel_response.rb b/lib/openai/models/evals/run_cancel_response.rb index 2412cad7..da5f330b 100644 --- a/lib/openai/models/evals/run_cancel_response.rb +++ b/lib/openai/models/evals/run_cancel_response.rb @@ -97,22 +97,38 @@ class RunCancelResponse < OpenAI::Internal::Type::BaseModel required :status, String # @!method initialize(id:, created_at:, data_source:, error:, eval_id:, metadata:, model:, name:, per_model_usage:, per_testing_criteria_results:, report_url:, result_counts:, status:, object: :"eval.run") + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Evals::RunCancelResponse} for more details. + # # A schema representing an evaluation run. # - # @param id [String] - # @param created_at [Integer] - # @param data_source [OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource, OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions] - # @param error [OpenAI::Models::Evals::EvalAPIError] - # @param eval_id [String] - # @param metadata [Hash{Symbol=>String}, nil] - # @param model [String] - # @param name [String] - # @param per_model_usage [Array] - # @param per_testing_criteria_results [Array] - # @param report_url [String] - # @param result_counts [OpenAI::Models::Evals::RunCancelResponse::ResultCounts] - # @param status [String] - # @param object [Symbol, :"eval.run"] + # @param id [String] Unique identifier for the evaluation run. + # + # @param created_at [Integer] Unix timestamp (in seconds) when the evaluation run was created. + # + # @param data_source [OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource, OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions] Information about the run's data source. + # + # @param error [OpenAI::Models::Evals::EvalAPIError] An object representing an error response from the Eval API. ... + # + # @param eval_id [String] The identifier of the associated evaluation. + # + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # + # @param model [String] The model that is evaluated, if applicable. + # + # @param name [String] The name of the evaluation run. + # + # @param per_model_usage [Array] Usage statistics for each model during the evaluation run. + # + # @param per_testing_criteria_results [Array] Results per testing criteria applied during the evaluation run. + # + # @param report_url [String] The URL to the rendered evaluation run report on the UI dashboard. + # + # @param result_counts [OpenAI::Models::Evals::RunCancelResponse::ResultCounts] Counters summarizing the outcomes of the evaluation run. + # + # @param status [String] The status of the evaluation run. + # + # @param object [Symbol, :"eval.run"] The type of the object. Always "eval.run". # Information about the run's data source. # @@ -163,13 +179,21 @@ class Completions < OpenAI::Internal::Type::BaseModel -> { OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::SamplingParams } # @!method initialize(source:, input_messages: nil, model: nil, sampling_params: nil, type: :completions) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions} for more + # details. + # # A ResponsesRunDataSource object describing a model sampling configuration. # - # @param source [OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::Source::FileContent, OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::Source::FileID, OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::Source::Responses] + # @param source [OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::Source::FileContent, OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::Source::FileID, OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::Source::Responses] A EvalResponsesSource object describing a run data source configuration. ... + # # @param input_messages [OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template, OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::ItemReference] - # @param model [String] + # + # @param model [String] The name of the model to use for generating completions (e.g. "o3-mini"). + # # @param sampling_params [OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::SamplingParams] - # @param type [Symbol, :completions] + # + # @param type [Symbol, :completions] The type of run data source. Always `completions`. # A EvalResponsesSource object describing a run data source configuration. # @@ -203,8 +227,9 @@ class FileContent < OpenAI::Internal::Type::BaseModel required :type, const: :file_content # @!method initialize(content:, type: :file_content) - # @param content [Array] - # @param type [Symbol, :file_content] + # @param content [Array] The content of the jsonl file. + # + # @param type [Symbol, :file_content] The type of jsonl source. Always `file_content`. class Content < OpenAI::Internal::Type::BaseModel # @!attribute item @@ -237,8 +262,9 @@ class FileID < OpenAI::Internal::Type::BaseModel required :type, const: :file_id # @!method initialize(id:, type: :file_id) - # @param id [String] - # @param type [Symbol, :file_id] + # @param id [String] The identifier of the file. + # + # @param type [Symbol, :file_id] The type of jsonl source. Always `file_id`. end class Responses < OpenAI::Internal::Type::BaseModel @@ -323,20 +349,43 @@ class Responses < OpenAI::Internal::Type::BaseModel optional :users, OpenAI::Internal::Type::ArrayOf[String], nil?: true # @!method initialize(allow_parallel_tool_calls: nil, created_after: nil, created_before: nil, has_tool_calls: nil, instructions_search: nil, metadata: nil, model: nil, reasoning_effort: nil, temperature: nil, top_p: nil, users: nil, type: :responses) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::Source::Responses} + # for more details. + # # A EvalResponsesSource object describing a run data source configuration. # - # @param allow_parallel_tool_calls [Boolean, nil] - # @param created_after [Integer, nil] - # @param created_before [Integer, nil] - # @param has_tool_calls [Boolean, nil] - # @param instructions_search [String, nil] - # @param metadata [Object, nil] - # @param model [String, nil] - # @param reasoning_effort [Symbol, OpenAI::Models::ReasoningEffort, nil] - # @param temperature [Float, nil] - # @param top_p [Float, nil] - # @param users [Array, nil] - # @param type [Symbol, :responses] + # @param allow_parallel_tool_calls [Boolean, nil] Whether to allow parallel tool calls. This is a query parameter used to select r + # ... + # + # @param created_after [Integer, nil] Only include items created after this timestamp (inclusive). This is a query par + # ... + # + # @param created_before [Integer, nil] Only include items created before this timestamp (inclusive). This is a query pa + # ... + # + # @param has_tool_calls [Boolean, nil] Whether the response has tool calls. This is a query parameter used to select re + # ... + # + # @param instructions_search [String, nil] Optional search string for instructions. This is a query parameter used to selec + # ... + # + # @param metadata [Object, nil] Metadata filter for the responses. This is a query parameter used to select resp + # ... + # + # @param model [String, nil] The name of the model to find responses for. This is a query parameter used to s + # ... + # + # @param reasoning_effort [Symbol, OpenAI::Models::ReasoningEffort, nil] Optional reasoning effort parameter. This is a query parameter used to select re + # ... + # + # @param temperature [Float, nil] Sampling temperature. This is a query parameter used to select responses. + # + # @param top_p [Float, nil] Nucleus sampling parameter. This is a query parameter used to select responses. + # + # @param users [Array, nil] List of user identifiers. This is a query parameter used to select responses. + # + # @param type [Symbol, :responses] The type of run data source. Always `responses`. end # @!method self.variants @@ -375,8 +424,14 @@ class Template < OpenAI::Internal::Type::BaseModel required :type, const: :template # @!method initialize(template:, type: :template) - # @param template [Array] - # @param type [Symbol, :template] + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template} + # for more details. + # + # @param template [Array] A list of chat messages forming the prompt or context. May include variable refe + # ... + # + # @param type [Symbol, :template] The type of input messages. Always `template`. # A message input to the model with a role indicating instruction following # hierarchy. Instructions given with the `developer` or `system` role take @@ -409,8 +464,9 @@ class ChatMessage < OpenAI::Internal::Type::BaseModel required :role, String # @!method initialize(content:, role:) - # @param content [String] - # @param role [String] + # @param content [String] The content of the message. + # + # @param role [String] The role of the message (e.g. "system", "assistant", "user"). end class EvalItem < OpenAI::Internal::Type::BaseModel @@ -437,15 +493,21 @@ class EvalItem < OpenAI::Internal::Type::BaseModel enum: -> { OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Type } # @!method initialize(content:, role:, type: nil) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem} + # for more details. + # # A message input to the model with a role indicating instruction following # hierarchy. Instructions given with the `developer` or `system` role take # precedence over instructions given with the `user` role. Messages with the # `assistant` role are presumed to have been generated by the model in previous # interactions. # - # @param content [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText] - # @param role [Symbol, OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Role] - # @param type [Symbol, OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Type] + # @param content [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText] Text inputs to the model - can contain template strings. ... + # + # @param role [Symbol, OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Role] The role of the message input. One of `user`, `assistant`, `system`, or ... + # + # @param type [Symbol, OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Type] The type of the message input. Always `message`. ... # Text inputs to the model - can contain template strings. # @@ -476,10 +538,15 @@ class OutputText < OpenAI::Internal::Type::BaseModel required :type, const: :output_text # @!method initialize(text:, type: :output_text) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText} + # for more details. + # # A text output from the model. # - # @param text [String] - # @param type [Symbol, :output_text] + # @param text [String] The text output from the model. ... + # + # @param type [Symbol, :output_text] The type of the output text. Always `output_text`. ... end # @!method self.variants @@ -534,8 +601,9 @@ class ItemReference < OpenAI::Internal::Type::BaseModel required :type, const: :item_reference # @!method initialize(item_reference:, type: :item_reference) - # @param item_reference [String] - # @param type [Symbol, :item_reference] + # @param item_reference [String] A reference to a variable in the "item" namespace. Ie, "item.name" + # + # @param type [Symbol, :item_reference] The type of input messages. Always `item_reference`. end # @!method self.variants @@ -569,10 +637,13 @@ class SamplingParams < OpenAI::Internal::Type::BaseModel optional :top_p, Float # @!method initialize(max_completion_tokens: nil, seed: nil, temperature: nil, top_p: nil) - # @param max_completion_tokens [Integer] - # @param seed [Integer] - # @param temperature [Float] - # @param top_p [Float] + # @param max_completion_tokens [Integer] The maximum number of tokens in the generated output. + # + # @param seed [Integer] A seed value to initialize the randomness, during sampling. + # + # @param temperature [Float] A higher temperature increases randomness in the outputs. + # + # @param top_p [Float] An alternative to temperature for nucleus sampling; 1.0 includes all tokens. end end @@ -618,12 +689,17 @@ class PerModelUsage < OpenAI::Internal::Type::BaseModel required :total_tokens, Integer # @!method initialize(cached_tokens:, completion_tokens:, invocation_count:, model_name:, prompt_tokens:, total_tokens:) - # @param cached_tokens [Integer] - # @param completion_tokens [Integer] - # @param invocation_count [Integer] - # @param model_name [String] - # @param prompt_tokens [Integer] - # @param total_tokens [Integer] + # @param cached_tokens [Integer] The number of tokens retrieved from cache. + # + # @param completion_tokens [Integer] The number of completion tokens generated. + # + # @param invocation_count [Integer] The number of invocations. + # + # @param model_name [String] The name of the model. + # + # @param prompt_tokens [Integer] The number of prompt tokens used. + # + # @param total_tokens [Integer] The total number of tokens used. end class PerTestingCriteriaResult < OpenAI::Internal::Type::BaseModel @@ -646,9 +722,11 @@ class PerTestingCriteriaResult < OpenAI::Internal::Type::BaseModel required :testing_criteria, String # @!method initialize(failed:, passed:, testing_criteria:) - # @param failed [Integer] - # @param passed [Integer] - # @param testing_criteria [String] + # @param failed [Integer] Number of tests failed for this criteria. + # + # @param passed [Integer] Number of tests passed for this criteria. + # + # @param testing_criteria [String] A description of the testing criteria. end # @see OpenAI::Models::Evals::RunCancelResponse#result_counts @@ -680,10 +758,13 @@ class ResultCounts < OpenAI::Internal::Type::BaseModel # @!method initialize(errored:, failed:, passed:, total:) # Counters summarizing the outcomes of the evaluation run. # - # @param errored [Integer] - # @param failed [Integer] - # @param passed [Integer] - # @param total [Integer] + # @param errored [Integer] Number of output items that resulted in an error. + # + # @param failed [Integer] Number of output items that failed to pass the evaluation. + # + # @param passed [Integer] Number of output items that passed the evaluation. + # + # @param total [Integer] Total number of executed output items. end end end diff --git a/lib/openai/models/evals/run_create_params.rb b/lib/openai/models/evals/run_create_params.rb index 6ee4266d..73ceb87e 100644 --- a/lib/openai/models/evals/run_create_params.rb +++ b/lib/openai/models/evals/run_create_params.rb @@ -32,9 +32,15 @@ class RunCreateParams < OpenAI::Internal::Type::BaseModel optional :name, String # @!method initialize(data_source:, metadata: nil, name: nil, request_options: {}) - # @param data_source [OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource, OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource] - # @param metadata [Hash{Symbol=>String}, nil] - # @param name [String] + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Evals::RunCreateParams} for more details. + # + # @param data_source [OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource, OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource] Details about the run's data source. + # + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # + # @param name [String] The name of the run. + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] # Details about the run's data source. @@ -84,12 +90,20 @@ class CreateEvalResponsesRunDataSource < OpenAI::Internal::Type::BaseModel -> { OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::SamplingParams } # @!method initialize(source:, type:, input_messages: nil, model: nil, sampling_params: nil) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource} + # for more details. + # # A ResponsesRunDataSource object describing a model sampling configuration. # - # @param source [OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::FileContent, OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::FileID, OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::Responses] - # @param type [Symbol, OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Type] + # @param source [OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::FileContent, OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::FileID, OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::Responses] A EvalResponsesSource object describing a run data source configuration. ... + # + # @param type [Symbol, OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Type] The type of run data source. Always `completions`. + # # @param input_messages [OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template, OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::ItemReference] - # @param model [String] + # + # @param model [String] The name of the model to use for generating completions (e.g. "o3-mini"). + # # @param sampling_params [OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::SamplingParams] # A EvalResponsesSource object describing a run data source configuration. @@ -129,8 +143,9 @@ class FileContent < OpenAI::Internal::Type::BaseModel required :type, const: :file_content # @!method initialize(content:, type: :file_content) - # @param content [Array] - # @param type [Symbol, :file_content] + # @param content [Array] The content of the jsonl file. + # + # @param type [Symbol, :file_content] The type of jsonl source. Always `file_content`. class Content < OpenAI::Internal::Type::BaseModel # @!attribute item @@ -163,8 +178,9 @@ class FileID < OpenAI::Internal::Type::BaseModel required :type, const: :file_id # @!method initialize(id:, type: :file_id) - # @param id [String] - # @param type [Symbol, :file_id] + # @param id [String] The identifier of the file. + # + # @param type [Symbol, :file_id] The type of jsonl source. Always `file_id`. end class Responses < OpenAI::Internal::Type::BaseModel @@ -249,20 +265,43 @@ class Responses < OpenAI::Internal::Type::BaseModel optional :users, OpenAI::Internal::Type::ArrayOf[String], nil?: true # @!method initialize(allow_parallel_tool_calls: nil, created_after: nil, created_before: nil, has_tool_calls: nil, instructions_search: nil, metadata: nil, model: nil, reasoning_effort: nil, temperature: nil, top_p: nil, users: nil, type: :responses) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::Responses} + # for more details. + # # A EvalResponsesSource object describing a run data source configuration. # - # @param allow_parallel_tool_calls [Boolean, nil] - # @param created_after [Integer, nil] - # @param created_before [Integer, nil] - # @param has_tool_calls [Boolean, nil] - # @param instructions_search [String, nil] - # @param metadata [Object, nil] - # @param model [String, nil] - # @param reasoning_effort [Symbol, OpenAI::Models::ReasoningEffort, nil] - # @param temperature [Float, nil] - # @param top_p [Float, nil] - # @param users [Array, nil] - # @param type [Symbol, :responses] + # @param allow_parallel_tool_calls [Boolean, nil] Whether to allow parallel tool calls. This is a query parameter used to select r + # ... + # + # @param created_after [Integer, nil] Only include items created after this timestamp (inclusive). This is a query par + # ... + # + # @param created_before [Integer, nil] Only include items created before this timestamp (inclusive). This is a query pa + # ... + # + # @param has_tool_calls [Boolean, nil] Whether the response has tool calls. This is a query parameter used to select re + # ... + # + # @param instructions_search [String, nil] Optional search string for instructions. This is a query parameter used to selec + # ... + # + # @param metadata [Object, nil] Metadata filter for the responses. This is a query parameter used to select resp + # ... + # + # @param model [String, nil] The name of the model to find responses for. This is a query parameter used to s + # ... + # + # @param reasoning_effort [Symbol, OpenAI::Models::ReasoningEffort, nil] Optional reasoning effort parameter. This is a query parameter used to select re + # ... + # + # @param temperature [Float, nil] Sampling temperature. This is a query parameter used to select responses. + # + # @param top_p [Float, nil] Nucleus sampling parameter. This is a query parameter used to select responses. + # + # @param users [Array, nil] List of user identifiers. This is a query parameter used to select responses. + # + # @param type [Symbol, :responses] The type of run data source. Always `responses`. end # @!method self.variants @@ -313,8 +352,14 @@ class Template < OpenAI::Internal::Type::BaseModel required :type, const: :template # @!method initialize(template:, type: :template) - # @param template [Array] - # @param type [Symbol, :template] + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template} + # for more details. + # + # @param template [Array] A list of chat messages forming the prompt or context. May include variable refe + # ... + # + # @param type [Symbol, :template] The type of input messages. Always `template`. # A message input to the model with a role indicating instruction following # hierarchy. Instructions given with the `developer` or `system` role take @@ -347,8 +392,9 @@ class ChatMessage < OpenAI::Internal::Type::BaseModel required :role, String # @!method initialize(content:, role:) - # @param content [String] - # @param role [String] + # @param content [String] The content of the message. + # + # @param role [String] The role of the message (e.g. "system", "assistant", "user"). end class EvalItem < OpenAI::Internal::Type::BaseModel @@ -375,15 +421,21 @@ class EvalItem < OpenAI::Internal::Type::BaseModel enum: -> { OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::Type } # @!method initialize(content:, role:, type: nil) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem} + # for more details. + # # A message input to the model with a role indicating instruction following # hierarchy. Instructions given with the `developer` or `system` role take # precedence over instructions given with the `user` role. Messages with the # `assistant` role are presumed to have been generated by the model in previous # interactions. # - # @param content [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::Content::OutputText] - # @param role [Symbol, OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::Role] - # @param type [Symbol, OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::Type] + # @param content [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::Content::OutputText] Text inputs to the model - can contain template strings. ... + # + # @param role [Symbol, OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::Role] The role of the message input. One of `user`, `assistant`, `system`, or ... + # + # @param type [Symbol, OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::Type] The type of the message input. Always `message`. ... # Text inputs to the model - can contain template strings. # @@ -414,10 +466,15 @@ class OutputText < OpenAI::Internal::Type::BaseModel required :type, const: :output_text # @!method initialize(text:, type: :output_text) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::Content::OutputText} + # for more details. + # # A text output from the model. # - # @param text [String] - # @param type [Symbol, :output_text] + # @param text [String] The text output from the model. ... + # + # @param type [Symbol, :output_text] The type of the output text. Always `output_text`. ... end # @!method self.variants @@ -472,8 +529,9 @@ class ItemReference < OpenAI::Internal::Type::BaseModel required :type, const: :item_reference # @!method initialize(item_reference:, type: :item_reference) - # @param item_reference [String] - # @param type [Symbol, :item_reference] + # @param item_reference [String] A reference to a variable in the "item" namespace. Ie, "item.name" + # + # @param type [Symbol, :item_reference] The type of input messages. Always `item_reference`. end # @!method self.variants @@ -507,10 +565,13 @@ class SamplingParams < OpenAI::Internal::Type::BaseModel optional :top_p, Float # @!method initialize(max_completion_tokens: nil, seed: nil, temperature: nil, top_p: nil) - # @param max_completion_tokens [Integer] - # @param seed [Integer] - # @param temperature [Float] - # @param top_p [Float] + # @param max_completion_tokens [Integer] The maximum number of tokens in the generated output. + # + # @param seed [Integer] A seed value to initialize the randomness, during sampling. + # + # @param temperature [Float] A higher temperature increases randomness in the outputs. + # + # @param top_p [Float] An alternative to temperature for nucleus sampling; 1.0 includes all tokens. end end diff --git a/lib/openai/models/evals/run_create_response.rb b/lib/openai/models/evals/run_create_response.rb index 22a5752b..2326f6f0 100644 --- a/lib/openai/models/evals/run_create_response.rb +++ b/lib/openai/models/evals/run_create_response.rb @@ -97,22 +97,38 @@ class RunCreateResponse < OpenAI::Internal::Type::BaseModel required :status, String # @!method initialize(id:, created_at:, data_source:, error:, eval_id:, metadata:, model:, name:, per_model_usage:, per_testing_criteria_results:, report_url:, result_counts:, status:, object: :"eval.run") + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Evals::RunCreateResponse} for more details. + # # A schema representing an evaluation run. # - # @param id [String] - # @param created_at [Integer] - # @param data_source [OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource, OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions] - # @param error [OpenAI::Models::Evals::EvalAPIError] - # @param eval_id [String] - # @param metadata [Hash{Symbol=>String}, nil] - # @param model [String] - # @param name [String] - # @param per_model_usage [Array] - # @param per_testing_criteria_results [Array] - # @param report_url [String] - # @param result_counts [OpenAI::Models::Evals::RunCreateResponse::ResultCounts] - # @param status [String] - # @param object [Symbol, :"eval.run"] + # @param id [String] Unique identifier for the evaluation run. + # + # @param created_at [Integer] Unix timestamp (in seconds) when the evaluation run was created. + # + # @param data_source [OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource, OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions] Information about the run's data source. + # + # @param error [OpenAI::Models::Evals::EvalAPIError] An object representing an error response from the Eval API. ... + # + # @param eval_id [String] The identifier of the associated evaluation. + # + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # + # @param model [String] The model that is evaluated, if applicable. + # + # @param name [String] The name of the evaluation run. + # + # @param per_model_usage [Array] Usage statistics for each model during the evaluation run. + # + # @param per_testing_criteria_results [Array] Results per testing criteria applied during the evaluation run. + # + # @param report_url [String] The URL to the rendered evaluation run report on the UI dashboard. + # + # @param result_counts [OpenAI::Models::Evals::RunCreateResponse::ResultCounts] Counters summarizing the outcomes of the evaluation run. + # + # @param status [String] The status of the evaluation run. + # + # @param object [Symbol, :"eval.run"] The type of the object. Always "eval.run". # Information about the run's data source. # @@ -163,13 +179,21 @@ class Completions < OpenAI::Internal::Type::BaseModel -> { OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::SamplingParams } # @!method initialize(source:, input_messages: nil, model: nil, sampling_params: nil, type: :completions) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions} for more + # details. + # # A ResponsesRunDataSource object describing a model sampling configuration. # - # @param source [OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::Source::FileContent, OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::Source::FileID, OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::Source::Responses] + # @param source [OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::Source::FileContent, OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::Source::FileID, OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::Source::Responses] A EvalResponsesSource object describing a run data source configuration. ... + # # @param input_messages [OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template, OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::ItemReference] - # @param model [String] + # + # @param model [String] The name of the model to use for generating completions (e.g. "o3-mini"). + # # @param sampling_params [OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::SamplingParams] - # @param type [Symbol, :completions] + # + # @param type [Symbol, :completions] The type of run data source. Always `completions`. # A EvalResponsesSource object describing a run data source configuration. # @@ -203,8 +227,9 @@ class FileContent < OpenAI::Internal::Type::BaseModel required :type, const: :file_content # @!method initialize(content:, type: :file_content) - # @param content [Array] - # @param type [Symbol, :file_content] + # @param content [Array] The content of the jsonl file. + # + # @param type [Symbol, :file_content] The type of jsonl source. Always `file_content`. class Content < OpenAI::Internal::Type::BaseModel # @!attribute item @@ -237,8 +262,9 @@ class FileID < OpenAI::Internal::Type::BaseModel required :type, const: :file_id # @!method initialize(id:, type: :file_id) - # @param id [String] - # @param type [Symbol, :file_id] + # @param id [String] The identifier of the file. + # + # @param type [Symbol, :file_id] The type of jsonl source. Always `file_id`. end class Responses < OpenAI::Internal::Type::BaseModel @@ -323,20 +349,43 @@ class Responses < OpenAI::Internal::Type::BaseModel optional :users, OpenAI::Internal::Type::ArrayOf[String], nil?: true # @!method initialize(allow_parallel_tool_calls: nil, created_after: nil, created_before: nil, has_tool_calls: nil, instructions_search: nil, metadata: nil, model: nil, reasoning_effort: nil, temperature: nil, top_p: nil, users: nil, type: :responses) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::Source::Responses} + # for more details. + # # A EvalResponsesSource object describing a run data source configuration. # - # @param allow_parallel_tool_calls [Boolean, nil] - # @param created_after [Integer, nil] - # @param created_before [Integer, nil] - # @param has_tool_calls [Boolean, nil] - # @param instructions_search [String, nil] - # @param metadata [Object, nil] - # @param model [String, nil] - # @param reasoning_effort [Symbol, OpenAI::Models::ReasoningEffort, nil] - # @param temperature [Float, nil] - # @param top_p [Float, nil] - # @param users [Array, nil] - # @param type [Symbol, :responses] + # @param allow_parallel_tool_calls [Boolean, nil] Whether to allow parallel tool calls. This is a query parameter used to select r + # ... + # + # @param created_after [Integer, nil] Only include items created after this timestamp (inclusive). This is a query par + # ... + # + # @param created_before [Integer, nil] Only include items created before this timestamp (inclusive). This is a query pa + # ... + # + # @param has_tool_calls [Boolean, nil] Whether the response has tool calls. This is a query parameter used to select re + # ... + # + # @param instructions_search [String, nil] Optional search string for instructions. This is a query parameter used to selec + # ... + # + # @param metadata [Object, nil] Metadata filter for the responses. This is a query parameter used to select resp + # ... + # + # @param model [String, nil] The name of the model to find responses for. This is a query parameter used to s + # ... + # + # @param reasoning_effort [Symbol, OpenAI::Models::ReasoningEffort, nil] Optional reasoning effort parameter. This is a query parameter used to select re + # ... + # + # @param temperature [Float, nil] Sampling temperature. This is a query parameter used to select responses. + # + # @param top_p [Float, nil] Nucleus sampling parameter. This is a query parameter used to select responses. + # + # @param users [Array, nil] List of user identifiers. This is a query parameter used to select responses. + # + # @param type [Symbol, :responses] The type of run data source. Always `responses`. end # @!method self.variants @@ -375,8 +424,14 @@ class Template < OpenAI::Internal::Type::BaseModel required :type, const: :template # @!method initialize(template:, type: :template) - # @param template [Array] - # @param type [Symbol, :template] + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template} + # for more details. + # + # @param template [Array] A list of chat messages forming the prompt or context. May include variable refe + # ... + # + # @param type [Symbol, :template] The type of input messages. Always `template`. # A message input to the model with a role indicating instruction following # hierarchy. Instructions given with the `developer` or `system` role take @@ -409,8 +464,9 @@ class ChatMessage < OpenAI::Internal::Type::BaseModel required :role, String # @!method initialize(content:, role:) - # @param content [String] - # @param role [String] + # @param content [String] The content of the message. + # + # @param role [String] The role of the message (e.g. "system", "assistant", "user"). end class EvalItem < OpenAI::Internal::Type::BaseModel @@ -437,15 +493,21 @@ class EvalItem < OpenAI::Internal::Type::BaseModel enum: -> { OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Type } # @!method initialize(content:, role:, type: nil) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem} + # for more details. + # # A message input to the model with a role indicating instruction following # hierarchy. Instructions given with the `developer` or `system` role take # precedence over instructions given with the `user` role. Messages with the # `assistant` role are presumed to have been generated by the model in previous # interactions. # - # @param content [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText] - # @param role [Symbol, OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Role] - # @param type [Symbol, OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Type] + # @param content [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText] Text inputs to the model - can contain template strings. ... + # + # @param role [Symbol, OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Role] The role of the message input. One of `user`, `assistant`, `system`, or ... + # + # @param type [Symbol, OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Type] The type of the message input. Always `message`. ... # Text inputs to the model - can contain template strings. # @@ -476,10 +538,15 @@ class OutputText < OpenAI::Internal::Type::BaseModel required :type, const: :output_text # @!method initialize(text:, type: :output_text) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText} + # for more details. + # # A text output from the model. # - # @param text [String] - # @param type [Symbol, :output_text] + # @param text [String] The text output from the model. ... + # + # @param type [Symbol, :output_text] The type of the output text. Always `output_text`. ... end # @!method self.variants @@ -534,8 +601,9 @@ class ItemReference < OpenAI::Internal::Type::BaseModel required :type, const: :item_reference # @!method initialize(item_reference:, type: :item_reference) - # @param item_reference [String] - # @param type [Symbol, :item_reference] + # @param item_reference [String] A reference to a variable in the "item" namespace. Ie, "item.name" + # + # @param type [Symbol, :item_reference] The type of input messages. Always `item_reference`. end # @!method self.variants @@ -569,10 +637,13 @@ class SamplingParams < OpenAI::Internal::Type::BaseModel optional :top_p, Float # @!method initialize(max_completion_tokens: nil, seed: nil, temperature: nil, top_p: nil) - # @param max_completion_tokens [Integer] - # @param seed [Integer] - # @param temperature [Float] - # @param top_p [Float] + # @param max_completion_tokens [Integer] The maximum number of tokens in the generated output. + # + # @param seed [Integer] A seed value to initialize the randomness, during sampling. + # + # @param temperature [Float] A higher temperature increases randomness in the outputs. + # + # @param top_p [Float] An alternative to temperature for nucleus sampling; 1.0 includes all tokens. end end @@ -618,12 +689,17 @@ class PerModelUsage < OpenAI::Internal::Type::BaseModel required :total_tokens, Integer # @!method initialize(cached_tokens:, completion_tokens:, invocation_count:, model_name:, prompt_tokens:, total_tokens:) - # @param cached_tokens [Integer] - # @param completion_tokens [Integer] - # @param invocation_count [Integer] - # @param model_name [String] - # @param prompt_tokens [Integer] - # @param total_tokens [Integer] + # @param cached_tokens [Integer] The number of tokens retrieved from cache. + # + # @param completion_tokens [Integer] The number of completion tokens generated. + # + # @param invocation_count [Integer] The number of invocations. + # + # @param model_name [String] The name of the model. + # + # @param prompt_tokens [Integer] The number of prompt tokens used. + # + # @param total_tokens [Integer] The total number of tokens used. end class PerTestingCriteriaResult < OpenAI::Internal::Type::BaseModel @@ -646,9 +722,11 @@ class PerTestingCriteriaResult < OpenAI::Internal::Type::BaseModel required :testing_criteria, String # @!method initialize(failed:, passed:, testing_criteria:) - # @param failed [Integer] - # @param passed [Integer] - # @param testing_criteria [String] + # @param failed [Integer] Number of tests failed for this criteria. + # + # @param passed [Integer] Number of tests passed for this criteria. + # + # @param testing_criteria [String] A description of the testing criteria. end # @see OpenAI::Models::Evals::RunCreateResponse#result_counts @@ -680,10 +758,13 @@ class ResultCounts < OpenAI::Internal::Type::BaseModel # @!method initialize(errored:, failed:, passed:, total:) # Counters summarizing the outcomes of the evaluation run. # - # @param errored [Integer] - # @param failed [Integer] - # @param passed [Integer] - # @param total [Integer] + # @param errored [Integer] Number of output items that resulted in an error. + # + # @param failed [Integer] Number of output items that failed to pass the evaluation. + # + # @param passed [Integer] Number of output items that passed the evaluation. + # + # @param total [Integer] Total number of executed output items. end end end diff --git a/lib/openai/models/evals/run_list_params.rb b/lib/openai/models/evals/run_list_params.rb index 66cd4270..d828e118 100644 --- a/lib/openai/models/evals/run_list_params.rb +++ b/lib/openai/models/evals/run_list_params.rb @@ -35,10 +35,19 @@ class RunListParams < OpenAI::Internal::Type::BaseModel optional :status, enum: -> { OpenAI::Models::Evals::RunListParams::Status } # @!method initialize(after: nil, limit: nil, order: nil, status: nil, request_options: {}) - # @param after [String] - # @param limit [Integer] - # @param order [Symbol, OpenAI::Models::Evals::RunListParams::Order] - # @param status [Symbol, OpenAI::Models::Evals::RunListParams::Status] + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Evals::RunListParams} for more details. + # + # @param after [String] Identifier for the last run from the previous pagination request. + # + # @param limit [Integer] Number of runs to retrieve. + # + # @param order [Symbol, OpenAI::Models::Evals::RunListParams::Order] Sort order for runs by timestamp. Use `asc` for ascending order or `desc` for de + # ... + # + # @param status [Symbol, OpenAI::Models::Evals::RunListParams::Status] Filter runs by status. One of `queued` | `in_progress` | `failed` | `completed` + # ... + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] # Sort order for runs by timestamp. Use `asc` for ascending order or `desc` for diff --git a/lib/openai/models/evals/run_list_response.rb b/lib/openai/models/evals/run_list_response.rb index 941d74e1..3e2e0deb 100644 --- a/lib/openai/models/evals/run_list_response.rb +++ b/lib/openai/models/evals/run_list_response.rb @@ -97,22 +97,38 @@ class RunListResponse < OpenAI::Internal::Type::BaseModel required :status, String # @!method initialize(id:, created_at:, data_source:, error:, eval_id:, metadata:, model:, name:, per_model_usage:, per_testing_criteria_results:, report_url:, result_counts:, status:, object: :"eval.run") + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Evals::RunListResponse} for more details. + # # A schema representing an evaluation run. # - # @param id [String] - # @param created_at [Integer] - # @param data_source [OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource, OpenAI::Models::Evals::RunListResponse::DataSource::Completions] - # @param error [OpenAI::Models::Evals::EvalAPIError] - # @param eval_id [String] - # @param metadata [Hash{Symbol=>String}, nil] - # @param model [String] - # @param name [String] - # @param per_model_usage [Array] - # @param per_testing_criteria_results [Array] - # @param report_url [String] - # @param result_counts [OpenAI::Models::Evals::RunListResponse::ResultCounts] - # @param status [String] - # @param object [Symbol, :"eval.run"] + # @param id [String] Unique identifier for the evaluation run. + # + # @param created_at [Integer] Unix timestamp (in seconds) when the evaluation run was created. + # + # @param data_source [OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource, OpenAI::Models::Evals::RunListResponse::DataSource::Completions] Information about the run's data source. + # + # @param error [OpenAI::Models::Evals::EvalAPIError] An object representing an error response from the Eval API. ... + # + # @param eval_id [String] The identifier of the associated evaluation. + # + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # + # @param model [String] The model that is evaluated, if applicable. + # + # @param name [String] The name of the evaluation run. + # + # @param per_model_usage [Array] Usage statistics for each model during the evaluation run. + # + # @param per_testing_criteria_results [Array] Results per testing criteria applied during the evaluation run. + # + # @param report_url [String] The URL to the rendered evaluation run report on the UI dashboard. + # + # @param result_counts [OpenAI::Models::Evals::RunListResponse::ResultCounts] Counters summarizing the outcomes of the evaluation run. + # + # @param status [String] The status of the evaluation run. + # + # @param object [Symbol, :"eval.run"] The type of the object. Always "eval.run". # Information about the run's data source. # @@ -163,13 +179,21 @@ class Completions < OpenAI::Internal::Type::BaseModel -> { OpenAI::Models::Evals::RunListResponse::DataSource::Completions::SamplingParams } # @!method initialize(source:, input_messages: nil, model: nil, sampling_params: nil, type: :completions) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Evals::RunListResponse::DataSource::Completions} for more + # details. + # # A ResponsesRunDataSource object describing a model sampling configuration. # - # @param source [OpenAI::Models::Evals::RunListResponse::DataSource::Completions::Source::FileContent, OpenAI::Models::Evals::RunListResponse::DataSource::Completions::Source::FileID, OpenAI::Models::Evals::RunListResponse::DataSource::Completions::Source::Responses] + # @param source [OpenAI::Models::Evals::RunListResponse::DataSource::Completions::Source::FileContent, OpenAI::Models::Evals::RunListResponse::DataSource::Completions::Source::FileID, OpenAI::Models::Evals::RunListResponse::DataSource::Completions::Source::Responses] A EvalResponsesSource object describing a run data source configuration. ... + # # @param input_messages [OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template, OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::ItemReference] - # @param model [String] + # + # @param model [String] The name of the model to use for generating completions (e.g. "o3-mini"). + # # @param sampling_params [OpenAI::Models::Evals::RunListResponse::DataSource::Completions::SamplingParams] - # @param type [Symbol, :completions] + # + # @param type [Symbol, :completions] The type of run data source. Always `completions`. # A EvalResponsesSource object describing a run data source configuration. # @@ -203,8 +227,9 @@ class FileContent < OpenAI::Internal::Type::BaseModel required :type, const: :file_content # @!method initialize(content:, type: :file_content) - # @param content [Array] - # @param type [Symbol, :file_content] + # @param content [Array] The content of the jsonl file. + # + # @param type [Symbol, :file_content] The type of jsonl source. Always `file_content`. class Content < OpenAI::Internal::Type::BaseModel # @!attribute item @@ -237,8 +262,9 @@ class FileID < OpenAI::Internal::Type::BaseModel required :type, const: :file_id # @!method initialize(id:, type: :file_id) - # @param id [String] - # @param type [Symbol, :file_id] + # @param id [String] The identifier of the file. + # + # @param type [Symbol, :file_id] The type of jsonl source. Always `file_id`. end class Responses < OpenAI::Internal::Type::BaseModel @@ -323,20 +349,43 @@ class Responses < OpenAI::Internal::Type::BaseModel optional :users, OpenAI::Internal::Type::ArrayOf[String], nil?: true # @!method initialize(allow_parallel_tool_calls: nil, created_after: nil, created_before: nil, has_tool_calls: nil, instructions_search: nil, metadata: nil, model: nil, reasoning_effort: nil, temperature: nil, top_p: nil, users: nil, type: :responses) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Evals::RunListResponse::DataSource::Completions::Source::Responses} + # for more details. + # # A EvalResponsesSource object describing a run data source configuration. # - # @param allow_parallel_tool_calls [Boolean, nil] - # @param created_after [Integer, nil] - # @param created_before [Integer, nil] - # @param has_tool_calls [Boolean, nil] - # @param instructions_search [String, nil] - # @param metadata [Object, nil] - # @param model [String, nil] - # @param reasoning_effort [Symbol, OpenAI::Models::ReasoningEffort, nil] - # @param temperature [Float, nil] - # @param top_p [Float, nil] - # @param users [Array, nil] - # @param type [Symbol, :responses] + # @param allow_parallel_tool_calls [Boolean, nil] Whether to allow parallel tool calls. This is a query parameter used to select r + # ... + # + # @param created_after [Integer, nil] Only include items created after this timestamp (inclusive). This is a query par + # ... + # + # @param created_before [Integer, nil] Only include items created before this timestamp (inclusive). This is a query pa + # ... + # + # @param has_tool_calls [Boolean, nil] Whether the response has tool calls. This is a query parameter used to select re + # ... + # + # @param instructions_search [String, nil] Optional search string for instructions. This is a query parameter used to selec + # ... + # + # @param metadata [Object, nil] Metadata filter for the responses. This is a query parameter used to select resp + # ... + # + # @param model [String, nil] The name of the model to find responses for. This is a query parameter used to s + # ... + # + # @param reasoning_effort [Symbol, OpenAI::Models::ReasoningEffort, nil] Optional reasoning effort parameter. This is a query parameter used to select re + # ... + # + # @param temperature [Float, nil] Sampling temperature. This is a query parameter used to select responses. + # + # @param top_p [Float, nil] Nucleus sampling parameter. This is a query parameter used to select responses. + # + # @param users [Array, nil] List of user identifiers. This is a query parameter used to select responses. + # + # @param type [Symbol, :responses] The type of run data source. Always `responses`. end # @!method self.variants @@ -371,8 +420,14 @@ class Template < OpenAI::Internal::Type::BaseModel required :type, const: :template # @!method initialize(template:, type: :template) - # @param template [Array] - # @param type [Symbol, :template] + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template} + # for more details. + # + # @param template [Array] A list of chat messages forming the prompt or context. May include variable refe + # ... + # + # @param type [Symbol, :template] The type of input messages. Always `template`. # A message input to the model with a role indicating instruction following # hierarchy. Instructions given with the `developer` or `system` role take @@ -405,8 +460,9 @@ class ChatMessage < OpenAI::Internal::Type::BaseModel required :role, String # @!method initialize(content:, role:) - # @param content [String] - # @param role [String] + # @param content [String] The content of the message. + # + # @param role [String] The role of the message (e.g. "system", "assistant", "user"). end class EvalItem < OpenAI::Internal::Type::BaseModel @@ -433,15 +489,21 @@ class EvalItem < OpenAI::Internal::Type::BaseModel enum: -> { OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Type } # @!method initialize(content:, role:, type: nil) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem} + # for more details. + # # A message input to the model with a role indicating instruction following # hierarchy. Instructions given with the `developer` or `system` role take # precedence over instructions given with the `user` role. Messages with the # `assistant` role are presumed to have been generated by the model in previous # interactions. # - # @param content [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText] - # @param role [Symbol, OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Role] - # @param type [Symbol, OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Type] + # @param content [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText] Text inputs to the model - can contain template strings. ... + # + # @param role [Symbol, OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Role] The role of the message input. One of `user`, `assistant`, `system`, or ... + # + # @param type [Symbol, OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Type] The type of the message input. Always `message`. ... # Text inputs to the model - can contain template strings. # @@ -472,10 +534,15 @@ class OutputText < OpenAI::Internal::Type::BaseModel required :type, const: :output_text # @!method initialize(text:, type: :output_text) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText} + # for more details. + # # A text output from the model. # - # @param text [String] - # @param type [Symbol, :output_text] + # @param text [String] The text output from the model. ... + # + # @param type [Symbol, :output_text] The type of the output text. Always `output_text`. ... end # @!method self.variants @@ -530,8 +597,9 @@ class ItemReference < OpenAI::Internal::Type::BaseModel required :type, const: :item_reference # @!method initialize(item_reference:, type: :item_reference) - # @param item_reference [String] - # @param type [Symbol, :item_reference] + # @param item_reference [String] A reference to a variable in the "item" namespace. Ie, "item.name" + # + # @param type [Symbol, :item_reference] The type of input messages. Always `item_reference`. end # @!method self.variants @@ -565,10 +633,13 @@ class SamplingParams < OpenAI::Internal::Type::BaseModel optional :top_p, Float # @!method initialize(max_completion_tokens: nil, seed: nil, temperature: nil, top_p: nil) - # @param max_completion_tokens [Integer] - # @param seed [Integer] - # @param temperature [Float] - # @param top_p [Float] + # @param max_completion_tokens [Integer] The maximum number of tokens in the generated output. + # + # @param seed [Integer] A seed value to initialize the randomness, during sampling. + # + # @param temperature [Float] A higher temperature increases randomness in the outputs. + # + # @param top_p [Float] An alternative to temperature for nucleus sampling; 1.0 includes all tokens. end end @@ -614,12 +685,17 @@ class PerModelUsage < OpenAI::Internal::Type::BaseModel required :total_tokens, Integer # @!method initialize(cached_tokens:, completion_tokens:, invocation_count:, model_name:, prompt_tokens:, total_tokens:) - # @param cached_tokens [Integer] - # @param completion_tokens [Integer] - # @param invocation_count [Integer] - # @param model_name [String] - # @param prompt_tokens [Integer] - # @param total_tokens [Integer] + # @param cached_tokens [Integer] The number of tokens retrieved from cache. + # + # @param completion_tokens [Integer] The number of completion tokens generated. + # + # @param invocation_count [Integer] The number of invocations. + # + # @param model_name [String] The name of the model. + # + # @param prompt_tokens [Integer] The number of prompt tokens used. + # + # @param total_tokens [Integer] The total number of tokens used. end class PerTestingCriteriaResult < OpenAI::Internal::Type::BaseModel @@ -642,9 +718,11 @@ class PerTestingCriteriaResult < OpenAI::Internal::Type::BaseModel required :testing_criteria, String # @!method initialize(failed:, passed:, testing_criteria:) - # @param failed [Integer] - # @param passed [Integer] - # @param testing_criteria [String] + # @param failed [Integer] Number of tests failed for this criteria. + # + # @param passed [Integer] Number of tests passed for this criteria. + # + # @param testing_criteria [String] A description of the testing criteria. end # @see OpenAI::Models::Evals::RunListResponse#result_counts @@ -676,10 +754,13 @@ class ResultCounts < OpenAI::Internal::Type::BaseModel # @!method initialize(errored:, failed:, passed:, total:) # Counters summarizing the outcomes of the evaluation run. # - # @param errored [Integer] - # @param failed [Integer] - # @param passed [Integer] - # @param total [Integer] + # @param errored [Integer] Number of output items that resulted in an error. + # + # @param failed [Integer] Number of output items that failed to pass the evaluation. + # + # @param passed [Integer] Number of output items that passed the evaluation. + # + # @param total [Integer] Total number of executed output items. end end end diff --git a/lib/openai/models/evals/run_retrieve_response.rb b/lib/openai/models/evals/run_retrieve_response.rb index 55c35341..1118a6ba 100644 --- a/lib/openai/models/evals/run_retrieve_response.rb +++ b/lib/openai/models/evals/run_retrieve_response.rb @@ -97,22 +97,38 @@ class RunRetrieveResponse < OpenAI::Internal::Type::BaseModel required :status, String # @!method initialize(id:, created_at:, data_source:, error:, eval_id:, metadata:, model:, name:, per_model_usage:, per_testing_criteria_results:, report_url:, result_counts:, status:, object: :"eval.run") + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Evals::RunRetrieveResponse} for more details. + # # A schema representing an evaluation run. # - # @param id [String] - # @param created_at [Integer] - # @param data_source [OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource, OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions] - # @param error [OpenAI::Models::Evals::EvalAPIError] - # @param eval_id [String] - # @param metadata [Hash{Symbol=>String}, nil] - # @param model [String] - # @param name [String] - # @param per_model_usage [Array] - # @param per_testing_criteria_results [Array] - # @param report_url [String] - # @param result_counts [OpenAI::Models::Evals::RunRetrieveResponse::ResultCounts] - # @param status [String] - # @param object [Symbol, :"eval.run"] + # @param id [String] Unique identifier for the evaluation run. + # + # @param created_at [Integer] Unix timestamp (in seconds) when the evaluation run was created. + # + # @param data_source [OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource, OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions] Information about the run's data source. + # + # @param error [OpenAI::Models::Evals::EvalAPIError] An object representing an error response from the Eval API. ... + # + # @param eval_id [String] The identifier of the associated evaluation. + # + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # + # @param model [String] The model that is evaluated, if applicable. + # + # @param name [String] The name of the evaluation run. + # + # @param per_model_usage [Array] Usage statistics for each model during the evaluation run. + # + # @param per_testing_criteria_results [Array] Results per testing criteria applied during the evaluation run. + # + # @param report_url [String] The URL to the rendered evaluation run report on the UI dashboard. + # + # @param result_counts [OpenAI::Models::Evals::RunRetrieveResponse::ResultCounts] Counters summarizing the outcomes of the evaluation run. + # + # @param status [String] The status of the evaluation run. + # + # @param object [Symbol, :"eval.run"] The type of the object. Always "eval.run". # Information about the run's data source. # @@ -164,13 +180,21 @@ class Completions < OpenAI::Internal::Type::BaseModel -> { OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::SamplingParams } # @!method initialize(source:, input_messages: nil, model: nil, sampling_params: nil, type: :completions) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions} for more + # details. + # # A ResponsesRunDataSource object describing a model sampling configuration. # - # @param source [OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::Source::FileContent, OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::Source::FileID, OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::Source::Responses] + # @param source [OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::Source::FileContent, OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::Source::FileID, OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::Source::Responses] A EvalResponsesSource object describing a run data source configuration. ... + # # @param input_messages [OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template, OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::ItemReference] - # @param model [String] + # + # @param model [String] The name of the model to use for generating completions (e.g. "o3-mini"). + # # @param sampling_params [OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::SamplingParams] - # @param type [Symbol, :completions] + # + # @param type [Symbol, :completions] The type of run data source. Always `completions`. # A EvalResponsesSource object describing a run data source configuration. # @@ -205,8 +229,9 @@ class FileContent < OpenAI::Internal::Type::BaseModel required :type, const: :file_content # @!method initialize(content:, type: :file_content) - # @param content [Array] - # @param type [Symbol, :file_content] + # @param content [Array] The content of the jsonl file. + # + # @param type [Symbol, :file_content] The type of jsonl source. Always `file_content`. class Content < OpenAI::Internal::Type::BaseModel # @!attribute item @@ -239,8 +264,9 @@ class FileID < OpenAI::Internal::Type::BaseModel required :type, const: :file_id # @!method initialize(id:, type: :file_id) - # @param id [String] - # @param type [Symbol, :file_id] + # @param id [String] The identifier of the file. + # + # @param type [Symbol, :file_id] The type of jsonl source. Always `file_id`. end class Responses < OpenAI::Internal::Type::BaseModel @@ -325,20 +351,43 @@ class Responses < OpenAI::Internal::Type::BaseModel optional :users, OpenAI::Internal::Type::ArrayOf[String], nil?: true # @!method initialize(allow_parallel_tool_calls: nil, created_after: nil, created_before: nil, has_tool_calls: nil, instructions_search: nil, metadata: nil, model: nil, reasoning_effort: nil, temperature: nil, top_p: nil, users: nil, type: :responses) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::Source::Responses} + # for more details. + # # A EvalResponsesSource object describing a run data source configuration. # - # @param allow_parallel_tool_calls [Boolean, nil] - # @param created_after [Integer, nil] - # @param created_before [Integer, nil] - # @param has_tool_calls [Boolean, nil] - # @param instructions_search [String, nil] - # @param metadata [Object, nil] - # @param model [String, nil] - # @param reasoning_effort [Symbol, OpenAI::Models::ReasoningEffort, nil] - # @param temperature [Float, nil] - # @param top_p [Float, nil] - # @param users [Array, nil] - # @param type [Symbol, :responses] + # @param allow_parallel_tool_calls [Boolean, nil] Whether to allow parallel tool calls. This is a query parameter used to select r + # ... + # + # @param created_after [Integer, nil] Only include items created after this timestamp (inclusive). This is a query par + # ... + # + # @param created_before [Integer, nil] Only include items created before this timestamp (inclusive). This is a query pa + # ... + # + # @param has_tool_calls [Boolean, nil] Whether the response has tool calls. This is a query parameter used to select re + # ... + # + # @param instructions_search [String, nil] Optional search string for instructions. This is a query parameter used to selec + # ... + # + # @param metadata [Object, nil] Metadata filter for the responses. This is a query parameter used to select resp + # ... + # + # @param model [String, nil] The name of the model to find responses for. This is a query parameter used to s + # ... + # + # @param reasoning_effort [Symbol, OpenAI::Models::ReasoningEffort, nil] Optional reasoning effort parameter. This is a query parameter used to select re + # ... + # + # @param temperature [Float, nil] Sampling temperature. This is a query parameter used to select responses. + # + # @param top_p [Float, nil] Nucleus sampling parameter. This is a query parameter used to select responses. + # + # @param users [Array, nil] List of user identifiers. This is a query parameter used to select responses. + # + # @param type [Symbol, :responses] The type of run data source. Always `responses`. end # @!method self.variants @@ -377,8 +426,14 @@ class Template < OpenAI::Internal::Type::BaseModel required :type, const: :template # @!method initialize(template:, type: :template) - # @param template [Array] - # @param type [Symbol, :template] + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template} + # for more details. + # + # @param template [Array] A list of chat messages forming the prompt or context. May include variable refe + # ... + # + # @param type [Symbol, :template] The type of input messages. Always `template`. # A message input to the model with a role indicating instruction following # hierarchy. Instructions given with the `developer` or `system` role take @@ -411,8 +466,9 @@ class ChatMessage < OpenAI::Internal::Type::BaseModel required :role, String # @!method initialize(content:, role:) - # @param content [String] - # @param role [String] + # @param content [String] The content of the message. + # + # @param role [String] The role of the message (e.g. "system", "assistant", "user"). end class EvalItem < OpenAI::Internal::Type::BaseModel @@ -439,15 +495,21 @@ class EvalItem < OpenAI::Internal::Type::BaseModel enum: -> { OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Type } # @!method initialize(content:, role:, type: nil) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem} + # for more details. + # # A message input to the model with a role indicating instruction following # hierarchy. Instructions given with the `developer` or `system` role take # precedence over instructions given with the `user` role. Messages with the # `assistant` role are presumed to have been generated by the model in previous # interactions. # - # @param content [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText] - # @param role [Symbol, OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Role] - # @param type [Symbol, OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Type] + # @param content [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText] Text inputs to the model - can contain template strings. ... + # + # @param role [Symbol, OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Role] The role of the message input. One of `user`, `assistant`, `system`, or ... + # + # @param type [Symbol, OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Type] The type of the message input. Always `message`. ... # Text inputs to the model - can contain template strings. # @@ -478,10 +540,15 @@ class OutputText < OpenAI::Internal::Type::BaseModel required :type, const: :output_text # @!method initialize(text:, type: :output_text) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText} + # for more details. + # # A text output from the model. # - # @param text [String] - # @param type [Symbol, :output_text] + # @param text [String] The text output from the model. ... + # + # @param type [Symbol, :output_text] The type of the output text. Always `output_text`. ... end # @!method self.variants @@ -536,8 +603,9 @@ class ItemReference < OpenAI::Internal::Type::BaseModel required :type, const: :item_reference # @!method initialize(item_reference:, type: :item_reference) - # @param item_reference [String] - # @param type [Symbol, :item_reference] + # @param item_reference [String] A reference to a variable in the "item" namespace. Ie, "item.name" + # + # @param type [Symbol, :item_reference] The type of input messages. Always `item_reference`. end # @!method self.variants @@ -571,10 +639,13 @@ class SamplingParams < OpenAI::Internal::Type::BaseModel optional :top_p, Float # @!method initialize(max_completion_tokens: nil, seed: nil, temperature: nil, top_p: nil) - # @param max_completion_tokens [Integer] - # @param seed [Integer] - # @param temperature [Float] - # @param top_p [Float] + # @param max_completion_tokens [Integer] The maximum number of tokens in the generated output. + # + # @param seed [Integer] A seed value to initialize the randomness, during sampling. + # + # @param temperature [Float] A higher temperature increases randomness in the outputs. + # + # @param top_p [Float] An alternative to temperature for nucleus sampling; 1.0 includes all tokens. end end @@ -620,12 +691,17 @@ class PerModelUsage < OpenAI::Internal::Type::BaseModel required :total_tokens, Integer # @!method initialize(cached_tokens:, completion_tokens:, invocation_count:, model_name:, prompt_tokens:, total_tokens:) - # @param cached_tokens [Integer] - # @param completion_tokens [Integer] - # @param invocation_count [Integer] - # @param model_name [String] - # @param prompt_tokens [Integer] - # @param total_tokens [Integer] + # @param cached_tokens [Integer] The number of tokens retrieved from cache. + # + # @param completion_tokens [Integer] The number of completion tokens generated. + # + # @param invocation_count [Integer] The number of invocations. + # + # @param model_name [String] The name of the model. + # + # @param prompt_tokens [Integer] The number of prompt tokens used. + # + # @param total_tokens [Integer] The total number of tokens used. end class PerTestingCriteriaResult < OpenAI::Internal::Type::BaseModel @@ -648,9 +724,11 @@ class PerTestingCriteriaResult < OpenAI::Internal::Type::BaseModel required :testing_criteria, String # @!method initialize(failed:, passed:, testing_criteria:) - # @param failed [Integer] - # @param passed [Integer] - # @param testing_criteria [String] + # @param failed [Integer] Number of tests failed for this criteria. + # + # @param passed [Integer] Number of tests passed for this criteria. + # + # @param testing_criteria [String] A description of the testing criteria. end # @see OpenAI::Models::Evals::RunRetrieveResponse#result_counts @@ -682,10 +760,13 @@ class ResultCounts < OpenAI::Internal::Type::BaseModel # @!method initialize(errored:, failed:, passed:, total:) # Counters summarizing the outcomes of the evaluation run. # - # @param errored [Integer] - # @param failed [Integer] - # @param passed [Integer] - # @param total [Integer] + # @param errored [Integer] Number of output items that resulted in an error. + # + # @param failed [Integer] Number of output items that failed to pass the evaluation. + # + # @param passed [Integer] Number of output items that passed the evaluation. + # + # @param total [Integer] Total number of executed output items. end end end diff --git a/lib/openai/models/evals/runs/output_item_list_params.rb b/lib/openai/models/evals/runs/output_item_list_params.rb index 301d2acd..6eadd7fb 100644 --- a/lib/openai/models/evals/runs/output_item_list_params.rb +++ b/lib/openai/models/evals/runs/output_item_list_params.rb @@ -41,11 +41,20 @@ class OutputItemListParams < OpenAI::Internal::Type::BaseModel optional :status, enum: -> { OpenAI::Models::Evals::Runs::OutputItemListParams::Status } # @!method initialize(eval_id:, after: nil, limit: nil, order: nil, status: nil, request_options: {}) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Evals::Runs::OutputItemListParams} for more details. + # # @param eval_id [String] - # @param after [String] - # @param limit [Integer] - # @param order [Symbol, OpenAI::Models::Evals::Runs::OutputItemListParams::Order] - # @param status [Symbol, OpenAI::Models::Evals::Runs::OutputItemListParams::Status] + # + # @param after [String] Identifier for the last output item from the previous pagination request. + # + # @param limit [Integer] Number of output items to retrieve. + # + # @param order [Symbol, OpenAI::Models::Evals::Runs::OutputItemListParams::Order] Sort order for output items by timestamp. Use `asc` for ascending order or `desc + # ... + # + # @param status [Symbol, OpenAI::Models::Evals::Runs::OutputItemListParams::Status] Filter output items by status. Use `failed` to filter by failed output ... + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] # Sort order for output items by timestamp. Use `asc` for ascending order or diff --git a/lib/openai/models/evals/runs/output_item_list_response.rb b/lib/openai/models/evals/runs/output_item_list_response.rb index fc0d6e75..e5c369c9 100644 --- a/lib/openai/models/evals/runs/output_item_list_response.rb +++ b/lib/openai/models/evals/runs/output_item_list_response.rb @@ -70,16 +70,25 @@ class OutputItemListResponse < OpenAI::Internal::Type::BaseModel # @!method initialize(id:, created_at:, datasource_item:, datasource_item_id:, eval_id:, results:, run_id:, sample:, status:, object: :"eval.run.output_item") # A schema representing an evaluation run output item. # - # @param id [String] - # @param created_at [Integer] - # @param datasource_item [Hash{Symbol=>Object}] - # @param datasource_item_id [Integer] - # @param eval_id [String] - # @param results [ArrayObject}>] - # @param run_id [String] - # @param sample [OpenAI::Models::Evals::Runs::OutputItemListResponse::Sample] - # @param status [String] - # @param object [Symbol, :"eval.run.output_item"] + # @param id [String] Unique identifier for the evaluation run output item. + # + # @param created_at [Integer] Unix timestamp (in seconds) when the evaluation run was created. + # + # @param datasource_item [Hash{Symbol=>Object}] Details of the input data source item. + # + # @param datasource_item_id [Integer] The identifier for the data source item. + # + # @param eval_id [String] The identifier of the evaluation group. + # + # @param results [ArrayObject}>] A list of results from the evaluation run. + # + # @param run_id [String] The identifier of the evaluation run associated with this output item. + # + # @param sample [OpenAI::Models::Evals::Runs::OutputItemListResponse::Sample] A sample containing the input and output of the evaluation run. + # + # @param status [String] The status of the evaluation run. + # + # @param object [Symbol, :"eval.run.output_item"] The type of the object. Always "eval.run.output_item". # @see OpenAI::Models::Evals::Runs::OutputItemListResponse#sample class Sample < OpenAI::Internal::Type::BaseModel @@ -146,18 +155,30 @@ class Sample < OpenAI::Internal::Type::BaseModel required :usage, -> { OpenAI::Models::Evals::Runs::OutputItemListResponse::Sample::Usage } # @!method initialize(error:, finish_reason:, input:, max_completion_tokens:, model:, output:, seed:, temperature:, top_p:, usage:) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Evals::Runs::OutputItemListResponse::Sample} for more details. + # # A sample containing the input and output of the evaluation run. # - # @param error [OpenAI::Models::Evals::EvalAPIError] - # @param finish_reason [String] - # @param input [Array] - # @param max_completion_tokens [Integer] - # @param model [String] - # @param output [Array] - # @param seed [Integer] - # @param temperature [Float] - # @param top_p [Float] - # @param usage [OpenAI::Models::Evals::Runs::OutputItemListResponse::Sample::Usage] + # @param error [OpenAI::Models::Evals::EvalAPIError] An object representing an error response from the Eval API. ... + # + # @param finish_reason [String] The reason why the sample generation was finished. + # + # @param input [Array] An array of input messages. + # + # @param max_completion_tokens [Integer] The maximum number of tokens allowed for completion. + # + # @param model [String] The model used for generating the sample. + # + # @param output [Array] An array of output messages. + # + # @param seed [Integer] The seed used for generating the sample. + # + # @param temperature [Float] The sampling temperature used. + # + # @param top_p [Float] The top_p value used for sampling. + # + # @param usage [OpenAI::Models::Evals::Runs::OutputItemListResponse::Sample::Usage] Token usage details for the sample. class Input < OpenAI::Internal::Type::BaseModel # @!attribute content @@ -175,8 +196,9 @@ class Input < OpenAI::Internal::Type::BaseModel # @!method initialize(content:, role:) # An input message. # - # @param content [String] - # @param role [String] + # @param content [String] The content of the message. + # + # @param role [String] The role of the message sender (e.g., system, user, developer). end class Output < OpenAI::Internal::Type::BaseModel @@ -193,8 +215,9 @@ class Output < OpenAI::Internal::Type::BaseModel optional :role, String # @!method initialize(content: nil, role: nil) - # @param content [String] - # @param role [String] + # @param content [String] The content of the message. + # + # @param role [String] The role of the message (e.g. "system", "assistant", "user"). end # @see OpenAI::Models::Evals::Runs::OutputItemListResponse::Sample#usage @@ -226,10 +249,13 @@ class Usage < OpenAI::Internal::Type::BaseModel # @!method initialize(cached_tokens:, completion_tokens:, prompt_tokens:, total_tokens:) # Token usage details for the sample. # - # @param cached_tokens [Integer] - # @param completion_tokens [Integer] - # @param prompt_tokens [Integer] - # @param total_tokens [Integer] + # @param cached_tokens [Integer] The number of tokens retrieved from cache. + # + # @param completion_tokens [Integer] The number of completion tokens generated. + # + # @param prompt_tokens [Integer] The number of prompt tokens used. + # + # @param total_tokens [Integer] The total number of tokens used. end end end diff --git a/lib/openai/models/evals/runs/output_item_retrieve_response.rb b/lib/openai/models/evals/runs/output_item_retrieve_response.rb index eec2ea1a..70b4c3ab 100644 --- a/lib/openai/models/evals/runs/output_item_retrieve_response.rb +++ b/lib/openai/models/evals/runs/output_item_retrieve_response.rb @@ -70,16 +70,25 @@ class OutputItemRetrieveResponse < OpenAI::Internal::Type::BaseModel # @!method initialize(id:, created_at:, datasource_item:, datasource_item_id:, eval_id:, results:, run_id:, sample:, status:, object: :"eval.run.output_item") # A schema representing an evaluation run output item. # - # @param id [String] - # @param created_at [Integer] - # @param datasource_item [Hash{Symbol=>Object}] - # @param datasource_item_id [Integer] - # @param eval_id [String] - # @param results [ArrayObject}>] - # @param run_id [String] - # @param sample [OpenAI::Models::Evals::Runs::OutputItemRetrieveResponse::Sample] - # @param status [String] - # @param object [Symbol, :"eval.run.output_item"] + # @param id [String] Unique identifier for the evaluation run output item. + # + # @param created_at [Integer] Unix timestamp (in seconds) when the evaluation run was created. + # + # @param datasource_item [Hash{Symbol=>Object}] Details of the input data source item. + # + # @param datasource_item_id [Integer] The identifier for the data source item. + # + # @param eval_id [String] The identifier of the evaluation group. + # + # @param results [ArrayObject}>] A list of results from the evaluation run. + # + # @param run_id [String] The identifier of the evaluation run associated with this output item. + # + # @param sample [OpenAI::Models::Evals::Runs::OutputItemRetrieveResponse::Sample] A sample containing the input and output of the evaluation run. + # + # @param status [String] The status of the evaluation run. + # + # @param object [Symbol, :"eval.run.output_item"] The type of the object. Always "eval.run.output_item". # @see OpenAI::Models::Evals::Runs::OutputItemRetrieveResponse#sample class Sample < OpenAI::Internal::Type::BaseModel @@ -146,18 +155,31 @@ class Sample < OpenAI::Internal::Type::BaseModel required :usage, -> { OpenAI::Models::Evals::Runs::OutputItemRetrieveResponse::Sample::Usage } # @!method initialize(error:, finish_reason:, input:, max_completion_tokens:, model:, output:, seed:, temperature:, top_p:, usage:) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Evals::Runs::OutputItemRetrieveResponse::Sample} for more + # details. + # # A sample containing the input and output of the evaluation run. # - # @param error [OpenAI::Models::Evals::EvalAPIError] - # @param finish_reason [String] - # @param input [Array] - # @param max_completion_tokens [Integer] - # @param model [String] - # @param output [Array] - # @param seed [Integer] - # @param temperature [Float] - # @param top_p [Float] - # @param usage [OpenAI::Models::Evals::Runs::OutputItemRetrieveResponse::Sample::Usage] + # @param error [OpenAI::Models::Evals::EvalAPIError] An object representing an error response from the Eval API. ... + # + # @param finish_reason [String] The reason why the sample generation was finished. + # + # @param input [Array] An array of input messages. + # + # @param max_completion_tokens [Integer] The maximum number of tokens allowed for completion. + # + # @param model [String] The model used for generating the sample. + # + # @param output [Array] An array of output messages. + # + # @param seed [Integer] The seed used for generating the sample. + # + # @param temperature [Float] The sampling temperature used. + # + # @param top_p [Float] The top_p value used for sampling. + # + # @param usage [OpenAI::Models::Evals::Runs::OutputItemRetrieveResponse::Sample::Usage] Token usage details for the sample. class Input < OpenAI::Internal::Type::BaseModel # @!attribute content @@ -175,8 +197,9 @@ class Input < OpenAI::Internal::Type::BaseModel # @!method initialize(content:, role:) # An input message. # - # @param content [String] - # @param role [String] + # @param content [String] The content of the message. + # + # @param role [String] The role of the message sender (e.g., system, user, developer). end class Output < OpenAI::Internal::Type::BaseModel @@ -193,8 +216,9 @@ class Output < OpenAI::Internal::Type::BaseModel optional :role, String # @!method initialize(content: nil, role: nil) - # @param content [String] - # @param role [String] + # @param content [String] The content of the message. + # + # @param role [String] The role of the message (e.g. "system", "assistant", "user"). end # @see OpenAI::Models::Evals::Runs::OutputItemRetrieveResponse::Sample#usage @@ -226,10 +250,13 @@ class Usage < OpenAI::Internal::Type::BaseModel # @!method initialize(cached_tokens:, completion_tokens:, prompt_tokens:, total_tokens:) # Token usage details for the sample. # - # @param cached_tokens [Integer] - # @param completion_tokens [Integer] - # @param prompt_tokens [Integer] - # @param total_tokens [Integer] + # @param cached_tokens [Integer] The number of tokens retrieved from cache. + # + # @param completion_tokens [Integer] The number of completion tokens generated. + # + # @param prompt_tokens [Integer] The number of prompt tokens used. + # + # @param total_tokens [Integer] The total number of tokens used. end end end diff --git a/lib/openai/models/file_create_params.rb b/lib/openai/models/file_create_params.rb index 28d5f936..94e5f46f 100644 --- a/lib/openai/models/file_create_params.rb +++ b/lib/openai/models/file_create_params.rb @@ -23,8 +23,14 @@ class FileCreateParams < OpenAI::Internal::Type::BaseModel required :purpose, enum: -> { OpenAI::Models::FilePurpose } # @!method initialize(file:, purpose:, request_options: {}) - # @param file [Pathname, StringIO] - # @param purpose [Symbol, OpenAI::Models::FilePurpose] + # Some parameter documentations has been truncated, see + # {OpenAI::Models::FileCreateParams} for more details. + # + # @param file [Pathname, StringIO] The File object (not file name) to be uploaded. ... + # + # @param purpose [Symbol, OpenAI::Models::FilePurpose] The intended purpose of the uploaded file. One of: - `assistants`: Used in the A + # ... + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] end end diff --git a/lib/openai/models/file_list_params.rb b/lib/openai/models/file_list_params.rb index 76de1996..423236ed 100644 --- a/lib/openai/models/file_list_params.rb +++ b/lib/openai/models/file_list_params.rb @@ -37,10 +37,20 @@ class FileListParams < OpenAI::Internal::Type::BaseModel optional :purpose, String # @!method initialize(after: nil, limit: nil, order: nil, purpose: nil, request_options: {}) - # @param after [String] - # @param limit [Integer] - # @param order [Symbol, OpenAI::Models::FileListParams::Order] - # @param purpose [String] + # Some parameter documentations has been truncated, see + # {OpenAI::Models::FileListParams} for more details. + # + # @param after [String] A cursor for use in pagination. `after` is an object ID that defines your place + # ... + # + # @param limit [Integer] A limit on the number of objects to be returned. Limit can range between 1 and 1 + # ... + # + # @param order [Symbol, OpenAI::Models::FileListParams::Order] Sort order by the `created_at` timestamp of the objects. `asc` for ascending ord + # ... + # + # @param purpose [String] Only return files with the given purpose. + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] # Sort order by the `created_at` timestamp of the objects. `asc` for ascending diff --git a/lib/openai/models/file_object.rb b/lib/openai/models/file_object.rb index b6825ae1..942e2361 100644 --- a/lib/openai/models/file_object.rb +++ b/lib/openai/models/file_object.rb @@ -67,17 +67,31 @@ class FileObject < OpenAI::Internal::Type::BaseModel optional :status_details, String # @!method initialize(id:, bytes:, created_at:, filename:, purpose:, status:, expires_at: nil, status_details: nil, object: :file) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::FileObject} for more details. + # # The `File` object represents a document that has been uploaded to OpenAI. # - # @param id [String] - # @param bytes [Integer] - # @param created_at [Integer] - # @param filename [String] - # @param purpose [Symbol, OpenAI::Models::FileObject::Purpose] - # @param status [Symbol, OpenAI::Models::FileObject::Status] - # @param expires_at [Integer] - # @param status_details [String] - # @param object [Symbol, :file] + # @param id [String] The file identifier, which can be referenced in the API endpoints. + # + # @param bytes [Integer] The size of the file, in bytes. + # + # @param created_at [Integer] The Unix timestamp (in seconds) for when the file was created. + # + # @param filename [String] The name of the file. + # + # @param purpose [Symbol, OpenAI::Models::FileObject::Purpose] The intended purpose of the file. Supported values are `assistants`, `assistants + # ... + # + # @param status [Symbol, OpenAI::Models::FileObject::Status] Deprecated. The current status of the file, which can be either `uploaded`, `pro + # ... + # + # @param expires_at [Integer] The Unix timestamp (in seconds) for when the file will expire. + # + # @param status_details [String] Deprecated. For details on why a fine-tuning training file failed validation, se + # ... + # + # @param object [Symbol, :file] The object type, which is always `file`. # The intended purpose of the file. Supported values are `assistants`, # `assistants_output`, `batch`, `batch_output`, `fine-tune`, `fine-tune-results` diff --git a/lib/openai/models/fine_tuning/checkpoints/permission_create_params.rb b/lib/openai/models/fine_tuning/checkpoints/permission_create_params.rb index 8a333418..448911d4 100644 --- a/lib/openai/models/fine_tuning/checkpoints/permission_create_params.rb +++ b/lib/openai/models/fine_tuning/checkpoints/permission_create_params.rb @@ -16,7 +16,8 @@ class PermissionCreateParams < OpenAI::Internal::Type::BaseModel required :project_ids, OpenAI::Internal::Type::ArrayOf[String] # @!method initialize(project_ids:, request_options: {}) - # @param project_ids [Array] + # @param project_ids [Array] The project identifiers to grant access to. + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] end end diff --git a/lib/openai/models/fine_tuning/checkpoints/permission_create_response.rb b/lib/openai/models/fine_tuning/checkpoints/permission_create_response.rb index ed9e10fe..efe00e34 100644 --- a/lib/openai/models/fine_tuning/checkpoints/permission_create_response.rb +++ b/lib/openai/models/fine_tuning/checkpoints/permission_create_response.rb @@ -34,10 +34,13 @@ class PermissionCreateResponse < OpenAI::Internal::Type::BaseModel # The `checkpoint.permission` object represents a permission for a fine-tuned # model checkpoint. # - # @param id [String] - # @param created_at [Integer] - # @param project_id [String] - # @param object [Symbol, :"checkpoint.permission"] + # @param id [String] The permission identifier, which can be referenced in the API endpoints. + # + # @param created_at [Integer] The Unix timestamp (in seconds) for when the permission was created. + # + # @param project_id [String] The project identifier that the permission is for. + # + # @param object [Symbol, :"checkpoint.permission"] The object type, which is always "checkpoint.permission". end end end diff --git a/lib/openai/models/fine_tuning/checkpoints/permission_delete_response.rb b/lib/openai/models/fine_tuning/checkpoints/permission_delete_response.rb index 1fce739b..483d4664 100644 --- a/lib/openai/models/fine_tuning/checkpoints/permission_delete_response.rb +++ b/lib/openai/models/fine_tuning/checkpoints/permission_delete_response.rb @@ -25,9 +25,11 @@ class PermissionDeleteResponse < OpenAI::Internal::Type::BaseModel required :object, const: :"checkpoint.permission" # @!method initialize(id:, deleted:, object: :"checkpoint.permission") - # @param id [String] - # @param deleted [Boolean] - # @param object [Symbol, :"checkpoint.permission"] + # @param id [String] The ID of the fine-tuned model checkpoint permission that was deleted. + # + # @param deleted [Boolean] Whether the fine-tuned model checkpoint permission was successfully deleted. + # + # @param object [Symbol, :"checkpoint.permission"] The object type, which is always "checkpoint.permission". end end end diff --git a/lib/openai/models/fine_tuning/checkpoints/permission_retrieve_params.rb b/lib/openai/models/fine_tuning/checkpoints/permission_retrieve_params.rb index 6c272af8..cddf06b9 100644 --- a/lib/openai/models/fine_tuning/checkpoints/permission_retrieve_params.rb +++ b/lib/openai/models/fine_tuning/checkpoints/permission_retrieve_params.rb @@ -34,10 +34,14 @@ class PermissionRetrieveParams < OpenAI::Internal::Type::BaseModel optional :project_id, String # @!method initialize(after: nil, limit: nil, order: nil, project_id: nil, request_options: {}) - # @param after [String] - # @param limit [Integer] - # @param order [Symbol, OpenAI::Models::FineTuning::Checkpoints::PermissionRetrieveParams::Order] - # @param project_id [String] + # @param after [String] Identifier for the last permission ID from the previous pagination request. + # + # @param limit [Integer] Number of permissions to retrieve. + # + # @param order [Symbol, OpenAI::Models::FineTuning::Checkpoints::PermissionRetrieveParams::Order] The order in which to retrieve permissions. + # + # @param project_id [String] The ID of the project to get permissions for. + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] # The order in which to retrieve permissions. diff --git a/lib/openai/models/fine_tuning/checkpoints/permission_retrieve_response.rb b/lib/openai/models/fine_tuning/checkpoints/permission_retrieve_response.rb index 1de51fee..6ffbdf4d 100644 --- a/lib/openai/models/fine_tuning/checkpoints/permission_retrieve_response.rb +++ b/lib/openai/models/fine_tuning/checkpoints/permission_retrieve_response.rb @@ -68,10 +68,13 @@ class Data < OpenAI::Internal::Type::BaseModel # The `checkpoint.permission` object represents a permission for a fine-tuned # model checkpoint. # - # @param id [String] - # @param created_at [Integer] - # @param project_id [String] - # @param object [Symbol, :"checkpoint.permission"] + # @param id [String] The permission identifier, which can be referenced in the API endpoints. + # + # @param created_at [Integer] The Unix timestamp (in seconds) for when the permission was created. + # + # @param project_id [String] The project identifier that the permission is for. + # + # @param object [Symbol, :"checkpoint.permission"] The object type, which is always "checkpoint.permission". end end end diff --git a/lib/openai/models/fine_tuning/fine_tuning_job.rb b/lib/openai/models/fine_tuning/fine_tuning_job.rb index a5e3d2a9..36cc8d69 100644 --- a/lib/openai/models/fine_tuning/fine_tuning_job.rb +++ b/lib/openai/models/fine_tuning/fine_tuning_job.rb @@ -139,28 +139,59 @@ class FineTuningJob < OpenAI::Internal::Type::BaseModel optional :method_, -> { OpenAI::Models::FineTuning::FineTuningJob::Method }, api_name: :method # @!method initialize(id:, created_at:, error:, fine_tuned_model:, finished_at:, hyperparameters:, model:, organization_id:, result_files:, seed:, status:, trained_tokens:, training_file:, validation_file:, estimated_finish: nil, integrations: nil, metadata: nil, method_: nil, object: :"fine_tuning.job") + # Some parameter documentations has been truncated, see + # {OpenAI::Models::FineTuning::FineTuningJob} for more details. + # # The `fine_tuning.job` object represents a fine-tuning job that has been created # through the API. # - # @param id [String] - # @param created_at [Integer] - # @param error [OpenAI::Models::FineTuning::FineTuningJob::Error, nil] - # @param fine_tuned_model [String, nil] - # @param finished_at [Integer, nil] - # @param hyperparameters [OpenAI::Models::FineTuning::FineTuningJob::Hyperparameters] - # @param model [String] - # @param organization_id [String] - # @param result_files [Array] - # @param seed [Integer] - # @param status [Symbol, OpenAI::Models::FineTuning::FineTuningJob::Status] - # @param trained_tokens [Integer, nil] - # @param training_file [String] - # @param validation_file [String, nil] - # @param estimated_finish [Integer, nil] - # @param integrations [Array, nil] - # @param metadata [Hash{Symbol=>String}, nil] - # @param method_ [OpenAI::Models::FineTuning::FineTuningJob::Method] - # @param object [Symbol, :"fine_tuning.job"] + # @param id [String] The object identifier, which can be referenced in the API endpoints. + # + # @param created_at [Integer] The Unix timestamp (in seconds) for when the fine-tuning job was created. + # + # @param error [OpenAI::Models::FineTuning::FineTuningJob::Error, nil] For fine-tuning jobs that have `failed`, this will contain more information on t + # ... + # + # @param fine_tuned_model [String, nil] The name of the fine-tuned model that is being created. The value will be null i + # ... + # + # @param finished_at [Integer, nil] The Unix timestamp (in seconds) for when the fine-tuning job was finished. The v + # ... + # + # @param hyperparameters [OpenAI::Models::FineTuning::FineTuningJob::Hyperparameters] The hyperparameters used for the fine-tuning job. This value will only be return + # ... + # + # @param model [String] The base model that is being fine-tuned. + # + # @param organization_id [String] The organization that owns the fine-tuning job. + # + # @param result_files [Array] The compiled results file ID(s) for the fine-tuning job. You can retrieve the re + # ... + # + # @param seed [Integer] The seed used for the fine-tuning job. + # + # @param status [Symbol, OpenAI::Models::FineTuning::FineTuningJob::Status] The current status of the fine-tuning job, which can be either `validating_files + # ... + # + # @param trained_tokens [Integer, nil] The total number of billable tokens processed by this fine-tuning job. The value + # ... + # + # @param training_file [String] The file ID used for training. You can retrieve the training data with the [File + # ... + # + # @param validation_file [String, nil] The file ID used for validation. You can retrieve the validation results with th + # ... + # + # @param estimated_finish [Integer, nil] The Unix timestamp (in seconds) for when the fine-tuning job is estimated to fin + # ... + # + # @param integrations [Array, nil] A list of integrations to enable for this fine-tuning job. + # + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # + # @param method_ [OpenAI::Models::FineTuning::FineTuningJob::Method] The method used for fine-tuning. + # + # @param object [Symbol, :"fine_tuning.job"] The object type, which is always "fine_tuning.job". # @see OpenAI::Models::FineTuning::FineTuningJob#error class Error < OpenAI::Internal::Type::BaseModel @@ -184,12 +215,18 @@ class Error < OpenAI::Internal::Type::BaseModel required :param, String, nil?: true # @!method initialize(code:, message:, param:) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::FineTuning::FineTuningJob::Error} for more details. + # # For fine-tuning jobs that have `failed`, this will contain more information on # the cause of the failure. # - # @param code [String] - # @param message [String] - # @param param [String, nil] + # @param code [String] A machine-readable error code. + # + # @param message [String] A human-readable error message. + # + # @param param [String, nil] The parameter that was invalid, usually `training_file` or `validation_file`. Th + # ... end # @see OpenAI::Models::FineTuning::FineTuningJob#hyperparameters @@ -217,12 +254,20 @@ class Hyperparameters < OpenAI::Internal::Type::BaseModel optional :n_epochs, union: -> { OpenAI::Models::FineTuning::FineTuningJob::Hyperparameters::NEpochs } # @!method initialize(batch_size: nil, learning_rate_multiplier: nil, n_epochs: nil) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::FineTuning::FineTuningJob::Hyperparameters} for more details. + # # The hyperparameters used for the fine-tuning job. This value will only be # returned when running `supervised` jobs. # - # @param batch_size [Symbol, :auto, Integer] - # @param learning_rate_multiplier [Symbol, :auto, Float] - # @param n_epochs [Symbol, :auto, Integer] + # @param batch_size [Symbol, :auto, Integer] Number of examples in each batch. A larger batch size means that model parameter + # ... + # + # @param learning_rate_multiplier [Symbol, :auto, Float] Scaling factor for the learning rate. A smaller learning rate may be useful to a + # ... + # + # @param n_epochs [Symbol, :auto, Integer] The number of epochs to train the model for. An epoch refers to one full cycle + # ... # Number of examples in each batch. A larger batch size means that model # parameters are updated less frequently, but with lower variance. @@ -311,9 +356,11 @@ class Method < OpenAI::Internal::Type::BaseModel # @!method initialize(dpo: nil, supervised: nil, type: nil) # The method used for fine-tuning. # - # @param dpo [OpenAI::Models::FineTuning::FineTuningJob::Method::Dpo] - # @param supervised [OpenAI::Models::FineTuning::FineTuningJob::Method::Supervised] - # @param type [Symbol, OpenAI::Models::FineTuning::FineTuningJob::Method::Type] + # @param dpo [OpenAI::Models::FineTuning::FineTuningJob::Method::Dpo] Configuration for the DPO fine-tuning method. + # + # @param supervised [OpenAI::Models::FineTuning::FineTuningJob::Method::Supervised] Configuration for the supervised fine-tuning method. + # + # @param type [Symbol, OpenAI::Models::FineTuning::FineTuningJob::Method::Type] The type of method. Is either `supervised` or `dpo`. # @see OpenAI::Models::FineTuning::FineTuningJob::Method#dpo class Dpo < OpenAI::Internal::Type::BaseModel @@ -326,7 +373,7 @@ class Dpo < OpenAI::Internal::Type::BaseModel # @!method initialize(hyperparameters: nil) # Configuration for the DPO fine-tuning method. # - # @param hyperparameters [OpenAI::Models::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters] + # @param hyperparameters [OpenAI::Models::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters] The hyperparameters used for the fine-tuning job. # @see OpenAI::Models::FineTuning::FineTuningJob::Method::Dpo#hyperparameters class Hyperparameters < OpenAI::Internal::Type::BaseModel @@ -363,12 +410,23 @@ class Hyperparameters < OpenAI::Internal::Type::BaseModel union: -> { OpenAI::Models::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters::NEpochs } # @!method initialize(batch_size: nil, beta: nil, learning_rate_multiplier: nil, n_epochs: nil) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters} for + # more details. + # # The hyperparameters used for the fine-tuning job. # - # @param batch_size [Symbol, :auto, Integer] - # @param beta [Symbol, :auto, Float] - # @param learning_rate_multiplier [Symbol, :auto, Float] - # @param n_epochs [Symbol, :auto, Integer] + # @param batch_size [Symbol, :auto, Integer] Number of examples in each batch. A larger batch size means that model parameter + # ... + # + # @param beta [Symbol, :auto, Float] The beta value for the DPO method. A higher beta value will increase the weight + # ... + # + # @param learning_rate_multiplier [Symbol, :auto, Float] Scaling factor for the learning rate. A smaller learning rate may be useful to a + # ... + # + # @param n_epochs [Symbol, :auto, Integer] The number of epochs to train the model for. An epoch refers to one full cycle t + # ... # Number of examples in each batch. A larger batch size means that model # parameters are updated less frequently, but with lower variance. @@ -444,7 +502,7 @@ class Supervised < OpenAI::Internal::Type::BaseModel # @!method initialize(hyperparameters: nil) # Configuration for the supervised fine-tuning method. # - # @param hyperparameters [OpenAI::Models::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters] + # @param hyperparameters [OpenAI::Models::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters] The hyperparameters used for the fine-tuning job. # @see OpenAI::Models::FineTuning::FineTuningJob::Method::Supervised#hyperparameters class Hyperparameters < OpenAI::Internal::Type::BaseModel @@ -473,11 +531,20 @@ class Hyperparameters < OpenAI::Internal::Type::BaseModel union: -> { OpenAI::Models::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters::NEpochs } # @!method initialize(batch_size: nil, learning_rate_multiplier: nil, n_epochs: nil) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters} + # for more details. + # # The hyperparameters used for the fine-tuning job. # - # @param batch_size [Symbol, :auto, Integer] - # @param learning_rate_multiplier [Symbol, :auto, Float] - # @param n_epochs [Symbol, :auto, Integer] + # @param batch_size [Symbol, :auto, Integer] Number of examples in each batch. A larger batch size means that model parameter + # ... + # + # @param learning_rate_multiplier [Symbol, :auto, Float] Scaling factor for the learning rate. A smaller learning rate may be useful to a + # ... + # + # @param n_epochs [Symbol, :auto, Integer] The number of epochs to train the model for. An epoch refers to one full cycle t + # ... # Number of examples in each batch. A larger batch size means that model # parameters are updated less frequently, but with lower variance. diff --git a/lib/openai/models/fine_tuning/fine_tuning_job_event.rb b/lib/openai/models/fine_tuning/fine_tuning_job_event.rb index b5fb144c..5d1a7f6b 100644 --- a/lib/openai/models/fine_tuning/fine_tuning_job_event.rb +++ b/lib/openai/models/fine_tuning/fine_tuning_job_event.rb @@ -50,13 +50,19 @@ class FineTuningJobEvent < OpenAI::Internal::Type::BaseModel # @!method initialize(id:, created_at:, level:, message:, data: nil, type: nil, object: :"fine_tuning.job.event") # Fine-tuning job event object # - # @param id [String] - # @param created_at [Integer] - # @param level [Symbol, OpenAI::Models::FineTuning::FineTuningJobEvent::Level] - # @param message [String] - # @param data [Object] - # @param type [Symbol, OpenAI::Models::FineTuning::FineTuningJobEvent::Type] - # @param object [Symbol, :"fine_tuning.job.event"] + # @param id [String] The object identifier. + # + # @param created_at [Integer] The Unix timestamp (in seconds) for when the fine-tuning job was created. + # + # @param level [Symbol, OpenAI::Models::FineTuning::FineTuningJobEvent::Level] The log level of the event. + # + # @param message [String] The message of the event. + # + # @param data [Object] The data associated with the event. + # + # @param type [Symbol, OpenAI::Models::FineTuning::FineTuningJobEvent::Type] The type of event. + # + # @param object [Symbol, :"fine_tuning.job.event"] The object type, which is always "fine_tuning.job.event". # The log level of the event. # diff --git a/lib/openai/models/fine_tuning/fine_tuning_job_wandb_integration.rb b/lib/openai/models/fine_tuning/fine_tuning_job_wandb_integration.rb index 98c9eaca..c32fef0e 100644 --- a/lib/openai/models/fine_tuning/fine_tuning_job_wandb_integration.rb +++ b/lib/openai/models/fine_tuning/fine_tuning_job_wandb_integration.rb @@ -34,15 +34,24 @@ class FineTuningJobWandbIntegration < OpenAI::Internal::Type::BaseModel optional :tags, OpenAI::Internal::Type::ArrayOf[String] # @!method initialize(project:, entity: nil, name: nil, tags: nil) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::FineTuning::FineTuningJobWandbIntegration} for more details. + # # The settings for your integration with Weights and Biases. This payload # specifies the project that metrics will be sent to. Optionally, you can set an # explicit display name for your run, add tags to your run, and set a default # entity (team, username, etc) to be associated with your run. # - # @param project [String] - # @param entity [String, nil] - # @param name [String, nil] - # @param tags [Array] + # @param project [String] The name of the project that the new run will be created under. ... + # + # @param entity [String, nil] The entity to use for the run. This allows you to set the team or username of th + # ... + # + # @param name [String, nil] A display name to set for the run. If not set, we will use the Job ID as the nam + # ... + # + # @param tags [Array] A list of tags to be attached to the newly created run. These tags are passed th + # ... end end diff --git a/lib/openai/models/fine_tuning/fine_tuning_job_wandb_integration_object.rb b/lib/openai/models/fine_tuning/fine_tuning_job_wandb_integration_object.rb index 8d9da11d..147302a1 100644 --- a/lib/openai/models/fine_tuning/fine_tuning_job_wandb_integration_object.rb +++ b/lib/openai/models/fine_tuning/fine_tuning_job_wandb_integration_object.rb @@ -20,8 +20,14 @@ class FineTuningJobWandbIntegrationObject < OpenAI::Internal::Type::BaseModel required :wandb, -> { OpenAI::Models::FineTuning::FineTuningJobWandbIntegration } # @!method initialize(wandb:, type: :wandb) - # @param wandb [OpenAI::Models::FineTuning::FineTuningJobWandbIntegration] - # @param type [Symbol, :wandb] + # Some parameter documentations has been truncated, see + # {OpenAI::Models::FineTuning::FineTuningJobWandbIntegrationObject} for more + # details. + # + # @param wandb [OpenAI::Models::FineTuning::FineTuningJobWandbIntegration] The settings for your integration with Weights and Biases. This payload specifie + # ... + # + # @param type [Symbol, :wandb] The type of the integration being enabled for the fine-tuning job end end diff --git a/lib/openai/models/fine_tuning/job_create_params.rb b/lib/openai/models/fine_tuning/job_create_params.rb index 2078e4bd..4d99beea 100644 --- a/lib/openai/models/fine_tuning/job_create_params.rb +++ b/lib/openai/models/fine_tuning/job_create_params.rb @@ -107,15 +107,29 @@ class JobCreateParams < OpenAI::Internal::Type::BaseModel optional :validation_file, String, nil?: true # @!method initialize(model:, training_file:, hyperparameters: nil, integrations: nil, metadata: nil, method_: nil, seed: nil, suffix: nil, validation_file: nil, request_options: {}) - # @param model [String, Symbol, OpenAI::Models::FineTuning::JobCreateParams::Model] - # @param training_file [String] - # @param hyperparameters [OpenAI::Models::FineTuning::JobCreateParams::Hyperparameters] - # @param integrations [Array, nil] - # @param metadata [Hash{Symbol=>String}, nil] - # @param method_ [OpenAI::Models::FineTuning::JobCreateParams::Method] - # @param seed [Integer, nil] - # @param suffix [String, nil] - # @param validation_file [String, nil] + # Some parameter documentations has been truncated, see + # {OpenAI::Models::FineTuning::JobCreateParams} for more details. + # + # @param model [String, Symbol, OpenAI::Models::FineTuning::JobCreateParams::Model] The name of the model to fine-tune. You can select one of the ... + # + # @param training_file [String] The ID of an uploaded file that contains training data. ... + # + # @param hyperparameters [OpenAI::Models::FineTuning::JobCreateParams::Hyperparameters] The hyperparameters used for the fine-tuning job. ... + # + # @param integrations [Array, nil] A list of integrations to enable for your fine-tuning job. + # + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # + # @param method_ [OpenAI::Models::FineTuning::JobCreateParams::Method] The method used for fine-tuning. + # + # @param seed [Integer, nil] The seed controls the reproducibility of the job. Passing in the same seed and j + # ... + # + # @param suffix [String, nil] A string of up to 64 characters that will be added to your fine-tuned model name + # ... + # + # @param validation_file [String, nil] The ID of an uploaded file that contains validation data. ... + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] # The name of the model to fine-tune. You can select one of the @@ -172,12 +186,20 @@ class Hyperparameters < OpenAI::Internal::Type::BaseModel optional :n_epochs, union: -> { OpenAI::Models::FineTuning::JobCreateParams::Hyperparameters::NEpochs } # @!method initialize(batch_size: nil, learning_rate_multiplier: nil, n_epochs: nil) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::FineTuning::JobCreateParams::Hyperparameters} for more details. + # # The hyperparameters used for the fine-tuning job. This value is now deprecated # in favor of `method`, and should be passed in under the `method` parameter. # - # @param batch_size [Symbol, :auto, Integer] - # @param learning_rate_multiplier [Symbol, :auto, Float] - # @param n_epochs [Symbol, :auto, Integer] + # @param batch_size [Symbol, :auto, Integer] Number of examples in each batch. A larger batch size means that model parameter + # ... + # + # @param learning_rate_multiplier [Symbol, :auto, Float] Scaling factor for the learning rate. A smaller learning rate may be useful to a + # ... + # + # @param n_epochs [Symbol, :auto, Integer] The number of epochs to train the model for. An epoch refers to one full cycle + # ... # Number of examples in each batch. A larger batch size means that model # parameters are updated less frequently, but with lower variance. @@ -243,8 +265,14 @@ class Integration < OpenAI::Internal::Type::BaseModel required :wandb, -> { OpenAI::Models::FineTuning::JobCreateParams::Integration::Wandb } # @!method initialize(wandb:, type: :wandb) - # @param wandb [OpenAI::Models::FineTuning::JobCreateParams::Integration::Wandb] - # @param type [Symbol, :wandb] + # Some parameter documentations has been truncated, see + # {OpenAI::Models::FineTuning::JobCreateParams::Integration} for more details. + # + # @param wandb [OpenAI::Models::FineTuning::JobCreateParams::Integration::Wandb] The settings for your integration with Weights and Biases. This payload specifie + # ... + # + # @param type [Symbol, :wandb] The type of integration to enable. Currently, only "wandb" (Weights and Biases) + # ... # @see OpenAI::Models::FineTuning::JobCreateParams::Integration#wandb class Wandb < OpenAI::Internal::Type::BaseModel @@ -278,15 +306,25 @@ class Wandb < OpenAI::Internal::Type::BaseModel optional :tags, OpenAI::Internal::Type::ArrayOf[String] # @!method initialize(project:, entity: nil, name: nil, tags: nil) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::FineTuning::JobCreateParams::Integration::Wandb} for more + # details. + # # The settings for your integration with Weights and Biases. This payload # specifies the project that metrics will be sent to. Optionally, you can set an # explicit display name for your run, add tags to your run, and set a default # entity (team, username, etc) to be associated with your run. # - # @param project [String] - # @param entity [String, nil] - # @param name [String, nil] - # @param tags [Array] + # @param project [String] The name of the project that the new run will be created under. ... + # + # @param entity [String, nil] The entity to use for the run. This allows you to set the team or username of th + # ... + # + # @param name [String, nil] A display name to set for the run. If not set, we will use the Job ID as the nam + # ... + # + # @param tags [Array] A list of tags to be attached to the newly created run. These tags are passed th + # ... end end @@ -312,9 +350,11 @@ class Method < OpenAI::Internal::Type::BaseModel # @!method initialize(dpo: nil, supervised: nil, type: nil) # The method used for fine-tuning. # - # @param dpo [OpenAI::Models::FineTuning::JobCreateParams::Method::Dpo] - # @param supervised [OpenAI::Models::FineTuning::JobCreateParams::Method::Supervised] - # @param type [Symbol, OpenAI::Models::FineTuning::JobCreateParams::Method::Type] + # @param dpo [OpenAI::Models::FineTuning::JobCreateParams::Method::Dpo] Configuration for the DPO fine-tuning method. + # + # @param supervised [OpenAI::Models::FineTuning::JobCreateParams::Method::Supervised] Configuration for the supervised fine-tuning method. + # + # @param type [Symbol, OpenAI::Models::FineTuning::JobCreateParams::Method::Type] The type of method. Is either `supervised` or `dpo`. # @see OpenAI::Models::FineTuning::JobCreateParams::Method#dpo class Dpo < OpenAI::Internal::Type::BaseModel @@ -328,7 +368,7 @@ class Dpo < OpenAI::Internal::Type::BaseModel # @!method initialize(hyperparameters: nil) # Configuration for the DPO fine-tuning method. # - # @param hyperparameters [OpenAI::Models::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters] + # @param hyperparameters [OpenAI::Models::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters] The hyperparameters used for the fine-tuning job. # @see OpenAI::Models::FineTuning::JobCreateParams::Method::Dpo#hyperparameters class Hyperparameters < OpenAI::Internal::Type::BaseModel @@ -365,12 +405,23 @@ class Hyperparameters < OpenAI::Internal::Type::BaseModel union: -> { OpenAI::Models::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters::NEpochs } # @!method initialize(batch_size: nil, beta: nil, learning_rate_multiplier: nil, n_epochs: nil) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters} for + # more details. + # # The hyperparameters used for the fine-tuning job. # - # @param batch_size [Symbol, :auto, Integer] - # @param beta [Symbol, :auto, Float] - # @param learning_rate_multiplier [Symbol, :auto, Float] - # @param n_epochs [Symbol, :auto, Integer] + # @param batch_size [Symbol, :auto, Integer] Number of examples in each batch. A larger batch size means that model parameter + # ... + # + # @param beta [Symbol, :auto, Float] The beta value for the DPO method. A higher beta value will increase the weight + # ... + # + # @param learning_rate_multiplier [Symbol, :auto, Float] Scaling factor for the learning rate. A smaller learning rate may be useful to a + # ... + # + # @param n_epochs [Symbol, :auto, Integer] The number of epochs to train the model for. An epoch refers to one full cycle t + # ... # Number of examples in each batch. A larger batch size means that model # parameters are updated less frequently, but with lower variance. @@ -446,7 +497,7 @@ class Supervised < OpenAI::Internal::Type::BaseModel # @!method initialize(hyperparameters: nil) # Configuration for the supervised fine-tuning method. # - # @param hyperparameters [OpenAI::Models::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters] + # @param hyperparameters [OpenAI::Models::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters] The hyperparameters used for the fine-tuning job. # @see OpenAI::Models::FineTuning::JobCreateParams::Method::Supervised#hyperparameters class Hyperparameters < OpenAI::Internal::Type::BaseModel @@ -475,11 +526,20 @@ class Hyperparameters < OpenAI::Internal::Type::BaseModel union: -> { OpenAI::Models::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters::NEpochs } # @!method initialize(batch_size: nil, learning_rate_multiplier: nil, n_epochs: nil) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters} + # for more details. + # # The hyperparameters used for the fine-tuning job. # - # @param batch_size [Symbol, :auto, Integer] - # @param learning_rate_multiplier [Symbol, :auto, Float] - # @param n_epochs [Symbol, :auto, Integer] + # @param batch_size [Symbol, :auto, Integer] Number of examples in each batch. A larger batch size means that model parameter + # ... + # + # @param learning_rate_multiplier [Symbol, :auto, Float] Scaling factor for the learning rate. A smaller learning rate may be useful to a + # ... + # + # @param n_epochs [Symbol, :auto, Integer] The number of epochs to train the model for. An epoch refers to one full cycle t + # ... # Number of examples in each batch. A larger batch size means that model # parameters are updated less frequently, but with lower variance. diff --git a/lib/openai/models/fine_tuning/job_list_events_params.rb b/lib/openai/models/fine_tuning/job_list_events_params.rb index b745c87b..1e911e0f 100644 --- a/lib/openai/models/fine_tuning/job_list_events_params.rb +++ b/lib/openai/models/fine_tuning/job_list_events_params.rb @@ -21,8 +21,10 @@ class JobListEventsParams < OpenAI::Internal::Type::BaseModel optional :limit, Integer # @!method initialize(after: nil, limit: nil, request_options: {}) - # @param after [String] - # @param limit [Integer] + # @param after [String] Identifier for the last event from the previous pagination request. + # + # @param limit [Integer] Number of events to retrieve. + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] end end diff --git a/lib/openai/models/fine_tuning/job_list_params.rb b/lib/openai/models/fine_tuning/job_list_params.rb index ddd836ef..da7349d7 100644 --- a/lib/openai/models/fine_tuning/job_list_params.rb +++ b/lib/openai/models/fine_tuning/job_list_params.rb @@ -28,9 +28,16 @@ class JobListParams < OpenAI::Internal::Type::BaseModel optional :metadata, OpenAI::Internal::Type::HashOf[String], nil?: true # @!method initialize(after: nil, limit: nil, metadata: nil, request_options: {}) - # @param after [String] - # @param limit [Integer] - # @param metadata [Hash{Symbol=>String}, nil] + # Some parameter documentations has been truncated, see + # {OpenAI::Models::FineTuning::JobListParams} for more details. + # + # @param after [String] Identifier for the last job from the previous pagination request. + # + # @param limit [Integer] Number of fine-tuning jobs to retrieve. + # + # @param metadata [Hash{Symbol=>String}, nil] Optional metadata filter. To filter, use the syntax `metadata[k]=v`. Alternative + # ... + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] end end diff --git a/lib/openai/models/fine_tuning/jobs/checkpoint_list_params.rb b/lib/openai/models/fine_tuning/jobs/checkpoint_list_params.rb index afa0afa4..024df578 100644 --- a/lib/openai/models/fine_tuning/jobs/checkpoint_list_params.rb +++ b/lib/openai/models/fine_tuning/jobs/checkpoint_list_params.rb @@ -22,8 +22,10 @@ class CheckpointListParams < OpenAI::Internal::Type::BaseModel optional :limit, Integer # @!method initialize(after: nil, limit: nil, request_options: {}) - # @param after [String] - # @param limit [Integer] + # @param after [String] Identifier for the last checkpoint ID from the previous pagination request. + # + # @param limit [Integer] Number of checkpoints to retrieve. + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] end end diff --git a/lib/openai/models/fine_tuning/jobs/fine_tuning_job_checkpoint.rb b/lib/openai/models/fine_tuning/jobs/fine_tuning_job_checkpoint.rb index 05325975..230c5e4d 100644 --- a/lib/openai/models/fine_tuning/jobs/fine_tuning_job_checkpoint.rb +++ b/lib/openai/models/fine_tuning/jobs/fine_tuning_job_checkpoint.rb @@ -52,13 +52,19 @@ class FineTuningJobCheckpoint < OpenAI::Internal::Type::BaseModel # The `fine_tuning.job.checkpoint` object represents a model checkpoint for a # fine-tuning job that is ready to use. # - # @param id [String] - # @param created_at [Integer] - # @param fine_tuned_model_checkpoint [String] - # @param fine_tuning_job_id [String] - # @param metrics [OpenAI::Models::FineTuning::Jobs::FineTuningJobCheckpoint::Metrics] - # @param step_number [Integer] - # @param object [Symbol, :"fine_tuning.job.checkpoint"] + # @param id [String] The checkpoint identifier, which can be referenced in the API endpoints. + # + # @param created_at [Integer] The Unix timestamp (in seconds) for when the checkpoint was created. + # + # @param fine_tuned_model_checkpoint [String] The name of the fine-tuned checkpoint model that is created. + # + # @param fine_tuning_job_id [String] The name of the fine-tuning job that this checkpoint was created from. + # + # @param metrics [OpenAI::Models::FineTuning::Jobs::FineTuningJobCheckpoint::Metrics] Metrics at the step number during the fine-tuning job. + # + # @param step_number [Integer] The step number that the checkpoint was created at. + # + # @param object [Symbol, :"fine_tuning.job.checkpoint"] The object type, which is always "fine_tuning.job.checkpoint". # @see OpenAI::Models::FineTuning::Jobs::FineTuningJobCheckpoint#metrics class Metrics < OpenAI::Internal::Type::BaseModel diff --git a/lib/openai/models/function_definition.rb b/lib/openai/models/function_definition.rb index ac6820db..26ca81c0 100644 --- a/lib/openai/models/function_definition.rb +++ b/lib/openai/models/function_definition.rb @@ -40,10 +40,20 @@ class FunctionDefinition < OpenAI::Internal::Type::BaseModel optional :strict, OpenAI::Internal::Type::Boolean, nil?: true # @!method initialize(name:, description: nil, parameters: nil, strict: nil) - # @param name [String] - # @param description [String] - # @param parameters [Hash{Symbol=>Object}] - # @param strict [Boolean, nil] + # Some parameter documentations has been truncated, see + # {OpenAI::Models::FunctionDefinition} for more details. + # + # @param name [String] The name of the function to be called. Must be a-z, A-Z, 0-9, or contain undersc + # ... + # + # @param description [String] A description of what the function does, used by the model to choose when and ho + # ... + # + # @param parameters [Hash{Symbol=>Object}] The parameters the functions accepts, described as a JSON Schema object. See the + # ... + # + # @param strict [Boolean, nil] Whether to enable strict schema adherence when generating the function call. If + # ... end end end diff --git a/lib/openai/models/image.rb b/lib/openai/models/image.rb index 52ace3e6..b392c0c4 100644 --- a/lib/openai/models/image.rb +++ b/lib/openai/models/image.rb @@ -26,11 +26,18 @@ class Image < OpenAI::Internal::Type::BaseModel optional :url, String # @!method initialize(b64_json: nil, revised_prompt: nil, url: nil) + # Some parameter documentations has been truncated, see {OpenAI::Models::Image} + # for more details. + # # Represents the content or the URL of an image generated by the OpenAI API. # - # @param b64_json [String] - # @param revised_prompt [String] - # @param url [String] + # @param b64_json [String] The base64-encoded JSON of the generated image. Default value for `gpt-image-1`, + # ... + # + # @param revised_prompt [String] For `dall-e-3` only, the revised prompt that was used to generate the image. + # + # @param url [String] When using `dall-e-2` or `dall-e-3`, the URL of the generated image if `response + # ... end end end diff --git a/lib/openai/models/image_create_variation_params.rb b/lib/openai/models/image_create_variation_params.rb index 4a665cb8..d3b45a32 100644 --- a/lib/openai/models/image_create_variation_params.rb +++ b/lib/openai/models/image_create_variation_params.rb @@ -53,12 +53,26 @@ class ImageCreateVariationParams < OpenAI::Internal::Type::BaseModel optional :user, String # @!method initialize(image:, model: nil, n: nil, response_format: nil, size: nil, user: nil, request_options: {}) - # @param image [Pathname, StringIO] - # @param model [String, Symbol, OpenAI::Models::ImageModel, nil] - # @param n [Integer, nil] - # @param response_format [Symbol, OpenAI::Models::ImageCreateVariationParams::ResponseFormat, nil] - # @param size [Symbol, OpenAI::Models::ImageCreateVariationParams::Size, nil] - # @param user [String] + # Some parameter documentations has been truncated, see + # {OpenAI::Models::ImageCreateVariationParams} for more details. + # + # @param image [Pathname, StringIO] The image to use as the basis for the variation(s). Must be a valid PNG file, le + # ... + # + # @param model [String, Symbol, OpenAI::Models::ImageModel, nil] The model to use for image generation. Only `dall-e-2` is supported at this time + # ... + # + # @param n [Integer, nil] The number of images to generate. Must be between 1 and 10. + # + # @param response_format [Symbol, OpenAI::Models::ImageCreateVariationParams::ResponseFormat, nil] The format in which the generated images are returned. Must be one of `url` or ` + # ... + # + # @param size [Symbol, OpenAI::Models::ImageCreateVariationParams::Size, nil] The size of the generated images. Must be one of `256x256`, `512x512`, or `1024x + # ... + # + # @param user [String] A unique identifier representing your end-user, which can help OpenAI to monitor + # ... + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] # The model to use for image generation. Only `dall-e-2` is supported at this diff --git a/lib/openai/models/image_edit_params.rb b/lib/openai/models/image_edit_params.rb index 7abf3372..45591d12 100644 --- a/lib/openai/models/image_edit_params.rb +++ b/lib/openai/models/image_edit_params.rb @@ -80,15 +80,35 @@ class ImageEditParams < OpenAI::Internal::Type::BaseModel optional :user, String # @!method initialize(image:, prompt:, mask: nil, model: nil, n: nil, quality: nil, response_format: nil, size: nil, user: nil, request_options: {}) - # @param image [Pathname, StringIO, Array] - # @param prompt [String] - # @param mask [Pathname, StringIO] - # @param model [String, Symbol, OpenAI::Models::ImageModel, nil] - # @param n [Integer, nil] - # @param quality [Symbol, OpenAI::Models::ImageEditParams::Quality, nil] - # @param response_format [Symbol, OpenAI::Models::ImageEditParams::ResponseFormat, nil] - # @param size [Symbol, OpenAI::Models::ImageEditParams::Size, nil] - # @param user [String] + # Some parameter documentations has been truncated, see + # {OpenAI::Models::ImageEditParams} for more details. + # + # @param image [Pathname, StringIO, Array] The image(s) to edit. Must be a supported image file or an array of images. For + # ... + # + # @param prompt [String] A text description of the desired image(s). The maximum length is 1000 character + # ... + # + # @param mask [Pathname, StringIO] An additional image whose fully transparent areas (e.g. where alpha is zero) ind + # ... + # + # @param model [String, Symbol, OpenAI::Models::ImageModel, nil] The model to use for image generation. Only `dall-e-2` and `gpt-image-1` are sup + # ... + # + # @param n [Integer, nil] The number of images to generate. Must be between 1 and 10. + # + # @param quality [Symbol, OpenAI::Models::ImageEditParams::Quality, nil] The quality of the image that will be generated. `high`, `medium` and `low` are + # ... + # + # @param response_format [Symbol, OpenAI::Models::ImageEditParams::ResponseFormat, nil] The format in which the generated images are returned. Must be one of `url` or ` + # ... + # + # @param size [Symbol, OpenAI::Models::ImageEditParams::Size, nil] The size of the generated images. Must be one of `1024x1024`, `1536x1024` (lands + # ... + # + # @param user [String] A unique identifier representing your end-user, which can help OpenAI to monitor + # ... + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] # The image(s) to edit. Must be a supported image file or an array of images. For diff --git a/lib/openai/models/image_generate_params.rb b/lib/openai/models/image_generate_params.rb index 56986585..0c7fd7f8 100644 --- a/lib/openai/models/image_generate_params.rb +++ b/lib/openai/models/image_generate_params.rb @@ -112,18 +112,43 @@ class ImageGenerateParams < OpenAI::Internal::Type::BaseModel optional :user, String # @!method initialize(prompt:, background: nil, model: nil, moderation: nil, n: nil, output_compression: nil, output_format: nil, quality: nil, response_format: nil, size: nil, style: nil, user: nil, request_options: {}) - # @param prompt [String] - # @param background [Symbol, OpenAI::Models::ImageGenerateParams::Background, nil] - # @param model [String, Symbol, OpenAI::Models::ImageModel, nil] - # @param moderation [Symbol, OpenAI::Models::ImageGenerateParams::Moderation, nil] - # @param n [Integer, nil] - # @param output_compression [Integer, nil] - # @param output_format [Symbol, OpenAI::Models::ImageGenerateParams::OutputFormat, nil] - # @param quality [Symbol, OpenAI::Models::ImageGenerateParams::Quality, nil] - # @param response_format [Symbol, OpenAI::Models::ImageGenerateParams::ResponseFormat, nil] - # @param size [Symbol, OpenAI::Models::ImageGenerateParams::Size, nil] - # @param style [Symbol, OpenAI::Models::ImageGenerateParams::Style, nil] - # @param user [String] + # Some parameter documentations has been truncated, see + # {OpenAI::Models::ImageGenerateParams} for more details. + # + # @param prompt [String] A text description of the desired image(s). The maximum length is 32000 characte + # ... + # + # @param background [Symbol, OpenAI::Models::ImageGenerateParams::Background, nil] Allows to set transparency for the background of the generated image(s). ... + # + # @param model [String, Symbol, OpenAI::Models::ImageModel, nil] The model to use for image generation. One of `dall-e-2`, `dall-e-3`, or `gpt-im + # ... + # + # @param moderation [Symbol, OpenAI::Models::ImageGenerateParams::Moderation, nil] Control the content-moderation level for images generated by `gpt-image-1`. Must + # ... + # + # @param n [Integer, nil] The number of images to generate. Must be between 1 and 10. For `dall-e-3`, only + # ... + # + # @param output_compression [Integer, nil] The compression level (0-100%) for the generated images. This parameter is only + # ... + # + # @param output_format [Symbol, OpenAI::Models::ImageGenerateParams::OutputFormat, nil] The format in which the generated images are returned. This parameter is only su + # ... + # + # @param quality [Symbol, OpenAI::Models::ImageGenerateParams::Quality, nil] The quality of the image that will be generated. ... + # + # @param response_format [Symbol, OpenAI::Models::ImageGenerateParams::ResponseFormat, nil] The format in which generated images with `dall-e-2` and `dall-e-3` are returned + # ... + # + # @param size [Symbol, OpenAI::Models::ImageGenerateParams::Size, nil] The size of the generated images. Must be one of `1024x1024`, `1536x1024` (lands + # ... + # + # @param style [Symbol, OpenAI::Models::ImageGenerateParams::Style, nil] The style of the generated images. This parameter is only supported for `dall-e- + # ... + # + # @param user [String] A unique identifier representing your end-user, which can help OpenAI to monitor + # ... + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] # Allows to set transparency for the background of the generated image(s). This diff --git a/lib/openai/models/images_response.rb b/lib/openai/models/images_response.rb index 90c77f01..aa3ede9f 100644 --- a/lib/openai/models/images_response.rb +++ b/lib/openai/models/images_response.rb @@ -23,11 +23,17 @@ class ImagesResponse < OpenAI::Internal::Type::BaseModel optional :usage, -> { OpenAI::Models::ImagesResponse::Usage } # @!method initialize(created:, data: nil, usage: nil) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::ImagesResponse} for more details. + # # The response from the image generation endpoint. # - # @param created [Integer] - # @param data [Array] - # @param usage [OpenAI::Models::ImagesResponse::Usage] + # @param created [Integer] The Unix timestamp (in seconds) of when the image was created. + # + # @param data [Array] The list of generated images. + # + # @param usage [OpenAI::Models::ImagesResponse::Usage] For `gpt-image-1` only, the token usage information for the image generation. + # ... # @see OpenAI::Models::ImagesResponse#usage class Usage < OpenAI::Internal::Type::BaseModel @@ -58,10 +64,13 @@ class Usage < OpenAI::Internal::Type::BaseModel # @!method initialize(input_tokens:, input_tokens_details:, output_tokens:, total_tokens:) # For `gpt-image-1` only, the token usage information for the image generation. # - # @param input_tokens [Integer] - # @param input_tokens_details [OpenAI::Models::ImagesResponse::Usage::InputTokensDetails] - # @param output_tokens [Integer] - # @param total_tokens [Integer] + # @param input_tokens [Integer] The number of tokens (images and text) in the input prompt. + # + # @param input_tokens_details [OpenAI::Models::ImagesResponse::Usage::InputTokensDetails] The input tokens detailed information for the image generation. + # + # @param output_tokens [Integer] The number of image tokens in the output image. + # + # @param total_tokens [Integer] The total number of tokens (images and text) used for the image generation. # @see OpenAI::Models::ImagesResponse::Usage#input_tokens_details class InputTokensDetails < OpenAI::Internal::Type::BaseModel @@ -80,8 +89,9 @@ class InputTokensDetails < OpenAI::Internal::Type::BaseModel # @!method initialize(image_tokens:, text_tokens:) # The input tokens detailed information for the image generation. # - # @param image_tokens [Integer] - # @param text_tokens [Integer] + # @param image_tokens [Integer] The number of image tokens in the input prompt. + # + # @param text_tokens [Integer] The number of text tokens in the input prompt. end end end diff --git a/lib/openai/models/model.rb b/lib/openai/models/model.rb index e5893b7c..06721bf5 100644 --- a/lib/openai/models/model.rb +++ b/lib/openai/models/model.rb @@ -31,10 +31,13 @@ class Model < OpenAI::Internal::Type::BaseModel # @!method initialize(id:, created:, owned_by:, object: :model) # Describes an OpenAI model offering that can be used with the API. # - # @param id [String] - # @param created [Integer] - # @param owned_by [String] - # @param object [Symbol, :model] + # @param id [String] The model identifier, which can be referenced in the API endpoints. + # + # @param created [Integer] The Unix timestamp (in seconds) when the model was created. + # + # @param owned_by [String] The organization that owns the model. + # + # @param object [Symbol, :model] The object type, which is always "model". end end end diff --git a/lib/openai/models/moderation.rb b/lib/openai/models/moderation.rb index 834ced17..e53c66fe 100644 --- a/lib/openai/models/moderation.rb +++ b/lib/openai/models/moderation.rb @@ -28,10 +28,17 @@ class Moderation < OpenAI::Internal::Type::BaseModel required :flagged, OpenAI::Internal::Type::Boolean # @!method initialize(categories:, category_applied_input_types:, category_scores:, flagged:) - # @param categories [OpenAI::Models::Moderation::Categories] - # @param category_applied_input_types [OpenAI::Models::Moderation::CategoryAppliedInputTypes] - # @param category_scores [OpenAI::Models::Moderation::CategoryScores] - # @param flagged [Boolean] + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Moderation} for more details. + # + # @param categories [OpenAI::Models::Moderation::Categories] A list of the categories, and whether they are flagged or not. + # + # @param category_applied_input_types [OpenAI::Models::Moderation::CategoryAppliedInputTypes] A list of the categories along with the input type(s) that the score applies to. + # ... + # + # @param category_scores [OpenAI::Models::Moderation::CategoryScores] A list of the categories along with their scores as predicted by model. + # + # @param flagged [Boolean] Whether any of the below categories are flagged. # @see OpenAI::Models::Moderation#categories class Categories < OpenAI::Internal::Type::BaseModel @@ -131,21 +138,46 @@ class Categories < OpenAI::Internal::Type::BaseModel required :violence_graphic, OpenAI::Internal::Type::Boolean, api_name: :"violence/graphic" # @!method initialize(harassment:, harassment_threatening:, hate:, hate_threatening:, illicit:, illicit_violent:, self_harm:, self_harm_instructions:, self_harm_intent:, sexual:, sexual_minors:, violence:, violence_graphic:) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Moderation::Categories} for more details. + # # A list of the categories, and whether they are flagged or not. # - # @param harassment [Boolean] - # @param harassment_threatening [Boolean] - # @param hate [Boolean] - # @param hate_threatening [Boolean] - # @param illicit [Boolean, nil] - # @param illicit_violent [Boolean, nil] - # @param self_harm [Boolean] - # @param self_harm_instructions [Boolean] - # @param self_harm_intent [Boolean] - # @param sexual [Boolean] - # @param sexual_minors [Boolean] - # @param violence [Boolean] - # @param violence_graphic [Boolean] + # @param harassment [Boolean] Content that expresses, incites, or promotes harassing language towards any targ + # ... + # + # @param harassment_threatening [Boolean] Harassment content that also includes violence or serious harm towards any targe + # ... + # + # @param hate [Boolean] Content that expresses, incites, or promotes hate based on race, gender, ethnici + # ... + # + # @param hate_threatening [Boolean] Hateful content that also includes violence or serious harm towards the targeted + # ... + # + # @param illicit [Boolean, nil] Content that includes instructions or advice that facilitate the planning or exe + # ... + # + # @param illicit_violent [Boolean, nil] Content that includes instructions or advice that facilitate the planning or exe + # ... + # + # @param self_harm [Boolean] Content that promotes, encourages, or depicts acts of self-harm, such as suicide + # ... + # + # @param self_harm_instructions [Boolean] Content that encourages performing acts of self-harm, such as suicide, cutting, + # ... + # + # @param self_harm_intent [Boolean] Content where the speaker expresses that they are engaging or intend to engage i + # ... + # + # @param sexual [Boolean] Content meant to arouse sexual excitement, such as the description of sexual act + # ... + # + # @param sexual_minors [Boolean] Sexual content that includes an individual who is under 18 years old. + # + # @param violence [Boolean] Content that depicts death, violence, or physical injury. + # + # @param violence_graphic [Boolean] Content that depicts death, violence, or physical injury in graphic detail. end # @see OpenAI::Models::Moderation#category_applied_input_types @@ -252,19 +284,31 @@ class CategoryAppliedInputTypes < OpenAI::Internal::Type::BaseModel # @!method initialize(harassment:, harassment_threatening:, hate:, hate_threatening:, illicit:, illicit_violent:, self_harm:, self_harm_instructions:, self_harm_intent:, sexual:, sexual_minors:, violence:, violence_graphic:) # A list of the categories along with the input type(s) that the score applies to. # - # @param harassment [Array] - # @param harassment_threatening [Array] - # @param hate [Array] - # @param hate_threatening [Array] - # @param illicit [Array] - # @param illicit_violent [Array] - # @param self_harm [Array] - # @param self_harm_instructions [Array] - # @param self_harm_intent [Array] - # @param sexual [Array] - # @param sexual_minors [Array] - # @param violence [Array] - # @param violence_graphic [Array] + # @param harassment [Array] The applied input type(s) for the category 'harassment'. + # + # @param harassment_threatening [Array] The applied input type(s) for the category 'harassment/threatening'. + # + # @param hate [Array] The applied input type(s) for the category 'hate'. + # + # @param hate_threatening [Array] The applied input type(s) for the category 'hate/threatening'. + # + # @param illicit [Array] The applied input type(s) for the category 'illicit'. + # + # @param illicit_violent [Array] The applied input type(s) for the category 'illicit/violent'. + # + # @param self_harm [Array] The applied input type(s) for the category 'self-harm'. + # + # @param self_harm_instructions [Array] The applied input type(s) for the category 'self-harm/instructions'. + # + # @param self_harm_intent [Array] The applied input type(s) for the category 'self-harm/intent'. + # + # @param sexual [Array] The applied input type(s) for the category 'sexual'. + # + # @param sexual_minors [Array] The applied input type(s) for the category 'sexual/minors'. + # + # @param violence [Array] The applied input type(s) for the category 'violence'. + # + # @param violence_graphic [Array] The applied input type(s) for the category 'violence/graphic'. module Harassment extend OpenAI::Internal::Type::Enum @@ -473,19 +517,31 @@ class CategoryScores < OpenAI::Internal::Type::BaseModel # @!method initialize(harassment:, harassment_threatening:, hate:, hate_threatening:, illicit:, illicit_violent:, self_harm:, self_harm_instructions:, self_harm_intent:, sexual:, sexual_minors:, violence:, violence_graphic:) # A list of the categories along with their scores as predicted by model. # - # @param harassment [Float] - # @param harassment_threatening [Float] - # @param hate [Float] - # @param hate_threatening [Float] - # @param illicit [Float] - # @param illicit_violent [Float] - # @param self_harm [Float] - # @param self_harm_instructions [Float] - # @param self_harm_intent [Float] - # @param sexual [Float] - # @param sexual_minors [Float] - # @param violence [Float] - # @param violence_graphic [Float] + # @param harassment [Float] The score for the category 'harassment'. + # + # @param harassment_threatening [Float] The score for the category 'harassment/threatening'. + # + # @param hate [Float] The score for the category 'hate'. + # + # @param hate_threatening [Float] The score for the category 'hate/threatening'. + # + # @param illicit [Float] The score for the category 'illicit'. + # + # @param illicit_violent [Float] The score for the category 'illicit/violent'. + # + # @param self_harm [Float] The score for the category 'self-harm'. + # + # @param self_harm_instructions [Float] The score for the category 'self-harm/instructions'. + # + # @param self_harm_intent [Float] The score for the category 'self-harm/intent'. + # + # @param sexual [Float] The score for the category 'sexual'. + # + # @param sexual_minors [Float] The score for the category 'sexual/minors'. + # + # @param violence [Float] The score for the category 'violence'. + # + # @param violence_graphic [Float] The score for the category 'violence/graphic'. end end end diff --git a/lib/openai/models/moderation_create_params.rb b/lib/openai/models/moderation_create_params.rb index 85c8aa74..b6231c78 100644 --- a/lib/openai/models/moderation_create_params.rb +++ b/lib/openai/models/moderation_create_params.rb @@ -24,8 +24,14 @@ class ModerationCreateParams < OpenAI::Internal::Type::BaseModel optional :model, union: -> { OpenAI::Models::ModerationCreateParams::Model } # @!method initialize(input:, model: nil, request_options: {}) - # @param input [String, Array, Array] - # @param model [String, Symbol, OpenAI::Models::ModerationModel] + # Some parameter documentations has been truncated, see + # {OpenAI::Models::ModerationCreateParams} for more details. + # + # @param input [String, Array, Array] Input (or inputs) to classify. Can be a single string, an array of strings, or + # ... + # + # @param model [String, Symbol, OpenAI::Models::ModerationModel] The content moderation model you would like to use. Learn more in ... + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] # Input (or inputs) to classify. Can be a single string, an array of strings, or diff --git a/lib/openai/models/moderation_create_response.rb b/lib/openai/models/moderation_create_response.rb index 45575319..18ff1405 100644 --- a/lib/openai/models/moderation_create_response.rb +++ b/lib/openai/models/moderation_create_response.rb @@ -25,9 +25,11 @@ class ModerationCreateResponse < OpenAI::Internal::Type::BaseModel # @!method initialize(id:, model:, results:) # Represents if a given text input is potentially harmful. # - # @param id [String] - # @param model [String] - # @param results [Array] + # @param id [String] The unique identifier for the moderation request. + # + # @param model [String] The model used to generate the moderation results. + # + # @param results [Array] A list of moderation objects. end end end diff --git a/lib/openai/models/moderation_image_url_input.rb b/lib/openai/models/moderation_image_url_input.rb index f9fbd274..ac2342f8 100644 --- a/lib/openai/models/moderation_image_url_input.rb +++ b/lib/openai/models/moderation_image_url_input.rb @@ -18,8 +18,9 @@ class ModerationImageURLInput < OpenAI::Internal::Type::BaseModel # @!method initialize(image_url:, type: :image_url) # An object describing an image to classify. # - # @param image_url [OpenAI::Models::ModerationImageURLInput::ImageURL] - # @param type [Symbol, :image_url] + # @param image_url [OpenAI::Models::ModerationImageURLInput::ImageURL] Contains either an image URL or a data URL for a base64 encoded image. + # + # @param type [Symbol, :image_url] Always `image_url`. # @see OpenAI::Models::ModerationImageURLInput#image_url class ImageURL < OpenAI::Internal::Type::BaseModel @@ -32,7 +33,7 @@ class ImageURL < OpenAI::Internal::Type::BaseModel # @!method initialize(url:) # Contains either an image URL or a data URL for a base64 encoded image. # - # @param url [String] + # @param url [String] Either a URL of the image or the base64 encoded image data. end end end diff --git a/lib/openai/models/moderation_text_input.rb b/lib/openai/models/moderation_text_input.rb index 2feaf23d..087178f8 100644 --- a/lib/openai/models/moderation_text_input.rb +++ b/lib/openai/models/moderation_text_input.rb @@ -18,8 +18,9 @@ class ModerationTextInput < OpenAI::Internal::Type::BaseModel # @!method initialize(text:, type: :text) # An object describing text to classify. # - # @param text [String] - # @param type [Symbol, :text] + # @param text [String] A string of text to classify. + # + # @param type [Symbol, :text] Always `text`. end end end diff --git a/lib/openai/models/other_file_chunking_strategy_object.rb b/lib/openai/models/other_file_chunking_strategy_object.rb index 862ae35e..72fc9de8 100644 --- a/lib/openai/models/other_file_chunking_strategy_object.rb +++ b/lib/openai/models/other_file_chunking_strategy_object.rb @@ -14,7 +14,7 @@ class OtherFileChunkingStrategyObject < OpenAI::Internal::Type::BaseModel # because the file was indexed before the `chunking_strategy` concept was # introduced in the API. # - # @param type [Symbol, :other] + # @param type [Symbol, :other] Always `other`. end end end diff --git a/lib/openai/models/reasoning.rb b/lib/openai/models/reasoning.rb index 3457ccea..09690970 100644 --- a/lib/openai/models/reasoning.rb +++ b/lib/openai/models/reasoning.rb @@ -35,14 +35,19 @@ class Reasoning < OpenAI::Internal::Type::BaseModel optional :summary, enum: -> { OpenAI::Models::Reasoning::Summary }, nil?: true # @!method initialize(effort: nil, generate_summary: nil, summary: nil) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Reasoning} for more details. + # # **o-series models only** # # Configuration options for # [reasoning models](https://platform.openai.com/docs/guides/reasoning). # - # @param effort [Symbol, OpenAI::Models::ReasoningEffort, nil] - # @param generate_summary [Symbol, OpenAI::Models::Reasoning::GenerateSummary, nil] - # @param summary [Symbol, OpenAI::Models::Reasoning::Summary, nil] + # @param effort [Symbol, OpenAI::Models::ReasoningEffort, nil] **o-series models only** ... + # + # @param generate_summary [Symbol, OpenAI::Models::Reasoning::GenerateSummary, nil] **Deprecated:** use `summary` instead. ... + # + # @param summary [Symbol, OpenAI::Models::Reasoning::Summary, nil] A summary of the reasoning performed by the model. This can be ... # @deprecated # diff --git a/lib/openai/models/response_format_json_object.rb b/lib/openai/models/response_format_json_object.rb index 52fc23ae..13a620f2 100644 --- a/lib/openai/models/response_format_json_object.rb +++ b/lib/openai/models/response_format_json_object.rb @@ -14,7 +14,7 @@ class ResponseFormatJSONObject < OpenAI::Internal::Type::BaseModel # `json_schema` is recommended for models that support it. Note that the model # will not generate JSON without a system or user message instructing it to do so. # - # @param type [Symbol, :json_object] + # @param type [Symbol, :json_object] The type of response format being defined. Always `json_object`. end end end diff --git a/lib/openai/models/response_format_json_schema.rb b/lib/openai/models/response_format_json_schema.rb index c6b0fdf9..3e78c9ff 100644 --- a/lib/openai/models/response_format_json_schema.rb +++ b/lib/openai/models/response_format_json_schema.rb @@ -16,12 +16,16 @@ class ResponseFormatJSONSchema < OpenAI::Internal::Type::BaseModel required :type, const: :json_schema # @!method initialize(json_schema:, type: :json_schema) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::ResponseFormatJSONSchema} for more details. + # # JSON Schema response format. Used to generate structured JSON responses. Learn # more about # [Structured Outputs](https://platform.openai.com/docs/guides/structured-outputs). # - # @param json_schema [OpenAI::Models::ResponseFormatJSONSchema::JSONSchema] - # @param type [Symbol, :json_schema] + # @param json_schema [OpenAI::Models::ResponseFormatJSONSchema::JSONSchema] Structured Outputs configuration options, including a JSON Schema. ... + # + # @param type [Symbol, :json_schema] The type of response format being defined. Always `json_schema`. # @see OpenAI::Models::ResponseFormatJSONSchema#json_schema class JSONSchema < OpenAI::Internal::Type::BaseModel @@ -57,12 +61,18 @@ class JSONSchema < OpenAI::Internal::Type::BaseModel optional :strict, OpenAI::Internal::Type::Boolean, nil?: true # @!method initialize(name:, description: nil, schema: nil, strict: nil) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::ResponseFormatJSONSchema::JSONSchema} for more details. + # # Structured Outputs configuration options, including a JSON Schema. # - # @param name [String] - # @param description [String] - # @param schema [Hash{Symbol=>Object}] - # @param strict [Boolean, nil] + # @param name [String] The name of the response format. Must be a-z, A-Z, 0-9, or contain ... + # + # @param description [String] A description of what the response format is for, used by the model to ... + # + # @param schema [Hash{Symbol=>Object}] The schema for the response format, described as a JSON Schema object. ... + # + # @param strict [Boolean, nil] Whether to enable strict schema adherence when generating the output. ... end end end diff --git a/lib/openai/models/response_format_text.rb b/lib/openai/models/response_format_text.rb index 8101bcca..a7ac56b0 100644 --- a/lib/openai/models/response_format_text.rb +++ b/lib/openai/models/response_format_text.rb @@ -12,7 +12,7 @@ class ResponseFormatText < OpenAI::Internal::Type::BaseModel # @!method initialize(type: :text) # Default response format. Used to generate text responses. # - # @param type [Symbol, :text] + # @param type [Symbol, :text] The type of response format being defined. Always `text`. end end end diff --git a/lib/openai/models/responses/computer_tool.rb b/lib/openai/models/responses/computer_tool.rb index 41a7499d..29644748 100644 --- a/lib/openai/models/responses/computer_tool.rb +++ b/lib/openai/models/responses/computer_tool.rb @@ -29,13 +29,19 @@ class ComputerTool < OpenAI::Internal::Type::BaseModel required :type, const: :computer_use_preview # @!method initialize(display_height:, display_width:, environment:, type: :computer_use_preview) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Responses::ComputerTool} for more details. + # # A tool that controls a virtual computer. Learn more about the # [computer tool](https://platform.openai.com/docs/guides/tools-computer-use). # - # @param display_height [Float] - # @param display_width [Float] - # @param environment [Symbol, OpenAI::Models::Responses::ComputerTool::Environment] - # @param type [Symbol, :computer_use_preview] + # @param display_height [Float] The height of the computer display. ... + # + # @param display_width [Float] The width of the computer display. ... + # + # @param environment [Symbol, OpenAI::Models::Responses::ComputerTool::Environment] The type of computer environment to control. ... + # + # @param type [Symbol, :computer_use_preview] The type of the computer use tool. Always `computer_use_preview`. ... # The type of computer environment to control. # diff --git a/lib/openai/models/responses/easy_input_message.rb b/lib/openai/models/responses/easy_input_message.rb index 3dc4202e..172802bc 100644 --- a/lib/openai/models/responses/easy_input_message.rb +++ b/lib/openai/models/responses/easy_input_message.rb @@ -25,15 +25,20 @@ class EasyInputMessage < OpenAI::Internal::Type::BaseModel optional :type, enum: -> { OpenAI::Models::Responses::EasyInputMessage::Type } # @!method initialize(content:, role:, type: nil) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Responses::EasyInputMessage} for more details. + # # A message input to the model with a role indicating instruction following # hierarchy. Instructions given with the `developer` or `system` role take # precedence over instructions given with the `user` role. Messages with the # `assistant` role are presumed to have been generated by the model in previous # interactions. # - # @param content [String, Array] - # @param role [Symbol, OpenAI::Models::Responses::EasyInputMessage::Role] - # @param type [Symbol, OpenAI::Models::Responses::EasyInputMessage::Type] + # @param content [String, Array] Text, image, or audio input to the model, used to generate a response. ... + # + # @param role [Symbol, OpenAI::Models::Responses::EasyInputMessage::Role] The role of the message input. One of `user`, `assistant`, `system`, or ... + # + # @param type [Symbol, OpenAI::Models::Responses::EasyInputMessage::Type] The type of the message input. Always `message`. ... # Text, image, or audio input to the model, used to generate a response. Can also # contain previous assistant responses. diff --git a/lib/openai/models/responses/file_search_tool.rb b/lib/openai/models/responses/file_search_tool.rb index 85d13196..bdd10f5f 100644 --- a/lib/openai/models/responses/file_search_tool.rb +++ b/lib/openai/models/responses/file_search_tool.rb @@ -36,15 +36,22 @@ class FileSearchTool < OpenAI::Internal::Type::BaseModel optional :ranking_options, -> { OpenAI::Models::Responses::FileSearchTool::RankingOptions } # @!method initialize(vector_store_ids:, filters: nil, max_num_results: nil, ranking_options: nil, type: :file_search) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Responses::FileSearchTool} for more details. + # # A tool that searches for relevant content from uploaded files. Learn more about # the # [file search tool](https://platform.openai.com/docs/guides/tools-file-search). # - # @param vector_store_ids [Array] - # @param filters [OpenAI::Models::ComparisonFilter, OpenAI::Models::CompoundFilter] - # @param max_num_results [Integer] - # @param ranking_options [OpenAI::Models::Responses::FileSearchTool::RankingOptions] - # @param type [Symbol, :file_search] + # @param vector_store_ids [Array] The IDs of the vector stores to search. ... + # + # @param filters [OpenAI::Models::ComparisonFilter, OpenAI::Models::CompoundFilter] A filter to apply based on file attributes. + # + # @param max_num_results [Integer] The maximum number of results to return. This number should be between 1 ... + # + # @param ranking_options [OpenAI::Models::Responses::FileSearchTool::RankingOptions] Ranking options for search. + # + # @param type [Symbol, :file_search] The type of the file search tool. Always `file_search`. ... # A filter to apply based on file attributes. # @@ -79,10 +86,14 @@ class RankingOptions < OpenAI::Internal::Type::BaseModel optional :score_threshold, Float # @!method initialize(ranker: nil, score_threshold: nil) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Responses::FileSearchTool::RankingOptions} for more details. + # # Ranking options for search. # - # @param ranker [Symbol, OpenAI::Models::Responses::FileSearchTool::RankingOptions::Ranker] - # @param score_threshold [Float] + # @param ranker [Symbol, OpenAI::Models::Responses::FileSearchTool::RankingOptions::Ranker] The ranker to use for the file search. + # + # @param score_threshold [Float] The score threshold for the file search, a number between 0 and 1. ... # The ranker to use for the file search. # diff --git a/lib/openai/models/responses/function_tool.rb b/lib/openai/models/responses/function_tool.rb index d0cf09ab..e74ed4b6 100644 --- a/lib/openai/models/responses/function_tool.rb +++ b/lib/openai/models/responses/function_tool.rb @@ -36,15 +36,22 @@ class FunctionTool < OpenAI::Internal::Type::BaseModel optional :description, String, nil?: true # @!method initialize(name:, parameters:, strict:, description: nil, type: :function) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Responses::FunctionTool} for more details. + # # Defines a function in your own code the model can choose to call. Learn more # about # [function calling](https://platform.openai.com/docs/guides/function-calling). # - # @param name [String] - # @param parameters [Hash{Symbol=>Object}] - # @param strict [Boolean] - # @param description [String, nil] - # @param type [Symbol, :function] + # @param name [String] The name of the function to call. ... + # + # @param parameters [Hash{Symbol=>Object}] A JSON schema object describing the parameters of the function. ... + # + # @param strict [Boolean] Whether to enforce strict parameter validation. Default `true`. ... + # + # @param description [String, nil] A description of the function. Used by the model to determine whether ... + # + # @param type [Symbol, :function] The type of the function tool. Always `function`. ... end end end diff --git a/lib/openai/models/responses/input_item_list_params.rb b/lib/openai/models/responses/input_item_list_params.rb index d34e8dd7..795ddb04 100644 --- a/lib/openai/models/responses/input_item_list_params.rb +++ b/lib/openai/models/responses/input_item_list_params.rb @@ -45,11 +45,19 @@ class InputItemListParams < OpenAI::Internal::Type::BaseModel optional :order, enum: -> { OpenAI::Models::Responses::InputItemListParams::Order } # @!method initialize(after: nil, before: nil, include: nil, limit: nil, order: nil, request_options: {}) - # @param after [String] - # @param before [String] - # @param include [Array] - # @param limit [Integer] - # @param order [Symbol, OpenAI::Models::Responses::InputItemListParams::Order] + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Responses::InputItemListParams} for more details. + # + # @param after [String] An item ID to list items after, used in pagination. ... + # + # @param before [String] An item ID to list items before, used in pagination. ... + # + # @param include [Array] Additional fields to include in the response. See the `include` ... + # + # @param limit [Integer] A limit on the number of objects to be returned. Limit can range between ... + # + # @param order [Symbol, OpenAI::Models::Responses::InputItemListParams::Order] The order to return the input items in. Default is `asc`. ... + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] # The order to return the input items in. Default is `asc`. diff --git a/lib/openai/models/responses/response.rb b/lib/openai/models/responses/response.rb index a51b6317..6adb6175 100644 --- a/lib/openai/models/responses/response.rb +++ b/lib/openai/models/responses/response.rb @@ -226,29 +226,59 @@ class Response < OpenAI::Internal::Type::BaseModel optional :user, String # @!method initialize(id:, created_at:, error:, incomplete_details:, instructions:, metadata:, model:, output:, parallel_tool_calls:, temperature:, tool_choice:, tools:, top_p:, max_output_tokens: nil, previous_response_id: nil, reasoning: nil, service_tier: nil, status: nil, text: nil, truncation: nil, usage: nil, user: nil, object: :response) - # @param id [String] - # @param created_at [Float] - # @param error [OpenAI::Models::Responses::ResponseError, nil] - # @param incomplete_details [OpenAI::Models::Responses::Response::IncompleteDetails, nil] - # @param instructions [String, nil] - # @param metadata [Hash{Symbol=>String}, nil] - # @param model [String, Symbol, OpenAI::Models::ChatModel, OpenAI::Models::ResponsesModel::ResponsesOnlyModel] - # @param output [Array] - # @param parallel_tool_calls [Boolean] - # @param temperature [Float, nil] - # @param tool_choice [Symbol, OpenAI::Models::Responses::ToolChoiceOptions, OpenAI::Models::Responses::ToolChoiceTypes, OpenAI::Models::Responses::ToolChoiceFunction] - # @param tools [Array] - # @param top_p [Float, nil] - # @param max_output_tokens [Integer, nil] - # @param previous_response_id [String, nil] - # @param reasoning [OpenAI::Models::Reasoning, nil] - # @param service_tier [Symbol, OpenAI::Models::Responses::Response::ServiceTier, nil] - # @param status [Symbol, OpenAI::Models::Responses::ResponseStatus] - # @param text [OpenAI::Models::Responses::ResponseTextConfig] - # @param truncation [Symbol, OpenAI::Models::Responses::Response::Truncation, nil] - # @param usage [OpenAI::Models::Responses::ResponseUsage] - # @param user [String] - # @param object [Symbol, :response] + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Responses::Response} for more details. + # + # @param id [String] Unique identifier for this Response. ... + # + # @param created_at [Float] Unix timestamp (in seconds) of when this Response was created. ... + # + # @param error [OpenAI::Models::Responses::ResponseError, nil] An error object returned when the model fails to generate a Response. ... + # + # @param incomplete_details [OpenAI::Models::Responses::Response::IncompleteDetails, nil] Details about why the response is incomplete. ... + # + # @param instructions [String, nil] Inserts a system (or developer) message as the first item in the model's context + # ... + # + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # + # @param model [String, Symbol, OpenAI::Models::ChatModel, OpenAI::Models::ResponsesModel::ResponsesOnlyModel] Model ID used to generate the response, like `gpt-4o` or `o3`. OpenAI ... + # + # @param output [Array] An array of content items generated by the model. ... + # + # @param parallel_tool_calls [Boolean] Whether to allow the model to run tool calls in parallel. ... + # + # @param temperature [Float, nil] What sampling temperature to use, between 0 and 2. Higher values like 0.8 will m + # ... + # + # @param tool_choice [Symbol, OpenAI::Models::Responses::ToolChoiceOptions, OpenAI::Models::Responses::ToolChoiceTypes, OpenAI::Models::Responses::ToolChoiceFunction] How the model should select which tool (or tools) to use when generating ... + # + # @param tools [Array] An array of tools the model may call while generating a response. You ... + # + # @param top_p [Float, nil] An alternative to sampling with temperature, called nucleus sampling, ... + # + # @param max_output_tokens [Integer, nil] An upper bound for the number of tokens that can be generated for a response, in + # ... + # + # @param previous_response_id [String, nil] The unique ID of the previous response to the model. Use this to ... + # + # @param reasoning [OpenAI::Models::Reasoning, nil] **o-series models only** ... + # + # @param service_tier [Symbol, OpenAI::Models::Responses::Response::ServiceTier, nil] Specifies the latency tier to use for processing the request. This parameter is + # ... + # + # @param status [Symbol, OpenAI::Models::Responses::ResponseStatus] The status of the response generation. One of `completed`, `failed`, ... + # + # @param text [OpenAI::Models::Responses::ResponseTextConfig] Configuration options for a text response from the model. Can be plain ... + # + # @param truncation [Symbol, OpenAI::Models::Responses::Response::Truncation, nil] The truncation strategy to use for the model response. ... + # + # @param usage [OpenAI::Models::Responses::ResponseUsage] Represents token usage details including input tokens, output tokens, ... + # + # @param user [String] A unique identifier representing your end-user, which can help OpenAI to monitor + # ... + # + # @param object [Symbol, :response] The object type of this resource - always set to `response`. ... # @see OpenAI::Models::Responses::Response#incomplete_details class IncompleteDetails < OpenAI::Internal::Type::BaseModel @@ -261,7 +291,7 @@ class IncompleteDetails < OpenAI::Internal::Type::BaseModel # @!method initialize(reason: nil) # Details about why the response is incomplete. # - # @param reason [Symbol, OpenAI::Models::Responses::Response::IncompleteDetails::Reason] + # @param reason [Symbol, OpenAI::Models::Responses::Response::IncompleteDetails::Reason] The reason why the response is incomplete. # The reason why the response is incomplete. # diff --git a/lib/openai/models/responses/response_audio_delta_event.rb b/lib/openai/models/responses/response_audio_delta_event.rb index 45ede8ad..2a0394f8 100644 --- a/lib/openai/models/responses/response_audio_delta_event.rb +++ b/lib/openai/models/responses/response_audio_delta_event.rb @@ -17,10 +17,14 @@ class ResponseAudioDeltaEvent < OpenAI::Internal::Type::BaseModel required :type, const: :"response.audio.delta" # @!method initialize(delta:, type: :"response.audio.delta") + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Responses::ResponseAudioDeltaEvent} for more details. + # # Emitted when there is a partial audio response. # - # @param delta [String] - # @param type [Symbol, :"response.audio.delta"] + # @param delta [String] A chunk of Base64 encoded response audio bytes. ... + # + # @param type [Symbol, :"response.audio.delta"] The type of the event. Always `response.audio.delta`. ... end end end diff --git a/lib/openai/models/responses/response_audio_done_event.rb b/lib/openai/models/responses/response_audio_done_event.rb index 359f11b3..218e6146 100644 --- a/lib/openai/models/responses/response_audio_done_event.rb +++ b/lib/openai/models/responses/response_audio_done_event.rb @@ -11,9 +11,12 @@ class ResponseAudioDoneEvent < OpenAI::Internal::Type::BaseModel required :type, const: :"response.audio.done" # @!method initialize(type: :"response.audio.done") + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Responses::ResponseAudioDoneEvent} for more details. + # # Emitted when the audio response is complete. # - # @param type [Symbol, :"response.audio.done"] + # @param type [Symbol, :"response.audio.done"] The type of the event. Always `response.audio.done`. ... end end end diff --git a/lib/openai/models/responses/response_audio_transcript_delta_event.rb b/lib/openai/models/responses/response_audio_transcript_delta_event.rb index 48f70a9d..31a92552 100644 --- a/lib/openai/models/responses/response_audio_transcript_delta_event.rb +++ b/lib/openai/models/responses/response_audio_transcript_delta_event.rb @@ -17,10 +17,14 @@ class ResponseAudioTranscriptDeltaEvent < OpenAI::Internal::Type::BaseModel required :type, const: :"response.audio.transcript.delta" # @!method initialize(delta:, type: :"response.audio.transcript.delta") + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Responses::ResponseAudioTranscriptDeltaEvent} for more details. + # # Emitted when there is a partial transcript of audio. # - # @param delta [String] - # @param type [Symbol, :"response.audio.transcript.delta"] + # @param delta [String] The partial transcript of the audio response. ... + # + # @param type [Symbol, :"response.audio.transcript.delta"] The type of the event. Always `response.audio.transcript.delta`. ... end end end diff --git a/lib/openai/models/responses/response_audio_transcript_done_event.rb b/lib/openai/models/responses/response_audio_transcript_done_event.rb index 5abf997b..806bed6e 100644 --- a/lib/openai/models/responses/response_audio_transcript_done_event.rb +++ b/lib/openai/models/responses/response_audio_transcript_done_event.rb @@ -11,9 +11,12 @@ class ResponseAudioTranscriptDoneEvent < OpenAI::Internal::Type::BaseModel required :type, const: :"response.audio.transcript.done" # @!method initialize(type: :"response.audio.transcript.done") + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Responses::ResponseAudioTranscriptDoneEvent} for more details. + # # Emitted when the full audio transcript is completed. # - # @param type [Symbol, :"response.audio.transcript.done"] + # @param type [Symbol, :"response.audio.transcript.done"] The type of the event. Always `response.audio.transcript.done`. ... end end end diff --git a/lib/openai/models/responses/response_code_interpreter_call_code_delta_event.rb b/lib/openai/models/responses/response_code_interpreter_call_code_delta_event.rb index 934cb5f9..0f337be3 100644 --- a/lib/openai/models/responses/response_code_interpreter_call_code_delta_event.rb +++ b/lib/openai/models/responses/response_code_interpreter_call_code_delta_event.rb @@ -23,11 +23,17 @@ class ResponseCodeInterpreterCallCodeDeltaEvent < OpenAI::Internal::Type::BaseMo required :type, const: :"response.code_interpreter_call.code.delta" # @!method initialize(delta:, output_index:, type: :"response.code_interpreter_call.code.delta") + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Responses::ResponseCodeInterpreterCallCodeDeltaEvent} for more + # details. + # # Emitted when a partial code snippet is added by the code interpreter. # - # @param delta [String] - # @param output_index [Integer] - # @param type [Symbol, :"response.code_interpreter_call.code.delta"] + # @param delta [String] The partial code snippet added by the code interpreter. ... + # + # @param output_index [Integer] The index of the output item that the code interpreter call is in progress. ... + # + # @param type [Symbol, :"response.code_interpreter_call.code.delta"] The type of the event. Always `response.code_interpreter_call.code.delta`. ... end end end diff --git a/lib/openai/models/responses/response_code_interpreter_call_code_done_event.rb b/lib/openai/models/responses/response_code_interpreter_call_code_done_event.rb index 8b10fde8..4d7ad38d 100644 --- a/lib/openai/models/responses/response_code_interpreter_call_code_done_event.rb +++ b/lib/openai/models/responses/response_code_interpreter_call_code_done_event.rb @@ -23,11 +23,17 @@ class ResponseCodeInterpreterCallCodeDoneEvent < OpenAI::Internal::Type::BaseMod required :type, const: :"response.code_interpreter_call.code.done" # @!method initialize(code:, output_index:, type: :"response.code_interpreter_call.code.done") + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Responses::ResponseCodeInterpreterCallCodeDoneEvent} for more + # details. + # # Emitted when code snippet output is finalized by the code interpreter. # - # @param code [String] - # @param output_index [Integer] - # @param type [Symbol, :"response.code_interpreter_call.code.done"] + # @param code [String] The final code snippet output by the code interpreter. ... + # + # @param output_index [Integer] The index of the output item that the code interpreter call is in progress. ... + # + # @param type [Symbol, :"response.code_interpreter_call.code.done"] The type of the event. Always `response.code_interpreter_call.code.done`. ... end end end diff --git a/lib/openai/models/responses/response_code_interpreter_call_completed_event.rb b/lib/openai/models/responses/response_code_interpreter_call_completed_event.rb index c0e507cd..f5cd8062 100644 --- a/lib/openai/models/responses/response_code_interpreter_call_completed_event.rb +++ b/lib/openai/models/responses/response_code_interpreter_call_completed_event.rb @@ -23,11 +23,17 @@ class ResponseCodeInterpreterCallCompletedEvent < OpenAI::Internal::Type::BaseMo required :type, const: :"response.code_interpreter_call.completed" # @!method initialize(code_interpreter_call:, output_index:, type: :"response.code_interpreter_call.completed") + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Responses::ResponseCodeInterpreterCallCompletedEvent} for more + # details. + # # Emitted when the code interpreter call is completed. # - # @param code_interpreter_call [OpenAI::Models::Responses::ResponseCodeInterpreterToolCall] - # @param output_index [Integer] - # @param type [Symbol, :"response.code_interpreter_call.completed"] + # @param code_interpreter_call [OpenAI::Models::Responses::ResponseCodeInterpreterToolCall] A tool call to run code. ... + # + # @param output_index [Integer] The index of the output item that the code interpreter call is in progress. ... + # + # @param type [Symbol, :"response.code_interpreter_call.completed"] The type of the event. Always `response.code_interpreter_call.completed`. ... end end end diff --git a/lib/openai/models/responses/response_code_interpreter_call_in_progress_event.rb b/lib/openai/models/responses/response_code_interpreter_call_in_progress_event.rb index 3277ceef..2d6c8c32 100644 --- a/lib/openai/models/responses/response_code_interpreter_call_in_progress_event.rb +++ b/lib/openai/models/responses/response_code_interpreter_call_in_progress_event.rb @@ -23,11 +23,17 @@ class ResponseCodeInterpreterCallInProgressEvent < OpenAI::Internal::Type::BaseM required :type, const: :"response.code_interpreter_call.in_progress" # @!method initialize(code_interpreter_call:, output_index:, type: :"response.code_interpreter_call.in_progress") + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Responses::ResponseCodeInterpreterCallInProgressEvent} for more + # details. + # # Emitted when a code interpreter call is in progress. # - # @param code_interpreter_call [OpenAI::Models::Responses::ResponseCodeInterpreterToolCall] - # @param output_index [Integer] - # @param type [Symbol, :"response.code_interpreter_call.in_progress"] + # @param code_interpreter_call [OpenAI::Models::Responses::ResponseCodeInterpreterToolCall] A tool call to run code. ... + # + # @param output_index [Integer] The index of the output item that the code interpreter call is in progress. ... + # + # @param type [Symbol, :"response.code_interpreter_call.in_progress"] The type of the event. Always `response.code_interpreter_call.in_progress`. ... end end end diff --git a/lib/openai/models/responses/response_code_interpreter_call_interpreting_event.rb b/lib/openai/models/responses/response_code_interpreter_call_interpreting_event.rb index 3a361629..63e41324 100644 --- a/lib/openai/models/responses/response_code_interpreter_call_interpreting_event.rb +++ b/lib/openai/models/responses/response_code_interpreter_call_interpreting_event.rb @@ -23,11 +23,17 @@ class ResponseCodeInterpreterCallInterpretingEvent < OpenAI::Internal::Type::Bas required :type, const: :"response.code_interpreter_call.interpreting" # @!method initialize(code_interpreter_call:, output_index:, type: :"response.code_interpreter_call.interpreting") + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Responses::ResponseCodeInterpreterCallInterpretingEvent} for + # more details. + # # Emitted when the code interpreter is actively interpreting the code snippet. # - # @param code_interpreter_call [OpenAI::Models::Responses::ResponseCodeInterpreterToolCall] - # @param output_index [Integer] - # @param type [Symbol, :"response.code_interpreter_call.interpreting"] + # @param code_interpreter_call [OpenAI::Models::Responses::ResponseCodeInterpreterToolCall] A tool call to run code. ... + # + # @param output_index [Integer] The index of the output item that the code interpreter call is in progress. ... + # + # @param type [Symbol, :"response.code_interpreter_call.interpreting"] The type of the event. Always `response.code_interpreter_call.interpreting`. ... end end end diff --git a/lib/openai/models/responses/response_code_interpreter_tool_call.rb b/lib/openai/models/responses/response_code_interpreter_tool_call.rb index cbab454f..3ab4f34f 100644 --- a/lib/openai/models/responses/response_code_interpreter_tool_call.rb +++ b/lib/openai/models/responses/response_code_interpreter_tool_call.rb @@ -36,13 +36,20 @@ class ResponseCodeInterpreterToolCall < OpenAI::Internal::Type::BaseModel required :type, const: :code_interpreter_call # @!method initialize(id:, code:, results:, status:, type: :code_interpreter_call) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Responses::ResponseCodeInterpreterToolCall} for more details. + # # A tool call to run code. # - # @param id [String] - # @param code [String] - # @param results [Array] - # @param status [Symbol, OpenAI::Models::Responses::ResponseCodeInterpreterToolCall::Status] - # @param type [Symbol, :code_interpreter_call] + # @param id [String] The unique ID of the code interpreter tool call. ... + # + # @param code [String] The code to run. ... + # + # @param results [Array] The results of the code interpreter tool call. ... + # + # @param status [Symbol, OpenAI::Models::Responses::ResponseCodeInterpreterToolCall::Status] The status of the code interpreter tool call. ... + # + # @param type [Symbol, :code_interpreter_call] The type of the code interpreter tool call. Always `code_interpreter_call`. ... # The output of a code interpreter tool call that is text. module Result @@ -70,10 +77,15 @@ class Logs < OpenAI::Internal::Type::BaseModel required :type, const: :logs # @!method initialize(logs:, type: :logs) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Responses::ResponseCodeInterpreterToolCall::Result::Logs} for + # more details. + # # The output of a code interpreter tool call that is text. # - # @param logs [String] - # @param type [Symbol, :logs] + # @param logs [String] The logs of the code interpreter tool call. ... + # + # @param type [Symbol, :logs] The type of the code interpreter text output. Always `logs`. ... end class Files < OpenAI::Internal::Type::BaseModel @@ -90,10 +102,15 @@ class Files < OpenAI::Internal::Type::BaseModel required :type, const: :files # @!method initialize(files:, type: :files) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Responses::ResponseCodeInterpreterToolCall::Result::Files} for + # more details. + # # The output of a code interpreter tool call that is a file. # # @param files [Array] - # @param type [Symbol, :files] + # + # @param type [Symbol, :files] The type of the code interpreter file output. Always `files`. ... class File < OpenAI::Internal::Type::BaseModel # @!attribute file_id @@ -109,8 +126,13 @@ class File < OpenAI::Internal::Type::BaseModel required :mime_type, String # @!method initialize(file_id:, mime_type:) - # @param file_id [String] - # @param mime_type [String] + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Responses::ResponseCodeInterpreterToolCall::Result::Files::File} + # for more details. + # + # @param file_id [String] The ID of the file. ... + # + # @param mime_type [String] The MIME type of the file. ... end end diff --git a/lib/openai/models/responses/response_completed_event.rb b/lib/openai/models/responses/response_completed_event.rb index 509663df..e4995227 100644 --- a/lib/openai/models/responses/response_completed_event.rb +++ b/lib/openai/models/responses/response_completed_event.rb @@ -17,10 +17,14 @@ class ResponseCompletedEvent < OpenAI::Internal::Type::BaseModel required :type, const: :"response.completed" # @!method initialize(response:, type: :"response.completed") + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Responses::ResponseCompletedEvent} for more details. + # # Emitted when the model response is complete. # - # @param response [OpenAI::Models::Responses::Response] - # @param type [Symbol, :"response.completed"] + # @param response [OpenAI::Models::Responses::Response] Properties of the completed response. ... + # + # @param type [Symbol, :"response.completed"] The type of the event. Always `response.completed`. ... end end end diff --git a/lib/openai/models/responses/response_computer_tool_call.rb b/lib/openai/models/responses/response_computer_tool_call.rb index b84db1e5..5f2dedd1 100644 --- a/lib/openai/models/responses/response_computer_tool_call.rb +++ b/lib/openai/models/responses/response_computer_tool_call.rb @@ -43,16 +43,24 @@ class ResponseComputerToolCall < OpenAI::Internal::Type::BaseModel required :type, enum: -> { OpenAI::Models::Responses::ResponseComputerToolCall::Type } # @!method initialize(id:, action:, call_id:, pending_safety_checks:, status:, type:) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Responses::ResponseComputerToolCall} for more details. + # # A tool call to a computer use tool. See the # [computer use guide](https://platform.openai.com/docs/guides/tools-computer-use) # for more information. # - # @param id [String] - # @param action [OpenAI::Models::Responses::ResponseComputerToolCall::Action::Click, OpenAI::Models::Responses::ResponseComputerToolCall::Action::DoubleClick, OpenAI::Models::Responses::ResponseComputerToolCall::Action::Drag, OpenAI::Models::Responses::ResponseComputerToolCall::Action::Keypress, OpenAI::Models::Responses::ResponseComputerToolCall::Action::Move, OpenAI::Models::Responses::ResponseComputerToolCall::Action::Screenshot, OpenAI::Models::Responses::ResponseComputerToolCall::Action::Scroll, OpenAI::Models::Responses::ResponseComputerToolCall::Action::Type, OpenAI::Models::Responses::ResponseComputerToolCall::Action::Wait] - # @param call_id [String] - # @param pending_safety_checks [Array] - # @param status [Symbol, OpenAI::Models::Responses::ResponseComputerToolCall::Status] - # @param type [Symbol, OpenAI::Models::Responses::ResponseComputerToolCall::Type] + # @param id [String] The unique ID of the computer call. + # + # @param action [OpenAI::Models::Responses::ResponseComputerToolCall::Action::Click, OpenAI::Models::Responses::ResponseComputerToolCall::Action::DoubleClick, OpenAI::Models::Responses::ResponseComputerToolCall::Action::Drag, OpenAI::Models::Responses::ResponseComputerToolCall::Action::Keypress, OpenAI::Models::Responses::ResponseComputerToolCall::Action::Move, OpenAI::Models::Responses::ResponseComputerToolCall::Action::Screenshot, OpenAI::Models::Responses::ResponseComputerToolCall::Action::Scroll, OpenAI::Models::Responses::ResponseComputerToolCall::Action::Type, OpenAI::Models::Responses::ResponseComputerToolCall::Action::Wait] A click action. ... + # + # @param call_id [String] An identifier used when responding to the tool call with output. ... + # + # @param pending_safety_checks [Array] The pending safety checks for the computer call. ... + # + # @param status [Symbol, OpenAI::Models::Responses::ResponseComputerToolCall::Status] The status of the item. One of `in_progress`, `completed`, or ... + # + # @param type [Symbol, OpenAI::Models::Responses::ResponseComputerToolCall::Type] The type of the computer call. Always `computer_call`. # A click action. # @@ -117,12 +125,20 @@ class Click < OpenAI::Internal::Type::BaseModel required :y_, Integer, api_name: :y # @!method initialize(button:, x:, y_:, type: :click) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Responses::ResponseComputerToolCall::Action::Click} for more + # details. + # # A click action. # - # @param button [Symbol, OpenAI::Models::Responses::ResponseComputerToolCall::Action::Click::Button] - # @param x [Integer] - # @param y_ [Integer] - # @param type [Symbol, :click] + # @param button [Symbol, OpenAI::Models::Responses::ResponseComputerToolCall::Action::Click::Button] Indicates which mouse button was pressed during the click. One of `left`, `right + # ... + # + # @param x [Integer] The x-coordinate where the click occurred. ... + # + # @param y_ [Integer] The y-coordinate where the click occurred. ... + # + # @param type [Symbol, :click] Specifies the event type. For a click action, this property is ... # Indicates which mouse button was pressed during the click. One of `left`, # `right`, `wheel`, `back`, or `forward`. @@ -163,11 +179,17 @@ class DoubleClick < OpenAI::Internal::Type::BaseModel required :y_, Integer, api_name: :y # @!method initialize(x:, y_:, type: :double_click) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Responses::ResponseComputerToolCall::Action::DoubleClick} for + # more details. + # # A double click action. # - # @param x [Integer] - # @param y_ [Integer] - # @param type [Symbol, :double_click] + # @param x [Integer] The x-coordinate where the double click occurred. ... + # + # @param y_ [Integer] The y-coordinate where the double click occurred. ... + # + # @param type [Symbol, :double_click] Specifies the event type. For a double click action, this property is ... end class Drag < OpenAI::Internal::Type::BaseModel @@ -194,10 +216,16 @@ class Drag < OpenAI::Internal::Type::BaseModel required :type, const: :drag # @!method initialize(path:, type: :drag) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Responses::ResponseComputerToolCall::Action::Drag} for more + # details. + # # A drag action. # - # @param path [Array] - # @param type [Symbol, :drag] + # @param path [Array] An array of coordinates representing the path of the drag action. Coordinates wi + # ... + # + # @param type [Symbol, :drag] Specifies the event type. For a drag action, this property is ... class Path < OpenAI::Internal::Type::BaseModel # @!attribute x @@ -213,10 +241,15 @@ class Path < OpenAI::Internal::Type::BaseModel required :y_, Integer, api_name: :y # @!method initialize(x:, y_:) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Responses::ResponseComputerToolCall::Action::Drag::Path} for + # more details. + # # A series of x/y coordinate pairs in the drag path. # - # @param x [Integer] - # @param y_ [Integer] + # @param x [Integer] The x-coordinate. ... + # + # @param y_ [Integer] The y-coordinate. ... end end @@ -236,10 +269,15 @@ class Keypress < OpenAI::Internal::Type::BaseModel required :type, const: :keypress # @!method initialize(keys:, type: :keypress) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Responses::ResponseComputerToolCall::Action::Keypress} for more + # details. + # # A collection of keypresses the model would like to perform. # - # @param keys [Array] - # @param type [Symbol, :keypress] + # @param keys [Array] The combination of keys the model is requesting to be pressed. This is an ... + # + # @param type [Symbol, :keypress] Specifies the event type. For a keypress action, this property is ... end class Move < OpenAI::Internal::Type::BaseModel @@ -263,11 +301,17 @@ class Move < OpenAI::Internal::Type::BaseModel required :y_, Integer, api_name: :y # @!method initialize(x:, y_:, type: :move) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Responses::ResponseComputerToolCall::Action::Move} for more + # details. + # # A mouse move action. # - # @param x [Integer] - # @param y_ [Integer] - # @param type [Symbol, :move] + # @param x [Integer] The x-coordinate to move to. ... + # + # @param y_ [Integer] The y-coordinate to move to. ... + # + # @param type [Symbol, :move] Specifies the event type. For a move action, this property is ... end class Screenshot < OpenAI::Internal::Type::BaseModel @@ -279,9 +323,13 @@ class Screenshot < OpenAI::Internal::Type::BaseModel required :type, const: :screenshot # @!method initialize(type: :screenshot) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Responses::ResponseComputerToolCall::Action::Screenshot} for + # more details. + # # A screenshot action. # - # @param type [Symbol, :screenshot] + # @param type [Symbol, :screenshot] Specifies the event type. For a screenshot action, this property is ... end class Scroll < OpenAI::Internal::Type::BaseModel @@ -317,13 +365,21 @@ class Scroll < OpenAI::Internal::Type::BaseModel required :y_, Integer, api_name: :y # @!method initialize(scroll_x:, scroll_y:, x:, y_:, type: :scroll) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Responses::ResponseComputerToolCall::Action::Scroll} for more + # details. + # # A scroll action. # - # @param scroll_x [Integer] - # @param scroll_y [Integer] - # @param x [Integer] - # @param y_ [Integer] - # @param type [Symbol, :scroll] + # @param scroll_x [Integer] The horizontal scroll distance. ... + # + # @param scroll_y [Integer] The vertical scroll distance. ... + # + # @param x [Integer] The x-coordinate where the scroll occurred. ... + # + # @param y_ [Integer] The y-coordinate where the scroll occurred. ... + # + # @param type [Symbol, :scroll] Specifies the event type. For a scroll action, this property is ... end class Type < OpenAI::Internal::Type::BaseModel @@ -341,10 +397,15 @@ class Type < OpenAI::Internal::Type::BaseModel required :type, const: :type # @!method initialize(text:, type: :type) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Responses::ResponseComputerToolCall::Action::Type} for more + # details. + # # An action to type in text. # - # @param text [String] - # @param type [Symbol, :type] + # @param text [String] The text to type. ... + # + # @param type [Symbol, :type] Specifies the event type. For a type action, this property is ... end class Wait < OpenAI::Internal::Type::BaseModel @@ -356,9 +417,13 @@ class Wait < OpenAI::Internal::Type::BaseModel required :type, const: :wait # @!method initialize(type: :wait) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Responses::ResponseComputerToolCall::Action::Wait} for more + # details. + # # A wait action. # - # @param type [Symbol, :wait] + # @param type [Symbol, :wait] Specifies the event type. For a wait action, this property is ... end # @!method self.variants @@ -387,9 +452,11 @@ class PendingSafetyCheck < OpenAI::Internal::Type::BaseModel # @!method initialize(id:, code:, message:) # A pending safety check for the computer call. # - # @param id [String] - # @param code [String] - # @param message [String] + # @param id [String] The ID of the pending safety check. + # + # @param code [String] The type of the pending safety check. + # + # @param message [String] Details about the pending safety check. end # The status of the item. One of `in_progress`, `completed`, or `incomplete`. diff --git a/lib/openai/models/responses/response_computer_tool_call_output_item.rb b/lib/openai/models/responses/response_computer_tool_call_output_item.rb index 9bfc14e2..1b404766 100644 --- a/lib/openai/models/responses/response_computer_tool_call_output_item.rb +++ b/lib/openai/models/responses/response_computer_tool_call_output_item.rb @@ -44,12 +44,21 @@ class ResponseComputerToolCallOutputItem < OpenAI::Internal::Type::BaseModel optional :status, enum: -> { OpenAI::Models::Responses::ResponseComputerToolCallOutputItem::Status } # @!method initialize(id:, call_id:, output:, acknowledged_safety_checks: nil, status: nil, type: :computer_call_output) - # @param id [String] - # @param call_id [String] - # @param output [OpenAI::Models::Responses::ResponseComputerToolCallOutputScreenshot] - # @param acknowledged_safety_checks [Array] - # @param status [Symbol, OpenAI::Models::Responses::ResponseComputerToolCallOutputItem::Status] - # @param type [Symbol, :computer_call_output] + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Responses::ResponseComputerToolCallOutputItem} for more + # details. + # + # @param id [String] The unique ID of the computer call tool output. ... + # + # @param call_id [String] The ID of the computer tool call that produced the output. ... + # + # @param output [OpenAI::Models::Responses::ResponseComputerToolCallOutputScreenshot] A computer screenshot image used with the computer use tool. ... + # + # @param acknowledged_safety_checks [Array] The safety checks reported by the API that have been acknowledged by the ... + # + # @param status [Symbol, OpenAI::Models::Responses::ResponseComputerToolCallOutputItem::Status] The status of the message input. One of `in_progress`, `completed`, or ... + # + # @param type [Symbol, :computer_call_output] The type of the computer tool call output. Always `computer_call_output`. ... class AcknowledgedSafetyCheck < OpenAI::Internal::Type::BaseModel # @!attribute id @@ -73,9 +82,11 @@ class AcknowledgedSafetyCheck < OpenAI::Internal::Type::BaseModel # @!method initialize(id:, code:, message:) # A pending safety check for the computer call. # - # @param id [String] - # @param code [String] - # @param message [String] + # @param id [String] The ID of the pending safety check. + # + # @param code [String] The type of the pending safety check. + # + # @param message [String] Details about the pending safety check. end # The status of the message input. One of `in_progress`, `completed`, or diff --git a/lib/openai/models/responses/response_computer_tool_call_output_screenshot.rb b/lib/openai/models/responses/response_computer_tool_call_output_screenshot.rb index 9dc1550c..e42b2d78 100644 --- a/lib/openai/models/responses/response_computer_tool_call_output_screenshot.rb +++ b/lib/openai/models/responses/response_computer_tool_call_output_screenshot.rb @@ -24,11 +24,17 @@ class ResponseComputerToolCallOutputScreenshot < OpenAI::Internal::Type::BaseMod optional :image_url, String # @!method initialize(file_id: nil, image_url: nil, type: :computer_screenshot) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Responses::ResponseComputerToolCallOutputScreenshot} for more + # details. + # # A computer screenshot image used with the computer use tool. # - # @param file_id [String] - # @param image_url [String] - # @param type [Symbol, :computer_screenshot] + # @param file_id [String] The identifier of an uploaded file that contains the screenshot. + # + # @param image_url [String] The URL of the screenshot image. + # + # @param type [Symbol, :computer_screenshot] Specifies the event type. For a computer screenshot, this property is ... end end end diff --git a/lib/openai/models/responses/response_content_part_added_event.rb b/lib/openai/models/responses/response_content_part_added_event.rb index 8399e487..86328573 100644 --- a/lib/openai/models/responses/response_content_part_added_event.rb +++ b/lib/openai/models/responses/response_content_part_added_event.rb @@ -35,13 +35,20 @@ class ResponseContentPartAddedEvent < OpenAI::Internal::Type::BaseModel required :type, const: :"response.content_part.added" # @!method initialize(content_index:, item_id:, output_index:, part:, type: :"response.content_part.added") + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Responses::ResponseContentPartAddedEvent} for more details. + # # Emitted when a new content part is added. # - # @param content_index [Integer] - # @param item_id [String] - # @param output_index [Integer] - # @param part [OpenAI::Models::Responses::ResponseOutputText, OpenAI::Models::Responses::ResponseOutputRefusal] - # @param type [Symbol, :"response.content_part.added"] + # @param content_index [Integer] The index of the content part that was added. ... + # + # @param item_id [String] The ID of the output item that the content part was added to. ... + # + # @param output_index [Integer] The index of the output item that the content part was added to. ... + # + # @param part [OpenAI::Models::Responses::ResponseOutputText, OpenAI::Models::Responses::ResponseOutputRefusal] The content part that was added. ... + # + # @param type [Symbol, :"response.content_part.added"] The type of the event. Always `response.content_part.added`. ... # The content part that was added. # diff --git a/lib/openai/models/responses/response_content_part_done_event.rb b/lib/openai/models/responses/response_content_part_done_event.rb index 945ef949..2858e020 100644 --- a/lib/openai/models/responses/response_content_part_done_event.rb +++ b/lib/openai/models/responses/response_content_part_done_event.rb @@ -35,13 +35,20 @@ class ResponseContentPartDoneEvent < OpenAI::Internal::Type::BaseModel required :type, const: :"response.content_part.done" # @!method initialize(content_index:, item_id:, output_index:, part:, type: :"response.content_part.done") + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Responses::ResponseContentPartDoneEvent} for more details. + # # Emitted when a content part is done. # - # @param content_index [Integer] - # @param item_id [String] - # @param output_index [Integer] - # @param part [OpenAI::Models::Responses::ResponseOutputText, OpenAI::Models::Responses::ResponseOutputRefusal] - # @param type [Symbol, :"response.content_part.done"] + # @param content_index [Integer] The index of the content part that is done. ... + # + # @param item_id [String] The ID of the output item that the content part was added to. ... + # + # @param output_index [Integer] The index of the output item that the content part was added to. ... + # + # @param part [OpenAI::Models::Responses::ResponseOutputText, OpenAI::Models::Responses::ResponseOutputRefusal] The content part that is done. ... + # + # @param type [Symbol, :"response.content_part.done"] The type of the event. Always `response.content_part.done`. ... # The content part that is done. # diff --git a/lib/openai/models/responses/response_create_params.rb b/lib/openai/models/responses/response_create_params.rb index f20f9cc0..6e51faa1 100644 --- a/lib/openai/models/responses/response_create_params.rb +++ b/lib/openai/models/responses/response_create_params.rb @@ -209,24 +209,50 @@ class ResponseCreateParams < OpenAI::Internal::Type::BaseModel optional :user, String # @!method initialize(input:, model:, include: nil, instructions: nil, max_output_tokens: nil, metadata: nil, parallel_tool_calls: nil, previous_response_id: nil, reasoning: nil, service_tier: nil, store: nil, temperature: nil, text: nil, tool_choice: nil, tools: nil, top_p: nil, truncation: nil, user: nil, request_options: {}) - # @param input [String, Array] - # @param model [String, Symbol, OpenAI::Models::ChatModel, OpenAI::Models::ResponsesModel::ResponsesOnlyModel] - # @param include [Array, nil] - # @param instructions [String, nil] - # @param max_output_tokens [Integer, nil] - # @param metadata [Hash{Symbol=>String}, nil] - # @param parallel_tool_calls [Boolean, nil] - # @param previous_response_id [String, nil] - # @param reasoning [OpenAI::Models::Reasoning, nil] - # @param service_tier [Symbol, OpenAI::Models::Responses::ResponseCreateParams::ServiceTier, nil] - # @param store [Boolean, nil] - # @param temperature [Float, nil] - # @param text [OpenAI::Models::Responses::ResponseTextConfig] - # @param tool_choice [Symbol, OpenAI::Models::Responses::ToolChoiceOptions, OpenAI::Models::Responses::ToolChoiceTypes, OpenAI::Models::Responses::ToolChoiceFunction] - # @param tools [Array] - # @param top_p [Float, nil] - # @param truncation [Symbol, OpenAI::Models::Responses::ResponseCreateParams::Truncation, nil] - # @param user [String] + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Responses::ResponseCreateParams} for more details. + # + # @param input [String, Array] Text, image, or file inputs to the model, used to generate a response. ... + # + # @param model [String, Symbol, OpenAI::Models::ChatModel, OpenAI::Models::ResponsesModel::ResponsesOnlyModel] Model ID used to generate the response, like `gpt-4o` or `o3`. OpenAI ... + # + # @param include [Array, nil] Specify additional output data to include in the model response. Currently ... + # + # @param instructions [String, nil] Inserts a system (or developer) message as the first item in the model's context + # ... + # + # @param max_output_tokens [Integer, nil] An upper bound for the number of tokens that can be generated for a response, in + # ... + # + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # + # @param parallel_tool_calls [Boolean, nil] Whether to allow the model to run tool calls in parallel. ... + # + # @param previous_response_id [String, nil] The unique ID of the previous response to the model. Use this to ... + # + # @param reasoning [OpenAI::Models::Reasoning, nil] **o-series models only** ... + # + # @param service_tier [Symbol, OpenAI::Models::Responses::ResponseCreateParams::ServiceTier, nil] Specifies the latency tier to use for processing the request. This parameter is + # ... + # + # @param store [Boolean, nil] Whether to store the generated model response for later retrieval via ... + # + # @param temperature [Float, nil] What sampling temperature to use, between 0 and 2. Higher values like 0.8 will m + # ... + # + # @param text [OpenAI::Models::Responses::ResponseTextConfig] Configuration options for a text response from the model. Can be plain ... + # + # @param tool_choice [Symbol, OpenAI::Models::Responses::ToolChoiceOptions, OpenAI::Models::Responses::ToolChoiceTypes, OpenAI::Models::Responses::ToolChoiceFunction] How the model should select which tool (or tools) to use when generating ... + # + # @param tools [Array] An array of tools the model may call while generating a response. You ... + # + # @param top_p [Float, nil] An alternative to sampling with temperature, called nucleus sampling, ... + # + # @param truncation [Symbol, OpenAI::Models::Responses::ResponseCreateParams::Truncation, nil] The truncation strategy to use for the model response. ... + # + # @param user [String] A unique identifier representing your end-user, which can help OpenAI to monitor + # ... + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] # Text, image, or file inputs to the model, used to generate a response. diff --git a/lib/openai/models/responses/response_created_event.rb b/lib/openai/models/responses/response_created_event.rb index ad5cf6d0..0c8408d0 100644 --- a/lib/openai/models/responses/response_created_event.rb +++ b/lib/openai/models/responses/response_created_event.rb @@ -17,10 +17,14 @@ class ResponseCreatedEvent < OpenAI::Internal::Type::BaseModel required :type, const: :"response.created" # @!method initialize(response:, type: :"response.created") + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Responses::ResponseCreatedEvent} for more details. + # # An event that is emitted when a response is created. # - # @param response [OpenAI::Models::Responses::Response] - # @param type [Symbol, :"response.created"] + # @param response [OpenAI::Models::Responses::Response] The response that was created. ... + # + # @param type [Symbol, :"response.created"] The type of the event. Always `response.created`. ... end end end diff --git a/lib/openai/models/responses/response_error.rb b/lib/openai/models/responses/response_error.rb index 3727a834..3e4e38bc 100644 --- a/lib/openai/models/responses/response_error.rb +++ b/lib/openai/models/responses/response_error.rb @@ -17,10 +17,14 @@ class ResponseError < OpenAI::Internal::Type::BaseModel required :message, String # @!method initialize(code:, message:) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Responses::ResponseError} for more details. + # # An error object returned when the model fails to generate a Response. # - # @param code [Symbol, OpenAI::Models::Responses::ResponseError::Code] - # @param message [String] + # @param code [Symbol, OpenAI::Models::Responses::ResponseError::Code] The error code for the response. ... + # + # @param message [String] A human-readable description of the error. ... # The error code for the response. # diff --git a/lib/openai/models/responses/response_error_event.rb b/lib/openai/models/responses/response_error_event.rb index d3bfa55e..c8ad2c34 100644 --- a/lib/openai/models/responses/response_error_event.rb +++ b/lib/openai/models/responses/response_error_event.rb @@ -29,12 +29,18 @@ class ResponseErrorEvent < OpenAI::Internal::Type::BaseModel required :type, const: :error # @!method initialize(code:, message:, param:, type: :error) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Responses::ResponseErrorEvent} for more details. + # # Emitted when an error occurs. # - # @param code [String, nil] - # @param message [String] - # @param param [String, nil] - # @param type [Symbol, :error] + # @param code [String, nil] The error code. ... + # + # @param message [String] The error message. ... + # + # @param param [String, nil] The error parameter. ... + # + # @param type [Symbol, :error] The type of the event. Always `error`. ... end end end diff --git a/lib/openai/models/responses/response_failed_event.rb b/lib/openai/models/responses/response_failed_event.rb index cbed3cb7..54ee8e5c 100644 --- a/lib/openai/models/responses/response_failed_event.rb +++ b/lib/openai/models/responses/response_failed_event.rb @@ -17,10 +17,14 @@ class ResponseFailedEvent < OpenAI::Internal::Type::BaseModel required :type, const: :"response.failed" # @!method initialize(response:, type: :"response.failed") + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Responses::ResponseFailedEvent} for more details. + # # An event that is emitted when a response fails. # - # @param response [OpenAI::Models::Responses::Response] - # @param type [Symbol, :"response.failed"] + # @param response [OpenAI::Models::Responses::Response] The response that failed. ... + # + # @param type [Symbol, :"response.failed"] The type of the event. Always `response.failed`. ... end end end diff --git a/lib/openai/models/responses/response_file_search_call_completed_event.rb b/lib/openai/models/responses/response_file_search_call_completed_event.rb index ffb7c68d..1afd9153 100644 --- a/lib/openai/models/responses/response_file_search_call_completed_event.rb +++ b/lib/openai/models/responses/response_file_search_call_completed_event.rb @@ -23,11 +23,17 @@ class ResponseFileSearchCallCompletedEvent < OpenAI::Internal::Type::BaseModel required :type, const: :"response.file_search_call.completed" # @!method initialize(item_id:, output_index:, type: :"response.file_search_call.completed") + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Responses::ResponseFileSearchCallCompletedEvent} for more + # details. + # # Emitted when a file search call is completed (results found). # - # @param item_id [String] - # @param output_index [Integer] - # @param type [Symbol, :"response.file_search_call.completed"] + # @param item_id [String] The ID of the output item that the file search call is initiated. ... + # + # @param output_index [Integer] The index of the output item that the file search call is initiated. ... + # + # @param type [Symbol, :"response.file_search_call.completed"] The type of the event. Always `response.file_search_call.completed`. ... end end end diff --git a/lib/openai/models/responses/response_file_search_call_in_progress_event.rb b/lib/openai/models/responses/response_file_search_call_in_progress_event.rb index 72fafbc7..74e08290 100644 --- a/lib/openai/models/responses/response_file_search_call_in_progress_event.rb +++ b/lib/openai/models/responses/response_file_search_call_in_progress_event.rb @@ -23,11 +23,17 @@ class ResponseFileSearchCallInProgressEvent < OpenAI::Internal::Type::BaseModel required :type, const: :"response.file_search_call.in_progress" # @!method initialize(item_id:, output_index:, type: :"response.file_search_call.in_progress") + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Responses::ResponseFileSearchCallInProgressEvent} for more + # details. + # # Emitted when a file search call is initiated. # - # @param item_id [String] - # @param output_index [Integer] - # @param type [Symbol, :"response.file_search_call.in_progress"] + # @param item_id [String] The ID of the output item that the file search call is initiated. ... + # + # @param output_index [Integer] The index of the output item that the file search call is initiated. ... + # + # @param type [Symbol, :"response.file_search_call.in_progress"] The type of the event. Always `response.file_search_call.in_progress`. ... end end end diff --git a/lib/openai/models/responses/response_file_search_call_searching_event.rb b/lib/openai/models/responses/response_file_search_call_searching_event.rb index 07c1186a..118b323f 100644 --- a/lib/openai/models/responses/response_file_search_call_searching_event.rb +++ b/lib/openai/models/responses/response_file_search_call_searching_event.rb @@ -23,11 +23,17 @@ class ResponseFileSearchCallSearchingEvent < OpenAI::Internal::Type::BaseModel required :type, const: :"response.file_search_call.searching" # @!method initialize(item_id:, output_index:, type: :"response.file_search_call.searching") + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Responses::ResponseFileSearchCallSearchingEvent} for more + # details. + # # Emitted when a file search is currently searching. # - # @param item_id [String] - # @param output_index [Integer] - # @param type [Symbol, :"response.file_search_call.searching"] + # @param item_id [String] The ID of the output item that the file search call is initiated. ... + # + # @param output_index [Integer] The index of the output item that the file search call is searching. ... + # + # @param type [Symbol, :"response.file_search_call.searching"] The type of the event. Always `response.file_search_call.searching`. ... end end end diff --git a/lib/openai/models/responses/response_file_search_tool_call.rb b/lib/openai/models/responses/response_file_search_tool_call.rb index 9fc12343..71462ed2 100644 --- a/lib/openai/models/responses/response_file_search_tool_call.rb +++ b/lib/openai/models/responses/response_file_search_tool_call.rb @@ -38,15 +38,22 @@ class ResponseFileSearchToolCall < OpenAI::Internal::Type::BaseModel nil?: true # @!method initialize(id:, queries:, status:, results: nil, type: :file_search_call) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Responses::ResponseFileSearchToolCall} for more details. + # # The results of a file search tool call. See the # [file search guide](https://platform.openai.com/docs/guides/tools-file-search) # for more information. # - # @param id [String] - # @param queries [Array] - # @param status [Symbol, OpenAI::Models::Responses::ResponseFileSearchToolCall::Status] - # @param results [Array, nil] - # @param type [Symbol, :file_search_call] + # @param id [String] The unique ID of the file search tool call. ... + # + # @param queries [Array] The queries used to search for files. ... + # + # @param status [Symbol, OpenAI::Models::Responses::ResponseFileSearchToolCall::Status] The status of the file search tool call. One of `in_progress`, ... + # + # @param results [Array, nil] The results of the file search tool call. ... + # + # @param type [Symbol, :file_search_call] The type of the file search tool call. Always `file_search_call`. ... # The status of the file search tool call. One of `in_progress`, `searching`, # `incomplete` or `failed`, @@ -103,11 +110,19 @@ class Result < OpenAI::Internal::Type::BaseModel optional :text, String # @!method initialize(attributes: nil, file_id: nil, filename: nil, score: nil, text: nil) - # @param attributes [Hash{Symbol=>String, Float, Boolean}, nil] - # @param file_id [String] - # @param filename [String] - # @param score [Float] - # @param text [String] + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Responses::ResponseFileSearchToolCall::Result} for more + # details. + # + # @param attributes [Hash{Symbol=>String, Float, Boolean}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # + # @param file_id [String] The unique ID of the file. ... + # + # @param filename [String] The name of the file. ... + # + # @param score [Float] The relevance score of the file - a value between 0 and 1. ... + # + # @param text [String] The text that was retrieved from the file. ... module Attribute extend OpenAI::Internal::Type::Union diff --git a/lib/openai/models/responses/response_format_text_json_schema_config.rb b/lib/openai/models/responses/response_format_text_json_schema_config.rb index 106627ff..d2ac2772 100644 --- a/lib/openai/models/responses/response_format_text_json_schema_config.rb +++ b/lib/openai/models/responses/response_format_text_json_schema_config.rb @@ -42,15 +42,23 @@ class ResponseFormatTextJSONSchemaConfig < OpenAI::Internal::Type::BaseModel optional :strict, OpenAI::Internal::Type::Boolean, nil?: true # @!method initialize(name:, schema:, description: nil, strict: nil, type: :json_schema) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Responses::ResponseFormatTextJSONSchemaConfig} for more + # details. + # # JSON Schema response format. Used to generate structured JSON responses. Learn # more about # [Structured Outputs](https://platform.openai.com/docs/guides/structured-outputs). # - # @param name [String] - # @param schema [Hash{Symbol=>Object}] - # @param description [String] - # @param strict [Boolean, nil] - # @param type [Symbol, :json_schema] + # @param name [String] The name of the response format. Must be a-z, A-Z, 0-9, or contain ... + # + # @param schema [Hash{Symbol=>Object}] The schema for the response format, described as a JSON Schema object. ... + # + # @param description [String] A description of what the response format is for, used by the model to ... + # + # @param strict [Boolean, nil] Whether to enable strict schema adherence when generating the output. ... + # + # @param type [Symbol, :json_schema] The type of response format being defined. Always `json_schema`. end end end diff --git a/lib/openai/models/responses/response_function_call_arguments_delta_event.rb b/lib/openai/models/responses/response_function_call_arguments_delta_event.rb index abd84e9c..57e63c2b 100644 --- a/lib/openai/models/responses/response_function_call_arguments_delta_event.rb +++ b/lib/openai/models/responses/response_function_call_arguments_delta_event.rb @@ -29,12 +29,21 @@ class ResponseFunctionCallArgumentsDeltaEvent < OpenAI::Internal::Type::BaseMode required :type, const: :"response.function_call_arguments.delta" # @!method initialize(delta:, item_id:, output_index:, type: :"response.function_call_arguments.delta") + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Responses::ResponseFunctionCallArgumentsDeltaEvent} for more + # details. + # # Emitted when there is a partial function-call arguments delta. # - # @param delta [String] - # @param item_id [String] - # @param output_index [Integer] - # @param type [Symbol, :"response.function_call_arguments.delta"] + # @param delta [String] The function-call arguments delta that is added. ... + # + # @param item_id [String] The ID of the output item that the function-call arguments delta is added to. + # ... + # + # @param output_index [Integer] The index of the output item that the function-call arguments delta is added to. + # ... + # + # @param type [Symbol, :"response.function_call_arguments.delta"] The type of the event. Always `response.function_call_arguments.delta`. ... end end end diff --git a/lib/openai/models/responses/response_function_call_arguments_done_event.rb b/lib/openai/models/responses/response_function_call_arguments_done_event.rb index ba402026..ded7ece3 100644 --- a/lib/openai/models/responses/response_function_call_arguments_done_event.rb +++ b/lib/openai/models/responses/response_function_call_arguments_done_event.rb @@ -30,9 +30,12 @@ class ResponseFunctionCallArgumentsDoneEvent < OpenAI::Internal::Type::BaseModel # @!method initialize(arguments:, item_id:, output_index:, type: :"response.function_call_arguments.done") # Emitted when function-call arguments are finalized. # - # @param arguments [String] - # @param item_id [String] - # @param output_index [Integer] + # @param arguments [String] The function-call arguments. + # + # @param item_id [String] The ID of the item. + # + # @param output_index [Integer] The index of the output item. + # # @param type [Symbol, :"response.function_call_arguments.done"] end end diff --git a/lib/openai/models/responses/response_function_tool_call.rb b/lib/openai/models/responses/response_function_tool_call.rb index 7db552df..1aa5d417 100644 --- a/lib/openai/models/responses/response_function_tool_call.rb +++ b/lib/openai/models/responses/response_function_tool_call.rb @@ -42,16 +42,24 @@ class ResponseFunctionToolCall < OpenAI::Internal::Type::BaseModel optional :status, enum: -> { OpenAI::Models::Responses::ResponseFunctionToolCall::Status } # @!method initialize(arguments:, call_id:, name:, id: nil, status: nil, type: :function_call) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Responses::ResponseFunctionToolCall} for more details. + # # A tool call to run a function. See the # [function calling guide](https://platform.openai.com/docs/guides/function-calling) # for more information. # - # @param arguments [String] - # @param call_id [String] - # @param name [String] - # @param id [String] - # @param status [Symbol, OpenAI::Models::Responses::ResponseFunctionToolCall::Status] - # @param type [Symbol, :function_call] + # @param arguments [String] A JSON string of the arguments to pass to the function. ... + # + # @param call_id [String] The unique ID of the function tool call generated by the model. ... + # + # @param name [String] The name of the function to run. ... + # + # @param id [String] The unique ID of the function tool call. ... + # + # @param status [Symbol, OpenAI::Models::Responses::ResponseFunctionToolCall::Status] The status of the item. One of `in_progress`, `completed`, or ... + # + # @param type [Symbol, :function_call] The type of the function tool call. Always `function_call`. ... # The status of the item. One of `in_progress`, `completed`, or `incomplete`. # Populated when items are returned via API. diff --git a/lib/openai/models/responses/response_function_tool_call_item.rb b/lib/openai/models/responses/response_function_tool_call_item.rb index 2244965f..e304dda3 100644 --- a/lib/openai/models/responses/response_function_tool_call_item.rb +++ b/lib/openai/models/responses/response_function_tool_call_item.rb @@ -11,11 +11,14 @@ class ResponseFunctionToolCallItem < OpenAI::Models::Responses::ResponseFunction required :id, String # @!method initialize(id:) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Responses::ResponseFunctionToolCallItem} for more details. + # # A tool call to run a function. See the # [function calling guide](https://platform.openai.com/docs/guides/function-calling) # for more information. # - # @param id [String] + # @param id [String] The unique ID of the function tool call. ... end end end diff --git a/lib/openai/models/responses/response_function_tool_call_output_item.rb b/lib/openai/models/responses/response_function_tool_call_output_item.rb index 6623a73c..8cc6084a 100644 --- a/lib/openai/models/responses/response_function_tool_call_output_item.rb +++ b/lib/openai/models/responses/response_function_tool_call_output_item.rb @@ -36,11 +36,19 @@ class ResponseFunctionToolCallOutputItem < OpenAI::Internal::Type::BaseModel optional :status, enum: -> { OpenAI::Models::Responses::ResponseFunctionToolCallOutputItem::Status } # @!method initialize(id:, call_id:, output:, status: nil, type: :function_call_output) - # @param id [String] - # @param call_id [String] - # @param output [String] - # @param status [Symbol, OpenAI::Models::Responses::ResponseFunctionToolCallOutputItem::Status] - # @param type [Symbol, :function_call_output] + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Responses::ResponseFunctionToolCallOutputItem} for more + # details. + # + # @param id [String] The unique ID of the function call tool output. ... + # + # @param call_id [String] The unique ID of the function tool call generated by the model. ... + # + # @param output [String] A JSON string of the output of the function tool call. ... + # + # @param status [Symbol, OpenAI::Models::Responses::ResponseFunctionToolCallOutputItem::Status] The status of the item. One of `in_progress`, `completed`, or ... + # + # @param type [Symbol, :function_call_output] The type of the function tool call output. Always `function_call_output`. ... # The status of the item. One of `in_progress`, `completed`, or `incomplete`. # Populated when items are returned via API. diff --git a/lib/openai/models/responses/response_function_web_search.rb b/lib/openai/models/responses/response_function_web_search.rb index 3529a019..c08e4e32 100644 --- a/lib/openai/models/responses/response_function_web_search.rb +++ b/lib/openai/models/responses/response_function_web_search.rb @@ -23,13 +23,18 @@ class ResponseFunctionWebSearch < OpenAI::Internal::Type::BaseModel required :type, const: :web_search_call # @!method initialize(id:, status:, type: :web_search_call) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Responses::ResponseFunctionWebSearch} for more details. + # # The results of a web search tool call. See the # [web search guide](https://platform.openai.com/docs/guides/tools-web-search) for # more information. # - # @param id [String] - # @param status [Symbol, OpenAI::Models::Responses::ResponseFunctionWebSearch::Status] - # @param type [Symbol, :web_search_call] + # @param id [String] The unique ID of the web search tool call. ... + # + # @param status [Symbol, OpenAI::Models::Responses::ResponseFunctionWebSearch::Status] The status of the web search tool call. ... + # + # @param type [Symbol, :web_search_call] The type of the web search tool call. Always `web_search_call`. ... # The status of the web search tool call. # diff --git a/lib/openai/models/responses/response_in_progress_event.rb b/lib/openai/models/responses/response_in_progress_event.rb index 0259d443..f095d74d 100644 --- a/lib/openai/models/responses/response_in_progress_event.rb +++ b/lib/openai/models/responses/response_in_progress_event.rb @@ -17,10 +17,14 @@ class ResponseInProgressEvent < OpenAI::Internal::Type::BaseModel required :type, const: :"response.in_progress" # @!method initialize(response:, type: :"response.in_progress") + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Responses::ResponseInProgressEvent} for more details. + # # Emitted when the response is in progress. # - # @param response [OpenAI::Models::Responses::Response] - # @param type [Symbol, :"response.in_progress"] + # @param response [OpenAI::Models::Responses::Response] The response that is in progress. ... + # + # @param type [Symbol, :"response.in_progress"] The type of the event. Always `response.in_progress`. ... end end end diff --git a/lib/openai/models/responses/response_incomplete_event.rb b/lib/openai/models/responses/response_incomplete_event.rb index 5536418d..e23ef3a8 100644 --- a/lib/openai/models/responses/response_incomplete_event.rb +++ b/lib/openai/models/responses/response_incomplete_event.rb @@ -17,10 +17,14 @@ class ResponseIncompleteEvent < OpenAI::Internal::Type::BaseModel required :type, const: :"response.incomplete" # @!method initialize(response:, type: :"response.incomplete") + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Responses::ResponseIncompleteEvent} for more details. + # # An event that is emitted when a response finishes as incomplete. # - # @param response [OpenAI::Models::Responses::Response] - # @param type [Symbol, :"response.incomplete"] + # @param response [OpenAI::Models::Responses::Response] The response that was incomplete. ... + # + # @param type [Symbol, :"response.incomplete"] The type of the event. Always `response.incomplete`. ... end end end diff --git a/lib/openai/models/responses/response_input_audio.rb b/lib/openai/models/responses/response_input_audio.rb index f03f775a..ea23bdcd 100644 --- a/lib/openai/models/responses/response_input_audio.rb +++ b/lib/openai/models/responses/response_input_audio.rb @@ -23,11 +23,16 @@ class ResponseInputAudio < OpenAI::Internal::Type::BaseModel required :type, const: :input_audio # @!method initialize(data:, format_:, type: :input_audio) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Responses::ResponseInputAudio} for more details. + # # An audio input to the model. # - # @param data [String] - # @param format_ [Symbol, OpenAI::Models::Responses::ResponseInputAudio::Format] - # @param type [Symbol, :input_audio] + # @param data [String] Base64-encoded audio data. ... + # + # @param format_ [Symbol, OpenAI::Models::Responses::ResponseInputAudio::Format] The format of the audio data. Currently supported formats are `mp3` and ... + # + # @param type [Symbol, :input_audio] The type of the input item. Always `input_audio`. ... # The format of the audio data. Currently supported formats are `mp3` and `wav`. # diff --git a/lib/openai/models/responses/response_input_file.rb b/lib/openai/models/responses/response_input_file.rb index 13aeefd9..06938134 100644 --- a/lib/openai/models/responses/response_input_file.rb +++ b/lib/openai/models/responses/response_input_file.rb @@ -29,12 +29,18 @@ class ResponseInputFile < OpenAI::Internal::Type::BaseModel optional :filename, String # @!method initialize(file_data: nil, file_id: nil, filename: nil, type: :input_file) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Responses::ResponseInputFile} for more details. + # # A file input to the model. # - # @param file_data [String] - # @param file_id [String] - # @param filename [String] - # @param type [Symbol, :input_file] + # @param file_data [String] The content of the file to be sent to the model. ... + # + # @param file_id [String] The ID of the file to be sent to the model. ... + # + # @param filename [String] The name of the file to be sent to the model. ... + # + # @param type [Symbol, :input_file] The type of the input item. Always `input_file`. ... end end end diff --git a/lib/openai/models/responses/response_input_image.rb b/lib/openai/models/responses/response_input_image.rb index 6a07ce69..997851c2 100644 --- a/lib/openai/models/responses/response_input_image.rb +++ b/lib/openai/models/responses/response_input_image.rb @@ -31,13 +31,19 @@ class ResponseInputImage < OpenAI::Internal::Type::BaseModel optional :image_url, String, nil?: true # @!method initialize(detail:, file_id: nil, image_url: nil, type: :input_image) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Responses::ResponseInputImage} for more details. + # # An image input to the model. Learn about # [image inputs](https://platform.openai.com/docs/guides/vision). # - # @param detail [Symbol, OpenAI::Models::Responses::ResponseInputImage::Detail] - # @param file_id [String, nil] - # @param image_url [String, nil] - # @param type [Symbol, :input_image] + # @param detail [Symbol, OpenAI::Models::Responses::ResponseInputImage::Detail] The detail level of the image to be sent to the model. One of `high`, ... + # + # @param file_id [String, nil] The ID of the file to be sent to the model. ... + # + # @param image_url [String, nil] The URL of the image to be sent to the model. A fully qualified URL or ... + # + # @param type [Symbol, :input_image] The type of the input item. Always `input_image`. ... # The detail level of the image to be sent to the model. One of `high`, `low`, or # `auto`. Defaults to `auto`. diff --git a/lib/openai/models/responses/response_input_item.rb b/lib/openai/models/responses/response_input_item.rb index 72801ab7..29e533f3 100644 --- a/lib/openai/models/responses/response_input_item.rb +++ b/lib/openai/models/responses/response_input_item.rb @@ -86,14 +86,20 @@ class Message < OpenAI::Internal::Type::BaseModel optional :type, enum: -> { OpenAI::Models::Responses::ResponseInputItem::Message::Type } # @!method initialize(content:, role:, status: nil, type: nil) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Responses::ResponseInputItem::Message} for more details. + # # A message input to the model with a role indicating instruction following # hierarchy. Instructions given with the `developer` or `system` role take # precedence over instructions given with the `user` role. # - # @param content [Array] - # @param role [Symbol, OpenAI::Models::Responses::ResponseInputItem::Message::Role] - # @param status [Symbol, OpenAI::Models::Responses::ResponseInputItem::Message::Status] - # @param type [Symbol, OpenAI::Models::Responses::ResponseInputItem::Message::Type] + # @param content [Array] A list of one or many input items to the model, containing different content ... + # + # @param role [Symbol, OpenAI::Models::Responses::ResponseInputItem::Message::Role] The role of the message input. One of `user`, `system`, or `developer`. ... + # + # @param status [Symbol, OpenAI::Models::Responses::ResponseInputItem::Message::Status] The status of item. One of `in_progress`, `completed`, or ... + # + # @param type [Symbol, OpenAI::Models::Responses::ResponseInputItem::Message::Type] The type of the message input. Always set to `message`. ... # The role of the message input. One of `user`, `system`, or `developer`. # @@ -178,14 +184,23 @@ class ComputerCallOutput < OpenAI::Internal::Type::BaseModel optional :status, enum: -> { OpenAI::Models::Responses::ResponseInputItem::ComputerCallOutput::Status } # @!method initialize(call_id:, output:, id: nil, acknowledged_safety_checks: nil, status: nil, type: :computer_call_output) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Responses::ResponseInputItem::ComputerCallOutput} for more + # details. + # # The output of a computer tool call. # - # @param call_id [String] - # @param output [OpenAI::Models::Responses::ResponseComputerToolCallOutputScreenshot] - # @param id [String] - # @param acknowledged_safety_checks [Array] - # @param status [Symbol, OpenAI::Models::Responses::ResponseInputItem::ComputerCallOutput::Status] - # @param type [Symbol, :computer_call_output] + # @param call_id [String] The ID of the computer tool call that produced the output. ... + # + # @param output [OpenAI::Models::Responses::ResponseComputerToolCallOutputScreenshot] A computer screenshot image used with the computer use tool. ... + # + # @param id [String] The ID of the computer tool call output. ... + # + # @param acknowledged_safety_checks [Array] The safety checks reported by the API that have been acknowledged by the ... + # + # @param status [Symbol, OpenAI::Models::Responses::ResponseInputItem::ComputerCallOutput::Status] The status of the message input. One of `in_progress`, `completed`, or ... + # + # @param type [Symbol, :computer_call_output] The type of the computer tool call output. Always `computer_call_output`. ... class AcknowledgedSafetyCheck < OpenAI::Internal::Type::BaseModel # @!attribute id @@ -209,9 +224,11 @@ class AcknowledgedSafetyCheck < OpenAI::Internal::Type::BaseModel # @!method initialize(id:, code:, message:) # A pending safety check for the computer call. # - # @param id [String] - # @param code [String] - # @param message [String] + # @param id [String] The ID of the pending safety check. + # + # @param code [String] The type of the pending safety check. + # + # @param message [String] Details about the pending safety check. end # The status of the message input. One of `in_progress`, `completed`, or @@ -264,13 +281,21 @@ class FunctionCallOutput < OpenAI::Internal::Type::BaseModel optional :status, enum: -> { OpenAI::Models::Responses::ResponseInputItem::FunctionCallOutput::Status } # @!method initialize(call_id:, output:, id: nil, status: nil, type: :function_call_output) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Responses::ResponseInputItem::FunctionCallOutput} for more + # details. + # # The output of a function tool call. # - # @param call_id [String] - # @param output [String] - # @param id [String] - # @param status [Symbol, OpenAI::Models::Responses::ResponseInputItem::FunctionCallOutput::Status] - # @param type [Symbol, :function_call_output] + # @param call_id [String] The unique ID of the function tool call generated by the model. ... + # + # @param output [String] A JSON string of the output of the function tool call. ... + # + # @param id [String] The unique ID of the function tool call output. Populated when this item ... + # + # @param status [Symbol, OpenAI::Models::Responses::ResponseInputItem::FunctionCallOutput::Status] The status of the item. One of `in_progress`, `completed`, or ... + # + # @param type [Symbol, :function_call_output] The type of the function tool call output. Always `function_call_output`. ... # The status of the item. One of `in_progress`, `completed`, or `incomplete`. # Populated when items are returned via API. @@ -302,10 +327,14 @@ class ItemReference < OpenAI::Internal::Type::BaseModel required :type, const: :item_reference # @!method initialize(id:, type: :item_reference) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Responses::ResponseInputItem::ItemReference} for more details. + # # An internal identifier for an item to reference. # - # @param id [String] - # @param type [Symbol, :item_reference] + # @param id [String] The ID of the item to reference. ... + # + # @param type [Symbol, :item_reference] The type of item to reference. Always `item_reference`. ... end # @!method self.variants diff --git a/lib/openai/models/responses/response_input_message_item.rb b/lib/openai/models/responses/response_input_message_item.rb index 2b7b1ab1..f188d81c 100644 --- a/lib/openai/models/responses/response_input_message_item.rb +++ b/lib/openai/models/responses/response_input_message_item.rb @@ -38,11 +38,18 @@ class ResponseInputMessageItem < OpenAI::Internal::Type::BaseModel optional :type, enum: -> { OpenAI::Models::Responses::ResponseInputMessageItem::Type } # @!method initialize(id:, content:, role:, status: nil, type: nil) - # @param id [String] - # @param content [Array] - # @param role [Symbol, OpenAI::Models::Responses::ResponseInputMessageItem::Role] - # @param status [Symbol, OpenAI::Models::Responses::ResponseInputMessageItem::Status] - # @param type [Symbol, OpenAI::Models::Responses::ResponseInputMessageItem::Type] + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Responses::ResponseInputMessageItem} for more details. + # + # @param id [String] The unique ID of the message input. ... + # + # @param content [Array] A list of one or many input items to the model, containing different content ... + # + # @param role [Symbol, OpenAI::Models::Responses::ResponseInputMessageItem::Role] The role of the message input. One of `user`, `system`, or `developer`. ... + # + # @param status [Symbol, OpenAI::Models::Responses::ResponseInputMessageItem::Status] The status of item. One of `in_progress`, `completed`, or ... + # + # @param type [Symbol, OpenAI::Models::Responses::ResponseInputMessageItem::Type] The type of the message input. Always set to `message`. ... # The role of the message input. One of `user`, `system`, or `developer`. # diff --git a/lib/openai/models/responses/response_input_text.rb b/lib/openai/models/responses/response_input_text.rb index ad65b3f2..c05e5a54 100644 --- a/lib/openai/models/responses/response_input_text.rb +++ b/lib/openai/models/responses/response_input_text.rb @@ -17,10 +17,14 @@ class ResponseInputText < OpenAI::Internal::Type::BaseModel required :type, const: :input_text # @!method initialize(text:, type: :input_text) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Responses::ResponseInputText} for more details. + # # A text input to the model. # - # @param text [String] - # @param type [Symbol, :input_text] + # @param text [String] The text input to the model. ... + # + # @param type [Symbol, :input_text] The type of the input item. Always `input_text`. ... end end end diff --git a/lib/openai/models/responses/response_item_list.rb b/lib/openai/models/responses/response_item_list.rb index 2b6c1e85..06e55c53 100644 --- a/lib/openai/models/responses/response_item_list.rb +++ b/lib/openai/models/responses/response_item_list.rb @@ -37,11 +37,15 @@ class ResponseItemList < OpenAI::Internal::Type::BaseModel # @!method initialize(data:, first_id:, has_more:, last_id:, object: :list) # A list of Response items. # - # @param data [Array] - # @param first_id [String] - # @param has_more [Boolean] - # @param last_id [String] - # @param object [Symbol, :list] + # @param data [Array] A list of items used to generate this response. + # + # @param first_id [String] The ID of the first item in the list. + # + # @param has_more [Boolean] Whether there are more items available. + # + # @param last_id [String] The ID of the last item in the list. + # + # @param object [Symbol, :list] The type of object returned, must be `list`. end end diff --git a/lib/openai/models/responses/response_output_audio.rb b/lib/openai/models/responses/response_output_audio.rb index 55675501..f66f4024 100644 --- a/lib/openai/models/responses/response_output_audio.rb +++ b/lib/openai/models/responses/response_output_audio.rb @@ -23,11 +23,16 @@ class ResponseOutputAudio < OpenAI::Internal::Type::BaseModel required :type, const: :output_audio # @!method initialize(data:, transcript:, type: :output_audio) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Responses::ResponseOutputAudio} for more details. + # # An audio output from the model. # - # @param data [String] - # @param transcript [String] - # @param type [Symbol, :output_audio] + # @param data [String] Base64-encoded audio data from the model. ... + # + # @param transcript [String] The transcript of the audio data from the model. ... + # + # @param type [Symbol, :output_audio] The type of the output audio. Always `output_audio`. ... end end end diff --git a/lib/openai/models/responses/response_output_item_added_event.rb b/lib/openai/models/responses/response_output_item_added_event.rb index 2893bec8..3a42485d 100644 --- a/lib/openai/models/responses/response_output_item_added_event.rb +++ b/lib/openai/models/responses/response_output_item_added_event.rb @@ -23,11 +23,16 @@ class ResponseOutputItemAddedEvent < OpenAI::Internal::Type::BaseModel required :type, const: :"response.output_item.added" # @!method initialize(item:, output_index:, type: :"response.output_item.added") + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Responses::ResponseOutputItemAddedEvent} for more details. + # # Emitted when a new output item is added. # - # @param item [OpenAI::Models::Responses::ResponseOutputMessage, OpenAI::Models::Responses::ResponseFileSearchToolCall, OpenAI::Models::Responses::ResponseFunctionToolCall, OpenAI::Models::Responses::ResponseFunctionWebSearch, OpenAI::Models::Responses::ResponseComputerToolCall, OpenAI::Models::Responses::ResponseReasoningItem] - # @param output_index [Integer] - # @param type [Symbol, :"response.output_item.added"] + # @param item [OpenAI::Models::Responses::ResponseOutputMessage, OpenAI::Models::Responses::ResponseFileSearchToolCall, OpenAI::Models::Responses::ResponseFunctionToolCall, OpenAI::Models::Responses::ResponseFunctionWebSearch, OpenAI::Models::Responses::ResponseComputerToolCall, OpenAI::Models::Responses::ResponseReasoningItem] The output item that was added. ... + # + # @param output_index [Integer] The index of the output item that was added. ... + # + # @param type [Symbol, :"response.output_item.added"] The type of the event. Always `response.output_item.added`. ... end end end diff --git a/lib/openai/models/responses/response_output_item_done_event.rb b/lib/openai/models/responses/response_output_item_done_event.rb index a8ff9471..d3bfbfc3 100644 --- a/lib/openai/models/responses/response_output_item_done_event.rb +++ b/lib/openai/models/responses/response_output_item_done_event.rb @@ -23,11 +23,16 @@ class ResponseOutputItemDoneEvent < OpenAI::Internal::Type::BaseModel required :type, const: :"response.output_item.done" # @!method initialize(item:, output_index:, type: :"response.output_item.done") + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Responses::ResponseOutputItemDoneEvent} for more details. + # # Emitted when an output item is marked done. # - # @param item [OpenAI::Models::Responses::ResponseOutputMessage, OpenAI::Models::Responses::ResponseFileSearchToolCall, OpenAI::Models::Responses::ResponseFunctionToolCall, OpenAI::Models::Responses::ResponseFunctionWebSearch, OpenAI::Models::Responses::ResponseComputerToolCall, OpenAI::Models::Responses::ResponseReasoningItem] - # @param output_index [Integer] - # @param type [Symbol, :"response.output_item.done"] + # @param item [OpenAI::Models::Responses::ResponseOutputMessage, OpenAI::Models::Responses::ResponseFileSearchToolCall, OpenAI::Models::Responses::ResponseFunctionToolCall, OpenAI::Models::Responses::ResponseFunctionWebSearch, OpenAI::Models::Responses::ResponseComputerToolCall, OpenAI::Models::Responses::ResponseReasoningItem] The output item that was marked done. ... + # + # @param output_index [Integer] The index of the output item that was marked done. ... + # + # @param type [Symbol, :"response.output_item.done"] The type of the event. Always `response.output_item.done`. ... end end end diff --git a/lib/openai/models/responses/response_output_message.rb b/lib/openai/models/responses/response_output_message.rb index 107a4798..2406dc01 100644 --- a/lib/openai/models/responses/response_output_message.rb +++ b/lib/openai/models/responses/response_output_message.rb @@ -37,13 +37,20 @@ class ResponseOutputMessage < OpenAI::Internal::Type::BaseModel required :type, const: :message # @!method initialize(id:, content:, status:, role: :assistant, type: :message) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Responses::ResponseOutputMessage} for more details. + # # An output message from the model. # - # @param id [String] - # @param content [Array] - # @param status [Symbol, OpenAI::Models::Responses::ResponseOutputMessage::Status] - # @param role [Symbol, :assistant] - # @param type [Symbol, :message] + # @param id [String] The unique ID of the output message. ... + # + # @param content [Array] The content of the output message. ... + # + # @param status [Symbol, OpenAI::Models::Responses::ResponseOutputMessage::Status] The status of the message input. One of `in_progress`, `completed`, or ... + # + # @param role [Symbol, :assistant] The role of the output message. Always `assistant`. ... + # + # @param type [Symbol, :message] The type of the output message. Always `message`. ... # A text output from the model. module Content diff --git a/lib/openai/models/responses/response_output_refusal.rb b/lib/openai/models/responses/response_output_refusal.rb index 0c2ccce2..82729b85 100644 --- a/lib/openai/models/responses/response_output_refusal.rb +++ b/lib/openai/models/responses/response_output_refusal.rb @@ -17,10 +17,14 @@ class ResponseOutputRefusal < OpenAI::Internal::Type::BaseModel required :type, const: :refusal # @!method initialize(refusal:, type: :refusal) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Responses::ResponseOutputRefusal} for more details. + # # A refusal from the model. # - # @param refusal [String] - # @param type [Symbol, :refusal] + # @param refusal [String] The refusal explanationfrom the model. ... + # + # @param type [Symbol, :refusal] The type of the refusal. Always `refusal`. ... end end end diff --git a/lib/openai/models/responses/response_output_text.rb b/lib/openai/models/responses/response_output_text.rb index a857410f..32465ac6 100644 --- a/lib/openai/models/responses/response_output_text.rb +++ b/lib/openai/models/responses/response_output_text.rb @@ -24,11 +24,16 @@ class ResponseOutputText < OpenAI::Internal::Type::BaseModel required :type, const: :output_text # @!method initialize(annotations:, text:, type: :output_text) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Responses::ResponseOutputText} for more details. + # # A text output from the model. # - # @param annotations [Array] - # @param text [String] - # @param type [Symbol, :output_text] + # @param annotations [Array] The annotations of the text output. ... + # + # @param text [String] The text output from the model. ... + # + # @param type [Symbol, :output_text] The type of the output text. Always `output_text`. ... # A citation to a file. module Annotation @@ -65,11 +70,17 @@ class FileCitation < OpenAI::Internal::Type::BaseModel required :type, const: :file_citation # @!method initialize(file_id:, index:, type: :file_citation) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Responses::ResponseOutputText::Annotation::FileCitation} for + # more details. + # # A citation to a file. # - # @param file_id [String] - # @param index [Integer] - # @param type [Symbol, :file_citation] + # @param file_id [String] The ID of the file. ... + # + # @param index [Integer] The index of the file in the list of files. ... + # + # @param type [Symbol, :file_citation] The type of the file citation. Always `file_citation`. ... end class URLCitation < OpenAI::Internal::Type::BaseModel @@ -104,13 +115,21 @@ class URLCitation < OpenAI::Internal::Type::BaseModel required :url, String # @!method initialize(end_index:, start_index:, title:, url:, type: :url_citation) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Responses::ResponseOutputText::Annotation::URLCitation} for + # more details. + # # A citation for a web resource used to generate a model response. # - # @param end_index [Integer] - # @param start_index [Integer] - # @param title [String] - # @param url [String] - # @param type [Symbol, :url_citation] + # @param end_index [Integer] The index of the last character of the URL citation in the message. ... + # + # @param start_index [Integer] The index of the first character of the URL citation in the message. ... + # + # @param title [String] The title of the web resource. ... + # + # @param url [String] The URL of the web resource. ... + # + # @param type [Symbol, :url_citation] The type of the URL citation. Always `url_citation`. ... end class FilePath < OpenAI::Internal::Type::BaseModel @@ -133,11 +152,17 @@ class FilePath < OpenAI::Internal::Type::BaseModel required :type, const: :file_path # @!method initialize(file_id:, index:, type: :file_path) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Responses::ResponseOutputText::Annotation::FilePath} for more + # details. + # # A path to a file. # - # @param file_id [String] - # @param index [Integer] - # @param type [Symbol, :file_path] + # @param file_id [String] The ID of the file. ... + # + # @param index [Integer] The index of the file in the list of files. ... + # + # @param type [Symbol, :file_path] The type of the file path. Always `file_path`. ... end # @!method self.variants diff --git a/lib/openai/models/responses/response_reasoning_item.rb b/lib/openai/models/responses/response_reasoning_item.rb index bec6c280..a09ba35b 100644 --- a/lib/openai/models/responses/response_reasoning_item.rb +++ b/lib/openai/models/responses/response_reasoning_item.rb @@ -31,13 +31,19 @@ class ResponseReasoningItem < OpenAI::Internal::Type::BaseModel optional :status, enum: -> { OpenAI::Models::Responses::ResponseReasoningItem::Status } # @!method initialize(id:, summary:, status: nil, type: :reasoning) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Responses::ResponseReasoningItem} for more details. + # # A description of the chain of thought used by a reasoning model while generating # a response. # - # @param id [String] - # @param summary [Array] - # @param status [Symbol, OpenAI::Models::Responses::ResponseReasoningItem::Status] - # @param type [Symbol, :reasoning] + # @param id [String] The unique identifier of the reasoning content. ... + # + # @param summary [Array] Reasoning text contents. ... + # + # @param status [Symbol, OpenAI::Models::Responses::ResponseReasoningItem::Status] The status of the item. One of `in_progress`, `completed`, or ... + # + # @param type [Symbol, :reasoning] The type of the object. Always `reasoning`. ... class Summary < OpenAI::Internal::Type::BaseModel # @!attribute text @@ -53,8 +59,12 @@ class Summary < OpenAI::Internal::Type::BaseModel required :type, const: :summary_text # @!method initialize(text:, type: :summary_text) - # @param text [String] - # @param type [Symbol, :summary_text] + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Responses::ResponseReasoningItem::Summary} for more details. + # + # @param text [String] A short summary of the reasoning used by the model when generating ... + # + # @param type [Symbol, :summary_text] The type of the object. Always `summary_text`. ... end # The status of the item. One of `in_progress`, `completed`, or `incomplete`. diff --git a/lib/openai/models/responses/response_reasoning_summary_part_added_event.rb b/lib/openai/models/responses/response_reasoning_summary_part_added_event.rb index a7f42ec3..74d66131 100644 --- a/lib/openai/models/responses/response_reasoning_summary_part_added_event.rb +++ b/lib/openai/models/responses/response_reasoning_summary_part_added_event.rb @@ -35,13 +35,21 @@ class ResponseReasoningSummaryPartAddedEvent < OpenAI::Internal::Type::BaseModel required :type, const: :"response.reasoning_summary_part.added" # @!method initialize(item_id:, output_index:, part:, summary_index:, type: :"response.reasoning_summary_part.added") + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Responses::ResponseReasoningSummaryPartAddedEvent} for more + # details. + # # Emitted when a new reasoning summary part is added. # - # @param item_id [String] - # @param output_index [Integer] - # @param part [OpenAI::Models::Responses::ResponseReasoningSummaryPartAddedEvent::Part] - # @param summary_index [Integer] - # @param type [Symbol, :"response.reasoning_summary_part.added"] + # @param item_id [String] The ID of the item this summary part is associated with. ... + # + # @param output_index [Integer] The index of the output item this summary part is associated with. ... + # + # @param part [OpenAI::Models::Responses::ResponseReasoningSummaryPartAddedEvent::Part] The summary part that was added. ... + # + # @param summary_index [Integer] The index of the summary part within the reasoning summary. ... + # + # @param type [Symbol, :"response.reasoning_summary_part.added"] The type of the event. Always `response.reasoning_summary_part.added`. ... # @see OpenAI::Models::Responses::ResponseReasoningSummaryPartAddedEvent#part class Part < OpenAI::Internal::Type::BaseModel @@ -60,8 +68,9 @@ class Part < OpenAI::Internal::Type::BaseModel # @!method initialize(text:, type: :summary_text) # The summary part that was added. # - # @param text [String] - # @param type [Symbol, :summary_text] + # @param text [String] The text of the summary part. + # + # @param type [Symbol, :summary_text] The type of the summary part. Always `summary_text`. end end end diff --git a/lib/openai/models/responses/response_reasoning_summary_part_done_event.rb b/lib/openai/models/responses/response_reasoning_summary_part_done_event.rb index c868638f..10926c74 100644 --- a/lib/openai/models/responses/response_reasoning_summary_part_done_event.rb +++ b/lib/openai/models/responses/response_reasoning_summary_part_done_event.rb @@ -35,13 +35,21 @@ class ResponseReasoningSummaryPartDoneEvent < OpenAI::Internal::Type::BaseModel required :type, const: :"response.reasoning_summary_part.done" # @!method initialize(item_id:, output_index:, part:, summary_index:, type: :"response.reasoning_summary_part.done") + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Responses::ResponseReasoningSummaryPartDoneEvent} for more + # details. + # # Emitted when a reasoning summary part is completed. # - # @param item_id [String] - # @param output_index [Integer] - # @param part [OpenAI::Models::Responses::ResponseReasoningSummaryPartDoneEvent::Part] - # @param summary_index [Integer] - # @param type [Symbol, :"response.reasoning_summary_part.done"] + # @param item_id [String] The ID of the item this summary part is associated with. ... + # + # @param output_index [Integer] The index of the output item this summary part is associated with. ... + # + # @param part [OpenAI::Models::Responses::ResponseReasoningSummaryPartDoneEvent::Part] The completed summary part. ... + # + # @param summary_index [Integer] The index of the summary part within the reasoning summary. ... + # + # @param type [Symbol, :"response.reasoning_summary_part.done"] The type of the event. Always `response.reasoning_summary_part.done`. ... # @see OpenAI::Models::Responses::ResponseReasoningSummaryPartDoneEvent#part class Part < OpenAI::Internal::Type::BaseModel @@ -60,8 +68,9 @@ class Part < OpenAI::Internal::Type::BaseModel # @!method initialize(text:, type: :summary_text) # The completed summary part. # - # @param text [String] - # @param type [Symbol, :summary_text] + # @param text [String] The text of the summary part. + # + # @param type [Symbol, :summary_text] The type of the summary part. Always `summary_text`. end end end diff --git a/lib/openai/models/responses/response_reasoning_summary_text_delta_event.rb b/lib/openai/models/responses/response_reasoning_summary_text_delta_event.rb index d816e961..b56b3b80 100644 --- a/lib/openai/models/responses/response_reasoning_summary_text_delta_event.rb +++ b/lib/openai/models/responses/response_reasoning_summary_text_delta_event.rb @@ -35,13 +35,21 @@ class ResponseReasoningSummaryTextDeltaEvent < OpenAI::Internal::Type::BaseModel required :type, const: :"response.reasoning_summary_text.delta" # @!method initialize(delta:, item_id:, output_index:, summary_index:, type: :"response.reasoning_summary_text.delta") + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Responses::ResponseReasoningSummaryTextDeltaEvent} for more + # details. + # # Emitted when a delta is added to a reasoning summary text. # - # @param delta [String] - # @param item_id [String] - # @param output_index [Integer] - # @param summary_index [Integer] - # @param type [Symbol, :"response.reasoning_summary_text.delta"] + # @param delta [String] The text delta that was added to the summary. ... + # + # @param item_id [String] The ID of the item this summary text delta is associated with. ... + # + # @param output_index [Integer] The index of the output item this summary text delta is associated with. ... + # + # @param summary_index [Integer] The index of the summary part within the reasoning summary. ... + # + # @param type [Symbol, :"response.reasoning_summary_text.delta"] The type of the event. Always `response.reasoning_summary_text.delta`. ... end end end diff --git a/lib/openai/models/responses/response_reasoning_summary_text_done_event.rb b/lib/openai/models/responses/response_reasoning_summary_text_done_event.rb index 93e8cadc..cd78cdba 100644 --- a/lib/openai/models/responses/response_reasoning_summary_text_done_event.rb +++ b/lib/openai/models/responses/response_reasoning_summary_text_done_event.rb @@ -35,13 +35,21 @@ class ResponseReasoningSummaryTextDoneEvent < OpenAI::Internal::Type::BaseModel required :type, const: :"response.reasoning_summary_text.done" # @!method initialize(item_id:, output_index:, summary_index:, text:, type: :"response.reasoning_summary_text.done") + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Responses::ResponseReasoningSummaryTextDoneEvent} for more + # details. + # # Emitted when a reasoning summary text is completed. # - # @param item_id [String] - # @param output_index [Integer] - # @param summary_index [Integer] - # @param text [String] - # @param type [Symbol, :"response.reasoning_summary_text.done"] + # @param item_id [String] The ID of the item this summary text is associated with. ... + # + # @param output_index [Integer] The index of the output item this summary text is associated with. ... + # + # @param summary_index [Integer] The index of the summary part within the reasoning summary. ... + # + # @param text [String] The full text of the completed reasoning summary. ... + # + # @param type [Symbol, :"response.reasoning_summary_text.done"] The type of the event. Always `response.reasoning_summary_text.done`. ... end end end diff --git a/lib/openai/models/responses/response_refusal_delta_event.rb b/lib/openai/models/responses/response_refusal_delta_event.rb index ea97e622..fb8d6770 100644 --- a/lib/openai/models/responses/response_refusal_delta_event.rb +++ b/lib/openai/models/responses/response_refusal_delta_event.rb @@ -35,13 +35,20 @@ class ResponseRefusalDeltaEvent < OpenAI::Internal::Type::BaseModel required :type, const: :"response.refusal.delta" # @!method initialize(content_index:, delta:, item_id:, output_index:, type: :"response.refusal.delta") + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Responses::ResponseRefusalDeltaEvent} for more details. + # # Emitted when there is a partial refusal text. # - # @param content_index [Integer] - # @param delta [String] - # @param item_id [String] - # @param output_index [Integer] - # @param type [Symbol, :"response.refusal.delta"] + # @param content_index [Integer] The index of the content part that the refusal text is added to. ... + # + # @param delta [String] The refusal text that is added. ... + # + # @param item_id [String] The ID of the output item that the refusal text is added to. ... + # + # @param output_index [Integer] The index of the output item that the refusal text is added to. ... + # + # @param type [Symbol, :"response.refusal.delta"] The type of the event. Always `response.refusal.delta`. ... end end end diff --git a/lib/openai/models/responses/response_refusal_done_event.rb b/lib/openai/models/responses/response_refusal_done_event.rb index ee7b4b55..a361e8b3 100644 --- a/lib/openai/models/responses/response_refusal_done_event.rb +++ b/lib/openai/models/responses/response_refusal_done_event.rb @@ -35,13 +35,20 @@ class ResponseRefusalDoneEvent < OpenAI::Internal::Type::BaseModel required :type, const: :"response.refusal.done" # @!method initialize(content_index:, item_id:, output_index:, refusal:, type: :"response.refusal.done") + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Responses::ResponseRefusalDoneEvent} for more details. + # # Emitted when refusal text is finalized. # - # @param content_index [Integer] - # @param item_id [String] - # @param output_index [Integer] - # @param refusal [String] - # @param type [Symbol, :"response.refusal.done"] + # @param content_index [Integer] The index of the content part that the refusal text is finalized. ... + # + # @param item_id [String] The ID of the output item that the refusal text is finalized. ... + # + # @param output_index [Integer] The index of the output item that the refusal text is finalized. ... + # + # @param refusal [String] The refusal text that is finalized. ... + # + # @param type [Symbol, :"response.refusal.done"] The type of the event. Always `response.refusal.done`. ... end end end diff --git a/lib/openai/models/responses/response_retrieve_params.rb b/lib/openai/models/responses/response_retrieve_params.rb index bb881916..e4b242f8 100644 --- a/lib/openai/models/responses/response_retrieve_params.rb +++ b/lib/openai/models/responses/response_retrieve_params.rb @@ -17,7 +17,11 @@ class ResponseRetrieveParams < OpenAI::Internal::Type::BaseModel -> { OpenAI::Internal::Type::ArrayOf[enum: OpenAI::Models::Responses::ResponseIncludable] } # @!method initialize(include: nil, request_options: {}) - # @param include [Array] + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Responses::ResponseRetrieveParams} for more details. + # + # @param include [Array] Additional fields to include in the response. See the `include` ... + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] end end diff --git a/lib/openai/models/responses/response_text_annotation_delta_event.rb b/lib/openai/models/responses/response_text_annotation_delta_event.rb index 28c8abee..063252da 100644 --- a/lib/openai/models/responses/response_text_annotation_delta_event.rb +++ b/lib/openai/models/responses/response_text_annotation_delta_event.rb @@ -42,14 +42,22 @@ class ResponseTextAnnotationDeltaEvent < OpenAI::Internal::Type::BaseModel required :type, const: :"response.output_text.annotation.added" # @!method initialize(annotation:, annotation_index:, content_index:, item_id:, output_index:, type: :"response.output_text.annotation.added") + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Responses::ResponseTextAnnotationDeltaEvent} for more details. + # # Emitted when a text annotation is added. # - # @param annotation [OpenAI::Models::Responses::ResponseTextAnnotationDeltaEvent::Annotation::FileCitation, OpenAI::Models::Responses::ResponseTextAnnotationDeltaEvent::Annotation::URLCitation, OpenAI::Models::Responses::ResponseTextAnnotationDeltaEvent::Annotation::FilePath] - # @param annotation_index [Integer] - # @param content_index [Integer] - # @param item_id [String] - # @param output_index [Integer] - # @param type [Symbol, :"response.output_text.annotation.added"] + # @param annotation [OpenAI::Models::Responses::ResponseTextAnnotationDeltaEvent::Annotation::FileCitation, OpenAI::Models::Responses::ResponseTextAnnotationDeltaEvent::Annotation::URLCitation, OpenAI::Models::Responses::ResponseTextAnnotationDeltaEvent::Annotation::FilePath] A citation to a file. ... + # + # @param annotation_index [Integer] The index of the annotation that was added. ... + # + # @param content_index [Integer] The index of the content part that the text annotation was added to. ... + # + # @param item_id [String] The ID of the output item that the text annotation was added to. ... + # + # @param output_index [Integer] The index of the output item that the text annotation was added to. ... + # + # @param type [Symbol, :"response.output_text.annotation.added"] The type of the event. Always `response.output_text.annotation.added`. ... # A citation to a file. # @@ -91,11 +99,17 @@ class FileCitation < OpenAI::Internal::Type::BaseModel required :type, const: :file_citation # @!method initialize(file_id:, index:, type: :file_citation) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Responses::ResponseTextAnnotationDeltaEvent::Annotation::FileCitation} + # for more details. + # # A citation to a file. # - # @param file_id [String] - # @param index [Integer] - # @param type [Symbol, :file_citation] + # @param file_id [String] The ID of the file. ... + # + # @param index [Integer] The index of the file in the list of files. ... + # + # @param type [Symbol, :file_citation] The type of the file citation. Always `file_citation`. ... end class URLCitation < OpenAI::Internal::Type::BaseModel @@ -130,13 +144,21 @@ class URLCitation < OpenAI::Internal::Type::BaseModel required :url, String # @!method initialize(end_index:, start_index:, title:, url:, type: :url_citation) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Responses::ResponseTextAnnotationDeltaEvent::Annotation::URLCitation} + # for more details. + # # A citation for a web resource used to generate a model response. # - # @param end_index [Integer] - # @param start_index [Integer] - # @param title [String] - # @param url [String] - # @param type [Symbol, :url_citation] + # @param end_index [Integer] The index of the last character of the URL citation in the message. ... + # + # @param start_index [Integer] The index of the first character of the URL citation in the message. ... + # + # @param title [String] The title of the web resource. ... + # + # @param url [String] The URL of the web resource. ... + # + # @param type [Symbol, :url_citation] The type of the URL citation. Always `url_citation`. ... end class FilePath < OpenAI::Internal::Type::BaseModel @@ -159,11 +181,17 @@ class FilePath < OpenAI::Internal::Type::BaseModel required :type, const: :file_path # @!method initialize(file_id:, index:, type: :file_path) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Responses::ResponseTextAnnotationDeltaEvent::Annotation::FilePath} + # for more details. + # # A path to a file. # - # @param file_id [String] - # @param index [Integer] - # @param type [Symbol, :file_path] + # @param file_id [String] The ID of the file. ... + # + # @param index [Integer] The index of the file in the list of files. ... + # + # @param type [Symbol, :file_path] The type of the file path. Always `file_path`. ... end # @!method self.variants diff --git a/lib/openai/models/responses/response_text_config.rb b/lib/openai/models/responses/response_text_config.rb index 05e2d3db..a67c6449 100644 --- a/lib/openai/models/responses/response_text_config.rb +++ b/lib/openai/models/responses/response_text_config.rb @@ -23,13 +23,16 @@ class ResponseTextConfig < OpenAI::Internal::Type::BaseModel optional :format_, union: -> { OpenAI::Models::Responses::ResponseFormatTextConfig }, api_name: :format # @!method initialize(format_: nil) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Responses::ResponseTextConfig} for more details. + # # Configuration options for a text response from the model. Can be plain text or # structured JSON data. Learn more: # # - [Text inputs and outputs](https://platform.openai.com/docs/guides/text) # - [Structured Outputs](https://platform.openai.com/docs/guides/structured-outputs) # - # @param format_ [OpenAI::Models::ResponseFormatText, OpenAI::Models::Responses::ResponseFormatTextJSONSchemaConfig, OpenAI::Models::ResponseFormatJSONObject] + # @param format_ [OpenAI::Models::ResponseFormatText, OpenAI::Models::Responses::ResponseFormatTextJSONSchemaConfig, OpenAI::Models::ResponseFormatJSONObject] An object specifying the format that the model must output. ... end end end diff --git a/lib/openai/models/responses/response_text_delta_event.rb b/lib/openai/models/responses/response_text_delta_event.rb index 9f7744b8..fce5e269 100644 --- a/lib/openai/models/responses/response_text_delta_event.rb +++ b/lib/openai/models/responses/response_text_delta_event.rb @@ -35,13 +35,20 @@ class ResponseTextDeltaEvent < OpenAI::Internal::Type::BaseModel required :type, const: :"response.output_text.delta" # @!method initialize(content_index:, delta:, item_id:, output_index:, type: :"response.output_text.delta") + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Responses::ResponseTextDeltaEvent} for more details. + # # Emitted when there is an additional text delta. # - # @param content_index [Integer] - # @param delta [String] - # @param item_id [String] - # @param output_index [Integer] - # @param type [Symbol, :"response.output_text.delta"] + # @param content_index [Integer] The index of the content part that the text delta was added to. ... + # + # @param delta [String] The text delta that was added. ... + # + # @param item_id [String] The ID of the output item that the text delta was added to. ... + # + # @param output_index [Integer] The index of the output item that the text delta was added to. ... + # + # @param type [Symbol, :"response.output_text.delta"] The type of the event. Always `response.output_text.delta`. ... end end end diff --git a/lib/openai/models/responses/response_text_done_event.rb b/lib/openai/models/responses/response_text_done_event.rb index cea42efc..15bd9abc 100644 --- a/lib/openai/models/responses/response_text_done_event.rb +++ b/lib/openai/models/responses/response_text_done_event.rb @@ -35,13 +35,20 @@ class ResponseTextDoneEvent < OpenAI::Internal::Type::BaseModel required :type, const: :"response.output_text.done" # @!method initialize(content_index:, item_id:, output_index:, text:, type: :"response.output_text.done") + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Responses::ResponseTextDoneEvent} for more details. + # # Emitted when text content is finalized. # - # @param content_index [Integer] - # @param item_id [String] - # @param output_index [Integer] - # @param text [String] - # @param type [Symbol, :"response.output_text.done"] + # @param content_index [Integer] The index of the content part that the text content is finalized. ... + # + # @param item_id [String] The ID of the output item that the text content is finalized. ... + # + # @param output_index [Integer] The index of the output item that the text content is finalized. ... + # + # @param text [String] The text content that is finalized. ... + # + # @param type [Symbol, :"response.output_text.done"] The type of the event. Always `response.output_text.done`. ... end end end diff --git a/lib/openai/models/responses/response_usage.rb b/lib/openai/models/responses/response_usage.rb index f8a7799f..93b1917a 100644 --- a/lib/openai/models/responses/response_usage.rb +++ b/lib/openai/models/responses/response_usage.rb @@ -38,11 +38,15 @@ class ResponseUsage < OpenAI::Internal::Type::BaseModel # Represents token usage details including input tokens, output tokens, a # breakdown of output tokens, and the total tokens used. # - # @param input_tokens [Integer] - # @param input_tokens_details [OpenAI::Models::Responses::ResponseUsage::InputTokensDetails] - # @param output_tokens [Integer] - # @param output_tokens_details [OpenAI::Models::Responses::ResponseUsage::OutputTokensDetails] - # @param total_tokens [Integer] + # @param input_tokens [Integer] The number of input tokens. + # + # @param input_tokens_details [OpenAI::Models::Responses::ResponseUsage::InputTokensDetails] A detailed breakdown of the input tokens. + # + # @param output_tokens [Integer] The number of output tokens. + # + # @param output_tokens_details [OpenAI::Models::Responses::ResponseUsage::OutputTokensDetails] A detailed breakdown of the output tokens. + # + # @param total_tokens [Integer] The total number of tokens used. # @see OpenAI::Models::Responses::ResponseUsage#input_tokens_details class InputTokensDetails < OpenAI::Internal::Type::BaseModel @@ -54,9 +58,12 @@ class InputTokensDetails < OpenAI::Internal::Type::BaseModel required :cached_tokens, Integer # @!method initialize(cached_tokens:) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Responses::ResponseUsage::InputTokensDetails} for more details. + # # A detailed breakdown of the input tokens. # - # @param cached_tokens [Integer] + # @param cached_tokens [Integer] The number of tokens that were retrieved from the cache. ... end # @see OpenAI::Models::Responses::ResponseUsage#output_tokens_details @@ -70,7 +77,7 @@ class OutputTokensDetails < OpenAI::Internal::Type::BaseModel # @!method initialize(reasoning_tokens:) # A detailed breakdown of the output tokens. # - # @param reasoning_tokens [Integer] + # @param reasoning_tokens [Integer] The number of reasoning tokens. end end end diff --git a/lib/openai/models/responses/response_web_search_call_completed_event.rb b/lib/openai/models/responses/response_web_search_call_completed_event.rb index 59cdab36..5a94a581 100644 --- a/lib/openai/models/responses/response_web_search_call_completed_event.rb +++ b/lib/openai/models/responses/response_web_search_call_completed_event.rb @@ -23,11 +23,17 @@ class ResponseWebSearchCallCompletedEvent < OpenAI::Internal::Type::BaseModel required :type, const: :"response.web_search_call.completed" # @!method initialize(item_id:, output_index:, type: :"response.web_search_call.completed") + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Responses::ResponseWebSearchCallCompletedEvent} for more + # details. + # # Emitted when a web search call is completed. # - # @param item_id [String] - # @param output_index [Integer] - # @param type [Symbol, :"response.web_search_call.completed"] + # @param item_id [String] Unique ID for the output item associated with the web search call. ... + # + # @param output_index [Integer] The index of the output item that the web search call is associated with. ... + # + # @param type [Symbol, :"response.web_search_call.completed"] The type of the event. Always `response.web_search_call.completed`. ... end end end diff --git a/lib/openai/models/responses/response_web_search_call_in_progress_event.rb b/lib/openai/models/responses/response_web_search_call_in_progress_event.rb index 6820c819..2c2c18c0 100644 --- a/lib/openai/models/responses/response_web_search_call_in_progress_event.rb +++ b/lib/openai/models/responses/response_web_search_call_in_progress_event.rb @@ -23,11 +23,17 @@ class ResponseWebSearchCallInProgressEvent < OpenAI::Internal::Type::BaseModel required :type, const: :"response.web_search_call.in_progress" # @!method initialize(item_id:, output_index:, type: :"response.web_search_call.in_progress") + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Responses::ResponseWebSearchCallInProgressEvent} for more + # details. + # # Emitted when a web search call is initiated. # - # @param item_id [String] - # @param output_index [Integer] - # @param type [Symbol, :"response.web_search_call.in_progress"] + # @param item_id [String] Unique ID for the output item associated with the web search call. ... + # + # @param output_index [Integer] The index of the output item that the web search call is associated with. ... + # + # @param type [Symbol, :"response.web_search_call.in_progress"] The type of the event. Always `response.web_search_call.in_progress`. ... end end end diff --git a/lib/openai/models/responses/response_web_search_call_searching_event.rb b/lib/openai/models/responses/response_web_search_call_searching_event.rb index efa04758..c23044cb 100644 --- a/lib/openai/models/responses/response_web_search_call_searching_event.rb +++ b/lib/openai/models/responses/response_web_search_call_searching_event.rb @@ -23,11 +23,17 @@ class ResponseWebSearchCallSearchingEvent < OpenAI::Internal::Type::BaseModel required :type, const: :"response.web_search_call.searching" # @!method initialize(item_id:, output_index:, type: :"response.web_search_call.searching") + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Responses::ResponseWebSearchCallSearchingEvent} for more + # details. + # # Emitted when a web search call is executing. # - # @param item_id [String] - # @param output_index [Integer] - # @param type [Symbol, :"response.web_search_call.searching"] + # @param item_id [String] Unique ID for the output item associated with the web search call. ... + # + # @param output_index [Integer] The index of the output item that the web search call is associated with. ... + # + # @param type [Symbol, :"response.web_search_call.searching"] The type of the event. Always `response.web_search_call.searching`. ... end end end diff --git a/lib/openai/models/responses/tool_choice_function.rb b/lib/openai/models/responses/tool_choice_function.rb index 47c1d3ef..67f00750 100644 --- a/lib/openai/models/responses/tool_choice_function.rb +++ b/lib/openai/models/responses/tool_choice_function.rb @@ -19,8 +19,9 @@ class ToolChoiceFunction < OpenAI::Internal::Type::BaseModel # @!method initialize(name:, type: :function) # Use this option to force the model to call a specific function. # - # @param name [String] - # @param type [Symbol, :function] + # @param name [String] The name of the function to call. + # + # @param type [Symbol, :function] For function calling, the type is always `function`. end end end diff --git a/lib/openai/models/responses/tool_choice_types.rb b/lib/openai/models/responses/tool_choice_types.rb index e51b376e..6ecec732 100644 --- a/lib/openai/models/responses/tool_choice_types.rb +++ b/lib/openai/models/responses/tool_choice_types.rb @@ -18,10 +18,13 @@ class ToolChoiceTypes < OpenAI::Internal::Type::BaseModel required :type, enum: -> { OpenAI::Models::Responses::ToolChoiceTypes::Type } # @!method initialize(type:) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Responses::ToolChoiceTypes} for more details. + # # Indicates that the model should use a built-in tool to generate a response. # [Learn more about built-in tools](https://platform.openai.com/docs/guides/tools). # - # @param type [Symbol, OpenAI::Models::Responses::ToolChoiceTypes::Type] + # @param type [Symbol, OpenAI::Models::Responses::ToolChoiceTypes::Type] The type of hosted tool the model should to use. Learn more about ... # The type of hosted tool the model should to use. Learn more about # [built-in tools](https://platform.openai.com/docs/guides/tools). diff --git a/lib/openai/models/responses/web_search_tool.rb b/lib/openai/models/responses/web_search_tool.rb index 09522f82..0885c4db 100644 --- a/lib/openai/models/responses/web_search_tool.rb +++ b/lib/openai/models/responses/web_search_tool.rb @@ -26,12 +26,17 @@ class WebSearchTool < OpenAI::Internal::Type::BaseModel optional :user_location, -> { OpenAI::Models::Responses::WebSearchTool::UserLocation }, nil?: true # @!method initialize(type:, search_context_size: nil, user_location: nil) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Responses::WebSearchTool} for more details. + # # This tool searches the web for relevant results to use in a response. Learn more # about the # [web search tool](https://platform.openai.com/docs/guides/tools-web-search). # - # @param type [Symbol, OpenAI::Models::Responses::WebSearchTool::Type] - # @param search_context_size [Symbol, OpenAI::Models::Responses::WebSearchTool::SearchContextSize] + # @param type [Symbol, OpenAI::Models::Responses::WebSearchTool::Type] The type of the web search tool. One of: ... + # + # @param search_context_size [Symbol, OpenAI::Models::Responses::WebSearchTool::SearchContextSize] High level guidance for the amount of context window space to use for the ... + # # @param user_location [OpenAI::Models::Responses::WebSearchTool::UserLocation, nil] # The type of the web search tool. One of: @@ -100,11 +105,18 @@ class UserLocation < OpenAI::Internal::Type::BaseModel optional :timezone, String # @!method initialize(city: nil, country: nil, region: nil, timezone: nil, type: :approximate) - # @param city [String] - # @param country [String] - # @param region [String] - # @param timezone [String] - # @param type [Symbol, :approximate] + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Responses::WebSearchTool::UserLocation} for more details. + # + # @param city [String] Free text input for the city of the user, e.g. `San Francisco`. ... + # + # @param country [String] The two-letter ... + # + # @param region [String] Free text input for the region of the user, e.g. `California`. ... + # + # @param timezone [String] The [IANA timezone](https://timeapi.io/documentation/iana-timezones) ... + # + # @param type [Symbol, :approximate] The type of location approximation. Always `approximate`. ... end end end diff --git a/lib/openai/models/static_file_chunking_strategy.rb b/lib/openai/models/static_file_chunking_strategy.rb index c8dc5106..46682393 100644 --- a/lib/openai/models/static_file_chunking_strategy.rb +++ b/lib/openai/models/static_file_chunking_strategy.rb @@ -19,8 +19,14 @@ class StaticFileChunkingStrategy < OpenAI::Internal::Type::BaseModel required :max_chunk_size_tokens, Integer # @!method initialize(chunk_overlap_tokens:, max_chunk_size_tokens:) - # @param chunk_overlap_tokens [Integer] - # @param max_chunk_size_tokens [Integer] + # Some parameter documentations has been truncated, see + # {OpenAI::Models::StaticFileChunkingStrategy} for more details. + # + # @param chunk_overlap_tokens [Integer] The number of tokens that overlap between chunks. The default value is `400`. + # ... + # + # @param max_chunk_size_tokens [Integer] The maximum number of tokens in each chunk. The default value is `800`. The mini + # ... end end end diff --git a/lib/openai/models/static_file_chunking_strategy_object.rb b/lib/openai/models/static_file_chunking_strategy_object.rb index 7da9cb50..68d0d88e 100644 --- a/lib/openai/models/static_file_chunking_strategy_object.rb +++ b/lib/openai/models/static_file_chunking_strategy_object.rb @@ -16,7 +16,8 @@ class StaticFileChunkingStrategyObject < OpenAI::Internal::Type::BaseModel # @!method initialize(static:, type: :static) # @param static [OpenAI::Models::StaticFileChunkingStrategy] - # @param type [Symbol, :static] + # + # @param type [Symbol, :static] Always `static`. end end end diff --git a/lib/openai/models/static_file_chunking_strategy_object_param.rb b/lib/openai/models/static_file_chunking_strategy_object_param.rb index b0d5a5b6..f37c6aa6 100644 --- a/lib/openai/models/static_file_chunking_strategy_object_param.rb +++ b/lib/openai/models/static_file_chunking_strategy_object_param.rb @@ -18,7 +18,8 @@ class StaticFileChunkingStrategyObjectParam < OpenAI::Internal::Type::BaseModel # Customize your own chunking strategy by setting chunk size and chunk overlap. # # @param static [OpenAI::Models::StaticFileChunkingStrategy] - # @param type [Symbol, :static] + # + # @param type [Symbol, :static] Always `static`. end end end diff --git a/lib/openai/models/upload.rb b/lib/openai/models/upload.rb index 53ae0a23..39d5043e 100644 --- a/lib/openai/models/upload.rb +++ b/lib/openai/models/upload.rb @@ -61,17 +61,29 @@ class Upload < OpenAI::Internal::Type::BaseModel optional :file, -> { OpenAI::Models::FileObject }, nil?: true # @!method initialize(id:, bytes:, created_at:, expires_at:, filename:, purpose:, status:, file: nil, object: :upload) + # Some parameter documentations has been truncated, see {OpenAI::Models::Upload} + # for more details. + # # The Upload object can accept byte chunks in the form of Parts. # - # @param id [String] - # @param bytes [Integer] - # @param created_at [Integer] - # @param expires_at [Integer] - # @param filename [String] - # @param purpose [String] - # @param status [Symbol, OpenAI::Models::Upload::Status] - # @param file [OpenAI::Models::FileObject, nil] - # @param object [Symbol, :upload] + # @param id [String] The Upload unique identifier, which can be referenced in API endpoints. + # + # @param bytes [Integer] The intended number of bytes to be uploaded. + # + # @param created_at [Integer] The Unix timestamp (in seconds) for when the Upload was created. + # + # @param expires_at [Integer] The Unix timestamp (in seconds) for when the Upload will expire. + # + # @param filename [String] The name of the file to be uploaded. + # + # @param purpose [String] The intended purpose of the file. [Please refer here](https://platform.openai.co + # ... + # + # @param status [Symbol, OpenAI::Models::Upload::Status] The status of the Upload. + # + # @param file [OpenAI::Models::FileObject, nil] The `File` object represents a document that has been uploaded to OpenAI. + # + # @param object [Symbol, :upload] The object type, which is always "upload". # The status of the Upload. # diff --git a/lib/openai/models/upload_complete_params.rb b/lib/openai/models/upload_complete_params.rb index b978c7a2..3c898f46 100644 --- a/lib/openai/models/upload_complete_params.rb +++ b/lib/openai/models/upload_complete_params.rb @@ -21,8 +21,14 @@ class UploadCompleteParams < OpenAI::Internal::Type::BaseModel optional :md5, String # @!method initialize(part_ids:, md5: nil, request_options: {}) - # @param part_ids [Array] - # @param md5 [String] + # Some parameter documentations has been truncated, see + # {OpenAI::Models::UploadCompleteParams} for more details. + # + # @param part_ids [Array] The ordered list of Part IDs. ... + # + # @param md5 [String] The optional md5 checksum for the file contents to verify if the bytes uploaded + # ... + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] end end diff --git a/lib/openai/models/upload_create_params.rb b/lib/openai/models/upload_create_params.rb index afa6ec61..cafa9448 100644 --- a/lib/openai/models/upload_create_params.rb +++ b/lib/openai/models/upload_create_params.rb @@ -38,10 +38,17 @@ class UploadCreateParams < OpenAI::Internal::Type::BaseModel required :purpose, enum: -> { OpenAI::Models::FilePurpose } # @!method initialize(bytes:, filename:, mime_type:, purpose:, request_options: {}) - # @param bytes [Integer] - # @param filename [String] - # @param mime_type [String] - # @param purpose [Symbol, OpenAI::Models::FilePurpose] + # Some parameter documentations has been truncated, see + # {OpenAI::Models::UploadCreateParams} for more details. + # + # @param bytes [Integer] The number of bytes in the file you are uploading. ... + # + # @param filename [String] The name of the file to upload. ... + # + # @param mime_type [String] The MIME type of the file. ... + # + # @param purpose [Symbol, OpenAI::Models::FilePurpose] The intended purpose of the uploaded file. ... + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] end end diff --git a/lib/openai/models/uploads/part_create_params.rb b/lib/openai/models/uploads/part_create_params.rb index 9294e4c0..d4e1d7bf 100644 --- a/lib/openai/models/uploads/part_create_params.rb +++ b/lib/openai/models/uploads/part_create_params.rb @@ -15,7 +15,11 @@ class PartCreateParams < OpenAI::Internal::Type::BaseModel required :data, OpenAI::Internal::Type::IOLike # @!method initialize(data:, request_options: {}) - # @param data [Pathname, StringIO] + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Uploads::PartCreateParams} for more details. + # + # @param data [Pathname, StringIO] The chunk of bytes for this Part. ... + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] end end diff --git a/lib/openai/models/uploads/upload_part.rb b/lib/openai/models/uploads/upload_part.rb index fa189119..f0b61875 100644 --- a/lib/openai/models/uploads/upload_part.rb +++ b/lib/openai/models/uploads/upload_part.rb @@ -32,10 +32,13 @@ class UploadPart < OpenAI::Internal::Type::BaseModel # @!method initialize(id:, created_at:, upload_id:, object: :"upload.part") # The upload Part represents a chunk of bytes we can add to an Upload object. # - # @param id [String] - # @param created_at [Integer] - # @param upload_id [String] - # @param object [Symbol, :"upload.part"] + # @param id [String] The upload Part unique identifier, which can be referenced in API endpoints. + # + # @param created_at [Integer] The Unix timestamp (in seconds) for when the Part was created. + # + # @param upload_id [String] The ID of the Upload object that this Part was added to. + # + # @param object [Symbol, :"upload.part"] The object type, which is always `upload.part`. end end diff --git a/lib/openai/models/vector_store.rb b/lib/openai/models/vector_store.rb index 3db76e67..285ac28c 100644 --- a/lib/openai/models/vector_store.rb +++ b/lib/openai/models/vector_store.rb @@ -77,20 +77,34 @@ class VectorStore < OpenAI::Internal::Type::BaseModel optional :expires_at, Integer, nil?: true # @!method initialize(id:, created_at:, file_counts:, last_active_at:, metadata:, name:, status:, usage_bytes:, expires_after: nil, expires_at: nil, object: :vector_store) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::VectorStore} for more details. + # # A vector store is a collection of processed files can be used by the # `file_search` tool. # - # @param id [String] - # @param created_at [Integer] + # @param id [String] The identifier, which can be referenced in API endpoints. + # + # @param created_at [Integer] The Unix timestamp (in seconds) for when the vector store was created. + # # @param file_counts [OpenAI::Models::VectorStore::FileCounts] - # @param last_active_at [Integer, nil] - # @param metadata [Hash{Symbol=>String}, nil] - # @param name [String] - # @param status [Symbol, OpenAI::Models::VectorStore::Status] - # @param usage_bytes [Integer] - # @param expires_after [OpenAI::Models::VectorStore::ExpiresAfter] - # @param expires_at [Integer, nil] - # @param object [Symbol, :vector_store] + # + # @param last_active_at [Integer, nil] The Unix timestamp (in seconds) for when the vector store was last active. + # + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # + # @param name [String] The name of the vector store. + # + # @param status [Symbol, OpenAI::Models::VectorStore::Status] The status of the vector store, which can be either `expired`, `in_progress`, or + # ... + # + # @param usage_bytes [Integer] The total number of bytes used by the files in the vector store. + # + # @param expires_after [OpenAI::Models::VectorStore::ExpiresAfter] The expiration policy for a vector store. + # + # @param expires_at [Integer, nil] The Unix timestamp (in seconds) for when the vector store will expire. + # + # @param object [Symbol, :vector_store] The object type, which is always `vector_store`. # @see OpenAI::Models::VectorStore#file_counts class FileCounts < OpenAI::Internal::Type::BaseModel @@ -125,11 +139,15 @@ class FileCounts < OpenAI::Internal::Type::BaseModel required :total, Integer # @!method initialize(cancelled:, completed:, failed:, in_progress:, total:) - # @param cancelled [Integer] - # @param completed [Integer] - # @param failed [Integer] - # @param in_progress [Integer] - # @param total [Integer] + # @param cancelled [Integer] The number of files that were cancelled. + # + # @param completed [Integer] The number of files that have been successfully processed. + # + # @param failed [Integer] The number of files that have failed to process. + # + # @param in_progress [Integer] The number of files that are currently being processed. + # + # @param total [Integer] The total number of files. end # The status of the vector store, which can be either `expired`, `in_progress`, or @@ -164,10 +182,15 @@ class ExpiresAfter < OpenAI::Internal::Type::BaseModel required :days, Integer # @!method initialize(days:, anchor: :last_active_at) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::VectorStore::ExpiresAfter} for more details. + # # The expiration policy for a vector store. # - # @param days [Integer] - # @param anchor [Symbol, :last_active_at] + # @param days [Integer] The number of days after the anchor time that the vector store will expire. + # + # @param anchor [Symbol, :last_active_at] Anchor timestamp after which the expiration policy applies. Supported anchors: ` + # ... end end end diff --git a/lib/openai/models/vector_store_create_params.rb b/lib/openai/models/vector_store_create_params.rb index 30eb84d9..acbd89a2 100644 --- a/lib/openai/models/vector_store_create_params.rb +++ b/lib/openai/models/vector_store_create_params.rb @@ -46,11 +46,21 @@ class VectorStoreCreateParams < OpenAI::Internal::Type::BaseModel optional :name, String # @!method initialize(chunking_strategy: nil, expires_after: nil, file_ids: nil, metadata: nil, name: nil, request_options: {}) - # @param chunking_strategy [OpenAI::Models::AutoFileChunkingStrategyParam, OpenAI::Models::StaticFileChunkingStrategyObjectParam] - # @param expires_after [OpenAI::Models::VectorStoreCreateParams::ExpiresAfter] - # @param file_ids [Array] - # @param metadata [Hash{Symbol=>String}, nil] - # @param name [String] + # Some parameter documentations has been truncated, see + # {OpenAI::Models::VectorStoreCreateParams} for more details. + # + # @param chunking_strategy [OpenAI::Models::AutoFileChunkingStrategyParam, OpenAI::Models::StaticFileChunkingStrategyObjectParam] The chunking strategy used to chunk the file(s). If not set, will use the `auto` + # ... + # + # @param expires_after [OpenAI::Models::VectorStoreCreateParams::ExpiresAfter] The expiration policy for a vector store. + # + # @param file_ids [Array] A list of [File](https://platform.openai.com/docs/api-reference/files) IDs that + # ... + # + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # + # @param name [String] The name of the vector store. + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] class ExpiresAfter < OpenAI::Internal::Type::BaseModel @@ -68,10 +78,15 @@ class ExpiresAfter < OpenAI::Internal::Type::BaseModel required :days, Integer # @!method initialize(days:, anchor: :last_active_at) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::VectorStoreCreateParams::ExpiresAfter} for more details. + # # The expiration policy for a vector store. # - # @param days [Integer] - # @param anchor [Symbol, :last_active_at] + # @param days [Integer] The number of days after the anchor time that the vector store will expire. + # + # @param anchor [Symbol, :last_active_at] Anchor timestamp after which the expiration policy applies. Supported anchors: ` + # ... end end end diff --git a/lib/openai/models/vector_store_list_params.rb b/lib/openai/models/vector_store_list_params.rb index caa16c07..9a7d787d 100644 --- a/lib/openai/models/vector_store_list_params.rb +++ b/lib/openai/models/vector_store_list_params.rb @@ -40,10 +40,21 @@ class VectorStoreListParams < OpenAI::Internal::Type::BaseModel optional :order, enum: -> { OpenAI::Models::VectorStoreListParams::Order } # @!method initialize(after: nil, before: nil, limit: nil, order: nil, request_options: {}) - # @param after [String] - # @param before [String] - # @param limit [Integer] - # @param order [Symbol, OpenAI::Models::VectorStoreListParams::Order] + # Some parameter documentations has been truncated, see + # {OpenAI::Models::VectorStoreListParams} for more details. + # + # @param after [String] A cursor for use in pagination. `after` is an object ID that defines your place + # ... + # + # @param before [String] A cursor for use in pagination. `before` is an object ID that defines your place + # ... + # + # @param limit [Integer] A limit on the number of objects to be returned. Limit can range between 1 and 1 + # ... + # + # @param order [Symbol, OpenAI::Models::VectorStoreListParams::Order] Sort order by the `created_at` timestamp of the objects. `asc` for ascending ord + # ... + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] # Sort order by the `created_at` timestamp of the objects. `asc` for ascending diff --git a/lib/openai/models/vector_store_search_params.rb b/lib/openai/models/vector_store_search_params.rb index 808daadb..5eaa270d 100644 --- a/lib/openai/models/vector_store_search_params.rb +++ b/lib/openai/models/vector_store_search_params.rb @@ -39,11 +39,20 @@ class VectorStoreSearchParams < OpenAI::Internal::Type::BaseModel optional :rewrite_query, OpenAI::Internal::Type::Boolean # @!method initialize(query:, filters: nil, max_num_results: nil, ranking_options: nil, rewrite_query: nil, request_options: {}) - # @param query [String, Array] - # @param filters [OpenAI::Models::ComparisonFilter, OpenAI::Models::CompoundFilter] - # @param max_num_results [Integer] - # @param ranking_options [OpenAI::Models::VectorStoreSearchParams::RankingOptions] - # @param rewrite_query [Boolean] + # Some parameter documentations has been truncated, see + # {OpenAI::Models::VectorStoreSearchParams} for more details. + # + # @param query [String, Array] A query string for a search + # + # @param filters [OpenAI::Models::ComparisonFilter, OpenAI::Models::CompoundFilter] A filter to apply based on file attributes. + # + # @param max_num_results [Integer] The maximum number of results to return. This number should be between 1 and 50 + # ... + # + # @param ranking_options [OpenAI::Models::VectorStoreSearchParams::RankingOptions] Ranking options for search. + # + # @param rewrite_query [Boolean] Whether to rewrite the natural language query for vector search. + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] # A query string for a search diff --git a/lib/openai/models/vector_store_search_response.rb b/lib/openai/models/vector_store_search_response.rb index d06a0c95..75e2fdb5 100644 --- a/lib/openai/models/vector_store_search_response.rb +++ b/lib/openai/models/vector_store_search_response.rb @@ -42,11 +42,18 @@ class VectorStoreSearchResponse < OpenAI::Internal::Type::BaseModel required :score, Float # @!method initialize(attributes:, content:, file_id:, filename:, score:) - # @param attributes [Hash{Symbol=>String, Float, Boolean}, nil] - # @param content [Array] - # @param file_id [String] - # @param filename [String] - # @param score [Float] + # Some parameter documentations has been truncated, see + # {OpenAI::Models::VectorStoreSearchResponse} for more details. + # + # @param attributes [Hash{Symbol=>String, Float, Boolean}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # + # @param content [Array] Content chunks from the file. + # + # @param file_id [String] The ID of the vector store file. + # + # @param filename [String] The name of the vector store file. + # + # @param score [Float] The similarity score for the result. module Attribute extend OpenAI::Internal::Type::Union @@ -75,8 +82,9 @@ class Content < OpenAI::Internal::Type::BaseModel required :type, enum: -> { OpenAI::Models::VectorStoreSearchResponse::Content::Type } # @!method initialize(text:, type:) - # @param text [String] - # @param type [Symbol, OpenAI::Models::VectorStoreSearchResponse::Content::Type] + # @param text [String] The text content returned from search. + # + # @param type [Symbol, OpenAI::Models::VectorStoreSearchResponse::Content::Type] The type of content. # The type of content. # diff --git a/lib/openai/models/vector_store_update_params.rb b/lib/openai/models/vector_store_update_params.rb index 91eafa78..b7d6bd13 100644 --- a/lib/openai/models/vector_store_update_params.rb +++ b/lib/openai/models/vector_store_update_params.rb @@ -31,9 +31,15 @@ class VectorStoreUpdateParams < OpenAI::Internal::Type::BaseModel optional :name, String, nil?: true # @!method initialize(expires_after: nil, metadata: nil, name: nil, request_options: {}) - # @param expires_after [OpenAI::Models::VectorStoreUpdateParams::ExpiresAfter, nil] - # @param metadata [Hash{Symbol=>String}, nil] - # @param name [String, nil] + # Some parameter documentations has been truncated, see + # {OpenAI::Models::VectorStoreUpdateParams} for more details. + # + # @param expires_after [OpenAI::Models::VectorStoreUpdateParams::ExpiresAfter, nil] The expiration policy for a vector store. + # + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # + # @param name [String, nil] The name of the vector store. + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] class ExpiresAfter < OpenAI::Internal::Type::BaseModel @@ -51,10 +57,15 @@ class ExpiresAfter < OpenAI::Internal::Type::BaseModel required :days, Integer # @!method initialize(days:, anchor: :last_active_at) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::VectorStoreUpdateParams::ExpiresAfter} for more details. + # # The expiration policy for a vector store. # - # @param days [Integer] - # @param anchor [Symbol, :last_active_at] + # @param days [Integer] The number of days after the anchor time that the vector store will expire. + # + # @param anchor [Symbol, :last_active_at] Anchor timestamp after which the expiration policy applies. Supported anchors: ` + # ... end end end diff --git a/lib/openai/models/vector_stores/file_batch_create_params.rb b/lib/openai/models/vector_stores/file_batch_create_params.rb index 9a873239..fba3d18a 100644 --- a/lib/openai/models/vector_stores/file_batch_create_params.rb +++ b/lib/openai/models/vector_stores/file_batch_create_params.rb @@ -36,9 +36,17 @@ class FileBatchCreateParams < OpenAI::Internal::Type::BaseModel optional :chunking_strategy, union: -> { OpenAI::Models::FileChunkingStrategyParam } # @!method initialize(file_ids:, attributes: nil, chunking_strategy: nil, request_options: {}) - # @param file_ids [Array] - # @param attributes [Hash{Symbol=>String, Float, Boolean}, nil] - # @param chunking_strategy [OpenAI::Models::AutoFileChunkingStrategyParam, OpenAI::Models::StaticFileChunkingStrategyObjectParam] + # Some parameter documentations has been truncated, see + # {OpenAI::Models::VectorStores::FileBatchCreateParams} for more details. + # + # @param file_ids [Array] A list of [File](https://platform.openai.com/docs/api-reference/files) IDs that + # ... + # + # @param attributes [Hash{Symbol=>String, Float, Boolean}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # + # @param chunking_strategy [OpenAI::Models::AutoFileChunkingStrategyParam, OpenAI::Models::StaticFileChunkingStrategyObjectParam] The chunking strategy used to chunk the file(s). If not set, will use the `auto` + # ... + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] module Attribute diff --git a/lib/openai/models/vector_stores/file_batch_list_files_params.rb b/lib/openai/models/vector_stores/file_batch_list_files_params.rb index 543b49c7..fc97c2c0 100644 --- a/lib/openai/models/vector_stores/file_batch_list_files_params.rb +++ b/lib/openai/models/vector_stores/file_batch_list_files_params.rb @@ -52,12 +52,26 @@ class FileBatchListFilesParams < OpenAI::Internal::Type::BaseModel optional :order, enum: -> { OpenAI::Models::VectorStores::FileBatchListFilesParams::Order } # @!method initialize(vector_store_id:, after: nil, before: nil, filter: nil, limit: nil, order: nil, request_options: {}) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::VectorStores::FileBatchListFilesParams} for more details. + # # @param vector_store_id [String] - # @param after [String] - # @param before [String] - # @param filter [Symbol, OpenAI::Models::VectorStores::FileBatchListFilesParams::Filter] - # @param limit [Integer] - # @param order [Symbol, OpenAI::Models::VectorStores::FileBatchListFilesParams::Order] + # + # @param after [String] A cursor for use in pagination. `after` is an object ID that defines your place + # ... + # + # @param before [String] A cursor for use in pagination. `before` is an object ID that defines your place + # ... + # + # @param filter [Symbol, OpenAI::Models::VectorStores::FileBatchListFilesParams::Filter] Filter by file status. One of `in_progress`, `completed`, `failed`, `cancelled`. + # ... + # + # @param limit [Integer] A limit on the number of objects to be returned. Limit can range between 1 and 1 + # ... + # + # @param order [Symbol, OpenAI::Models::VectorStores::FileBatchListFilesParams::Order] Sort order by the `created_at` timestamp of the objects. `asc` for ascending ord + # ... + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] # Filter by file status. One of `in_progress`, `completed`, `failed`, `cancelled`. diff --git a/lib/openai/models/vector_stores/file_content_response.rb b/lib/openai/models/vector_stores/file_content_response.rb index 094dcbfb..8c9f595a 100644 --- a/lib/openai/models/vector_stores/file_content_response.rb +++ b/lib/openai/models/vector_stores/file_content_response.rb @@ -18,8 +18,9 @@ class FileContentResponse < OpenAI::Internal::Type::BaseModel optional :type, String # @!method initialize(text: nil, type: nil) - # @param text [String] - # @param type [String] + # @param text [String] The text content + # + # @param type [String] The content type (currently only `"text"`) end end end diff --git a/lib/openai/models/vector_stores/file_create_params.rb b/lib/openai/models/vector_stores/file_create_params.rb index 2d0fc3ea..d5e71148 100644 --- a/lib/openai/models/vector_stores/file_create_params.rb +++ b/lib/openai/models/vector_stores/file_create_params.rb @@ -36,9 +36,17 @@ class FileCreateParams < OpenAI::Internal::Type::BaseModel optional :chunking_strategy, union: -> { OpenAI::Models::FileChunkingStrategyParam } # @!method initialize(file_id:, attributes: nil, chunking_strategy: nil, request_options: {}) - # @param file_id [String] - # @param attributes [Hash{Symbol=>String, Float, Boolean}, nil] - # @param chunking_strategy [OpenAI::Models::AutoFileChunkingStrategyParam, OpenAI::Models::StaticFileChunkingStrategyObjectParam] + # Some parameter documentations has been truncated, see + # {OpenAI::Models::VectorStores::FileCreateParams} for more details. + # + # @param file_id [String] A [File](https://platform.openai.com/docs/api-reference/files) ID that the vecto + # ... + # + # @param attributes [Hash{Symbol=>String, Float, Boolean}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # + # @param chunking_strategy [OpenAI::Models::AutoFileChunkingStrategyParam, OpenAI::Models::StaticFileChunkingStrategyObjectParam] The chunking strategy used to chunk the file(s). If not set, will use the `auto` + # ... + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] module Attribute diff --git a/lib/openai/models/vector_stores/file_list_params.rb b/lib/openai/models/vector_stores/file_list_params.rb index 551d5a17..55dd58ce 100644 --- a/lib/openai/models/vector_stores/file_list_params.rb +++ b/lib/openai/models/vector_stores/file_list_params.rb @@ -47,11 +47,24 @@ class FileListParams < OpenAI::Internal::Type::BaseModel optional :order, enum: -> { OpenAI::Models::VectorStores::FileListParams::Order } # @!method initialize(after: nil, before: nil, filter: nil, limit: nil, order: nil, request_options: {}) - # @param after [String] - # @param before [String] - # @param filter [Symbol, OpenAI::Models::VectorStores::FileListParams::Filter] - # @param limit [Integer] - # @param order [Symbol, OpenAI::Models::VectorStores::FileListParams::Order] + # Some parameter documentations has been truncated, see + # {OpenAI::Models::VectorStores::FileListParams} for more details. + # + # @param after [String] A cursor for use in pagination. `after` is an object ID that defines your place + # ... + # + # @param before [String] A cursor for use in pagination. `before` is an object ID that defines your place + # ... + # + # @param filter [Symbol, OpenAI::Models::VectorStores::FileListParams::Filter] Filter by file status. One of `in_progress`, `completed`, `failed`, `cancelled`. + # ... + # + # @param limit [Integer] A limit on the number of objects to be returned. Limit can range between 1 and 1 + # ... + # + # @param order [Symbol, OpenAI::Models::VectorStores::FileListParams::Order] Sort order by the `created_at` timestamp of the objects. `asc` for ascending ord + # ... + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] # Filter by file status. One of `in_progress`, `completed`, `failed`, `cancelled`. diff --git a/lib/openai/models/vector_stores/file_update_params.rb b/lib/openai/models/vector_stores/file_update_params.rb index f054fa7a..cb4600bd 100644 --- a/lib/openai/models/vector_stores/file_update_params.rb +++ b/lib/openai/models/vector_stores/file_update_params.rb @@ -26,8 +26,13 @@ class FileUpdateParams < OpenAI::Internal::Type::BaseModel nil?: true # @!method initialize(vector_store_id:, attributes:, request_options: {}) + # Some parameter documentations has been truncated, see + # {OpenAI::Models::VectorStores::FileUpdateParams} for more details. + # # @param vector_store_id [String] - # @param attributes [Hash{Symbol=>String, Float, Boolean}, nil] + # + # @param attributes [Hash{Symbol=>String, Float, Boolean}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] module Attribute diff --git a/lib/openai/models/vector_stores/vector_store_file.rb b/lib/openai/models/vector_stores/vector_store_file.rb index 4891ed5a..66754ed9 100644 --- a/lib/openai/models/vector_stores/vector_store_file.rb +++ b/lib/openai/models/vector_stores/vector_store_file.rb @@ -73,17 +73,32 @@ class VectorStoreFile < OpenAI::Internal::Type::BaseModel optional :chunking_strategy, union: -> { OpenAI::Models::FileChunkingStrategy } # @!method initialize(id:, created_at:, last_error:, status:, usage_bytes:, vector_store_id:, attributes: nil, chunking_strategy: nil, object: :"vector_store.file") + # Some parameter documentations has been truncated, see + # {OpenAI::Models::VectorStores::VectorStoreFile} for more details. + # # A list of files attached to a vector store. # - # @param id [String] - # @param created_at [Integer] - # @param last_error [OpenAI::Models::VectorStores::VectorStoreFile::LastError, nil] - # @param status [Symbol, OpenAI::Models::VectorStores::VectorStoreFile::Status] - # @param usage_bytes [Integer] - # @param vector_store_id [String] - # @param attributes [Hash{Symbol=>String, Float, Boolean}, nil] - # @param chunking_strategy [OpenAI::Models::StaticFileChunkingStrategyObject, OpenAI::Models::OtherFileChunkingStrategyObject] - # @param object [Symbol, :"vector_store.file"] + # @param id [String] The identifier, which can be referenced in API endpoints. + # + # @param created_at [Integer] The Unix timestamp (in seconds) for when the vector store file was created. + # + # @param last_error [OpenAI::Models::VectorStores::VectorStoreFile::LastError, nil] The last error associated with this vector store file. Will be `null` if there a + # ... + # + # @param status [Symbol, OpenAI::Models::VectorStores::VectorStoreFile::Status] The status of the vector store file, which can be either `in_progress`, `complet + # ... + # + # @param usage_bytes [Integer] The total vector store usage in bytes. Note that this may be different from the + # ... + # + # @param vector_store_id [String] The ID of the [vector store](https://platform.openai.com/docs/api-reference/vect + # ... + # + # @param attributes [Hash{Symbol=>String, Float, Boolean}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # + # @param chunking_strategy [OpenAI::Models::StaticFileChunkingStrategyObject, OpenAI::Models::OtherFileChunkingStrategyObject] The strategy used to chunk the file. + # + # @param object [Symbol, :"vector_store.file"] The object type, which is always `vector_store.file`. # @see OpenAI::Models::VectorStores::VectorStoreFile#last_error class LastError < OpenAI::Internal::Type::BaseModel @@ -103,8 +118,9 @@ class LastError < OpenAI::Internal::Type::BaseModel # The last error associated with this vector store file. Will be `null` if there # are no errors. # - # @param code [Symbol, OpenAI::Models::VectorStores::VectorStoreFile::LastError::Code] - # @param message [String] + # @param code [Symbol, OpenAI::Models::VectorStores::VectorStoreFile::LastError::Code] One of `server_error` or `rate_limit_exceeded`. + # + # @param message [String] A human-readable description of the error. # One of `server_error` or `rate_limit_exceeded`. # diff --git a/lib/openai/models/vector_stores/vector_store_file_batch.rb b/lib/openai/models/vector_stores/vector_store_file_batch.rb index ee7fb5ea..86d56390 100644 --- a/lib/openai/models/vector_stores/vector_store_file_batch.rb +++ b/lib/openai/models/vector_stores/vector_store_file_batch.rb @@ -46,14 +46,25 @@ class VectorStoreFileBatch < OpenAI::Internal::Type::BaseModel required :vector_store_id, String # @!method initialize(id:, created_at:, file_counts:, status:, vector_store_id:, object: :"vector_store.files_batch") + # Some parameter documentations has been truncated, see + # {OpenAI::Models::VectorStores::VectorStoreFileBatch} for more details. + # # A batch of files attached to a vector store. # - # @param id [String] - # @param created_at [Integer] + # @param id [String] The identifier, which can be referenced in API endpoints. + # + # @param created_at [Integer] The Unix timestamp (in seconds) for when the vector store files batch was create + # ... + # # @param file_counts [OpenAI::Models::VectorStores::VectorStoreFileBatch::FileCounts] - # @param status [Symbol, OpenAI::Models::VectorStores::VectorStoreFileBatch::Status] - # @param vector_store_id [String] - # @param object [Symbol, :"vector_store.files_batch"] + # + # @param status [Symbol, OpenAI::Models::VectorStores::VectorStoreFileBatch::Status] The status of the vector store files batch, which can be either `in_progress`, ` + # ... + # + # @param vector_store_id [String] The ID of the [vector store](https://platform.openai.com/docs/api-reference/vect + # ... + # + # @param object [Symbol, :"vector_store.files_batch"] The object type, which is always `vector_store.file_batch`. # @see OpenAI::Models::VectorStores::VectorStoreFileBatch#file_counts class FileCounts < OpenAI::Internal::Type::BaseModel @@ -88,11 +99,15 @@ class FileCounts < OpenAI::Internal::Type::BaseModel required :total, Integer # @!method initialize(cancelled:, completed:, failed:, in_progress:, total:) - # @param cancelled [Integer] - # @param completed [Integer] - # @param failed [Integer] - # @param in_progress [Integer] - # @param total [Integer] + # @param cancelled [Integer] The number of files that where cancelled. + # + # @param completed [Integer] The number of files that have been processed. + # + # @param failed [Integer] The number of files that have failed to process. + # + # @param in_progress [Integer] The number of files that are currently being processed. + # + # @param total [Integer] The total number of files. end # The status of the vector store files batch, which can be either `in_progress`, diff --git a/lib/openai/resources/audio/speech.rb b/lib/openai/resources/audio/speech.rb index 6a31ca99..cd1044ab 100644 --- a/lib/openai/resources/audio/speech.rb +++ b/lib/openai/resources/audio/speech.rb @@ -4,16 +4,30 @@ module OpenAI module Resources class Audio class Speech + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Audio::SpeechCreateParams} for more details. + # # Generates audio from the input text. # # @overload create(input:, model:, voice:, instructions: nil, response_format: nil, speed: nil, request_options: {}) # - # @param input [String] - # @param model [String, Symbol, OpenAI::Models::Audio::SpeechModel] - # @param voice [String, Symbol, OpenAI::Models::Audio::SpeechCreateParams::Voice] - # @param instructions [String] - # @param response_format [Symbol, OpenAI::Models::Audio::SpeechCreateParams::ResponseFormat] - # @param speed [Float] + # @param input [String] The text to generate audio for. The maximum length is 4096 characters. + # + # @param model [String, Symbol, OpenAI::Models::Audio::SpeechModel] One of the available [TTS models](https://platform.openai.com/docs/models#tts): + # ... + # + # @param voice [String, Symbol, OpenAI::Models::Audio::SpeechCreateParams::Voice] The voice to use when generating the audio. Supported voices are `alloy`, `ash`, + # ... + # + # @param instructions [String] Control the voice of your generated audio with additional instructions. Does not + # ... + # + # @param response_format [Symbol, OpenAI::Models::Audio::SpeechCreateParams::ResponseFormat] The format to audio in. Supported formats are `mp3`, `opus`, `aac`, `flac`, `wav + # ... + # + # @param speed [Float] The speed of the generated audio. Select a value from `0.25` to `4.0`. `1.0` is + # ... + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [StringIO] diff --git a/lib/openai/resources/audio/transcriptions.rb b/lib/openai/resources/audio/transcriptions.rb index bdde1310..d7f5de3e 100644 --- a/lib/openai/resources/audio/transcriptions.rb +++ b/lib/openai/resources/audio/transcriptions.rb @@ -7,18 +7,36 @@ class Transcriptions # See {OpenAI::Resources::Audio::Transcriptions#create_streaming} for streaming # counterpart. # + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Audio::TranscriptionCreateParams} for more details. + # # Transcribes audio into the input language. # # @overload create(file:, model:, include: nil, language: nil, prompt: nil, response_format: nil, temperature: nil, timestamp_granularities: nil, request_options: {}) # - # @param file [Pathname, StringIO] - # @param model [String, Symbol, OpenAI::Models::AudioModel] - # @param include [Array] - # @param language [String] - # @param prompt [String] - # @param response_format [Symbol, OpenAI::Models::AudioResponseFormat] - # @param temperature [Float] - # @param timestamp_granularities [Array] + # @param file [Pathname, StringIO] The audio file object (not file name) to transcribe, in one of these formats: fl + # ... + # + # @param model [String, Symbol, OpenAI::Models::AudioModel] ID of the model to use. The options are `gpt-4o-transcribe`, `gpt-4o-mini-transc + # ... + # + # @param include [Array] Additional information to include in the transcription response. ... + # + # @param language [String] The language of the input audio. Supplying the input language in [ISO-639-1](htt + # ... + # + # @param prompt [String] An optional text to guide the model's style or continue a previous audio segment + # ... + # + # @param response_format [Symbol, OpenAI::Models::AudioResponseFormat] The format of the output, in one of these options: `json`, `text`, `srt`, `verbo + # ... + # + # @param temperature [Float] The sampling temperature, between 0 and 1. Higher values like 0.8 will make the + # ... + # + # @param timestamp_granularities [Array] The timestamp granularities to populate for this transcription. `response_format + # ... + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [OpenAI::Models::Audio::Transcription, OpenAI::Models::Audio::TranscriptionVerbose] @@ -43,18 +61,36 @@ def create(params) # See {OpenAI::Resources::Audio::Transcriptions#create} for non-streaming # counterpart. # + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Audio::TranscriptionCreateParams} for more details. + # # Transcribes audio into the input language. # # @overload create_streaming(file:, model:, include: nil, language: nil, prompt: nil, response_format: nil, temperature: nil, timestamp_granularities: nil, request_options: {}) # - # @param file [Pathname, StringIO] - # @param model [String, Symbol, OpenAI::Models::AudioModel] - # @param include [Array] - # @param language [String] - # @param prompt [String] - # @param response_format [Symbol, OpenAI::Models::AudioResponseFormat] - # @param temperature [Float] - # @param timestamp_granularities [Array] + # @param file [Pathname, StringIO] The audio file object (not file name) to transcribe, in one of these formats: fl + # ... + # + # @param model [String, Symbol, OpenAI::Models::AudioModel] ID of the model to use. The options are `gpt-4o-transcribe`, `gpt-4o-mini-transc + # ... + # + # @param include [Array] Additional information to include in the transcription response. ... + # + # @param language [String] The language of the input audio. Supplying the input language in [ISO-639-1](htt + # ... + # + # @param prompt [String] An optional text to guide the model's style or continue a previous audio segment + # ... + # + # @param response_format [Symbol, OpenAI::Models::AudioResponseFormat] The format of the output, in one of these options: `json`, `text`, `srt`, `verbo + # ... + # + # @param temperature [Float] The sampling temperature, between 0 and 1. Higher values like 0.8 will make the + # ... + # + # @param timestamp_granularities [Array] The timestamp granularities to populate for this transcription. `response_format + # ... + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [OpenAI::Internal::Stream] diff --git a/lib/openai/resources/audio/translations.rb b/lib/openai/resources/audio/translations.rb index 418e58af..d52be7ea 100644 --- a/lib/openai/resources/audio/translations.rb +++ b/lib/openai/resources/audio/translations.rb @@ -4,15 +4,28 @@ module OpenAI module Resources class Audio class Translations + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Audio::TranslationCreateParams} for more details. + # # Translates audio into English. # # @overload create(file:, model:, prompt: nil, response_format: nil, temperature: nil, request_options: {}) # - # @param file [Pathname, StringIO] - # @param model [String, Symbol, OpenAI::Models::AudioModel] - # @param prompt [String] - # @param response_format [Symbol, OpenAI::Models::Audio::TranslationCreateParams::ResponseFormat] - # @param temperature [Float] + # @param file [Pathname, StringIO] The audio file object (not file name) translate, in one of these formats: flac, + # ... + # + # @param model [String, Symbol, OpenAI::Models::AudioModel] ID of the model to use. Only `whisper-1` (which is powered by our open source Wh + # ... + # + # @param prompt [String] An optional text to guide the model's style or continue a previous audio segment + # ... + # + # @param response_format [Symbol, OpenAI::Models::Audio::TranslationCreateParams::ResponseFormat] The format of the output, in one of these options: `json`, `text`, `srt`, `verbo + # ... + # + # @param temperature [Float] The sampling temperature, between 0 and 1. Higher values like 0.8 will make the + # ... + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [OpenAI::Models::Audio::Translation, OpenAI::Models::Audio::TranslationVerbose] diff --git a/lib/openai/resources/batches.rb b/lib/openai/resources/batches.rb index 84f5ad93..d63aac23 100644 --- a/lib/openai/resources/batches.rb +++ b/lib/openai/resources/batches.rb @@ -3,14 +3,23 @@ module OpenAI module Resources class Batches + # Some parameter documentations has been truncated, see + # {OpenAI::Models::BatchCreateParams} for more details. + # # Creates and executes a batch from an uploaded file of requests # # @overload create(completion_window:, endpoint:, input_file_id:, metadata: nil, request_options: {}) # - # @param completion_window [Symbol, OpenAI::Models::BatchCreateParams::CompletionWindow] - # @param endpoint [Symbol, OpenAI::Models::BatchCreateParams::Endpoint] - # @param input_file_id [String] - # @param metadata [Hash{Symbol=>String}, nil] + # @param completion_window [Symbol, OpenAI::Models::BatchCreateParams::CompletionWindow] The time frame within which the batch should be processed. Currently only `24h` + # ... + # + # @param endpoint [Symbol, OpenAI::Models::BatchCreateParams::Endpoint] The endpoint to be used for all requests in the batch. Currently `/v1/responses` + # ... + # + # @param input_file_id [String] The ID of an uploaded file that contains requests for the new batch. ... + # + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [OpenAI::Models::Batch] @@ -31,7 +40,8 @@ def create(params) # # @overload retrieve(batch_id, request_options: {}) # - # @param batch_id [String] + # @param batch_id [String] The ID of the batch to retrieve. + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [OpenAI::Models::Batch] @@ -46,12 +56,19 @@ def retrieve(batch_id, params = {}) ) end + # Some parameter documentations has been truncated, see + # {OpenAI::Models::BatchListParams} for more details. + # # List your organization's batches. # # @overload list(after: nil, limit: nil, request_options: {}) # - # @param after [String] - # @param limit [Integer] + # @param after [String] A cursor for use in pagination. `after` is an object ID that defines your place + # ... + # + # @param limit [Integer] A limit on the number of objects to be returned. Limit can range between 1 and 1 + # ... + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [OpenAI::Internal::CursorPage] @@ -75,7 +92,8 @@ def list(params = {}) # # @overload cancel(batch_id, request_options: {}) # - # @param batch_id [String] + # @param batch_id [String] The ID of the batch to cancel. + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [OpenAI::Models::Batch] diff --git a/lib/openai/resources/beta/assistants.rb b/lib/openai/resources/beta/assistants.rb index a7f952e7..303843a0 100644 --- a/lib/openai/resources/beta/assistants.rb +++ b/lib/openai/resources/beta/assistants.rb @@ -4,21 +4,42 @@ module OpenAI module Resources class Beta class Assistants + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::AssistantCreateParams} for more details. + # # Create an assistant with a model and instructions. # # @overload create(model:, description: nil, instructions: nil, metadata: nil, name: nil, reasoning_effort: nil, response_format: nil, temperature: nil, tool_resources: nil, tools: nil, top_p: nil, request_options: {}) # - # @param model [String, Symbol, OpenAI::Models::ChatModel] - # @param description [String, nil] - # @param instructions [String, nil] - # @param metadata [Hash{Symbol=>String}, nil] - # @param name [String, nil] - # @param reasoning_effort [Symbol, OpenAI::Models::ReasoningEffort, nil] - # @param response_format [Symbol, :auto, OpenAI::Models::ResponseFormatText, OpenAI::Models::ResponseFormatJSONObject, OpenAI::Models::ResponseFormatJSONSchema, nil] - # @param temperature [Float, nil] - # @param tool_resources [OpenAI::Models::Beta::AssistantCreateParams::ToolResources, nil] - # @param tools [Array] - # @param top_p [Float, nil] + # @param model [String, Symbol, OpenAI::Models::ChatModel] ID of the model to use. You can use the [List models](https://platform.openai.co + # ... + # + # @param description [String, nil] The description of the assistant. The maximum length is 512 characters. ... + # + # @param instructions [String, nil] The system instructions that the assistant uses. The maximum length is 256,000 c + # ... + # + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # + # @param name [String, nil] The name of the assistant. The maximum length is 256 characters. ... + # + # @param reasoning_effort [Symbol, OpenAI::Models::ReasoningEffort, nil] **o-series models only** ... + # + # @param response_format [Symbol, :auto, OpenAI::Models::ResponseFormatText, OpenAI::Models::ResponseFormatJSONObject, OpenAI::Models::ResponseFormatJSONSchema, nil] Specifies the format that the model must output. Compatible with [GPT-4o](https: + # ... + # + # @param temperature [Float, nil] What sampling temperature to use, between 0 and 2. Higher values like 0.8 will m + # ... + # + # @param tool_resources [OpenAI::Models::Beta::AssistantCreateParams::ToolResources, nil] A set of resources that are used by the assistant's tools. The resources are spe + # ... + # + # @param tools [Array] A list of tool enabled on the assistant. There can be a maximum of 128 tools per + # ... + # + # @param top_p [Float, nil] An alternative to sampling with temperature, called nucleus sampling, where the + # ... + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [OpenAI::Models::Beta::Assistant] @@ -39,7 +60,8 @@ def create(params) # # @overload retrieve(assistant_id, request_options: {}) # - # @param assistant_id [String] + # @param assistant_id [String] The ID of the assistant to retrieve. + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [OpenAI::Models::Beta::Assistant] @@ -54,22 +76,44 @@ def retrieve(assistant_id, params = {}) ) end + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::AssistantUpdateParams} for more details. + # # Modifies an assistant. # # @overload update(assistant_id, description: nil, instructions: nil, metadata: nil, model: nil, name: nil, reasoning_effort: nil, response_format: nil, temperature: nil, tool_resources: nil, tools: nil, top_p: nil, request_options: {}) # - # @param assistant_id [String] - # @param description [String, nil] - # @param instructions [String, nil] - # @param metadata [Hash{Symbol=>String}, nil] - # @param model [String, Symbol, OpenAI::Models::Beta::AssistantUpdateParams::Model] - # @param name [String, nil] - # @param reasoning_effort [Symbol, OpenAI::Models::ReasoningEffort, nil] - # @param response_format [Symbol, :auto, OpenAI::Models::ResponseFormatText, OpenAI::Models::ResponseFormatJSONObject, OpenAI::Models::ResponseFormatJSONSchema, nil] - # @param temperature [Float, nil] - # @param tool_resources [OpenAI::Models::Beta::AssistantUpdateParams::ToolResources, nil] - # @param tools [Array] - # @param top_p [Float, nil] + # @param assistant_id [String] The ID of the assistant to modify. + # + # @param description [String, nil] The description of the assistant. The maximum length is 512 characters. ... + # + # @param instructions [String, nil] The system instructions that the assistant uses. The maximum length is 256,000 c + # ... + # + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # + # @param model [String, Symbol, OpenAI::Models::Beta::AssistantUpdateParams::Model] ID of the model to use. You can use the [List models](https://platform.openai.co + # ... + # + # @param name [String, nil] The name of the assistant. The maximum length is 256 characters. ... + # + # @param reasoning_effort [Symbol, OpenAI::Models::ReasoningEffort, nil] **o-series models only** ... + # + # @param response_format [Symbol, :auto, OpenAI::Models::ResponseFormatText, OpenAI::Models::ResponseFormatJSONObject, OpenAI::Models::ResponseFormatJSONSchema, nil] Specifies the format that the model must output. Compatible with [GPT-4o](https: + # ... + # + # @param temperature [Float, nil] What sampling temperature to use, between 0 and 2. Higher values like 0.8 will m + # ... + # + # @param tool_resources [OpenAI::Models::Beta::AssistantUpdateParams::ToolResources, nil] A set of resources that are used by the assistant's tools. The resources are spe + # ... + # + # @param tools [Array] A list of tool enabled on the assistant. There can be a maximum of 128 tools per + # ... + # + # @param top_p [Float, nil] An alternative to sampling with temperature, called nucleus sampling, where the + # ... + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [OpenAI::Models::Beta::Assistant] @@ -86,14 +130,25 @@ def update(assistant_id, params = {}) ) end + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::AssistantListParams} for more details. + # # Returns a list of assistants. # # @overload list(after: nil, before: nil, limit: nil, order: nil, request_options: {}) # - # @param after [String] - # @param before [String] - # @param limit [Integer] - # @param order [Symbol, OpenAI::Models::Beta::AssistantListParams::Order] + # @param after [String] A cursor for use in pagination. `after` is an object ID that defines your place + # ... + # + # @param before [String] A cursor for use in pagination. `before` is an object ID that defines your place + # ... + # + # @param limit [Integer] A limit on the number of objects to be returned. Limit can range between 1 and 1 + # ... + # + # @param order [Symbol, OpenAI::Models::Beta::AssistantListParams::Order] Sort order by the `created_at` timestamp of the objects. `asc` for ascending ord + # ... + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [OpenAI::Internal::CursorPage] @@ -115,7 +170,8 @@ def list(params = {}) # # @overload delete(assistant_id, request_options: {}) # - # @param assistant_id [String] + # @param assistant_id [String] The ID of the assistant to delete. + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [OpenAI::Models::Beta::AssistantDeleted] diff --git a/lib/openai/resources/beta/threads.rb b/lib/openai/resources/beta/threads.rb index d5b01740..85c88739 100644 --- a/lib/openai/resources/beta/threads.rb +++ b/lib/openai/resources/beta/threads.rb @@ -10,13 +10,21 @@ class Threads # @return [OpenAI::Resources::Beta::Threads::Messages] attr_reader :messages + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::ThreadCreateParams} for more details. + # # Create a thread. # # @overload create(messages: nil, metadata: nil, tool_resources: nil, request_options: {}) # - # @param messages [Array] - # @param metadata [Hash{Symbol=>String}, nil] - # @param tool_resources [OpenAI::Models::Beta::ThreadCreateParams::ToolResources, nil] + # @param messages [Array] A list of [messages](https://platform.openai.com/docs/api-reference/messages) to + # ... + # + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # + # @param tool_resources [OpenAI::Models::Beta::ThreadCreateParams::ToolResources, nil] A set of resources that are made available to the assistant's tools in this thre + # ... + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [OpenAI::Models::Beta::Thread] @@ -37,7 +45,8 @@ def create(params = {}) # # @overload retrieve(thread_id, request_options: {}) # - # @param thread_id [String] + # @param thread_id [String] The ID of the thread to retrieve. + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [OpenAI::Models::Beta::Thread] @@ -52,13 +61,20 @@ def retrieve(thread_id, params = {}) ) end + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::ThreadUpdateParams} for more details. + # # Modifies a thread. # # @overload update(thread_id, metadata: nil, tool_resources: nil, request_options: {}) # - # @param thread_id [String] - # @param metadata [Hash{Symbol=>String}, nil] - # @param tool_resources [OpenAI::Models::Beta::ThreadUpdateParams::ToolResources, nil] + # @param thread_id [String] The ID of the thread to modify. Only the `metadata` can be modified. + # + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # + # @param tool_resources [OpenAI::Models::Beta::ThreadUpdateParams::ToolResources, nil] A set of resources that are made available to the assistant's tools in this thre + # ... + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [OpenAI::Models::Beta::Thread] @@ -79,7 +95,8 @@ def update(thread_id, params = {}) # # @overload delete(thread_id, request_options: {}) # - # @param thread_id [String] + # @param thread_id [String] The ID of the thread to delete. + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [OpenAI::Models::Beta::ThreadDeleted] @@ -96,25 +113,55 @@ def delete(thread_id, params = {}) # See {OpenAI::Resources::Beta::Threads#stream_raw} for streaming counterpart. # + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::ThreadCreateAndRunParams} for more details. + # # Create a thread and run it in one request. # # @overload 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: {}) # - # @param assistant_id [String] - # @param instructions [String, nil] - # @param max_completion_tokens [Integer, nil] - # @param max_prompt_tokens [Integer, nil] - # @param metadata [Hash{Symbol=>String}, nil] - # @param model [String, Symbol, OpenAI::Models::ChatModel, nil] - # @param parallel_tool_calls [Boolean] - # @param response_format [Symbol, :auto, OpenAI::Models::ResponseFormatText, OpenAI::Models::ResponseFormatJSONObject, OpenAI::Models::ResponseFormatJSONSchema, nil] - # @param temperature [Float, nil] - # @param thread [OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread] - # @param tool_choice [Symbol, OpenAI::Models::Beta::AssistantToolChoiceOption::Auto, OpenAI::Models::Beta::AssistantToolChoice, nil] - # @param tool_resources [OpenAI::Models::Beta::ThreadCreateAndRunParams::ToolResources, nil] - # @param tools [Array, nil] - # @param top_p [Float, nil] - # @param truncation_strategy [OpenAI::Models::Beta::ThreadCreateAndRunParams::TruncationStrategy, nil] + # @param assistant_id [String] The ID of the [assistant](https://platform.openai.com/docs/api-reference/assista + # ... + # + # @param instructions [String, nil] Override the default system message of the assistant. This is useful for modifyi + # ... + # + # @param max_completion_tokens [Integer, nil] The maximum number of completion tokens that may be used over the course of the + # ... + # + # @param max_prompt_tokens [Integer, nil] The maximum number of prompt tokens that may be used over the course of the run. + # ... + # + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # + # @param model [String, Symbol, OpenAI::Models::ChatModel, nil] The ID of the [Model](https://platform.openai.com/docs/api-reference/models) to + # ... + # + # @param parallel_tool_calls [Boolean] Whether to enable [parallel function calling](https://platform.openai.com/docs/g + # ... + # + # @param response_format [Symbol, :auto, OpenAI::Models::ResponseFormatText, OpenAI::Models::ResponseFormatJSONObject, OpenAI::Models::ResponseFormatJSONSchema, nil] Specifies the format that the model must output. Compatible with [GPT-4o](https: + # ... + # + # @param temperature [Float, nil] What sampling temperature to use, between 0 and 2. Higher values like 0.8 will m + # ... + # + # @param thread [OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread] Options to create a new thread. If no thread is provided when running a ... + # + # @param tool_choice [Symbol, OpenAI::Models::Beta::AssistantToolChoiceOption::Auto, OpenAI::Models::Beta::AssistantToolChoice, nil] Controls which (if any) tool is called by the model. ... + # + # @param tool_resources [OpenAI::Models::Beta::ThreadCreateAndRunParams::ToolResources, nil] A set of resources that are used by the assistant's tools. The resources are spe + # ... + # + # @param tools [Array, nil] Override the tools the assistant can use for this run. This is useful for modify + # ... + # + # @param top_p [Float, nil] An alternative to sampling with temperature, called nucleus sampling, where the + # ... + # + # @param truncation_strategy [OpenAI::Models::Beta::ThreadCreateAndRunParams::TruncationStrategy, nil] Controls for how a thread will be truncated prior to the run. Use this to contro + # ... + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [OpenAI::Models::Beta::Threads::Run] @@ -142,25 +189,55 @@ def stream # See {OpenAI::Resources::Beta::Threads#create_and_run} for non-streaming # counterpart. # + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::ThreadCreateAndRunParams} for more details. + # # Create a thread and run it in one request. # # @overload 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: {}) # - # @param assistant_id [String] - # @param instructions [String, nil] - # @param max_completion_tokens [Integer, nil] - # @param max_prompt_tokens [Integer, nil] - # @param metadata [Hash{Symbol=>String}, nil] - # @param model [String, Symbol, OpenAI::Models::ChatModel, nil] - # @param parallel_tool_calls [Boolean] - # @param response_format [Symbol, :auto, OpenAI::Models::ResponseFormatText, OpenAI::Models::ResponseFormatJSONObject, OpenAI::Models::ResponseFormatJSONSchema, nil] - # @param temperature [Float, nil] - # @param thread [OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread] - # @param tool_choice [Symbol, OpenAI::Models::Beta::AssistantToolChoiceOption::Auto, OpenAI::Models::Beta::AssistantToolChoice, nil] - # @param tool_resources [OpenAI::Models::Beta::ThreadCreateAndRunParams::ToolResources, nil] - # @param tools [Array, nil] - # @param top_p [Float, nil] - # @param truncation_strategy [OpenAI::Models::Beta::ThreadCreateAndRunParams::TruncationStrategy, nil] + # @param assistant_id [String] The ID of the [assistant](https://platform.openai.com/docs/api-reference/assista + # ... + # + # @param instructions [String, nil] Override the default system message of the assistant. This is useful for modifyi + # ... + # + # @param max_completion_tokens [Integer, nil] The maximum number of completion tokens that may be used over the course of the + # ... + # + # @param max_prompt_tokens [Integer, nil] The maximum number of prompt tokens that may be used over the course of the run. + # ... + # + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # + # @param model [String, Symbol, OpenAI::Models::ChatModel, nil] The ID of the [Model](https://platform.openai.com/docs/api-reference/models) to + # ... + # + # @param parallel_tool_calls [Boolean] Whether to enable [parallel function calling](https://platform.openai.com/docs/g + # ... + # + # @param response_format [Symbol, :auto, OpenAI::Models::ResponseFormatText, OpenAI::Models::ResponseFormatJSONObject, OpenAI::Models::ResponseFormatJSONSchema, nil] Specifies the format that the model must output. Compatible with [GPT-4o](https: + # ... + # + # @param temperature [Float, nil] What sampling temperature to use, between 0 and 2. Higher values like 0.8 will m + # ... + # + # @param thread [OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread] Options to create a new thread. If no thread is provided when running a ... + # + # @param tool_choice [Symbol, OpenAI::Models::Beta::AssistantToolChoiceOption::Auto, OpenAI::Models::Beta::AssistantToolChoice, nil] Controls which (if any) tool is called by the model. ... + # + # @param tool_resources [OpenAI::Models::Beta::ThreadCreateAndRunParams::ToolResources, nil] A set of resources that are used by the assistant's tools. The resources are spe + # ... + # + # @param tools [Array, nil] Override the tools the assistant can use for this run. This is useful for modify + # ... + # + # @param top_p [Float, nil] An alternative to sampling with temperature, called nucleus sampling, where the + # ... + # + # @param truncation_strategy [OpenAI::Models::Beta::ThreadCreateAndRunParams::TruncationStrategy, nil] Controls for how a thread will be truncated prior to the run. Use this to contro + # ... + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [OpenAI::Internal::Stream] diff --git a/lib/openai/resources/beta/threads/messages.rb b/lib/openai/resources/beta/threads/messages.rb index 81de13fc..d9191639 100644 --- a/lib/openai/resources/beta/threads/messages.rb +++ b/lib/openai/resources/beta/threads/messages.rb @@ -5,15 +5,24 @@ module Resources class Beta class Threads class Messages + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::Threads::MessageCreateParams} for more details. + # # Create a message. # # @overload create(thread_id, content:, role:, attachments: nil, metadata: nil, request_options: {}) # - # @param thread_id [String] - # @param content [String, Array] - # @param role [Symbol, OpenAI::Models::Beta::Threads::MessageCreateParams::Role] - # @param attachments [Array, nil] - # @param metadata [Hash{Symbol=>String}, nil] + # @param thread_id [String] The ID of the [thread](https://platform.openai.com/docs/api-reference/threads) t + # ... + # + # @param content [String, Array] The text contents of the message. + # + # @param role [Symbol, OpenAI::Models::Beta::Threads::MessageCreateParams::Role] The role of the entity that is creating the message. Allowed values include: ... + # + # @param attachments [Array, nil] A list of files attached to the message, and the tools they should be added to. + # + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [OpenAI::Models::Beta::Threads::Message] @@ -30,12 +39,18 @@ def create(thread_id, params) ) end + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::Threads::MessageRetrieveParams} for more details. + # # Retrieve a message. # # @overload retrieve(message_id, thread_id:, request_options: {}) # - # @param message_id [String] - # @param thread_id [String] + # @param message_id [String] The ID of the message to retrieve. + # + # @param thread_id [String] The ID of the [thread](https://platform.openai.com/docs/api-reference/threads) t + # ... + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [OpenAI::Models::Beta::Threads::Message] @@ -55,13 +70,20 @@ def retrieve(message_id, params) ) end + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::Threads::MessageUpdateParams} for more details. + # # Modifies a message. # # @overload update(message_id, thread_id:, metadata: nil, request_options: {}) # - # @param message_id [String] - # @param thread_id [String] - # @param metadata [Hash{Symbol=>String}, nil] + # @param message_id [String] Path param: The ID of the message to modify. + # + # @param thread_id [String] Path param: The ID of the thread to which this message belongs. + # + # @param metadata [Hash{Symbol=>String}, nil] Body param: Set of 16 key-value pairs that can be attached to an object. This ca + # ... + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [OpenAI::Models::Beta::Threads::Message] @@ -82,16 +104,30 @@ def update(message_id, params) ) end + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::Threads::MessageListParams} for more details. + # # Returns a list of messages for a given thread. # # @overload list(thread_id, after: nil, before: nil, limit: nil, order: nil, run_id: nil, request_options: {}) # - # @param thread_id [String] - # @param after [String] - # @param before [String] - # @param limit [Integer] - # @param order [Symbol, OpenAI::Models::Beta::Threads::MessageListParams::Order] - # @param run_id [String] + # @param thread_id [String] The ID of the [thread](https://platform.openai.com/docs/api-reference/threads) t + # ... + # + # @param after [String] A cursor for use in pagination. `after` is an object ID that defines your place + # ... + # + # @param before [String] A cursor for use in pagination. `before` is an object ID that defines your place + # ... + # + # @param limit [Integer] A limit on the number of objects to be returned. Limit can range between 1 and 1 + # ... + # + # @param order [Symbol, OpenAI::Models::Beta::Threads::MessageListParams::Order] Sort order by the `created_at` timestamp of the objects. `asc` for ascending ord + # ... + # + # @param run_id [String] Filter messages by the run ID that generated them. ... + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [OpenAI::Internal::CursorPage] @@ -113,8 +149,10 @@ def list(thread_id, params = {}) # # @overload delete(message_id, thread_id:, request_options: {}) # - # @param message_id [String] - # @param thread_id [String] + # @param message_id [String] The ID of the message to delete. + # + # @param thread_id [String] The ID of the thread to which this message belongs. + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [OpenAI::Models::Beta::Threads::MessageDeleted] diff --git a/lib/openai/resources/beta/threads/runs.rb b/lib/openai/resources/beta/threads/runs.rb index 8ebefd9c..1dfcaeb2 100644 --- a/lib/openai/resources/beta/threads/runs.rb +++ b/lib/openai/resources/beta/threads/runs.rb @@ -11,28 +11,63 @@ class Runs # See {OpenAI::Resources::Beta::Threads::Runs#create_stream_raw} for streaming # counterpart. # + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::Threads::RunCreateParams} for more details. + # # Create a run. # # @overload create(thread_id, assistant_id:, include: nil, additional_instructions: nil, additional_messages: nil, instructions: nil, max_completion_tokens: nil, max_prompt_tokens: nil, metadata: nil, model: nil, parallel_tool_calls: nil, reasoning_effort: nil, response_format: nil, temperature: nil, tool_choice: nil, tools: nil, top_p: nil, truncation_strategy: nil, request_options: {}) # - # @param thread_id [String] - # @param assistant_id [String] - # @param include [Array] - # @param additional_instructions [String, nil] - # @param additional_messages [Array, nil] - # @param instructions [String, nil] - # @param max_completion_tokens [Integer, nil] - # @param max_prompt_tokens [Integer, nil] - # @param metadata [Hash{Symbol=>String}, nil] - # @param model [String, Symbol, OpenAI::Models::ChatModel, nil] - # @param parallel_tool_calls [Boolean] - # @param reasoning_effort [Symbol, OpenAI::Models::ReasoningEffort, nil] - # @param response_format [Symbol, :auto, OpenAI::Models::ResponseFormatText, OpenAI::Models::ResponseFormatJSONObject, OpenAI::Models::ResponseFormatJSONSchema, nil] - # @param temperature [Float, nil] - # @param tool_choice [Symbol, OpenAI::Models::Beta::AssistantToolChoiceOption::Auto, OpenAI::Models::Beta::AssistantToolChoice, nil] - # @param tools [Array, nil] - # @param top_p [Float, nil] - # @param truncation_strategy [OpenAI::Models::Beta::Threads::RunCreateParams::TruncationStrategy, nil] + # @param thread_id [String] Path param: The ID of the thread to run. + # + # @param assistant_id [String] Body param: The ID of the [assistant](https://platform.openai.com/docs/api-refer + # ... + # + # @param include [Array] Query param: A list of additional fields to include in the response. Currently t + # ... + # + # @param additional_instructions [String, nil] Body param: Appends additional instructions at the end of the instructions for t + # ... + # + # @param additional_messages [Array, nil] Body param: Adds additional messages to the thread before creating the run. + # + # @param instructions [String, nil] Body param: Overrides the [instructions](https://platform.openai.com/docs/api-re + # ... + # + # @param max_completion_tokens [Integer, nil] Body param: The maximum number of completion tokens that may be used over the co + # ... + # + # @param max_prompt_tokens [Integer, nil] Body param: The maximum number of prompt tokens that may be used over the course + # ... + # + # @param metadata [Hash{Symbol=>String}, nil] Body param: Set of 16 key-value pairs that can be attached to an object. This ca + # ... + # + # @param model [String, Symbol, OpenAI::Models::ChatModel, nil] Body param: The ID of the [Model](https://platform.openai.com/docs/api-reference + # ... + # + # @param parallel_tool_calls [Boolean] Body param: Whether to enable [parallel function calling](https://platform.opena + # ... + # + # @param reasoning_effort [Symbol, OpenAI::Models::ReasoningEffort, nil] Body param: **o-series models only** ... + # + # @param response_format [Symbol, :auto, OpenAI::Models::ResponseFormatText, OpenAI::Models::ResponseFormatJSONObject, OpenAI::Models::ResponseFormatJSONSchema, nil] Body param: Specifies the format that the model must output. Compatible with [GP + # ... + # + # @param temperature [Float, nil] Body param: What sampling temperature to use, between 0 and 2. Higher values lik + # ... + # + # @param tool_choice [Symbol, OpenAI::Models::Beta::AssistantToolChoiceOption::Auto, OpenAI::Models::Beta::AssistantToolChoice, nil] Body param: Controls which (if any) tool is called by the model. ... + # + # @param tools [Array, nil] Body param: Override the tools the assistant can use for this run. This is usefu + # ... + # + # @param top_p [Float, nil] Body param: An alternative to sampling with temperature, called nucleus sampling + # ... + # + # @param truncation_strategy [OpenAI::Models::Beta::Threads::RunCreateParams::TruncationStrategy, nil] Body param: Controls for how a thread will be truncated prior to the run. Use th + # ... + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [OpenAI::Models::Beta::Threads::Run] @@ -58,28 +93,63 @@ def create(thread_id, params) # See {OpenAI::Resources::Beta::Threads::Runs#create} for non-streaming # counterpart. # + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::Threads::RunCreateParams} for more details. + # # Create a run. # # @overload create_stream_raw(thread_id, assistant_id:, include: nil, additional_instructions: nil, additional_messages: nil, instructions: nil, max_completion_tokens: nil, max_prompt_tokens: nil, metadata: nil, model: nil, parallel_tool_calls: nil, reasoning_effort: nil, response_format: nil, temperature: nil, tool_choice: nil, tools: nil, top_p: nil, truncation_strategy: nil, request_options: {}) # - # @param thread_id [String] - # @param assistant_id [String] - # @param include [Array] - # @param additional_instructions [String, nil] - # @param additional_messages [Array, nil] - # @param instructions [String, nil] - # @param max_completion_tokens [Integer, nil] - # @param max_prompt_tokens [Integer, nil] - # @param metadata [Hash{Symbol=>String}, nil] - # @param model [String, Symbol, OpenAI::Models::ChatModel, nil] - # @param parallel_tool_calls [Boolean] - # @param reasoning_effort [Symbol, OpenAI::Models::ReasoningEffort, nil] - # @param response_format [Symbol, :auto, OpenAI::Models::ResponseFormatText, OpenAI::Models::ResponseFormatJSONObject, OpenAI::Models::ResponseFormatJSONSchema, nil] - # @param temperature [Float, nil] - # @param tool_choice [Symbol, OpenAI::Models::Beta::AssistantToolChoiceOption::Auto, OpenAI::Models::Beta::AssistantToolChoice, nil] - # @param tools [Array, nil] - # @param top_p [Float, nil] - # @param truncation_strategy [OpenAI::Models::Beta::Threads::RunCreateParams::TruncationStrategy, nil] + # @param thread_id [String] Path param: The ID of the thread to run. + # + # @param assistant_id [String] Body param: The ID of the [assistant](https://platform.openai.com/docs/api-refer + # ... + # + # @param include [Array] Query param: A list of additional fields to include in the response. Currently t + # ... + # + # @param additional_instructions [String, nil] Body param: Appends additional instructions at the end of the instructions for t + # ... + # + # @param additional_messages [Array, nil] Body param: Adds additional messages to the thread before creating the run. + # + # @param instructions [String, nil] Body param: Overrides the [instructions](https://platform.openai.com/docs/api-re + # ... + # + # @param max_completion_tokens [Integer, nil] Body param: The maximum number of completion tokens that may be used over the co + # ... + # + # @param max_prompt_tokens [Integer, nil] Body param: The maximum number of prompt tokens that may be used over the course + # ... + # + # @param metadata [Hash{Symbol=>String}, nil] Body param: Set of 16 key-value pairs that can be attached to an object. This ca + # ... + # + # @param model [String, Symbol, OpenAI::Models::ChatModel, nil] Body param: The ID of the [Model](https://platform.openai.com/docs/api-reference + # ... + # + # @param parallel_tool_calls [Boolean] Body param: Whether to enable [parallel function calling](https://platform.opena + # ... + # + # @param reasoning_effort [Symbol, OpenAI::Models::ReasoningEffort, nil] Body param: **o-series models only** ... + # + # @param response_format [Symbol, :auto, OpenAI::Models::ResponseFormatText, OpenAI::Models::ResponseFormatJSONObject, OpenAI::Models::ResponseFormatJSONSchema, nil] Body param: Specifies the format that the model must output. Compatible with [GP + # ... + # + # @param temperature [Float, nil] Body param: What sampling temperature to use, between 0 and 2. Higher values lik + # ... + # + # @param tool_choice [Symbol, OpenAI::Models::Beta::AssistantToolChoiceOption::Auto, OpenAI::Models::Beta::AssistantToolChoice, nil] Body param: Controls which (if any) tool is called by the model. ... + # + # @param tools [Array, nil] Body param: Override the tools the assistant can use for this run. This is usefu + # ... + # + # @param top_p [Float, nil] Body param: An alternative to sampling with temperature, called nucleus sampling + # ... + # + # @param truncation_strategy [OpenAI::Models::Beta::Threads::RunCreateParams::TruncationStrategy, nil] Body param: Controls for how a thread will be truncated prior to the run. Use th + # ... + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [OpenAI::Internal::Stream] @@ -105,12 +175,18 @@ def create_stream_raw(thread_id, params) ) end + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::Threads::RunRetrieveParams} for more details. + # # Retrieves a run. # # @overload retrieve(run_id, thread_id:, request_options: {}) # - # @param run_id [String] - # @param thread_id [String] + # @param run_id [String] The ID of the run to retrieve. + # + # @param thread_id [String] The ID of the [thread](https://platform.openai.com/docs/api-reference/threads) t + # ... + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [OpenAI::Models::Beta::Threads::Run] @@ -130,13 +206,21 @@ def retrieve(run_id, params) ) end + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::Threads::RunUpdateParams} for more details. + # # Modifies a run. # # @overload update(run_id, thread_id:, metadata: nil, request_options: {}) # - # @param run_id [String] - # @param thread_id [String] - # @param metadata [Hash{Symbol=>String}, nil] + # @param run_id [String] Path param: The ID of the run to modify. + # + # @param thread_id [String] Path param: The ID of the [thread](https://platform.openai.com/docs/api-referenc + # ... + # + # @param metadata [Hash{Symbol=>String}, nil] Body param: Set of 16 key-value pairs that can be attached to an object. This ca + # ... + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [OpenAI::Models::Beta::Threads::Run] @@ -157,15 +241,27 @@ def update(run_id, params) ) end + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::Threads::RunListParams} for more details. + # # Returns a list of runs belonging to a thread. # # @overload list(thread_id, after: nil, before: nil, limit: nil, order: nil, request_options: {}) # - # @param thread_id [String] - # @param after [String] - # @param before [String] - # @param limit [Integer] - # @param order [Symbol, OpenAI::Models::Beta::Threads::RunListParams::Order] + # @param thread_id [String] The ID of the thread the run belongs to. + # + # @param after [String] A cursor for use in pagination. `after` is an object ID that defines your place + # ... + # + # @param before [String] A cursor for use in pagination. `before` is an object ID that defines your place + # ... + # + # @param limit [Integer] A limit on the number of objects to be returned. Limit can range between 1 and 1 + # ... + # + # @param order [Symbol, OpenAI::Models::Beta::Threads::RunListParams::Order] Sort order by the `created_at` timestamp of the objects. `asc` for ascending ord + # ... + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [OpenAI::Internal::CursorPage] @@ -187,8 +283,10 @@ def list(thread_id, params = {}) # # @overload cancel(run_id, thread_id:, request_options: {}) # - # @param run_id [String] - # @param thread_id [String] + # @param run_id [String] The ID of the run to cancel. + # + # @param thread_id [String] The ID of the thread to which this run belongs. + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [OpenAI::Models::Beta::Threads::Run] @@ -211,6 +309,9 @@ def cancel(run_id, params) # See {OpenAI::Resources::Beta::Threads::Runs#submit_tool_outputs_stream_raw} for # streaming counterpart. # + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::Threads::RunSubmitToolOutputsParams} for more details. + # # When a run has the `status: "requires_action"` and `required_action.type` is # `submit_tool_outputs`, this endpoint can be used to submit the outputs from the # tool calls once they're all completed. All outputs must be submitted in a single @@ -218,9 +319,13 @@ def cancel(run_id, params) # # @overload submit_tool_outputs(run_id, thread_id:, tool_outputs:, request_options: {}) # - # @param run_id [String] - # @param thread_id [String] - # @param tool_outputs [Array] + # @param run_id [String] Path param: The ID of the run that requires the tool output submission. + # + # @param thread_id [String] Path param: The ID of the [thread](https://platform.openai.com/docs/api-referenc + # ... + # + # @param tool_outputs [Array] Body param: A list of tools for which the outputs are being submitted. + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [OpenAI::Models::Beta::Threads::Run] @@ -248,6 +353,9 @@ def submit_tool_outputs(run_id, params) # See {OpenAI::Resources::Beta::Threads::Runs#submit_tool_outputs} for # non-streaming counterpart. # + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::Threads::RunSubmitToolOutputsParams} for more details. + # # When a run has the `status: "requires_action"` and `required_action.type` is # `submit_tool_outputs`, this endpoint can be used to submit the outputs from the # tool calls once they're all completed. All outputs must be submitted in a single @@ -255,9 +363,13 @@ def submit_tool_outputs(run_id, params) # # @overload submit_tool_outputs_stream_raw(run_id, thread_id:, tool_outputs:, request_options: {}) # - # @param run_id [String] - # @param thread_id [String] - # @param tool_outputs [Array] + # @param run_id [String] Path param: The ID of the run that requires the tool output submission. + # + # @param thread_id [String] Path param: The ID of the [thread](https://platform.openai.com/docs/api-referenc + # ... + # + # @param tool_outputs [Array] Body param: A list of tools for which the outputs are being submitted. + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [OpenAI::Internal::Stream] diff --git a/lib/openai/resources/beta/threads/runs/steps.rb b/lib/openai/resources/beta/threads/runs/steps.rb index 65972e48..21bbd9a5 100644 --- a/lib/openai/resources/beta/threads/runs/steps.rb +++ b/lib/openai/resources/beta/threads/runs/steps.rb @@ -6,14 +6,22 @@ class Beta class Threads class Runs class Steps + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::Threads::Runs::StepRetrieveParams} for more details. + # # Retrieves a run step. # # @overload retrieve(step_id, thread_id:, run_id:, include: nil, request_options: {}) # - # @param step_id [String] - # @param thread_id [String] - # @param run_id [String] - # @param include [Array] + # @param step_id [String] Path param: The ID of the run step to retrieve. + # + # @param thread_id [String] Path param: The ID of the thread to which the run and run step belongs. + # + # @param run_id [String] Path param: The ID of the run to which the run step belongs. + # + # @param include [Array] Query param: A list of additional fields to include in the response. Currently t + # ... + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [OpenAI::Models::Beta::Threads::Runs::RunStep] @@ -38,17 +46,32 @@ def retrieve(step_id, params) ) end + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Beta::Threads::Runs::StepListParams} for more details. + # # Returns a list of run steps belonging to a run. # # @overload list(run_id, thread_id:, after: nil, before: nil, include: nil, limit: nil, order: nil, request_options: {}) # - # @param run_id [String] - # @param thread_id [String] - # @param after [String] - # @param before [String] - # @param include [Array] - # @param limit [Integer] - # @param order [Symbol, OpenAI::Models::Beta::Threads::Runs::StepListParams::Order] + # @param run_id [String] Path param: The ID of the run the run steps belong to. + # + # @param thread_id [String] Path param: The ID of the thread the run and run steps belong to. + # + # @param after [String] Query param: A cursor for use in pagination. `after` is an object ID that define + # ... + # + # @param before [String] Query param: A cursor for use in pagination. `before` is an object ID that defin + # ... + # + # @param include [Array] Query param: A list of additional fields to include in the response. Currently t + # ... + # + # @param limit [Integer] Query param: A limit on the number of objects to be returned. Limit can range be + # ... + # + # @param order [Symbol, OpenAI::Models::Beta::Threads::Runs::StepListParams::Order] Query param: Sort order by the `created_at` timestamp of the objects. `asc` for + # ... + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [OpenAI::Internal::CursorPage] diff --git a/lib/openai/resources/chat/completions.rb b/lib/openai/resources/chat/completions.rb index 51ba4c47..66a4c48c 100644 --- a/lib/openai/resources/chat/completions.rb +++ b/lib/openai/resources/chat/completions.rb @@ -9,6 +9,9 @@ class Completions # See {OpenAI::Resources::Chat::Completions#stream_raw} for streaming counterpart. # + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Chat::CompletionCreateParams} for more details. + # # **Starting a new project?** We recommend trying # [Responses](https://platform.openai.com/docs/api-reference/responses) to take # advantage of the latest OpenAI platform features. Compare @@ -29,36 +32,73 @@ class Completions # # @overload create(messages:, model:, audio: nil, frequency_penalty: nil, function_call: nil, functions: nil, logit_bias: nil, logprobs: nil, max_completion_tokens: nil, max_tokens: nil, metadata: nil, modalities: nil, n: nil, parallel_tool_calls: nil, prediction: nil, presence_penalty: nil, reasoning_effort: nil, response_format: nil, seed: nil, service_tier: nil, stop: nil, store: nil, stream_options: nil, temperature: nil, tool_choice: nil, tools: nil, top_logprobs: nil, top_p: nil, user: nil, web_search_options: nil, request_options: {}) # - # @param messages [Array] - # @param model [String, Symbol, OpenAI::Models::ChatModel] - # @param audio [OpenAI::Models::Chat::ChatCompletionAudioParam, nil] - # @param frequency_penalty [Float, nil] - # @param function_call [Symbol, OpenAI::Models::Chat::CompletionCreateParams::FunctionCall::FunctionCallMode, OpenAI::Models::Chat::ChatCompletionFunctionCallOption] - # @param functions [Array] - # @param logit_bias [Hash{Symbol=>Integer}, nil] - # @param logprobs [Boolean, nil] - # @param max_completion_tokens [Integer, nil] - # @param max_tokens [Integer, nil] - # @param metadata [Hash{Symbol=>String}, nil] - # @param modalities [Array, nil] - # @param n [Integer, nil] - # @param parallel_tool_calls [Boolean] - # @param prediction [OpenAI::Models::Chat::ChatCompletionPredictionContent, nil] - # @param presence_penalty [Float, nil] - # @param reasoning_effort [Symbol, OpenAI::Models::ReasoningEffort, nil] - # @param response_format [OpenAI::Models::ResponseFormatText, OpenAI::Models::ResponseFormatJSONSchema, OpenAI::Models::ResponseFormatJSONObject] - # @param seed [Integer, nil] - # @param service_tier [Symbol, OpenAI::Models::Chat::CompletionCreateParams::ServiceTier, nil] - # @param stop [String, Array, nil] - # @param store [Boolean, nil] - # @param stream_options [OpenAI::Models::Chat::ChatCompletionStreamOptions, nil] - # @param temperature [Float, nil] - # @param tool_choice [Symbol, OpenAI::Models::Chat::ChatCompletionToolChoiceOption::Auto, OpenAI::Models::Chat::ChatCompletionNamedToolChoice] - # @param tools [Array] - # @param top_logprobs [Integer, nil] - # @param top_p [Float, nil] - # @param user [String] - # @param web_search_options [OpenAI::Models::Chat::CompletionCreateParams::WebSearchOptions] + # @param messages [Array] A list of messages comprising the conversation so far. Depending on the ... + # + # @param model [String, Symbol, OpenAI::Models::ChatModel] Model ID used to generate the response, like `gpt-4o` or `o3`. OpenAI ... + # + # @param audio [OpenAI::Models::Chat::ChatCompletionAudioParam, nil] Parameters for audio output. Required when audio output is requested with ... + # + # @param frequency_penalty [Float, nil] Number between -2.0 and 2.0. Positive values penalize new tokens based on ... + # + # @param function_call [Symbol, OpenAI::Models::Chat::CompletionCreateParams::FunctionCall::FunctionCallMode, OpenAI::Models::Chat::ChatCompletionFunctionCallOption] Deprecated in favor of `tool_choice`. ... + # + # @param functions [Array] Deprecated in favor of `tools`. ... + # + # @param logit_bias [Hash{Symbol=>Integer}, nil] Modify the likelihood of specified tokens appearing in the completion. ... + # + # @param logprobs [Boolean, nil] Whether to return log probabilities of the output tokens or not. If true, ... + # + # @param max_completion_tokens [Integer, nil] An upper bound for the number of tokens that can be generated for a completion, + # ... + # + # @param max_tokens [Integer, nil] The maximum number of [tokens](/tokenizer) that can be generated in the ... + # + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # + # @param modalities [Array, nil] Output types that you would like the model to generate. ... + # + # @param n [Integer, nil] How many chat completion choices to generate for each input message. Note that y + # ... + # + # @param parallel_tool_calls [Boolean] Whether to enable [parallel function calling](https://platform.openai.com/docs/g + # ... + # + # @param prediction [OpenAI::Models::Chat::ChatCompletionPredictionContent, nil] Static predicted output content, such as the content of a text file that is ... + # + # @param presence_penalty [Float, nil] Number between -2.0 and 2.0. Positive values penalize new tokens based on ... + # + # @param reasoning_effort [Symbol, OpenAI::Models::ReasoningEffort, nil] **o-series models only** ... + # + # @param response_format [OpenAI::Models::ResponseFormatText, OpenAI::Models::ResponseFormatJSONSchema, OpenAI::Models::ResponseFormatJSONObject] An object specifying the format that the model must output. ... + # + # @param seed [Integer, nil] This feature is in Beta. ... + # + # @param service_tier [Symbol, OpenAI::Models::Chat::CompletionCreateParams::ServiceTier, nil] Specifies the latency tier to use for processing the request. This parameter is + # ... + # + # @param stop [String, Array, nil] Not supported with latest reasoning models `o3` and `o4-mini`. ... + # + # @param store [Boolean, nil] Whether or not to store the output of this chat completion request for ... + # + # @param stream_options [OpenAI::Models::Chat::ChatCompletionStreamOptions, nil] Options for streaming response. Only set this when you set `stream: true`. ... + # + # @param temperature [Float, nil] What sampling temperature to use, between 0 and 2. Higher values like 0.8 will m + # ... + # + # @param tool_choice [Symbol, OpenAI::Models::Chat::ChatCompletionToolChoiceOption::Auto, OpenAI::Models::Chat::ChatCompletionNamedToolChoice] Controls which (if any) tool is called by the model. ... + # + # @param tools [Array] A list of tools the model may call. Currently, only functions are supported as a + # ... + # + # @param top_logprobs [Integer, nil] An integer between 0 and 20 specifying the number of most likely tokens to ... + # + # @param top_p [Float, nil] An alternative to sampling with temperature, called nucleus sampling, ... + # + # @param user [String] A unique identifier representing your end-user, which can help OpenAI to monitor + # ... + # + # @param web_search_options [OpenAI::Models::Chat::CompletionCreateParams::WebSearchOptions] This tool searches the web for relevant results to use in a response. ... + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [OpenAI::Models::Chat::ChatCompletion] @@ -85,6 +125,9 @@ def stream # See {OpenAI::Resources::Chat::Completions#create} for non-streaming counterpart. # + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Chat::CompletionCreateParams} for more details. + # # **Starting a new project?** We recommend trying # [Responses](https://platform.openai.com/docs/api-reference/responses) to take # advantage of the latest OpenAI platform features. Compare @@ -105,36 +148,73 @@ def stream # # @overload stream_raw(messages:, model:, audio: nil, frequency_penalty: nil, function_call: nil, functions: nil, logit_bias: nil, logprobs: nil, max_completion_tokens: nil, max_tokens: nil, metadata: nil, modalities: nil, n: nil, parallel_tool_calls: nil, prediction: nil, presence_penalty: nil, reasoning_effort: nil, response_format: nil, seed: nil, service_tier: nil, stop: nil, store: nil, stream_options: nil, temperature: nil, tool_choice: nil, tools: nil, top_logprobs: nil, top_p: nil, user: nil, web_search_options: nil, request_options: {}) # - # @param messages [Array] - # @param model [String, Symbol, OpenAI::Models::ChatModel] - # @param audio [OpenAI::Models::Chat::ChatCompletionAudioParam, nil] - # @param frequency_penalty [Float, nil] - # @param function_call [Symbol, OpenAI::Models::Chat::CompletionCreateParams::FunctionCall::FunctionCallMode, OpenAI::Models::Chat::ChatCompletionFunctionCallOption] - # @param functions [Array] - # @param logit_bias [Hash{Symbol=>Integer}, nil] - # @param logprobs [Boolean, nil] - # @param max_completion_tokens [Integer, nil] - # @param max_tokens [Integer, nil] - # @param metadata [Hash{Symbol=>String}, nil] - # @param modalities [Array, nil] - # @param n [Integer, nil] - # @param parallel_tool_calls [Boolean] - # @param prediction [OpenAI::Models::Chat::ChatCompletionPredictionContent, nil] - # @param presence_penalty [Float, nil] - # @param reasoning_effort [Symbol, OpenAI::Models::ReasoningEffort, nil] - # @param response_format [OpenAI::Models::ResponseFormatText, OpenAI::Models::ResponseFormatJSONSchema, OpenAI::Models::ResponseFormatJSONObject] - # @param seed [Integer, nil] - # @param service_tier [Symbol, OpenAI::Models::Chat::CompletionCreateParams::ServiceTier, nil] - # @param stop [String, Array, nil] - # @param store [Boolean, nil] - # @param stream_options [OpenAI::Models::Chat::ChatCompletionStreamOptions, nil] - # @param temperature [Float, nil] - # @param tool_choice [Symbol, OpenAI::Models::Chat::ChatCompletionToolChoiceOption::Auto, OpenAI::Models::Chat::ChatCompletionNamedToolChoice] - # @param tools [Array] - # @param top_logprobs [Integer, nil] - # @param top_p [Float, nil] - # @param user [String] - # @param web_search_options [OpenAI::Models::Chat::CompletionCreateParams::WebSearchOptions] + # @param messages [Array] A list of messages comprising the conversation so far. Depending on the ... + # + # @param model [String, Symbol, OpenAI::Models::ChatModel] Model ID used to generate the response, like `gpt-4o` or `o3`. OpenAI ... + # + # @param audio [OpenAI::Models::Chat::ChatCompletionAudioParam, nil] Parameters for audio output. Required when audio output is requested with ... + # + # @param frequency_penalty [Float, nil] Number between -2.0 and 2.0. Positive values penalize new tokens based on ... + # + # @param function_call [Symbol, OpenAI::Models::Chat::CompletionCreateParams::FunctionCall::FunctionCallMode, OpenAI::Models::Chat::ChatCompletionFunctionCallOption] Deprecated in favor of `tool_choice`. ... + # + # @param functions [Array] Deprecated in favor of `tools`. ... + # + # @param logit_bias [Hash{Symbol=>Integer}, nil] Modify the likelihood of specified tokens appearing in the completion. ... + # + # @param logprobs [Boolean, nil] Whether to return log probabilities of the output tokens or not. If true, ... + # + # @param max_completion_tokens [Integer, nil] An upper bound for the number of tokens that can be generated for a completion, + # ... + # + # @param max_tokens [Integer, nil] The maximum number of [tokens](/tokenizer) that can be generated in the ... + # + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # + # @param modalities [Array, nil] Output types that you would like the model to generate. ... + # + # @param n [Integer, nil] How many chat completion choices to generate for each input message. Note that y + # ... + # + # @param parallel_tool_calls [Boolean] Whether to enable [parallel function calling](https://platform.openai.com/docs/g + # ... + # + # @param prediction [OpenAI::Models::Chat::ChatCompletionPredictionContent, nil] Static predicted output content, such as the content of a text file that is ... + # + # @param presence_penalty [Float, nil] Number between -2.0 and 2.0. Positive values penalize new tokens based on ... + # + # @param reasoning_effort [Symbol, OpenAI::Models::ReasoningEffort, nil] **o-series models only** ... + # + # @param response_format [OpenAI::Models::ResponseFormatText, OpenAI::Models::ResponseFormatJSONSchema, OpenAI::Models::ResponseFormatJSONObject] An object specifying the format that the model must output. ... + # + # @param seed [Integer, nil] This feature is in Beta. ... + # + # @param service_tier [Symbol, OpenAI::Models::Chat::CompletionCreateParams::ServiceTier, nil] Specifies the latency tier to use for processing the request. This parameter is + # ... + # + # @param stop [String, Array, nil] Not supported with latest reasoning models `o3` and `o4-mini`. ... + # + # @param store [Boolean, nil] Whether or not to store the output of this chat completion request for ... + # + # @param stream_options [OpenAI::Models::Chat::ChatCompletionStreamOptions, nil] Options for streaming response. Only set this when you set `stream: true`. ... + # + # @param temperature [Float, nil] What sampling temperature to use, between 0 and 2. Higher values like 0.8 will m + # ... + # + # @param tool_choice [Symbol, OpenAI::Models::Chat::ChatCompletionToolChoiceOption::Auto, OpenAI::Models::Chat::ChatCompletionNamedToolChoice] Controls which (if any) tool is called by the model. ... + # + # @param tools [Array] A list of tools the model may call. Currently, only functions are supported as a + # ... + # + # @param top_logprobs [Integer, nil] An integer between 0 and 20 specifying the number of most likely tokens to ... + # + # @param top_p [Float, nil] An alternative to sampling with temperature, called nucleus sampling, ... + # + # @param user [String] A unique identifier representing your end-user, which can help OpenAI to monitor + # ... + # + # @param web_search_options [OpenAI::Models::Chat::CompletionCreateParams::WebSearchOptions] This tool searches the web for relevant results to use in a response. ... + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [OpenAI::Internal::Stream] @@ -163,7 +243,8 @@ def stream_raw(params) # # @overload retrieve(completion_id, request_options: {}) # - # @param completion_id [String] + # @param completion_id [String] The ID of the chat completion to retrieve. + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [OpenAI::Models::Chat::ChatCompletion] @@ -178,14 +259,19 @@ def retrieve(completion_id, params = {}) ) end + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Chat::CompletionUpdateParams} for more details. + # # Modify a stored chat completion. Only Chat Completions that have been created # with the `store` parameter set to `true` can be modified. Currently, the only # supported modification is to update the `metadata` field. # # @overload update(completion_id, metadata:, request_options: {}) # - # @param completion_id [String] - # @param metadata [Hash{Symbol=>String}, nil] + # @param completion_id [String] The ID of the chat completion to update. + # + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [OpenAI::Models::Chat::ChatCompletion] @@ -202,16 +288,25 @@ def update(completion_id, params) ) end + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Chat::CompletionListParams} for more details. + # # List stored Chat Completions. Only Chat Completions that have been stored with # the `store` parameter set to `true` will be returned. # # @overload list(after: nil, limit: nil, metadata: nil, model: nil, order: nil, request_options: {}) # - # @param after [String] - # @param limit [Integer] - # @param metadata [Hash{Symbol=>String}, nil] - # @param model [String] - # @param order [Symbol, OpenAI::Models::Chat::CompletionListParams::Order] + # @param after [String] Identifier for the last chat completion from the previous pagination request. + # + # @param limit [Integer] Number of Chat Completions to retrieve. + # + # @param metadata [Hash{Symbol=>String}, nil] A list of metadata keys to filter the Chat Completions by. Example: ... + # + # @param model [String] The model used to generate the Chat Completions. + # + # @param order [Symbol, OpenAI::Models::Chat::CompletionListParams::Order] Sort order for Chat Completions by timestamp. Use `asc` for ascending order or ` + # ... + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [OpenAI::Internal::CursorPage] @@ -234,7 +329,8 @@ def list(params = {}) # # @overload delete(completion_id, request_options: {}) # - # @param completion_id [String] + # @param completion_id [String] The ID of the chat completion to delete. + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [OpenAI::Models::Chat::ChatCompletionDeleted] diff --git a/lib/openai/resources/chat/completions/messages.rb b/lib/openai/resources/chat/completions/messages.rb index ab3a3e19..a1dd20ca 100644 --- a/lib/openai/resources/chat/completions/messages.rb +++ b/lib/openai/resources/chat/completions/messages.rb @@ -5,15 +5,23 @@ module Resources class Chat class Completions class Messages + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Chat::Completions::MessageListParams} for more details. + # # Get the messages in a stored chat completion. Only Chat Completions that have # been created with the `store` parameter set to `true` will be returned. # # @overload list(completion_id, after: nil, limit: nil, order: nil, request_options: {}) # - # @param completion_id [String] - # @param after [String] - # @param limit [Integer] - # @param order [Symbol, OpenAI::Models::Chat::Completions::MessageListParams::Order] + # @param completion_id [String] The ID of the chat completion to retrieve messages from. + # + # @param after [String] Identifier for the last message from the previous pagination request. + # + # @param limit [Integer] Number of messages to retrieve. + # + # @param order [Symbol, OpenAI::Models::Chat::Completions::MessageListParams::Order] Sort order for messages by timestamp. Use `asc` for ascending order or `desc` fo + # ... + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [OpenAI::Internal::CursorPage] diff --git a/lib/openai/resources/completions.rb b/lib/openai/resources/completions.rb index 859c6b7f..7b563203 100644 --- a/lib/openai/resources/completions.rb +++ b/lib/openai/resources/completions.rb @@ -5,27 +5,58 @@ module Resources class Completions # See {OpenAI::Resources::Completions#create_streaming} for streaming counterpart. # + # Some parameter documentations has been truncated, see + # {OpenAI::Models::CompletionCreateParams} for more details. + # # Creates a completion for the provided prompt and parameters. # # @overload create(model:, prompt:, best_of: nil, echo: nil, frequency_penalty: nil, logit_bias: nil, logprobs: nil, max_tokens: nil, n: nil, presence_penalty: nil, seed: nil, stop: nil, stream_options: nil, suffix: nil, temperature: nil, top_p: nil, user: nil, request_options: {}) # - # @param model [String, Symbol, OpenAI::Models::CompletionCreateParams::Model] - # @param prompt [String, Array, Array, Array>, nil] - # @param best_of [Integer, nil] - # @param echo [Boolean, nil] - # @param frequency_penalty [Float, nil] - # @param logit_bias [Hash{Symbol=>Integer}, nil] - # @param logprobs [Integer, nil] - # @param max_tokens [Integer, nil] - # @param n [Integer, nil] - # @param presence_penalty [Float, nil] - # @param seed [Integer, nil] - # @param stop [String, Array, nil] - # @param stream_options [OpenAI::Models::Chat::ChatCompletionStreamOptions, nil] - # @param suffix [String, nil] - # @param temperature [Float, nil] - # @param top_p [Float, nil] - # @param user [String] + # @param model [String, Symbol, OpenAI::Models::CompletionCreateParams::Model] ID of the model to use. You can use the [List models](https://platform.openai.co + # ... + # + # @param prompt [String, Array, Array, Array>, nil] The prompt(s) to generate completions for, encoded as a string, array of strings + # ... + # + # @param best_of [Integer, nil] Generates `best_of` completions server-side and returns the "best" (the one with + # ... + # + # @param echo [Boolean, nil] Echo back the prompt in addition to the completion ... + # + # @param frequency_penalty [Float, nil] Number between -2.0 and 2.0. Positive values penalize new tokens based on their + # ... + # + # @param logit_bias [Hash{Symbol=>Integer}, nil] Modify the likelihood of specified tokens appearing in the completion. ... + # + # @param logprobs [Integer, nil] Include the log probabilities on the `logprobs` most likely output tokens, as we + # ... + # + # @param max_tokens [Integer, nil] The maximum number of [tokens](/tokenizer) that can be generated in the completi + # ... + # + # @param n [Integer, nil] How many completions to generate for each prompt. ... + # + # @param presence_penalty [Float, nil] Number between -2.0 and 2.0. Positive values penalize new tokens based on whethe + # ... + # + # @param seed [Integer, nil] If specified, our system will make a best effort to sample deterministically, su + # ... + # + # @param stop [String, Array, nil] Not supported with latest reasoning models `o3` and `o4-mini`. ... + # + # @param stream_options [OpenAI::Models::Chat::ChatCompletionStreamOptions, nil] Options for streaming response. Only set this when you set `stream: true`. ... + # + # @param suffix [String, nil] The suffix that comes after a completion of inserted text. ... + # + # @param temperature [Float, nil] What sampling temperature to use, between 0 and 2. Higher values like 0.8 will m + # ... + # + # @param top_p [Float, nil] An alternative to sampling with temperature, called nucleus sampling, where the + # ... + # + # @param user [String] A unique identifier representing your end-user, which can help OpenAI to monitor + # ... + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [OpenAI::Models::Completion] @@ -48,27 +79,58 @@ def create(params) # See {OpenAI::Resources::Completions#create} for non-streaming counterpart. # + # Some parameter documentations has been truncated, see + # {OpenAI::Models::CompletionCreateParams} for more details. + # # Creates a completion for the provided prompt and parameters. # # @overload create_streaming(model:, prompt:, best_of: nil, echo: nil, frequency_penalty: nil, logit_bias: nil, logprobs: nil, max_tokens: nil, n: nil, presence_penalty: nil, seed: nil, stop: nil, stream_options: nil, suffix: nil, temperature: nil, top_p: nil, user: nil, request_options: {}) # - # @param model [String, Symbol, OpenAI::Models::CompletionCreateParams::Model] - # @param prompt [String, Array, Array, Array>, nil] - # @param best_of [Integer, nil] - # @param echo [Boolean, nil] - # @param frequency_penalty [Float, nil] - # @param logit_bias [Hash{Symbol=>Integer}, nil] - # @param logprobs [Integer, nil] - # @param max_tokens [Integer, nil] - # @param n [Integer, nil] - # @param presence_penalty [Float, nil] - # @param seed [Integer, nil] - # @param stop [String, Array, nil] - # @param stream_options [OpenAI::Models::Chat::ChatCompletionStreamOptions, nil] - # @param suffix [String, nil] - # @param temperature [Float, nil] - # @param top_p [Float, nil] - # @param user [String] + # @param model [String, Symbol, OpenAI::Models::CompletionCreateParams::Model] ID of the model to use. You can use the [List models](https://platform.openai.co + # ... + # + # @param prompt [String, Array, Array, Array>, nil] The prompt(s) to generate completions for, encoded as a string, array of strings + # ... + # + # @param best_of [Integer, nil] Generates `best_of` completions server-side and returns the "best" (the one with + # ... + # + # @param echo [Boolean, nil] Echo back the prompt in addition to the completion ... + # + # @param frequency_penalty [Float, nil] Number between -2.0 and 2.0. Positive values penalize new tokens based on their + # ... + # + # @param logit_bias [Hash{Symbol=>Integer}, nil] Modify the likelihood of specified tokens appearing in the completion. ... + # + # @param logprobs [Integer, nil] Include the log probabilities on the `logprobs` most likely output tokens, as we + # ... + # + # @param max_tokens [Integer, nil] The maximum number of [tokens](/tokenizer) that can be generated in the completi + # ... + # + # @param n [Integer, nil] How many completions to generate for each prompt. ... + # + # @param presence_penalty [Float, nil] Number between -2.0 and 2.0. Positive values penalize new tokens based on whethe + # ... + # + # @param seed [Integer, nil] If specified, our system will make a best effort to sample deterministically, su + # ... + # + # @param stop [String, Array, nil] Not supported with latest reasoning models `o3` and `o4-mini`. ... + # + # @param stream_options [OpenAI::Models::Chat::ChatCompletionStreamOptions, nil] Options for streaming response. Only set this when you set `stream: true`. ... + # + # @param suffix [String, nil] The suffix that comes after a completion of inserted text. ... + # + # @param temperature [Float, nil] What sampling temperature to use, between 0 and 2. Higher values like 0.8 will m + # ... + # + # @param top_p [Float, nil] An alternative to sampling with temperature, called nucleus sampling, where the + # ... + # + # @param user [String] A unique identifier representing your end-user, which can help OpenAI to monitor + # ... + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [OpenAI::Internal::Stream] diff --git a/lib/openai/resources/embeddings.rb b/lib/openai/resources/embeddings.rb index f9a2281d..2e0577e6 100644 --- a/lib/openai/resources/embeddings.rb +++ b/lib/openai/resources/embeddings.rb @@ -3,15 +3,28 @@ module OpenAI module Resources class Embeddings + # Some parameter documentations has been truncated, see + # {OpenAI::Models::EmbeddingCreateParams} for more details. + # # Creates an embedding vector representing the input text. # # @overload create(input:, model:, dimensions: nil, encoding_format: nil, user: nil, request_options: {}) # - # @param input [String, Array, Array, Array>] - # @param model [String, Symbol, OpenAI::Models::EmbeddingModel] - # @param dimensions [Integer] - # @param encoding_format [Symbol, OpenAI::Models::EmbeddingCreateParams::EncodingFormat] - # @param user [String] + # @param input [String, Array, Array, Array>] Input text to embed, encoded as a string or array of tokens. To embed multiple i + # ... + # + # @param model [String, Symbol, OpenAI::Models::EmbeddingModel] ID of the model to use. You can use the [List models](https://platform.openai.co + # ... + # + # @param dimensions [Integer] The number of dimensions the resulting output embeddings should have. Only suppo + # ... + # + # @param encoding_format [Symbol, OpenAI::Models::EmbeddingCreateParams::EncodingFormat] The format to return the embeddings in. Can be either `float` or [`base64`](http + # ... + # + # @param user [String] A unique identifier representing your end-user, which can help OpenAI to monitor + # ... + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [OpenAI::Models::CreateEmbeddingResponse] diff --git a/lib/openai/resources/evals.rb b/lib/openai/resources/evals.rb index 2996ff10..9decea6d 100644 --- a/lib/openai/resources/evals.rb +++ b/lib/openai/resources/evals.rb @@ -6,6 +6,9 @@ class Evals # @return [OpenAI::Resources::Evals::Runs] attr_reader :runs + # Some parameter documentations has been truncated, see + # {OpenAI::Models::EvalCreateParams} for more details. + # # Create the structure of an evaluation that can be used to test a model's # performance. An evaluation is a set of testing criteria and a datasource. After # creating an evaluation, you can run it on different models and model parameters. @@ -14,10 +17,14 @@ class Evals # # @overload create(data_source_config:, testing_criteria:, metadata: nil, name: nil, request_options: {}) # - # @param data_source_config [OpenAI::Models::EvalCreateParams::DataSourceConfig::Custom, OpenAI::Models::EvalCreateParams::DataSourceConfig::Logs] - # @param testing_criteria [Array] - # @param metadata [Hash{Symbol=>String}, nil] - # @param name [String] + # @param data_source_config [OpenAI::Models::EvalCreateParams::DataSourceConfig::Custom, OpenAI::Models::EvalCreateParams::DataSourceConfig::Logs] The configuration for the data source used for the evaluation runs. + # + # @param testing_criteria [Array] A list of graders for all eval runs in this group. + # + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # + # @param name [String] The name of the evaluation. + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [OpenAI::Models::EvalCreateResponse] @@ -38,7 +45,8 @@ def create(params) # # @overload retrieve(eval_id, request_options: {}) # - # @param eval_id [String] + # @param eval_id [String] The ID of the evaluation to retrieve. + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [OpenAI::Models::EvalRetrieveResponse] @@ -53,13 +61,19 @@ def retrieve(eval_id, params = {}) ) end + # Some parameter documentations has been truncated, see + # {OpenAI::Models::EvalUpdateParams} for more details. + # # Update certain properties of an evaluation. # # @overload update(eval_id, metadata: nil, name: nil, request_options: {}) # - # @param eval_id [String] - # @param metadata [Hash{Symbol=>String}, nil] - # @param name [String] + # @param eval_id [String] The ID of the evaluation to update. + # + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # + # @param name [String] Rename the evaluation. + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [OpenAI::Models::EvalUpdateResponse] @@ -76,14 +90,22 @@ def update(eval_id, params = {}) ) end + # Some parameter documentations has been truncated, see + # {OpenAI::Models::EvalListParams} for more details. + # # List evaluations for a project. # # @overload list(after: nil, limit: nil, order: nil, order_by: nil, request_options: {}) # - # @param after [String] - # @param limit [Integer] - # @param order [Symbol, OpenAI::Models::EvalListParams::Order] - # @param order_by [Symbol, OpenAI::Models::EvalListParams::OrderBy] + # @param after [String] Identifier for the last eval from the previous pagination request. + # + # @param limit [Integer] Number of evals to retrieve. + # + # @param order [Symbol, OpenAI::Models::EvalListParams::Order] Sort order for evals by timestamp. Use `asc` for ascending order or `desc` for d + # ... + # + # @param order_by [Symbol, OpenAI::Models::EvalListParams::OrderBy] Evals can be ordered by creation time or last updated time. Use ... + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [OpenAI::Internal::CursorPage] @@ -105,7 +127,8 @@ def list(params = {}) # # @overload delete(eval_id, request_options: {}) # - # @param eval_id [String] + # @param eval_id [String] The ID of the evaluation to delete. + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [OpenAI::Models::EvalDeleteResponse] diff --git a/lib/openai/resources/evals/runs.rb b/lib/openai/resources/evals/runs.rb index 77980ec8..0bd63a75 100644 --- a/lib/openai/resources/evals/runs.rb +++ b/lib/openai/resources/evals/runs.rb @@ -7,14 +7,21 @@ class Runs # @return [OpenAI::Resources::Evals::Runs::OutputItems] attr_reader :output_items + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Evals::RunCreateParams} for more details. + # # Create a new evaluation run. This is the endpoint that will kick off grading. # # @overload create(eval_id, data_source:, metadata: nil, name: nil, request_options: {}) # - # @param eval_id [String] - # @param data_source [OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource, OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource] - # @param metadata [Hash{Symbol=>String}, nil] - # @param name [String] + # @param eval_id [String] The ID of the evaluation to create a run for. + # + # @param data_source [OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource, OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource] Details about the run's data source. + # + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # + # @param name [String] The name of the run. + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [OpenAI::Models::Evals::RunCreateResponse] @@ -35,8 +42,10 @@ def create(eval_id, params) # # @overload retrieve(run_id, eval_id:, request_options: {}) # - # @param run_id [String] - # @param eval_id [String] + # @param run_id [String] The ID of the run to retrieve. + # + # @param eval_id [String] The ID of the evaluation to retrieve runs for. + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [OpenAI::Models::Evals::RunRetrieveResponse] @@ -56,15 +65,25 @@ def retrieve(run_id, params) ) end + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Evals::RunListParams} for more details. + # # Get a list of runs for an evaluation. # # @overload list(eval_id, after: nil, limit: nil, order: nil, status: nil, request_options: {}) # - # @param eval_id [String] - # @param after [String] - # @param limit [Integer] - # @param order [Symbol, OpenAI::Models::Evals::RunListParams::Order] - # @param status [Symbol, OpenAI::Models::Evals::RunListParams::Status] + # @param eval_id [String] The ID of the evaluation to retrieve runs for. + # + # @param after [String] Identifier for the last run from the previous pagination request. + # + # @param limit [Integer] Number of runs to retrieve. + # + # @param order [Symbol, OpenAI::Models::Evals::RunListParams::Order] Sort order for runs by timestamp. Use `asc` for ascending order or `desc` for de + # ... + # + # @param status [Symbol, OpenAI::Models::Evals::RunListParams::Status] Filter runs by status. One of `queued` | `in_progress` | `failed` | `completed` + # ... + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [OpenAI::Internal::CursorPage] @@ -86,8 +105,10 @@ def list(eval_id, params = {}) # # @overload delete(run_id, eval_id:, request_options: {}) # - # @param run_id [String] - # @param eval_id [String] + # @param run_id [String] The ID of the run to delete. + # + # @param eval_id [String] The ID of the evaluation to delete the run from. + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [OpenAI::Models::Evals::RunDeleteResponse] @@ -111,8 +132,10 @@ def delete(run_id, params) # # @overload cancel(run_id, eval_id:, request_options: {}) # - # @param run_id [String] - # @param eval_id [String] + # @param run_id [String] The ID of the run to cancel. + # + # @param eval_id [String] The ID of the evaluation whose run you want to cancel. + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [OpenAI::Models::Evals::RunCancelResponse] diff --git a/lib/openai/resources/evals/runs/output_items.rb b/lib/openai/resources/evals/runs/output_items.rb index eb6914ba..04624e2d 100644 --- a/lib/openai/resources/evals/runs/output_items.rb +++ b/lib/openai/resources/evals/runs/output_items.rb @@ -9,9 +9,12 @@ class OutputItems # # @overload retrieve(output_item_id, eval_id:, run_id:, request_options: {}) # - # @param output_item_id [String] - # @param eval_id [String] - # @param run_id [String] + # @param output_item_id [String] The ID of the output item to retrieve. + # + # @param eval_id [String] The ID of the evaluation to retrieve runs for. + # + # @param run_id [String] The ID of the run to retrieve. + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [OpenAI::Models::Evals::Runs::OutputItemRetrieveResponse] @@ -35,16 +38,28 @@ def retrieve(output_item_id, params) ) end + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Evals::Runs::OutputItemListParams} for more details. + # # Get a list of output items for an evaluation run. # # @overload list(run_id, eval_id:, after: nil, limit: nil, order: nil, status: nil, request_options: {}) # - # @param run_id [String] - # @param eval_id [String] - # @param after [String] - # @param limit [Integer] - # @param order [Symbol, OpenAI::Models::Evals::Runs::OutputItemListParams::Order] - # @param status [Symbol, OpenAI::Models::Evals::Runs::OutputItemListParams::Status] + # @param run_id [String] Path param: The ID of the run to retrieve output items for. + # + # @param eval_id [String] Path param: The ID of the evaluation to retrieve runs for. + # + # @param after [String] Query param: Identifier for the last output item from the previous pagination re + # ... + # + # @param limit [Integer] Query param: Number of output items to retrieve. + # + # @param order [Symbol, OpenAI::Models::Evals::Runs::OutputItemListParams::Order] Query param: Sort order for output items by timestamp. Use `asc` for ascending o + # ... + # + # @param status [Symbol, OpenAI::Models::Evals::Runs::OutputItemListParams::Status] Query param: Filter output items by status. Use `failed` to filter by failed out + # ... + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [OpenAI::Internal::CursorPage] diff --git a/lib/openai/resources/files.rb b/lib/openai/resources/files.rb index f107ee07..726182c0 100644 --- a/lib/openai/resources/files.rb +++ b/lib/openai/resources/files.rb @@ -3,6 +3,9 @@ module OpenAI module Resources class Files + # Some parameter documentations has been truncated, see + # {OpenAI::Models::FileCreateParams} for more details. + # # Upload a file that can be used across various endpoints. Individual files can be # up to 512 MB, and the size of all files uploaded by one organization can be up # to 100 GB. @@ -27,8 +30,11 @@ class Files # # @overload create(file:, purpose:, request_options: {}) # - # @param file [Pathname, StringIO] - # @param purpose [Symbol, OpenAI::Models::FilePurpose] + # @param file [Pathname, StringIO] The File object (not file name) to be uploaded. ... + # + # @param purpose [Symbol, OpenAI::Models::FilePurpose] The intended purpose of the uploaded file. One of: - `assistants`: Used in the A + # ... + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [OpenAI::Models::FileObject] @@ -50,7 +56,8 @@ def create(params) # # @overload retrieve(file_id, request_options: {}) # - # @param file_id [String] + # @param file_id [String] The ID of the file to use for this request. + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [OpenAI::Models::FileObject] @@ -65,14 +72,24 @@ def retrieve(file_id, params = {}) ) end + # Some parameter documentations has been truncated, see + # {OpenAI::Models::FileListParams} for more details. + # # Returns a list of files. # # @overload list(after: nil, limit: nil, order: nil, purpose: nil, request_options: {}) # - # @param after [String] - # @param limit [Integer] - # @param order [Symbol, OpenAI::Models::FileListParams::Order] - # @param purpose [String] + # @param after [String] A cursor for use in pagination. `after` is an object ID that defines your place + # ... + # + # @param limit [Integer] A limit on the number of objects to be returned. Limit can range between 1 and 1 + # ... + # + # @param order [Symbol, OpenAI::Models::FileListParams::Order] Sort order by the `created_at` timestamp of the objects. `asc` for ascending ord + # ... + # + # @param purpose [String] Only return files with the given purpose. + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [OpenAI::Internal::CursorPage] @@ -94,7 +111,8 @@ def list(params = {}) # # @overload delete(file_id, request_options: {}) # - # @param file_id [String] + # @param file_id [String] The ID of the file to use for this request. + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [OpenAI::Models::FileDeleted] @@ -113,7 +131,8 @@ def delete(file_id, params = {}) # # @overload content(file_id, request_options: {}) # - # @param file_id [String] + # @param file_id [String] The ID of the file to use for this request. + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [StringIO] diff --git a/lib/openai/resources/fine_tuning/checkpoints/permissions.rb b/lib/openai/resources/fine_tuning/checkpoints/permissions.rb index 38c9fe03..1d609a0a 100644 --- a/lib/openai/resources/fine_tuning/checkpoints/permissions.rb +++ b/lib/openai/resources/fine_tuning/checkpoints/permissions.rb @@ -5,6 +5,10 @@ module Resources class FineTuning class Checkpoints class Permissions + # Some parameter documentations has been truncated, see + # {OpenAI::Models::FineTuning::Checkpoints::PermissionCreateParams} for more + # details. + # # **NOTE:** Calling this endpoint requires an [admin API key](../admin-api-keys). # # This enables organization owners to share fine-tuned models with other projects @@ -12,8 +16,10 @@ class Permissions # # @overload create(fine_tuned_model_checkpoint, project_ids:, request_options: {}) # - # @param fine_tuned_model_checkpoint [String] - # @param project_ids [Array] + # @param fine_tuned_model_checkpoint [String] The ID of the fine-tuned model checkpoint to create a permission for. ... + # + # @param project_ids [Array] The project identifiers to grant access to. + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [OpenAI::Internal::Page] @@ -31,6 +37,10 @@ def create(fine_tuned_model_checkpoint, params) ) end + # Some parameter documentations has been truncated, see + # {OpenAI::Models::FineTuning::Checkpoints::PermissionRetrieveParams} for more + # details. + # # **NOTE:** This endpoint requires an [admin API key](../admin-api-keys). # # Organization owners can use this endpoint to view all permissions for a @@ -38,11 +48,16 @@ def create(fine_tuned_model_checkpoint, params) # # @overload retrieve(fine_tuned_model_checkpoint, after: nil, limit: nil, order: nil, project_id: nil, request_options: {}) # - # @param fine_tuned_model_checkpoint [String] - # @param after [String] - # @param limit [Integer] - # @param order [Symbol, OpenAI::Models::FineTuning::Checkpoints::PermissionRetrieveParams::Order] - # @param project_id [String] + # @param fine_tuned_model_checkpoint [String] The ID of the fine-tuned model checkpoint to get permissions for. ... + # + # @param after [String] Identifier for the last permission ID from the previous pagination request. + # + # @param limit [Integer] Number of permissions to retrieve. + # + # @param order [Symbol, OpenAI::Models::FineTuning::Checkpoints::PermissionRetrieveParams::Order] The order in which to retrieve permissions. + # + # @param project_id [String] The ID of the project to get permissions for. + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [OpenAI::Models::FineTuning::Checkpoints::PermissionRetrieveResponse] @@ -59,6 +74,10 @@ def retrieve(fine_tuned_model_checkpoint, params = {}) ) end + # Some parameter documentations has been truncated, see + # {OpenAI::Models::FineTuning::Checkpoints::PermissionDeleteParams} for more + # details. + # # **NOTE:** This endpoint requires an [admin API key](../admin-api-keys). # # Organization owners can use this endpoint to delete a permission for a @@ -66,8 +85,10 @@ def retrieve(fine_tuned_model_checkpoint, params = {}) # # @overload delete(permission_id, fine_tuned_model_checkpoint:, request_options: {}) # - # @param permission_id [String] - # @param fine_tuned_model_checkpoint [String] + # @param permission_id [String] The ID of the fine-tuned model checkpoint permission to delete. ... + # + # @param fine_tuned_model_checkpoint [String] The ID of the fine-tuned model checkpoint to delete a permission for. ... + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [OpenAI::Models::FineTuning::Checkpoints::PermissionDeleteResponse] diff --git a/lib/openai/resources/fine_tuning/jobs.rb b/lib/openai/resources/fine_tuning/jobs.rb index 50cf5b51..ba29a2ea 100644 --- a/lib/openai/resources/fine_tuning/jobs.rb +++ b/lib/openai/resources/fine_tuning/jobs.rb @@ -7,6 +7,9 @@ class Jobs # @return [OpenAI::Resources::FineTuning::Jobs::Checkpoints] attr_reader :checkpoints + # Some parameter documentations has been truncated, see + # {OpenAI::Models::FineTuning::JobCreateParams} for more details. + # # Creates a fine-tuning job which begins the process of creating a new model from # a given dataset. # @@ -17,15 +20,26 @@ class Jobs # # @overload create(model:, training_file:, hyperparameters: nil, integrations: nil, metadata: nil, method_: nil, seed: nil, suffix: nil, validation_file: nil, request_options: {}) # - # @param model [String, Symbol, OpenAI::Models::FineTuning::JobCreateParams::Model] - # @param training_file [String] - # @param hyperparameters [OpenAI::Models::FineTuning::JobCreateParams::Hyperparameters] - # @param integrations [Array, nil] - # @param metadata [Hash{Symbol=>String}, nil] - # @param method_ [OpenAI::Models::FineTuning::JobCreateParams::Method] - # @param seed [Integer, nil] - # @param suffix [String, nil] - # @param validation_file [String, nil] + # @param model [String, Symbol, OpenAI::Models::FineTuning::JobCreateParams::Model] The name of the model to fine-tune. You can select one of the ... + # + # @param training_file [String] The ID of an uploaded file that contains training data. ... + # + # @param hyperparameters [OpenAI::Models::FineTuning::JobCreateParams::Hyperparameters] The hyperparameters used for the fine-tuning job. ... + # + # @param integrations [Array, nil] A list of integrations to enable for your fine-tuning job. + # + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # + # @param method_ [OpenAI::Models::FineTuning::JobCreateParams::Method] The method used for fine-tuning. + # + # @param seed [Integer, nil] The seed controls the reproducibility of the job. Passing in the same seed and j + # ... + # + # @param suffix [String, nil] A string of up to 64 characters that will be added to your fine-tuned model name + # ... + # + # @param validation_file [String, nil] The ID of an uploaded file that contains validation data. ... + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [OpenAI::Models::FineTuning::FineTuningJob] @@ -42,13 +56,17 @@ def create(params) ) end + # Some parameter documentations has been truncated, see + # {OpenAI::Models::FineTuning::JobRetrieveParams} for more details. + # # Get info about a fine-tuning job. # # [Learn more about fine-tuning](https://platform.openai.com/docs/guides/fine-tuning) # # @overload retrieve(fine_tuning_job_id, request_options: {}) # - # @param fine_tuning_job_id [String] + # @param fine_tuning_job_id [String] The ID of the fine-tuning job. ... + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [OpenAI::Models::FineTuning::FineTuningJob] @@ -63,13 +81,20 @@ def retrieve(fine_tuning_job_id, params = {}) ) end + # Some parameter documentations has been truncated, see + # {OpenAI::Models::FineTuning::JobListParams} for more details. + # # List your organization's fine-tuning jobs # # @overload list(after: nil, limit: nil, metadata: nil, request_options: {}) # - # @param after [String] - # @param limit [Integer] - # @param metadata [Hash{Symbol=>String}, nil] + # @param after [String] Identifier for the last job from the previous pagination request. + # + # @param limit [Integer] Number of fine-tuning jobs to retrieve. + # + # @param metadata [Hash{Symbol=>String}, nil] Optional metadata filter. To filter, use the syntax `metadata[k]=v`. Alternative + # ... + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [OpenAI::Internal::CursorPage] @@ -87,11 +112,15 @@ def list(params = {}) ) end + # Some parameter documentations has been truncated, see + # {OpenAI::Models::FineTuning::JobCancelParams} for more details. + # # Immediately cancel a fine-tune job. # # @overload cancel(fine_tuning_job_id, request_options: {}) # - # @param fine_tuning_job_id [String] + # @param fine_tuning_job_id [String] The ID of the fine-tuning job to cancel. ... + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [OpenAI::Models::FineTuning::FineTuningJob] @@ -106,13 +135,19 @@ def cancel(fine_tuning_job_id, params = {}) ) end + # Some parameter documentations has been truncated, see + # {OpenAI::Models::FineTuning::JobListEventsParams} for more details. + # # Get status updates for a fine-tuning job. # # @overload list_events(fine_tuning_job_id, after: nil, limit: nil, request_options: {}) # - # @param fine_tuning_job_id [String] - # @param after [String] - # @param limit [Integer] + # @param fine_tuning_job_id [String] The ID of the fine-tuning job to get events for. ... + # + # @param after [String] Identifier for the last event from the previous pagination request. + # + # @param limit [Integer] Number of events to retrieve. + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [OpenAI::Internal::CursorPage] diff --git a/lib/openai/resources/fine_tuning/jobs/checkpoints.rb b/lib/openai/resources/fine_tuning/jobs/checkpoints.rb index b8195545..2b5e1d8e 100644 --- a/lib/openai/resources/fine_tuning/jobs/checkpoints.rb +++ b/lib/openai/resources/fine_tuning/jobs/checkpoints.rb @@ -5,13 +5,19 @@ module Resources class FineTuning class Jobs class Checkpoints + # Some parameter documentations has been truncated, see + # {OpenAI::Models::FineTuning::Jobs::CheckpointListParams} for more details. + # # List checkpoints for a fine-tuning job. # # @overload list(fine_tuning_job_id, after: nil, limit: nil, request_options: {}) # - # @param fine_tuning_job_id [String] - # @param after [String] - # @param limit [Integer] + # @param fine_tuning_job_id [String] The ID of the fine-tuning job to get checkpoints for. ... + # + # @param after [String] Identifier for the last checkpoint ID from the previous pagination request. + # + # @param limit [Integer] Number of checkpoints to retrieve. + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [OpenAI::Internal::CursorPage] diff --git a/lib/openai/resources/images.rb b/lib/openai/resources/images.rb index 40bfb0e5..e5f8f465 100644 --- a/lib/openai/resources/images.rb +++ b/lib/openai/resources/images.rb @@ -3,16 +3,30 @@ module OpenAI module Resources class Images + # Some parameter documentations has been truncated, see + # {OpenAI::Models::ImageCreateVariationParams} for more details. + # # Creates a variation of a given image. This endpoint only supports `dall-e-2`. # # @overload create_variation(image:, model: nil, n: nil, response_format: nil, size: nil, user: nil, request_options: {}) # - # @param image [Pathname, StringIO] - # @param model [String, Symbol, OpenAI::Models::ImageModel, nil] - # @param n [Integer, nil] - # @param response_format [Symbol, OpenAI::Models::ImageCreateVariationParams::ResponseFormat, nil] - # @param size [Symbol, OpenAI::Models::ImageCreateVariationParams::Size, nil] - # @param user [String] + # @param image [Pathname, StringIO] The image to use as the basis for the variation(s). Must be a valid PNG file, le + # ... + # + # @param model [String, Symbol, OpenAI::Models::ImageModel, nil] The model to use for image generation. Only `dall-e-2` is supported at this time + # ... + # + # @param n [Integer, nil] The number of images to generate. Must be between 1 and 10. + # + # @param response_format [Symbol, OpenAI::Models::ImageCreateVariationParams::ResponseFormat, nil] The format in which the generated images are returned. Must be one of `url` or ` + # ... + # + # @param size [Symbol, OpenAI::Models::ImageCreateVariationParams::Size, nil] The size of the generated images. Must be one of `256x256`, `512x512`, or `1024x + # ... + # + # @param user [String] A unique identifier representing your end-user, which can help OpenAI to monitor + # ... + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [OpenAI::Models::ImagesResponse] @@ -30,20 +44,40 @@ def create_variation(params) ) end + # Some parameter documentations has been truncated, see + # {OpenAI::Models::ImageEditParams} for more details. + # # Creates an edited or extended image given one or more source images and a # prompt. This endpoint only supports `gpt-image-1` and `dall-e-2`. # # @overload edit(image:, prompt:, mask: nil, model: nil, n: nil, quality: nil, response_format: nil, size: nil, user: nil, request_options: {}) # - # @param image [Pathname, StringIO, Array] - # @param prompt [String] - # @param mask [Pathname, StringIO] - # @param model [String, Symbol, OpenAI::Models::ImageModel, nil] - # @param n [Integer, nil] - # @param quality [Symbol, OpenAI::Models::ImageEditParams::Quality, nil] - # @param response_format [Symbol, OpenAI::Models::ImageEditParams::ResponseFormat, nil] - # @param size [Symbol, OpenAI::Models::ImageEditParams::Size, nil] - # @param user [String] + # @param image [Pathname, StringIO, Array] The image(s) to edit. Must be a supported image file or an array of images. For + # ... + # + # @param prompt [String] A text description of the desired image(s). The maximum length is 1000 character + # ... + # + # @param mask [Pathname, StringIO] An additional image whose fully transparent areas (e.g. where alpha is zero) ind + # ... + # + # @param model [String, Symbol, OpenAI::Models::ImageModel, nil] The model to use for image generation. Only `dall-e-2` and `gpt-image-1` are sup + # ... + # + # @param n [Integer, nil] The number of images to generate. Must be between 1 and 10. + # + # @param quality [Symbol, OpenAI::Models::ImageEditParams::Quality, nil] The quality of the image that will be generated. `high`, `medium` and `low` are + # ... + # + # @param response_format [Symbol, OpenAI::Models::ImageEditParams::ResponseFormat, nil] The format in which the generated images are returned. Must be one of `url` or ` + # ... + # + # @param size [Symbol, OpenAI::Models::ImageEditParams::Size, nil] The size of the generated images. Must be one of `1024x1024`, `1536x1024` (lands + # ... + # + # @param user [String] A unique identifier representing your end-user, which can help OpenAI to monitor + # ... + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [OpenAI::Models::ImagesResponse] @@ -61,23 +95,48 @@ def edit(params) ) end + # Some parameter documentations has been truncated, see + # {OpenAI::Models::ImageGenerateParams} for more details. + # # Creates an image given a prompt. # [Learn more](https://platform.openai.com/docs/guides/images). # # @overload generate(prompt:, background: nil, model: nil, moderation: nil, n: nil, output_compression: nil, output_format: nil, quality: nil, response_format: nil, size: nil, style: nil, user: nil, request_options: {}) # - # @param prompt [String] - # @param background [Symbol, OpenAI::Models::ImageGenerateParams::Background, nil] - # @param model [String, Symbol, OpenAI::Models::ImageModel, nil] - # @param moderation [Symbol, OpenAI::Models::ImageGenerateParams::Moderation, nil] - # @param n [Integer, nil] - # @param output_compression [Integer, nil] - # @param output_format [Symbol, OpenAI::Models::ImageGenerateParams::OutputFormat, nil] - # @param quality [Symbol, OpenAI::Models::ImageGenerateParams::Quality, nil] - # @param response_format [Symbol, OpenAI::Models::ImageGenerateParams::ResponseFormat, nil] - # @param size [Symbol, OpenAI::Models::ImageGenerateParams::Size, nil] - # @param style [Symbol, OpenAI::Models::ImageGenerateParams::Style, nil] - # @param user [String] + # @param prompt [String] A text description of the desired image(s). The maximum length is 32000 characte + # ... + # + # @param background [Symbol, OpenAI::Models::ImageGenerateParams::Background, nil] Allows to set transparency for the background of the generated image(s). ... + # + # @param model [String, Symbol, OpenAI::Models::ImageModel, nil] The model to use for image generation. One of `dall-e-2`, `dall-e-3`, or `gpt-im + # ... + # + # @param moderation [Symbol, OpenAI::Models::ImageGenerateParams::Moderation, nil] Control the content-moderation level for images generated by `gpt-image-1`. Must + # ... + # + # @param n [Integer, nil] The number of images to generate. Must be between 1 and 10. For `dall-e-3`, only + # ... + # + # @param output_compression [Integer, nil] The compression level (0-100%) for the generated images. This parameter is only + # ... + # + # @param output_format [Symbol, OpenAI::Models::ImageGenerateParams::OutputFormat, nil] The format in which the generated images are returned. This parameter is only su + # ... + # + # @param quality [Symbol, OpenAI::Models::ImageGenerateParams::Quality, nil] The quality of the image that will be generated. ... + # + # @param response_format [Symbol, OpenAI::Models::ImageGenerateParams::ResponseFormat, nil] The format in which generated images with `dall-e-2` and `dall-e-3` are returned + # ... + # + # @param size [Symbol, OpenAI::Models::ImageGenerateParams::Size, nil] The size of the generated images. Must be one of `1024x1024`, `1536x1024` (lands + # ... + # + # @param style [Symbol, OpenAI::Models::ImageGenerateParams::Style, nil] The style of the generated images. This parameter is only supported for `dall-e- + # ... + # + # @param user [String] A unique identifier representing your end-user, which can help OpenAI to monitor + # ... + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [OpenAI::Models::ImagesResponse] diff --git a/lib/openai/resources/models.rb b/lib/openai/resources/models.rb index b77422d4..afe9d3e1 100644 --- a/lib/openai/resources/models.rb +++ b/lib/openai/resources/models.rb @@ -8,7 +8,8 @@ class Models # # @overload retrieve(model, request_options: {}) # - # @param model [String] + # @param model [String] The ID of the model to use for this request + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [OpenAI::Models::Model] @@ -48,7 +49,8 @@ def list(params = {}) # # @overload delete(model, request_options: {}) # - # @param model [String] + # @param model [String] The model to delete + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [OpenAI::Models::ModelDeleted] diff --git a/lib/openai/resources/moderations.rb b/lib/openai/resources/moderations.rb index 6df4561d..443d6b18 100644 --- a/lib/openai/resources/moderations.rb +++ b/lib/openai/resources/moderations.rb @@ -3,13 +3,19 @@ module OpenAI module Resources class Moderations + # Some parameter documentations has been truncated, see + # {OpenAI::Models::ModerationCreateParams} for more details. + # # Classifies if text and/or image inputs are potentially harmful. Learn more in # the [moderation guide](https://platform.openai.com/docs/guides/moderation). # # @overload create(input:, model: nil, request_options: {}) # - # @param input [String, Array, Array] - # @param model [String, Symbol, OpenAI::Models::ModerationModel] + # @param input [String, Array, Array] Input (or inputs) to classify. Can be a single string, an array of strings, or + # ... + # + # @param model [String, Symbol, OpenAI::Models::ModerationModel] The content moderation model you would like to use. Learn more in ... + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [OpenAI::Models::ModerationCreateResponse] diff --git a/lib/openai/resources/responses.rb b/lib/openai/resources/responses.rb index 350e7a3f..381dba94 100644 --- a/lib/openai/resources/responses.rb +++ b/lib/openai/resources/responses.rb @@ -8,6 +8,9 @@ class Responses # See {OpenAI::Resources::Responses#stream_raw} for streaming counterpart. # + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Responses::ResponseCreateParams} for more details. + # # Creates a model response. Provide # [text](https://platform.openai.com/docs/guides/text) or # [image](https://platform.openai.com/docs/guides/images) inputs to generate @@ -22,24 +25,47 @@ class Responses # # @overload create(input:, model:, include: nil, instructions: nil, max_output_tokens: nil, metadata: nil, parallel_tool_calls: nil, previous_response_id: nil, reasoning: nil, service_tier: nil, store: nil, temperature: nil, text: nil, tool_choice: nil, tools: nil, top_p: nil, truncation: nil, user: nil, request_options: {}) # - # @param input [String, Array] - # @param model [String, Symbol, OpenAI::Models::ChatModel, OpenAI::Models::ResponsesModel::ResponsesOnlyModel] - # @param include [Array, nil] - # @param instructions [String, nil] - # @param max_output_tokens [Integer, nil] - # @param metadata [Hash{Symbol=>String}, nil] - # @param parallel_tool_calls [Boolean, nil] - # @param previous_response_id [String, nil] - # @param reasoning [OpenAI::Models::Reasoning, nil] - # @param service_tier [Symbol, OpenAI::Models::Responses::ResponseCreateParams::ServiceTier, nil] - # @param store [Boolean, nil] - # @param temperature [Float, nil] - # @param text [OpenAI::Models::Responses::ResponseTextConfig] - # @param tool_choice [Symbol, OpenAI::Models::Responses::ToolChoiceOptions, OpenAI::Models::Responses::ToolChoiceTypes, OpenAI::Models::Responses::ToolChoiceFunction] - # @param tools [Array] - # @param top_p [Float, nil] - # @param truncation [Symbol, OpenAI::Models::Responses::ResponseCreateParams::Truncation, nil] - # @param user [String] + # @param input [String, Array] Text, image, or file inputs to the model, used to generate a response. ... + # + # @param model [String, Symbol, OpenAI::Models::ChatModel, OpenAI::Models::ResponsesModel::ResponsesOnlyModel] Model ID used to generate the response, like `gpt-4o` or `o3`. OpenAI ... + # + # @param include [Array, nil] Specify additional output data to include in the model response. Currently ... + # + # @param instructions [String, nil] Inserts a system (or developer) message as the first item in the model's context + # ... + # + # @param max_output_tokens [Integer, nil] An upper bound for the number of tokens that can be generated for a response, in + # ... + # + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # + # @param parallel_tool_calls [Boolean, nil] Whether to allow the model to run tool calls in parallel. ... + # + # @param previous_response_id [String, nil] The unique ID of the previous response to the model. Use this to ... + # + # @param reasoning [OpenAI::Models::Reasoning, nil] **o-series models only** ... + # + # @param service_tier [Symbol, OpenAI::Models::Responses::ResponseCreateParams::ServiceTier, nil] Specifies the latency tier to use for processing the request. This parameter is + # ... + # + # @param store [Boolean, nil] Whether to store the generated model response for later retrieval via ... + # + # @param temperature [Float, nil] What sampling temperature to use, between 0 and 2. Higher values like 0.8 will m + # ... + # + # @param text [OpenAI::Models::Responses::ResponseTextConfig] Configuration options for a text response from the model. Can be plain ... + # + # @param tool_choice [Symbol, OpenAI::Models::Responses::ToolChoiceOptions, OpenAI::Models::Responses::ToolChoiceTypes, OpenAI::Models::Responses::ToolChoiceFunction] How the model should select which tool (or tools) to use when generating ... + # + # @param tools [Array] An array of tools the model may call while generating a response. You ... + # + # @param top_p [Float, nil] An alternative to sampling with temperature, called nucleus sampling, ... + # + # @param truncation [Symbol, OpenAI::Models::Responses::ResponseCreateParams::Truncation, nil] The truncation strategy to use for the model response. ... + # + # @param user [String] A unique identifier representing your end-user, which can help OpenAI to monitor + # ... + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [OpenAI::Models::Responses::Response] @@ -66,6 +92,9 @@ def stream # See {OpenAI::Resources::Responses#create} for non-streaming counterpart. # + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Responses::ResponseCreateParams} for more details. + # # Creates a model response. Provide # [text](https://platform.openai.com/docs/guides/text) or # [image](https://platform.openai.com/docs/guides/images) inputs to generate @@ -80,24 +109,47 @@ def stream # # @overload stream_raw(input:, model:, include: nil, instructions: nil, max_output_tokens: nil, metadata: nil, parallel_tool_calls: nil, previous_response_id: nil, reasoning: nil, service_tier: nil, store: nil, temperature: nil, text: nil, tool_choice: nil, tools: nil, top_p: nil, truncation: nil, user: nil, request_options: {}) # - # @param input [String, Array] - # @param model [String, Symbol, OpenAI::Models::ChatModel, OpenAI::Models::ResponsesModel::ResponsesOnlyModel] - # @param include [Array, nil] - # @param instructions [String, nil] - # @param max_output_tokens [Integer, nil] - # @param metadata [Hash{Symbol=>String}, nil] - # @param parallel_tool_calls [Boolean, nil] - # @param previous_response_id [String, nil] - # @param reasoning [OpenAI::Models::Reasoning, nil] - # @param service_tier [Symbol, OpenAI::Models::Responses::ResponseCreateParams::ServiceTier, nil] - # @param store [Boolean, nil] - # @param temperature [Float, nil] - # @param text [OpenAI::Models::Responses::ResponseTextConfig] - # @param tool_choice [Symbol, OpenAI::Models::Responses::ToolChoiceOptions, OpenAI::Models::Responses::ToolChoiceTypes, OpenAI::Models::Responses::ToolChoiceFunction] - # @param tools [Array] - # @param top_p [Float, nil] - # @param truncation [Symbol, OpenAI::Models::Responses::ResponseCreateParams::Truncation, nil] - # @param user [String] + # @param input [String, Array] Text, image, or file inputs to the model, used to generate a response. ... + # + # @param model [String, Symbol, OpenAI::Models::ChatModel, OpenAI::Models::ResponsesModel::ResponsesOnlyModel] Model ID used to generate the response, like `gpt-4o` or `o3`. OpenAI ... + # + # @param include [Array, nil] Specify additional output data to include in the model response. Currently ... + # + # @param instructions [String, nil] Inserts a system (or developer) message as the first item in the model's context + # ... + # + # @param max_output_tokens [Integer, nil] An upper bound for the number of tokens that can be generated for a response, in + # ... + # + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # + # @param parallel_tool_calls [Boolean, nil] Whether to allow the model to run tool calls in parallel. ... + # + # @param previous_response_id [String, nil] The unique ID of the previous response to the model. Use this to ... + # + # @param reasoning [OpenAI::Models::Reasoning, nil] **o-series models only** ... + # + # @param service_tier [Symbol, OpenAI::Models::Responses::ResponseCreateParams::ServiceTier, nil] Specifies the latency tier to use for processing the request. This parameter is + # ... + # + # @param store [Boolean, nil] Whether to store the generated model response for later retrieval via ... + # + # @param temperature [Float, nil] What sampling temperature to use, between 0 and 2. Higher values like 0.8 will m + # ... + # + # @param text [OpenAI::Models::Responses::ResponseTextConfig] Configuration options for a text response from the model. Can be plain ... + # + # @param tool_choice [Symbol, OpenAI::Models::Responses::ToolChoiceOptions, OpenAI::Models::Responses::ToolChoiceTypes, OpenAI::Models::Responses::ToolChoiceFunction] How the model should select which tool (or tools) to use when generating ... + # + # @param tools [Array] An array of tools the model may call while generating a response. You ... + # + # @param top_p [Float, nil] An alternative to sampling with temperature, called nucleus sampling, ... + # + # @param truncation [Symbol, OpenAI::Models::Responses::ResponseCreateParams::Truncation, nil] The truncation strategy to use for the model response. ... + # + # @param user [String] A unique identifier representing your end-user, which can help OpenAI to monitor + # ... + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [OpenAI::Internal::Stream] @@ -121,12 +173,17 @@ def stream_raw(params) ) end + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Responses::ResponseRetrieveParams} for more details. + # # Retrieves a model response with the given ID. # # @overload retrieve(response_id, include: nil, request_options: {}) # - # @param response_id [String] - # @param include [Array] + # @param response_id [String] The ID of the response to retrieve. + # + # @param include [Array] Additional fields to include in the response. See the `include` ... + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [OpenAI::Models::Responses::Response] @@ -147,7 +204,8 @@ def retrieve(response_id, params = {}) # # @overload delete(response_id, request_options: {}) # - # @param response_id [String] + # @param response_id [String] The ID of the response to delete. + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [nil] diff --git a/lib/openai/resources/responses/input_items.rb b/lib/openai/resources/responses/input_items.rb index 5e875778..a47baded 100644 --- a/lib/openai/resources/responses/input_items.rb +++ b/lib/openai/resources/responses/input_items.rb @@ -4,16 +4,25 @@ module OpenAI module Resources class Responses class InputItems + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Responses::InputItemListParams} for more details. + # # Returns a list of input items for a given response. # # @overload list(response_id, after: nil, before: nil, include: nil, limit: nil, order: nil, request_options: {}) # - # @param response_id [String] - # @param after [String] - # @param before [String] - # @param include [Array] - # @param limit [Integer] - # @param order [Symbol, OpenAI::Models::Responses::InputItemListParams::Order] + # @param response_id [String] The ID of the response to retrieve input items for. + # + # @param after [String] An item ID to list items after, used in pagination. ... + # + # @param before [String] An item ID to list items before, used in pagination. ... + # + # @param include [Array] Additional fields to include in the response. See the `include` ... + # + # @param limit [Integer] A limit on the number of objects to be returned. Limit can range between ... + # + # @param order [Symbol, OpenAI::Models::Responses::InputItemListParams::Order] The order to return the input items in. Default is `asc`. ... + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [OpenAI::Internal::CursorPage] diff --git a/lib/openai/resources/uploads.rb b/lib/openai/resources/uploads.rb index 1c497d22..719532b1 100644 --- a/lib/openai/resources/uploads.rb +++ b/lib/openai/resources/uploads.rb @@ -6,6 +6,9 @@ class Uploads # @return [OpenAI::Resources::Uploads::Parts] attr_reader :parts + # Some parameter documentations has been truncated, see + # {OpenAI::Models::UploadCreateParams} for more details. + # # Creates an intermediate # [Upload](https://platform.openai.com/docs/api-reference/uploads/object) object # that you can add @@ -28,10 +31,14 @@ class Uploads # # @overload create(bytes:, filename:, mime_type:, purpose:, request_options: {}) # - # @param bytes [Integer] - # @param filename [String] - # @param mime_type [String] - # @param purpose [Symbol, OpenAI::Models::FilePurpose] + # @param bytes [Integer] The number of bytes in the file you are uploading. ... + # + # @param filename [String] The name of the file to upload. ... + # + # @param mime_type [String] The MIME type of the file. ... + # + # @param purpose [Symbol, OpenAI::Models::FilePurpose] The intended purpose of the uploaded file. ... + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [OpenAI::Models::Upload] @@ -48,11 +55,15 @@ def create(params) ) end + # Some parameter documentations has been truncated, see + # {OpenAI::Models::UploadCancelParams} for more details. + # # Cancels the Upload. No Parts may be added after an Upload is cancelled. # # @overload cancel(upload_id, request_options: {}) # - # @param upload_id [String] + # @param upload_id [String] The ID of the Upload. ... + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [OpenAI::Models::Upload] @@ -67,6 +78,9 @@ def cancel(upload_id, params = {}) ) end + # Some parameter documentations has been truncated, see + # {OpenAI::Models::UploadCompleteParams} for more details. + # # Completes the # [Upload](https://platform.openai.com/docs/api-reference/uploads/object). # @@ -83,9 +97,13 @@ def cancel(upload_id, params = {}) # # @overload complete(upload_id, part_ids:, md5: nil, request_options: {}) # - # @param upload_id [String] - # @param part_ids [Array] - # @param md5 [String] + # @param upload_id [String] The ID of the Upload. ... + # + # @param part_ids [Array] The ordered list of Part IDs. ... + # + # @param md5 [String] The optional md5 checksum for the file contents to verify if the bytes uploaded + # ... + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [OpenAI::Models::Upload] diff --git a/lib/openai/resources/uploads/parts.rb b/lib/openai/resources/uploads/parts.rb index 12d21af6..b0e572a1 100644 --- a/lib/openai/resources/uploads/parts.rb +++ b/lib/openai/resources/uploads/parts.rb @@ -4,6 +4,9 @@ module OpenAI module Resources class Uploads class Parts + # Some parameter documentations has been truncated, see + # {OpenAI::Models::Uploads::PartCreateParams} for more details. + # # Adds a # [Part](https://platform.openai.com/docs/api-reference/uploads/part-object) to an # [Upload](https://platform.openai.com/docs/api-reference/uploads/object) object. @@ -18,8 +21,10 @@ class Parts # # @overload create(upload_id, data:, request_options: {}) # - # @param upload_id [String] - # @param data [Pathname, StringIO] + # @param upload_id [String] The ID of the Upload. ... + # + # @param data [Pathname, StringIO] The chunk of bytes for this Part. ... + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [OpenAI::Models::Uploads::UploadPart] diff --git a/lib/openai/resources/vector_stores.rb b/lib/openai/resources/vector_stores.rb index 3547ae53..cc75a01e 100644 --- a/lib/openai/resources/vector_stores.rb +++ b/lib/openai/resources/vector_stores.rb @@ -9,15 +9,25 @@ class VectorStores # @return [OpenAI::Resources::VectorStores::FileBatches] attr_reader :file_batches + # Some parameter documentations has been truncated, see + # {OpenAI::Models::VectorStoreCreateParams} for more details. + # # Create a vector store. # # @overload create(chunking_strategy: nil, expires_after: nil, file_ids: nil, metadata: nil, name: nil, request_options: {}) # - # @param chunking_strategy [OpenAI::Models::AutoFileChunkingStrategyParam, OpenAI::Models::StaticFileChunkingStrategyObjectParam] - # @param expires_after [OpenAI::Models::VectorStoreCreateParams::ExpiresAfter] - # @param file_ids [Array] - # @param metadata [Hash{Symbol=>String}, nil] - # @param name [String] + # @param chunking_strategy [OpenAI::Models::AutoFileChunkingStrategyParam, OpenAI::Models::StaticFileChunkingStrategyObjectParam] The chunking strategy used to chunk the file(s). If not set, will use the `auto` + # ... + # + # @param expires_after [OpenAI::Models::VectorStoreCreateParams::ExpiresAfter] The expiration policy for a vector store. + # + # @param file_ids [Array] A list of [File](https://platform.openai.com/docs/api-reference/files) IDs that + # ... + # + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # + # @param name [String] The name of the vector store. + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [OpenAI::Models::VectorStore] @@ -38,7 +48,8 @@ def create(params = {}) # # @overload retrieve(vector_store_id, request_options: {}) # - # @param vector_store_id [String] + # @param vector_store_id [String] The ID of the vector store to retrieve. + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [OpenAI::Models::VectorStore] @@ -53,14 +64,21 @@ def retrieve(vector_store_id, params = {}) ) end + # Some parameter documentations has been truncated, see + # {OpenAI::Models::VectorStoreUpdateParams} for more details. + # # Modifies a vector store. # # @overload update(vector_store_id, expires_after: nil, metadata: nil, name: nil, request_options: {}) # - # @param vector_store_id [String] - # @param expires_after [OpenAI::Models::VectorStoreUpdateParams::ExpiresAfter, nil] - # @param metadata [Hash{Symbol=>String}, nil] - # @param name [String, nil] + # @param vector_store_id [String] The ID of the vector store to modify. + # + # @param expires_after [OpenAI::Models::VectorStoreUpdateParams::ExpiresAfter, nil] The expiration policy for a vector store. + # + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # + # @param name [String, nil] The name of the vector store. + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [OpenAI::Models::VectorStore] @@ -77,14 +95,25 @@ def update(vector_store_id, params = {}) ) end + # Some parameter documentations has been truncated, see + # {OpenAI::Models::VectorStoreListParams} for more details. + # # Returns a list of vector stores. # # @overload list(after: nil, before: nil, limit: nil, order: nil, request_options: {}) # - # @param after [String] - # @param before [String] - # @param limit [Integer] - # @param order [Symbol, OpenAI::Models::VectorStoreListParams::Order] + # @param after [String] A cursor for use in pagination. `after` is an object ID that defines your place + # ... + # + # @param before [String] A cursor for use in pagination. `before` is an object ID that defines your place + # ... + # + # @param limit [Integer] A limit on the number of objects to be returned. Limit can range between 1 and 1 + # ... + # + # @param order [Symbol, OpenAI::Models::VectorStoreListParams::Order] Sort order by the `created_at` timestamp of the objects. `asc` for ascending ord + # ... + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [OpenAI::Internal::CursorPage] @@ -106,7 +135,8 @@ def list(params = {}) # # @overload delete(vector_store_id, request_options: {}) # - # @param vector_store_id [String] + # @param vector_store_id [String] The ID of the vector store to delete. + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [OpenAI::Models::VectorStoreDeleted] @@ -121,17 +151,27 @@ def delete(vector_store_id, params = {}) ) end + # Some parameter documentations has been truncated, see + # {OpenAI::Models::VectorStoreSearchParams} for more details. + # # Search a vector store for relevant chunks based on a query and file attributes # filter. # # @overload search(vector_store_id, query:, filters: nil, max_num_results: nil, ranking_options: nil, rewrite_query: nil, request_options: {}) # - # @param vector_store_id [String] - # @param query [String, Array] - # @param filters [OpenAI::Models::ComparisonFilter, OpenAI::Models::CompoundFilter] - # @param max_num_results [Integer] - # @param ranking_options [OpenAI::Models::VectorStoreSearchParams::RankingOptions] - # @param rewrite_query [Boolean] + # @param vector_store_id [String] The ID of the vector store to search. + # + # @param query [String, Array] A query string for a search + # + # @param filters [OpenAI::Models::ComparisonFilter, OpenAI::Models::CompoundFilter] A filter to apply based on file attributes. + # + # @param max_num_results [Integer] The maximum number of results to return. This number should be between 1 and 50 + # ... + # + # @param ranking_options [OpenAI::Models::VectorStoreSearchParams::RankingOptions] Ranking options for search. + # + # @param rewrite_query [Boolean] Whether to rewrite the natural language query for vector search. + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [OpenAI::Internal::Page] diff --git a/lib/openai/resources/vector_stores/file_batches.rb b/lib/openai/resources/vector_stores/file_batches.rb index 71268646..10b3e3dc 100644 --- a/lib/openai/resources/vector_stores/file_batches.rb +++ b/lib/openai/resources/vector_stores/file_batches.rb @@ -4,14 +4,23 @@ module OpenAI module Resources class VectorStores class FileBatches + # Some parameter documentations has been truncated, see + # {OpenAI::Models::VectorStores::FileBatchCreateParams} for more details. + # # Create a vector store file batch. # # @overload create(vector_store_id, file_ids:, attributes: nil, chunking_strategy: nil, request_options: {}) # - # @param vector_store_id [String] - # @param file_ids [Array] - # @param attributes [Hash{Symbol=>String, Float, Boolean}, nil] - # @param chunking_strategy [OpenAI::Models::AutoFileChunkingStrategyParam, OpenAI::Models::StaticFileChunkingStrategyObjectParam] + # @param vector_store_id [String] The ID of the vector store for which to create a File Batch. ... + # + # @param file_ids [Array] A list of [File](https://platform.openai.com/docs/api-reference/files) IDs that + # ... + # + # @param attributes [Hash{Symbol=>String, Float, Boolean}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # + # @param chunking_strategy [OpenAI::Models::AutoFileChunkingStrategyParam, OpenAI::Models::StaticFileChunkingStrategyObjectParam] The chunking strategy used to chunk the file(s). If not set, will use the `auto` + # ... + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [OpenAI::Models::VectorStores::VectorStoreFileBatch] @@ -32,8 +41,10 @@ def create(vector_store_id, params) # # @overload retrieve(batch_id, vector_store_id:, request_options: {}) # - # @param batch_id [String] - # @param vector_store_id [String] + # @param batch_id [String] The ID of the file batch being retrieved. + # + # @param vector_store_id [String] The ID of the vector store that the file batch belongs to. + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [OpenAI::Models::VectorStores::VectorStoreFileBatch] @@ -58,8 +69,10 @@ def retrieve(batch_id, params) # # @overload cancel(batch_id, vector_store_id:, request_options: {}) # - # @param batch_id [String] - # @param vector_store_id [String] + # @param batch_id [String] The ID of the file batch to cancel. + # + # @param vector_store_id [String] The ID of the vector store that the file batch belongs to. + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [OpenAI::Models::VectorStores::VectorStoreFileBatch] @@ -79,17 +92,32 @@ def cancel(batch_id, params) ) end + # Some parameter documentations has been truncated, see + # {OpenAI::Models::VectorStores::FileBatchListFilesParams} for more details. + # # Returns a list of vector store files in a batch. # # @overload list_files(batch_id, vector_store_id:, after: nil, before: nil, filter: nil, limit: nil, order: nil, request_options: {}) # - # @param batch_id [String] - # @param vector_store_id [String] - # @param after [String] - # @param before [String] - # @param filter [Symbol, OpenAI::Models::VectorStores::FileBatchListFilesParams::Filter] - # @param limit [Integer] - # @param order [Symbol, OpenAI::Models::VectorStores::FileBatchListFilesParams::Order] + # @param batch_id [String] Path param: The ID of the file batch that the files belong to. + # + # @param vector_store_id [String] Path param: The ID of the vector store that the files belong to. + # + # @param after [String] Query param: A cursor for use in pagination. `after` is an object ID that define + # ... + # + # @param before [String] Query param: A cursor for use in pagination. `before` is an object ID that defin + # ... + # + # @param filter [Symbol, OpenAI::Models::VectorStores::FileBatchListFilesParams::Filter] Query param: Filter by file status. One of `in_progress`, `completed`, `failed`, + # ... + # + # @param limit [Integer] Query param: A limit on the number of objects to be returned. Limit can range be + # ... + # + # @param order [Symbol, OpenAI::Models::VectorStores::FileBatchListFilesParams::Order] Query param: Sort order by the `created_at` timestamp of the objects. `asc` for + # ... + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [OpenAI::Internal::CursorPage] diff --git a/lib/openai/resources/vector_stores/files.rb b/lib/openai/resources/vector_stores/files.rb index 9f6900e7..74870229 100644 --- a/lib/openai/resources/vector_stores/files.rb +++ b/lib/openai/resources/vector_stores/files.rb @@ -4,16 +4,25 @@ module OpenAI module Resources class VectorStores class Files + # Some parameter documentations has been truncated, see + # {OpenAI::Models::VectorStores::FileCreateParams} for more details. + # # Create a vector store file by attaching a # [File](https://platform.openai.com/docs/api-reference/files) to a # [vector store](https://platform.openai.com/docs/api-reference/vector-stores/object). # # @overload create(vector_store_id, file_id:, attributes: nil, chunking_strategy: nil, request_options: {}) # - # @param vector_store_id [String] - # @param file_id [String] - # @param attributes [Hash{Symbol=>String, Float, Boolean}, nil] - # @param chunking_strategy [OpenAI::Models::AutoFileChunkingStrategyParam, OpenAI::Models::StaticFileChunkingStrategyObjectParam] + # @param vector_store_id [String] The ID of the vector store for which to create a File. ... + # + # @param file_id [String] A [File](https://platform.openai.com/docs/api-reference/files) ID that the vecto + # ... + # + # @param attributes [Hash{Symbol=>String, Float, Boolean}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # + # @param chunking_strategy [OpenAI::Models::AutoFileChunkingStrategyParam, OpenAI::Models::StaticFileChunkingStrategyObjectParam] The chunking strategy used to chunk the file(s). If not set, will use the `auto` + # ... + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [OpenAI::Models::VectorStores::VectorStoreFile] @@ -34,8 +43,10 @@ def create(vector_store_id, params) # # @overload retrieve(file_id, vector_store_id:, request_options: {}) # - # @param file_id [String] - # @param vector_store_id [String] + # @param file_id [String] The ID of the file being retrieved. + # + # @param vector_store_id [String] The ID of the vector store that the file belongs to. + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [OpenAI::Models::VectorStores::VectorStoreFile] @@ -55,13 +66,20 @@ def retrieve(file_id, params) ) end + # Some parameter documentations has been truncated, see + # {OpenAI::Models::VectorStores::FileUpdateParams} for more details. + # # Update attributes on a vector store file. # # @overload update(file_id, vector_store_id:, attributes:, request_options: {}) # - # @param file_id [String] - # @param vector_store_id [String] - # @param attributes [Hash{Symbol=>String, Float, Boolean}, nil] + # @param file_id [String] Path param: The ID of the file to update attributes. + # + # @param vector_store_id [String] Path param: The ID of the vector store the file belongs to. + # + # @param attributes [Hash{Symbol=>String, Float, Boolean}, nil] Body param: Set of 16 key-value pairs that can be attached to an object. This ca + # ... + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [OpenAI::Models::VectorStores::VectorStoreFile] @@ -82,16 +100,30 @@ def update(file_id, params) ) end + # Some parameter documentations has been truncated, see + # {OpenAI::Models::VectorStores::FileListParams} for more details. + # # Returns a list of vector store files. # # @overload list(vector_store_id, after: nil, before: nil, filter: nil, limit: nil, order: nil, request_options: {}) # - # @param vector_store_id [String] - # @param after [String] - # @param before [String] - # @param filter [Symbol, OpenAI::Models::VectorStores::FileListParams::Filter] - # @param limit [Integer] - # @param order [Symbol, OpenAI::Models::VectorStores::FileListParams::Order] + # @param vector_store_id [String] The ID of the vector store that the files belong to. + # + # @param after [String] A cursor for use in pagination. `after` is an object ID that defines your place + # ... + # + # @param before [String] A cursor for use in pagination. `before` is an object ID that defines your place + # ... + # + # @param filter [Symbol, OpenAI::Models::VectorStores::FileListParams::Filter] Filter by file status. One of `in_progress`, `completed`, `failed`, `cancelled`. + # ... + # + # @param limit [Integer] A limit on the number of objects to be returned. Limit can range between 1 and 1 + # ... + # + # @param order [Symbol, OpenAI::Models::VectorStores::FileListParams::Order] Sort order by the `created_at` timestamp of the objects. `asc` for ascending ord + # ... + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [OpenAI::Internal::CursorPage] @@ -116,8 +148,10 @@ def list(vector_store_id, params = {}) # # @overload delete(file_id, vector_store_id:, request_options: {}) # - # @param file_id [String] - # @param vector_store_id [String] + # @param file_id [String] The ID of the file to delete. + # + # @param vector_store_id [String] The ID of the vector store that the file belongs to. + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [OpenAI::Models::VectorStores::VectorStoreFileDeleted] @@ -141,8 +175,10 @@ def delete(file_id, params) # # @overload content(file_id, vector_store_id:, request_options: {}) # - # @param file_id [String] - # @param vector_store_id [String] + # @param file_id [String] The ID of the file within the vector store. + # + # @param vector_store_id [String] The ID of the vector store. + # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # # @return [OpenAI::Internal::Page] diff --git a/rbi/lib/openai/models/audio/speech_create_params.rbi b/rbi/lib/openai/models/audio/speech_create_params.rbi index 68db9bed..d27b0482 100644 --- a/rbi/lib/openai/models/audio/speech_create_params.rbi +++ b/rbi/lib/openai/models/audio/speech_create_params.rbi @@ -60,16 +60,27 @@ module OpenAI .returns(T.attached_class) end def self.new( + # The text to generate audio for. The maximum length is 4096 characters. input:, + # One of the available [TTS models](https://platform.openai.com/docs/models#tts): + # `tts-1`, `tts-1-hd` or `gpt-4o-mini-tts`. model:, + # The voice to use when generating the audio. Supported voices are `alloy`, `ash`, + # `ballad`, `coral`, `echo`, `fable`, `onyx`, `nova`, `sage`, `shimmer`, and + # `verse`. Previews of the voices are available in the + # [Text to speech guide](https://platform.openai.com/docs/guides/text-to-speech#voice-options). voice:, + # Control the voice of your generated audio with additional instructions. Does not + # work with `tts-1` or `tts-1-hd`. instructions: nil, + # The format to audio in. Supported formats are `mp3`, `opus`, `aac`, `flac`, + # `wav`, and `pcm`. response_format: nil, + # The speed of the generated audio. Select a value from `0.25` to `4.0`. `1.0` is + # the default. speed: nil, request_options: {} - ) - end - + ); end sig do override .returns( diff --git a/rbi/lib/openai/models/audio/transcription.rbi b/rbi/lib/openai/models/audio/transcription.rbi index ccea9d77..fa6cd066 100644 --- a/rbi/lib/openai/models/audio/transcription.rbi +++ b/rbi/lib/openai/models/audio/transcription.rbi @@ -31,8 +31,14 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(text:, logprobs: nil); end - + def self.new( + # The transcribed text. + text:, + # The log probabilities of the tokens in the transcription. Only returned with the + # models `gpt-4o-transcribe` and `gpt-4o-mini-transcribe` if `logprobs` is added + # to the `include` array. + logprobs: nil + ); end sig { override.returns({text: String, logprobs: T::Array[OpenAI::Models::Audio::Transcription::Logprob]}) } def to_hash; end @@ -59,8 +65,14 @@ module OpenAI attr_writer :logprob sig { params(token: String, bytes: T::Array[Float], logprob: Float).returns(T.attached_class) } - def self.new(token: nil, bytes: nil, logprob: nil); end - + def self.new( + # The token in the transcription. + token: nil, + # The bytes of the token. + bytes: nil, + # The log probability of the token. + logprob: nil + ); end sig { override.returns({token: String, bytes: T::Array[Float], logprob: Float}) } def to_hash; end end diff --git a/rbi/lib/openai/models/audio/transcription_create_params.rbi b/rbi/lib/openai/models/audio/transcription_create_params.rbi index c6020c3f..f89a401f 100644 --- a/rbi/lib/openai/models/audio/transcription_create_params.rbi +++ b/rbi/lib/openai/models/audio/transcription_create_params.rbi @@ -103,13 +103,43 @@ module OpenAI .returns(T.attached_class) end def self.new( + # The audio file object (not file name) to transcribe, in one of these formats: + # flac, mp3, mp4, mpeg, mpga, m4a, ogg, wav, or webm. file:, + # ID of the model to use. The options are `gpt-4o-transcribe`, + # `gpt-4o-mini-transcribe`, and `whisper-1` (which is powered by our open source + # Whisper V2 model). model:, + # Additional information to include in the transcription response. `logprobs` will + # return the log probabilities of the tokens in the response to understand the + # model's confidence in the transcription. `logprobs` only works with + # response_format set to `json` and only with the models `gpt-4o-transcribe` and + # `gpt-4o-mini-transcribe`. include: nil, + # The language of the input audio. Supplying the input language in + # [ISO-639-1](https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes) (e.g. `en`) + # format will improve accuracy and latency. language: nil, + # An optional text to guide the model's style or continue a previous audio + # segment. The + # [prompt](https://platform.openai.com/docs/guides/speech-to-text#prompting) + # should match the audio language. prompt: nil, + # The format of the output, in one of these options: `json`, `text`, `srt`, + # `verbose_json`, or `vtt`. For `gpt-4o-transcribe` and `gpt-4o-mini-transcribe`, + # the only supported format is `json`. response_format: nil, + # The sampling temperature, between 0 and 1. Higher values like 0.8 will make the + # output more random, while lower values like 0.2 will make it more focused and + # deterministic. If set to 0, the model will use + # [log probability](https://en.wikipedia.org/wiki/Log_probability) to + # automatically increase the temperature until certain thresholds are hit. temperature: nil, + # The timestamp granularities to populate for this transcription. + # `response_format` must be set `verbose_json` to use timestamp granularities. + # Either or both of these options are supported: `word`, or `segment`. Note: There + # is no additional latency for segment timestamps, but generating word timestamps + # incurs additional latency. timestamp_granularities: nil, request_options: {} ); end diff --git a/rbi/lib/openai/models/audio/transcription_segment.rbi b/rbi/lib/openai/models/audio/transcription_segment.rbi index 37306ed0..e98fad18 100644 --- a/rbi/lib/openai/models/audio/transcription_segment.rbi +++ b/rbi/lib/openai/models/audio/transcription_segment.rbi @@ -63,19 +63,30 @@ module OpenAI .returns(T.attached_class) end def self.new( + # Unique identifier of the segment. id:, + # Average logprob of the segment. If the value is lower than -1, consider the + # logprobs failed. avg_logprob:, + # Compression ratio of the segment. If the value is greater than 2.4, consider the + # compression failed. compression_ratio:, + # End time of the segment in seconds. end_:, + # Probability of no speech in the segment. If the value is higher than 1.0 and the + # `avg_logprob` is below -1, consider this segment silent. no_speech_prob:, + # Seek offset of the segment. seek:, + # Start time of the segment in seconds. start:, + # Temperature parameter used for generating the segment. temperature:, + # Text content of the segment. text:, + # Array of token IDs for the text content. tokens: - ) - end - + ); end sig do override .returns( diff --git a/rbi/lib/openai/models/audio/transcription_text_delta_event.rbi b/rbi/lib/openai/models/audio/transcription_text_delta_event.rbi index c0c5e553..25ace7da 100644 --- a/rbi/lib/openai/models/audio/transcription_text_delta_event.rbi +++ b/rbi/lib/openai/models/audio/transcription_text_delta_event.rbi @@ -38,8 +38,16 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(delta:, logprobs: nil, type: :"transcript.text.delta"); end - + def self.new( + # The text delta that was additionally transcribed. + delta:, + # The log probabilities of the delta. Only included if you + # [create a transcription](https://platform.openai.com/docs/api-reference/audio/create-transcription) + # with the `include[]` parameter set to `logprobs`. + logprobs: nil, + # The type of the event. Always `transcript.text.delta`. + type: :"transcript.text.delta" + ); end sig do override .returns( @@ -71,8 +79,14 @@ module OpenAI attr_writer :logprob sig { params(token: String, bytes: T::Array[T.anything], logprob: Float).returns(T.attached_class) } - def self.new(token: nil, bytes: nil, logprob: nil); end - + def self.new( + # The token that was used to generate the log probability. + token: nil, + # The bytes that were used to generate the log probability. + bytes: nil, + # The log probability of the token. + logprob: nil + ); end sig { override.returns({token: String, bytes: T::Array[T.anything], logprob: Float}) } def to_hash; end end diff --git a/rbi/lib/openai/models/audio/transcription_text_done_event.rbi b/rbi/lib/openai/models/audio/transcription_text_done_event.rbi index 95c68dcc..08687ed5 100644 --- a/rbi/lib/openai/models/audio/transcription_text_done_event.rbi +++ b/rbi/lib/openai/models/audio/transcription_text_done_event.rbi @@ -39,8 +39,17 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(text:, logprobs: nil, type: :"transcript.text.done"); end - + def self.new( + # The text that was transcribed. + text:, + # The log probabilities of the individual tokens in the transcription. Only + # included if you + # [create a transcription](https://platform.openai.com/docs/api-reference/audio/create-transcription) + # with the `include[]` parameter set to `logprobs`. + logprobs: nil, + # The type of the event. Always `transcript.text.done`. + type: :"transcript.text.done" + ); end sig do override .returns( @@ -72,8 +81,14 @@ module OpenAI attr_writer :logprob sig { params(token: String, bytes: T::Array[T.anything], logprob: Float).returns(T.attached_class) } - def self.new(token: nil, bytes: nil, logprob: nil); end - + def self.new( + # The token that was used to generate the log probability. + token: nil, + # The bytes that were used to generate the log probability. + bytes: nil, + # The log probability of the token. + logprob: nil + ); end sig { override.returns({token: String, bytes: T::Array[T.anything], logprob: Float}) } def to_hash; end end diff --git a/rbi/lib/openai/models/audio/transcription_verbose.rbi b/rbi/lib/openai/models/audio/transcription_verbose.rbi index 76b0838c..43af0a5c 100644 --- a/rbi/lib/openai/models/audio/transcription_verbose.rbi +++ b/rbi/lib/openai/models/audio/transcription_verbose.rbi @@ -45,8 +45,18 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(duration:, language:, text:, segments: nil, words: nil); end - + def self.new( + # The duration of the input audio. + duration:, + # The language of the input audio. + language:, + # The transcribed text. + text:, + # Segments of the transcribed text and their corresponding details. + segments: nil, + # Extracted words and their corresponding timestamps. + words: nil + ); end sig do override .returns( diff --git a/rbi/lib/openai/models/audio/transcription_word.rbi b/rbi/lib/openai/models/audio/transcription_word.rbi index 639e066d..51122c61 100644 --- a/rbi/lib/openai/models/audio/transcription_word.rbi +++ b/rbi/lib/openai/models/audio/transcription_word.rbi @@ -17,8 +17,14 @@ module OpenAI attr_accessor :word sig { params(end_: Float, start: Float, word: String).returns(T.attached_class) } - def self.new(end_:, start:, word:); end - + def self.new( + # End time of the word in seconds. + end_:, + # Start time of the word in seconds. + start:, + # The text content of the word. + word: + ); end sig { override.returns({end_: Float, start: Float, word: String}) } def to_hash; end end diff --git a/rbi/lib/openai/models/audio/translation_create_params.rbi b/rbi/lib/openai/models/audio/translation_create_params.rbi index 405309c1..807e0bb2 100644 --- a/rbi/lib/openai/models/audio/translation_create_params.rbi +++ b/rbi/lib/openai/models/audio/translation_create_params.rbi @@ -57,9 +57,29 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(file:, model:, prompt: nil, response_format: nil, temperature: nil, request_options: {}) - end - + def self.new( + # The audio file object (not file name) translate, in one of these formats: flac, + # mp3, mp4, mpeg, mpga, m4a, ogg, wav, or webm. + file:, + # ID of the model to use. Only `whisper-1` (which is powered by our open source + # Whisper V2 model) is currently available. + model:, + # An optional text to guide the model's style or continue a previous audio + # segment. The + # [prompt](https://platform.openai.com/docs/guides/speech-to-text#prompting) + # should be in English. + prompt: nil, + # The format of the output, in one of these options: `json`, `text`, `srt`, + # `verbose_json`, or `vtt`. + response_format: nil, + # The sampling temperature, between 0 and 1. Higher values like 0.8 will make the + # output more random, while lower values like 0.2 will make it more focused and + # deterministic. If set to 0, the model will use + # [log probability](https://en.wikipedia.org/wiki/Log_probability) to + # automatically increase the temperature until certain thresholds are hit. + temperature: nil, + request_options: {} + ); end sig do override .returns( diff --git a/rbi/lib/openai/models/audio/translation_verbose.rbi b/rbi/lib/openai/models/audio/translation_verbose.rbi index 77fb4815..9458e067 100644 --- a/rbi/lib/openai/models/audio/translation_verbose.rbi +++ b/rbi/lib/openai/models/audio/translation_verbose.rbi @@ -35,8 +35,16 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(duration:, language:, text:, segments: nil); end - + def self.new( + # The duration of the input audio. + duration:, + # The language of the output translation (always `english`). + language:, + # The translated text. + text:, + # Segments of the translated text and their corresponding details. + segments: nil + ); end sig do override .returns( diff --git a/rbi/lib/openai/models/auto_file_chunking_strategy_param.rbi b/rbi/lib/openai/models/auto_file_chunking_strategy_param.rbi index d072297d..7ea24386 100644 --- a/rbi/lib/openai/models/auto_file_chunking_strategy_param.rbi +++ b/rbi/lib/openai/models/auto_file_chunking_strategy_param.rbi @@ -10,8 +10,10 @@ module OpenAI # The default strategy. This strategy currently uses a `max_chunk_size_tokens` of # `800` and `chunk_overlap_tokens` of `400`. sig { params(type: Symbol).returns(T.attached_class) } - def self.new(type: :auto); end - + def self.new( + # Always `auto`. + type: :auto + ); end sig { override.returns({type: Symbol}) } def to_hash; end end diff --git a/rbi/lib/openai/models/batch.rbi b/rbi/lib/openai/models/batch.rbi index 8de778c2..bbb7b1cd 100644 --- a/rbi/lib/openai/models/batch.rbi +++ b/rbi/lib/openai/models/batch.rbi @@ -149,24 +149,47 @@ module OpenAI end def self.new( id:, + # The time frame within which the batch should be processed. completion_window:, + # The Unix timestamp (in seconds) for when the batch was created. created_at:, + # The OpenAI API endpoint used by the batch. endpoint:, + # The ID of the input file for the batch. input_file_id:, + # The current status of the batch. status:, + # The Unix timestamp (in seconds) for when the batch was cancelled. cancelled_at: nil, + # The Unix timestamp (in seconds) for when the batch started cancelling. cancelling_at: nil, + # The Unix timestamp (in seconds) for when the batch was completed. completed_at: nil, + # The ID of the file containing the outputs of requests with errors. error_file_id: nil, errors: nil, + # The Unix timestamp (in seconds) for when the batch expired. expired_at: nil, + # The Unix timestamp (in seconds) for when the batch will expire. expires_at: nil, + # The Unix timestamp (in seconds) for when the batch failed. failed_at: nil, + # The Unix timestamp (in seconds) for when the batch started finalizing. finalizing_at: nil, + # The Unix timestamp (in seconds) for when the batch started processing. in_progress_at: nil, + # 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: nil, + # The ID of the file containing the outputs of successfully executed requests. output_file_id: nil, + # The request counts for different statuses within the batch. request_counts: nil, + # The object type, which is always `batch`. object: :batch ); end sig do @@ -236,8 +259,11 @@ module OpenAI params(data: T::Array[T.any(OpenAI::Models::BatchError, OpenAI::Internal::AnyHash)], object: String) .returns(T.attached_class) end - def self.new(data: nil, object: nil); end - + def self.new( + data: nil, + # The object type, which is always `list`. + object: nil + ); end sig { override.returns({data: T::Array[OpenAI::Models::BatchError], object: String}) } def to_hash; end end diff --git a/rbi/lib/openai/models/batch_create_params.rbi b/rbi/lib/openai/models/batch_create_params.rbi index 3a795500..fec9c7ac 100644 --- a/rbi/lib/openai/models/batch_create_params.rbi +++ b/rbi/lib/openai/models/batch_create_params.rbi @@ -49,8 +49,34 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(completion_window:, endpoint:, input_file_id:, metadata: nil, request_options: {}); end - + def self.new( + # The time frame within which the batch should be processed. Currently only `24h` + # is supported. + completion_window:, + # The endpoint to be used for all requests in the batch. Currently + # `/v1/responses`, `/v1/chat/completions`, `/v1/embeddings`, and `/v1/completions` + # are supported. Note that `/v1/embeddings` batches are also restricted to a + # maximum of 50,000 embedding inputs across all requests in the batch. + endpoint:, + # The ID of an uploaded file that contains requests for the new batch. + # + # See [upload file](https://platform.openai.com/docs/api-reference/files/create) + # for how to upload a file. + # + # Your input file must be formatted as a + # [JSONL file](https://platform.openai.com/docs/api-reference/batch/request-input), + # and must be uploaded with the purpose `batch`. The file can contain up to 50,000 + # requests, and can be up to 200 MB in size. + input_file_id:, + # 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: nil, + request_options: {} + ); end sig do override .returns( diff --git a/rbi/lib/openai/models/batch_error.rbi b/rbi/lib/openai/models/batch_error.rbi index 0871460e..24b461c6 100644 --- a/rbi/lib/openai/models/batch_error.rbi +++ b/rbi/lib/openai/models/batch_error.rbi @@ -29,8 +29,16 @@ module OpenAI params(code: String, line: T.nilable(Integer), message: String, param: T.nilable(String)) .returns(T.attached_class) end - def self.new(code: nil, line: nil, message: nil, param: nil); end - + def self.new( + # An error code identifying the error type. + code: nil, + # The line number of the input file where the error occurred, if applicable. + line: nil, + # A human-readable message providing more details about the error. + message: nil, + # The name of the parameter that caused the error, if applicable. + param: nil + ); end sig do override.returns({code: String, line: T.nilable(Integer), message: String, param: T.nilable(String)}) end diff --git a/rbi/lib/openai/models/batch_list_params.rbi b/rbi/lib/openai/models/batch_list_params.rbi index 9ae31328..397a8042 100644 --- a/rbi/lib/openai/models/batch_list_params.rbi +++ b/rbi/lib/openai/models/batch_list_params.rbi @@ -32,8 +32,17 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(after: nil, limit: nil, request_options: {}); end - + def self.new( + # A cursor for use in pagination. `after` is an object ID that defines your place + # in the list. For instance, if you make a list request and receive 100 objects, + # ending with obj_foo, your subsequent call can include after=obj_foo in order to + # fetch the next page of the list. + after: nil, + # A limit on the number of objects to be returned. Limit can range between 1 and + # 100, and the default is 20. + limit: nil, + request_options: {} + ); end sig { override.returns({after: String, limit: Integer, request_options: OpenAI::RequestOptions}) } def to_hash; end end diff --git a/rbi/lib/openai/models/batch_request_counts.rbi b/rbi/lib/openai/models/batch_request_counts.rbi index 2c97e840..8f022136 100644 --- a/rbi/lib/openai/models/batch_request_counts.rbi +++ b/rbi/lib/openai/models/batch_request_counts.rbi @@ -17,8 +17,14 @@ module OpenAI # The request counts for different statuses within the batch. sig { params(completed: Integer, failed: Integer, total: Integer).returns(T.attached_class) } - def self.new(completed:, failed:, total:); end - + def self.new( + # Number of requests that have been completed successfully. + completed:, + # Number of requests that have failed. + failed:, + # Total number of requests in the batch. + total: + ); end sig { override.returns({completed: Integer, failed: Integer, total: Integer}) } def to_hash; end end diff --git a/rbi/lib/openai/models/beta/assistant.rbi b/rbi/lib/openai/models/beta/assistant.rbi index f8ef7368..438ec36e 100644 --- a/rbi/lib/openai/models/beta/assistant.rbi +++ b/rbi/lib/openai/models/beta/assistant.rbi @@ -160,18 +160,71 @@ module OpenAI .returns(T.attached_class) end def self.new( + # The identifier, which can be referenced in API endpoints. id:, + # The Unix timestamp (in seconds) for when the assistant was created. created_at:, + # The description of the assistant. The maximum length is 512 characters. description:, + # The system instructions that the assistant uses. The maximum length is 256,000 + # characters. instructions:, + # 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:, + # ID of the model to use. You can use the + # [List models](https://platform.openai.com/docs/api-reference/models/list) API to + # see all of your available models, or see our + # [Model overview](https://platform.openai.com/docs/models) for descriptions of + # them. model:, + # The name of the assistant. The maximum length is 256 characters. name:, + # 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`. tools:, + # Specifies the format that the model must output. Compatible with + # [GPT-4o](https://platform.openai.com/docs/models#gpt-4o), + # [GPT-4 Turbo](https://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](https://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. response_format: nil, + # 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: nil, + # 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. tool_resources: nil, + # 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. top_p: nil, + # The object type, which is always `assistant`. object: :assistant ); end sig do @@ -267,8 +320,12 @@ module OpenAI attr_writer :file_ids sig { params(file_ids: T::Array[String]).returns(T.attached_class) } - def self.new(file_ids: nil); end - + def self.new( + # A list of [file](https://platform.openai.com/docs/api-reference/files) IDs made + # available to the `code_interpreter`` tool. There can be a maximum of 20 files + # associated with the tool. + file_ids: nil + ); end sig { override.returns({file_ids: T::Array[String]}) } def to_hash; end end @@ -285,8 +342,13 @@ module OpenAI attr_writer :vector_store_ids sig { params(vector_store_ids: T::Array[String]).returns(T.attached_class) } - def self.new(vector_store_ids: nil); end - + def self.new( + # The ID of the + # [vector store](https://platform.openai.com/docs/api-reference/vector-stores/object) + # attached to this assistant. There can be a maximum of 1 vector store attached to + # the assistant. + vector_store_ids: nil + ); end sig { override.returns({vector_store_ids: T::Array[String]}) } def to_hash; end end diff --git a/rbi/lib/openai/models/beta/assistant_create_params.rbi b/rbi/lib/openai/models/beta/assistant_create_params.rbi index f068ee9b..d4ce6a96 100644 --- a/rbi/lib/openai/models/beta/assistant_create_params.rbi +++ b/rbi/lib/openai/models/beta/assistant_create_params.rbi @@ -175,16 +175,72 @@ module OpenAI .returns(T.attached_class) end def self.new( + # ID of the model to use. You can use the + # [List models](https://platform.openai.com/docs/api-reference/models/list) API to + # see all of your available models, or see our + # [Model overview](https://platform.openai.com/docs/models) for descriptions of + # them. model:, + # The description of the assistant. The maximum length is 512 characters. description: nil, + # The system instructions that the assistant uses. The maximum length is 256,000 + # characters. instructions: nil, + # 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: nil, + # The name of the assistant. The maximum length is 256 characters. name: nil, + # **o-series models only** + # + # Constrains effort on reasoning for + # [reasoning models](https://platform.openai.com/docs/guides/reasoning). Currently + # supported values are `low`, `medium`, and `high`. Reducing reasoning effort can + # result in faster responses and fewer tokens used on reasoning in a response. reasoning_effort: nil, + # Specifies the format that the model must output. Compatible with + # [GPT-4o](https://platform.openai.com/docs/models#gpt-4o), + # [GPT-4 Turbo](https://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](https://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. response_format: nil, + # 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: nil, + # 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. tool_resources: nil, + # 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`. tools: nil, + # 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. top_p: nil, request_options: {} ); end @@ -298,8 +354,12 @@ module OpenAI attr_writer :file_ids sig { params(file_ids: T::Array[String]).returns(T.attached_class) } - def self.new(file_ids: nil); end - + def self.new( + # A list of [file](https://platform.openai.com/docs/api-reference/files) IDs made + # available to the `code_interpreter` tool. There can be a maximum of 20 files + # associated with the tool. + file_ids: nil + ); end sig { override.returns({file_ids: T::Array[String]}) } def to_hash; end end @@ -351,8 +411,18 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(vector_store_ids: nil, vector_stores: nil); end - + def self.new( + # The + # [vector store](https://platform.openai.com/docs/api-reference/vector-stores/object) + # attached to this assistant. There can be a maximum of 1 vector store attached to + # the assistant. + vector_store_ids: nil, + # A helper to create a + # [vector store](https://platform.openai.com/docs/api-reference/vector-stores/object) + # with file_ids and attach it to this assistant. There can be a maximum of 1 + # vector store attached to the assistant. + vector_stores: nil + ); end sig do override .returns( @@ -421,8 +491,22 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(chunking_strategy: nil, file_ids: nil, metadata: nil); end - + def self.new( + # The chunking strategy used to chunk the file(s). If not set, will use the `auto` + # strategy. + chunking_strategy: nil, + # A list of [file](https://platform.openai.com/docs/api-reference/files) IDs to + # add to the vector store. There can be a maximum of 10000 files in a vector + # store. + file_ids: nil, + # 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: nil + ); end sig do override .returns( @@ -451,8 +535,10 @@ module OpenAI # The default strategy. This strategy currently uses a `max_chunk_size_tokens` of # `800` and `chunk_overlap_tokens` of `400`. sig { params(type: Symbol).returns(T.attached_class) } - def self.new(type: :auto); end - + def self.new( + # Always `auto`. + type: :auto + ); end sig { override.returns({type: Symbol}) } def to_hash; end end @@ -490,8 +576,11 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(static:, type: :static); end - + def self.new( + static:, + # Always `static`. + type: :static + ); end sig do override .returns( @@ -521,8 +610,15 @@ module OpenAI max_chunk_size_tokens: Integer ).returns(T.attached_class) end - def self.new(chunk_overlap_tokens:, max_chunk_size_tokens:); end - + def self.new( + # The number of tokens that overlap between chunks. The default value is `400`. + # + # Note that the overlap must not exceed half of `max_chunk_size_tokens`. + chunk_overlap_tokens:, + # The maximum number of tokens in each chunk. The default value is `800`. The + # minimum value is `100` and the maximum value is `4096`. + max_chunk_size_tokens: + ); end sig { override.returns({chunk_overlap_tokens: Integer, max_chunk_size_tokens: Integer}) } def to_hash; end end diff --git a/rbi/lib/openai/models/beta/assistant_list_params.rbi b/rbi/lib/openai/models/beta/assistant_list_params.rbi index 48df52cc..70d05fcf 100644 --- a/rbi/lib/openai/models/beta/assistant_list_params.rbi +++ b/rbi/lib/openai/models/beta/assistant_list_params.rbi @@ -53,8 +53,25 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(after: nil, before: nil, limit: nil, order: nil, request_options: {}); end - + def self.new( + # A cursor for use in pagination. `after` is an object ID that defines your place + # in the list. For instance, if you make a list request and receive 100 objects, + # ending with obj_foo, your subsequent call can include after=obj_foo in order to + # fetch the next page of the list. + after: nil, + # A cursor for use in pagination. `before` is an object ID that defines your place + # in the list. For instance, if you make a list request and receive 100 objects, + # starting with obj_foo, your subsequent call can include before=obj_foo in order + # to fetch the previous page of the list. + before: nil, + # A limit on the number of objects to be returned. Limit can range between 1 and + # 100, and the default is 20. + limit: nil, + # Sort order by the `created_at` timestamp of the objects. `asc` for ascending + # order and `desc` for descending order. + order: nil, + request_options: {} + ); end sig do override .returns( diff --git a/rbi/lib/openai/models/beta/assistant_stream_event.rbi b/rbi/lib/openai/models/beta/assistant_stream_event.rbi index 5cb77eb2..3b46028a 100644 --- a/rbi/lib/openai/models/beta/assistant_stream_event.rbi +++ b/rbi/lib/openai/models/beta/assistant_stream_event.rbi @@ -56,8 +56,14 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(data:, enabled: nil, event: :"thread.created"); end - + def self.new( + # Represents a thread that contains + # [messages](https://platform.openai.com/docs/api-reference/messages). + data:, + # Whether to enable input audio transcription. + enabled: nil, + event: :"thread.created" + ); end sig { override.returns({data: OpenAI::Models::Beta::Thread, event: Symbol, enabled: T::Boolean}) } def to_hash; end end @@ -80,8 +86,12 @@ module OpenAI params(data: T.any(OpenAI::Models::Beta::Threads::Run, OpenAI::Internal::AnyHash), event: Symbol) .returns(T.attached_class) end - def self.new(data:, event: :"thread.run.created"); end - + def self.new( + # Represents an execution run on a + # [thread](https://platform.openai.com/docs/api-reference/threads). + data:, + event: :"thread.run.created" + ); end sig { override.returns({data: OpenAI::Models::Beta::Threads::Run, event: Symbol}) } def to_hash; end end @@ -104,8 +114,12 @@ module OpenAI params(data: T.any(OpenAI::Models::Beta::Threads::Run, OpenAI::Internal::AnyHash), event: Symbol) .returns(T.attached_class) end - def self.new(data:, event: :"thread.run.queued"); end - + def self.new( + # Represents an execution run on a + # [thread](https://platform.openai.com/docs/api-reference/threads). + data:, + event: :"thread.run.queued" + ); end sig { override.returns({data: OpenAI::Models::Beta::Threads::Run, event: Symbol}) } def to_hash; end end @@ -128,8 +142,12 @@ module OpenAI params(data: T.any(OpenAI::Models::Beta::Threads::Run, OpenAI::Internal::AnyHash), event: Symbol) .returns(T.attached_class) end - def self.new(data:, event: :"thread.run.in_progress"); end - + def self.new( + # Represents an execution run on a + # [thread](https://platform.openai.com/docs/api-reference/threads). + data:, + event: :"thread.run.in_progress" + ); end sig { override.returns({data: OpenAI::Models::Beta::Threads::Run, event: Symbol}) } def to_hash; end end @@ -152,8 +170,12 @@ module OpenAI params(data: T.any(OpenAI::Models::Beta::Threads::Run, OpenAI::Internal::AnyHash), event: Symbol) .returns(T.attached_class) end - def self.new(data:, event: :"thread.run.requires_action"); end - + def self.new( + # Represents an execution run on a + # [thread](https://platform.openai.com/docs/api-reference/threads). + data:, + event: :"thread.run.requires_action" + ); end sig { override.returns({data: OpenAI::Models::Beta::Threads::Run, event: Symbol}) } def to_hash; end end @@ -176,8 +198,12 @@ module OpenAI params(data: T.any(OpenAI::Models::Beta::Threads::Run, OpenAI::Internal::AnyHash), event: Symbol) .returns(T.attached_class) end - def self.new(data:, event: :"thread.run.completed"); end - + def self.new( + # Represents an execution run on a + # [thread](https://platform.openai.com/docs/api-reference/threads). + data:, + event: :"thread.run.completed" + ); end sig { override.returns({data: OpenAI::Models::Beta::Threads::Run, event: Symbol}) } def to_hash; end end @@ -200,8 +226,12 @@ module OpenAI params(data: T.any(OpenAI::Models::Beta::Threads::Run, OpenAI::Internal::AnyHash), event: Symbol) .returns(T.attached_class) end - def self.new(data:, event: :"thread.run.incomplete"); end - + def self.new( + # Represents an execution run on a + # [thread](https://platform.openai.com/docs/api-reference/threads). + data:, + event: :"thread.run.incomplete" + ); end sig { override.returns({data: OpenAI::Models::Beta::Threads::Run, event: Symbol}) } def to_hash; end end @@ -224,8 +254,12 @@ module OpenAI params(data: T.any(OpenAI::Models::Beta::Threads::Run, OpenAI::Internal::AnyHash), event: Symbol) .returns(T.attached_class) end - def self.new(data:, event: :"thread.run.failed"); end - + def self.new( + # Represents an execution run on a + # [thread](https://platform.openai.com/docs/api-reference/threads). + data:, + event: :"thread.run.failed" + ); end sig { override.returns({data: OpenAI::Models::Beta::Threads::Run, event: Symbol}) } def to_hash; end end @@ -248,8 +282,12 @@ module OpenAI params(data: T.any(OpenAI::Models::Beta::Threads::Run, OpenAI::Internal::AnyHash), event: Symbol) .returns(T.attached_class) end - def self.new(data:, event: :"thread.run.cancelling"); end - + def self.new( + # Represents an execution run on a + # [thread](https://platform.openai.com/docs/api-reference/threads). + data:, + event: :"thread.run.cancelling" + ); end sig { override.returns({data: OpenAI::Models::Beta::Threads::Run, event: Symbol}) } def to_hash; end end @@ -272,8 +310,12 @@ module OpenAI params(data: T.any(OpenAI::Models::Beta::Threads::Run, OpenAI::Internal::AnyHash), event: Symbol) .returns(T.attached_class) end - def self.new(data:, event: :"thread.run.cancelled"); end - + def self.new( + # Represents an execution run on a + # [thread](https://platform.openai.com/docs/api-reference/threads). + data:, + event: :"thread.run.cancelled" + ); end sig { override.returns({data: OpenAI::Models::Beta::Threads::Run, event: Symbol}) } def to_hash; end end @@ -296,8 +338,12 @@ module OpenAI params(data: T.any(OpenAI::Models::Beta::Threads::Run, OpenAI::Internal::AnyHash), event: Symbol) .returns(T.attached_class) end - def self.new(data:, event: :"thread.run.expired"); end - + def self.new( + # Represents an execution run on a + # [thread](https://platform.openai.com/docs/api-reference/threads). + data:, + event: :"thread.run.expired" + ); end sig { override.returns({data: OpenAI::Models::Beta::Threads::Run, event: Symbol}) } def to_hash; end end @@ -323,8 +369,11 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(data:, event: :"thread.run.step.created"); end - + def self.new( + # Represents a step in execution of a run. + data:, + event: :"thread.run.step.created" + ); end sig { override.returns({data: OpenAI::Models::Beta::Threads::Runs::RunStep, event: Symbol}) } def to_hash; end end @@ -350,8 +399,11 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(data:, event: :"thread.run.step.in_progress"); end - + def self.new( + # Represents a step in execution of a run. + data:, + event: :"thread.run.step.in_progress" + ); end sig { override.returns({data: OpenAI::Models::Beta::Threads::Runs::RunStep, event: Symbol}) } def to_hash; end end @@ -380,8 +432,12 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(data:, event: :"thread.run.step.delta"); end - + def self.new( + # Represents a run step delta i.e. any changed fields on a run step during + # streaming. + data:, + event: :"thread.run.step.delta" + ); end sig { override.returns({data: OpenAI::Models::Beta::Threads::Runs::RunStepDeltaEvent, event: Symbol}) } def to_hash; end end @@ -407,8 +463,11 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(data:, event: :"thread.run.step.completed"); end - + def self.new( + # Represents a step in execution of a run. + data:, + event: :"thread.run.step.completed" + ); end sig { override.returns({data: OpenAI::Models::Beta::Threads::Runs::RunStep, event: Symbol}) } def to_hash; end end @@ -434,8 +493,11 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(data:, event: :"thread.run.step.failed"); end - + def self.new( + # Represents a step in execution of a run. + data:, + event: :"thread.run.step.failed" + ); end sig { override.returns({data: OpenAI::Models::Beta::Threads::Runs::RunStep, event: Symbol}) } def to_hash; end end @@ -461,8 +523,11 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(data:, event: :"thread.run.step.cancelled"); end - + def self.new( + # Represents a step in execution of a run. + data:, + event: :"thread.run.step.cancelled" + ); end sig { override.returns({data: OpenAI::Models::Beta::Threads::Runs::RunStep, event: Symbol}) } def to_hash; end end @@ -488,8 +553,11 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(data:, event: :"thread.run.step.expired"); end - + def self.new( + # Represents a step in execution of a run. + data:, + event: :"thread.run.step.expired" + ); end sig { override.returns({data: OpenAI::Models::Beta::Threads::Runs::RunStep, event: Symbol}) } def to_hash; end end @@ -513,8 +581,12 @@ module OpenAI params(data: T.any(OpenAI::Models::Beta::Threads::Message, OpenAI::Internal::AnyHash), event: Symbol) .returns(T.attached_class) end - def self.new(data:, event: :"thread.message.created"); end - + def self.new( + # Represents a message within a + # [thread](https://platform.openai.com/docs/api-reference/threads). + data:, + event: :"thread.message.created" + ); end sig { override.returns({data: OpenAI::Models::Beta::Threads::Message, event: Symbol}) } def to_hash; end end @@ -538,8 +610,12 @@ module OpenAI params(data: T.any(OpenAI::Models::Beta::Threads::Message, OpenAI::Internal::AnyHash), event: Symbol) .returns(T.attached_class) end - def self.new(data:, event: :"thread.message.in_progress"); end - + def self.new( + # Represents a message within a + # [thread](https://platform.openai.com/docs/api-reference/threads). + data:, + event: :"thread.message.in_progress" + ); end sig { override.returns({data: OpenAI::Models::Beta::Threads::Message, event: Symbol}) } def to_hash; end end @@ -566,8 +642,12 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(data:, event: :"thread.message.delta"); end - + def self.new( + # Represents a message delta i.e. any changed fields on a message during + # streaming. + data:, + event: :"thread.message.delta" + ); end sig { override.returns({data: OpenAI::Models::Beta::Threads::MessageDeltaEvent, event: Symbol}) } def to_hash; end end @@ -591,8 +671,12 @@ module OpenAI params(data: T.any(OpenAI::Models::Beta::Threads::Message, OpenAI::Internal::AnyHash), event: Symbol) .returns(T.attached_class) end - def self.new(data:, event: :"thread.message.completed"); end - + def self.new( + # Represents a message within a + # [thread](https://platform.openai.com/docs/api-reference/threads). + data:, + event: :"thread.message.completed" + ); end sig { override.returns({data: OpenAI::Models::Beta::Threads::Message, event: Symbol}) } def to_hash; end end @@ -616,8 +700,12 @@ module OpenAI params(data: T.any(OpenAI::Models::Beta::Threads::Message, OpenAI::Internal::AnyHash), event: Symbol) .returns(T.attached_class) end - def self.new(data:, event: :"thread.message.incomplete"); end - + def self.new( + # Represents a message within a + # [thread](https://platform.openai.com/docs/api-reference/threads). + data:, + event: :"thread.message.incomplete" + ); end sig { override.returns({data: OpenAI::Models::Beta::Threads::Message, event: Symbol}) } def to_hash; end end diff --git a/rbi/lib/openai/models/beta/assistant_tool_choice.rbi b/rbi/lib/openai/models/beta/assistant_tool_choice.rbi index 3ef8c526..b8e37979 100644 --- a/rbi/lib/openai/models/beta/assistant_tool_choice.rbi +++ b/rbi/lib/openai/models/beta/assistant_tool_choice.rbi @@ -23,8 +23,11 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(type:, function: nil); end - + def self.new( + # The type of the tool. If type is `function`, the function name must be set + type:, + function: nil + ); end sig do override .returns( diff --git a/rbi/lib/openai/models/beta/assistant_tool_choice_function.rbi b/rbi/lib/openai/models/beta/assistant_tool_choice_function.rbi index c7334df0..4a88f071 100644 --- a/rbi/lib/openai/models/beta/assistant_tool_choice_function.rbi +++ b/rbi/lib/openai/models/beta/assistant_tool_choice_function.rbi @@ -9,8 +9,10 @@ module OpenAI attr_accessor :name sig { params(name: String).returns(T.attached_class) } - def self.new(name:); end - + def self.new( + # The name of the function to call. + name: + ); end sig { override.returns({name: String}) } def to_hash; end end diff --git a/rbi/lib/openai/models/beta/assistant_update_params.rbi b/rbi/lib/openai/models/beta/assistant_update_params.rbi index 8e100d6d..29f452a9 100644 --- a/rbi/lib/openai/models/beta/assistant_update_params.rbi +++ b/rbi/lib/openai/models/beta/assistant_update_params.rbi @@ -178,16 +178,72 @@ module OpenAI .returns(T.attached_class) end def self.new( + # The description of the assistant. The maximum length is 512 characters. description: nil, + # The system instructions that the assistant uses. The maximum length is 256,000 + # characters. instructions: nil, + # 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: nil, + # ID of the model to use. You can use the + # [List models](https://platform.openai.com/docs/api-reference/models/list) API to + # see all of your available models, or see our + # [Model overview](https://platform.openai.com/docs/models) for descriptions of + # them. model: nil, + # The name of the assistant. The maximum length is 256 characters. name: nil, + # **o-series models only** + # + # Constrains effort on reasoning for + # [reasoning models](https://platform.openai.com/docs/guides/reasoning). Currently + # supported values are `low`, `medium`, and `high`. Reducing reasoning effort can + # result in faster responses and fewer tokens used on reasoning in a response. reasoning_effort: nil, + # Specifies the format that the model must output. Compatible with + # [GPT-4o](https://platform.openai.com/docs/models#gpt-4o), + # [GPT-4 Turbo](https://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](https://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. response_format: nil, + # 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: nil, + # 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. tool_resources: nil, + # 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`. tools: nil, + # 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. top_p: nil, request_options: {} ); end @@ -364,8 +420,13 @@ module OpenAI attr_writer :file_ids sig { params(file_ids: T::Array[String]).returns(T.attached_class) } - def self.new(file_ids: nil); end - + def self.new( + # Overrides the list of + # [file](https://platform.openai.com/docs/api-reference/files) IDs made available + # to the `code_interpreter` tool. There can be a maximum of 20 files associated + # with the tool. + file_ids: nil + ); end sig { override.returns({file_ids: T::Array[String]}) } def to_hash; end end @@ -382,8 +443,13 @@ module OpenAI attr_writer :vector_store_ids sig { params(vector_store_ids: T::Array[String]).returns(T.attached_class) } - def self.new(vector_store_ids: nil); end - + def self.new( + # Overrides the + # [vector store](https://platform.openai.com/docs/api-reference/vector-stores/object) + # attached to this assistant. There can be a maximum of 1 vector store attached to + # the assistant. + vector_store_ids: nil + ); end sig { override.returns({vector_store_ids: T::Array[String]}) } def to_hash; end end diff --git a/rbi/lib/openai/models/beta/code_interpreter_tool.rbi b/rbi/lib/openai/models/beta/code_interpreter_tool.rbi index cacd14eb..d1ac9cc7 100644 --- a/rbi/lib/openai/models/beta/code_interpreter_tool.rbi +++ b/rbi/lib/openai/models/beta/code_interpreter_tool.rbi @@ -9,8 +9,10 @@ module OpenAI attr_accessor :type sig { params(type: Symbol).returns(T.attached_class) } - def self.new(type: :code_interpreter); end - + def self.new( + # The type of tool being defined: `code_interpreter` + type: :code_interpreter + ); end sig { override.returns({type: Symbol}) } def to_hash; end end diff --git a/rbi/lib/openai/models/beta/file_search_tool.rbi b/rbi/lib/openai/models/beta/file_search_tool.rbi index ad127d97..e2c738a3 100644 --- a/rbi/lib/openai/models/beta/file_search_tool.rbi +++ b/rbi/lib/openai/models/beta/file_search_tool.rbi @@ -25,8 +25,12 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(file_search: nil, type: :file_search); end - + def self.new( + # Overrides for the file search tool. + file_search: nil, + # The type of tool being defined: `file_search` + type: :file_search + ); end sig { override.returns({type: Symbol, file_search: OpenAI::Models::Beta::FileSearchTool::FileSearch}) } def to_hash; end @@ -70,8 +74,24 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(max_num_results: nil, ranking_options: nil); end - + def self.new( + # The maximum number of results the file search tool should output. The default is + # 20 for `gpt-4*` models and 5 for `gpt-3.5-turbo`. This number should be between + # 1 and 50 inclusive. + # + # Note that the file search tool may output fewer than `max_num_results` results. + # See the + # [file search tool documentation](https://platform.openai.com/docs/assistants/tools/file-search#customizing-file-search-settings) + # for more information. + max_num_results: nil, + # The ranking options for the file search. If not specified, the file search tool + # will use the `auto` ranker and a score_threshold of 0. + # + # See the + # [file search tool documentation](https://platform.openai.com/docs/assistants/tools/file-search#customizing-file-search-settings) + # for more information. + ranking_options: nil + ); end sig do override .returns( @@ -107,8 +127,14 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(score_threshold:, ranker: nil); end - + def self.new( + # The score threshold for the file search. All values must be a floating point + # number between 0 and 1. + score_threshold:, + # The ranker to use for the file search. If not specified will use the `auto` + # ranker. + ranker: nil + ); end sig do override .returns( diff --git a/rbi/lib/openai/models/beta/function_tool.rbi b/rbi/lib/openai/models/beta/function_tool.rbi index b375f86a..5a914d6f 100644 --- a/rbi/lib/openai/models/beta/function_tool.rbi +++ b/rbi/lib/openai/models/beta/function_tool.rbi @@ -18,8 +18,11 @@ module OpenAI params(function: T.any(OpenAI::Models::FunctionDefinition, OpenAI::Internal::AnyHash), type: Symbol) .returns(T.attached_class) end - def self.new(function:, type: :function); end - + def self.new( + function:, + # The type of tool being defined: `function` + type: :function + ); end sig { override.returns({function: OpenAI::Models::FunctionDefinition, type: Symbol}) } def to_hash; end end diff --git a/rbi/lib/openai/models/beta/message_stream_event.rbi b/rbi/lib/openai/models/beta/message_stream_event.rbi index 3f070ad2..ad322e59 100644 --- a/rbi/lib/openai/models/beta/message_stream_event.rbi +++ b/rbi/lib/openai/models/beta/message_stream_event.rbi @@ -28,8 +28,12 @@ module OpenAI params(data: T.any(OpenAI::Models::Beta::Threads::Message, OpenAI::Internal::AnyHash), event: Symbol) .returns(T.attached_class) end - def self.new(data:, event: :"thread.message.created"); end - + def self.new( + # Represents a message within a + # [thread](https://platform.openai.com/docs/api-reference/threads). + data:, + event: :"thread.message.created" + ); end sig { override.returns({data: OpenAI::Models::Beta::Threads::Message, event: Symbol}) } def to_hash; end end @@ -53,8 +57,12 @@ module OpenAI params(data: T.any(OpenAI::Models::Beta::Threads::Message, OpenAI::Internal::AnyHash), event: Symbol) .returns(T.attached_class) end - def self.new(data:, event: :"thread.message.in_progress"); end - + def self.new( + # Represents a message within a + # [thread](https://platform.openai.com/docs/api-reference/threads). + data:, + event: :"thread.message.in_progress" + ); end sig { override.returns({data: OpenAI::Models::Beta::Threads::Message, event: Symbol}) } def to_hash; end end @@ -81,8 +89,12 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(data:, event: :"thread.message.delta"); end - + def self.new( + # Represents a message delta i.e. any changed fields on a message during + # streaming. + data:, + event: :"thread.message.delta" + ); end sig { override.returns({data: OpenAI::Models::Beta::Threads::MessageDeltaEvent, event: Symbol}) } def to_hash; end end @@ -106,8 +118,12 @@ module OpenAI params(data: T.any(OpenAI::Models::Beta::Threads::Message, OpenAI::Internal::AnyHash), event: Symbol) .returns(T.attached_class) end - def self.new(data:, event: :"thread.message.completed"); end - + def self.new( + # Represents a message within a + # [thread](https://platform.openai.com/docs/api-reference/threads). + data:, + event: :"thread.message.completed" + ); end sig { override.returns({data: OpenAI::Models::Beta::Threads::Message, event: Symbol}) } def to_hash; end end @@ -131,8 +147,12 @@ module OpenAI params(data: T.any(OpenAI::Models::Beta::Threads::Message, OpenAI::Internal::AnyHash), event: Symbol) .returns(T.attached_class) end - def self.new(data:, event: :"thread.message.incomplete"); end - + def self.new( + # Represents a message within a + # [thread](https://platform.openai.com/docs/api-reference/threads). + data:, + event: :"thread.message.incomplete" + ); end sig { override.returns({data: OpenAI::Models::Beta::Threads::Message, event: Symbol}) } def to_hash; end end diff --git a/rbi/lib/openai/models/beta/run_step_stream_event.rbi b/rbi/lib/openai/models/beta/run_step_stream_event.rbi index c004aab8..80a4d141 100644 --- a/rbi/lib/openai/models/beta/run_step_stream_event.rbi +++ b/rbi/lib/openai/models/beta/run_step_stream_event.rbi @@ -30,8 +30,11 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(data:, event: :"thread.run.step.created"); end - + def self.new( + # Represents a step in execution of a run. + data:, + event: :"thread.run.step.created" + ); end sig { override.returns({data: OpenAI::Models::Beta::Threads::Runs::RunStep, event: Symbol}) } def to_hash; end end @@ -57,8 +60,11 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(data:, event: :"thread.run.step.in_progress"); end - + def self.new( + # Represents a step in execution of a run. + data:, + event: :"thread.run.step.in_progress" + ); end sig { override.returns({data: OpenAI::Models::Beta::Threads::Runs::RunStep, event: Symbol}) } def to_hash; end end @@ -87,8 +93,12 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(data:, event: :"thread.run.step.delta"); end - + def self.new( + # Represents a run step delta i.e. any changed fields on a run step during + # streaming. + data:, + event: :"thread.run.step.delta" + ); end sig { override.returns({data: OpenAI::Models::Beta::Threads::Runs::RunStepDeltaEvent, event: Symbol}) } def to_hash; end end @@ -114,8 +124,11 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(data:, event: :"thread.run.step.completed"); end - + def self.new( + # Represents a step in execution of a run. + data:, + event: :"thread.run.step.completed" + ); end sig { override.returns({data: OpenAI::Models::Beta::Threads::Runs::RunStep, event: Symbol}) } def to_hash; end end @@ -141,8 +154,11 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(data:, event: :"thread.run.step.failed"); end - + def self.new( + # Represents a step in execution of a run. + data:, + event: :"thread.run.step.failed" + ); end sig { override.returns({data: OpenAI::Models::Beta::Threads::Runs::RunStep, event: Symbol}) } def to_hash; end end @@ -168,8 +184,11 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(data:, event: :"thread.run.step.cancelled"); end - + def self.new( + # Represents a step in execution of a run. + data:, + event: :"thread.run.step.cancelled" + ); end sig { override.returns({data: OpenAI::Models::Beta::Threads::Runs::RunStep, event: Symbol}) } def to_hash; end end @@ -195,8 +214,11 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(data:, event: :"thread.run.step.expired"); end - + def self.new( + # Represents a step in execution of a run. + data:, + event: :"thread.run.step.expired" + ); end sig { override.returns({data: OpenAI::Models::Beta::Threads::Runs::RunStep, event: Symbol}) } def to_hash; end end diff --git a/rbi/lib/openai/models/beta/run_stream_event.rbi b/rbi/lib/openai/models/beta/run_stream_event.rbi index 29f03175..1f8fa007 100644 --- a/rbi/lib/openai/models/beta/run_stream_event.rbi +++ b/rbi/lib/openai/models/beta/run_stream_event.rbi @@ -26,8 +26,12 @@ module OpenAI params(data: T.any(OpenAI::Models::Beta::Threads::Run, OpenAI::Internal::AnyHash), event: Symbol) .returns(T.attached_class) end - def self.new(data:, event: :"thread.run.created"); end - + def self.new( + # Represents an execution run on a + # [thread](https://platform.openai.com/docs/api-reference/threads). + data:, + event: :"thread.run.created" + ); end sig { override.returns({data: OpenAI::Models::Beta::Threads::Run, event: Symbol}) } def to_hash; end end @@ -50,8 +54,12 @@ module OpenAI params(data: T.any(OpenAI::Models::Beta::Threads::Run, OpenAI::Internal::AnyHash), event: Symbol) .returns(T.attached_class) end - def self.new(data:, event: :"thread.run.queued"); end - + def self.new( + # Represents an execution run on a + # [thread](https://platform.openai.com/docs/api-reference/threads). + data:, + event: :"thread.run.queued" + ); end sig { override.returns({data: OpenAI::Models::Beta::Threads::Run, event: Symbol}) } def to_hash; end end @@ -74,8 +82,12 @@ module OpenAI params(data: T.any(OpenAI::Models::Beta::Threads::Run, OpenAI::Internal::AnyHash), event: Symbol) .returns(T.attached_class) end - def self.new(data:, event: :"thread.run.in_progress"); end - + def self.new( + # Represents an execution run on a + # [thread](https://platform.openai.com/docs/api-reference/threads). + data:, + event: :"thread.run.in_progress" + ); end sig { override.returns({data: OpenAI::Models::Beta::Threads::Run, event: Symbol}) } def to_hash; end end @@ -98,8 +110,12 @@ module OpenAI params(data: T.any(OpenAI::Models::Beta::Threads::Run, OpenAI::Internal::AnyHash), event: Symbol) .returns(T.attached_class) end - def self.new(data:, event: :"thread.run.requires_action"); end - + def self.new( + # Represents an execution run on a + # [thread](https://platform.openai.com/docs/api-reference/threads). + data:, + event: :"thread.run.requires_action" + ); end sig { override.returns({data: OpenAI::Models::Beta::Threads::Run, event: Symbol}) } def to_hash; end end @@ -122,8 +138,12 @@ module OpenAI params(data: T.any(OpenAI::Models::Beta::Threads::Run, OpenAI::Internal::AnyHash), event: Symbol) .returns(T.attached_class) end - def self.new(data:, event: :"thread.run.completed"); end - + def self.new( + # Represents an execution run on a + # [thread](https://platform.openai.com/docs/api-reference/threads). + data:, + event: :"thread.run.completed" + ); end sig { override.returns({data: OpenAI::Models::Beta::Threads::Run, event: Symbol}) } def to_hash; end end @@ -146,8 +166,12 @@ module OpenAI params(data: T.any(OpenAI::Models::Beta::Threads::Run, OpenAI::Internal::AnyHash), event: Symbol) .returns(T.attached_class) end - def self.new(data:, event: :"thread.run.incomplete"); end - + def self.new( + # Represents an execution run on a + # [thread](https://platform.openai.com/docs/api-reference/threads). + data:, + event: :"thread.run.incomplete" + ); end sig { override.returns({data: OpenAI::Models::Beta::Threads::Run, event: Symbol}) } def to_hash; end end @@ -170,8 +194,12 @@ module OpenAI params(data: T.any(OpenAI::Models::Beta::Threads::Run, OpenAI::Internal::AnyHash), event: Symbol) .returns(T.attached_class) end - def self.new(data:, event: :"thread.run.failed"); end - + def self.new( + # Represents an execution run on a + # [thread](https://platform.openai.com/docs/api-reference/threads). + data:, + event: :"thread.run.failed" + ); end sig { override.returns({data: OpenAI::Models::Beta::Threads::Run, event: Symbol}) } def to_hash; end end @@ -194,8 +222,12 @@ module OpenAI params(data: T.any(OpenAI::Models::Beta::Threads::Run, OpenAI::Internal::AnyHash), event: Symbol) .returns(T.attached_class) end - def self.new(data:, event: :"thread.run.cancelling"); end - + def self.new( + # Represents an execution run on a + # [thread](https://platform.openai.com/docs/api-reference/threads). + data:, + event: :"thread.run.cancelling" + ); end sig { override.returns({data: OpenAI::Models::Beta::Threads::Run, event: Symbol}) } def to_hash; end end @@ -218,8 +250,12 @@ module OpenAI params(data: T.any(OpenAI::Models::Beta::Threads::Run, OpenAI::Internal::AnyHash), event: Symbol) .returns(T.attached_class) end - def self.new(data:, event: :"thread.run.cancelled"); end - + def self.new( + # Represents an execution run on a + # [thread](https://platform.openai.com/docs/api-reference/threads). + data:, + event: :"thread.run.cancelled" + ); end sig { override.returns({data: OpenAI::Models::Beta::Threads::Run, event: Symbol}) } def to_hash; end end @@ -242,8 +278,12 @@ module OpenAI params(data: T.any(OpenAI::Models::Beta::Threads::Run, OpenAI::Internal::AnyHash), event: Symbol) .returns(T.attached_class) end - def self.new(data:, event: :"thread.run.expired"); end - + def self.new( + # Represents an execution run on a + # [thread](https://platform.openai.com/docs/api-reference/threads). + data:, + event: :"thread.run.expired" + ); end sig { override.returns({data: OpenAI::Models::Beta::Threads::Run, event: Symbol}) } def to_hash; end end diff --git a/rbi/lib/openai/models/beta/thread.rbi b/rbi/lib/openai/models/beta/thread.rbi index 0a393255..46c58f55 100644 --- a/rbi/lib/openai/models/beta/thread.rbi +++ b/rbi/lib/openai/models/beta/thread.rbi @@ -52,8 +52,26 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(id:, created_at:, metadata:, tool_resources:, object: :thread); end - + def self.new( + # The identifier, which can be referenced in API endpoints. + id:, + # The Unix timestamp (in seconds) for when the thread was created. + created_at:, + # 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:, + # A set of resources that are made available to the assistant's tools in this + # thread. 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. + tool_resources:, + # The object type, which is always `thread`. + object: :thread + ); end sig do override .returns( @@ -126,8 +144,12 @@ module OpenAI attr_writer :file_ids sig { params(file_ids: T::Array[String]).returns(T.attached_class) } - def self.new(file_ids: nil); end - + def self.new( + # A list of [file](https://platform.openai.com/docs/api-reference/files) IDs made + # available to the `code_interpreter` tool. There can be a maximum of 20 files + # associated with the tool. + file_ids: nil + ); end sig { override.returns({file_ids: T::Array[String]}) } def to_hash; end end @@ -144,8 +166,13 @@ module OpenAI attr_writer :vector_store_ids sig { params(vector_store_ids: T::Array[String]).returns(T.attached_class) } - def self.new(vector_store_ids: nil); end - + def self.new( + # The + # [vector store](https://platform.openai.com/docs/api-reference/vector-stores/object) + # attached to this thread. There can be a maximum of 1 vector store attached to + # the thread. + vector_store_ids: nil + ); end sig { override.returns({vector_store_ids: T::Array[String]}) } def to_hash; end end diff --git a/rbi/lib/openai/models/beta/thread_create_and_run_params.rbi b/rbi/lib/openai/models/beta/thread_create_and_run_params.rbi index ef54ba30..fed5543a 100644 --- a/rbi/lib/openai/models/beta/thread_create_and_run_params.rbi +++ b/rbi/lib/openai/models/beta/thread_create_and_run_params.rbi @@ -231,20 +231,93 @@ module OpenAI .returns(T.attached_class) end def self.new( + # The ID of the + # [assistant](https://platform.openai.com/docs/api-reference/assistants) to use to + # execute this run. assistant_id:, + # Override the default system message of the assistant. This is useful for + # modifying the behavior on a per-run basis. instructions: nil, + # The maximum number of completion tokens that may be used over the course of the + # run. The run will make a best effort to use only the number of completion tokens + # specified, across multiple turns of the run. If the run exceeds the number of + # completion tokens specified, the run will end with status `incomplete`. See + # `incomplete_details` for more info. max_completion_tokens: nil, + # The maximum number of prompt tokens that may be used over the course of the run. + # The run will make a best effort to use only the number of prompt tokens + # specified, across multiple turns of the run. If the run exceeds the number of + # prompt tokens specified, the run will end with status `incomplete`. See + # `incomplete_details` for more info. max_prompt_tokens: nil, + # 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: nil, + # The ID of the [Model](https://platform.openai.com/docs/api-reference/models) to + # be used to execute this run. If a value is provided here, it will override the + # model associated with the assistant. If not, the model associated with the + # assistant will be used. model: nil, + # Whether to enable + # [parallel function calling](https://platform.openai.com/docs/guides/function-calling#configuring-parallel-function-calling) + # during tool use. parallel_tool_calls: nil, + # Specifies the format that the model must output. Compatible with + # [GPT-4o](https://platform.openai.com/docs/models#gpt-4o), + # [GPT-4 Turbo](https://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](https://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. response_format: nil, + # 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: nil, + # Options to create a new thread. If no thread is provided when running a request, + # an empty thread will be created. thread: nil, + # Controls which (if any) tool is called by the model. `none` means the model will + # not call any tools and instead generates a message. `auto` is the default value + # and means the model can pick between generating a message or calling one or more + # tools. `required` means the model must call one or more tools before responding + # to the user. Specifying a particular tool like `{"type": "file_search"}` or + # `{"type": "function", "function": {"name": "my_function"}}` forces the model to + # call that tool. tool_choice: nil, + # 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. tool_resources: nil, + # Override the tools the assistant can use for this run. This is useful for + # modifying the behavior on a per-run basis. tools: nil, + # 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. top_p: nil, + # Controls for how a thread will be truncated prior to the run. Use this to + # control the intial context window of the run. truncation_strategy: nil, request_options: {} ); end @@ -356,8 +429,23 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(messages: nil, metadata: nil, tool_resources: nil); end - + def self.new( + # A list of [messages](https://platform.openai.com/docs/api-reference/messages) to + # start the thread with. + messages: nil, + # 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: nil, + # A set of resources that are made available to the assistant's tools in this + # thread. 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. + tool_resources: nil + ); end sig do override .returns( @@ -436,8 +524,26 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(content:, role:, attachments: nil, metadata: nil); end - + def self.new( + # The text contents of the message. + content:, + # The role of the entity that is creating the message. Allowed values include: + # + # - `user`: Indicates the message is sent by an actual user and should be used in + # most cases to represent user-generated messages. + # - `assistant`: Indicates the message is generated by the assistant. Use this + # value to insert messages from the assistant into the conversation. + role:, + # A list of files attached to the message, and the tools they should be added to. + attachments: nil, + # 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: nil + ); end sig do override .returns( @@ -562,8 +668,12 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(file_id: nil, tools: nil); end - + def self.new( + # The ID of the file to attach to the message. + file_id: nil, + # The tools to add this file to. + tools: nil + ); end sig do override .returns( @@ -589,8 +699,10 @@ module OpenAI attr_accessor :type sig { params(type: Symbol).returns(T.attached_class) } - def self.new(type: :file_search); end - + def self.new( + # The type of tool being defined: `file_search` + type: :file_search + ); end sig { override.returns({type: Symbol}) } def to_hash; end end @@ -676,8 +788,12 @@ module OpenAI attr_writer :file_ids sig { params(file_ids: T::Array[String]).returns(T.attached_class) } - def self.new(file_ids: nil); end - + def self.new( + # A list of [file](https://platform.openai.com/docs/api-reference/files) IDs made + # available to the `code_interpreter` tool. There can be a maximum of 20 files + # associated with the tool. + file_ids: nil + ); end sig { override.returns({file_ids: T::Array[String]}) } def to_hash; end end @@ -731,8 +847,18 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(vector_store_ids: nil, vector_stores: nil); end - + def self.new( + # The + # [vector store](https://platform.openai.com/docs/api-reference/vector-stores/object) + # attached to this thread. There can be a maximum of 1 vector store attached to + # the thread. + vector_store_ids: nil, + # A helper to create a + # [vector store](https://platform.openai.com/docs/api-reference/vector-stores/object) + # with file_ids and attach it to this thread. There can be a maximum of 1 vector + # store attached to the thread. + vector_stores: nil + ); end sig do override .returns( @@ -801,8 +927,22 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(chunking_strategy: nil, file_ids: nil, metadata: nil); end - + def self.new( + # The chunking strategy used to chunk the file(s). If not set, will use the `auto` + # strategy. + chunking_strategy: nil, + # A list of [file](https://platform.openai.com/docs/api-reference/files) IDs to + # add to the vector store. There can be a maximum of 10000 files in a vector + # store. + file_ids: nil, + # 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: nil + ); end sig do override .returns( @@ -831,8 +971,10 @@ module OpenAI # The default strategy. This strategy currently uses a `max_chunk_size_tokens` of # `800` and `chunk_overlap_tokens` of `400`. sig { params(type: Symbol).returns(T.attached_class) } - def self.new(type: :auto); end - + def self.new( + # Always `auto`. + type: :auto + ); end sig { override.returns({type: Symbol}) } def to_hash; end end @@ -870,8 +1012,11 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(static:, type: :static); end - + def self.new( + static:, + # Always `static`. + type: :static + ); end sig do override .returns( @@ -901,8 +1046,15 @@ module OpenAI max_chunk_size_tokens: Integer ).returns(T.attached_class) end - def self.new(chunk_overlap_tokens:, max_chunk_size_tokens:); end - + def self.new( + # The number of tokens that overlap between chunks. The default value is `400`. + # + # Note that the overlap must not exceed half of `max_chunk_size_tokens`. + chunk_overlap_tokens:, + # The maximum number of tokens in each chunk. The default value is `800`. The + # minimum value is `100` and the maximum value is `4096`. + max_chunk_size_tokens: + ); end sig do override.returns({chunk_overlap_tokens: Integer, max_chunk_size_tokens: Integer}) end @@ -993,8 +1145,12 @@ module OpenAI attr_writer :file_ids sig { params(file_ids: T::Array[String]).returns(T.attached_class) } - def self.new(file_ids: nil); end - + def self.new( + # A list of [file](https://platform.openai.com/docs/api-reference/files) IDs made + # available to the `code_interpreter` tool. There can be a maximum of 20 files + # associated with the tool. + file_ids: nil + ); end sig { override.returns({file_ids: T::Array[String]}) } def to_hash; end end @@ -1011,8 +1167,13 @@ module OpenAI attr_writer :vector_store_ids sig { params(vector_store_ids: T::Array[String]).returns(T.attached_class) } - def self.new(vector_store_ids: nil); end - + def self.new( + # The ID of the + # [vector store](https://platform.openai.com/docs/api-reference/vector-stores/object) + # attached to this assistant. There can be a maximum of 1 vector store attached to + # the assistant. + vector_store_ids: nil + ); end sig { override.returns({vector_store_ids: T::Array[String]}) } def to_hash; end end @@ -1040,8 +1201,16 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(type:, last_messages: nil); end - + def self.new( + # The truncation strategy to use for the thread. The default is `auto`. If set to + # `last_messages`, the thread will be truncated to the n most recent messages in + # the thread. When set to `auto`, messages in the middle of the thread will be + # dropped to fit the context length of the model, `max_prompt_tokens`. + type:, + # The number of most recent messages from the thread when constructing the context + # for the run. + last_messages: nil + ); end sig do override .returns( diff --git a/rbi/lib/openai/models/beta/thread_create_params.rbi b/rbi/lib/openai/models/beta/thread_create_params.rbi index 6d1ed043..7a7ae81c 100644 --- a/rbi/lib/openai/models/beta/thread_create_params.rbi +++ b/rbi/lib/openai/models/beta/thread_create_params.rbi @@ -53,8 +53,24 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(messages: nil, metadata: nil, tool_resources: nil, request_options: {}); end - + def self.new( + # A list of [messages](https://platform.openai.com/docs/api-reference/messages) to + # start the thread with. + messages: nil, + # 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: nil, + # A set of resources that are made available to the assistant's tools in this + # thread. 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. + tool_resources: nil, + request_options: {} + ); end sig do override .returns( @@ -129,8 +145,26 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(content:, role:, attachments: nil, metadata: nil); end - + def self.new( + # The text contents of the message. + content:, + # The role of the entity that is creating the message. Allowed values include: + # + # - `user`: Indicates the message is sent by an actual user and should be used in + # most cases to represent user-generated messages. + # - `assistant`: Indicates the message is generated by the assistant. Use this + # value to insert messages from the assistant into the conversation. + role:, + # A list of files attached to the message, and the tools they should be added to. + attachments: nil, + # 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: nil + ); end sig do override .returns( @@ -250,8 +284,12 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(file_id: nil, tools: nil); end - + def self.new( + # The ID of the file to attach to the message. + file_id: nil, + # The tools to add this file to. + tools: nil + ); end sig do override .returns( @@ -277,8 +315,10 @@ module OpenAI attr_accessor :type sig { params(type: Symbol).returns(T.attached_class) } - def self.new(type: :file_search); end - + def self.new( + # The type of tool being defined: `file_search` + type: :file_search + ); end sig { override.returns({type: Symbol}) } def to_hash; end end @@ -352,8 +392,12 @@ module OpenAI attr_writer :file_ids sig { params(file_ids: T::Array[String]).returns(T.attached_class) } - def self.new(file_ids: nil); end - + def self.new( + # A list of [file](https://platform.openai.com/docs/api-reference/files) IDs made + # available to the `code_interpreter` tool. There can be a maximum of 20 files + # associated with the tool. + file_ids: nil + ); end sig { override.returns({file_ids: T::Array[String]}) } def to_hash; end end @@ -405,8 +449,18 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(vector_store_ids: nil, vector_stores: nil); end - + def self.new( + # The + # [vector store](https://platform.openai.com/docs/api-reference/vector-stores/object) + # attached to this thread. There can be a maximum of 1 vector store attached to + # the thread. + vector_store_ids: nil, + # A helper to create a + # [vector store](https://platform.openai.com/docs/api-reference/vector-stores/object) + # with file_ids and attach it to this thread. There can be a maximum of 1 vector + # store attached to the thread. + vector_stores: nil + ); end sig do override .returns( @@ -475,8 +529,22 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(chunking_strategy: nil, file_ids: nil, metadata: nil); end - + def self.new( + # The chunking strategy used to chunk the file(s). If not set, will use the `auto` + # strategy. + chunking_strategy: nil, + # A list of [file](https://platform.openai.com/docs/api-reference/files) IDs to + # add to the vector store. There can be a maximum of 10000 files in a vector + # store. + file_ids: nil, + # 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: nil + ); end sig do override .returns( @@ -505,8 +573,10 @@ module OpenAI # The default strategy. This strategy currently uses a `max_chunk_size_tokens` of # `800` and `chunk_overlap_tokens` of `400`. sig { params(type: Symbol).returns(T.attached_class) } - def self.new(type: :auto); end - + def self.new( + # Always `auto`. + type: :auto + ); end sig { override.returns({type: Symbol}) } def to_hash; end end @@ -544,8 +614,11 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(static:, type: :static); end - + def self.new( + static:, + # Always `static`. + type: :static + ); end sig do override .returns( @@ -575,8 +648,15 @@ module OpenAI max_chunk_size_tokens: Integer ).returns(T.attached_class) end - def self.new(chunk_overlap_tokens:, max_chunk_size_tokens:); end - + def self.new( + # The number of tokens that overlap between chunks. The default value is `400`. + # + # Note that the overlap must not exceed half of `max_chunk_size_tokens`. + chunk_overlap_tokens:, + # The maximum number of tokens in each chunk. The default value is `800`. The + # minimum value is `100` and the maximum value is `4096`. + max_chunk_size_tokens: + ); end sig { override.returns({chunk_overlap_tokens: Integer, max_chunk_size_tokens: Integer}) } def to_hash; end end diff --git a/rbi/lib/openai/models/beta/thread_stream_event.rbi b/rbi/lib/openai/models/beta/thread_stream_event.rbi index f169b98c..b8bd735a 100644 --- a/rbi/lib/openai/models/beta/thread_stream_event.rbi +++ b/rbi/lib/openai/models/beta/thread_stream_event.rbi @@ -33,8 +33,14 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(data:, enabled: nil, event: :"thread.created"); end - + def self.new( + # Represents a thread that contains + # [messages](https://platform.openai.com/docs/api-reference/messages). + data:, + # Whether to enable input audio transcription. + enabled: nil, + event: :"thread.created" + ); end sig { override.returns({data: OpenAI::Models::Beta::Thread, event: Symbol, enabled: T::Boolean}) } def to_hash; end end diff --git a/rbi/lib/openai/models/beta/thread_update_params.rbi b/rbi/lib/openai/models/beta/thread_update_params.rbi index 1eb3f670..9af4b827 100644 --- a/rbi/lib/openai/models/beta/thread_update_params.rbi +++ b/rbi/lib/openai/models/beta/thread_update_params.rbi @@ -39,8 +39,21 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(metadata: nil, tool_resources: nil, request_options: {}); end - + def self.new( + # 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: nil, + # A set of resources that are made available to the assistant's tools in this + # thread. 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. + tool_resources: nil, + request_options: {} + ); end sig do override .returns( @@ -111,8 +124,12 @@ module OpenAI attr_writer :file_ids sig { params(file_ids: T::Array[String]).returns(T.attached_class) } - def self.new(file_ids: nil); end - + def self.new( + # A list of [file](https://platform.openai.com/docs/api-reference/files) IDs made + # available to the `code_interpreter` tool. There can be a maximum of 20 files + # associated with the tool. + file_ids: nil + ); end sig { override.returns({file_ids: T::Array[String]}) } def to_hash; end end @@ -129,8 +146,13 @@ module OpenAI attr_writer :vector_store_ids sig { params(vector_store_ids: T::Array[String]).returns(T.attached_class) } - def self.new(vector_store_ids: nil); end - + def self.new( + # The + # [vector store](https://platform.openai.com/docs/api-reference/vector-stores/object) + # attached to this thread. There can be a maximum of 1 vector store attached to + # the thread. + vector_store_ids: nil + ); end sig { override.returns({vector_store_ids: T::Array[String]}) } def to_hash; end end diff --git a/rbi/lib/openai/models/beta/threads/file_citation_annotation.rbi b/rbi/lib/openai/models/beta/threads/file_citation_annotation.rbi index a9b10bb9..8f129c30 100644 --- a/rbi/lib/openai/models/beta/threads/file_citation_annotation.rbi +++ b/rbi/lib/openai/models/beta/threads/file_citation_annotation.rbi @@ -43,8 +43,15 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(end_index:, file_citation:, start_index:, text:, type: :file_citation); end - + def self.new( + end_index:, + file_citation:, + start_index:, + # The text in the message content that needs to be replaced. + text:, + # Always `file_citation`. + type: :file_citation + ); end sig do override .returns( @@ -65,8 +72,10 @@ module OpenAI attr_accessor :file_id sig { params(file_id: String).returns(T.attached_class) } - def self.new(file_id:); end - + def self.new( + # The ID of the specific File the citation is from. + file_id: + ); end sig { override.returns({file_id: String}) } def to_hash; end end diff --git a/rbi/lib/openai/models/beta/threads/file_citation_delta_annotation.rbi b/rbi/lib/openai/models/beta/threads/file_citation_delta_annotation.rbi index 1d28545a..5d81ac86 100644 --- a/rbi/lib/openai/models/beta/threads/file_citation_delta_annotation.rbi +++ b/rbi/lib/openai/models/beta/threads/file_citation_delta_annotation.rbi @@ -58,15 +58,16 @@ module OpenAI .returns(T.attached_class) end def self.new( + # The index of the annotation in the text content part. index:, end_index: nil, file_citation: nil, start_index: nil, + # The text in the message content that needs to be replaced. text: nil, + # Always `file_citation`. type: :file_citation - ) - end - + ); end sig do override .returns( @@ -98,8 +99,12 @@ module OpenAI attr_writer :quote sig { params(file_id: String, quote: String).returns(T.attached_class) } - def self.new(file_id: nil, quote: nil); end - + def self.new( + # The ID of the specific File the citation is from. + file_id: nil, + # The specific quote in the file. + quote: nil + ); end sig { override.returns({file_id: String, quote: String}) } def to_hash; end end diff --git a/rbi/lib/openai/models/beta/threads/file_path_annotation.rbi b/rbi/lib/openai/models/beta/threads/file_path_annotation.rbi index 87953109..fc4afa16 100644 --- a/rbi/lib/openai/models/beta/threads/file_path_annotation.rbi +++ b/rbi/lib/openai/models/beta/threads/file_path_annotation.rbi @@ -42,8 +42,15 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(end_index:, file_path:, start_index:, text:, type: :file_path); end - + def self.new( + end_index:, + file_path:, + start_index:, + # The text in the message content that needs to be replaced. + text:, + # Always `file_path`. + type: :file_path + ); end sig do override .returns( @@ -64,8 +71,10 @@ module OpenAI attr_accessor :file_id sig { params(file_id: String).returns(T.attached_class) } - def self.new(file_id:); end - + def self.new( + # The ID of the file that was generated. + file_id: + ); end sig { override.returns({file_id: String}) } def to_hash; end end diff --git a/rbi/lib/openai/models/beta/threads/file_path_delta_annotation.rbi b/rbi/lib/openai/models/beta/threads/file_path_delta_annotation.rbi index 4c2c8c36..e58879be 100644 --- a/rbi/lib/openai/models/beta/threads/file_path_delta_annotation.rbi +++ b/rbi/lib/openai/models/beta/threads/file_path_delta_annotation.rbi @@ -56,9 +56,17 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(index:, end_index: nil, file_path: nil, start_index: nil, text: nil, type: :file_path) - end - + def self.new( + # The index of the annotation in the text content part. + index:, + end_index: nil, + file_path: nil, + start_index: nil, + # The text in the message content that needs to be replaced. + text: nil, + # Always `file_path`. + type: :file_path + ); end sig do override .returns( @@ -83,8 +91,10 @@ module OpenAI attr_writer :file_id sig { params(file_id: String).returns(T.attached_class) } - def self.new(file_id: nil); end - + def self.new( + # The ID of the file that was generated. + file_id: nil + ); end sig { override.returns({file_id: String}) } def to_hash; end end diff --git a/rbi/lib/openai/models/beta/threads/image_file.rbi b/rbi/lib/openai/models/beta/threads/image_file.rbi index c6c13ccf..f7ded701 100644 --- a/rbi/lib/openai/models/beta/threads/image_file.rbi +++ b/rbi/lib/openai/models/beta/threads/image_file.rbi @@ -23,8 +23,15 @@ module OpenAI params(file_id: String, detail: OpenAI::Models::Beta::Threads::ImageFile::Detail::OrSymbol) .returns(T.attached_class) end - def self.new(file_id:, detail: nil); end - + def self.new( + # The [File](https://platform.openai.com/docs/api-reference/files) ID of the image + # in the message content. Set `purpose="vision"` when uploading the File if you + # need to later display the file content. + file_id:, + # Specifies the detail level of the image if specified by the user. `low` uses + # fewer tokens, you can opt in to high resolution using `high`. + detail: nil + ); end sig { override.returns({file_id: String, detail: OpenAI::Models::Beta::Threads::ImageFile::Detail::OrSymbol}) } def to_hash; end diff --git a/rbi/lib/openai/models/beta/threads/image_file_content_block.rbi b/rbi/lib/openai/models/beta/threads/image_file_content_block.rbi index 90524b05..1b87fd3f 100644 --- a/rbi/lib/openai/models/beta/threads/image_file_content_block.rbi +++ b/rbi/lib/openai/models/beta/threads/image_file_content_block.rbi @@ -24,8 +24,11 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(image_file:, type: :image_file); end - + def self.new( + image_file:, + # Always `image_file`. + type: :image_file + ); end sig { override.returns({image_file: OpenAI::Models::Beta::Threads::ImageFile, type: Symbol}) } def to_hash; end end diff --git a/rbi/lib/openai/models/beta/threads/image_file_delta.rbi b/rbi/lib/openai/models/beta/threads/image_file_delta.rbi index c677a276..628e1cef 100644 --- a/rbi/lib/openai/models/beta/threads/image_file_delta.rbi +++ b/rbi/lib/openai/models/beta/threads/image_file_delta.rbi @@ -26,8 +26,15 @@ module OpenAI params(detail: OpenAI::Models::Beta::Threads::ImageFileDelta::Detail::OrSymbol, file_id: String) .returns(T.attached_class) end - def self.new(detail: nil, file_id: nil); end - + def self.new( + # Specifies the detail level of the image if specified by the user. `low` uses + # fewer tokens, you can opt in to high resolution using `high`. + detail: nil, + # The [File](https://platform.openai.com/docs/api-reference/files) ID of the image + # in the message content. Set `purpose="vision"` when uploading the File if you + # need to later display the file content. + file_id: nil + ); end sig do override .returns({detail: OpenAI::Models::Beta::Threads::ImageFileDelta::Detail::TaggedSymbol, file_id: String}) diff --git a/rbi/lib/openai/models/beta/threads/image_file_delta_block.rbi b/rbi/lib/openai/models/beta/threads/image_file_delta_block.rbi index 74be2ead..c0ae3f1e 100644 --- a/rbi/lib/openai/models/beta/threads/image_file_delta_block.rbi +++ b/rbi/lib/openai/models/beta/threads/image_file_delta_block.rbi @@ -29,8 +29,13 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(index:, image_file: nil, type: :image_file); end - + def self.new( + # The index of the content part in the message. + index:, + image_file: nil, + # Always `image_file`. + type: :image_file + ); end sig do override.returns({index: Integer, type: Symbol, image_file: OpenAI::Models::Beta::Threads::ImageFileDelta}) end diff --git a/rbi/lib/openai/models/beta/threads/image_url.rbi b/rbi/lib/openai/models/beta/threads/image_url.rbi index b98e88e4..6c364602 100644 --- a/rbi/lib/openai/models/beta/threads/image_url.rbi +++ b/rbi/lib/openai/models/beta/threads/image_url.rbi @@ -22,8 +22,14 @@ module OpenAI params(url: String, detail: OpenAI::Models::Beta::Threads::ImageURL::Detail::OrSymbol) .returns(T.attached_class) end - def self.new(url:, detail: nil); end - + def self.new( + # The external URL of the image, must be a supported image types: jpeg, jpg, png, + # gif, webp. + url:, + # Specifies the detail level of the image. `low` uses fewer tokens, you can opt in + # to high resolution using `high`. Default value is `auto` + detail: nil + ); end sig { override.returns({url: String, detail: OpenAI::Models::Beta::Threads::ImageURL::Detail::OrSymbol}) } def to_hash; end diff --git a/rbi/lib/openai/models/beta/threads/image_url_content_block.rbi b/rbi/lib/openai/models/beta/threads/image_url_content_block.rbi index a960242b..53b64254 100644 --- a/rbi/lib/openai/models/beta/threads/image_url_content_block.rbi +++ b/rbi/lib/openai/models/beta/threads/image_url_content_block.rbi @@ -20,8 +20,11 @@ module OpenAI params(image_url: T.any(OpenAI::Models::Beta::Threads::ImageURL, OpenAI::Internal::AnyHash), type: Symbol) .returns(T.attached_class) end - def self.new(image_url:, type: :image_url); end - + def self.new( + image_url:, + # The type of the content part. + type: :image_url + ); end sig { override.returns({image_url: OpenAI::Models::Beta::Threads::ImageURL, type: Symbol}) } def to_hash; end end diff --git a/rbi/lib/openai/models/beta/threads/image_url_delta.rbi b/rbi/lib/openai/models/beta/threads/image_url_delta.rbi index a9c81f3e..0de64fe7 100644 --- a/rbi/lib/openai/models/beta/threads/image_url_delta.rbi +++ b/rbi/lib/openai/models/beta/threads/image_url_delta.rbi @@ -25,8 +25,14 @@ module OpenAI params(detail: OpenAI::Models::Beta::Threads::ImageURLDelta::Detail::OrSymbol, url: String) .returns(T.attached_class) end - def self.new(detail: nil, url: nil); end - + def self.new( + # Specifies the detail level of the image. `low` uses fewer tokens, you can opt in + # to high resolution using `high`. + detail: nil, + # The URL of the image, must be a supported image types: jpeg, jpg, png, gif, + # webp. + url: nil + ); end sig do override.returns({detail: OpenAI::Models::Beta::Threads::ImageURLDelta::Detail::TaggedSymbol, url: String}) end diff --git a/rbi/lib/openai/models/beta/threads/image_url_delta_block.rbi b/rbi/lib/openai/models/beta/threads/image_url_delta_block.rbi index ed36acf3..e7eb2ab2 100644 --- a/rbi/lib/openai/models/beta/threads/image_url_delta_block.rbi +++ b/rbi/lib/openai/models/beta/threads/image_url_delta_block.rbi @@ -28,8 +28,13 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(index:, image_url: nil, type: :image_url); end - + def self.new( + # The index of the content part in the message. + index:, + image_url: nil, + # Always `image_url`. + type: :image_url + ); end sig { override.returns({index: Integer, type: Symbol, image_url: OpenAI::Models::Beta::Threads::ImageURLDelta}) } def to_hash; end end diff --git a/rbi/lib/openai/models/beta/threads/message.rbi b/rbi/lib/openai/models/beta/threads/message.rbi index eef51a4c..3c4ecef7 100644 --- a/rbi/lib/openai/models/beta/threads/message.rbi +++ b/rbi/lib/openai/models/beta/threads/message.rbi @@ -121,19 +121,44 @@ module OpenAI .returns(T.attached_class) end def self.new( + # The identifier, which can be referenced in API endpoints. id:, + # If applicable, the ID of the + # [assistant](https://platform.openai.com/docs/api-reference/assistants) that + # authored this message. assistant_id:, + # A list of files attached to the message, and the tools they were added to. attachments:, + # The Unix timestamp (in seconds) for when the message was completed. completed_at:, + # The content of the message in array of text and/or images. content:, + # The Unix timestamp (in seconds) for when the message was created. created_at:, + # The Unix timestamp (in seconds) for when the message was marked as incomplete. incomplete_at:, + # On an incomplete message, details about why the message is incomplete. incomplete_details:, + # 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:, + # The entity that produced the message. One of `user` or `assistant`. role:, + # The ID of the [run](https://platform.openai.com/docs/api-reference/runs) + # associated with the creation of this message. Value is `null` when messages are + # created manually using the create message or create thread endpoints. run_id:, + # The status of the message, which can be either `in_progress`, `incomplete`, or + # `completed`. status:, + # The [thread](https://platform.openai.com/docs/api-reference/threads) ID that + # this message belongs to. thread_id:, + # The object type, which is always `thread.message`. object: :"thread.message" ); end sig do @@ -216,8 +241,12 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(file_id: nil, tools: nil); end - + def self.new( + # The ID of the file to attach to the message. + file_id: nil, + # The tools to add this file to. + tools: nil + ); end sig do override .returns( @@ -243,8 +272,10 @@ module OpenAI attr_accessor :type sig { params(type: Symbol).returns(T.attached_class) } - def self.new(type: :file_search); end - + def self.new( + # The type of tool being defined: `file_search` + type: :file_search + ); end sig { override.returns({type: Symbol}) } def to_hash; end end @@ -269,8 +300,10 @@ module OpenAI params(reason: OpenAI::Models::Beta::Threads::Message::IncompleteDetails::Reason::OrSymbol) .returns(T.attached_class) end - def self.new(reason:); end - + def self.new( + # The reason the message is incomplete. + reason: + ); end sig do override.returns({reason: OpenAI::Models::Beta::Threads::Message::IncompleteDetails::Reason::TaggedSymbol}) end diff --git a/rbi/lib/openai/models/beta/threads/message_create_params.rbi b/rbi/lib/openai/models/beta/threads/message_create_params.rbi index 6c57ca1f..326dc671 100644 --- a/rbi/lib/openai/models/beta/threads/message_create_params.rbi +++ b/rbi/lib/openai/models/beta/threads/message_create_params.rbi @@ -69,8 +69,27 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(content:, role:, attachments: nil, metadata: nil, request_options: {}); end - + def self.new( + # The text contents of the message. + content:, + # The role of the entity that is creating the message. Allowed values include: + # + # - `user`: Indicates the message is sent by an actual user and should be used in + # most cases to represent user-generated messages. + # - `assistant`: Indicates the message is generated by the assistant. Use this + # value to insert messages from the assistant into the conversation. + role:, + # A list of files attached to the message, and the tools they should be added to. + attachments: nil, + # 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: nil, + request_options: {} + ); end sig do override .returns( @@ -191,8 +210,12 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(file_id: nil, tools: nil); end - + def self.new( + # The ID of the file to attach to the message. + file_id: nil, + # The tools to add this file to. + tools: nil + ); end sig do override .returns( @@ -218,8 +241,10 @@ module OpenAI attr_accessor :type sig { params(type: Symbol).returns(T.attached_class) } - def self.new(type: :file_search); end - + def self.new( + # The type of tool being defined: `file_search` + type: :file_search + ); end sig { override.returns({type: Symbol}) } def to_hash; end end diff --git a/rbi/lib/openai/models/beta/threads/message_delta.rbi b/rbi/lib/openai/models/beta/threads/message_delta.rbi index 6156e86b..55f3b251 100644 --- a/rbi/lib/openai/models/beta/threads/message_delta.rbi +++ b/rbi/lib/openai/models/beta/threads/message_delta.rbi @@ -61,8 +61,12 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(content: nil, role: nil); end - + def self.new( + # The content of the message in array of text and/or images. + content: nil, + # The entity that produced the message. One of `user` or `assistant`. + role: nil + ); end sig do override .returns( diff --git a/rbi/lib/openai/models/beta/threads/message_delta_event.rbi b/rbi/lib/openai/models/beta/threads/message_delta_event.rbi index f5e5b29b..4e6d3d17 100644 --- a/rbi/lib/openai/models/beta/threads/message_delta_event.rbi +++ b/rbi/lib/openai/models/beta/threads/message_delta_event.rbi @@ -30,8 +30,14 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(id:, delta:, object: :"thread.message.delta"); end - + def self.new( + # The identifier of the message, which can be referenced in API endpoints. + id:, + # The delta containing the fields that have changed on the Message. + delta:, + # The object type, which is always `thread.message.delta`. + object: :"thread.message.delta" + ); end sig { override.returns({id: String, delta: OpenAI::Models::Beta::Threads::MessageDelta, object: Symbol}) } def to_hash; end end diff --git a/rbi/lib/openai/models/beta/threads/message_list_params.rbi b/rbi/lib/openai/models/beta/threads/message_list_params.rbi index 945d30d3..50cf3829 100644 --- a/rbi/lib/openai/models/beta/threads/message_list_params.rbi +++ b/rbi/lib/openai/models/beta/threads/message_list_params.rbi @@ -62,8 +62,27 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(after: nil, before: nil, limit: nil, order: nil, run_id: nil, request_options: {}); end - + def self.new( + # A cursor for use in pagination. `after` is an object ID that defines your place + # in the list. For instance, if you make a list request and receive 100 objects, + # ending with obj_foo, your subsequent call can include after=obj_foo in order to + # fetch the next page of the list. + after: nil, + # A cursor for use in pagination. `before` is an object ID that defines your place + # in the list. For instance, if you make a list request and receive 100 objects, + # starting with obj_foo, your subsequent call can include before=obj_foo in order + # to fetch the previous page of the list. + before: nil, + # A limit on the number of objects to be returned. Limit can range between 1 and + # 100, and the default is 20. + limit: nil, + # Sort order by the `created_at` timestamp of the objects. `asc` for ascending + # order and `desc` for descending order. + order: nil, + # Filter messages by the run ID that generated them. + run_id: nil, + request_options: {} + ); end sig do override .returns( diff --git a/rbi/lib/openai/models/beta/threads/message_update_params.rbi b/rbi/lib/openai/models/beta/threads/message_update_params.rbi index 09e67673..33d47d32 100644 --- a/rbi/lib/openai/models/beta/threads/message_update_params.rbi +++ b/rbi/lib/openai/models/beta/threads/message_update_params.rbi @@ -28,8 +28,17 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(thread_id:, metadata: nil, request_options: {}); end - + def self.new( + thread_id:, + # 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: nil, + request_options: {} + ); end sig do override .returns( diff --git a/rbi/lib/openai/models/beta/threads/refusal_content_block.rbi b/rbi/lib/openai/models/beta/threads/refusal_content_block.rbi index 591afe27..70e4dbb9 100644 --- a/rbi/lib/openai/models/beta/threads/refusal_content_block.rbi +++ b/rbi/lib/openai/models/beta/threads/refusal_content_block.rbi @@ -14,8 +14,11 @@ module OpenAI # The refusal content generated by the assistant. sig { params(refusal: String, type: Symbol).returns(T.attached_class) } - def self.new(refusal:, type: :refusal); end - + def self.new( + refusal:, + # Always `refusal`. + type: :refusal + ); end sig { override.returns({refusal: String, type: Symbol}) } def to_hash; end end diff --git a/rbi/lib/openai/models/beta/threads/refusal_delta_block.rbi b/rbi/lib/openai/models/beta/threads/refusal_delta_block.rbi index 8c9e2d1f..8b3878d9 100644 --- a/rbi/lib/openai/models/beta/threads/refusal_delta_block.rbi +++ b/rbi/lib/openai/models/beta/threads/refusal_delta_block.rbi @@ -21,8 +21,13 @@ module OpenAI # The refusal content that is part of a message. sig { params(index: Integer, refusal: String, type: Symbol).returns(T.attached_class) } - def self.new(index:, refusal: nil, type: :refusal); end - + def self.new( + # The index of the refusal part in the message. + index:, + refusal: nil, + # Always `refusal`. + type: :refusal + ); end sig { override.returns({index: Integer, type: Symbol, refusal: String}) } def to_hash; end end diff --git a/rbi/lib/openai/models/beta/threads/required_action_function_tool_call.rbi b/rbi/lib/openai/models/beta/threads/required_action_function_tool_call.rbi index 61ec2da8..b1788c25 100644 --- a/rbi/lib/openai/models/beta/threads/required_action_function_tool_call.rbi +++ b/rbi/lib/openai/models/beta/threads/required_action_function_tool_call.rbi @@ -38,8 +38,18 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(id:, function:, type: :function); end - + def self.new( + # The ID of the tool call. This ID must be referenced when you submit the tool + # outputs in using the + # [Submit tool outputs to run](https://platform.openai.com/docs/api-reference/runs/submitToolOutputs) + # endpoint. + id:, + # The function definition. + function:, + # The type of tool call the output is required for. For now, this is always + # `function`. + type: :function + ); end sig do override .returns( @@ -59,8 +69,12 @@ module OpenAI # The function definition. sig { params(arguments: String, name: String).returns(T.attached_class) } - def self.new(arguments:, name:); end - + def self.new( + # The arguments that the model expects you to pass to the function. + arguments:, + # The name of the function. + name: + ); end sig { override.returns({arguments: String, name: String}) } def to_hash; end end diff --git a/rbi/lib/openai/models/beta/threads/run.rbi b/rbi/lib/openai/models/beta/threads/run.rbi index f0708be8..102cf828 100644 --- a/rbi/lib/openai/models/beta/threads/run.rbi +++ b/rbi/lib/openai/models/beta/threads/run.rbi @@ -283,32 +283,108 @@ module OpenAI .returns(T.attached_class) end def self.new( + # The identifier, which can be referenced in API endpoints. id:, + # The ID of the + # [assistant](https://platform.openai.com/docs/api-reference/assistants) used for + # execution of this run. assistant_id:, + # The Unix timestamp (in seconds) for when the run was cancelled. cancelled_at:, + # The Unix timestamp (in seconds) for when the run was completed. completed_at:, + # The Unix timestamp (in seconds) for when the run was created. created_at:, + # The Unix timestamp (in seconds) for when the run will expire. expires_at:, + # The Unix timestamp (in seconds) for when the run failed. failed_at:, + # Details on why the run is incomplete. Will be `null` if the run is not + # incomplete. incomplete_details:, + # The instructions that the + # [assistant](https://platform.openai.com/docs/api-reference/assistants) used for + # this run. instructions:, + # The last error associated with this run. Will be `null` if there are no errors. last_error:, + # The maximum number of completion tokens specified to have been used over the + # course of the run. max_completion_tokens:, + # The maximum number of prompt tokens specified to have been used over the course + # of the run. max_prompt_tokens:, + # 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:, + # The model that the + # [assistant](https://platform.openai.com/docs/api-reference/assistants) used for + # this run. model:, + # Whether to enable + # [parallel function calling](https://platform.openai.com/docs/guides/function-calling#configuring-parallel-function-calling) + # during tool use. parallel_tool_calls:, + # Details on the action required to continue the run. Will be `null` if no action + # is required. required_action:, + # Specifies the format that the model must output. Compatible with + # [GPT-4o](https://platform.openai.com/docs/models#gpt-4o), + # [GPT-4 Turbo](https://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](https://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. response_format:, + # The Unix timestamp (in seconds) for when the run was started. started_at:, + # The status of the run, which can be either `queued`, `in_progress`, + # `requires_action`, `cancelling`, `cancelled`, `failed`, `completed`, + # `incomplete`, or `expired`. status:, + # The ID of the [thread](https://platform.openai.com/docs/api-reference/threads) + # that was executed on as a part of this run. thread_id:, + # Controls which (if any) tool is called by the model. `none` means the model will + # not call any tools and instead generates a message. `auto` is the default value + # and means the model can pick between generating a message or calling one or more + # tools. `required` means the model must call one or more tools before responding + # to the user. Specifying a particular tool like `{"type": "file_search"}` or + # `{"type": "function", "function": {"name": "my_function"}}` forces the model to + # call that tool. tool_choice:, + # The list of tools that the + # [assistant](https://platform.openai.com/docs/api-reference/assistants) used for + # this run. tools:, + # Controls for how a thread will be truncated prior to the run. Use this to + # control the intial context window of the run. truncation_strategy:, + # Usage statistics related to the run. This value will be `null` if the run is not + # in a terminal state (i.e. `in_progress`, `queued`, etc.). usage:, + # The sampling temperature used for this run. If not set, defaults to 1. temperature: nil, + # The nucleus sampling value used for this run. If not set, defaults to 1. top_p: nil, + # The object type, which is always `thread.run`. object: :"thread.run" ); end sig do @@ -380,8 +456,11 @@ module OpenAI params(reason: OpenAI::Models::Beta::Threads::Run::IncompleteDetails::Reason::OrSymbol) .returns(T.attached_class) end - def self.new(reason: nil); end - + def self.new( + # The reason why the run is incomplete. This will point to which specific token + # limit was reached over the course of the run. + reason: nil + ); end sig { override.returns({reason: OpenAI::Models::Beta::Threads::Run::IncompleteDetails::Reason::TaggedSymbol}) } def to_hash; end @@ -418,8 +497,12 @@ module OpenAI params(code: OpenAI::Models::Beta::Threads::Run::LastError::Code::OrSymbol, message: String) .returns(T.attached_class) end - def self.new(code:, message:); end - + def self.new( + # One of `server_error`, `rate_limit_exceeded`, or `invalid_prompt`. + code:, + # A human-readable description of the error. + message: + ); end sig do override .returns({code: OpenAI::Models::Beta::Threads::Run::LastError::Code::TaggedSymbol, message: String}) @@ -470,8 +553,12 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(submit_tool_outputs:, type: :submit_tool_outputs); end - + def self.new( + # Details on the tool outputs needed for this run to continue. + submit_tool_outputs:, + # For now, this is always `submit_tool_outputs`. + type: :submit_tool_outputs + ); end sig do override .returns( @@ -492,8 +579,10 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(tool_calls:); end - + def self.new( + # A list of the relevant tool calls. + tool_calls: + ); end sig { override.returns({tool_calls: T::Array[OpenAI::Models::Beta::Threads::RequiredActionFunctionToolCall]}) } def to_hash; end end @@ -521,8 +610,16 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(type:, last_messages: nil); end - + def self.new( + # The truncation strategy to use for the thread. The default is `auto`. If set to + # `last_messages`, the thread will be truncated to the n most recent messages in + # the thread. When set to `auto`, messages in the middle of the thread will be + # dropped to fit the context length of the model, `max_prompt_tokens`. + type:, + # The number of most recent messages from the thread when constructing the context + # for the run. + last_messages: nil + ); end sig do override .returns( @@ -576,8 +673,14 @@ module OpenAI total_tokens: Integer ).returns(T.attached_class) end - def self.new(completion_tokens:, prompt_tokens:, total_tokens:); end - + def self.new( + # Number of completion tokens used over the course of the run. + completion_tokens:, + # Number of prompt tokens used over the course of the run. + prompt_tokens:, + # Total number of tokens used (prompt + completion). + total_tokens: + ); end sig do override.returns({completion_tokens: Integer, prompt_tokens: Integer, total_tokens: Integer}) end diff --git a/rbi/lib/openai/models/beta/threads/run_create_params.rbi b/rbi/lib/openai/models/beta/threads/run_create_params.rbi index 3d4cc20a..9bee75b3 100644 --- a/rbi/lib/openai/models/beta/threads/run_create_params.rbi +++ b/rbi/lib/openai/models/beta/threads/run_create_params.rbi @@ -243,22 +243,107 @@ module OpenAI .returns(T.attached_class) end def self.new( + # The ID of the + # [assistant](https://platform.openai.com/docs/api-reference/assistants) to use to + # execute this run. assistant_id:, + # A list of additional fields to include in the response. Currently the only + # supported value is `step_details.tool_calls[*].file_search.results[*].content` + # to fetch the file search result content. + # + # See the + # [file search tool documentation](https://platform.openai.com/docs/assistants/tools/file-search#customizing-file-search-settings) + # for more information. include: nil, + # Appends additional instructions at the end of the instructions for the run. This + # is useful for modifying the behavior on a per-run basis without overriding other + # instructions. additional_instructions: nil, + # Adds additional messages to the thread before creating the run. additional_messages: nil, + # Overrides the + # [instructions](https://platform.openai.com/docs/api-reference/assistants/createAssistant) + # of the assistant. This is useful for modifying the behavior on a per-run basis. instructions: nil, + # The maximum number of completion tokens that may be used over the course of the + # run. The run will make a best effort to use only the number of completion tokens + # specified, across multiple turns of the run. If the run exceeds the number of + # completion tokens specified, the run will end with status `incomplete`. See + # `incomplete_details` for more info. max_completion_tokens: nil, + # The maximum number of prompt tokens that may be used over the course of the run. + # The run will make a best effort to use only the number of prompt tokens + # specified, across multiple turns of the run. If the run exceeds the number of + # prompt tokens specified, the run will end with status `incomplete`. See + # `incomplete_details` for more info. max_prompt_tokens: nil, + # 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: nil, + # The ID of the [Model](https://platform.openai.com/docs/api-reference/models) to + # be used to execute this run. If a value is provided here, it will override the + # model associated with the assistant. If not, the model associated with the + # assistant will be used. model: nil, + # Whether to enable + # [parallel function calling](https://platform.openai.com/docs/guides/function-calling#configuring-parallel-function-calling) + # during tool use. parallel_tool_calls: nil, + # **o-series models only** + # + # Constrains effort on reasoning for + # [reasoning models](https://platform.openai.com/docs/guides/reasoning). Currently + # supported values are `low`, `medium`, and `high`. Reducing reasoning effort can + # result in faster responses and fewer tokens used on reasoning in a response. reasoning_effort: nil, + # Specifies the format that the model must output. Compatible with + # [GPT-4o](https://platform.openai.com/docs/models#gpt-4o), + # [GPT-4 Turbo](https://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](https://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. response_format: nil, + # 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: nil, + # Controls which (if any) tool is called by the model. `none` means the model will + # not call any tools and instead generates a message. `auto` is the default value + # and means the model can pick between generating a message or calling one or more + # tools. `required` means the model must call one or more tools before responding + # to the user. Specifying a particular tool like `{"type": "file_search"}` or + # `{"type": "function", "function": {"name": "my_function"}}` forces the model to + # call that tool. tool_choice: nil, + # Override the tools the assistant can use for this run. This is useful for + # modifying the behavior on a per-run basis. tools: nil, + # 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. top_p: nil, + # Controls for how a thread will be truncated prior to the run. Use this to + # control the intial context window of the run. truncation_strategy: nil, request_options: {} ); end @@ -379,8 +464,26 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(content:, role:, attachments: nil, metadata: nil); end - + def self.new( + # The text contents of the message. + content:, + # The role of the entity that is creating the message. Allowed values include: + # + # - `user`: Indicates the message is sent by an actual user and should be used in + # most cases to represent user-generated messages. + # - `assistant`: Indicates the message is generated by the assistant. Use this + # value to insert messages from the assistant into the conversation. + role:, + # A list of files attached to the message, and the tools they should be added to. + attachments: nil, + # 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: nil + ); end sig do override .returns( @@ -506,8 +609,12 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(file_id: nil, tools: nil); end - + def self.new( + # The ID of the file to attach to the message. + file_id: nil, + # The tools to add this file to. + tools: nil + ); end sig do override .returns( @@ -533,8 +640,10 @@ module OpenAI attr_accessor :type sig { params(type: Symbol).returns(T.attached_class) } - def self.new(type: :file_search); end - + def self.new( + # The type of tool being defined: `file_search` + type: :file_search + ); end sig { override.returns({type: Symbol}) } def to_hash; end end @@ -583,8 +692,16 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(type:, last_messages: nil); end - + def self.new( + # The truncation strategy to use for the thread. The default is `auto`. If set to + # `last_messages`, the thread will be truncated to the n most recent messages in + # the thread. When set to `auto`, messages in the middle of the thread will be + # dropped to fit the context length of the model, `max_prompt_tokens`. + type:, + # The number of most recent messages from the thread when constructing the context + # for the run. + last_messages: nil + ); end sig do override .returns( diff --git a/rbi/lib/openai/models/beta/threads/run_list_params.rbi b/rbi/lib/openai/models/beta/threads/run_list_params.rbi index d38cd84b..24f6d425 100644 --- a/rbi/lib/openai/models/beta/threads/run_list_params.rbi +++ b/rbi/lib/openai/models/beta/threads/run_list_params.rbi @@ -54,8 +54,25 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(after: nil, before: nil, limit: nil, order: nil, request_options: {}); end - + def self.new( + # A cursor for use in pagination. `after` is an object ID that defines your place + # in the list. For instance, if you make a list request and receive 100 objects, + # ending with obj_foo, your subsequent call can include after=obj_foo in order to + # fetch the next page of the list. + after: nil, + # A cursor for use in pagination. `before` is an object ID that defines your place + # in the list. For instance, if you make a list request and receive 100 objects, + # starting with obj_foo, your subsequent call can include before=obj_foo in order + # to fetch the previous page of the list. + before: nil, + # A limit on the number of objects to be returned. Limit can range between 1 and + # 100, and the default is 20. + limit: nil, + # Sort order by the `created_at` timestamp of the objects. `asc` for ascending + # order and `desc` for descending order. + order: nil, + request_options: {} + ); end sig do override .returns( diff --git a/rbi/lib/openai/models/beta/threads/run_submit_tool_outputs_params.rbi b/rbi/lib/openai/models/beta/threads/run_submit_tool_outputs_params.rbi index e347bb7b..af244e16 100644 --- a/rbi/lib/openai/models/beta/threads/run_submit_tool_outputs_params.rbi +++ b/rbi/lib/openai/models/beta/threads/run_submit_tool_outputs_params.rbi @@ -23,8 +23,12 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(thread_id:, tool_outputs:, request_options: {}); end - + def self.new( + thread_id:, + # A list of tools for which the outputs are being submitted. + tool_outputs:, + request_options: {} + ); end sig do override .returns( @@ -54,8 +58,13 @@ module OpenAI attr_writer :tool_call_id sig { params(output: String, tool_call_id: String).returns(T.attached_class) } - def self.new(output: nil, tool_call_id: nil); end - + def self.new( + # The output of the tool call to be submitted to continue the run. + output: nil, + # The ID of the tool call in the `required_action` object within the run object + # the output is being submitted for. + tool_call_id: nil + ); end sig { override.returns({output: String, tool_call_id: String}) } def to_hash; end end diff --git a/rbi/lib/openai/models/beta/threads/run_update_params.rbi b/rbi/lib/openai/models/beta/threads/run_update_params.rbi index 9c4e4bb2..175d4516 100644 --- a/rbi/lib/openai/models/beta/threads/run_update_params.rbi +++ b/rbi/lib/openai/models/beta/threads/run_update_params.rbi @@ -28,8 +28,17 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(thread_id:, metadata: nil, request_options: {}); end - + def self.new( + thread_id:, + # 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: nil, + request_options: {} + ); end sig do override .returns( diff --git a/rbi/lib/openai/models/beta/threads/runs/code_interpreter_logs.rbi b/rbi/lib/openai/models/beta/threads/runs/code_interpreter_logs.rbi index a751e294..f0b834d2 100644 --- a/rbi/lib/openai/models/beta/threads/runs/code_interpreter_logs.rbi +++ b/rbi/lib/openai/models/beta/threads/runs/code_interpreter_logs.rbi @@ -23,8 +23,14 @@ module OpenAI # Text output from the Code Interpreter tool call as part of a run step. sig { params(index: Integer, logs: String, type: Symbol).returns(T.attached_class) } - def self.new(index:, logs: nil, type: :logs); end - + def self.new( + # The index of the output in the outputs array. + index:, + # The text output from the Code Interpreter tool call. + logs: nil, + # Always `logs`. + type: :logs + ); end sig { override.returns({index: Integer, type: Symbol, logs: String}) } def to_hash; end end diff --git a/rbi/lib/openai/models/beta/threads/runs/code_interpreter_output_image.rbi b/rbi/lib/openai/models/beta/threads/runs/code_interpreter_output_image.rbi index 3cc75c96..9cadda46 100644 --- a/rbi/lib/openai/models/beta/threads/runs/code_interpreter_output_image.rbi +++ b/rbi/lib/openai/models/beta/threads/runs/code_interpreter_output_image.rbi @@ -33,8 +33,13 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(index:, image: nil, type: :image); end - + def self.new( + # The index of the output in the outputs array. + index:, + image: nil, + # Always `image`. + type: :image + ); end sig do override .returns( @@ -53,8 +58,11 @@ module OpenAI attr_writer :file_id sig { params(file_id: String).returns(T.attached_class) } - def self.new(file_id: nil); end - + def self.new( + # The [file](https://platform.openai.com/docs/api-reference/files) ID of the + # image. + file_id: nil + ); end sig { override.returns({file_id: String}) } def to_hash; end end diff --git a/rbi/lib/openai/models/beta/threads/runs/code_interpreter_tool_call.rbi b/rbi/lib/openai/models/beta/threads/runs/code_interpreter_tool_call.rbi index 898db2f2..7ea07c11 100644 --- a/rbi/lib/openai/models/beta/threads/runs/code_interpreter_tool_call.rbi +++ b/rbi/lib/openai/models/beta/threads/runs/code_interpreter_tool_call.rbi @@ -42,8 +42,15 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(id:, code_interpreter:, type: :code_interpreter); end - + def self.new( + # The ID of the tool call. + id:, + # The Code Interpreter tool call definition. + code_interpreter:, + # The type of tool call. This is always going to be `code_interpreter` for this + # type of tool call. + type: :code_interpreter + ); end sig do override .returns( @@ -90,8 +97,14 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(input:, outputs:); end - + def self.new( + # The input to the Code Interpreter tool call. + input:, + # The outputs from the Code Interpreter tool call. Code Interpreter can output one + # or more items, including text (`logs`) or images (`image`). Each of these are + # represented by a different object type. + outputs: + ); end sig do override .returns( @@ -123,8 +136,12 @@ module OpenAI # Text output from the Code Interpreter tool call as part of a run step. sig { params(logs: String, type: Symbol).returns(T.attached_class) } - def self.new(logs:, type: :logs); end - + def self.new( + # The text output from the Code Interpreter tool call. + logs:, + # Always `logs`. + type: :logs + ); end sig { override.returns({logs: String, type: Symbol}) } def to_hash; end end @@ -162,8 +179,11 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(image:, type: :image); end - + def self.new( + image:, + # Always `image`. + type: :image + ); end sig do override .returns( @@ -182,8 +202,11 @@ module OpenAI attr_accessor :file_id sig { params(file_id: String).returns(T.attached_class) } - def self.new(file_id:); end - + def self.new( + # The [file](https://platform.openai.com/docs/api-reference/files) ID of the + # image. + file_id: + ); end sig { override.returns({file_id: String}) } def to_hash; end end diff --git a/rbi/lib/openai/models/beta/threads/runs/code_interpreter_tool_call_delta.rbi b/rbi/lib/openai/models/beta/threads/runs/code_interpreter_tool_call_delta.rbi index 06162584..b5314dd2 100644 --- a/rbi/lib/openai/models/beta/threads/runs/code_interpreter_tool_call_delta.rbi +++ b/rbi/lib/openai/models/beta/threads/runs/code_interpreter_tool_call_delta.rbi @@ -50,8 +50,17 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(index:, id: nil, code_interpreter: nil, type: :code_interpreter); end - + def self.new( + # The index of the tool call in the tool calls array. + index:, + # The ID of the tool call. + id: nil, + # The Code Interpreter tool call definition. + code_interpreter: nil, + # The type of tool call. This is always going to be `code_interpreter` for this + # type of tool call. + type: :code_interpreter + ); end sig do override .returns( @@ -118,8 +127,14 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(input: nil, outputs: nil); end - + def self.new( + # The input to the Code Interpreter tool call. + input: nil, + # The outputs from the Code Interpreter tool call. Code Interpreter can output one + # or more items, including text (`logs`) or images (`image`). Each of these are + # represented by a different object type. + outputs: nil + ); end sig do override .returns( diff --git a/rbi/lib/openai/models/beta/threads/runs/file_search_tool_call.rbi b/rbi/lib/openai/models/beta/threads/runs/file_search_tool_call.rbi index 77bfcf06..5fab3990 100644 --- a/rbi/lib/openai/models/beta/threads/runs/file_search_tool_call.rbi +++ b/rbi/lib/openai/models/beta/threads/runs/file_search_tool_call.rbi @@ -35,8 +35,15 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(id:, file_search:, type: :file_search); end - + def self.new( + # The ID of the tool call object. + id:, + # For now, this is always going to be an empty object. + file_search:, + # The type of tool call. This is always going to be `file_search` for this type of + # tool call. + type: :file_search + ); end sig do override .returns( @@ -94,8 +101,12 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(ranking_options: nil, results: nil); end - + def self.new( + # The ranking options for the file search. + ranking_options: nil, + # The results of the file search. + results: nil + ); end sig do override .returns( @@ -130,8 +141,14 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(ranker:, score_threshold:); end - + def self.new( + # The ranker to use for the file search. If not specified will use the `auto` + # ranker. + ranker:, + # The score threshold for the file search. All values must be a floating point + # number between 0 and 1. + score_threshold: + ); end sig do override .returns( @@ -224,8 +241,18 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(file_id:, file_name:, score:, content: nil); end - + def self.new( + # The ID of the file that result was found in. + file_id:, + # The name of the file that result was found in. + file_name:, + # The score of the result. All values must be a floating point number between 0 + # and 1. + score:, + # The content of the result that was found. The content is only included if + # requested via the include query parameter. + content: nil + ); end sig do override .returns( @@ -272,8 +299,12 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(text: nil, type: nil); end - + def self.new( + # The text content of the file. + text: nil, + # The type of the content. + type: nil + ); end sig do override .returns( diff --git a/rbi/lib/openai/models/beta/threads/runs/file_search_tool_call_delta.rbi b/rbi/lib/openai/models/beta/threads/runs/file_search_tool_call_delta.rbi index 80a2db89..5d6789be 100644 --- a/rbi/lib/openai/models/beta/threads/runs/file_search_tool_call_delta.rbi +++ b/rbi/lib/openai/models/beta/threads/runs/file_search_tool_call_delta.rbi @@ -34,8 +34,17 @@ module OpenAI type: Symbol ).returns(T.attached_class) end - def self.new(file_search:, index:, id: nil, type: :file_search); end - + def self.new( + # For now, this is always going to be an empty object. + file_search:, + # The index of the tool call in the tool calls array. + index:, + # The ID of the tool call object. + id: nil, + # The type of tool call. This is always going to be `file_search` for this type of + # tool call. + type: :file_search + ); end sig { override.returns({file_search: T.anything, index: Integer, type: Symbol, id: String}) } def to_hash; end end diff --git a/rbi/lib/openai/models/beta/threads/runs/function_tool_call.rbi b/rbi/lib/openai/models/beta/threads/runs/function_tool_call.rbi index 12d00e7e..b3e20062 100644 --- a/rbi/lib/openai/models/beta/threads/runs/function_tool_call.rbi +++ b/rbi/lib/openai/models/beta/threads/runs/function_tool_call.rbi @@ -35,8 +35,15 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(id:, function:, type: :function); end - + def self.new( + # The ID of the tool call object. + id:, + # The definition of the function that was called. + function:, + # The type of tool call. This is always going to be `function` for this type of + # tool call. + type: :function + ); end sig do override .returns( @@ -64,8 +71,16 @@ module OpenAI sig do params(arguments: String, name: String, output: T.nilable(String)).returns(T.attached_class) end - def self.new(arguments:, name:, output:); end - + def self.new( + # The arguments passed to the function. + arguments:, + # The name of the function. + name:, + # The output of the function. This will be `null` if the outputs have not been + # [submitted](https://platform.openai.com/docs/api-reference/runs/submitToolOutputs) + # yet. + output: + ); end sig { override.returns({arguments: String, name: String, output: T.nilable(String)}) } def to_hash; end end diff --git a/rbi/lib/openai/models/beta/threads/runs/function_tool_call_delta.rbi b/rbi/lib/openai/models/beta/threads/runs/function_tool_call_delta.rbi index df5bcf34..3a495934 100644 --- a/rbi/lib/openai/models/beta/threads/runs/function_tool_call_delta.rbi +++ b/rbi/lib/openai/models/beta/threads/runs/function_tool_call_delta.rbi @@ -43,8 +43,17 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(index:, id: nil, function: nil, type: :function); end - + def self.new( + # The index of the tool call in the tool calls array. + index:, + # The ID of the tool call object. + id: nil, + # The definition of the function that was called. + function: nil, + # The type of tool call. This is always going to be `function` for this type of + # tool call. + type: :function + ); end sig do override .returns( @@ -83,8 +92,16 @@ module OpenAI sig do params(arguments: String, name: String, output: T.nilable(String)).returns(T.attached_class) end - def self.new(arguments: nil, name: nil, output: nil); end - + def self.new( + # The arguments passed to the function. + arguments: nil, + # The name of the function. + name: nil, + # The output of the function. This will be `null` if the outputs have not been + # [submitted](https://platform.openai.com/docs/api-reference/runs/submitToolOutputs) + # yet. + output: nil + ); end sig { override.returns({arguments: String, name: String, output: T.nilable(String)}) } def to_hash; end end diff --git a/rbi/lib/openai/models/beta/threads/runs/message_creation_step_details.rbi b/rbi/lib/openai/models/beta/threads/runs/message_creation_step_details.rbi index 583a179d..d5358c72 100644 --- a/rbi/lib/openai/models/beta/threads/runs/message_creation_step_details.rbi +++ b/rbi/lib/openai/models/beta/threads/runs/message_creation_step_details.rbi @@ -35,8 +35,11 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(message_creation:, type: :message_creation); end - + def self.new( + message_creation:, + # Always `message_creation`. + type: :message_creation + ); end sig do override .returns( @@ -54,8 +57,10 @@ module OpenAI attr_accessor :message_id sig { params(message_id: String).returns(T.attached_class) } - def self.new(message_id:); end - + def self.new( + # The ID of the message that was created by this run step. + message_id: + ); end sig { override.returns({message_id: String}) } def to_hash; end end diff --git a/rbi/lib/openai/models/beta/threads/runs/run_step.rbi b/rbi/lib/openai/models/beta/threads/runs/run_step.rbi index db09f851..0e70020b 100644 --- a/rbi/lib/openai/models/beta/threads/runs/run_step.rbi +++ b/rbi/lib/openai/models/beta/threads/runs/run_step.rbi @@ -133,21 +133,50 @@ module OpenAI .returns(T.attached_class) end def self.new( + # The identifier of the run step, which can be referenced in API endpoints. id:, + # The ID of the + # [assistant](https://platform.openai.com/docs/api-reference/assistants) + # associated with the run step. assistant_id:, + # The Unix timestamp (in seconds) for when the run step was cancelled. cancelled_at:, + # The Unix timestamp (in seconds) for when the run step completed. completed_at:, + # The Unix timestamp (in seconds) for when the run step was created. created_at:, + # The Unix timestamp (in seconds) for when the run step expired. A step is + # considered expired if the parent run is expired. expired_at:, + # The Unix timestamp (in seconds) for when the run step failed. failed_at:, + # The last error associated with this run step. Will be `null` if there are no + # errors. last_error:, + # 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:, + # The ID of the [run](https://platform.openai.com/docs/api-reference/runs) that + # this run step is a part of. run_id:, + # The status of the run step, which can be either `in_progress`, `cancelled`, + # `failed`, `completed`, or `expired`. status:, + # The details of the run step. step_details:, + # The ID of the [thread](https://platform.openai.com/docs/api-reference/threads) + # that was run. thread_id:, + # The type of run step, which can be either `message_creation` or `tool_calls`. type:, + # Usage statistics related to the run step. This value will be `null` while the + # run step's status is `in_progress`. usage:, + # The object type, which is always `thread.run.step`. object: :"thread.run.step" ); end sig do @@ -193,8 +222,12 @@ module OpenAI params(code: OpenAI::Models::Beta::Threads::Runs::RunStep::LastError::Code::OrSymbol, message: String) .returns(T.attached_class) end - def self.new(code:, message:); end - + def self.new( + # One of `server_error` or `rate_limit_exceeded`. + code:, + # A human-readable description of the error. + message: + ); end sig do override .returns( @@ -289,8 +322,14 @@ module OpenAI total_tokens: Integer ).returns(T.attached_class) end - def self.new(completion_tokens:, prompt_tokens:, total_tokens:); end - + def self.new( + # Number of completion tokens used over the course of the run step. + completion_tokens:, + # Number of prompt tokens used over the course of the run step. + prompt_tokens:, + # Total number of tokens used (prompt + completion). + total_tokens: + ); end sig do override.returns({completion_tokens: Integer, prompt_tokens: Integer, total_tokens: Integer}) end diff --git a/rbi/lib/openai/models/beta/threads/runs/run_step_delta.rbi b/rbi/lib/openai/models/beta/threads/runs/run_step_delta.rbi index 561b30d0..d151496b 100644 --- a/rbi/lib/openai/models/beta/threads/runs/run_step_delta.rbi +++ b/rbi/lib/openai/models/beta/threads/runs/run_step_delta.rbi @@ -42,8 +42,10 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(step_details: nil); end - + def self.new( + # The details of the run step. + step_details: nil + ); end sig do override .returns( diff --git a/rbi/lib/openai/models/beta/threads/runs/run_step_delta_event.rbi b/rbi/lib/openai/models/beta/threads/runs/run_step_delta_event.rbi index e1124389..a9a700a4 100644 --- a/rbi/lib/openai/models/beta/threads/runs/run_step_delta_event.rbi +++ b/rbi/lib/openai/models/beta/threads/runs/run_step_delta_event.rbi @@ -31,8 +31,14 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(id:, delta:, object: :"thread.run.step.delta"); end - + def self.new( + # The identifier of the run step, which can be referenced in API endpoints. + id:, + # The delta containing the fields that have changed on the run step. + delta:, + # The object type, which is always `thread.run.step.delta`. + object: :"thread.run.step.delta" + ); end sig { override.returns({id: String, delta: OpenAI::Models::Beta::Threads::Runs::RunStepDelta, object: Symbol}) } def to_hash; end end diff --git a/rbi/lib/openai/models/beta/threads/runs/run_step_delta_message_delta.rbi b/rbi/lib/openai/models/beta/threads/runs/run_step_delta_message_delta.rbi index 2b151753..efe29b30 100644 --- a/rbi/lib/openai/models/beta/threads/runs/run_step_delta_message_delta.rbi +++ b/rbi/lib/openai/models/beta/threads/runs/run_step_delta_message_delta.rbi @@ -35,8 +35,11 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(message_creation: nil, type: :message_creation); end - + def self.new( + message_creation: nil, + # Always `message_creation`. + type: :message_creation + ); end sig do override .returns( @@ -57,8 +60,10 @@ module OpenAI attr_writer :message_id sig { params(message_id: String).returns(T.attached_class) } - def self.new(message_id: nil); end - + def self.new( + # The ID of the message that was created by this run step. + message_id: nil + ); end sig { override.returns({message_id: String}) } def to_hash; end end diff --git a/rbi/lib/openai/models/beta/threads/runs/step_list_params.rbi b/rbi/lib/openai/models/beta/threads/runs/step_list_params.rbi index 9f8536b3..bda4f8f6 100644 --- a/rbi/lib/openai/models/beta/threads/runs/step_list_params.rbi +++ b/rbi/lib/openai/models/beta/threads/runs/step_list_params.rbi @@ -75,15 +75,32 @@ module OpenAI end def self.new( thread_id:, + # A cursor for use in pagination. `after` is an object ID that defines your place + # in the list. For instance, if you make a list request and receive 100 objects, + # ending with obj_foo, your subsequent call can include after=obj_foo in order to + # fetch the next page of the list. after: nil, + # A cursor for use in pagination. `before` is an object ID that defines your place + # in the list. For instance, if you make a list request and receive 100 objects, + # starting with obj_foo, your subsequent call can include before=obj_foo in order + # to fetch the previous page of the list. before: nil, + # A list of additional fields to include in the response. Currently the only + # supported value is `step_details.tool_calls[*].file_search.results[*].content` + # to fetch the file search result content. + # + # See the + # [file search tool documentation](https://platform.openai.com/docs/assistants/tools/file-search#customizing-file-search-settings) + # for more information. include: nil, + # A limit on the number of objects to be returned. Limit can range between 1 and + # 100, and the default is 20. limit: nil, + # Sort order by the `created_at` timestamp of the objects. `asc` for ascending + # order and `desc` for descending order. order: nil, request_options: {} - ) - end - + ); end sig do override .returns( diff --git a/rbi/lib/openai/models/beta/threads/runs/step_retrieve_params.rbi b/rbi/lib/openai/models/beta/threads/runs/step_retrieve_params.rbi index c4b7c54d..a1c6e7c5 100644 --- a/rbi/lib/openai/models/beta/threads/runs/step_retrieve_params.rbi +++ b/rbi/lib/openai/models/beta/threads/runs/step_retrieve_params.rbi @@ -37,8 +37,19 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(thread_id:, run_id:, include: nil, request_options: {}); end - + def self.new( + thread_id:, + run_id:, + # A list of additional fields to include in the response. Currently the only + # supported value is `step_details.tool_calls[*].file_search.results[*].content` + # to fetch the file search result content. + # + # See the + # [file search tool documentation](https://platform.openai.com/docs/assistants/tools/file-search#customizing-file-search-settings) + # for more information. + include: nil, + request_options: {} + ); end sig do override .returns( diff --git a/rbi/lib/openai/models/beta/threads/runs/tool_call_delta_object.rbi b/rbi/lib/openai/models/beta/threads/runs/tool_call_delta_object.rbi index 796b549d..ea795b43 100644 --- a/rbi/lib/openai/models/beta/threads/runs/tool_call_delta_object.rbi +++ b/rbi/lib/openai/models/beta/threads/runs/tool_call_delta_object.rbi @@ -58,8 +58,14 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(tool_calls: nil, type: :tool_calls); end - + def self.new( + # An array of tool calls the run step was involved in. These can be associated + # with one of three types of tools: `code_interpreter`, `file_search`, or + # `function`. + tool_calls: nil, + # Always `tool_calls`. + type: :tool_calls + ); end sig do override .returns( diff --git a/rbi/lib/openai/models/beta/threads/runs/tool_calls_step_details.rbi b/rbi/lib/openai/models/beta/threads/runs/tool_calls_step_details.rbi index 34fdc65c..a5240f76 100644 --- a/rbi/lib/openai/models/beta/threads/runs/tool_calls_step_details.rbi +++ b/rbi/lib/openai/models/beta/threads/runs/tool_calls_step_details.rbi @@ -41,8 +41,14 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(tool_calls:, type: :tool_calls); end - + def self.new( + # An array of tool calls the run step was involved in. These can be associated + # with one of three types of tools: `code_interpreter`, `file_search`, or + # `function`. + tool_calls:, + # Always `tool_calls`. + type: :tool_calls + ); end sig do override .returns( diff --git a/rbi/lib/openai/models/beta/threads/text.rbi b/rbi/lib/openai/models/beta/threads/text.rbi index 0c5b65ab..64eb1b67 100644 --- a/rbi/lib/openai/models/beta/threads/text.rbi +++ b/rbi/lib/openai/models/beta/threads/text.rbi @@ -34,8 +34,11 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(annotations:, value:); end - + def self.new( + annotations:, + # The data that makes up the text. + value: + ); end sig do override .returns( diff --git a/rbi/lib/openai/models/beta/threads/text_content_block.rbi b/rbi/lib/openai/models/beta/threads/text_content_block.rbi index 60e48d2f..c1c5eb8c 100644 --- a/rbi/lib/openai/models/beta/threads/text_content_block.rbi +++ b/rbi/lib/openai/models/beta/threads/text_content_block.rbi @@ -20,8 +20,11 @@ module OpenAI params(text: T.any(OpenAI::Models::Beta::Threads::Text, OpenAI::Internal::AnyHash), type: Symbol) .returns(T.attached_class) end - def self.new(text:, type: :text); end - + def self.new( + text:, + # Always `text`. + type: :text + ); end sig { override.returns({text: OpenAI::Models::Beta::Threads::Text, type: Symbol}) } def to_hash; end end diff --git a/rbi/lib/openai/models/beta/threads/text_content_block_param.rbi b/rbi/lib/openai/models/beta/threads/text_content_block_param.rbi index ecf224cb..20626187 100644 --- a/rbi/lib/openai/models/beta/threads/text_content_block_param.rbi +++ b/rbi/lib/openai/models/beta/threads/text_content_block_param.rbi @@ -15,8 +15,12 @@ module OpenAI # The text content that is part of a message. sig { params(text: String, type: Symbol).returns(T.attached_class) } - def self.new(text:, type: :text); end - + def self.new( + # Text content to be sent to the model + text:, + # Always `text`. + type: :text + ); end sig { override.returns({text: String, type: Symbol}) } def to_hash; end end diff --git a/rbi/lib/openai/models/beta/threads/text_delta.rbi b/rbi/lib/openai/models/beta/threads/text_delta.rbi index 7776fa38..8d384acc 100644 --- a/rbi/lib/openai/models/beta/threads/text_delta.rbi +++ b/rbi/lib/openai/models/beta/threads/text_delta.rbi @@ -53,8 +53,11 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(annotations: nil, value: nil); end - + def self.new( + annotations: nil, + # The data that makes up the text. + value: nil + ); end sig do override .returns( diff --git a/rbi/lib/openai/models/beta/threads/text_delta_block.rbi b/rbi/lib/openai/models/beta/threads/text_delta_block.rbi index d22fc8db..e054d1d2 100644 --- a/rbi/lib/openai/models/beta/threads/text_delta_block.rbi +++ b/rbi/lib/openai/models/beta/threads/text_delta_block.rbi @@ -28,8 +28,13 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(index:, text: nil, type: :text); end - + def self.new( + # The index of the content part in the message. + index:, + text: nil, + # Always `text`. + type: :text + ); end sig { override.returns({index: Integer, type: Symbol, text: OpenAI::Models::Beta::Threads::TextDelta}) } def to_hash; end end diff --git a/rbi/lib/openai/models/chat/chat_completion.rbi b/rbi/lib/openai/models/chat/chat_completion.rbi index 43d751bd..dbf3c910 100644 --- a/rbi/lib/openai/models/chat/chat_completion.rbi +++ b/rbi/lib/openai/models/chat/chat_completion.rbi @@ -78,13 +78,41 @@ module OpenAI .returns(T.attached_class) end def self.new( + # A unique identifier for the chat completion. id:, + # A list of chat completion choices. Can be more than one if `n` is greater + # than 1. choices:, + # The Unix timestamp (in seconds) of when the chat completion was created. created:, + # The model used for the chat completion. model:, + # Specifies the latency tier to use for processing the request. This parameter is + # relevant for customers subscribed to the scale tier service: + # + # - If set to 'auto', and the Project is Scale tier enabled, the system will + # utilize scale tier credits until they are exhausted. + # - If set to 'auto', and the Project is not Scale tier enabled, the request will + # be processed using the default service tier with a lower uptime SLA and no + # latency guarentee. + # - If set to 'default', the request will be processed using the default service + # tier with a lower uptime SLA and no latency guarentee. + # - If set to 'flex', the request will be processed with the Flex Processing + # service tier. + # [Learn more](https://platform.openai.com/docs/guides/flex-processing). + # - When not set, the default behavior is 'auto'. + # + # When this parameter is set, the response body will include the `service_tier` + # utilized. service_tier: nil, + # This fingerprint represents the backend configuration that the model runs with. + # + # Can be used in conjunction with the `seed` request parameter to understand when + # backend changes have been made that might impact determinism. system_fingerprint: nil, + # Usage statistics for the completion request. usage: nil, + # The object type, which is always `chat.completion`. object: :"chat.completion" ); end sig do @@ -146,8 +174,21 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(finish_reason:, index:, logprobs:, message:); end - + def self.new( + # The reason the model stopped generating tokens. This will be `stop` if the model + # hit a natural stop point or a provided stop sequence, `length` if the maximum + # number of tokens specified in the request was reached, `content_filter` if + # content was omitted due to a flag from our content filters, `tool_calls` if the + # model called a tool, or `function_call` (deprecated) if the model called a + # function. + finish_reason:, + # The index of the choice in the list of choices. + index:, + # Log probability information for the choice. + logprobs:, + # A chat completion message generated by the model. + message: + ); end sig do override .returns( @@ -202,8 +243,12 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(content:, refusal:); end - + def self.new( + # A list of message content tokens with log probability information. + content:, + # A list of message refusal tokens with log probability information. + refusal: + ); end sig do override .returns( diff --git a/rbi/lib/openai/models/chat/chat_completion_assistant_message_param.rbi b/rbi/lib/openai/models/chat/chat_completion_assistant_message_param.rbi index 436f9a60..a9321c4b 100644 --- a/rbi/lib/openai/models/chat/chat_completion_assistant_message_param.rbi +++ b/rbi/lib/openai/models/chat/chat_completion_assistant_message_param.rbi @@ -110,16 +110,25 @@ module OpenAI .returns(T.attached_class) end def self.new( + # Data about a previous audio response from the model. + # [Learn more](https://platform.openai.com/docs/guides/audio). audio: nil, + # The contents of the assistant message. Required unless `tool_calls` or + # `function_call` is specified. content: nil, + # Deprecated and replaced by `tool_calls`. The name and arguments of a function + # that should be called, as generated by the model. function_call: nil, + # An optional name for the participant. Provides the model information to + # differentiate between participants of the same role. name: nil, + # The refusal message by the assistant. refusal: nil, + # The tool calls generated by the model, such as function calls. tool_calls: nil, + # The role of the messages author, in this case `assistant`. role: :assistant - ) - end - + ); end sig do override .returns( @@ -154,8 +163,10 @@ module OpenAI # Data about a previous audio response from the model. # [Learn more](https://platform.openai.com/docs/guides/audio). sig { params(id: String).returns(T.attached_class) } - def self.new(id:); end - + def self.new( + # Unique identifier for a previous audio response from the model. + id: + ); end sig { override.returns({id: String}) } def to_hash; end end @@ -217,8 +228,15 @@ module OpenAI # Deprecated and replaced by `tool_calls`. The name and arguments of a function # that should be called, as generated by the model. sig { params(arguments: String, name: String).returns(T.attached_class) } - def self.new(arguments:, name:); end - + def self.new( + # The arguments to call the function with, as generated by the model in JSON + # format. Note that the model does not always generate valid JSON, and may + # hallucinate parameters not defined by your function schema. Validate the + # arguments in your code before calling your function. + arguments:, + # The name of the function to call. + name: + ); end sig { override.returns({arguments: String, name: String}) } def to_hash; end end diff --git a/rbi/lib/openai/models/chat/chat_completion_audio.rbi b/rbi/lib/openai/models/chat/chat_completion_audio.rbi index 77f2a8a9..3a562bd2 100644 --- a/rbi/lib/openai/models/chat/chat_completion_audio.rbi +++ b/rbi/lib/openai/models/chat/chat_completion_audio.rbi @@ -28,8 +28,18 @@ module OpenAI sig do params(id: String, data: String, expires_at: Integer, transcript: String).returns(T.attached_class) end - def self.new(id:, data:, expires_at:, transcript:); end - + def self.new( + # Unique identifier for this audio response. + id:, + # Base64 encoded audio bytes generated by the model, in the format specified in + # the request. + data:, + # The Unix timestamp (in seconds) for when this audio response will no longer be + # accessible on the server for use in multi-turn conversations. + expires_at:, + # Transcript of the audio generated by the model. + transcript: + ); end sig { override.returns({id: String, data: String, expires_at: Integer, transcript: String}) } def to_hash; end end diff --git a/rbi/lib/openai/models/chat/chat_completion_audio_param.rbi b/rbi/lib/openai/models/chat/chat_completion_audio_param.rbi index 231ca7da..f8798fa0 100644 --- a/rbi/lib/openai/models/chat/chat_completion_audio_param.rbi +++ b/rbi/lib/openai/models/chat/chat_completion_audio_param.rbi @@ -24,8 +24,14 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(format_:, voice:); end - + def self.new( + # Specifies the output audio format. Must be one of `wav`, `mp3`, `flac`, `opus`, + # or `pcm16`. + format_:, + # The voice the model uses to respond. Supported voices are `alloy`, `ash`, + # `ballad`, `coral`, `echo`, `fable`, `nova`, `onyx`, `sage`, and `shimmer`. + voice: + ); end sig do override .returns( diff --git a/rbi/lib/openai/models/chat/chat_completion_chunk.rbi b/rbi/lib/openai/models/chat/chat_completion_chunk.rbi index 8c755f8f..c4d28509 100644 --- a/rbi/lib/openai/models/chat/chat_completion_chunk.rbi +++ b/rbi/lib/openai/models/chat/chat_completion_chunk.rbi @@ -86,13 +86,48 @@ module OpenAI .returns(T.attached_class) end def self.new( + # A unique identifier for the chat completion. Each chunk has the same ID. id:, + # A list of chat completion choices. Can contain more than one elements if `n` is + # greater than 1. Can also be empty for the last chunk if you set + # `stream_options: {"include_usage": true}`. choices:, + # The Unix timestamp (in seconds) of when the chat completion was created. Each + # chunk has the same timestamp. created:, + # The model to generate the completion. model:, + # Specifies the latency tier to use for processing the request. This parameter is + # relevant for customers subscribed to the scale tier service: + # + # - If set to 'auto', and the Project is Scale tier enabled, the system will + # utilize scale tier credits until they are exhausted. + # - If set to 'auto', and the Project is not Scale tier enabled, the request will + # be processed using the default service tier with a lower uptime SLA and no + # latency guarentee. + # - If set to 'default', the request will be processed using the default service + # tier with a lower uptime SLA and no latency guarentee. + # - If set to 'flex', the request will be processed with the Flex Processing + # service tier. + # [Learn more](https://platform.openai.com/docs/guides/flex-processing). + # - When not set, the default behavior is 'auto'. + # + # When this parameter is set, the response body will include the `service_tier` + # utilized. service_tier: nil, + # This fingerprint represents the backend configuration that the model runs with. + # Can be used in conjunction with the `seed` request parameter to understand when + # backend changes have been made that might impact determinism. system_fingerprint: nil, + # An optional field that will only be present when you set + # `stream_options: {"include_usage": true}` in your request. When present, it + # contains a null value **except for the last chunk** which contains the token + # usage statistics for the entire request. + # + # **NOTE:** If the stream is interrupted or cancelled, you may not receive the + # final usage chunk which contains the total token usage for the request. usage: nil, + # The object type, which is always `chat.completion.chunk`. object: :"chat.completion.chunk" ); end sig do @@ -157,8 +192,21 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(delta:, finish_reason:, index:, logprobs: nil); end - + def self.new( + # A chat completion delta generated by streamed model responses. + delta:, + # The reason the model stopped generating tokens. This will be `stop` if the model + # hit a natural stop point or a provided stop sequence, `length` if the maximum + # number of tokens specified in the request was reached, `content_filter` if + # content was omitted due to a flag from our content filters, `tool_calls` if the + # model called a tool, or `function_call` (deprecated) if the model called a + # function. + finish_reason:, + # The index of the choice in the list of choices. + index:, + # Log probability information for the choice. + logprobs: nil + ); end sig do override .returns( @@ -223,8 +271,18 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(content: nil, function_call: nil, refusal: nil, role: nil, tool_calls: nil); end - + def self.new( + # The contents of the chunk message. + content: nil, + # Deprecated and replaced by `tool_calls`. The name and arguments of a function + # that should be called, as generated by the model. + function_call: nil, + # The refusal message generated by the model. + refusal: nil, + # The role of the author of this message. + role: nil, + tool_calls: nil + ); end sig do override .returns( @@ -260,8 +318,15 @@ module OpenAI # Deprecated and replaced by `tool_calls`. The name and arguments of a function # that should be called, as generated by the model. sig { params(arguments: String, name: String).returns(T.attached_class) } - def self.new(arguments: nil, name: nil); end - + def self.new( + # The arguments to call the function with, as generated by the model in JSON + # format. Note that the model does not always generate valid JSON, and may + # hallucinate parameters not defined by your function schema. Validate the + # arguments in your code before calling your function. + arguments: nil, + # The name of the function to call. + name: nil + ); end sig { override.returns({arguments: String, name: String}) } def to_hash; end end @@ -330,8 +395,14 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(index:, id: nil, function: nil, type: nil); end - + def self.new( + index:, + # The ID of the tool call. + id: nil, + function: nil, + # The type of the tool. Currently, only `function` is supported. + type: nil + ); end sig do override .returns( @@ -364,8 +435,15 @@ module OpenAI attr_writer :name sig { params(arguments: String, name: String).returns(T.attached_class) } - def self.new(arguments: nil, name: nil); end - + def self.new( + # The arguments to call the function with, as generated by the model in JSON + # format. Note that the model does not always generate valid JSON, and may + # hallucinate parameters not defined by your function schema. Validate the + # arguments in your code before calling your function. + arguments: nil, + # The name of the function to call. + name: nil + ); end sig { override.returns({arguments: String, name: String}) } def to_hash; end end @@ -433,8 +511,12 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(content:, refusal:); end - + def self.new( + # A list of message content tokens with log probability information. + content:, + # A list of message refusal tokens with log probability information. + refusal: + ); end sig do override .returns( diff --git a/rbi/lib/openai/models/chat/chat_completion_content_part.rbi b/rbi/lib/openai/models/chat/chat_completion_content_part.rbi index ba9fd403..d380d60e 100644 --- a/rbi/lib/openai/models/chat/chat_completion_content_part.rbi +++ b/rbi/lib/openai/models/chat/chat_completion_content_part.rbi @@ -33,8 +33,11 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(file:, type: :file); end - + def self.new( + file:, + # The type of the content part. Always `file`. + type: :file + ); end sig { override.returns({file: OpenAI::Models::Chat::ChatCompletionContentPart::File::File, type: Symbol}) } def to_hash; end @@ -62,8 +65,15 @@ module OpenAI attr_writer :filename sig { params(file_data: String, file_id: String, filename: String).returns(T.attached_class) } - def self.new(file_data: nil, file_id: nil, filename: nil); end - + def self.new( + # The base64 encoded file data, used when passing the file to the model as a + # string. + file_data: nil, + # The ID of an uploaded file to use as input. + file_id: nil, + # The name of the file, used when passing the file to the model as a string. + filename: nil + ); end sig { override.returns({file_data: String, file_id: String, filename: String}) } def to_hash; end end diff --git a/rbi/lib/openai/models/chat/chat_completion_content_part_image.rbi b/rbi/lib/openai/models/chat/chat_completion_content_part_image.rbi index e28956c2..8d2a8ddd 100644 --- a/rbi/lib/openai/models/chat/chat_completion_content_part_image.rbi +++ b/rbi/lib/openai/models/chat/chat_completion_content_part_image.rbi @@ -27,8 +27,11 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(image_url:, type: :image_url); end - + def self.new( + image_url:, + # The type of the content part. + type: :image_url + ); end sig do override.returns({image_url: OpenAI::Models::Chat::ChatCompletionContentPartImage::ImageURL, type: Symbol}) end @@ -54,8 +57,13 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(url:, detail: nil); end - + def self.new( + # Either a URL of the image or the base64 encoded image data. + url:, + # Specifies the detail level of the image. Learn more in the + # [Vision guide](https://platform.openai.com/docs/guides/vision#low-or-high-fidelity-image-understanding). + detail: nil + ); end sig do override .returns( diff --git a/rbi/lib/openai/models/chat/chat_completion_content_part_input_audio.rbi b/rbi/lib/openai/models/chat/chat_completion_content_part_input_audio.rbi index 9e55ccdf..34e7e778 100644 --- a/rbi/lib/openai/models/chat/chat_completion_content_part_input_audio.rbi +++ b/rbi/lib/openai/models/chat/chat_completion_content_part_input_audio.rbi @@ -27,8 +27,11 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(input_audio:, type: :input_audio); end - + def self.new( + input_audio:, + # The type of the content part. Always `input_audio`. + type: :input_audio + ); end sig do override .returns( @@ -53,8 +56,12 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(data:, format_:); end - + def self.new( + # Base64 encoded audio data. + data:, + # The format of the encoded audio data. Currently supports "wav" and "mp3". + format_: + ); end sig do override .returns( diff --git a/rbi/lib/openai/models/chat/chat_completion_content_part_refusal.rbi b/rbi/lib/openai/models/chat/chat_completion_content_part_refusal.rbi index 6aedee59..8088fdc0 100644 --- a/rbi/lib/openai/models/chat/chat_completion_content_part_refusal.rbi +++ b/rbi/lib/openai/models/chat/chat_completion_content_part_refusal.rbi @@ -13,8 +13,12 @@ module OpenAI attr_accessor :type sig { params(refusal: String, type: Symbol).returns(T.attached_class) } - def self.new(refusal:, type: :refusal); end - + def self.new( + # The refusal message generated by the model. + refusal:, + # The type of the content part. + type: :refusal + ); end sig { override.returns({refusal: String, type: Symbol}) } def to_hash; end end diff --git a/rbi/lib/openai/models/chat/chat_completion_content_part_text.rbi b/rbi/lib/openai/models/chat/chat_completion_content_part_text.rbi index ee4dcfaf..8fecc89b 100644 --- a/rbi/lib/openai/models/chat/chat_completion_content_part_text.rbi +++ b/rbi/lib/openai/models/chat/chat_completion_content_part_text.rbi @@ -15,8 +15,12 @@ module OpenAI # Learn about # [text inputs](https://platform.openai.com/docs/guides/text-generation). sig { params(text: String, type: Symbol).returns(T.attached_class) } - def self.new(text:, type: :text); end - + def self.new( + # The text content. + text:, + # The type of the content part. + type: :text + ); end sig { override.returns({text: String, type: Symbol}) } def to_hash; end end diff --git a/rbi/lib/openai/models/chat/chat_completion_deleted.rbi b/rbi/lib/openai/models/chat/chat_completion_deleted.rbi index 0c496584..e5083b94 100644 --- a/rbi/lib/openai/models/chat/chat_completion_deleted.rbi +++ b/rbi/lib/openai/models/chat/chat_completion_deleted.rbi @@ -17,8 +17,14 @@ module OpenAI attr_accessor :object sig { params(id: String, deleted: T::Boolean, object: Symbol).returns(T.attached_class) } - def self.new(id:, deleted:, object: :"chat.completion.deleted"); end - + def self.new( + # The ID of the chat completion that was deleted. + id:, + # Whether the chat completion was deleted. + deleted:, + # The type of object being deleted. + object: :"chat.completion.deleted" + ); end sig { override.returns({id: String, deleted: T::Boolean, object: Symbol}) } def to_hash; end end diff --git a/rbi/lib/openai/models/chat/chat_completion_developer_message_param.rbi b/rbi/lib/openai/models/chat/chat_completion_developer_message_param.rbi index 6e56c125..ea4a6d05 100644 --- a/rbi/lib/openai/models/chat/chat_completion_developer_message_param.rbi +++ b/rbi/lib/openai/models/chat/chat_completion_developer_message_param.rbi @@ -34,8 +34,15 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(content:, name: nil, role: :developer); end - + def self.new( + # The contents of the developer message. + content:, + # An optional name for the participant. Provides the model information to + # differentiate between participants of the same role. + name: nil, + # The role of the messages author, in this case `developer`. + role: :developer + ); end sig do override .returns( diff --git a/rbi/lib/openai/models/chat/chat_completion_function_call_option.rbi b/rbi/lib/openai/models/chat/chat_completion_function_call_option.rbi index 5dcea933..93220f0f 100644 --- a/rbi/lib/openai/models/chat/chat_completion_function_call_option.rbi +++ b/rbi/lib/openai/models/chat/chat_completion_function_call_option.rbi @@ -11,8 +11,10 @@ module OpenAI # Specifying a particular function via `{"name": "my_function"}` forces the model # to call that function. sig { params(name: String).returns(T.attached_class) } - def self.new(name:); end - + def self.new( + # The name of the function to call. + name: + ); end sig { override.returns({name: String}) } def to_hash; end end diff --git a/rbi/lib/openai/models/chat/chat_completion_function_message_param.rbi b/rbi/lib/openai/models/chat/chat_completion_function_message_param.rbi index 0b1e82e1..dd32f6f7 100644 --- a/rbi/lib/openai/models/chat/chat_completion_function_message_param.rbi +++ b/rbi/lib/openai/models/chat/chat_completion_function_message_param.rbi @@ -17,8 +17,14 @@ module OpenAI attr_accessor :role sig { params(content: T.nilable(String), name: String, role: Symbol).returns(T.attached_class) } - def self.new(content:, name:, role: :function); end - + def self.new( + # The contents of the function message. + content:, + # The name of the function to call. + name:, + # The role of the messages author, in this case `function`. + role: :function + ); end sig { override.returns({content: T.nilable(String), name: String, role: Symbol}) } def to_hash; end end diff --git a/rbi/lib/openai/models/chat/chat_completion_message.rbi b/rbi/lib/openai/models/chat/chat_completion_message.rbi index f70217f5..dcffce2a 100644 --- a/rbi/lib/openai/models/chat/chat_completion_message.rbi +++ b/rbi/lib/openai/models/chat/chat_completion_message.rbi @@ -77,16 +77,25 @@ module OpenAI .returns(T.attached_class) end def self.new( + # The contents of the message. content:, + # The refusal message generated by the model. refusal:, + # Annotations for the message, when applicable, as when using the + # [web search tool](https://platform.openai.com/docs/guides/tools-web-search?api-mode=chat). annotations: nil, + # If the audio output modality is requested, this object contains data about the + # audio response from the model. + # [Learn more](https://platform.openai.com/docs/guides/audio). audio: nil, + # Deprecated and replaced by `tool_calls`. The name and arguments of a function + # that should be called, as generated by the model. function_call: nil, + # The tool calls generated by the model, such as function calls. tool_calls: nil, + # The role of the author of this message. role: :assistant - ) - end - + ); end sig do override .returns( @@ -128,8 +137,12 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(url_citation:, type: :url_citation); end - + def self.new( + # A URL citation when using web search. + url_citation:, + # The type of the URL citation. Always `url_citation`. + type: :url_citation + ); end sig do override .returns( @@ -164,8 +177,16 @@ module OpenAI url: String ).returns(T.attached_class) end - def self.new(end_index:, start_index:, title:, url:); end - + def self.new( + # The index of the last character of the URL citation in the message. + end_index:, + # The index of the first character of the URL citation in the message. + start_index:, + # The title of the web resource. + title:, + # The URL of the web resource. + url: + ); end sig { override.returns({end_index: Integer, start_index: Integer, title: String, url: String}) } def to_hash; end end @@ -186,8 +207,15 @@ module OpenAI # Deprecated and replaced by `tool_calls`. The name and arguments of a function # that should be called, as generated by the model. sig { params(arguments: String, name: String).returns(T.attached_class) } - def self.new(arguments:, name:); end - + def self.new( + # The arguments to call the function with, as generated by the model in JSON + # format. Note that the model does not always generate valid JSON, and may + # hallucinate parameters not defined by your function schema. Validate the + # arguments in your code before calling your function. + arguments:, + # The name of the function to call. + name: + ); end sig { override.returns({arguments: String, name: String}) } def to_hash; end end diff --git a/rbi/lib/openai/models/chat/chat_completion_message_tool_call.rbi b/rbi/lib/openai/models/chat/chat_completion_message_tool_call.rbi index 85b1dc6e..77013f68 100644 --- a/rbi/lib/openai/models/chat/chat_completion_message_tool_call.rbi +++ b/rbi/lib/openai/models/chat/chat_completion_message_tool_call.rbi @@ -32,8 +32,14 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(id:, function:, type: :function); end - + def self.new( + # The ID of the tool call. + id:, + # The function that the model called. + function:, + # The type of the tool. Currently, only `function` is supported. + type: :function + ); end sig do override .returns( @@ -56,8 +62,15 @@ module OpenAI # The function that the model called. sig { params(arguments: String, name: String).returns(T.attached_class) } - def self.new(arguments:, name:); end - + def self.new( + # The arguments to call the function with, as generated by the model in JSON + # format. Note that the model does not always generate valid JSON, and may + # hallucinate parameters not defined by your function schema. Validate the + # arguments in your code before calling your function. + arguments:, + # The name of the function to call. + name: + ); end sig { override.returns({arguments: String, name: String}) } def to_hash; end end diff --git a/rbi/lib/openai/models/chat/chat_completion_named_tool_choice.rbi b/rbi/lib/openai/models/chat/chat_completion_named_tool_choice.rbi index 041eea0a..f7ef280e 100644 --- a/rbi/lib/openai/models/chat/chat_completion_named_tool_choice.rbi +++ b/rbi/lib/openai/models/chat/chat_completion_named_tool_choice.rbi @@ -28,8 +28,11 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(function:, type: :function); end - + def self.new( + function:, + # The type of the tool. Currently, only `function` is supported. + type: :function + ); end sig { override.returns({function: OpenAI::Models::Chat::ChatCompletionNamedToolChoice::Function, type: Symbol}) } def to_hash; end @@ -39,8 +42,10 @@ module OpenAI attr_accessor :name sig { params(name: String).returns(T.attached_class) } - def self.new(name:); end - + def self.new( + # The name of the function to call. + name: + ); end sig { override.returns({name: String}) } def to_hash; end end diff --git a/rbi/lib/openai/models/chat/chat_completion_prediction_content.rbi b/rbi/lib/openai/models/chat/chat_completion_prediction_content.rbi index a993e33a..93fab93c 100644 --- a/rbi/lib/openai/models/chat/chat_completion_prediction_content.rbi +++ b/rbi/lib/openai/models/chat/chat_completion_prediction_content.rbi @@ -27,8 +27,15 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(content:, type: :content); end - + def self.new( + # The content that should be matched when generating a model response. If + # generated tokens would match this content, the entire model response can be + # returned much more quickly. + content:, + # The type of the predicted content you want to provide. This type is currently + # always `content`. + type: :content + ); end sig do override .returns( diff --git a/rbi/lib/openai/models/chat/chat_completion_store_message.rbi b/rbi/lib/openai/models/chat/chat_completion_store_message.rbi index 67a32515..5af6dfc9 100644 --- a/rbi/lib/openai/models/chat/chat_completion_store_message.rbi +++ b/rbi/lib/openai/models/chat/chat_completion_store_message.rbi @@ -10,8 +10,10 @@ module OpenAI # A chat completion message generated by the model. sig { params(id: String).returns(T.attached_class) } - def self.new(id:); end - + def self.new( + # The identifier of the chat message. + id: + ); end sig { override.returns({id: String}) } def to_hash; end end diff --git a/rbi/lib/openai/models/chat/chat_completion_stream_options.rbi b/rbi/lib/openai/models/chat/chat_completion_stream_options.rbi index 771ab84e..08fdb738 100644 --- a/rbi/lib/openai/models/chat/chat_completion_stream_options.rbi +++ b/rbi/lib/openai/models/chat/chat_completion_stream_options.rbi @@ -19,8 +19,16 @@ module OpenAI # Options for streaming response. Only set this when you set `stream: true`. sig { params(include_usage: T::Boolean).returns(T.attached_class) } - def self.new(include_usage: nil); end - + def self.new( + # If set, an additional chunk will be streamed before the `data: [DONE]` message. + # The `usage` field on this chunk shows the token usage statistics for the entire + # request, and the `choices` field will always be an empty array. + # + # All other chunks will also include a `usage` field, but with a null value. + # **NOTE:** If the stream is interrupted, you may not receive the final usage + # chunk which contains the total token usage for the request. + include_usage: nil + ); end sig { override.returns({include_usage: T::Boolean}) } def to_hash; end end diff --git a/rbi/lib/openai/models/chat/chat_completion_system_message_param.rbi b/rbi/lib/openai/models/chat/chat_completion_system_message_param.rbi index b21a46af..aeac775d 100644 --- a/rbi/lib/openai/models/chat/chat_completion_system_message_param.rbi +++ b/rbi/lib/openai/models/chat/chat_completion_system_message_param.rbi @@ -34,8 +34,15 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(content:, name: nil, role: :system); end - + def self.new( + # The contents of the system message. + content:, + # An optional name for the participant. Provides the model information to + # differentiate between participants of the same role. + name: nil, + # The role of the messages author, in this case `system`. + role: :system + ); end sig do override .returns( diff --git a/rbi/lib/openai/models/chat/chat_completion_token_logprob.rbi b/rbi/lib/openai/models/chat/chat_completion_token_logprob.rbi index 0f4594a5..00a79a48 100644 --- a/rbi/lib/openai/models/chat/chat_completion_token_logprob.rbi +++ b/rbi/lib/openai/models/chat/chat_completion_token_logprob.rbi @@ -36,8 +36,23 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(token:, bytes:, logprob:, top_logprobs:); end - + def self.new( + # The token. + token:, + # A list of integers representing the UTF-8 bytes representation of the token. + # Useful in instances where characters are represented by multiple tokens and + # their byte representations must be combined to generate the correct text + # representation. Can be `null` if there is no bytes representation for the token. + bytes:, + # The log probability of this token, if it is within the top 20 most likely + # tokens. Otherwise, the value `-9999.0` is used to signify that the token is very + # unlikely. + logprob:, + # List of the most likely tokens and their log probability, at this token + # position. In rare cases, there may be fewer than the number of requested + # `top_logprobs` returned. + top_logprobs: + ); end sig do override .returns( @@ -76,8 +91,19 @@ module OpenAI logprob: Float ).returns(T.attached_class) end - def self.new(token:, bytes:, logprob:); end - + def self.new( + # The token. + token:, + # A list of integers representing the UTF-8 bytes representation of the token. + # Useful in instances where characters are represented by multiple tokens and + # their byte representations must be combined to generate the correct text + # representation. Can be `null` if there is no bytes representation for the token. + bytes:, + # The log probability of this token, if it is within the top 20 most likely + # tokens. Otherwise, the value `-9999.0` is used to signify that the token is very + # unlikely. + logprob: + ); end sig { override.returns({token: String, bytes: T.nilable(T::Array[Integer]), logprob: Float}) } def to_hash; end end diff --git a/rbi/lib/openai/models/chat/chat_completion_tool.rbi b/rbi/lib/openai/models/chat/chat_completion_tool.rbi index e6559aed..0b898367 100644 --- a/rbi/lib/openai/models/chat/chat_completion_tool.rbi +++ b/rbi/lib/openai/models/chat/chat_completion_tool.rbi @@ -18,8 +18,11 @@ module OpenAI params(function: T.any(OpenAI::Models::FunctionDefinition, OpenAI::Internal::AnyHash), type: Symbol) .returns(T.attached_class) end - def self.new(function:, type: :function); end - + def self.new( + function:, + # The type of the tool. Currently, only `function` is supported. + type: :function + ); end sig { override.returns({function: OpenAI::Models::FunctionDefinition, type: Symbol}) } def to_hash; end end diff --git a/rbi/lib/openai/models/chat/chat_completion_tool_message_param.rbi b/rbi/lib/openai/models/chat/chat_completion_tool_message_param.rbi index 3e792e43..b0ed167b 100644 --- a/rbi/lib/openai/models/chat/chat_completion_tool_message_param.rbi +++ b/rbi/lib/openai/models/chat/chat_completion_tool_message_param.rbi @@ -27,8 +27,14 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(content:, tool_call_id:, role: :tool); end - + def self.new( + # The contents of the tool message. + content:, + # Tool call that this message is responding to. + tool_call_id:, + # The role of the messages author, in this case `tool`. + role: :tool + ); end sig do override .returns( diff --git a/rbi/lib/openai/models/chat/chat_completion_user_message_param.rbi b/rbi/lib/openai/models/chat/chat_completion_user_message_param.rbi index 24c806a5..197c73d0 100644 --- a/rbi/lib/openai/models/chat/chat_completion_user_message_param.rbi +++ b/rbi/lib/openai/models/chat/chat_completion_user_message_param.rbi @@ -55,8 +55,15 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(content:, name: nil, role: :user); end - + def self.new( + # The contents of the user message. + content:, + # An optional name for the participant. Provides the model information to + # differentiate between participants of the same role. + name: nil, + # The role of the messages author, in this case `user`. + role: :user + ); end sig do override .returns( diff --git a/rbi/lib/openai/models/chat/completion_create_params.rbi b/rbi/lib/openai/models/chat/completion_create_params.rbi index 6e3970fc..2f954588 100644 --- a/rbi/lib/openai/models/chat/completion_create_params.rbi +++ b/rbi/lib/openai/models/chat/completion_create_params.rbi @@ -440,35 +440,193 @@ module OpenAI .returns(T.attached_class) end def self.new( + # A list of messages comprising the conversation so far. Depending on the + # [model](https://platform.openai.com/docs/models) you use, different message + # types (modalities) are supported, like + # [text](https://platform.openai.com/docs/guides/text-generation), + # [images](https://platform.openai.com/docs/guides/vision), and + # [audio](https://platform.openai.com/docs/guides/audio). messages:, + # Model ID used to generate the response, like `gpt-4o` or `o3`. OpenAI offers a + # wide range of models with different capabilities, performance characteristics, + # and price points. Refer to the + # [model guide](https://platform.openai.com/docs/models) to browse and compare + # available models. model:, + # Parameters for audio output. Required when audio output is requested with + # `modalities: ["audio"]`. + # [Learn more](https://platform.openai.com/docs/guides/audio). audio: nil, + # Number between -2.0 and 2.0. Positive values penalize new tokens based on their + # existing frequency in the text so far, decreasing the model's likelihood to + # repeat the same line verbatim. frequency_penalty: nil, + # Deprecated in favor of `tool_choice`. + # + # Controls which (if any) function is called by the model. + # + # `none` means the model will not call a function and instead generates a message. + # + # `auto` means the model can pick between generating a message or calling a + # function. + # + # Specifying a particular function via `{"name": "my_function"}` forces the model + # to call that function. + # + # `none` is the default when no functions are present. `auto` is the default if + # functions are present. function_call: nil, + # Deprecated in favor of `tools`. + # + # A list of functions the model may generate JSON inputs for. functions: nil, + # Modify the likelihood of specified tokens appearing in the completion. + # + # Accepts a JSON object that maps tokens (specified by their token ID in the + # tokenizer) to an associated bias value from -100 to 100. Mathematically, the + # bias is added to the logits generated by the model prior to sampling. The exact + # effect will vary per model, but values between -1 and 1 should decrease or + # increase likelihood of selection; values like -100 or 100 should result in a ban + # or exclusive selection of the relevant token. logit_bias: nil, + # Whether to return log probabilities of the output tokens or not. If true, + # returns the log probabilities of each output token returned in the `content` of + # `message`. logprobs: nil, + # An upper bound for the number of tokens that can be generated for a completion, + # including visible output tokens and + # [reasoning tokens](https://platform.openai.com/docs/guides/reasoning). max_completion_tokens: nil, + # The maximum number of [tokens](/tokenizer) that can be generated in the chat + # completion. This value can be used to control + # [costs](https://openai.com/api/pricing/) for text generated via API. + # + # This value is now deprecated in favor of `max_completion_tokens`, and is not + # compatible with + # [o-series models](https://platform.openai.com/docs/guides/reasoning). max_tokens: nil, + # 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: nil, + # Output types that you would like the model to generate. Most models are capable + # of generating text, which is the default: + # + # `["text"]` + # + # The `gpt-4o-audio-preview` model can also be used to + # [generate audio](https://platform.openai.com/docs/guides/audio). To request that + # this model generate both text and audio responses, you can use: + # + # `["text", "audio"]` modalities: nil, + # How many chat completion choices to generate for each input message. Note that + # you will be charged based on the number of generated tokens across all of the + # choices. Keep `n` as `1` to minimize costs. n: nil, + # Whether to enable + # [parallel function calling](https://platform.openai.com/docs/guides/function-calling#configuring-parallel-function-calling) + # during tool use. parallel_tool_calls: nil, + # Static predicted output content, such as the content of a text file that is + # being regenerated. prediction: nil, + # Number between -2.0 and 2.0. Positive values penalize new tokens based on + # whether they appear in the text so far, increasing the model's likelihood to + # talk about new topics. presence_penalty: nil, + # **o-series models only** + # + # Constrains effort on reasoning for + # [reasoning models](https://platform.openai.com/docs/guides/reasoning). Currently + # supported values are `low`, `medium`, and `high`. Reducing reasoning effort can + # result in faster responses and fewer tokens used on reasoning in a response. reasoning_effort: nil, + # An object specifying the format that the model must output. + # + # 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](https://platform.openai.com/docs/guides/structured-outputs). + # + # Setting to `{ "type": "json_object" }` enables the older JSON mode, which + # ensures the message the model generates is valid JSON. Using `json_schema` is + # preferred for models that support it. response_format: nil, + # This feature is in Beta. If specified, our system will make a best effort to + # sample deterministically, such that repeated requests with the same `seed` and + # parameters should return the same result. Determinism is not guaranteed, and you + # should refer to the `system_fingerprint` response parameter to monitor changes + # in the backend. seed: nil, + # Specifies the latency tier to use for processing the request. This parameter is + # relevant for customers subscribed to the scale tier service: + # + # - If set to 'auto', and the Project is Scale tier enabled, the system will + # utilize scale tier credits until they are exhausted. + # - If set to 'auto', and the Project is not Scale tier enabled, the request will + # be processed using the default service tier with a lower uptime SLA and no + # latency guarentee. + # - If set to 'default', the request will be processed using the default service + # tier with a lower uptime SLA and no latency guarentee. + # - If set to 'flex', the request will be processed with the Flex Processing + # service tier. + # [Learn more](https://platform.openai.com/docs/guides/flex-processing). + # - When not set, the default behavior is 'auto'. + # + # When this parameter is set, the response body will include the `service_tier` + # utilized. service_tier: nil, + # Not supported with latest reasoning models `o3` and `o4-mini`. + # + # Up to 4 sequences where the API will stop generating further tokens. The + # returned text will not contain the stop sequence. stop: nil, + # Whether or not to store the output of this chat completion request for use in + # our [model distillation](https://platform.openai.com/docs/guides/distillation) + # or [evals](https://platform.openai.com/docs/guides/evals) products. store: nil, + # Options for streaming response. Only set this when you set `stream: true`. stream_options: nil, + # 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. We generally recommend altering this or `top_p` but + # not both. temperature: nil, + # Controls which (if any) tool is called by the model. `none` means the model will + # not call any tool and instead generates a message. `auto` means the model can + # pick between generating a message or calling one or more tools. `required` means + # the model must call one or more tools. Specifying a particular tool via + # `{"type": "function", "function": {"name": "my_function"}}` forces the model to + # call that tool. + # + # `none` is the default when no tools are present. `auto` is the default if tools + # are present. tool_choice: nil, + # A list of tools the model may call. Currently, only functions are supported as a + # tool. Use this to provide a list of functions the model may generate JSON inputs + # for. A max of 128 functions are supported. tools: nil, + # An integer between 0 and 20 specifying the number of most likely tokens to + # return at each token position, each with an associated log probability. + # `logprobs` must be set to `true` if this parameter is used. top_logprobs: nil, + # 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. top_p: nil, + # A unique identifier representing your end-user, which can help OpenAI to monitor + # and detect abuse. + # [Learn more](https://platform.openai.com/docs/guides/safety-best-practices#end-user-ids). user: nil, + # This tool searches the web for relevant results to use in a response. Learn more + # about the + # [web search tool](https://platform.openai.com/docs/guides/tools-web-search?api-mode=chat). web_search_options: nil, request_options: {} ); end @@ -624,8 +782,22 @@ module OpenAI params(name: String, description: String, parameters: T::Hash[Symbol, T.anything]) .returns(T.attached_class) end - def self.new(name:, description: nil, parameters: nil); end - + def self.new( + # The name of the function to be called. Must be a-z, A-Z, 0-9, or contain + # underscores and dashes, with a maximum length of 64. + name:, + # A description of what the function does, used by the model to choose when and + # how to call the function. + description: nil, + # The parameters the functions accepts, described as a JSON Schema object. See the + # [guide](https://platform.openai.com/docs/guides/function-calling) for examples, + # and the + # [JSON Schema reference](https://json-schema.org/understanding-json-schema/) for + # documentation about the format. + # + # Omitting `parameters` defines a function with an empty parameter list. + parameters: nil + ); end sig do override.returns({name: String, description: String, parameters: T::Hash[Symbol, T.anything]}) end @@ -761,8 +933,13 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(search_context_size: nil, user_location: nil); end - + def self.new( + # High level guidance for the amount of context window space to use for the + # search. One of `low`, `medium`, or `high`. `medium` is the default. + search_context_size: nil, + # Approximate location parameters for the search. + user_location: nil + ); end sig do override .returns( @@ -839,8 +1016,12 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(approximate:, type: :approximate); end - + def self.new( + # Approximate location parameters for the search. + approximate:, + # The type of location approximation. Always `approximate`. + type: :approximate + ); end sig do override .returns( @@ -892,8 +1073,18 @@ module OpenAI timezone: String ).returns(T.attached_class) end - def self.new(city: nil, country: nil, region: nil, timezone: nil); end - + def self.new( + # Free text input for the city of the user, e.g. `San Francisco`. + city: nil, + # The two-letter [ISO country code](https://en.wikipedia.org/wiki/ISO_3166-1) of + # the user, e.g. `US`. + country: nil, + # Free text input for the region of the user, e.g. `California`. + region: nil, + # The [IANA timezone](https://timeapi.io/documentation/iana-timezones) of the + # user, e.g. `America/Los_Angeles`. + timezone: nil + ); end sig { override.returns({city: String, country: String, region: String, timezone: String}) } def to_hash; end end diff --git a/rbi/lib/openai/models/chat/completion_list_params.rbi b/rbi/lib/openai/models/chat/completion_list_params.rbi index f83e4b89..2574d2d6 100644 --- a/rbi/lib/openai/models/chat/completion_list_params.rbi +++ b/rbi/lib/openai/models/chat/completion_list_params.rbi @@ -53,8 +53,22 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(after: nil, limit: nil, metadata: nil, model: nil, order: nil, request_options: {}); end - + def self.new( + # Identifier for the last chat completion from the previous pagination request. + after: nil, + # Number of Chat Completions to retrieve. + limit: nil, + # A list of metadata keys to filter the Chat Completions by. Example: + # + # `metadata[key1]=value1&metadata[key2]=value2` + metadata: nil, + # The model used to generate the Chat Completions. + model: nil, + # Sort order for Chat Completions by timestamp. Use `asc` for ascending order or + # `desc` for descending order. Defaults to `asc`. + order: nil, + request_options: {} + ); end sig do override .returns( diff --git a/rbi/lib/openai/models/chat/completion_update_params.rbi b/rbi/lib/openai/models/chat/completion_update_params.rbi index b85b54da..48669c83 100644 --- a/rbi/lib/openai/models/chat/completion_update_params.rbi +++ b/rbi/lib/openai/models/chat/completion_update_params.rbi @@ -23,8 +23,16 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(metadata:, request_options: {}); end - + def self.new( + # 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:, + request_options: {} + ); end sig do override.returns( { diff --git a/rbi/lib/openai/models/chat/completions/message_list_params.rbi b/rbi/lib/openai/models/chat/completions/message_list_params.rbi index a661288c..aa957ac1 100644 --- a/rbi/lib/openai/models/chat/completions/message_list_params.rbi +++ b/rbi/lib/openai/models/chat/completions/message_list_params.rbi @@ -39,8 +39,16 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(after: nil, limit: nil, order: nil, request_options: {}); end - + def self.new( + # Identifier for the last message from the previous pagination request. + after: nil, + # Number of messages to retrieve. + limit: nil, + # Sort order for messages by timestamp. Use `asc` for ascending order or `desc` + # for descending order. Defaults to `asc`. + order: nil, + request_options: {} + ); end sig do override .returns( diff --git a/rbi/lib/openai/models/comparison_filter.rbi b/rbi/lib/openai/models/comparison_filter.rbi index 19f90169..43b5c434 100644 --- a/rbi/lib/openai/models/comparison_filter.rbi +++ b/rbi/lib/openai/models/comparison_filter.rbi @@ -33,8 +33,22 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(key:, type:, value:); end - + def self.new( + # The key to compare against the value. + key:, + # Specifies the comparison operator: `eq`, `ne`, `gt`, `gte`, `lt`, `lte`. + # + # - `eq`: equals + # - `ne`: not equal + # - `gt`: greater than + # - `gte`: greater than or equal + # - `lt`: less than + # - `lte`: less than or equal + type:, + # The value to compare against the attribute key; supports string, number, or + # boolean types. + value: + ); end sig do override .returns( diff --git a/rbi/lib/openai/models/completion.rbi b/rbi/lib/openai/models/completion.rbi index aa47ab99..4cc82449 100644 --- a/rbi/lib/openai/models/completion.rbi +++ b/rbi/lib/openai/models/completion.rbi @@ -55,16 +55,24 @@ module OpenAI .returns(T.attached_class) end def self.new( + # A unique identifier for the completion. id:, + # The list of completion choices the model generated for the input prompt. choices:, + # The Unix timestamp (in seconds) of when the completion was created. created:, + # The model used for completion. model:, + # This fingerprint represents the backend configuration that the model runs with. + # + # Can be used in conjunction with the `seed` request parameter to understand when + # backend changes have been made that might impact determinism. system_fingerprint: nil, + # Usage statistics for the completion request. usage: nil, + # The object type, which is always "text_completion" object: :text_completion - ) - end - + ); end sig do override .returns( diff --git a/rbi/lib/openai/models/completion_choice.rbi b/rbi/lib/openai/models/completion_choice.rbi index 4731b8da..5eaba069 100644 --- a/rbi/lib/openai/models/completion_choice.rbi +++ b/rbi/lib/openai/models/completion_choice.rbi @@ -34,8 +34,16 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(finish_reason:, index:, logprobs:, text:); end - + def self.new( + # The reason the model stopped generating tokens. This will be `stop` if the model + # hit a natural stop point or a provided stop sequence, `length` if the maximum + # number of tokens specified in the request was reached, or `content_filter` if + # content was omitted due to a flag from our content filters. + finish_reason:, + index:, + logprobs:, + text: + ); end sig do override .returns( diff --git a/rbi/lib/openai/models/completion_create_params.rbi b/rbi/lib/openai/models/completion_create_params.rbi index a0956081..058662fd 100644 --- a/rbi/lib/openai/models/completion_create_params.rbi +++ b/rbi/lib/openai/models/completion_create_params.rbi @@ -182,22 +182,110 @@ module OpenAI .returns(T.attached_class) end def self.new( + # ID of the model to use. You can use the + # [List models](https://platform.openai.com/docs/api-reference/models/list) API to + # see all of your available models, or see our + # [Model overview](https://platform.openai.com/docs/models) for descriptions of + # them. model:, + # The prompt(s) to generate completions for, encoded as a string, array of + # strings, array of tokens, or array of token arrays. + # + # Note that <|endoftext|> is the document separator that the model sees during + # training, so if a prompt is not specified the model will generate as if from the + # beginning of a new document. prompt:, + # Generates `best_of` completions server-side and returns the "best" (the one with + # the highest log probability per token). Results cannot be streamed. + # + # When used with `n`, `best_of` controls the number of candidate completions and + # `n` specifies how many to return – `best_of` must be greater than `n`. + # + # **Note:** Because this parameter generates many completions, it can quickly + # consume your token quota. Use carefully and ensure that you have reasonable + # settings for `max_tokens` and `stop`. best_of: nil, + # Echo back the prompt in addition to the completion echo: nil, + # Number between -2.0 and 2.0. Positive values penalize new tokens based on their + # existing frequency in the text so far, decreasing the model's likelihood to + # repeat the same line verbatim. + # + # [See more information about frequency and presence penalties.](https://platform.openai.com/docs/guides/text-generation) frequency_penalty: nil, + # Modify the likelihood of specified tokens appearing in the completion. + # + # Accepts a JSON object that maps tokens (specified by their token ID in the GPT + # tokenizer) to an associated bias value from -100 to 100. You can use this + # [tokenizer tool](/tokenizer?view=bpe) to convert text to token IDs. + # Mathematically, the bias is added to the logits generated by the model prior to + # sampling. The exact effect will vary per model, but values between -1 and 1 + # should decrease or increase likelihood of selection; values like -100 or 100 + # should result in a ban or exclusive selection of the relevant token. + # + # As an example, you can pass `{"50256": -100}` to prevent the <|endoftext|> token + # from being generated. logit_bias: nil, + # Include the log probabilities on the `logprobs` most likely output tokens, as + # well the chosen tokens. For example, if `logprobs` is 5, the API will return a + # list of the 5 most likely tokens. The API will always return the `logprob` of + # the sampled token, so there may be up to `logprobs+1` elements in the response. + # + # The maximum value for `logprobs` is 5. logprobs: nil, + # The maximum number of [tokens](/tokenizer) that can be generated in the + # completion. + # + # The token count of your prompt plus `max_tokens` cannot exceed the model's + # context length. + # [Example Python code](https://cookbook.openai.com/examples/how_to_count_tokens_with_tiktoken) + # for counting tokens. max_tokens: nil, + # How many completions to generate for each prompt. + # + # **Note:** Because this parameter generates many completions, it can quickly + # consume your token quota. Use carefully and ensure that you have reasonable + # settings for `max_tokens` and `stop`. n: nil, + # Number between -2.0 and 2.0. Positive values penalize new tokens based on + # whether they appear in the text so far, increasing the model's likelihood to + # talk about new topics. + # + # [See more information about frequency and presence penalties.](https://platform.openai.com/docs/guides/text-generation) presence_penalty: nil, + # If specified, our system will make a best effort to sample deterministically, + # such that repeated requests with the same `seed` and parameters should return + # the same result. + # + # Determinism is not guaranteed, and you should refer to the `system_fingerprint` + # response parameter to monitor changes in the backend. seed: nil, + # Not supported with latest reasoning models `o3` and `o4-mini`. + # + # Up to 4 sequences where the API will stop generating further tokens. The + # returned text will not contain the stop sequence. stop: nil, + # Options for streaming response. Only set this when you set `stream: true`. stream_options: nil, + # The suffix that comes after a completion of inserted text. + # + # This parameter is only supported for `gpt-3.5-turbo-instruct`. suffix: nil, + # 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. + # + # We generally recommend altering this or `top_p` but not both. temperature: nil, + # 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. top_p: nil, + # A unique identifier representing your end-user, which can help OpenAI to monitor + # and detect abuse. + # [Learn more](https://platform.openai.com/docs/guides/safety-best-practices#end-user-ids). user: nil, request_options: {} ); end diff --git a/rbi/lib/openai/models/completion_usage.rbi b/rbi/lib/openai/models/completion_usage.rbi index 2872756d..48f31d88 100644 --- a/rbi/lib/openai/models/completion_usage.rbi +++ b/rbi/lib/openai/models/completion_usage.rbi @@ -51,10 +51,15 @@ module OpenAI .returns(T.attached_class) end def self.new( + # Number of tokens in the generated completion. completion_tokens:, + # Number of tokens in the prompt. prompt_tokens:, + # Total number of tokens used in the request (prompt + completion). total_tokens:, + # Breakdown of tokens used in a completion. completion_tokens_details: nil, + # Breakdown of tokens used in the prompt. prompt_tokens_details: nil ); end sig do @@ -115,13 +120,19 @@ module OpenAI .returns(T.attached_class) end def self.new( + # When using Predicted Outputs, the number of tokens in the prediction that + # appeared in the completion. accepted_prediction_tokens: nil, + # Audio input tokens generated by the model. audio_tokens: nil, + # Tokens generated by the model for reasoning. reasoning_tokens: nil, + # When using Predicted Outputs, the number of tokens in the prediction that did + # not appear in the completion. However, like reasoning tokens, these tokens are + # still counted in the total completion tokens for purposes of billing, output, + # and context window limits. rejected_prediction_tokens: nil - ) - end - + ); end sig do override .returns( @@ -153,8 +164,12 @@ module OpenAI # Breakdown of tokens used in the prompt. sig { params(audio_tokens: Integer, cached_tokens: Integer).returns(T.attached_class) } - def self.new(audio_tokens: nil, cached_tokens: nil); end - + def self.new( + # Audio input tokens present in the prompt. + audio_tokens: nil, + # Cached tokens present in the prompt. + cached_tokens: nil + ); end sig { override.returns({audio_tokens: Integer, cached_tokens: Integer}) } def to_hash; end end diff --git a/rbi/lib/openai/models/compound_filter.rbi b/rbi/lib/openai/models/compound_filter.rbi index 4bb4c09c..19966d7a 100644 --- a/rbi/lib/openai/models/compound_filter.rbi +++ b/rbi/lib/openai/models/compound_filter.rbi @@ -20,8 +20,13 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(filters:, type:); end - + def self.new( + # Array of filters to combine. Items can be `ComparisonFilter` or + # `CompoundFilter`. + filters:, + # Type of operation: `and` or `or`. + type: + ); end sig do override .returns( diff --git a/rbi/lib/openai/models/create_embedding_response.rbi b/rbi/lib/openai/models/create_embedding_response.rbi index 878d96ba..4ebe2aee 100644 --- a/rbi/lib/openai/models/create_embedding_response.rbi +++ b/rbi/lib/openai/models/create_embedding_response.rbi @@ -31,8 +31,16 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(data:, model:, usage:, object: :list); end - + def self.new( + # The list of embeddings generated by the model. + data:, + # The name of the model used to generate the embedding. + model:, + # The usage information for the request. + usage:, + # The object type, which is always "list". + object: :list + ); end sig do override .returns( @@ -57,8 +65,12 @@ module OpenAI # The usage information for the request. sig { params(prompt_tokens: Integer, total_tokens: Integer).returns(T.attached_class) } - def self.new(prompt_tokens:, total_tokens:); end - + def self.new( + # The number of tokens used by the prompt. + prompt_tokens:, + # The total number of tokens used by the request. + total_tokens: + ); end sig { override.returns({prompt_tokens: Integer, total_tokens: Integer}) } def to_hash; end end diff --git a/rbi/lib/openai/models/embedding.rbi b/rbi/lib/openai/models/embedding.rbi index ac1fc9ab..9c78d508 100644 --- a/rbi/lib/openai/models/embedding.rbi +++ b/rbi/lib/openai/models/embedding.rbi @@ -19,8 +19,16 @@ module OpenAI # Represents an embedding vector returned by embedding endpoint. sig { params(embedding: T::Array[Float], index: Integer, object: Symbol).returns(T.attached_class) } - def self.new(embedding:, index:, object: :embedding); end - + def self.new( + # The embedding vector, which is a list of floats. The length of vector depends on + # the model as listed in the + # [embedding guide](https://platform.openai.com/docs/guides/embeddings). + embedding:, + # The index of the embedding in the list of embeddings. + index:, + # The object type, which is always "embedding". + object: :embedding + ); end sig { override.returns({embedding: T::Array[Float], index: Integer, object: Symbol}) } def to_hash; end end diff --git a/rbi/lib/openai/models/embedding_create_params.rbi b/rbi/lib/openai/models/embedding_create_params.rbi index b19f81a0..22c4e6b8 100644 --- a/rbi/lib/openai/models/embedding_create_params.rbi +++ b/rbi/lib/openai/models/embedding_create_params.rbi @@ -61,8 +61,34 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(input:, model:, dimensions: nil, encoding_format: nil, user: nil, request_options: {}); end - + def self.new( + # Input text to embed, encoded as a string or array of tokens. To embed multiple + # inputs in a single request, pass an array of strings or array of token arrays. + # The input must not exceed the max input tokens for the model (8192 tokens for + # `text-embedding-ada-002`), cannot be an empty string, and any array must be 2048 + # dimensions or less. + # [Example Python code](https://cookbook.openai.com/examples/how_to_count_tokens_with_tiktoken) + # for counting tokens. Some models may also impose a limit on total number of + # tokens summed across inputs. + input:, + # ID of the model to use. You can use the + # [List models](https://platform.openai.com/docs/api-reference/models/list) API to + # see all of your available models, or see our + # [Model overview](https://platform.openai.com/docs/models) for descriptions of + # them. + model:, + # The number of dimensions the resulting output embeddings should have. Only + # supported in `text-embedding-3` and later models. + dimensions: nil, + # The format to return the embeddings in. Can be either `float` or + # [`base64`](https://pypi.org/project/pybase64/). + encoding_format: nil, + # A unique identifier representing your end-user, which can help OpenAI to monitor + # and detect abuse. + # [Learn more](https://platform.openai.com/docs/guides/safety-best-practices#end-user-ids). + user: nil, + request_options: {} + ); end sig do override .returns( diff --git a/rbi/lib/openai/models/eval_create_params.rbi b/rbi/lib/openai/models/eval_create_params.rbi index 32befe9a..af1d1784 100644 --- a/rbi/lib/openai/models/eval_create_params.rbi +++ b/rbi/lib/openai/models/eval_create_params.rbi @@ -72,8 +72,22 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(data_source_config:, testing_criteria:, metadata: nil, name: nil, request_options: {}); end - + def self.new( + # The configuration for the data source used for the evaluation runs. + data_source_config:, + # A list of graders for all eval runs in this group. + testing_criteria:, + # 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: nil, + # The name of the evaluation. + name: nil, + request_options: {} + ); end sig do override .returns( @@ -130,8 +144,15 @@ module OpenAI params(item_schema: T::Hash[Symbol, T.anything], include_sample_schema: T::Boolean, type: Symbol) .returns(T.attached_class) end - def self.new(item_schema:, include_sample_schema: nil, type: :custom); end - + def self.new( + # The json schema for each row in the data source. + item_schema:, + # Whether the eval should expect you to populate the sample namespace (ie, by + # generating responses off of your data source) + include_sample_schema: nil, + # The type of data source. Always `custom`. + type: :custom + ); end sig do override .returns({ @@ -159,8 +180,12 @@ module OpenAI # completions query. This is usually metadata like `usecase=chatbot` or # `prompt-version=v2`, etc. sig { params(metadata: T::Hash[Symbol, T.anything], type: Symbol).returns(T.attached_class) } - def self.new(metadata: nil, type: :logs); end - + def self.new( + # Metadata filters for the logs data source. + metadata: nil, + # The type of data source. Always `logs`. + type: :logs + ); end sig { override.returns({type: Symbol, metadata: T::Hash[Symbol, T.anything]}) } def to_hash; end end @@ -233,8 +258,21 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(input:, labels:, model:, name:, passing_labels:, type: :label_model); end - + def self.new( + # A list of chat messages forming the prompt or context. May include variable + # references to the "item" namespace, ie {{item.name}}. + input:, + # The labels to classify to each item in the evaluation. + labels:, + # The model to use for the evaluation. Must support structured outputs. + model:, + # The name of the grader. + name:, + # The labels that indicate a passing result. Must be a subset of labels. + passing_labels:, + # The object type, which is always `label_model`. + type: :label_model + ); end sig do override .returns( @@ -270,8 +308,12 @@ module OpenAI attr_accessor :role sig { params(content: String, role: String).returns(T.attached_class) } - def self.new(content:, role:); end - + def self.new( + # The content of the message. + content:, + # The role of the message (e.g. "system", "assistant", "user"). + role: + ); end sig { override.returns({content: String, role: String}) } def to_hash; end end @@ -328,8 +370,15 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(content:, role:, type: nil); end - + def self.new( + # Text inputs to the model - can contain template strings. + content:, + # The role of the message input. One of `user`, `assistant`, `system`, or + # `developer`. + role:, + # The type of the message input. Always `message`. + type: nil + ); end sig do override .returns( @@ -361,8 +410,12 @@ module OpenAI # A text output from the model. sig { params(text: String, type: Symbol).returns(T.attached_class) } - def self.new(text:, type: :output_text); end - + def self.new( + # The text output from the model. + text:, + # The type of the output text. Always `output_text`. + type: :output_text + ); end sig { override.returns({text: String, type: Symbol}) } def to_hash; end end @@ -481,8 +534,18 @@ module OpenAI params(name: String, source: String, image_tag: String, pass_threshold: Float, type: Symbol) .returns(T.attached_class) end - def self.new(name:, source:, image_tag: nil, pass_threshold: nil, type: :python); end - + def self.new( + # The name of the grader. + name:, + # The source code of the python script. + source:, + # The image tag to use for the python script. + image_tag: nil, + # The threshold for the score. + pass_threshold: nil, + # The object type, which is always `python`. + type: :python + ); end sig do override.returns( { @@ -549,16 +612,21 @@ module OpenAI .returns(T.attached_class) end def self.new( + # The input text. This may include template strings. input:, + # The model to use for the evaluation. model:, + # The name of the grader. name:, + # The threshold for the score. pass_threshold: nil, + # The range of the score. Defaults to `[0, 1]`. range: nil, + # The sampling parameters for the model. sampling_params: nil, + # The object type, which is always `score_model`. type: :score_model - ) - end - + ); end sig do override .returns( @@ -618,8 +686,15 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(content:, role:, type: nil); end - + def self.new( + # Text inputs to the model - can contain template strings. + content:, + # The role of the message input. One of `user`, `assistant`, `system`, or + # `developer`. + role:, + # The type of the message input. Always `message`. + type: nil + ); end sig do override .returns( @@ -651,8 +726,12 @@ module OpenAI # A text output from the model. sig { params(text: String, type: Symbol).returns(T.attached_class) } - def self.new(text:, type: :output_text); end - + def self.new( + # The text output from the model. + text:, + # The type of the output text. Always `output_text`. + type: :output_text + ); end sig { override.returns({text: String, type: Symbol}) } def to_hash; end end diff --git a/rbi/lib/openai/models/eval_create_response.rbi b/rbi/lib/openai/models/eval_create_response.rbi index c812a4d5..d0304e79 100644 --- a/rbi/lib/openai/models/eval_create_response.rbi +++ b/rbi/lib/openai/models/eval_create_response.rbi @@ -83,9 +83,27 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(id:, created_at:, data_source_config:, metadata:, name:, testing_criteria:, object: :eval) - end - + def self.new( + # Unique identifier for the evaluation. + id:, + # The Unix timestamp (in seconds) for when the eval was created. + created_at:, + # Configuration of data sources used in runs of the evaluation. + data_source_config:, + # 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:, + # The name of the evaluation. + name:, + # A list of testing criteria. + testing_criteria:, + # The object type. + object: :eval + ); end sig do override .returns( @@ -160,8 +178,18 @@ module OpenAI params(name: String, source: String, image_tag: String, pass_threshold: Float, type: Symbol) .returns(T.attached_class) end - def self.new(name:, source:, image_tag: nil, pass_threshold: nil, type: :python); end - + def self.new( + # The name of the grader. + name:, + # The source code of the python script. + source:, + # The image tag to use for the python script. + image_tag: nil, + # The threshold for the score. + pass_threshold: nil, + # The object type, which is always `python`. + type: :python + ); end sig do override.returns( { @@ -228,16 +256,21 @@ module OpenAI .returns(T.attached_class) end def self.new( + # The input text. This may include template strings. input:, + # The model to use for the evaluation. model:, + # The name of the grader. name:, + # The threshold for the score. pass_threshold: nil, + # The range of the score. Defaults to `[0, 1]`. range: nil, + # The sampling parameters for the model. sampling_params: nil, + # The object type, which is always `score_model`. type: :score_model - ) - end - + ); end sig do override .returns( @@ -301,8 +334,15 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(content:, role:, type: nil); end - + def self.new( + # Text inputs to the model - can contain template strings. + content:, + # The role of the message input. One of `user`, `assistant`, `system`, or + # `developer`. + role:, + # The type of the message input. Always `message`. + type: nil + ); end sig do override .returns( @@ -334,8 +374,12 @@ module OpenAI # A text output from the model. sig { params(text: String, type: Symbol).returns(T.attached_class) } - def self.new(text:, type: :output_text); end - + def self.new( + # The text output from the model. + text:, + # The type of the output text. Always `output_text`. + type: :output_text + ); end sig { override.returns({text: String, type: Symbol}) } def to_hash; end end diff --git a/rbi/lib/openai/models/eval_custom_data_source_config.rbi b/rbi/lib/openai/models/eval_custom_data_source_config.rbi index c8d1dcea..2c76acf3 100644 --- a/rbi/lib/openai/models/eval_custom_data_source_config.rbi +++ b/rbi/lib/openai/models/eval_custom_data_source_config.rbi @@ -19,8 +19,13 @@ module OpenAI # - Used to define your testing criteria and # - What data is required when creating a run sig { params(schema: T::Hash[Symbol, T.anything], type: Symbol).returns(T.attached_class) } - def self.new(schema:, type: :custom); end - + def self.new( + # The json schema for the run data source items. Learn how to build JSON schemas + # [here](https://json-schema.org/). + schema:, + # The type of data source. Always `custom`. + type: :custom + ); end sig { override.returns({schema: T::Hash[Symbol, T.anything], type: Symbol}) } def to_hash; end end diff --git a/rbi/lib/openai/models/eval_label_model_grader.rbi b/rbi/lib/openai/models/eval_label_model_grader.rbi index 8e02688e..1a12db15 100644 --- a/rbi/lib/openai/models/eval_label_model_grader.rbi +++ b/rbi/lib/openai/models/eval_label_model_grader.rbi @@ -39,8 +39,19 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(input:, labels:, model:, name:, passing_labels:, type: :label_model); end - + def self.new( + input:, + # The labels to assign to each item in the evaluation. + labels:, + # The model to use for the evaluation. Must support structured outputs. + model:, + # The name of the grader. + name:, + # The labels that indicate a passing result. Must be a subset of labels. + passing_labels:, + # The object type, which is always `label_model`. + type: :label_model + ); end sig do override .returns( @@ -99,8 +110,15 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(content:, role:, type: nil); end - + def self.new( + # Text inputs to the model - can contain template strings. + content:, + # The role of the message input. One of `user`, `assistant`, `system`, or + # `developer`. + role:, + # The type of the message input. Always `message`. + type: nil + ); end sig do override .returns( @@ -132,8 +150,12 @@ module OpenAI # A text output from the model. sig { params(text: String, type: Symbol).returns(T.attached_class) } - def self.new(text:, type: :output_text); end - + def self.new( + # The text output from the model. + text:, + # The type of the output text. Always `output_text`. + type: :output_text + ); end sig { override.returns({text: String, type: Symbol}) } def to_hash; end end diff --git a/rbi/lib/openai/models/eval_list_params.rbi b/rbi/lib/openai/models/eval_list_params.rbi index e0e69e2a..0ef48b7c 100644 --- a/rbi/lib/openai/models/eval_list_params.rbi +++ b/rbi/lib/openai/models/eval_list_params.rbi @@ -46,8 +46,19 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(after: nil, limit: nil, order: nil, order_by: nil, request_options: {}); end - + def self.new( + # Identifier for the last eval from the previous pagination request. + after: nil, + # Number of evals to retrieve. + limit: nil, + # Sort order for evals by timestamp. Use `asc` for ascending order or `desc` for + # descending order. + order: nil, + # Evals can be ordered by creation time or last updated time. Use `created_at` for + # creation time or `updated_at` for last updated time. + order_by: nil, + request_options: {} + ); end sig do override .returns( diff --git a/rbi/lib/openai/models/eval_list_response.rbi b/rbi/lib/openai/models/eval_list_response.rbi index 08a0827f..e1614678 100644 --- a/rbi/lib/openai/models/eval_list_response.rbi +++ b/rbi/lib/openai/models/eval_list_response.rbi @@ -83,9 +83,27 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(id:, created_at:, data_source_config:, metadata:, name:, testing_criteria:, object: :eval) - end - + def self.new( + # Unique identifier for the evaluation. + id:, + # The Unix timestamp (in seconds) for when the eval was created. + created_at:, + # Configuration of data sources used in runs of the evaluation. + data_source_config:, + # 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:, + # The name of the evaluation. + name:, + # A list of testing criteria. + testing_criteria:, + # The object type. + object: :eval + ); end sig do override .returns( @@ -160,8 +178,18 @@ module OpenAI params(name: String, source: String, image_tag: String, pass_threshold: Float, type: Symbol) .returns(T.attached_class) end - def self.new(name:, source:, image_tag: nil, pass_threshold: nil, type: :python); end - + def self.new( + # The name of the grader. + name:, + # The source code of the python script. + source:, + # The image tag to use for the python script. + image_tag: nil, + # The threshold for the score. + pass_threshold: nil, + # The object type, which is always `python`. + type: :python + ); end sig do override.returns( { @@ -228,16 +256,21 @@ module OpenAI .returns(T.attached_class) end def self.new( + # The input text. This may include template strings. input:, + # The model to use for the evaluation. model:, + # The name of the grader. name:, + # The threshold for the score. pass_threshold: nil, + # The range of the score. Defaults to `[0, 1]`. range: nil, + # The sampling parameters for the model. sampling_params: nil, + # The object type, which is always `score_model`. type: :score_model - ) - end - + ); end sig do override .returns( @@ -301,8 +334,15 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(content:, role:, type: nil); end - + def self.new( + # Text inputs to the model - can contain template strings. + content:, + # The role of the message input. One of `user`, `assistant`, `system`, or + # `developer`. + role:, + # The type of the message input. Always `message`. + type: nil + ); end sig do override .returns( @@ -334,8 +374,12 @@ module OpenAI # A text output from the model. sig { params(text: String, type: Symbol).returns(T.attached_class) } - def self.new(text:, type: :output_text); end - + def self.new( + # The text output from the model. + text:, + # The type of the output text. Always `output_text`. + type: :output_text + ); end sig { override.returns({text: String, type: Symbol}) } def to_hash; end end diff --git a/rbi/lib/openai/models/eval_retrieve_response.rbi b/rbi/lib/openai/models/eval_retrieve_response.rbi index a84f25d8..8e47cfe9 100644 --- a/rbi/lib/openai/models/eval_retrieve_response.rbi +++ b/rbi/lib/openai/models/eval_retrieve_response.rbi @@ -83,9 +83,27 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(id:, created_at:, data_source_config:, metadata:, name:, testing_criteria:, object: :eval) - end - + def self.new( + # Unique identifier for the evaluation. + id:, + # The Unix timestamp (in seconds) for when the eval was created. + created_at:, + # Configuration of data sources used in runs of the evaluation. + data_source_config:, + # 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:, + # The name of the evaluation. + name:, + # A list of testing criteria. + testing_criteria:, + # The object type. + object: :eval + ); end sig do override .returns( @@ -160,8 +178,18 @@ module OpenAI params(name: String, source: String, image_tag: String, pass_threshold: Float, type: Symbol) .returns(T.attached_class) end - def self.new(name:, source:, image_tag: nil, pass_threshold: nil, type: :python); end - + def self.new( + # The name of the grader. + name:, + # The source code of the python script. + source:, + # The image tag to use for the python script. + image_tag: nil, + # The threshold for the score. + pass_threshold: nil, + # The object type, which is always `python`. + type: :python + ); end sig do override.returns( { @@ -233,16 +261,21 @@ module OpenAI .returns(T.attached_class) end def self.new( + # The input text. This may include template strings. input:, + # The model to use for the evaluation. model:, + # The name of the grader. name:, + # The threshold for the score. pass_threshold: nil, + # The range of the score. Defaults to `[0, 1]`. range: nil, + # The sampling parameters for the model. sampling_params: nil, + # The object type, which is always `score_model`. type: :score_model - ) - end - + ); end sig do override .returns( @@ -309,8 +342,15 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(content:, role:, type: nil); end - + def self.new( + # Text inputs to the model - can contain template strings. + content:, + # The role of the message input. One of `user`, `assistant`, `system`, or + # `developer`. + role:, + # The type of the message input. Always `message`. + type: nil + ); end sig do override .returns( @@ -342,8 +382,12 @@ module OpenAI # A text output from the model. sig { params(text: String, type: Symbol).returns(T.attached_class) } - def self.new(text:, type: :output_text); end - + def self.new( + # The text output from the model. + text:, + # The type of the output text. Always `output_text`. + type: :output_text + ); end sig { override.returns({text: String, type: Symbol}) } def to_hash; end end diff --git a/rbi/lib/openai/models/eval_stored_completions_data_source_config.rbi b/rbi/lib/openai/models/eval_stored_completions_data_source_config.rbi index cfc531e0..2c6fd596 100644 --- a/rbi/lib/openai/models/eval_stored_completions_data_source_config.rbi +++ b/rbi/lib/openai/models/eval_stored_completions_data_source_config.rbi @@ -34,8 +34,20 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(schema:, metadata: nil, type: :stored_completions); end - + def self.new( + # The json schema for the run data source items. Learn how to build JSON schemas + # [here](https://json-schema.org/). + schema:, + # 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: nil, + # The type of data source. Always `stored_completions`. + type: :stored_completions + ); end sig do override .returns({ diff --git a/rbi/lib/openai/models/eval_string_check_grader.rbi b/rbi/lib/openai/models/eval_string_check_grader.rbi index a7c9af35..cf0301de 100644 --- a/rbi/lib/openai/models/eval_string_check_grader.rbi +++ b/rbi/lib/openai/models/eval_string_check_grader.rbi @@ -35,8 +35,18 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(input:, name:, operation:, reference:, type: :string_check); end - + def self.new( + # The input text. This may include template strings. + input:, + # The name of the grader. + name:, + # The string check operation to perform. One of `eq`, `ne`, `like`, or `ilike`. + operation:, + # The reference text. This may include template strings. + reference:, + # The object type, which is always `string_check`. + type: :string_check + ); end sig do override .returns( diff --git a/rbi/lib/openai/models/eval_text_similarity_grader.rbi b/rbi/lib/openai/models/eval_text_similarity_grader.rbi index f3675e7a..6b1c6e54 100644 --- a/rbi/lib/openai/models/eval_text_similarity_grader.rbi +++ b/rbi/lib/openai/models/eval_text_similarity_grader.rbi @@ -44,15 +44,20 @@ module OpenAI .returns(T.attached_class) end def self.new( + # The evaluation metric to use. One of `fuzzy_match`, `bleu`, `gleu`, `meteor`, + # `rouge_1`, `rouge_2`, `rouge_3`, `rouge_4`, `rouge_5`, or `rouge_l`. evaluation_metric:, + # The text being graded. input:, + # A float score where a value greater than or equal indicates a passing grade. pass_threshold:, + # The text being graded against. reference:, + # The name of the grader. name: nil, + # The type of grader. type: :text_similarity - ) - end - + ); end sig do override .returns( diff --git a/rbi/lib/openai/models/eval_update_params.rbi b/rbi/lib/openai/models/eval_update_params.rbi index 86ef04e1..857900a1 100644 --- a/rbi/lib/openai/models/eval_update_params.rbi +++ b/rbi/lib/openai/models/eval_update_params.rbi @@ -30,8 +30,18 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(metadata: nil, name: nil, request_options: {}); end - + def self.new( + # 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: nil, + # Rename the evaluation. + name: nil, + request_options: {} + ); end sig do override .returns( diff --git a/rbi/lib/openai/models/eval_update_response.rbi b/rbi/lib/openai/models/eval_update_response.rbi index 53a41e65..83a8e983 100644 --- a/rbi/lib/openai/models/eval_update_response.rbi +++ b/rbi/lib/openai/models/eval_update_response.rbi @@ -83,9 +83,27 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(id:, created_at:, data_source_config:, metadata:, name:, testing_criteria:, object: :eval) - end - + def self.new( + # Unique identifier for the evaluation. + id:, + # The Unix timestamp (in seconds) for when the eval was created. + created_at:, + # Configuration of data sources used in runs of the evaluation. + data_source_config:, + # 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:, + # The name of the evaluation. + name:, + # A list of testing criteria. + testing_criteria:, + # The object type. + object: :eval + ); end sig do override .returns( @@ -160,8 +178,18 @@ module OpenAI params(name: String, source: String, image_tag: String, pass_threshold: Float, type: Symbol) .returns(T.attached_class) end - def self.new(name:, source:, image_tag: nil, pass_threshold: nil, type: :python); end - + def self.new( + # The name of the grader. + name:, + # The source code of the python script. + source:, + # The image tag to use for the python script. + image_tag: nil, + # The threshold for the score. + pass_threshold: nil, + # The object type, which is always `python`. + type: :python + ); end sig do override.returns( { @@ -228,16 +256,21 @@ module OpenAI .returns(T.attached_class) end def self.new( + # The input text. This may include template strings. input:, + # The model to use for the evaluation. model:, + # The name of the grader. name:, + # The threshold for the score. pass_threshold: nil, + # The range of the score. Defaults to `[0, 1]`. range: nil, + # The sampling parameters for the model. sampling_params: nil, + # The object type, which is always `score_model`. type: :score_model - ) - end - + ); end sig do override .returns( @@ -301,8 +334,15 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(content:, role:, type: nil); end - + def self.new( + # Text inputs to the model - can contain template strings. + content:, + # The role of the message input. One of `user`, `assistant`, `system`, or + # `developer`. + role:, + # The type of the message input. Always `message`. + type: nil + ); end sig do override .returns( @@ -334,8 +374,12 @@ module OpenAI # A text output from the model. sig { params(text: String, type: Symbol).returns(T.attached_class) } - def self.new(text:, type: :output_text); end - + def self.new( + # The text output from the model. + text:, + # The type of the output text. Always `output_text`. + type: :output_text + ); end sig { override.returns({text: String, type: Symbol}) } def to_hash; end end diff --git a/rbi/lib/openai/models/evals/create_eval_completions_run_data_source.rbi b/rbi/lib/openai/models/evals/create_eval_completions_run_data_source.rbi index 6e2ac631..6ac91b72 100644 --- a/rbi/lib/openai/models/evals/create_eval_completions_run_data_source.rbi +++ b/rbi/lib/openai/models/evals/create_eval_completions_run_data_source.rbi @@ -88,8 +88,16 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(source:, type:, input_messages: nil, model: nil, sampling_params: nil); end - + def self.new( + # A StoredCompletionsRunDataSource configuration describing a set of filters + source:, + # The type of run data source. Always `completions`. + type:, + input_messages: nil, + # The name of the model to use for generating completions (e.g. "o3-mini"). + model: nil, + sampling_params: nil + ); end sig do override .returns( @@ -136,8 +144,12 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(content:, type: :file_content); end - + def self.new( + # The content of the jsonl file. + content:, + # The type of jsonl source. Always `file_content`. + type: :file_content + ); end sig do override .returns( @@ -184,8 +196,12 @@ module OpenAI attr_accessor :type sig { params(id: String, type: Symbol).returns(T.attached_class) } - def self.new(id:, type: :file_id); end - + def self.new( + # The identifier of the file. + id:, + # The type of jsonl source. Always `file_id`. + type: :file_id + ); end sig { override.returns({id: String, type: Symbol}) } def to_hash; end end @@ -233,15 +249,24 @@ module OpenAI .returns(T.attached_class) end def self.new( + # An optional Unix timestamp to filter items created after this time. created_after: nil, + # An optional Unix timestamp to filter items created before this time. created_before: nil, + # An optional maximum number of items to return. limit: nil, + # 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: nil, + # An optional model to filter by (e.g., 'gpt-4o'). model: nil, + # The type of source. Always `stored_completions`. type: :stored_completions - ) - end - + ); end sig do override .returns( @@ -317,8 +342,13 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(template:, type: :template); end - + def self.new( + # A list of chat messages forming the prompt or context. May include variable + # references to the "item" namespace, ie {{item.name}}. + template:, + # The type of input messages. Always `template`. + type: :template + ); end sig do override .returns( @@ -401,8 +431,15 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(content:, role:, type: nil); end - + def self.new( + # Text inputs to the model - can contain template strings. + content:, + # The role of the message input. One of `user`, `assistant`, `system`, or + # `developer`. + role:, + # The type of the message input. Always `message`. + type: nil + ); end sig do override .returns( @@ -434,8 +471,12 @@ module OpenAI # A text output from the model. sig { params(text: String, type: Symbol).returns(T.attached_class) } - def self.new(text:, type: :output_text); end - + def self.new( + # The text output from the model. + text:, + # The type of the output text. Always `output_text`. + type: :output_text + ); end sig { override.returns({text: String, type: Symbol}) } def to_hash; end end @@ -540,8 +581,12 @@ module OpenAI attr_accessor :type sig { params(item_reference: String, type: Symbol).returns(T.attached_class) } - def self.new(item_reference:, type: :item_reference); end - + def self.new( + # A reference to a variable in the "item" namespace. Ie, "item.name" + item_reference:, + # The type of input messages. Always `item_reference`. + type: :item_reference + ); end sig { override.returns({item_reference: String, type: Symbol}) } def to_hash; end end @@ -588,8 +633,16 @@ module OpenAI params(max_completion_tokens: Integer, seed: Integer, temperature: Float, top_p: Float) .returns(T.attached_class) end - def self.new(max_completion_tokens: nil, seed: nil, temperature: nil, top_p: nil); end - + def self.new( + # The maximum number of tokens in the generated output. + max_completion_tokens: nil, + # A seed value to initialize the randomness, during sampling. + seed: nil, + # A higher temperature increases randomness in the outputs. + temperature: nil, + # An alternative to temperature for nucleus sampling; 1.0 includes all tokens. + top_p: nil + ); end sig do override.returns( { diff --git a/rbi/lib/openai/models/evals/create_eval_jsonl_run_data_source.rbi b/rbi/lib/openai/models/evals/create_eval_jsonl_run_data_source.rbi index 12b3a3b6..66df840b 100644 --- a/rbi/lib/openai/models/evals/create_eval_jsonl_run_data_source.rbi +++ b/rbi/lib/openai/models/evals/create_eval_jsonl_run_data_source.rbi @@ -31,8 +31,11 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(source:, type: :jsonl); end - + def self.new( + source:, + # The type of data source. Always `jsonl`. + type: :jsonl + ); end sig do override .returns( @@ -71,8 +74,12 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(content:, type: :file_content); end - + def self.new( + # The content of the jsonl file. + content:, + # The type of jsonl source. Always `file_content`. + type: :file_content + ); end sig do override .returns( @@ -119,8 +126,12 @@ module OpenAI attr_accessor :type sig { params(id: String, type: Symbol).returns(T.attached_class) } - def self.new(id:, type: :file_id); end - + def self.new( + # The identifier of the file. + id:, + # The type of jsonl source. Always `file_id`. + type: :file_id + ); end sig { override.returns({id: String, type: Symbol}) } def to_hash; end end diff --git a/rbi/lib/openai/models/evals/eval_api_error.rbi b/rbi/lib/openai/models/evals/eval_api_error.rbi index cc6ac0e5..20859d95 100644 --- a/rbi/lib/openai/models/evals/eval_api_error.rbi +++ b/rbi/lib/openai/models/evals/eval_api_error.rbi @@ -14,8 +14,12 @@ module OpenAI # An object representing an error response from the Eval API. sig { params(code: String, message: String).returns(T.attached_class) } - def self.new(code:, message:); end - + def self.new( + # The error code. + code:, + # The error message. + message: + ); end sig { override.returns({code: String, message: String}) } def to_hash; end end diff --git a/rbi/lib/openai/models/evals/run_cancel_response.rbi b/rbi/lib/openai/models/evals/run_cancel_response.rbi index 35e93b1b..41ea134d 100644 --- a/rbi/lib/openai/models/evals/run_cancel_response.rbi +++ b/rbi/lib/openai/models/evals/run_cancel_response.rbi @@ -110,19 +110,38 @@ module OpenAI .returns(T.attached_class) end def self.new( + # Unique identifier for the evaluation run. id:, + # Unix timestamp (in seconds) when the evaluation run was created. created_at:, + # Information about the run's data source. data_source:, + # An object representing an error response from the Eval API. error:, + # The identifier of the associated evaluation. eval_id:, + # 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:, + # The model that is evaluated, if applicable. model:, + # The name of the evaluation run. name:, + # Usage statistics for each model during the evaluation run. per_model_usage:, + # Results per testing criteria applied during the evaluation run. per_testing_criteria_results:, + # The URL to the rendered evaluation run report on the UI dashboard. report_url:, + # Counters summarizing the outcomes of the evaluation run. result_counts:, + # The status of the evaluation run. status:, + # The type of the object. Always "eval.run". object: :"eval.run" ); end sig do @@ -241,9 +260,16 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(source:, input_messages: nil, model: nil, sampling_params: nil, type: :completions) - end - + def self.new( + # A EvalResponsesSource object describing a run data source configuration. + source:, + input_messages: nil, + # The name of the model to use for generating completions (e.g. "o3-mini"). + model: nil, + sampling_params: nil, + # The type of run data source. Always `completions`. + type: :completions + ); end sig do override .returns( @@ -294,8 +320,12 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(content:, type: :file_content); end - + def self.new( + # The content of the jsonl file. + content:, + # The type of jsonl source. Always `file_content`. + type: :file_content + ); end sig do override .returns( @@ -343,8 +373,12 @@ module OpenAI attr_accessor :type sig { params(id: String, type: Symbol).returns(T.attached_class) } - def self.new(id:, type: :file_id); end - + def self.new( + # The identifier of the file. + id:, + # The type of jsonl source. Always `file_id`. + type: :file_id + ); end sig { override.returns({id: String, type: Symbol}) } def to_hash; end end @@ -425,17 +459,37 @@ module OpenAI .returns(T.attached_class) end def self.new( + # Whether to allow parallel tool calls. This is a query parameter used to select + # responses. allow_parallel_tool_calls: nil, + # Only include items created after this timestamp (inclusive). This is a query + # parameter used to select responses. created_after: nil, + # Only include items created before this timestamp (inclusive). This is a query + # parameter used to select responses. created_before: nil, + # Whether the response has tool calls. This is a query parameter used to select + # responses. has_tool_calls: nil, + # Optional search string for instructions. This is a query parameter used to + # select responses. instructions_search: nil, + # Metadata filter for the responses. This is a query parameter used to select + # responses. metadata: nil, + # The name of the model to find responses for. This is a query parameter used to + # select responses. model: nil, + # Optional reasoning effort parameter. This is a query parameter used to select + # responses. reasoning_effort: nil, + # Sampling temperature. This is a query parameter used to select responses. temperature: nil, + # Nucleus sampling parameter. This is a query parameter used to select responses. top_p: nil, + # List of user identifiers. This is a query parameter used to select responses. users: nil, + # The type of run data source. Always `responses`. type: :responses ); end sig do @@ -504,8 +558,13 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(template:, type: :template); end - + def self.new( + # A list of chat messages forming the prompt or context. May include variable + # references to the "item" namespace, ie {{item.name}}. + template:, + # The type of input messages. Always `template`. + type: :template + ); end sig do override .returns( @@ -540,8 +599,12 @@ module OpenAI attr_accessor :role sig { params(content: String, role: String).returns(T.attached_class) } - def self.new(content:, role:); end - + def self.new( + # The content of the message. + content:, + # The role of the message (e.g. "system", "assistant", "user"). + role: + ); end sig { override.returns({content: String, role: String}) } def to_hash; end end @@ -604,8 +667,15 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(content:, role:, type: nil); end - + def self.new( + # Text inputs to the model - can contain template strings. + content:, + # The role of the message input. One of `user`, `assistant`, `system`, or + # `developer`. + role:, + # The type of the message input. Always `message`. + type: nil + ); end sig do override .returns( @@ -637,8 +707,12 @@ module OpenAI # A text output from the model. sig { params(text: String, type: Symbol).returns(T.attached_class) } - def self.new(text:, type: :output_text); end - + def self.new( + # The text output from the model. + text:, + # The type of the output text. Always `output_text`. + type: :output_text + ); end sig { override.returns({text: String, type: Symbol}) } def to_hash; end end @@ -743,8 +817,12 @@ module OpenAI attr_accessor :type sig { params(item_reference: String, type: Symbol).returns(T.attached_class) } - def self.new(item_reference:, type: :item_reference); end - + def self.new( + # A reference to a variable in the "item" namespace. Ie, "item.name" + item_reference:, + # The type of input messages. Always `item_reference`. + type: :item_reference + ); end sig { override.returns({item_reference: String, type: Symbol}) } def to_hash; end end @@ -791,8 +869,16 @@ module OpenAI params(max_completion_tokens: Integer, seed: Integer, temperature: Float, top_p: Float) .returns(T.attached_class) end - def self.new(max_completion_tokens: nil, seed: nil, temperature: nil, top_p: nil); end - + def self.new( + # The maximum number of tokens in the generated output. + max_completion_tokens: nil, + # A seed value to initialize the randomness, during sampling. + seed: nil, + # A higher temperature increases randomness in the outputs. + temperature: nil, + # An alternative to temperature for nucleus sampling; 1.0 includes all tokens. + top_p: nil + ); end sig do override.returns( { @@ -853,15 +939,19 @@ module OpenAI .returns(T.attached_class) end def self.new( + # The number of tokens retrieved from cache. cached_tokens:, + # The number of completion tokens generated. completion_tokens:, + # The number of invocations. invocation_count:, + # The name of the model. model_name:, + # The number of prompt tokens used. prompt_tokens:, + # The total number of tokens used. total_tokens: - ) - end - + ); end sig do override .returns( @@ -892,8 +982,14 @@ module OpenAI attr_accessor :testing_criteria sig { params(failed: Integer, passed: Integer, testing_criteria: String).returns(T.attached_class) } - def self.new(failed:, passed:, testing_criteria:); end - + def self.new( + # Number of tests failed for this criteria. + failed:, + # Number of tests passed for this criteria. + passed:, + # A description of the testing criteria. + testing_criteria: + ); end sig { override.returns({failed: Integer, passed: Integer, testing_criteria: String}) } def to_hash; end end @@ -924,8 +1020,16 @@ module OpenAI total: Integer ).returns(T.attached_class) end - def self.new(errored:, failed:, passed:, total:); end - + def self.new( + # Number of output items that resulted in an error. + errored:, + # Number of output items that failed to pass the evaluation. + failed:, + # Number of output items that passed the evaluation. + passed:, + # Total number of executed output items. + total: + ); end sig { override.returns({errored: Integer, failed: Integer, passed: Integer, total: Integer}) } def to_hash; end end diff --git a/rbi/lib/openai/models/evals/run_create_params.rbi b/rbi/lib/openai/models/evals/run_create_params.rbi index c995c3ef..4a286695 100644 --- a/rbi/lib/openai/models/evals/run_create_params.rbi +++ b/rbi/lib/openai/models/evals/run_create_params.rbi @@ -49,8 +49,20 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(data_source:, metadata: nil, name: nil, request_options: {}); end - + def self.new( + # Details about the run's data source. + data_source:, + # 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: nil, + # The name of the run. + name: nil, + request_options: {} + ); end sig do override .returns( @@ -167,8 +179,16 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(source:, type:, input_messages: nil, model: nil, sampling_params: nil); end - + def self.new( + # A EvalResponsesSource object describing a run data source configuration. + source:, + # The type of run data source. Always `completions`. + type:, + input_messages: nil, + # The name of the model to use for generating completions (e.g. "o3-mini"). + model: nil, + sampling_params: nil + ); end sig do override .returns( @@ -221,8 +241,12 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(content:, type: :file_content); end - + def self.new( + # The content of the jsonl file. + content:, + # The type of jsonl source. Always `file_content`. + type: :file_content + ); end sig do override .returns( @@ -272,8 +296,12 @@ module OpenAI attr_accessor :type sig { params(id: String, type: Symbol).returns(T.attached_class) } - def self.new(id:, type: :file_id); end - + def self.new( + # The identifier of the file. + id:, + # The type of jsonl source. Always `file_id`. + type: :file_id + ); end sig { override.returns({id: String, type: Symbol}) } def to_hash; end end @@ -354,17 +382,37 @@ module OpenAI .returns(T.attached_class) end def self.new( + # Whether to allow parallel tool calls. This is a query parameter used to select + # responses. allow_parallel_tool_calls: nil, + # Only include items created after this timestamp (inclusive). This is a query + # parameter used to select responses. created_after: nil, + # Only include items created before this timestamp (inclusive). This is a query + # parameter used to select responses. created_before: nil, + # Whether the response has tool calls. This is a query parameter used to select + # responses. has_tool_calls: nil, + # Optional search string for instructions. This is a query parameter used to + # select responses. instructions_search: nil, + # Metadata filter for the responses. This is a query parameter used to select + # responses. metadata: nil, + # The name of the model to find responses for. This is a query parameter used to + # select responses. model: nil, + # Optional reasoning effort parameter. This is a query parameter used to select + # responses. reasoning_effort: nil, + # Sampling temperature. This is a query parameter used to select responses. temperature: nil, + # Nucleus sampling parameter. This is a query parameter used to select responses. top_p: nil, + # List of user identifiers. This is a query parameter used to select responses. users: nil, + # The type of run data source. Always `responses`. type: :responses ); end sig do @@ -456,8 +504,13 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(template:, type: :template); end - + def self.new( + # A list of chat messages forming the prompt or context. May include variable + # references to the "item" namespace, ie {{item.name}}. + template:, + # The type of input messages. Always `template`. + type: :template + ); end sig do override .returns( @@ -492,8 +545,12 @@ module OpenAI attr_accessor :role sig { params(content: String, role: String).returns(T.attached_class) } - def self.new(content:, role:); end - + def self.new( + # The content of the message. + content:, + # The role of the message (e.g. "system", "assistant", "user"). + role: + ); end sig { override.returns({content: String, role: String}) } def to_hash; end end @@ -556,8 +613,15 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(content:, role:, type: nil); end - + def self.new( + # Text inputs to the model - can contain template strings. + content:, + # The role of the message input. One of `user`, `assistant`, `system`, or + # `developer`. + role:, + # The type of the message input. Always `message`. + type: nil + ); end sig do override .returns( @@ -589,8 +653,12 @@ module OpenAI # A text output from the model. sig { params(text: String, type: Symbol).returns(T.attached_class) } - def self.new(text:, type: :output_text); end - + def self.new( + # The text output from the model. + text:, + # The type of the output text. Always `output_text`. + type: :output_text + ); end sig { override.returns({text: String, type: Symbol}) } def to_hash; end end @@ -695,8 +763,12 @@ module OpenAI attr_accessor :type sig { params(item_reference: String, type: Symbol).returns(T.attached_class) } - def self.new(item_reference:, type: :item_reference); end - + def self.new( + # A reference to a variable in the "item" namespace. Ie, "item.name" + item_reference:, + # The type of input messages. Always `item_reference`. + type: :item_reference + ); end sig { override.returns({item_reference: String, type: Symbol}) } def to_hash; end end @@ -743,8 +815,16 @@ module OpenAI params(max_completion_tokens: Integer, seed: Integer, temperature: Float, top_p: Float) .returns(T.attached_class) end - def self.new(max_completion_tokens: nil, seed: nil, temperature: nil, top_p: nil); end - + def self.new( + # The maximum number of tokens in the generated output. + max_completion_tokens: nil, + # A seed value to initialize the randomness, during sampling. + seed: nil, + # A higher temperature increases randomness in the outputs. + temperature: nil, + # An alternative to temperature for nucleus sampling; 1.0 includes all tokens. + top_p: nil + ); end sig do override.returns( { diff --git a/rbi/lib/openai/models/evals/run_create_response.rbi b/rbi/lib/openai/models/evals/run_create_response.rbi index 40364127..cebc26ac 100644 --- a/rbi/lib/openai/models/evals/run_create_response.rbi +++ b/rbi/lib/openai/models/evals/run_create_response.rbi @@ -110,19 +110,38 @@ module OpenAI .returns(T.attached_class) end def self.new( + # Unique identifier for the evaluation run. id:, + # Unix timestamp (in seconds) when the evaluation run was created. created_at:, + # Information about the run's data source. data_source:, + # An object representing an error response from the Eval API. error:, + # The identifier of the associated evaluation. eval_id:, + # 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:, + # The model that is evaluated, if applicable. model:, + # The name of the evaluation run. name:, + # Usage statistics for each model during the evaluation run. per_model_usage:, + # Results per testing criteria applied during the evaluation run. per_testing_criteria_results:, + # The URL to the rendered evaluation run report on the UI dashboard. report_url:, + # Counters summarizing the outcomes of the evaluation run. result_counts:, + # The status of the evaluation run. status:, + # The type of the object. Always "eval.run". object: :"eval.run" ); end sig do @@ -241,9 +260,16 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(source:, input_messages: nil, model: nil, sampling_params: nil, type: :completions) - end - + def self.new( + # A EvalResponsesSource object describing a run data source configuration. + source:, + input_messages: nil, + # The name of the model to use for generating completions (e.g. "o3-mini"). + model: nil, + sampling_params: nil, + # The type of run data source. Always `completions`. + type: :completions + ); end sig do override .returns( @@ -294,8 +320,12 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(content:, type: :file_content); end - + def self.new( + # The content of the jsonl file. + content:, + # The type of jsonl source. Always `file_content`. + type: :file_content + ); end sig do override .returns( @@ -343,8 +373,12 @@ module OpenAI attr_accessor :type sig { params(id: String, type: Symbol).returns(T.attached_class) } - def self.new(id:, type: :file_id); end - + def self.new( + # The identifier of the file. + id:, + # The type of jsonl source. Always `file_id`. + type: :file_id + ); end sig { override.returns({id: String, type: Symbol}) } def to_hash; end end @@ -425,17 +459,37 @@ module OpenAI .returns(T.attached_class) end def self.new( + # Whether to allow parallel tool calls. This is a query parameter used to select + # responses. allow_parallel_tool_calls: nil, + # Only include items created after this timestamp (inclusive). This is a query + # parameter used to select responses. created_after: nil, + # Only include items created before this timestamp (inclusive). This is a query + # parameter used to select responses. created_before: nil, + # Whether the response has tool calls. This is a query parameter used to select + # responses. has_tool_calls: nil, + # Optional search string for instructions. This is a query parameter used to + # select responses. instructions_search: nil, + # Metadata filter for the responses. This is a query parameter used to select + # responses. metadata: nil, + # The name of the model to find responses for. This is a query parameter used to + # select responses. model: nil, + # Optional reasoning effort parameter. This is a query parameter used to select + # responses. reasoning_effort: nil, + # Sampling temperature. This is a query parameter used to select responses. temperature: nil, + # Nucleus sampling parameter. This is a query parameter used to select responses. top_p: nil, + # List of user identifiers. This is a query parameter used to select responses. users: nil, + # The type of run data source. Always `responses`. type: :responses ); end sig do @@ -504,8 +558,13 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(template:, type: :template); end - + def self.new( + # A list of chat messages forming the prompt or context. May include variable + # references to the "item" namespace, ie {{item.name}}. + template:, + # The type of input messages. Always `template`. + type: :template + ); end sig do override .returns( @@ -540,8 +599,12 @@ module OpenAI attr_accessor :role sig { params(content: String, role: String).returns(T.attached_class) } - def self.new(content:, role:); end - + def self.new( + # The content of the message. + content:, + # The role of the message (e.g. "system", "assistant", "user"). + role: + ); end sig { override.returns({content: String, role: String}) } def to_hash; end end @@ -604,8 +667,15 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(content:, role:, type: nil); end - + def self.new( + # Text inputs to the model - can contain template strings. + content:, + # The role of the message input. One of `user`, `assistant`, `system`, or + # `developer`. + role:, + # The type of the message input. Always `message`. + type: nil + ); end sig do override .returns( @@ -637,8 +707,12 @@ module OpenAI # A text output from the model. sig { params(text: String, type: Symbol).returns(T.attached_class) } - def self.new(text:, type: :output_text); end - + def self.new( + # The text output from the model. + text:, + # The type of the output text. Always `output_text`. + type: :output_text + ); end sig { override.returns({text: String, type: Symbol}) } def to_hash; end end @@ -743,8 +817,12 @@ module OpenAI attr_accessor :type sig { params(item_reference: String, type: Symbol).returns(T.attached_class) } - def self.new(item_reference:, type: :item_reference); end - + def self.new( + # A reference to a variable in the "item" namespace. Ie, "item.name" + item_reference:, + # The type of input messages. Always `item_reference`. + type: :item_reference + ); end sig { override.returns({item_reference: String, type: Symbol}) } def to_hash; end end @@ -791,8 +869,16 @@ module OpenAI params(max_completion_tokens: Integer, seed: Integer, temperature: Float, top_p: Float) .returns(T.attached_class) end - def self.new(max_completion_tokens: nil, seed: nil, temperature: nil, top_p: nil); end - + def self.new( + # The maximum number of tokens in the generated output. + max_completion_tokens: nil, + # A seed value to initialize the randomness, during sampling. + seed: nil, + # A higher temperature increases randomness in the outputs. + temperature: nil, + # An alternative to temperature for nucleus sampling; 1.0 includes all tokens. + top_p: nil + ); end sig do override.returns( { @@ -853,15 +939,19 @@ module OpenAI .returns(T.attached_class) end def self.new( + # The number of tokens retrieved from cache. cached_tokens:, + # The number of completion tokens generated. completion_tokens:, + # The number of invocations. invocation_count:, + # The name of the model. model_name:, + # The number of prompt tokens used. prompt_tokens:, + # The total number of tokens used. total_tokens: - ) - end - + ); end sig do override .returns( @@ -892,8 +982,14 @@ module OpenAI attr_accessor :testing_criteria sig { params(failed: Integer, passed: Integer, testing_criteria: String).returns(T.attached_class) } - def self.new(failed:, passed:, testing_criteria:); end - + def self.new( + # Number of tests failed for this criteria. + failed:, + # Number of tests passed for this criteria. + passed:, + # A description of the testing criteria. + testing_criteria: + ); end sig { override.returns({failed: Integer, passed: Integer, testing_criteria: String}) } def to_hash; end end @@ -924,8 +1020,16 @@ module OpenAI total: Integer ).returns(T.attached_class) end - def self.new(errored:, failed:, passed:, total:); end - + def self.new( + # Number of output items that resulted in an error. + errored:, + # Number of output items that failed to pass the evaluation. + failed:, + # Number of output items that passed the evaluation. + passed:, + # Total number of executed output items. + total: + ); end sig { override.returns({errored: Integer, failed: Integer, passed: Integer, total: Integer}) } def to_hash; end end diff --git a/rbi/lib/openai/models/evals/run_list_params.rbi b/rbi/lib/openai/models/evals/run_list_params.rbi index c3cf6599..aa4151ed 100644 --- a/rbi/lib/openai/models/evals/run_list_params.rbi +++ b/rbi/lib/openai/models/evals/run_list_params.rbi @@ -47,8 +47,19 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(after: nil, limit: nil, order: nil, status: nil, request_options: {}); end - + def self.new( + # Identifier for the last run from the previous pagination request. + after: nil, + # Number of runs to retrieve. + limit: nil, + # Sort order for runs by timestamp. Use `asc` for ascending order or `desc` for + # descending order. Defaults to `asc`. + order: nil, + # Filter runs by status. One of `queued` | `in_progress` | `failed` | `completed` + # | `canceled`. + status: nil, + request_options: {} + ); end sig do override .returns( diff --git a/rbi/lib/openai/models/evals/run_list_response.rbi b/rbi/lib/openai/models/evals/run_list_response.rbi index f264782f..e00b1471 100644 --- a/rbi/lib/openai/models/evals/run_list_response.rbi +++ b/rbi/lib/openai/models/evals/run_list_response.rbi @@ -110,19 +110,38 @@ module OpenAI .returns(T.attached_class) end def self.new( + # Unique identifier for the evaluation run. id:, + # Unix timestamp (in seconds) when the evaluation run was created. created_at:, + # Information about the run's data source. data_source:, + # An object representing an error response from the Eval API. error:, + # The identifier of the associated evaluation. eval_id:, + # 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:, + # The model that is evaluated, if applicable. model:, + # The name of the evaluation run. name:, + # Usage statistics for each model during the evaluation run. per_model_usage:, + # Results per testing criteria applied during the evaluation run. per_testing_criteria_results:, + # The URL to the rendered evaluation run report on the UI dashboard. report_url:, + # Counters summarizing the outcomes of the evaluation run. result_counts:, + # The status of the evaluation run. status:, + # The type of the object. Always "eval.run". object: :"eval.run" ); end sig do @@ -241,9 +260,16 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(source:, input_messages: nil, model: nil, sampling_params: nil, type: :completions) - end - + def self.new( + # A EvalResponsesSource object describing a run data source configuration. + source:, + input_messages: nil, + # The name of the model to use for generating completions (e.g. "o3-mini"). + model: nil, + sampling_params: nil, + # The type of run data source. Always `completions`. + type: :completions + ); end sig do override .returns( @@ -294,8 +320,12 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(content:, type: :file_content); end - + def self.new( + # The content of the jsonl file. + content:, + # The type of jsonl source. Always `file_content`. + type: :file_content + ); end sig do override .returns( @@ -343,8 +373,12 @@ module OpenAI attr_accessor :type sig { params(id: String, type: Symbol).returns(T.attached_class) } - def self.new(id:, type: :file_id); end - + def self.new( + # The identifier of the file. + id:, + # The type of jsonl source. Always `file_id`. + type: :file_id + ); end sig { override.returns({id: String, type: Symbol}) } def to_hash; end end @@ -425,17 +459,37 @@ module OpenAI .returns(T.attached_class) end def self.new( + # Whether to allow parallel tool calls. This is a query parameter used to select + # responses. allow_parallel_tool_calls: nil, + # Only include items created after this timestamp (inclusive). This is a query + # parameter used to select responses. created_after: nil, + # Only include items created before this timestamp (inclusive). This is a query + # parameter used to select responses. created_before: nil, + # Whether the response has tool calls. This is a query parameter used to select + # responses. has_tool_calls: nil, + # Optional search string for instructions. This is a query parameter used to + # select responses. instructions_search: nil, + # Metadata filter for the responses. This is a query parameter used to select + # responses. metadata: nil, + # The name of the model to find responses for. This is a query parameter used to + # select responses. model: nil, + # Optional reasoning effort parameter. This is a query parameter used to select + # responses. reasoning_effort: nil, + # Sampling temperature. This is a query parameter used to select responses. temperature: nil, + # Nucleus sampling parameter. This is a query parameter used to select responses. top_p: nil, + # List of user identifiers. This is a query parameter used to select responses. users: nil, + # The type of run data source. Always `responses`. type: :responses ); end sig do @@ -504,8 +558,13 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(template:, type: :template); end - + def self.new( + # A list of chat messages forming the prompt or context. May include variable + # references to the "item" namespace, ie {{item.name}}. + template:, + # The type of input messages. Always `template`. + type: :template + ); end sig do override .returns( @@ -540,8 +599,12 @@ module OpenAI attr_accessor :role sig { params(content: String, role: String).returns(T.attached_class) } - def self.new(content:, role:); end - + def self.new( + # The content of the message. + content:, + # The role of the message (e.g. "system", "assistant", "user"). + role: + ); end sig { override.returns({content: String, role: String}) } def to_hash; end end @@ -604,8 +667,15 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(content:, role:, type: nil); end - + def self.new( + # Text inputs to the model - can contain template strings. + content:, + # The role of the message input. One of `user`, `assistant`, `system`, or + # `developer`. + role:, + # The type of the message input. Always `message`. + type: nil + ); end sig do override .returns( @@ -637,8 +707,12 @@ module OpenAI # A text output from the model. sig { params(text: String, type: Symbol).returns(T.attached_class) } - def self.new(text:, type: :output_text); end - + def self.new( + # The text output from the model. + text:, + # The type of the output text. Always `output_text`. + type: :output_text + ); end sig { override.returns({text: String, type: Symbol}) } def to_hash; end end @@ -743,8 +817,12 @@ module OpenAI attr_accessor :type sig { params(item_reference: String, type: Symbol).returns(T.attached_class) } - def self.new(item_reference:, type: :item_reference); end - + def self.new( + # A reference to a variable in the "item" namespace. Ie, "item.name" + item_reference:, + # The type of input messages. Always `item_reference`. + type: :item_reference + ); end sig { override.returns({item_reference: String, type: Symbol}) } def to_hash; end end @@ -791,8 +869,16 @@ module OpenAI params(max_completion_tokens: Integer, seed: Integer, temperature: Float, top_p: Float) .returns(T.attached_class) end - def self.new(max_completion_tokens: nil, seed: nil, temperature: nil, top_p: nil); end - + def self.new( + # The maximum number of tokens in the generated output. + max_completion_tokens: nil, + # A seed value to initialize the randomness, during sampling. + seed: nil, + # A higher temperature increases randomness in the outputs. + temperature: nil, + # An alternative to temperature for nucleus sampling; 1.0 includes all tokens. + top_p: nil + ); end sig do override.returns( { @@ -853,15 +939,19 @@ module OpenAI .returns(T.attached_class) end def self.new( + # The number of tokens retrieved from cache. cached_tokens:, + # The number of completion tokens generated. completion_tokens:, + # The number of invocations. invocation_count:, + # The name of the model. model_name:, + # The number of prompt tokens used. prompt_tokens:, + # The total number of tokens used. total_tokens: - ) - end - + ); end sig do override .returns( @@ -892,8 +982,14 @@ module OpenAI attr_accessor :testing_criteria sig { params(failed: Integer, passed: Integer, testing_criteria: String).returns(T.attached_class) } - def self.new(failed:, passed:, testing_criteria:); end - + def self.new( + # Number of tests failed for this criteria. + failed:, + # Number of tests passed for this criteria. + passed:, + # A description of the testing criteria. + testing_criteria: + ); end sig { override.returns({failed: Integer, passed: Integer, testing_criteria: String}) } def to_hash; end end @@ -924,8 +1020,16 @@ module OpenAI total: Integer ).returns(T.attached_class) end - def self.new(errored:, failed:, passed:, total:); end - + def self.new( + # Number of output items that resulted in an error. + errored:, + # Number of output items that failed to pass the evaluation. + failed:, + # Number of output items that passed the evaluation. + passed:, + # Total number of executed output items. + total: + ); end sig { override.returns({errored: Integer, failed: Integer, passed: Integer, total: Integer}) } def to_hash; end end diff --git a/rbi/lib/openai/models/evals/run_retrieve_response.rbi b/rbi/lib/openai/models/evals/run_retrieve_response.rbi index 405a83cf..70df1bc9 100644 --- a/rbi/lib/openai/models/evals/run_retrieve_response.rbi +++ b/rbi/lib/openai/models/evals/run_retrieve_response.rbi @@ -110,19 +110,38 @@ module OpenAI .returns(T.attached_class) end def self.new( + # Unique identifier for the evaluation run. id:, + # Unix timestamp (in seconds) when the evaluation run was created. created_at:, + # Information about the run's data source. data_source:, + # An object representing an error response from the Eval API. error:, + # The identifier of the associated evaluation. eval_id:, + # 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:, + # The model that is evaluated, if applicable. model:, + # The name of the evaluation run. name:, + # Usage statistics for each model during the evaluation run. per_model_usage:, + # Results per testing criteria applied during the evaluation run. per_testing_criteria_results:, + # The URL to the rendered evaluation run report on the UI dashboard. report_url:, + # Counters summarizing the outcomes of the evaluation run. result_counts:, + # The status of the evaluation run. status:, + # The type of the object. Always "eval.run". object: :"eval.run" ); end sig do @@ -241,9 +260,16 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(source:, input_messages: nil, model: nil, sampling_params: nil, type: :completions) - end - + def self.new( + # A EvalResponsesSource object describing a run data source configuration. + source:, + input_messages: nil, + # The name of the model to use for generating completions (e.g. "o3-mini"). + model: nil, + sampling_params: nil, + # The type of run data source. Always `completions`. + type: :completions + ); end sig do override .returns( @@ -294,8 +320,12 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(content:, type: :file_content); end - + def self.new( + # The content of the jsonl file. + content:, + # The type of jsonl source. Always `file_content`. + type: :file_content + ); end sig do override .returns( @@ -343,8 +373,12 @@ module OpenAI attr_accessor :type sig { params(id: String, type: Symbol).returns(T.attached_class) } - def self.new(id:, type: :file_id); end - + def self.new( + # The identifier of the file. + id:, + # The type of jsonl source. Always `file_id`. + type: :file_id + ); end sig { override.returns({id: String, type: Symbol}) } def to_hash; end end @@ -425,17 +459,37 @@ module OpenAI .returns(T.attached_class) end def self.new( + # Whether to allow parallel tool calls. This is a query parameter used to select + # responses. allow_parallel_tool_calls: nil, + # Only include items created after this timestamp (inclusive). This is a query + # parameter used to select responses. created_after: nil, + # Only include items created before this timestamp (inclusive). This is a query + # parameter used to select responses. created_before: nil, + # Whether the response has tool calls. This is a query parameter used to select + # responses. has_tool_calls: nil, + # Optional search string for instructions. This is a query parameter used to + # select responses. instructions_search: nil, + # Metadata filter for the responses. This is a query parameter used to select + # responses. metadata: nil, + # The name of the model to find responses for. This is a query parameter used to + # select responses. model: nil, + # Optional reasoning effort parameter. This is a query parameter used to select + # responses. reasoning_effort: nil, + # Sampling temperature. This is a query parameter used to select responses. temperature: nil, + # Nucleus sampling parameter. This is a query parameter used to select responses. top_p: nil, + # List of user identifiers. This is a query parameter used to select responses. users: nil, + # The type of run data source. Always `responses`. type: :responses ); end sig do @@ -504,8 +558,13 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(template:, type: :template); end - + def self.new( + # A list of chat messages forming the prompt or context. May include variable + # references to the "item" namespace, ie {{item.name}}. + template:, + # The type of input messages. Always `template`. + type: :template + ); end sig do override .returns( @@ -540,8 +599,12 @@ module OpenAI attr_accessor :role sig { params(content: String, role: String).returns(T.attached_class) } - def self.new(content:, role:); end - + def self.new( + # The content of the message. + content:, + # The role of the message (e.g. "system", "assistant", "user"). + role: + ); end sig { override.returns({content: String, role: String}) } def to_hash; end end @@ -604,8 +667,15 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(content:, role:, type: nil); end - + def self.new( + # Text inputs to the model - can contain template strings. + content:, + # The role of the message input. One of `user`, `assistant`, `system`, or + # `developer`. + role:, + # The type of the message input. Always `message`. + type: nil + ); end sig do override .returns( @@ -637,8 +707,12 @@ module OpenAI # A text output from the model. sig { params(text: String, type: Symbol).returns(T.attached_class) } - def self.new(text:, type: :output_text); end - + def self.new( + # The text output from the model. + text:, + # The type of the output text. Always `output_text`. + type: :output_text + ); end sig { override.returns({text: String, type: Symbol}) } def to_hash; end end @@ -743,8 +817,12 @@ module OpenAI attr_accessor :type sig { params(item_reference: String, type: Symbol).returns(T.attached_class) } - def self.new(item_reference:, type: :item_reference); end - + def self.new( + # A reference to a variable in the "item" namespace. Ie, "item.name" + item_reference:, + # The type of input messages. Always `item_reference`. + type: :item_reference + ); end sig { override.returns({item_reference: String, type: Symbol}) } def to_hash; end end @@ -791,8 +869,16 @@ module OpenAI params(max_completion_tokens: Integer, seed: Integer, temperature: Float, top_p: Float) .returns(T.attached_class) end - def self.new(max_completion_tokens: nil, seed: nil, temperature: nil, top_p: nil); end - + def self.new( + # The maximum number of tokens in the generated output. + max_completion_tokens: nil, + # A seed value to initialize the randomness, during sampling. + seed: nil, + # A higher temperature increases randomness in the outputs. + temperature: nil, + # An alternative to temperature for nucleus sampling; 1.0 includes all tokens. + top_p: nil + ); end sig do override.returns( { @@ -853,15 +939,19 @@ module OpenAI .returns(T.attached_class) end def self.new( + # The number of tokens retrieved from cache. cached_tokens:, + # The number of completion tokens generated. completion_tokens:, + # The number of invocations. invocation_count:, + # The name of the model. model_name:, + # The number of prompt tokens used. prompt_tokens:, + # The total number of tokens used. total_tokens: - ) - end - + ); end sig do override .returns( @@ -892,8 +982,14 @@ module OpenAI attr_accessor :testing_criteria sig { params(failed: Integer, passed: Integer, testing_criteria: String).returns(T.attached_class) } - def self.new(failed:, passed:, testing_criteria:); end - + def self.new( + # Number of tests failed for this criteria. + failed:, + # Number of tests passed for this criteria. + passed:, + # A description of the testing criteria. + testing_criteria: + ); end sig { override.returns({failed: Integer, passed: Integer, testing_criteria: String}) } def to_hash; end end @@ -924,8 +1020,16 @@ module OpenAI total: Integer ).returns(T.attached_class) end - def self.new(errored:, failed:, passed:, total:); end - + def self.new( + # Number of output items that resulted in an error. + errored:, + # Number of output items that failed to pass the evaluation. + failed:, + # Number of output items that passed the evaluation. + passed:, + # Total number of executed output items. + total: + ); end sig { override.returns({errored: Integer, failed: Integer, passed: Integer, total: Integer}) } def to_hash; end end diff --git a/rbi/lib/openai/models/evals/runs/output_item_list_params.rbi b/rbi/lib/openai/models/evals/runs/output_item_list_params.rbi index 1d9f802f..e6931f3d 100644 --- a/rbi/lib/openai/models/evals/runs/output_item_list_params.rbi +++ b/rbi/lib/openai/models/evals/runs/output_item_list_params.rbi @@ -52,8 +52,20 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(eval_id:, after: nil, limit: nil, order: nil, status: nil, request_options: {}); end - + def self.new( + eval_id:, + # Identifier for the last output item from the previous pagination request. + after: nil, + # Number of output items to retrieve. + limit: nil, + # Sort order for output items by timestamp. Use `asc` for ascending order or + # `desc` for descending order. Defaults to `asc`. + order: nil, + # Filter output items by status. Use `failed` to filter by failed output items or + # `pass` to filter by passed output items. + status: nil, + request_options: {} + ); end sig do override .returns( diff --git a/rbi/lib/openai/models/evals/runs/output_item_list_response.rbi b/rbi/lib/openai/models/evals/runs/output_item_list_response.rbi index ecb65334..027b0dd3 100644 --- a/rbi/lib/openai/models/evals/runs/output_item_list_response.rbi +++ b/rbi/lib/openai/models/evals/runs/output_item_list_response.rbi @@ -70,15 +70,25 @@ module OpenAI .returns(T.attached_class) end def self.new( + # Unique identifier for the evaluation run output item. id:, + # Unix timestamp (in seconds) when the evaluation run was created. created_at:, + # Details of the input data source item. datasource_item:, + # The identifier for the data source item. datasource_item_id:, + # The identifier of the evaluation group. eval_id:, + # A list of results from the evaluation run. results:, + # The identifier of the evaluation run associated with this output item. run_id:, + # A sample containing the input and output of the evaluation run. sample:, + # The status of the evaluation run. status:, + # The type of the object. Always "eval.run.output_item". object: :"eval.run.output_item" ); end sig do @@ -169,15 +179,25 @@ module OpenAI .returns(T.attached_class) end def self.new( + # An object representing an error response from the Eval API. error:, + # The reason why the sample generation was finished. finish_reason:, + # An array of input messages. input:, + # The maximum number of tokens allowed for completion. max_completion_tokens:, + # The model used for generating the sample. model:, + # An array of output messages. output:, + # The seed used for generating the sample. seed:, + # The sampling temperature used. temperature:, + # The top_p value used for sampling. top_p:, + # Token usage details for the sample. usage: ); end sig do @@ -210,8 +230,12 @@ module OpenAI # An input message. sig { params(content: String, role: String).returns(T.attached_class) } - def self.new(content:, role:); end - + def self.new( + # The content of the message. + content:, + # The role of the message sender (e.g., system, user, developer). + role: + ); end sig { override.returns({content: String, role: String}) } def to_hash; end end @@ -232,8 +256,12 @@ module OpenAI attr_writer :role sig { params(content: String, role: String).returns(T.attached_class) } - def self.new(content: nil, role: nil); end - + def self.new( + # The content of the message. + content: nil, + # The role of the message (e.g. "system", "assistant", "user"). + role: nil + ); end sig { override.returns({content: String, role: String}) } def to_hash; end end @@ -265,8 +293,16 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(cached_tokens:, completion_tokens:, prompt_tokens:, total_tokens:); end - + def self.new( + # The number of tokens retrieved from cache. + cached_tokens:, + # The number of completion tokens generated. + completion_tokens:, + # The number of prompt tokens used. + prompt_tokens:, + # The total number of tokens used. + total_tokens: + ); end sig do override .returns( diff --git a/rbi/lib/openai/models/evals/runs/output_item_retrieve_response.rbi b/rbi/lib/openai/models/evals/runs/output_item_retrieve_response.rbi index b538f6cd..69bee6f1 100644 --- a/rbi/lib/openai/models/evals/runs/output_item_retrieve_response.rbi +++ b/rbi/lib/openai/models/evals/runs/output_item_retrieve_response.rbi @@ -70,15 +70,25 @@ module OpenAI .returns(T.attached_class) end def self.new( + # Unique identifier for the evaluation run output item. id:, + # Unix timestamp (in seconds) when the evaluation run was created. created_at:, + # Details of the input data source item. datasource_item:, + # The identifier for the data source item. datasource_item_id:, + # The identifier of the evaluation group. eval_id:, + # A list of results from the evaluation run. results:, + # The identifier of the evaluation run associated with this output item. run_id:, + # A sample containing the input and output of the evaluation run. sample:, + # The status of the evaluation run. status:, + # The type of the object. Always "eval.run.output_item". object: :"eval.run.output_item" ); end sig do @@ -169,15 +179,25 @@ module OpenAI .returns(T.attached_class) end def self.new( + # An object representing an error response from the Eval API. error:, + # The reason why the sample generation was finished. finish_reason:, + # An array of input messages. input:, + # The maximum number of tokens allowed for completion. max_completion_tokens:, + # The model used for generating the sample. model:, + # An array of output messages. output:, + # The seed used for generating the sample. seed:, + # The sampling temperature used. temperature:, + # The top_p value used for sampling. top_p:, + # Token usage details for the sample. usage: ); end sig do @@ -210,8 +230,12 @@ module OpenAI # An input message. sig { params(content: String, role: String).returns(T.attached_class) } - def self.new(content:, role:); end - + def self.new( + # The content of the message. + content:, + # The role of the message sender (e.g., system, user, developer). + role: + ); end sig { override.returns({content: String, role: String}) } def to_hash; end end @@ -232,8 +256,12 @@ module OpenAI attr_writer :role sig { params(content: String, role: String).returns(T.attached_class) } - def self.new(content: nil, role: nil); end - + def self.new( + # The content of the message. + content: nil, + # The role of the message (e.g. "system", "assistant", "user"). + role: nil + ); end sig { override.returns({content: String, role: String}) } def to_hash; end end @@ -265,8 +293,16 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(cached_tokens:, completion_tokens:, prompt_tokens:, total_tokens:); end - + def self.new( + # The number of tokens retrieved from cache. + cached_tokens:, + # The number of completion tokens generated. + completion_tokens:, + # The number of prompt tokens used. + prompt_tokens:, + # The total number of tokens used. + total_tokens: + ); end sig do override .returns( diff --git a/rbi/lib/openai/models/file_create_params.rbi b/rbi/lib/openai/models/file_create_params.rbi index c4a5174b..2580e280 100644 --- a/rbi/lib/openai/models/file_create_params.rbi +++ b/rbi/lib/openai/models/file_create_params.rbi @@ -25,8 +25,16 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(file:, purpose:, request_options: {}); end - + def self.new( + # The File object (not file name) to be uploaded. + file:, + # The intended purpose of the uploaded file. One of: - `assistants`: Used in the + # Assistants API - `batch`: Used in the Batch API - `fine-tune`: Used for + # fine-tuning - `vision`: Images used for vision fine-tuning - `user_data`: + # Flexible file type for any purpose - `evals`: Used for eval data sets + purpose:, + request_options: {} + ); end sig do override .returns( diff --git a/rbi/lib/openai/models/file_list_params.rbi b/rbi/lib/openai/models/file_list_params.rbi index 69d9b1a3..b33289b5 100644 --- a/rbi/lib/openai/models/file_list_params.rbi +++ b/rbi/lib/openai/models/file_list_params.rbi @@ -49,8 +49,22 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(after: nil, limit: nil, order: nil, purpose: nil, request_options: {}); end - + def self.new( + # A cursor for use in pagination. `after` is an object ID that defines your place + # in the list. For instance, if you make a list request and receive 100 objects, + # ending with obj_foo, your subsequent call can include after=obj_foo in order to + # fetch the next page of the list. + after: nil, + # A limit on the number of objects to be returned. Limit can range between 1 and + # 10,000, and the default is 10,000. + limit: nil, + # Sort order by the `created_at` timestamp of the objects. `asc` for ascending + # order and `desc` for descending order. + order: nil, + # Only return files with the given purpose. + purpose: nil, + request_options: {} + ); end sig do override .returns( diff --git a/rbi/lib/openai/models/file_object.rbi b/rbi/lib/openai/models/file_object.rbi index 82c4880a..af7989d6 100644 --- a/rbi/lib/openai/models/file_object.rbi +++ b/rbi/lib/openai/models/file_object.rbi @@ -65,14 +65,27 @@ module OpenAI .returns(T.attached_class) end def self.new( + # The file identifier, which can be referenced in the API endpoints. id:, + # The size of the file, in bytes. bytes:, + # The Unix timestamp (in seconds) for when the file was created. created_at:, + # The name of the file. filename:, + # The intended purpose of the file. Supported values are `assistants`, + # `assistants_output`, `batch`, `batch_output`, `fine-tune`, `fine-tune-results` + # and `vision`. purpose:, + # Deprecated. The current status of the file, which can be either `uploaded`, + # `processed`, or `error`. status:, + # The Unix timestamp (in seconds) for when the file will expire. expires_at: nil, + # Deprecated. For details on why a fine-tuning training file failed validation, + # see the `error` field on `fine_tuning.job`. status_details: nil, + # The object type, which is always `file`. object: :file ); end sig do diff --git a/rbi/lib/openai/models/fine_tuning/checkpoints/permission_create_params.rbi b/rbi/lib/openai/models/fine_tuning/checkpoints/permission_create_params.rbi index 27d4ad09..b8e4f73d 100644 --- a/rbi/lib/openai/models/fine_tuning/checkpoints/permission_create_params.rbi +++ b/rbi/lib/openai/models/fine_tuning/checkpoints/permission_create_params.rbi @@ -19,8 +19,11 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(project_ids:, request_options: {}); end - + def self.new( + # The project identifiers to grant access to. + project_ids:, + request_options: {} + ); end sig { override.returns({project_ids: T::Array[String], request_options: OpenAI::RequestOptions}) } def to_hash; end end diff --git a/rbi/lib/openai/models/fine_tuning/checkpoints/permission_create_response.rbi b/rbi/lib/openai/models/fine_tuning/checkpoints/permission_create_response.rbi index 07d7d8b6..6dadadac 100644 --- a/rbi/lib/openai/models/fine_tuning/checkpoints/permission_create_response.rbi +++ b/rbi/lib/openai/models/fine_tuning/checkpoints/permission_create_response.rbi @@ -31,8 +31,16 @@ module OpenAI object: Symbol ).returns(T.attached_class) end - def self.new(id:, created_at:, project_id:, object: :"checkpoint.permission"); end - + def self.new( + # The permission identifier, which can be referenced in the API endpoints. + id:, + # The Unix timestamp (in seconds) for when the permission was created. + created_at:, + # The project identifier that the permission is for. + project_id:, + # The object type, which is always "checkpoint.permission". + object: :"checkpoint.permission" + ); end sig { override.returns({id: String, created_at: Integer, object: Symbol, project_id: String}) } def to_hash; end end diff --git a/rbi/lib/openai/models/fine_tuning/checkpoints/permission_delete_response.rbi b/rbi/lib/openai/models/fine_tuning/checkpoints/permission_delete_response.rbi index 9a510f8c..6bc5d73b 100644 --- a/rbi/lib/openai/models/fine_tuning/checkpoints/permission_delete_response.rbi +++ b/rbi/lib/openai/models/fine_tuning/checkpoints/permission_delete_response.rbi @@ -18,8 +18,14 @@ module OpenAI attr_accessor :object sig { params(id: String, deleted: T::Boolean, object: Symbol).returns(T.attached_class) } - def self.new(id:, deleted:, object: :"checkpoint.permission"); end - + def self.new( + # The ID of the fine-tuned model checkpoint permission that was deleted. + id:, + # Whether the fine-tuned model checkpoint permission was successfully deleted. + deleted:, + # The object type, which is always "checkpoint.permission". + object: :"checkpoint.permission" + ); end sig { override.returns({id: String, deleted: T::Boolean, object: Symbol}) } def to_hash; end end diff --git a/rbi/lib/openai/models/fine_tuning/checkpoints/permission_retrieve_params.rbi b/rbi/lib/openai/models/fine_tuning/checkpoints/permission_retrieve_params.rbi index 938c8a10..04da40a3 100644 --- a/rbi/lib/openai/models/fine_tuning/checkpoints/permission_retrieve_params.rbi +++ b/rbi/lib/openai/models/fine_tuning/checkpoints/permission_retrieve_params.rbi @@ -46,8 +46,17 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(after: nil, limit: nil, order: nil, project_id: nil, request_options: {}); end - + def self.new( + # Identifier for the last permission ID from the previous pagination request. + after: nil, + # Number of permissions to retrieve. + limit: nil, + # The order in which to retrieve permissions. + order: nil, + # The ID of the project to get permissions for. + project_id: nil, + request_options: {} + ); end sig do override .returns( diff --git a/rbi/lib/openai/models/fine_tuning/checkpoints/permission_retrieve_response.rbi b/rbi/lib/openai/models/fine_tuning/checkpoints/permission_retrieve_response.rbi index dc137a5f..95aa5332 100644 --- a/rbi/lib/openai/models/fine_tuning/checkpoints/permission_retrieve_response.rbi +++ b/rbi/lib/openai/models/fine_tuning/checkpoints/permission_retrieve_response.rbi @@ -78,8 +78,16 @@ module OpenAI object: Symbol ).returns(T.attached_class) end - def self.new(id:, created_at:, project_id:, object: :"checkpoint.permission"); end - + def self.new( + # The permission identifier, which can be referenced in the API endpoints. + id:, + # The Unix timestamp (in seconds) for when the permission was created. + created_at:, + # The project identifier that the permission is for. + project_id:, + # The object type, which is always "checkpoint.permission". + object: :"checkpoint.permission" + ); end sig { override.returns({id: String, created_at: Integer, object: Symbol, project_id: String}) } def to_hash; end end diff --git a/rbi/lib/openai/models/fine_tuning/fine_tuning_job.rbi b/rbi/lib/openai/models/fine_tuning/fine_tuning_job.rbi index 6e25d748..b9a0f929 100644 --- a/rbi/lib/openai/models/fine_tuning/fine_tuning_job.rbi +++ b/rbi/lib/openai/models/fine_tuning/fine_tuning_job.rbi @@ -145,24 +145,60 @@ module OpenAI .returns(T.attached_class) end def self.new( + # The object identifier, which can be referenced in the API endpoints. id:, + # The Unix timestamp (in seconds) for when the fine-tuning job was created. created_at:, + # For fine-tuning jobs that have `failed`, this will contain more information on + # the cause of the failure. error:, + # The name of the fine-tuned model that is being created. The value will be null + # if the fine-tuning job is still running. fine_tuned_model:, + # The Unix timestamp (in seconds) for when the fine-tuning job was finished. The + # value will be null if the fine-tuning job is still running. finished_at:, + # The hyperparameters used for the fine-tuning job. This value will only be + # returned when running `supervised` jobs. hyperparameters:, + # The base model that is being fine-tuned. model:, + # The organization that owns the fine-tuning job. organization_id:, + # The compiled results file ID(s) for the fine-tuning job. You can retrieve the + # results with the + # [Files API](https://platform.openai.com/docs/api-reference/files/retrieve-contents). result_files:, + # The seed used for the fine-tuning job. seed:, + # The current status of the fine-tuning job, which can be either + # `validating_files`, `queued`, `running`, `succeeded`, `failed`, or `cancelled`. status:, + # The total number of billable tokens processed by this fine-tuning job. The value + # will be null if the fine-tuning job is still running. trained_tokens:, + # The file ID used for training. You can retrieve the training data with the + # [Files API](https://platform.openai.com/docs/api-reference/files/retrieve-contents). training_file:, + # The file ID used for validation. You can retrieve the validation results with + # the + # [Files API](https://platform.openai.com/docs/api-reference/files/retrieve-contents). validation_file:, + # The Unix timestamp (in seconds) for when the fine-tuning job is estimated to + # finish. The value will be null if the fine-tuning job is not running. estimated_finish: nil, + # A list of integrations to enable for this fine-tuning job. integrations: nil, + # 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: nil, + # The method used for fine-tuning. method_: nil, + # The object type, which is always "fine_tuning.job". object: :"fine_tuning.job" ); end sig do @@ -210,8 +246,15 @@ module OpenAI # For fine-tuning jobs that have `failed`, this will contain more information on # the cause of the failure. sig { params(code: String, message: String, param: T.nilable(String)).returns(T.attached_class) } - def self.new(code:, message:, param:); end - + def self.new( + # A machine-readable error code. + code:, + # A human-readable error message. + message:, + # The parameter that was invalid, usually `training_file` or `validation_file`. + # This field will be null if the failure was not parameter-specific. + param: + ); end sig { override.returns({code: String, message: String, param: T.nilable(String)}) } def to_hash; end end @@ -251,8 +294,17 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(batch_size: nil, learning_rate_multiplier: nil, n_epochs: nil); end - + def self.new( + # Number of examples in each batch. A larger batch size means that model + # parameters are updated less frequently, but with lower variance. + batch_size: nil, + # Scaling factor for the learning rate. A smaller learning rate may be useful to + # avoid overfitting. + learning_rate_multiplier: nil, + # The number of epochs to train the model for. An epoch refers to one full cycle + # through the training dataset. + n_epochs: nil + ); end sig do override .returns( @@ -349,8 +401,14 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(dpo: nil, supervised: nil, type: nil); end - + def self.new( + # Configuration for the DPO fine-tuning method. + dpo: nil, + # Configuration for the supervised fine-tuning method. + supervised: nil, + # The type of method. Is either `supervised` or `dpo`. + type: nil + ); end sig do override .returns( @@ -383,8 +441,10 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(hyperparameters: nil); end - + def self.new( + # The hyperparameters used for the fine-tuning job. + hyperparameters: nil + ); end sig do override .returns({hyperparameters: OpenAI::Models::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters}) @@ -434,8 +494,20 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(batch_size: nil, beta: nil, learning_rate_multiplier: nil, n_epochs: nil); end - + def self.new( + # Number of examples in each batch. A larger batch size means that model + # parameters are updated less frequently, but with lower variance. + batch_size: nil, + # The beta value for the DPO method. A higher beta value will increase the weight + # of the penalty between the policy and reference model. + beta: nil, + # Scaling factor for the learning rate. A smaller learning rate may be useful to + # avoid overfitting. + learning_rate_multiplier: nil, + # The number of epochs to train the model for. An epoch refers to one full cycle + # through the training dataset. + n_epochs: nil + ); end sig do override .returns( @@ -513,8 +585,10 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(hyperparameters: nil); end - + def self.new( + # The hyperparameters used for the fine-tuning job. + hyperparameters: nil + ); end sig do override .returns({hyperparameters: OpenAI::Models::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters}) @@ -555,8 +629,17 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(batch_size: nil, learning_rate_multiplier: nil, n_epochs: nil); end - + def self.new( + # Number of examples in each batch. A larger batch size means that model + # parameters are updated less frequently, but with lower variance. + batch_size: nil, + # Scaling factor for the learning rate. A smaller learning rate may be useful to + # avoid overfitting. + learning_rate_multiplier: nil, + # The number of epochs to train the model for. An epoch refers to one full cycle + # through the training dataset. + n_epochs: nil + ); end sig do override .returns( diff --git a/rbi/lib/openai/models/fine_tuning/fine_tuning_job_event.rbi b/rbi/lib/openai/models/fine_tuning/fine_tuning_job_event.rbi index ea515e0f..bae007c6 100644 --- a/rbi/lib/openai/models/fine_tuning/fine_tuning_job_event.rbi +++ b/rbi/lib/openai/models/fine_tuning/fine_tuning_job_event.rbi @@ -52,16 +52,21 @@ module OpenAI .returns(T.attached_class) end def self.new( + # The object identifier. id:, + # The Unix timestamp (in seconds) for when the fine-tuning job was created. created_at:, + # The log level of the event. level:, + # The message of the event. message:, + # The data associated with the event. data: nil, + # The type of event. type: nil, + # The object type, which is always "fine_tuning.job.event". object: :"fine_tuning.job.event" - ) - end - + ); end sig do override .returns( diff --git a/rbi/lib/openai/models/fine_tuning/fine_tuning_job_wandb_integration.rbi b/rbi/lib/openai/models/fine_tuning/fine_tuning_job_wandb_integration.rbi index ba0eda55..f177e1fc 100644 --- a/rbi/lib/openai/models/fine_tuning/fine_tuning_job_wandb_integration.rbi +++ b/rbi/lib/openai/models/fine_tuning/fine_tuning_job_wandb_integration.rbi @@ -36,8 +36,21 @@ module OpenAI params(project: String, entity: T.nilable(String), name: T.nilable(String), tags: T::Array[String]) .returns(T.attached_class) end - def self.new(project:, entity: nil, name: nil, tags: nil); end - + def self.new( + # The name of the project that the new run will be created under. + project:, + # The entity to use for the run. This allows you to set the team or username of + # the WandB user that you would like associated with the run. If not set, the + # default entity for the registered WandB API key is used. + entity: nil, + # A display name to set for the run. If not set, we will use the Job ID as the + # name. + name: nil, + # A list of tags to be attached to the newly created run. These tags are passed + # through directly to WandB. Some default tags are generated by OpenAI: + # "openai/finetune", "openai/{base-model}", "openai/{ftjob-abcdef}". + tags: nil + ); end sig do override .returns({ diff --git a/rbi/lib/openai/models/fine_tuning/fine_tuning_job_wandb_integration_object.rbi b/rbi/lib/openai/models/fine_tuning/fine_tuning_job_wandb_integration_object.rbi index 5c771091..2b2e10d9 100644 --- a/rbi/lib/openai/models/fine_tuning/fine_tuning_job_wandb_integration_object.rbi +++ b/rbi/lib/openai/models/fine_tuning/fine_tuning_job_wandb_integration_object.rbi @@ -28,8 +28,15 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(wandb:, type: :wandb); end - + def self.new( + # The settings for your integration with Weights and Biases. This payload + # specifies the project that metrics will be sent to. Optionally, you can set an + # explicit display name for your run, add tags to your run, and set a default + # entity (team, username, etc) to be associated with your run. + wandb:, + # The type of the integration being enabled for the fine-tuning job + type: :wandb + ); end sig { override.returns({type: Symbol, wandb: OpenAI::Models::FineTuning::FineTuningJobWandbIntegration}) } def to_hash; end end diff --git a/rbi/lib/openai/models/fine_tuning/job_create_params.rbi b/rbi/lib/openai/models/fine_tuning/job_create_params.rbi index 13b9cfae..af70cdc3 100644 --- a/rbi/lib/openai/models/fine_tuning/job_create_params.rbi +++ b/rbi/lib/openai/models/fine_tuning/job_create_params.rbi @@ -114,14 +114,63 @@ module OpenAI .returns(T.attached_class) end def self.new( + # The name of the model to fine-tune. You can select one of the + # [supported models](https://platform.openai.com/docs/guides/fine-tuning#which-models-can-be-fine-tuned). model:, + # The ID of an uploaded file that contains training data. + # + # See [upload file](https://platform.openai.com/docs/api-reference/files/create) + # for how to upload a file. + # + # Your dataset must be formatted as a JSONL file. Additionally, you must upload + # your file with the purpose `fine-tune`. + # + # The contents of the file should differ depending on if the model uses the + # [chat](https://platform.openai.com/docs/api-reference/fine-tuning/chat-input), + # [completions](https://platform.openai.com/docs/api-reference/fine-tuning/completions-input) + # format, or if the fine-tuning method uses the + # [preference](https://platform.openai.com/docs/api-reference/fine-tuning/preference-input) + # format. + # + # See the [fine-tuning guide](https://platform.openai.com/docs/guides/fine-tuning) + # for more details. training_file:, + # The hyperparameters used for the fine-tuning job. This value is now deprecated + # in favor of `method`, and should be passed in under the `method` parameter. hyperparameters: nil, + # A list of integrations to enable for your fine-tuning job. integrations: nil, + # 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: nil, + # The method used for fine-tuning. method_: nil, + # The seed controls the reproducibility of the job. Passing in the same seed and + # job parameters should produce the same results, but may differ in rare cases. If + # a seed is not specified, one will be generated for you. seed: nil, + # A string of up to 64 characters that will be added to your fine-tuned model + # name. + # + # For example, a `suffix` of "custom-model-name" would produce a model name like + # `ft:gpt-4o-mini:openai:custom-model-name:7p4lURel`. suffix: nil, + # The ID of an uploaded file that contains validation data. + # + # If you provide this file, the data is used to generate validation metrics + # periodically during fine-tuning. These metrics can be viewed in the fine-tuning + # results file. The same data should not be present in both train and validation + # files. + # + # Your dataset must be formatted as a JSONL file. You must upload your file with + # the purpose `fine-tune`. + # + # See the [fine-tuning guide](https://platform.openai.com/docs/guides/fine-tuning) + # for more details. validation_file: nil, request_options: {} ); end @@ -196,8 +245,17 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(batch_size: nil, learning_rate_multiplier: nil, n_epochs: nil); end - + def self.new( + # Number of examples in each batch. A larger batch size means that model + # parameters are updated less frequently, but with lower variance. + batch_size: nil, + # Scaling factor for the learning rate. A smaller learning rate may be useful to + # avoid overfitting. + learning_rate_multiplier: nil, + # The number of epochs to train the model for. An epoch refers to one full cycle + # through the training dataset. + n_epochs: nil + ); end sig do override .returns( @@ -266,8 +324,16 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(wandb:, type: :wandb); end - + def self.new( + # The settings for your integration with Weights and Biases. This payload + # specifies the project that metrics will be sent to. Optionally, you can set an + # explicit display name for your run, add tags to your run, and set a default + # entity (team, username, etc) to be associated with your run. + wandb:, + # The type of integration to enable. Currently, only "wandb" (Weights and Biases) + # is supported. + type: :wandb + ); end sig { override.returns({type: Symbol, wandb: OpenAI::Models::FineTuning::JobCreateParams::Integration::Wandb}) } def to_hash; end @@ -309,8 +375,21 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(project:, entity: nil, name: nil, tags: nil); end - + def self.new( + # The name of the project that the new run will be created under. + project:, + # The entity to use for the run. This allows you to set the team or username of + # the WandB user that you would like associated with the run. If not set, the + # default entity for the registered WandB API key is used. + entity: nil, + # A display name to set for the run. If not set, we will use the Job ID as the + # name. + name: nil, + # A list of tags to be attached to the newly created run. These tags are passed + # through directly to WandB. Some default tags are generated by OpenAI: + # "openai/finetune", "openai/{base-model}", "openai/{ftjob-abcdef}". + tags: nil + ); end sig do override .returns({ @@ -363,8 +442,14 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(dpo: nil, supervised: nil, type: nil); end - + def self.new( + # Configuration for the DPO fine-tuning method. + dpo: nil, + # Configuration for the supervised fine-tuning method. + supervised: nil, + # The type of method. Is either `supervised` or `dpo`. + type: nil + ); end sig do override .returns( @@ -403,8 +488,10 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(hyperparameters: nil); end - + def self.new( + # The hyperparameters used for the fine-tuning job. + hyperparameters: nil + ); end sig do override .returns({hyperparameters: OpenAI::Models::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters}) @@ -454,8 +541,20 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(batch_size: nil, beta: nil, learning_rate_multiplier: nil, n_epochs: nil); end - + def self.new( + # Number of examples in each batch. A larger batch size means that model + # parameters are updated less frequently, but with lower variance. + batch_size: nil, + # The beta value for the DPO method. A higher beta value will increase the weight + # of the penalty between the policy and reference model. + beta: nil, + # Scaling factor for the learning rate. A smaller learning rate may be useful to + # avoid overfitting. + learning_rate_multiplier: nil, + # The number of epochs to train the model for. An epoch refers to one full cycle + # through the training dataset. + n_epochs: nil + ); end sig do override .returns( @@ -533,8 +632,10 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(hyperparameters: nil); end - + def self.new( + # The hyperparameters used for the fine-tuning job. + hyperparameters: nil + ); end sig do override .returns( @@ -577,8 +678,17 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(batch_size: nil, learning_rate_multiplier: nil, n_epochs: nil); end - + def self.new( + # Number of examples in each batch. A larger batch size means that model + # parameters are updated less frequently, but with lower variance. + batch_size: nil, + # Scaling factor for the learning rate. A smaller learning rate may be useful to + # avoid overfitting. + learning_rate_multiplier: nil, + # The number of epochs to train the model for. An epoch refers to one full cycle + # through the training dataset. + n_epochs: nil + ); end sig do override .returns( diff --git a/rbi/lib/openai/models/fine_tuning/job_list_events_params.rbi b/rbi/lib/openai/models/fine_tuning/job_list_events_params.rbi index 4c6e5963..9bfe0d0a 100644 --- a/rbi/lib/openai/models/fine_tuning/job_list_events_params.rbi +++ b/rbi/lib/openai/models/fine_tuning/job_list_events_params.rbi @@ -29,8 +29,13 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(after: nil, limit: nil, request_options: {}); end - + def self.new( + # Identifier for the last event from the previous pagination request. + after: nil, + # Number of events to retrieve. + limit: nil, + request_options: {} + ); end sig { override.returns({after: String, limit: Integer, request_options: OpenAI::RequestOptions}) } def to_hash; end end diff --git a/rbi/lib/openai/models/fine_tuning/job_list_params.rbi b/rbi/lib/openai/models/fine_tuning/job_list_params.rbi index 49bc0f41..21062f5c 100644 --- a/rbi/lib/openai/models/fine_tuning/job_list_params.rbi +++ b/rbi/lib/openai/models/fine_tuning/job_list_params.rbi @@ -35,8 +35,16 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(after: nil, limit: nil, metadata: nil, request_options: {}); end - + def self.new( + # Identifier for the last job from the previous pagination request. + after: nil, + # Number of fine-tuning jobs to retrieve. + limit: nil, + # Optional metadata filter. To filter, use the syntax `metadata[k]=v`. + # Alternatively, set `metadata=null` to indicate no metadata. + metadata: nil, + request_options: {} + ); end sig do override .returns( diff --git a/rbi/lib/openai/models/fine_tuning/jobs/checkpoint_list_params.rbi b/rbi/lib/openai/models/fine_tuning/jobs/checkpoint_list_params.rbi index fee17bda..27afbe12 100644 --- a/rbi/lib/openai/models/fine_tuning/jobs/checkpoint_list_params.rbi +++ b/rbi/lib/openai/models/fine_tuning/jobs/checkpoint_list_params.rbi @@ -30,8 +30,13 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(after: nil, limit: nil, request_options: {}); end - + def self.new( + # Identifier for the last checkpoint ID from the previous pagination request. + after: nil, + # Number of checkpoints to retrieve. + limit: nil, + request_options: {} + ); end sig { override.returns({after: String, limit: Integer, request_options: OpenAI::RequestOptions}) } def to_hash; end end diff --git a/rbi/lib/openai/models/fine_tuning/jobs/fine_tuning_job_checkpoint.rbi b/rbi/lib/openai/models/fine_tuning/jobs/fine_tuning_job_checkpoint.rbi index 7c253eca..527bf6e5 100644 --- a/rbi/lib/openai/models/fine_tuning/jobs/fine_tuning_job_checkpoint.rbi +++ b/rbi/lib/openai/models/fine_tuning/jobs/fine_tuning_job_checkpoint.rbi @@ -56,12 +56,19 @@ module OpenAI .returns(T.attached_class) end def self.new( + # The checkpoint identifier, which can be referenced in the API endpoints. id:, + # The Unix timestamp (in seconds) for when the checkpoint was created. created_at:, + # The name of the fine-tuned checkpoint model that is created. fine_tuned_model_checkpoint:, + # The name of the fine-tuning job that this checkpoint was created from. fine_tuning_job_id:, + # Metrics at the step number during the fine-tuning job. metrics:, + # The step number that the checkpoint was created at. step_number:, + # The object type, which is always "fine_tuning.job.checkpoint". object: :"fine_tuning.job.checkpoint" ); end sig do diff --git a/rbi/lib/openai/models/function_definition.rbi b/rbi/lib/openai/models/function_definition.rbi index 0351f239..bed3cc2c 100644 --- a/rbi/lib/openai/models/function_definition.rbi +++ b/rbi/lib/openai/models/function_definition.rbi @@ -46,8 +46,28 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(name:, description: nil, parameters: nil, strict: nil); end - + def self.new( + # The name of the function to be called. Must be a-z, A-Z, 0-9, or contain + # underscores and dashes, with a maximum length of 64. + name:, + # A description of what the function does, used by the model to choose when and + # how to call the function. + description: nil, + # The parameters the functions accepts, described as a JSON Schema object. See the + # [guide](https://platform.openai.com/docs/guides/function-calling) for examples, + # and the + # [JSON Schema reference](https://json-schema.org/understanding-json-schema/) for + # documentation about the format. + # + # Omitting `parameters` defines a function with an empty parameter list. + parameters: nil, + # Whether to enable strict schema adherence when generating the function call. If + # set to true, the model will follow the exact schema defined in the `parameters` + # field. Only a subset of JSON Schema is supported when `strict` is `true`. Learn + # more about Structured Outputs in the + # [function calling guide](docs/guides/function-calling). + strict: nil + ); end sig do override .returns( diff --git a/rbi/lib/openai/models/image.rbi b/rbi/lib/openai/models/image.rbi index cf15fc93..fa3f7278 100644 --- a/rbi/lib/openai/models/image.rbi +++ b/rbi/lib/openai/models/image.rbi @@ -30,8 +30,18 @@ module OpenAI # Represents the content or the URL of an image generated by the OpenAI API. sig { params(b64_json: String, revised_prompt: String, url: String).returns(T.attached_class) } - def self.new(b64_json: nil, revised_prompt: nil, url: nil); end - + def self.new( + # The base64-encoded JSON of the generated image. Default value for `gpt-image-1`, + # and only present if `response_format` is set to `b64_json` for `dall-e-2` and + # `dall-e-3`. + b64_json: nil, + # For `dall-e-3` only, the revised prompt that was used to generate the image. + revised_prompt: nil, + # When using `dall-e-2` or `dall-e-3`, the URL of the generated image if + # `response_format` is set to `url` (default value). Unsupported for + # `gpt-image-1`. + url: nil + ); end sig { override.returns({b64_json: String, revised_prompt: String, url: String}) } def to_hash; end end diff --git a/rbi/lib/openai/models/image_create_variation_params.rbi b/rbi/lib/openai/models/image_create_variation_params.rbi index c2d38787..96899fe5 100644 --- a/rbi/lib/openai/models/image_create_variation_params.rbi +++ b/rbi/lib/openai/models/image_create_variation_params.rbi @@ -53,16 +53,27 @@ module OpenAI .returns(T.attached_class) end def self.new( + # The image to use as the basis for the variation(s). Must be a valid PNG file, + # less than 4MB, and square. image:, + # The model to use for image generation. Only `dall-e-2` is supported at this + # time. model: nil, + # The number of images to generate. Must be between 1 and 10. n: nil, + # The format in which the generated images are returned. Must be one of `url` or + # `b64_json`. URLs are only valid for 60 minutes after the image has been + # generated. response_format: nil, + # The size of the generated images. Must be one of `256x256`, `512x512`, or + # `1024x1024`. size: nil, + # A unique identifier representing your end-user, which can help OpenAI to monitor + # and detect abuse. + # [Learn more](https://platform.openai.com/docs/guides/safety-best-practices#end-user-ids). user: nil, request_options: {} - ) - end - + ); end sig do override .returns( diff --git a/rbi/lib/openai/models/image_edit_params.rbi b/rbi/lib/openai/models/image_edit_params.rbi index 922d5db6..68d09cd7 100644 --- a/rbi/lib/openai/models/image_edit_params.rbi +++ b/rbi/lib/openai/models/image_edit_params.rbi @@ -82,14 +82,41 @@ module OpenAI .returns(T.attached_class) end def self.new( + # The image(s) to edit. Must be a supported image file or an array of images. For + # `gpt-image-1`, each image should be a `png`, `webp`, or `jpg` file less than + # 25MB. For `dall-e-2`, you can only provide one image, and it should be a square + # `png` file less than 4MB. image:, + # A text description of the desired image(s). The maximum length is 1000 + # characters for `dall-e-2`, and 32000 characters for `gpt-image-1`. prompt:, + # An additional image whose fully transparent areas (e.g. where alpha is zero) + # indicate where `image` should be edited. If there are multiple images provided, + # the mask will be applied on the first image. Must be a valid PNG file, less than + # 4MB, and have the same dimensions as `image`. mask: nil, + # The model to use for image generation. Only `dall-e-2` and `gpt-image-1` are + # supported. Defaults to `dall-e-2` unless a parameter specific to `gpt-image-1` + # is used. model: nil, + # The number of images to generate. Must be between 1 and 10. n: nil, + # The quality of the image that will be generated. `high`, `medium` and `low` are + # only supported for `gpt-image-1`. `dall-e-2` only supports `standard` quality. + # Defaults to `auto`. quality: nil, + # The format in which the generated images are returned. Must be one of `url` or + # `b64_json`. URLs are only valid for 60 minutes after the image has been + # generated. This parameter is only supported for `dall-e-2`, as `gpt-image-1` + # will always return base64-encoded images. response_format: nil, + # The size of the generated images. Must be one of `1024x1024`, `1536x1024` + # (landscape), `1024x1536` (portrait), or `auto` (default value) for + # `gpt-image-1`, and one of `256x256`, `512x512`, or `1024x1024` for `dall-e-2`. size: nil, + # A unique identifier representing your end-user, which can help OpenAI to monitor + # and detect abuse. + # [Learn more](https://platform.openai.com/docs/guides/safety-best-practices#end-user-ids). user: nil, request_options: {} ); end diff --git a/rbi/lib/openai/models/image_generate_params.rbi b/rbi/lib/openai/models/image_generate_params.rbi index 0ee05de0..3dd3c2e4 100644 --- a/rbi/lib/openai/models/image_generate_params.rbi +++ b/rbi/lib/openai/models/image_generate_params.rbi @@ -108,17 +108,61 @@ module OpenAI .returns(T.attached_class) end def self.new( + # A text description of the desired image(s). The maximum length is 32000 + # characters for `gpt-image-1`, 1000 characters for `dall-e-2` and 4000 characters + # for `dall-e-3`. prompt:, + # Allows to set transparency for the background of the generated image(s). This + # parameter is only supported for `gpt-image-1`. Must be one of `transparent`, + # `opaque` or `auto` (default value). When `auto` is used, the model will + # automatically determine the best background for the image. + # + # If `transparent`, the output format needs to support transparency, so it should + # be set to either `png` (default value) or `webp`. background: nil, + # The model to use for image generation. One of `dall-e-2`, `dall-e-3`, or + # `gpt-image-1`. Defaults to `dall-e-2` unless a parameter specific to + # `gpt-image-1` is used. model: nil, + # Control the content-moderation level for images generated by `gpt-image-1`. Must + # be either `low` for less restrictive filtering or `auto` (default value). moderation: nil, + # The number of images to generate. Must be between 1 and 10. For `dall-e-3`, only + # `n=1` is supported. n: nil, + # The compression level (0-100%) for the generated images. This parameter is only + # supported for `gpt-image-1` with the `webp` or `jpeg` output formats, and + # defaults to 100. output_compression: nil, + # The format in which the generated images are returned. This parameter is only + # supported for `gpt-image-1`. Must be one of `png`, `jpeg`, or `webp`. output_format: nil, + # The quality of the image that will be generated. + # + # - `auto` (default value) will automatically select the best quality for the + # given model. + # - `high`, `medium` and `low` are supported for `gpt-image-1`. + # - `hd` and `standard` are supported for `dall-e-3`. + # - `standard` is the only option for `dall-e-2`. quality: nil, + # The format in which generated images with `dall-e-2` and `dall-e-3` are + # returned. Must be one of `url` or `b64_json`. URLs are only valid for 60 minutes + # after the image has been generated. This parameter isn't supported for + # `gpt-image-1` which will always return base64-encoded images. response_format: nil, + # The size of the generated images. Must be one of `1024x1024`, `1536x1024` + # (landscape), `1024x1536` (portrait), or `auto` (default value) for + # `gpt-image-1`, one of `256x256`, `512x512`, or `1024x1024` for `dall-e-2`, and + # one of `1024x1024`, `1792x1024`, or `1024x1792` for `dall-e-3`. size: nil, + # The style of the generated images. This parameter is only supported for + # `dall-e-3`. Must be one of `vivid` or `natural`. Vivid causes the model to lean + # towards generating hyper-real and dramatic images. Natural causes the model to + # produce more natural, less hyper-real looking images. style: nil, + # A unique identifier representing your end-user, which can help OpenAI to monitor + # and detect abuse. + # [Learn more](https://platform.openai.com/docs/guides/safety-best-practices#end-user-ids). user: nil, request_options: {} ); end diff --git a/rbi/lib/openai/models/images_response.rbi b/rbi/lib/openai/models/images_response.rbi index be9cfe0e..cdfcd65f 100644 --- a/rbi/lib/openai/models/images_response.rbi +++ b/rbi/lib/openai/models/images_response.rbi @@ -30,8 +30,14 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(created:, data: nil, usage: nil); end - + def self.new( + # The Unix timestamp (in seconds) of when the image was created. + created:, + # The list of generated images. + data: nil, + # For `gpt-image-1` only, the token usage information for the image generation. + usage: nil + ); end sig do override .returns( @@ -75,8 +81,16 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(input_tokens:, input_tokens_details:, output_tokens:, total_tokens:); end - + def self.new( + # The number of tokens (images and text) in the input prompt. + input_tokens:, + # The input tokens detailed information for the image generation. + input_tokens_details:, + # The number of image tokens in the output image. + output_tokens:, + # The total number of tokens (images and text) used for the image generation. + total_tokens: + ); end sig do override .returns( @@ -101,8 +115,12 @@ module OpenAI # The input tokens detailed information for the image generation. sig { params(image_tokens: Integer, text_tokens: Integer).returns(T.attached_class) } - def self.new(image_tokens:, text_tokens:); end - + def self.new( + # The number of image tokens in the input prompt. + image_tokens:, + # The number of text tokens in the input prompt. + text_tokens: + ); end sig { override.returns({image_tokens: Integer, text_tokens: Integer}) } def to_hash; end end diff --git a/rbi/lib/openai/models/model.rbi b/rbi/lib/openai/models/model.rbi index b7dfa10a..06ccb9b5 100644 --- a/rbi/lib/openai/models/model.rbi +++ b/rbi/lib/openai/models/model.rbi @@ -21,8 +21,16 @@ module OpenAI # Describes an OpenAI model offering that can be used with the API. sig { params(id: String, created: Integer, owned_by: String, object: Symbol).returns(T.attached_class) } - def self.new(id:, created:, owned_by:, object: :model); end - + def self.new( + # The model identifier, which can be referenced in the API endpoints. + id:, + # The Unix timestamp (in seconds) when the model was created. + created:, + # The organization that owns the model. + owned_by:, + # The object type, which is always "model". + object: :model + ); end sig { override.returns({id: String, created: Integer, object: Symbol, owned_by: String}) } def to_hash; end end diff --git a/rbi/lib/openai/models/moderation.rbi b/rbi/lib/openai/models/moderation.rbi index 7c63a9f8..8f8c32af 100644 --- a/rbi/lib/openai/models/moderation.rbi +++ b/rbi/lib/openai/models/moderation.rbi @@ -42,8 +42,16 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(categories:, category_applied_input_types:, category_scores:, flagged:); end - + def self.new( + # A list of the categories, and whether they are flagged or not. + categories:, + # A list of the categories along with the input type(s) that the score applies to. + category_applied_input_types:, + # A list of the categories along with their scores as predicted by model. + category_scores:, + # Whether any of the below categories are flagged. + flagged: + ); end sig do override .returns( @@ -147,18 +155,48 @@ module OpenAI .returns(T.attached_class) end def self.new( + # Content that expresses, incites, or promotes harassing language towards any + # target. harassment:, + # Harassment content that also includes violence or serious harm towards any + # target. harassment_threatening:, + # Content that expresses, incites, or promotes hate based on race, gender, + # ethnicity, religion, nationality, sexual orientation, disability status, or + # caste. Hateful content aimed at non-protected groups (e.g., chess players) is + # harassment. hate:, + # Hateful content that also includes violence or serious harm towards the targeted + # group based on race, gender, ethnicity, religion, nationality, sexual + # orientation, disability status, or caste. hate_threatening:, + # Content that includes instructions or advice that facilitate the planning or + # execution of wrongdoing, or that gives advice or instruction on how to commit + # illicit acts. For example, "how to shoplift" would fit this category. illicit:, + # Content that includes instructions or advice that facilitate the planning or + # execution of wrongdoing that also includes violence, or that gives advice or + # instruction on the procurement of any weapon. illicit_violent:, + # Content that promotes, encourages, or depicts acts of self-harm, such as + # suicide, cutting, and eating disorders. self_harm:, + # Content that encourages performing acts of self-harm, such as suicide, cutting, + # and eating disorders, or that gives instructions or advice on how to commit such + # acts. self_harm_instructions:, + # Content where the speaker expresses that they are engaging or intend to engage + # in acts of self-harm, such as suicide, cutting, and eating disorders. self_harm_intent:, + # Content meant to arouse sexual excitement, such as the description of sexual + # activity, or that promotes sexual services (excluding sex education and + # wellness). sexual:, + # Sexual content that includes an individual who is under 18 years old. sexual_minors:, + # Content that depicts death, violence, or physical injury. violence:, + # Content that depicts death, violence, or physical injury in graphic detail. violence_graphic: ); end sig do @@ -265,18 +303,31 @@ module OpenAI .returns(T.attached_class) end def self.new( + # The applied input type(s) for the category 'harassment'. harassment:, + # The applied input type(s) for the category 'harassment/threatening'. harassment_threatening:, + # The applied input type(s) for the category 'hate'. hate:, + # The applied input type(s) for the category 'hate/threatening'. hate_threatening:, + # The applied input type(s) for the category 'illicit'. illicit:, + # The applied input type(s) for the category 'illicit/violent'. illicit_violent:, + # The applied input type(s) for the category 'self-harm'. self_harm:, + # The applied input type(s) for the category 'self-harm/instructions'. self_harm_instructions:, + # The applied input type(s) for the category 'self-harm/intent'. self_harm_intent:, + # The applied input type(s) for the category 'sexual'. sexual:, + # The applied input type(s) for the category 'sexual/minors'. sexual_minors:, + # The applied input type(s) for the category 'violence'. violence:, + # The applied input type(s) for the category 'violence/graphic'. violence_graphic: ); end sig do @@ -582,18 +633,31 @@ module OpenAI .returns(T.attached_class) end def self.new( + # The score for the category 'harassment'. harassment:, + # The score for the category 'harassment/threatening'. harassment_threatening:, + # The score for the category 'hate'. hate:, + # The score for the category 'hate/threatening'. hate_threatening:, + # The score for the category 'illicit'. illicit:, + # The score for the category 'illicit/violent'. illicit_violent:, + # The score for the category 'self-harm'. self_harm:, + # The score for the category 'self-harm/instructions'. self_harm_instructions:, + # The score for the category 'self-harm/intent'. self_harm_intent:, + # The score for the category 'sexual'. sexual:, + # The score for the category 'sexual/minors'. sexual_minors:, + # The score for the category 'violence'. violence:, + # The score for the category 'violence/graphic'. violence_graphic: ); end sig do diff --git a/rbi/lib/openai/models/moderation_create_params.rbi b/rbi/lib/openai/models/moderation_create_params.rbi index 707f700c..527e104f 100644 --- a/rbi/lib/openai/models/moderation_create_params.rbi +++ b/rbi/lib/openai/models/moderation_create_params.rbi @@ -47,8 +47,17 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(input:, model: nil, request_options: {}); end - + def self.new( + # Input (or inputs) to classify. Can be a single string, an array of strings, or + # an array of multi-modal input objects similar to other models. + input:, + # The content moderation model you would like to use. Learn more in + # [the moderation guide](https://platform.openai.com/docs/guides/moderation), and + # learn about available models + # [here](https://platform.openai.com/docs/models#moderation). + model: nil, + request_options: {} + ); end sig do override .returns( diff --git a/rbi/lib/openai/models/moderation_create_response.rbi b/rbi/lib/openai/models/moderation_create_response.rbi index 34f57350..7e78a995 100644 --- a/rbi/lib/openai/models/moderation_create_response.rbi +++ b/rbi/lib/openai/models/moderation_create_response.rbi @@ -24,8 +24,14 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(id:, model:, results:); end - + def self.new( + # The unique identifier for the moderation request. + id:, + # The model used to generate the moderation results. + model:, + # A list of moderation objects. + results: + ); end sig { override.returns({id: String, model: String, results: T::Array[OpenAI::Models::Moderation]}) } def to_hash; end end diff --git a/rbi/lib/openai/models/moderation_image_url_input.rbi b/rbi/lib/openai/models/moderation_image_url_input.rbi index fd241d15..091d5263 100644 --- a/rbi/lib/openai/models/moderation_image_url_input.rbi +++ b/rbi/lib/openai/models/moderation_image_url_input.rbi @@ -24,8 +24,12 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(image_url:, type: :image_url); end - + def self.new( + # Contains either an image URL or a data URL for a base64 encoded image. + image_url:, + # Always `image_url`. + type: :image_url + ); end sig { override.returns({image_url: OpenAI::Models::ModerationImageURLInput::ImageURL, type: Symbol}) } def to_hash; end @@ -36,8 +40,10 @@ module OpenAI # Contains either an image URL or a data URL for a base64 encoded image. sig { params(url: String).returns(T.attached_class) } - def self.new(url:); end - + def self.new( + # Either a URL of the image or the base64 encoded image data. + url: + ); end sig { override.returns({url: String}) } def to_hash; end end diff --git a/rbi/lib/openai/models/moderation_text_input.rbi b/rbi/lib/openai/models/moderation_text_input.rbi index cdb7c967..462e88ed 100644 --- a/rbi/lib/openai/models/moderation_text_input.rbi +++ b/rbi/lib/openai/models/moderation_text_input.rbi @@ -13,8 +13,12 @@ module OpenAI # An object describing text to classify. sig { params(text: String, type: Symbol).returns(T.attached_class) } - def self.new(text:, type: :text); end - + def self.new( + # A string of text to classify. + text:, + # Always `text`. + type: :text + ); end sig { override.returns({text: String, type: Symbol}) } def to_hash; end end diff --git a/rbi/lib/openai/models/other_file_chunking_strategy_object.rbi b/rbi/lib/openai/models/other_file_chunking_strategy_object.rbi index 0d6d06b0..5af14eda 100644 --- a/rbi/lib/openai/models/other_file_chunking_strategy_object.rbi +++ b/rbi/lib/openai/models/other_file_chunking_strategy_object.rbi @@ -11,8 +11,10 @@ module OpenAI # because the file was indexed before the `chunking_strategy` concept was # introduced in the API. sig { params(type: Symbol).returns(T.attached_class) } - def self.new(type: :other); end - + def self.new( + # Always `other`. + type: :other + ); end sig { override.returns({type: Symbol}) } def to_hash; end end diff --git a/rbi/lib/openai/models/reasoning.rbi b/rbi/lib/openai/models/reasoning.rbi index 1223bf2d..a54b00f4 100644 --- a/rbi/lib/openai/models/reasoning.rbi +++ b/rbi/lib/openai/models/reasoning.rbi @@ -38,8 +38,25 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(effort: nil, generate_summary: nil, summary: nil); end - + def self.new( + # **o-series models only** + # + # Constrains effort on reasoning for + # [reasoning models](https://platform.openai.com/docs/guides/reasoning). Currently + # supported values are `low`, `medium`, and `high`. Reducing reasoning effort can + # result in faster responses and fewer tokens used on reasoning in a response. + effort: nil, + # **Deprecated:** use `summary` instead. + # + # A summary of the reasoning performed by the model. This can be useful for + # debugging and understanding the model's reasoning process. One of `auto`, + # `concise`, or `detailed`. + generate_summary: nil, + # A summary of the reasoning performed by the model. This can be useful for + # debugging and understanding the model's reasoning process. One of `auto`, + # `concise`, or `detailed`. + summary: nil + ); end sig do override .returns( diff --git a/rbi/lib/openai/models/response_format_json_object.rbi b/rbi/lib/openai/models/response_format_json_object.rbi index caf63a9c..cb28d04a 100644 --- a/rbi/lib/openai/models/response_format_json_object.rbi +++ b/rbi/lib/openai/models/response_format_json_object.rbi @@ -11,8 +11,10 @@ module OpenAI # `json_schema` is recommended for models that support it. Note that the model # will not generate JSON without a system or user message instructing it to do so. sig { params(type: Symbol).returns(T.attached_class) } - def self.new(type: :json_object); end - + def self.new( + # The type of response format being defined. Always `json_object`. + type: :json_object + ); end sig { override.returns({type: Symbol}) } def to_hash; end end diff --git a/rbi/lib/openai/models/response_format_json_schema.rbi b/rbi/lib/openai/models/response_format_json_schema.rbi index 26bae2de..db50b7cd 100644 --- a/rbi/lib/openai/models/response_format_json_schema.rbi +++ b/rbi/lib/openai/models/response_format_json_schema.rbi @@ -29,8 +29,12 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(json_schema:, type: :json_schema); end - + def self.new( + # Structured Outputs configuration options, including a JSON Schema. + json_schema:, + # The type of response format being defined. Always `json_schema`. + type: :json_schema + ); end sig { override.returns({json_schema: OpenAI::Models::ResponseFormatJSONSchema::JSONSchema, type: Symbol}) } def to_hash; end @@ -74,8 +78,23 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(name:, description: nil, schema: nil, strict: nil); end - + def self.new( + # The name of the response format. Must be a-z, A-Z, 0-9, or contain underscores + # and dashes, with a maximum length of 64. + name:, + # A description of what the response format is for, used by the model to determine + # how to respond in the format. + description: nil, + # The schema for the response format, described as a JSON Schema object. Learn how + # to build JSON schemas [here](https://json-schema.org/). + schema: nil, + # Whether to enable strict schema adherence when generating the output. If set to + # true, the model will always follow the exact schema defined in the `schema` + # field. Only a subset of JSON Schema is supported when `strict` is `true`. To + # learn more, read the + # [Structured Outputs guide](https://platform.openai.com/docs/guides/structured-outputs). + strict: nil + ); end sig do override .returns( diff --git a/rbi/lib/openai/models/response_format_text.rbi b/rbi/lib/openai/models/response_format_text.rbi index ec7b0d03..f47d8756 100644 --- a/rbi/lib/openai/models/response_format_text.rbi +++ b/rbi/lib/openai/models/response_format_text.rbi @@ -9,8 +9,10 @@ module OpenAI # Default response format. Used to generate text responses. sig { params(type: Symbol).returns(T.attached_class) } - def self.new(type: :text); end - + def self.new( + # The type of response format being defined. Always `text`. + type: :text + ); end sig { override.returns({type: Symbol}) } def to_hash; end end diff --git a/rbi/lib/openai/models/responses/computer_tool.rbi b/rbi/lib/openai/models/responses/computer_tool.rbi index 50bedd4b..0223a583 100644 --- a/rbi/lib/openai/models/responses/computer_tool.rbi +++ b/rbi/lib/openai/models/responses/computer_tool.rbi @@ -31,8 +31,16 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(display_height:, display_width:, environment:, type: :computer_use_preview); end - + def self.new( + # The height of the computer display. + display_height:, + # The width of the computer display. + display_width:, + # The type of computer environment to control. + environment:, + # The type of the computer use tool. Always `computer_use_preview`. + type: :computer_use_preview + ); end sig do override .returns( diff --git a/rbi/lib/openai/models/responses/easy_input_message.rbi b/rbi/lib/openai/models/responses/easy_input_message.rbi index 8efd6fd4..698ad76f 100644 --- a/rbi/lib/openai/models/responses/easy_input_message.rbi +++ b/rbi/lib/openai/models/responses/easy_input_message.rbi @@ -57,8 +57,16 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(content:, role:, type: nil); end - + def self.new( + # Text, image, or audio input to the model, used to generate a response. Can also + # contain previous assistant responses. + content:, + # The role of the message input. One of `user`, `assistant`, `system`, or + # `developer`. + role:, + # The type of the message input. Always `message`. + type: nil + ); end sig do override .returns( diff --git a/rbi/lib/openai/models/responses/file_search_tool.rbi b/rbi/lib/openai/models/responses/file_search_tool.rbi index 6d579cea..12834382 100644 --- a/rbi/lib/openai/models/responses/file_search_tool.rbi +++ b/rbi/lib/openai/models/responses/file_search_tool.rbi @@ -58,14 +58,18 @@ module OpenAI .returns(T.attached_class) end def self.new( + # The IDs of the vector stores to search. vector_store_ids:, + # A filter to apply based on file attributes. filters: nil, + # The maximum number of results to return. This number should be between 1 and 50 + # inclusive. max_num_results: nil, + # Ranking options for search. ranking_options: nil, + # The type of the file search tool. Always `file_search`. type: :file_search - ) - end - + ); end sig do override .returns( @@ -113,8 +117,14 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(ranker: nil, score_threshold: nil); end - + def self.new( + # The ranker to use for the file search. + ranker: nil, + # The score threshold for the file search, a number between 0 and 1. Numbers + # closer to 1 will attempt to return only the most relevant results, but may + # return fewer results. + score_threshold: nil + ); end sig do override .returns( diff --git a/rbi/lib/openai/models/responses/function_tool.rbi b/rbi/lib/openai/models/responses/function_tool.rbi index 5d1008c2..5fa541bd 100644 --- a/rbi/lib/openai/models/responses/function_tool.rbi +++ b/rbi/lib/openai/models/responses/function_tool.rbi @@ -38,8 +38,19 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(name:, parameters:, strict:, description: nil, type: :function); end - + def self.new( + # The name of the function to call. + name:, + # A JSON schema object describing the parameters of the function. + parameters:, + # Whether to enforce strict parameter validation. Default `true`. + strict:, + # A description of the function. Used by the model to determine whether or not to + # call the function. + description: nil, + # The type of the function tool. Always `function`. + type: :function + ); end sig do override .returns( diff --git a/rbi/lib/openai/models/responses/input_item_list_params.rbi b/rbi/lib/openai/models/responses/input_item_list_params.rbi index 9699e037..3ea133cb 100644 --- a/rbi/lib/openai/models/responses/input_item_list_params.rbi +++ b/rbi/lib/openai/models/responses/input_item_list_params.rbi @@ -58,8 +58,24 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(after: nil, before: nil, include: nil, limit: nil, order: nil, request_options: {}); end - + def self.new( + # An item ID to list items after, used in pagination. + after: nil, + # An item ID to list items before, used in pagination. + before: nil, + # Additional fields to include in the response. See the `include` parameter for + # Response creation above for more information. + include: nil, + # A limit on the number of objects to be returned. Limit can range between 1 and + # 100, and the default is 20. + limit: nil, + # The order to return the input items in. Default is `asc`. + # + # - `asc`: Return the input items in ascending order. + # - `desc`: Return the input items in descending order. + order: nil, + request_options: {} + ); end sig do override .returns( diff --git a/rbi/lib/openai/models/responses/response.rbi b/rbi/lib/openai/models/responses/response.rbi index 5e5dacba..189001b8 100644 --- a/rbi/lib/openai/models/responses/response.rbi +++ b/rbi/lib/openai/models/responses/response.rbi @@ -297,28 +297,130 @@ module OpenAI .returns(T.attached_class) end def self.new( + # Unique identifier for this Response. id:, + # Unix timestamp (in seconds) of when this Response was created. created_at:, + # An error object returned when the model fails to generate a Response. error:, + # Details about why the response is incomplete. incomplete_details:, + # Inserts a system (or developer) message as the first item in the model's + # context. + # + # When using along with `previous_response_id`, the instructions from a previous + # response will not be carried over to the next response. This makes it simple to + # swap out system (or developer) messages in new responses. instructions:, + # 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:, + # Model ID used to generate the response, like `gpt-4o` or `o3`. OpenAI offers a + # wide range of models with different capabilities, performance characteristics, + # and price points. Refer to the + # [model guide](https://platform.openai.com/docs/models) to browse and compare + # available models. model:, + # An array of content items generated by the model. + # + # - The length and order of items in the `output` array is dependent on the + # model's response. + # - Rather than accessing the first item in the `output` array and assuming it's + # an `assistant` message with the content generated by the model, you might + # consider using the `output_text` property where supported in SDKs. output:, + # Whether to allow the model to run tool calls in parallel. parallel_tool_calls:, + # 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. We generally recommend altering this or `top_p` but + # not both. temperature:, + # How the model should select which tool (or tools) to use when generating a + # response. See the `tools` parameter to see how to specify which tools the model + # can call. tool_choice:, + # An array of tools the model may call while generating a response. You can + # specify which tool to use by setting the `tool_choice` parameter. + # + # The two categories of tools you can provide the model are: + # + # - **Built-in tools**: Tools that are provided by OpenAI that extend the model's + # capabilities, like + # [web search](https://platform.openai.com/docs/guides/tools-web-search) or + # [file search](https://platform.openai.com/docs/guides/tools-file-search). + # Learn more about + # [built-in tools](https://platform.openai.com/docs/guides/tools). + # - **Function calls (custom tools)**: Functions that are defined by you, enabling + # the model to call your own code. Learn more about + # [function calling](https://platform.openai.com/docs/guides/function-calling). tools:, + # 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. top_p:, + # An upper bound for the number of tokens that can be generated for a response, + # including visible output tokens and + # [reasoning tokens](https://platform.openai.com/docs/guides/reasoning). max_output_tokens: nil, + # The unique ID of the previous response to the model. Use this to create + # multi-turn conversations. Learn more about + # [conversation state](https://platform.openai.com/docs/guides/conversation-state). previous_response_id: nil, + # **o-series models only** + # + # Configuration options for + # [reasoning models](https://platform.openai.com/docs/guides/reasoning). reasoning: nil, + # Specifies the latency tier to use for processing the request. This parameter is + # relevant for customers subscribed to the scale tier service: + # + # - If set to 'auto', and the Project is Scale tier enabled, the system will + # utilize scale tier credits until they are exhausted. + # - If set to 'auto', and the Project is not Scale tier enabled, the request will + # be processed using the default service tier with a lower uptime SLA and no + # latency guarentee. + # - If set to 'default', the request will be processed using the default service + # tier with a lower uptime SLA and no latency guarentee. + # - If set to 'flex', the request will be processed with the Flex Processing + # service tier. + # [Learn more](https://platform.openai.com/docs/guides/flex-processing). + # - When not set, the default behavior is 'auto'. + # + # When this parameter is set, the response body will include the `service_tier` + # utilized. service_tier: nil, + # The status of the response generation. One of `completed`, `failed`, + # `in_progress`, or `incomplete`. status: nil, + # Configuration options for a text response from the model. Can be plain text or + # structured JSON data. Learn more: + # + # - [Text inputs and outputs](https://platform.openai.com/docs/guides/text) + # - [Structured Outputs](https://platform.openai.com/docs/guides/structured-outputs) text: nil, + # The truncation strategy to use for the model response. + # + # - `auto`: If the context of this response and previous ones exceeds the model's + # context window size, the model will truncate the response to fit the context + # window by dropping input items in the middle of the conversation. + # - `disabled` (default): If a model response will exceed the context window size + # for a model, the request will fail with a 400 error. truncation: nil, + # Represents token usage details including input tokens, output tokens, a + # breakdown of output tokens, and the total tokens used. usage: nil, + # A unique identifier representing your end-user, which can help OpenAI to monitor + # and detect abuse. + # [Learn more](https://platform.openai.com/docs/guides/safety-best-practices#end-user-ids). user: nil, + # The object type of this resource - always set to `response`. object: :response ); end sig do @@ -390,8 +492,10 @@ module OpenAI params(reason: OpenAI::Models::Responses::Response::IncompleteDetails::Reason::OrSymbol) .returns(T.attached_class) end - def self.new(reason: nil); end - + def self.new( + # The reason why the response is incomplete. + reason: nil + ); end sig { override.returns({reason: OpenAI::Models::Responses::Response::IncompleteDetails::Reason::TaggedSymbol}) } def to_hash; end diff --git a/rbi/lib/openai/models/responses/response_audio_delta_event.rbi b/rbi/lib/openai/models/responses/response_audio_delta_event.rbi index 386c8365..b2e4f0e0 100644 --- a/rbi/lib/openai/models/responses/response_audio_delta_event.rbi +++ b/rbi/lib/openai/models/responses/response_audio_delta_event.rbi @@ -14,8 +14,12 @@ module OpenAI # Emitted when there is a partial audio response. sig { params(delta: String, type: Symbol).returns(T.attached_class) } - def self.new(delta:, type: :"response.audio.delta"); end - + def self.new( + # A chunk of Base64 encoded response audio bytes. + delta:, + # The type of the event. Always `response.audio.delta`. + type: :"response.audio.delta" + ); end sig { override.returns({delta: String, type: Symbol}) } def to_hash; end end diff --git a/rbi/lib/openai/models/responses/response_audio_done_event.rbi b/rbi/lib/openai/models/responses/response_audio_done_event.rbi index 40f5901f..9df7735c 100644 --- a/rbi/lib/openai/models/responses/response_audio_done_event.rbi +++ b/rbi/lib/openai/models/responses/response_audio_done_event.rbi @@ -10,8 +10,10 @@ module OpenAI # Emitted when the audio response is complete. sig { params(type: Symbol).returns(T.attached_class) } - def self.new(type: :"response.audio.done"); end - + def self.new( + # The type of the event. Always `response.audio.done`. + type: :"response.audio.done" + ); end sig { override.returns({type: Symbol}) } def to_hash; end end diff --git a/rbi/lib/openai/models/responses/response_audio_transcript_delta_event.rbi b/rbi/lib/openai/models/responses/response_audio_transcript_delta_event.rbi index c121b3b9..7ea46461 100644 --- a/rbi/lib/openai/models/responses/response_audio_transcript_delta_event.rbi +++ b/rbi/lib/openai/models/responses/response_audio_transcript_delta_event.rbi @@ -14,8 +14,12 @@ module OpenAI # Emitted when there is a partial transcript of audio. sig { params(delta: String, type: Symbol).returns(T.attached_class) } - def self.new(delta:, type: :"response.audio.transcript.delta"); end - + def self.new( + # The partial transcript of the audio response. + delta:, + # The type of the event. Always `response.audio.transcript.delta`. + type: :"response.audio.transcript.delta" + ); end sig { override.returns({delta: String, type: Symbol}) } def to_hash; end end diff --git a/rbi/lib/openai/models/responses/response_audio_transcript_done_event.rbi b/rbi/lib/openai/models/responses/response_audio_transcript_done_event.rbi index 983f0e0a..ec7e9f09 100644 --- a/rbi/lib/openai/models/responses/response_audio_transcript_done_event.rbi +++ b/rbi/lib/openai/models/responses/response_audio_transcript_done_event.rbi @@ -10,8 +10,10 @@ module OpenAI # Emitted when the full audio transcript is completed. sig { params(type: Symbol).returns(T.attached_class) } - def self.new(type: :"response.audio.transcript.done"); end - + def self.new( + # The type of the event. Always `response.audio.transcript.done`. + type: :"response.audio.transcript.done" + ); end sig { override.returns({type: Symbol}) } def to_hash; end end diff --git a/rbi/lib/openai/models/responses/response_code_interpreter_call_code_delta_event.rbi b/rbi/lib/openai/models/responses/response_code_interpreter_call_code_delta_event.rbi index e19943db..4c36e297 100644 --- a/rbi/lib/openai/models/responses/response_code_interpreter_call_code_delta_event.rbi +++ b/rbi/lib/openai/models/responses/response_code_interpreter_call_code_delta_event.rbi @@ -18,8 +18,14 @@ module OpenAI # Emitted when a partial code snippet is added by the code interpreter. sig { params(delta: String, output_index: Integer, type: Symbol).returns(T.attached_class) } - def self.new(delta:, output_index:, type: :"response.code_interpreter_call.code.delta"); end - + def self.new( + # The partial code snippet added by the code interpreter. + delta:, + # The index of the output item that the code interpreter call is in progress. + output_index:, + # The type of the event. Always `response.code_interpreter_call.code.delta`. + type: :"response.code_interpreter_call.code.delta" + ); end sig { override.returns({delta: String, output_index: Integer, type: Symbol}) } def to_hash; end end diff --git a/rbi/lib/openai/models/responses/response_code_interpreter_call_code_done_event.rbi b/rbi/lib/openai/models/responses/response_code_interpreter_call_code_done_event.rbi index 5d6af463..bc7dd462 100644 --- a/rbi/lib/openai/models/responses/response_code_interpreter_call_code_done_event.rbi +++ b/rbi/lib/openai/models/responses/response_code_interpreter_call_code_done_event.rbi @@ -18,8 +18,14 @@ module OpenAI # Emitted when code snippet output is finalized by the code interpreter. sig { params(code: String, output_index: Integer, type: Symbol).returns(T.attached_class) } - def self.new(code:, output_index:, type: :"response.code_interpreter_call.code.done"); end - + def self.new( + # The final code snippet output by the code interpreter. + code:, + # The index of the output item that the code interpreter call is in progress. + output_index:, + # The type of the event. Always `response.code_interpreter_call.code.done`. + type: :"response.code_interpreter_call.code.done" + ); end sig { override.returns({code: String, output_index: Integer, type: Symbol}) } def to_hash; end end diff --git a/rbi/lib/openai/models/responses/response_code_interpreter_call_completed_event.rbi b/rbi/lib/openai/models/responses/response_code_interpreter_call_completed_event.rbi index 28acb52b..05dc4800 100644 --- a/rbi/lib/openai/models/responses/response_code_interpreter_call_completed_event.rbi +++ b/rbi/lib/openai/models/responses/response_code_interpreter_call_completed_event.rbi @@ -34,12 +34,13 @@ module OpenAI .returns(T.attached_class) end def self.new( + # A tool call to run code. code_interpreter_call:, + # The index of the output item that the code interpreter call is in progress. output_index:, + # The type of the event. Always `response.code_interpreter_call.completed`. type: :"response.code_interpreter_call.completed" - ) - end - + ); end sig do override .returns( diff --git a/rbi/lib/openai/models/responses/response_code_interpreter_call_in_progress_event.rbi b/rbi/lib/openai/models/responses/response_code_interpreter_call_in_progress_event.rbi index c0a220d0..2627f40b 100644 --- a/rbi/lib/openai/models/responses/response_code_interpreter_call_in_progress_event.rbi +++ b/rbi/lib/openai/models/responses/response_code_interpreter_call_in_progress_event.rbi @@ -34,12 +34,13 @@ module OpenAI .returns(T.attached_class) end def self.new( + # A tool call to run code. code_interpreter_call:, + # The index of the output item that the code interpreter call is in progress. output_index:, + # The type of the event. Always `response.code_interpreter_call.in_progress`. type: :"response.code_interpreter_call.in_progress" - ) - end - + ); end sig do override .returns( diff --git a/rbi/lib/openai/models/responses/response_code_interpreter_call_interpreting_event.rbi b/rbi/lib/openai/models/responses/response_code_interpreter_call_interpreting_event.rbi index e0fe0abb..ee7e0050 100644 --- a/rbi/lib/openai/models/responses/response_code_interpreter_call_interpreting_event.rbi +++ b/rbi/lib/openai/models/responses/response_code_interpreter_call_interpreting_event.rbi @@ -34,12 +34,13 @@ module OpenAI .returns(T.attached_class) end def self.new( + # A tool call to run code. code_interpreter_call:, + # The index of the output item that the code interpreter call is in progress. output_index:, + # The type of the event. Always `response.code_interpreter_call.interpreting`. type: :"response.code_interpreter_call.interpreting" - ) - end - + ); end sig do override .returns( diff --git a/rbi/lib/openai/models/responses/response_code_interpreter_tool_call.rbi b/rbi/lib/openai/models/responses/response_code_interpreter_tool_call.rbi index 9c9e05b1..2568aca1 100644 --- a/rbi/lib/openai/models/responses/response_code_interpreter_tool_call.rbi +++ b/rbi/lib/openai/models/responses/response_code_interpreter_tool_call.rbi @@ -50,8 +50,18 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(id:, code:, results:, status:, type: :code_interpreter_call); end - + def self.new( + # The unique ID of the code interpreter tool call. + id:, + # The code to run. + code:, + # The results of the code interpreter tool call. + results:, + # The status of the code interpreter tool call. + status:, + # The type of the code interpreter tool call. Always `code_interpreter_call`. + type: :code_interpreter_call + ); end sig do override .returns( @@ -86,8 +96,12 @@ module OpenAI # The output of a code interpreter tool call that is text. sig { params(logs: String, type: Symbol).returns(T.attached_class) } - def self.new(logs:, type: :logs); end - + def self.new( + # The logs of the code interpreter tool call. + logs:, + # The type of the code interpreter text output. Always `logs`. + type: :logs + ); end sig { override.returns({logs: String, type: Symbol}) } def to_hash; end end @@ -113,8 +127,11 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(files:, type: :files); end - + def self.new( + files:, + # The type of the code interpreter file output. Always `files`. + type: :files + ); end sig do override .returns( @@ -136,8 +153,12 @@ module OpenAI attr_accessor :mime_type sig { params(file_id: String, mime_type: String).returns(T.attached_class) } - def self.new(file_id:, mime_type:); end - + def self.new( + # The ID of the file. + file_id:, + # The MIME type of the file. + mime_type: + ); end sig { override.returns({file_id: String, mime_type: String}) } def to_hash; end end diff --git a/rbi/lib/openai/models/responses/response_completed_event.rbi b/rbi/lib/openai/models/responses/response_completed_event.rbi index 26105306..bf715172 100644 --- a/rbi/lib/openai/models/responses/response_completed_event.rbi +++ b/rbi/lib/openai/models/responses/response_completed_event.rbi @@ -20,8 +20,12 @@ module OpenAI params(response: T.any(OpenAI::Models::Responses::Response, OpenAI::Internal::AnyHash), type: Symbol) .returns(T.attached_class) end - def self.new(response:, type: :"response.completed"); end - + def self.new( + # Properties of the completed response. + response:, + # The type of the event. Always `response.completed`. + type: :"response.completed" + ); end sig { override.returns({response: OpenAI::Models::Responses::Response, type: Symbol}) } def to_hash; end end diff --git a/rbi/lib/openai/models/responses/response_computer_tool_call.rbi b/rbi/lib/openai/models/responses/response_computer_tool_call.rbi index d899a4bc..37023dcb 100644 --- a/rbi/lib/openai/models/responses/response_computer_tool_call.rbi +++ b/rbi/lib/openai/models/responses/response_computer_tool_call.rbi @@ -68,8 +68,21 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(id:, action:, call_id:, pending_safety_checks:, status:, type:); end - + def self.new( + # The unique ID of the computer call. + id:, + # A click action. + action:, + # An identifier used when responding to the tool call with output. + call_id:, + # The pending safety checks for the computer call. + pending_safety_checks:, + # The status of the item. One of `in_progress`, `completed`, or `incomplete`. + # Populated when items are returned via API. + status:, + # The type of the computer call. Always `computer_call`. + type: + ); end sig do override .returns( @@ -128,8 +141,18 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(button:, x:, y_:, type: :click); end - + def self.new( + # Indicates which mouse button was pressed during the click. One of `left`, + # `right`, `wheel`, `back`, or `forward`. + button:, + # The x-coordinate where the click occurred. + x:, + # The y-coordinate where the click occurred. + y_:, + # Specifies the event type. For a click action, this property is always set to + # `click`. + type: :click + ); end sig do override .returns( @@ -189,8 +212,15 @@ module OpenAI # A double click action. sig { params(x: Integer, y_: Integer, type: Symbol).returns(T.attached_class) } - def self.new(x:, y_:, type: :double_click); end - + def self.new( + # The x-coordinate where the double click occurred. + x:, + # The y-coordinate where the double click occurred. + y_:, + # Specifies the event type. For a double click action, this property is always set + # to `double_click`. + type: :double_click + ); end sig { override.returns({type: Symbol, x: Integer, y_: Integer}) } def to_hash; end end @@ -221,8 +251,21 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(path:, type: :drag); end - + def self.new( + # An array of coordinates representing the path of the drag action. Coordinates + # will appear as an array of objects, eg + # + # ``` + # [ + # { x: 100, y: 200 }, + # { x: 200, y: 300 } + # ] + # ``` + path:, + # Specifies the event type. For a drag action, this property is always set to + # `drag`. + type: :drag + ); end sig do override .returns( @@ -242,8 +285,12 @@ module OpenAI # A series of x/y coordinate pairs in the drag path. sig { params(x: Integer, y_: Integer).returns(T.attached_class) } - def self.new(x:, y_:); end - + def self.new( + # The x-coordinate. + x:, + # The y-coordinate. + y_: + ); end sig { override.returns({x: Integer, y_: Integer}) } def to_hash; end end @@ -262,8 +309,14 @@ module OpenAI # A collection of keypresses the model would like to perform. sig { params(keys: T::Array[String], type: Symbol).returns(T.attached_class) } - def self.new(keys:, type: :keypress); end - + def self.new( + # The combination of keys the model is requesting to be pressed. This is an array + # of strings, each representing a key. + keys:, + # Specifies the event type. For a keypress action, this property is always set to + # `keypress`. + type: :keypress + ); end sig { override.returns({keys: T::Array[String], type: Symbol}) } def to_hash; end end @@ -284,8 +337,15 @@ module OpenAI # A mouse move action. sig { params(x: Integer, y_: Integer, type: Symbol).returns(T.attached_class) } - def self.new(x:, y_:, type: :move); end - + def self.new( + # The x-coordinate to move to. + x:, + # The y-coordinate to move to. + y_:, + # Specifies the event type. For a move action, this property is always set to + # `move`. + type: :move + ); end sig { override.returns({type: Symbol, x: Integer, y_: Integer}) } def to_hash; end end @@ -298,8 +358,11 @@ module OpenAI # A screenshot action. sig { params(type: Symbol).returns(T.attached_class) } - def self.new(type: :screenshot); end - + def self.new( + # Specifies the event type. For a screenshot action, this property is always set + # to `screenshot`. + type: :screenshot + ); end sig { override.returns({type: Symbol}) } def to_hash; end end @@ -331,8 +394,19 @@ module OpenAI params(scroll_x: Integer, scroll_y: Integer, x: Integer, y_: Integer, type: Symbol) .returns(T.attached_class) end - def self.new(scroll_x:, scroll_y:, x:, y_:, type: :scroll); end - + def self.new( + # The horizontal scroll distance. + scroll_x:, + # The vertical scroll distance. + scroll_y:, + # The x-coordinate where the scroll occurred. + x:, + # The y-coordinate where the scroll occurred. + y_:, + # Specifies the event type. For a scroll action, this property is always set to + # `scroll`. + type: :scroll + ); end sig do override.returns({scroll_x: Integer, scroll_y: Integer, type: Symbol, x: Integer, y_: Integer}) end @@ -351,8 +425,13 @@ module OpenAI # An action to type in text. sig { params(text: String, type: Symbol).returns(T.attached_class) } - def self.new(text:, type: :type); end - + def self.new( + # The text to type. + text:, + # Specifies the event type. For a type action, this property is always set to + # `type`. + type: :type + ); end sig { override.returns({text: String, type: Symbol}) } def to_hash; end end @@ -365,8 +444,11 @@ module OpenAI # A wait action. sig { params(type: Symbol).returns(T.attached_class) } - def self.new(type: :wait); end - + def self.new( + # Specifies the event type. For a wait action, this property is always set to + # `wait`. + type: :wait + ); end sig { override.returns({type: Symbol}) } def to_hash; end end @@ -395,8 +477,14 @@ module OpenAI # A pending safety check for the computer call. sig { params(id: String, code: String, message: String).returns(T.attached_class) } - def self.new(id:, code:, message:); end - + def self.new( + # The ID of the pending safety check. + id:, + # The type of the pending safety check. + code:, + # Details about the pending safety check. + message: + ); end sig { override.returns({id: String, code: String, message: String}) } def to_hash; end end diff --git a/rbi/lib/openai/models/responses/response_computer_tool_call_output_item.rbi b/rbi/lib/openai/models/responses/response_computer_tool_call_output_item.rbi index cbf376cc..c8e4b2bf 100644 --- a/rbi/lib/openai/models/responses/response_computer_tool_call_output_item.rbi +++ b/rbi/lib/openai/models/responses/response_computer_tool_call_output_item.rbi @@ -77,15 +77,21 @@ module OpenAI .returns(T.attached_class) end def self.new( + # The unique ID of the computer call tool output. id:, + # The ID of the computer tool call that produced the output. call_id:, + # A computer screenshot image used with the computer use tool. output:, + # The safety checks reported by the API that have been acknowledged by the + # developer. acknowledged_safety_checks: nil, + # The status of the message input. One of `in_progress`, `completed`, or + # `incomplete`. Populated when input items are returned via API. status: nil, + # The type of the computer tool call output. Always `computer_call_output`. type: :computer_call_output - ) - end - + ); end sig do override .returns( @@ -116,8 +122,14 @@ module OpenAI # A pending safety check for the computer call. sig { params(id: String, code: String, message: String).returns(T.attached_class) } - def self.new(id:, code:, message:); end - + def self.new( + # The ID of the pending safety check. + id:, + # The type of the pending safety check. + code:, + # Details about the pending safety check. + message: + ); end sig { override.returns({id: String, code: String, message: String}) } def to_hash; end end diff --git a/rbi/lib/openai/models/responses/response_computer_tool_call_output_screenshot.rbi b/rbi/lib/openai/models/responses/response_computer_tool_call_output_screenshot.rbi index c95e0378..b0d1e196 100644 --- a/rbi/lib/openai/models/responses/response_computer_tool_call_output_screenshot.rbi +++ b/rbi/lib/openai/models/responses/response_computer_tool_call_output_screenshot.rbi @@ -25,8 +25,15 @@ module OpenAI # A computer screenshot image used with the computer use tool. sig { params(file_id: String, image_url: String, type: Symbol).returns(T.attached_class) } - def self.new(file_id: nil, image_url: nil, type: :computer_screenshot); end - + def self.new( + # The identifier of an uploaded file that contains the screenshot. + file_id: nil, + # The URL of the screenshot image. + image_url: nil, + # Specifies the event type. For a computer screenshot, this property is always set + # to `computer_screenshot`. + type: :computer_screenshot + ); end sig { override.returns({type: Symbol, file_id: String, image_url: String}) } def to_hash; end end diff --git a/rbi/lib/openai/models/responses/response_content_part_added_event.rbi b/rbi/lib/openai/models/responses/response_content_part_added_event.rbi index 5ec11d97..46fa7693 100644 --- a/rbi/lib/openai/models/responses/response_content_part_added_event.rbi +++ b/rbi/lib/openai/models/responses/response_content_part_added_event.rbi @@ -43,9 +43,18 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(content_index:, item_id:, output_index:, part:, type: :"response.content_part.added") - end - + def self.new( + # The index of the content part that was added. + content_index:, + # The ID of the output item that the content part was added to. + item_id:, + # The index of the output item that the content part was added to. + output_index:, + # The content part that was added. + part:, + # The type of the event. Always `response.content_part.added`. + type: :"response.content_part.added" + ); end sig do override .returns( diff --git a/rbi/lib/openai/models/responses/response_content_part_done_event.rbi b/rbi/lib/openai/models/responses/response_content_part_done_event.rbi index 35915ce9..c1519e4f 100644 --- a/rbi/lib/openai/models/responses/response_content_part_done_event.rbi +++ b/rbi/lib/openai/models/responses/response_content_part_done_event.rbi @@ -43,8 +43,18 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(content_index:, item_id:, output_index:, part:, type: :"response.content_part.done"); end - + def self.new( + # The index of the content part that is done. + content_index:, + # The ID of the output item that the content part was added to. + item_id:, + # The index of the output item that the content part was added to. + output_index:, + # The content part that is done. + part:, + # The type of the event. Always `response.content_part.done`. + type: :"response.content_part.done" + ); end sig do override .returns( diff --git a/rbi/lib/openai/models/responses/response_create_params.rbi b/rbi/lib/openai/models/responses/response_create_params.rbi index 64664281..3dd10986 100644 --- a/rbi/lib/openai/models/responses/response_create_params.rbi +++ b/rbi/lib/openai/models/responses/response_create_params.rbi @@ -315,23 +315,127 @@ module OpenAI .returns(T.attached_class) end def self.new( + # Text, image, or file inputs to the model, used to generate a response. + # + # Learn more: + # + # - [Text inputs and outputs](https://platform.openai.com/docs/guides/text) + # - [Image inputs](https://platform.openai.com/docs/guides/images) + # - [File inputs](https://platform.openai.com/docs/guides/pdf-files) + # - [Conversation state](https://platform.openai.com/docs/guides/conversation-state) + # - [Function calling](https://platform.openai.com/docs/guides/function-calling) input:, + # Model ID used to generate the response, like `gpt-4o` or `o3`. OpenAI offers a + # wide range of models with different capabilities, performance characteristics, + # and price points. Refer to the + # [model guide](https://platform.openai.com/docs/models) to browse and compare + # available models. model:, + # Specify additional output data to include in the model response. Currently + # supported values are: + # + # - `file_search_call.results`: Include the search results of the file search tool + # call. + # - `message.input_image.image_url`: Include image urls from the input message. + # - `computer_call_output.output.image_url`: Include image urls from the computer + # call output. include: nil, + # Inserts a system (or developer) message as the first item in the model's + # context. + # + # When using along with `previous_response_id`, the instructions from a previous + # response will not be carried over to the next response. This makes it simple to + # swap out system (or developer) messages in new responses. instructions: nil, + # An upper bound for the number of tokens that can be generated for a response, + # including visible output tokens and + # [reasoning tokens](https://platform.openai.com/docs/guides/reasoning). max_output_tokens: nil, + # 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: nil, + # Whether to allow the model to run tool calls in parallel. parallel_tool_calls: nil, + # The unique ID of the previous response to the model. Use this to create + # multi-turn conversations. Learn more about + # [conversation state](https://platform.openai.com/docs/guides/conversation-state). previous_response_id: nil, + # **o-series models only** + # + # Configuration options for + # [reasoning models](https://platform.openai.com/docs/guides/reasoning). reasoning: nil, + # Specifies the latency tier to use for processing the request. This parameter is + # relevant for customers subscribed to the scale tier service: + # + # - If set to 'auto', and the Project is Scale tier enabled, the system will + # utilize scale tier credits until they are exhausted. + # - If set to 'auto', and the Project is not Scale tier enabled, the request will + # be processed using the default service tier with a lower uptime SLA and no + # latency guarentee. + # - If set to 'default', the request will be processed using the default service + # tier with a lower uptime SLA and no latency guarentee. + # - If set to 'flex', the request will be processed with the Flex Processing + # service tier. + # [Learn more](https://platform.openai.com/docs/guides/flex-processing). + # - When not set, the default behavior is 'auto'. + # + # When this parameter is set, the response body will include the `service_tier` + # utilized. service_tier: nil, + # Whether to store the generated model response for later retrieval via API. store: nil, + # 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. We generally recommend altering this or `top_p` but + # not both. temperature: nil, + # Configuration options for a text response from the model. Can be plain text or + # structured JSON data. Learn more: + # + # - [Text inputs and outputs](https://platform.openai.com/docs/guides/text) + # - [Structured Outputs](https://platform.openai.com/docs/guides/structured-outputs) text: nil, + # How the model should select which tool (or tools) to use when generating a + # response. See the `tools` parameter to see how to specify which tools the model + # can call. tool_choice: nil, + # An array of tools the model may call while generating a response. You can + # specify which tool to use by setting the `tool_choice` parameter. + # + # The two categories of tools you can provide the model are: + # + # - **Built-in tools**: Tools that are provided by OpenAI that extend the model's + # capabilities, like + # [web search](https://platform.openai.com/docs/guides/tools-web-search) or + # [file search](https://platform.openai.com/docs/guides/tools-file-search). + # Learn more about + # [built-in tools](https://platform.openai.com/docs/guides/tools). + # - **Function calls (custom tools)**: Functions that are defined by you, enabling + # the model to call your own code. Learn more about + # [function calling](https://platform.openai.com/docs/guides/function-calling). tools: nil, + # 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. top_p: nil, + # The truncation strategy to use for the model response. + # + # - `auto`: If the context of this response and previous ones exceeds the model's + # context window size, the model will truncate the response to fit the context + # window by dropping input items in the middle of the conversation. + # - `disabled` (default): If a model response will exceed the context window size + # for a model, the request will fail with a 400 error. truncation: nil, + # A unique identifier representing your end-user, which can help OpenAI to monitor + # and detect abuse. + # [Learn more](https://platform.openai.com/docs/guides/safety-best-practices#end-user-ids). user: nil, request_options: {} ); end diff --git a/rbi/lib/openai/models/responses/response_created_event.rbi b/rbi/lib/openai/models/responses/response_created_event.rbi index 58605657..33664af0 100644 --- a/rbi/lib/openai/models/responses/response_created_event.rbi +++ b/rbi/lib/openai/models/responses/response_created_event.rbi @@ -20,8 +20,12 @@ module OpenAI params(response: T.any(OpenAI::Models::Responses::Response, OpenAI::Internal::AnyHash), type: Symbol) .returns(T.attached_class) end - def self.new(response:, type: :"response.created"); end - + def self.new( + # The response that was created. + response:, + # The type of the event. Always `response.created`. + type: :"response.created" + ); end sig { override.returns({response: OpenAI::Models::Responses::Response, type: Symbol}) } def to_hash; end end diff --git a/rbi/lib/openai/models/responses/response_error.rbi b/rbi/lib/openai/models/responses/response_error.rbi index 3beca9b7..796293af 100644 --- a/rbi/lib/openai/models/responses/response_error.rbi +++ b/rbi/lib/openai/models/responses/response_error.rbi @@ -17,8 +17,12 @@ module OpenAI params(code: OpenAI::Models::Responses::ResponseError::Code::OrSymbol, message: String) .returns(T.attached_class) end - def self.new(code:, message:); end - + def self.new( + # The error code for the response. + code:, + # A human-readable description of the error. + message: + ); end sig { override.returns({code: OpenAI::Models::Responses::ResponseError::Code::TaggedSymbol, message: String}) } def to_hash; end diff --git a/rbi/lib/openai/models/responses/response_error_event.rbi b/rbi/lib/openai/models/responses/response_error_event.rbi index c81fa537..24a190a8 100644 --- a/rbi/lib/openai/models/responses/response_error_event.rbi +++ b/rbi/lib/openai/models/responses/response_error_event.rbi @@ -25,8 +25,16 @@ module OpenAI params(code: T.nilable(String), message: String, param: T.nilable(String), type: Symbol) .returns(T.attached_class) end - def self.new(code:, message:, param:, type: :error); end - + def self.new( + # The error code. + code:, + # The error message. + message:, + # The error parameter. + param:, + # The type of the event. Always `error`. + type: :error + ); end sig do override.returns({code: T.nilable(String), message: String, param: T.nilable(String), type: Symbol}) end diff --git a/rbi/lib/openai/models/responses/response_failed_event.rbi b/rbi/lib/openai/models/responses/response_failed_event.rbi index 7cafac40..ad3251e9 100644 --- a/rbi/lib/openai/models/responses/response_failed_event.rbi +++ b/rbi/lib/openai/models/responses/response_failed_event.rbi @@ -20,8 +20,12 @@ module OpenAI params(response: T.any(OpenAI::Models::Responses::Response, OpenAI::Internal::AnyHash), type: Symbol) .returns(T.attached_class) end - def self.new(response:, type: :"response.failed"); end - + def self.new( + # The response that failed. + response:, + # The type of the event. Always `response.failed`. + type: :"response.failed" + ); end sig { override.returns({response: OpenAI::Models::Responses::Response, type: Symbol}) } def to_hash; end end diff --git a/rbi/lib/openai/models/responses/response_file_search_call_completed_event.rbi b/rbi/lib/openai/models/responses/response_file_search_call_completed_event.rbi index 289e0742..7ac06ad1 100644 --- a/rbi/lib/openai/models/responses/response_file_search_call_completed_event.rbi +++ b/rbi/lib/openai/models/responses/response_file_search_call_completed_event.rbi @@ -18,8 +18,14 @@ module OpenAI # Emitted when a file search call is completed (results found). sig { params(item_id: String, output_index: Integer, type: Symbol).returns(T.attached_class) } - def self.new(item_id:, output_index:, type: :"response.file_search_call.completed"); end - + def self.new( + # The ID of the output item that the file search call is initiated. + item_id:, + # The index of the output item that the file search call is initiated. + output_index:, + # The type of the event. Always `response.file_search_call.completed`. + type: :"response.file_search_call.completed" + ); end sig { override.returns({item_id: String, output_index: Integer, type: Symbol}) } def to_hash; end end diff --git a/rbi/lib/openai/models/responses/response_file_search_call_in_progress_event.rbi b/rbi/lib/openai/models/responses/response_file_search_call_in_progress_event.rbi index 04d00647..99274ded 100644 --- a/rbi/lib/openai/models/responses/response_file_search_call_in_progress_event.rbi +++ b/rbi/lib/openai/models/responses/response_file_search_call_in_progress_event.rbi @@ -18,8 +18,14 @@ module OpenAI # Emitted when a file search call is initiated. sig { params(item_id: String, output_index: Integer, type: Symbol).returns(T.attached_class) } - def self.new(item_id:, output_index:, type: :"response.file_search_call.in_progress"); end - + def self.new( + # The ID of the output item that the file search call is initiated. + item_id:, + # The index of the output item that the file search call is initiated. + output_index:, + # The type of the event. Always `response.file_search_call.in_progress`. + type: :"response.file_search_call.in_progress" + ); end sig { override.returns({item_id: String, output_index: Integer, type: Symbol}) } def to_hash; end end diff --git a/rbi/lib/openai/models/responses/response_file_search_call_searching_event.rbi b/rbi/lib/openai/models/responses/response_file_search_call_searching_event.rbi index a6de609a..605b332b 100644 --- a/rbi/lib/openai/models/responses/response_file_search_call_searching_event.rbi +++ b/rbi/lib/openai/models/responses/response_file_search_call_searching_event.rbi @@ -18,8 +18,14 @@ module OpenAI # Emitted when a file search is currently searching. sig { params(item_id: String, output_index: Integer, type: Symbol).returns(T.attached_class) } - def self.new(item_id:, output_index:, type: :"response.file_search_call.searching"); end - + def self.new( + # The ID of the output item that the file search call is initiated. + item_id:, + # The index of the output item that the file search call is searching. + output_index:, + # The type of the event. Always `response.file_search_call.searching`. + type: :"response.file_search_call.searching" + ); end sig { override.returns({item_id: String, output_index: Integer, type: Symbol}) } def to_hash; end end diff --git a/rbi/lib/openai/models/responses/response_file_search_tool_call.rbi b/rbi/lib/openai/models/responses/response_file_search_tool_call.rbi index edeca91a..94b16558 100644 --- a/rbi/lib/openai/models/responses/response_file_search_tool_call.rbi +++ b/rbi/lib/openai/models/responses/response_file_search_tool_call.rbi @@ -40,8 +40,19 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(id:, queries:, status:, results: nil, type: :file_search_call); end - + def self.new( + # The unique ID of the file search tool call. + id:, + # The queries used to search for files. + queries:, + # The status of the file search tool call. One of `in_progress`, `searching`, + # `incomplete` or `failed`, + status:, + # The results of the file search tool call. + results: nil, + # The type of the file search tool call. Always `file_search_call`. + type: :file_search_call + ); end sig do override .returns( @@ -126,8 +137,22 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(attributes: nil, file_id: nil, filename: nil, score: nil, text: nil); end - + def self.new( + # 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, booleans, or numbers. + attributes: nil, + # The unique ID of the file. + file_id: nil, + # The name of the file. + filename: nil, + # The relevance score of the file - a value between 0 and 1. + score: nil, + # The text that was retrieved from the file. + text: nil + ); end sig do override .returns( diff --git a/rbi/lib/openai/models/responses/response_format_text_json_schema_config.rbi b/rbi/lib/openai/models/responses/response_format_text_json_schema_config.rbi index 25a553e6..1b94b7c2 100644 --- a/rbi/lib/openai/models/responses/response_format_text_json_schema_config.rbi +++ b/rbi/lib/openai/models/responses/response_format_text_json_schema_config.rbi @@ -47,8 +47,25 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(name:, schema:, description: nil, strict: nil, type: :json_schema); end - + def self.new( + # The name of the response format. Must be a-z, A-Z, 0-9, or contain underscores + # and dashes, with a maximum length of 64. + name:, + # The schema for the response format, described as a JSON Schema object. Learn how + # to build JSON schemas [here](https://json-schema.org/). + schema:, + # A description of what the response format is for, used by the model to determine + # how to respond in the format. + description: nil, + # Whether to enable strict schema adherence when generating the output. If set to + # true, the model will always follow the exact schema defined in the `schema` + # field. Only a subset of JSON Schema is supported when `strict` is `true`. To + # learn more, read the + # [Structured Outputs guide](https://platform.openai.com/docs/guides/structured-outputs). + strict: nil, + # The type of response format being defined. Always `json_schema`. + type: :json_schema + ); end sig do override .returns( diff --git a/rbi/lib/openai/models/responses/response_function_call_arguments_delta_event.rbi b/rbi/lib/openai/models/responses/response_function_call_arguments_delta_event.rbi index 11ac7ab7..801e2df6 100644 --- a/rbi/lib/openai/models/responses/response_function_call_arguments_delta_event.rbi +++ b/rbi/lib/openai/models/responses/response_function_call_arguments_delta_event.rbi @@ -29,8 +29,16 @@ module OpenAI type: Symbol ).returns(T.attached_class) end - def self.new(delta:, item_id:, output_index:, type: :"response.function_call_arguments.delta"); end - + def self.new( + # The function-call arguments delta that is added. + delta:, + # The ID of the output item that the function-call arguments delta is added to. + item_id:, + # The index of the output item that the function-call arguments delta is added to. + output_index:, + # The type of the event. Always `response.function_call_arguments.delta`. + type: :"response.function_call_arguments.delta" + ); end sig { override.returns({delta: String, item_id: String, output_index: Integer, type: Symbol}) } def to_hash; end end diff --git a/rbi/lib/openai/models/responses/response_function_call_arguments_done_event.rbi b/rbi/lib/openai/models/responses/response_function_call_arguments_done_event.rbi index ebafa372..0886a45d 100644 --- a/rbi/lib/openai/models/responses/response_function_call_arguments_done_event.rbi +++ b/rbi/lib/openai/models/responses/response_function_call_arguments_done_event.rbi @@ -28,8 +28,15 @@ module OpenAI type: Symbol ).returns(T.attached_class) end - def self.new(arguments:, item_id:, output_index:, type: :"response.function_call_arguments.done"); end - + def self.new( + # The function-call arguments. + arguments:, + # The ID of the item. + item_id:, + # The index of the output item. + output_index:, + type: :"response.function_call_arguments.done" + ); end sig { override.returns({arguments: String, item_id: String, output_index: Integer, type: Symbol}) } def to_hash; end end diff --git a/rbi/lib/openai/models/responses/response_function_tool_call.rbi b/rbi/lib/openai/models/responses/response_function_tool_call.rbi index 5f89a8cf..0862724c 100644 --- a/rbi/lib/openai/models/responses/response_function_tool_call.rbi +++ b/rbi/lib/openai/models/responses/response_function_tool_call.rbi @@ -49,8 +49,21 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(arguments:, call_id:, name:, id: nil, status: nil, type: :function_call); end - + def self.new( + # A JSON string of the arguments to pass to the function. + arguments:, + # The unique ID of the function tool call generated by the model. + call_id:, + # The name of the function to run. + name:, + # The unique ID of the function tool call. + id: nil, + # The status of the item. One of `in_progress`, `completed`, or `incomplete`. + # Populated when items are returned via API. + status: nil, + # The type of the function tool call. Always `function_call`. + type: :function_call + ); end sig do override .returns( diff --git a/rbi/lib/openai/models/responses/response_function_tool_call_item.rbi b/rbi/lib/openai/models/responses/response_function_tool_call_item.rbi index 7ed35c37..cfa76b9c 100644 --- a/rbi/lib/openai/models/responses/response_function_tool_call_item.rbi +++ b/rbi/lib/openai/models/responses/response_function_tool_call_item.rbi @@ -12,8 +12,10 @@ module OpenAI # [function calling guide](https://platform.openai.com/docs/guides/function-calling) # for more information. sig { params(id: String).returns(T.attached_class) } - def self.new(id:); end - + def self.new( + # The unique ID of the function tool call. + id: + ); end sig { override.returns({id: String}) } def to_hash; end end diff --git a/rbi/lib/openai/models/responses/response_function_tool_call_output_item.rbi b/rbi/lib/openai/models/responses/response_function_tool_call_output_item.rbi index df902df8..64da7c58 100644 --- a/rbi/lib/openai/models/responses/response_function_tool_call_output_item.rbi +++ b/rbi/lib/openai/models/responses/response_function_tool_call_output_item.rbi @@ -38,8 +38,19 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(id:, call_id:, output:, status: nil, type: :function_call_output); end - + def self.new( + # The unique ID of the function call tool output. + id:, + # The unique ID of the function tool call generated by the model. + call_id:, + # A JSON string of the output of the function tool call. + output:, + # The status of the item. One of `in_progress`, `completed`, or `incomplete`. + # Populated when items are returned via API. + status: nil, + # The type of the function tool call output. Always `function_call_output`. + type: :function_call_output + ); end sig do override .returns( diff --git a/rbi/lib/openai/models/responses/response_function_web_search.rbi b/rbi/lib/openai/models/responses/response_function_web_search.rbi index 4c9bd2bd..1c892bf4 100644 --- a/rbi/lib/openai/models/responses/response_function_web_search.rbi +++ b/rbi/lib/openai/models/responses/response_function_web_search.rbi @@ -27,8 +27,14 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(id:, status:, type: :web_search_call); end - + def self.new( + # The unique ID of the web search tool call. + id:, + # The status of the web search tool call. + status:, + # The type of the web search tool call. Always `web_search_call`. + type: :web_search_call + ); end sig do override .returns( diff --git a/rbi/lib/openai/models/responses/response_in_progress_event.rbi b/rbi/lib/openai/models/responses/response_in_progress_event.rbi index 37252dc3..7ef933f7 100644 --- a/rbi/lib/openai/models/responses/response_in_progress_event.rbi +++ b/rbi/lib/openai/models/responses/response_in_progress_event.rbi @@ -20,8 +20,12 @@ module OpenAI params(response: T.any(OpenAI::Models::Responses::Response, OpenAI::Internal::AnyHash), type: Symbol) .returns(T.attached_class) end - def self.new(response:, type: :"response.in_progress"); end - + def self.new( + # The response that is in progress. + response:, + # The type of the event. Always `response.in_progress`. + type: :"response.in_progress" + ); end sig { override.returns({response: OpenAI::Models::Responses::Response, type: Symbol}) } def to_hash; end end diff --git a/rbi/lib/openai/models/responses/response_incomplete_event.rbi b/rbi/lib/openai/models/responses/response_incomplete_event.rbi index 12fe7ff5..079d5434 100644 --- a/rbi/lib/openai/models/responses/response_incomplete_event.rbi +++ b/rbi/lib/openai/models/responses/response_incomplete_event.rbi @@ -20,8 +20,12 @@ module OpenAI params(response: T.any(OpenAI::Models::Responses::Response, OpenAI::Internal::AnyHash), type: Symbol) .returns(T.attached_class) end - def self.new(response:, type: :"response.incomplete"); end - + def self.new( + # The response that was incomplete. + response:, + # The type of the event. Always `response.incomplete`. + type: :"response.incomplete" + ); end sig { override.returns({response: OpenAI::Models::Responses::Response, type: Symbol}) } def to_hash; end end diff --git a/rbi/lib/openai/models/responses/response_input_audio.rbi b/rbi/lib/openai/models/responses/response_input_audio.rbi index ff2d0075..9244a048 100644 --- a/rbi/lib/openai/models/responses/response_input_audio.rbi +++ b/rbi/lib/openai/models/responses/response_input_audio.rbi @@ -25,8 +25,14 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(data:, format_:, type: :input_audio); end - + def self.new( + # Base64-encoded audio data. + data:, + # The format of the audio data. Currently supported formats are `mp3` and `wav`. + format_:, + # The type of the input item. Always `input_audio`. + type: :input_audio + ); end sig do override .returns( diff --git a/rbi/lib/openai/models/responses/response_input_file.rbi b/rbi/lib/openai/models/responses/response_input_file.rbi index 5d46ed32..74a535c7 100644 --- a/rbi/lib/openai/models/responses/response_input_file.rbi +++ b/rbi/lib/openai/models/responses/response_input_file.rbi @@ -33,8 +33,16 @@ module OpenAI sig do params(file_data: String, file_id: String, filename: String, type: Symbol).returns(T.attached_class) end - def self.new(file_data: nil, file_id: nil, filename: nil, type: :input_file); end - + def self.new( + # The content of the file to be sent to the model. + file_data: nil, + # The ID of the file to be sent to the model. + file_id: nil, + # The name of the file to be sent to the model. + filename: nil, + # The type of the input item. Always `input_file`. + type: :input_file + ); end sig { override.returns({type: Symbol, file_data: String, file_id: String, filename: String}) } def to_hash; end end diff --git a/rbi/lib/openai/models/responses/response_input_image.rbi b/rbi/lib/openai/models/responses/response_input_image.rbi index 2cf0bfec..d058b10d 100644 --- a/rbi/lib/openai/models/responses/response_input_image.rbi +++ b/rbi/lib/openai/models/responses/response_input_image.rbi @@ -33,8 +33,18 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(detail:, file_id: nil, image_url: nil, type: :input_image); end - + def self.new( + # The detail level of the image to be sent to the model. One of `high`, `low`, or + # `auto`. Defaults to `auto`. + detail:, + # The ID of the file to be sent to the model. + file_id: nil, + # The URL of the image to be sent to the model. A fully qualified URL or base64 + # encoded image in a data URL. + image_url: nil, + # The type of the input item. Always `input_image`. + type: :input_image + ); end sig do override .returns( diff --git a/rbi/lib/openai/models/responses/response_input_item.rbi b/rbi/lib/openai/models/responses/response_input_item.rbi index 7187822f..6595bbdb 100644 --- a/rbi/lib/openai/models/responses/response_input_item.rbi +++ b/rbi/lib/openai/models/responses/response_input_item.rbi @@ -65,8 +65,18 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(content:, role:, status: nil, type: nil); end - + def self.new( + # A list of one or many input items to the model, containing different content + # types. + content:, + # The role of the message input. One of `user`, `system`, or `developer`. + role:, + # The status of item. One of `in_progress`, `completed`, or `incomplete`. + # Populated when items are returned via API. + status: nil, + # The type of the message input. Always set to `message`. + type: nil + ); end sig do override .returns( @@ -215,15 +225,21 @@ module OpenAI .returns(T.attached_class) end def self.new( + # The ID of the computer tool call that produced the output. call_id:, + # A computer screenshot image used with the computer use tool. output:, + # The ID of the computer tool call output. id: nil, + # The safety checks reported by the API that have been acknowledged by the + # developer. acknowledged_safety_checks: nil, + # The status of the message input. One of `in_progress`, `completed`, or + # `incomplete`. Populated when input items are returned via API. status: nil, + # The type of the computer tool call output. Always `computer_call_output`. type: :computer_call_output - ) - end - + ); end sig do override .returns( @@ -254,8 +270,14 @@ module OpenAI # A pending safety check for the computer call. sig { params(id: String, code: String, message: String).returns(T.attached_class) } - def self.new(id:, code:, message:); end - + def self.new( + # The ID of the pending safety check. + id:, + # The type of the pending safety check. + code:, + # Details about the pending safety check. + message: + ); end sig { override.returns({id: String, code: String, message: String}) } def to_hash; end end @@ -327,8 +349,20 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(call_id:, output:, id: nil, status: nil, type: :function_call_output); end - + def self.new( + # The unique ID of the function tool call generated by the model. + call_id:, + # A JSON string of the output of the function tool call. + output:, + # The unique ID of the function tool call output. Populated when this item is + # returned via API. + id: nil, + # The status of the item. One of `in_progress`, `completed`, or `incomplete`. + # Populated when items are returned via API. + status: nil, + # The type of the function tool call output. Always `function_call_output`. + type: :function_call_output + ); end sig do override .returns( @@ -381,8 +415,12 @@ module OpenAI # An internal identifier for an item to reference. sig { params(id: String, type: Symbol).returns(T.attached_class) } - def self.new(id:, type: :item_reference); end - + def self.new( + # The ID of the item to reference. + id:, + # The type of item to reference. Always `item_reference`. + type: :item_reference + ); end sig { override.returns({id: String, type: Symbol}) } def to_hash; end end diff --git a/rbi/lib/openai/models/responses/response_input_message_item.rbi b/rbi/lib/openai/models/responses/response_input_message_item.rbi index dbae6d9b..9c426966 100644 --- a/rbi/lib/openai/models/responses/response_input_message_item.rbi +++ b/rbi/lib/openai/models/responses/response_input_message_item.rbi @@ -59,8 +59,20 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(id:, content:, role:, status: nil, type: nil); end - + def self.new( + # The unique ID of the message input. + id:, + # A list of one or many input items to the model, containing different content + # types. + content:, + # The role of the message input. One of `user`, `system`, or `developer`. + role:, + # The status of item. One of `in_progress`, `completed`, or `incomplete`. + # Populated when items are returned via API. + status: nil, + # The type of the message input. Always set to `message`. + type: nil + ); end sig do override .returns( diff --git a/rbi/lib/openai/models/responses/response_input_text.rbi b/rbi/lib/openai/models/responses/response_input_text.rbi index d3df7cc9..6ecb1f55 100644 --- a/rbi/lib/openai/models/responses/response_input_text.rbi +++ b/rbi/lib/openai/models/responses/response_input_text.rbi @@ -14,8 +14,12 @@ module OpenAI # A text input to the model. sig { params(text: String, type: Symbol).returns(T.attached_class) } - def self.new(text:, type: :input_text); end - + def self.new( + # The text input to the model. + text:, + # The type of the input item. Always `input_text`. + type: :input_text + ); end sig { override.returns({text: String, type: Symbol}) } def to_hash; end end diff --git a/rbi/lib/openai/models/responses/response_item_list.rbi b/rbi/lib/openai/models/responses/response_item_list.rbi index a041edfb..60f9ee2b 100644 --- a/rbi/lib/openai/models/responses/response_item_list.rbi +++ b/rbi/lib/openai/models/responses/response_item_list.rbi @@ -62,8 +62,18 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(data:, first_id:, has_more:, last_id:, object: :list); end - + def self.new( + # A list of items used to generate this response. + data:, + # The ID of the first item in the list. + first_id:, + # Whether there are more items available. + has_more:, + # The ID of the last item in the list. + last_id:, + # The type of object returned, must be `list`. + object: :list + ); end sig do override .returns( diff --git a/rbi/lib/openai/models/responses/response_output_audio.rbi b/rbi/lib/openai/models/responses/response_output_audio.rbi index 010d71b6..ccca474a 100644 --- a/rbi/lib/openai/models/responses/response_output_audio.rbi +++ b/rbi/lib/openai/models/responses/response_output_audio.rbi @@ -18,8 +18,14 @@ module OpenAI # An audio output from the model. sig { params(data: String, transcript: String, type: Symbol).returns(T.attached_class) } - def self.new(data:, transcript:, type: :output_audio); end - + def self.new( + # Base64-encoded audio data from the model. + data:, + # The transcript of the audio data from the model. + transcript:, + # The type of the output audio. Always `output_audio`. + type: :output_audio + ); end sig { override.returns({data: String, transcript: String, type: Symbol}) } def to_hash; end end diff --git a/rbi/lib/openai/models/responses/response_output_item_added_event.rbi b/rbi/lib/openai/models/responses/response_output_item_added_event.rbi index 230e21d0..6318ea2f 100644 --- a/rbi/lib/openai/models/responses/response_output_item_added_event.rbi +++ b/rbi/lib/openai/models/responses/response_output_item_added_event.rbi @@ -44,8 +44,14 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(item:, output_index:, type: :"response.output_item.added"); end - + def self.new( + # The output item that was added. + item:, + # The index of the output item that was added. + output_index:, + # The type of the event. Always `response.output_item.added`. + type: :"response.output_item.added" + ); end sig do override .returns( diff --git a/rbi/lib/openai/models/responses/response_output_item_done_event.rbi b/rbi/lib/openai/models/responses/response_output_item_done_event.rbi index 94747df6..2ec17e88 100644 --- a/rbi/lib/openai/models/responses/response_output_item_done_event.rbi +++ b/rbi/lib/openai/models/responses/response_output_item_done_event.rbi @@ -44,8 +44,14 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(item:, output_index:, type: :"response.output_item.done"); end - + def self.new( + # The output item that was marked done. + item:, + # The index of the output item that was marked done. + output_index:, + # The type of the event. Always `response.output_item.done`. + type: :"response.output_item.done" + ); end sig do override .returns( diff --git a/rbi/lib/openai/models/responses/response_output_message.rbi b/rbi/lib/openai/models/responses/response_output_message.rbi index e9c25f07..67f1cfc9 100644 --- a/rbi/lib/openai/models/responses/response_output_message.rbi +++ b/rbi/lib/openai/models/responses/response_output_message.rbi @@ -46,8 +46,19 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(id:, content:, status:, role: :assistant, type: :message); end - + def self.new( + # The unique ID of the output message. + id:, + # The content of the output message. + content:, + # The status of the message input. One of `in_progress`, `completed`, or + # `incomplete`. Populated when input items are returned via API. + status:, + # The role of the output message. Always `assistant`. + role: :assistant, + # The type of the output message. Always `message`. + type: :message + ); end sig do override .returns( diff --git a/rbi/lib/openai/models/responses/response_output_refusal.rbi b/rbi/lib/openai/models/responses/response_output_refusal.rbi index ece03c37..16a800dd 100644 --- a/rbi/lib/openai/models/responses/response_output_refusal.rbi +++ b/rbi/lib/openai/models/responses/response_output_refusal.rbi @@ -14,8 +14,12 @@ module OpenAI # A refusal from the model. sig { params(refusal: String, type: Symbol).returns(T.attached_class) } - def self.new(refusal:, type: :refusal); end - + def self.new( + # The refusal explanationfrom the model. + refusal:, + # The type of the refusal. Always `refusal`. + type: :refusal + ); end sig { override.returns({refusal: String, type: Symbol}) } def to_hash; end end diff --git a/rbi/lib/openai/models/responses/response_output_text.rbi b/rbi/lib/openai/models/responses/response_output_text.rbi index 4d499086..e0267bd2 100644 --- a/rbi/lib/openai/models/responses/response_output_text.rbi +++ b/rbi/lib/openai/models/responses/response_output_text.rbi @@ -42,8 +42,14 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(annotations:, text:, type: :output_text); end - + def self.new( + # The annotations of the text output. + annotations:, + # The text output from the model. + text:, + # The type of the output text. Always `output_text`. + type: :output_text + ); end sig do override .returns( @@ -81,8 +87,14 @@ module OpenAI # A citation to a file. sig { params(file_id: String, index: Integer, type: Symbol).returns(T.attached_class) } - def self.new(file_id:, index:, type: :file_citation); end - + def self.new( + # The ID of the file. + file_id:, + # The index of the file in the list of files. + index:, + # The type of the file citation. Always `file_citation`. + type: :file_citation + ); end sig { override.returns({file_id: String, index: Integer, type: Symbol}) } def to_hash; end end @@ -113,8 +125,18 @@ module OpenAI params(end_index: Integer, start_index: Integer, title: String, url: String, type: Symbol) .returns(T.attached_class) end - def self.new(end_index:, start_index:, title:, url:, type: :url_citation); end - + def self.new( + # The index of the last character of the URL citation in the message. + end_index:, + # The index of the first character of the URL citation in the message. + start_index:, + # The title of the web resource. + title:, + # The URL of the web resource. + url:, + # The type of the URL citation. Always `url_citation`. + type: :url_citation + ); end sig do override.returns( { @@ -144,8 +166,14 @@ module OpenAI # A path to a file. sig { params(file_id: String, index: Integer, type: Symbol).returns(T.attached_class) } - def self.new(file_id:, index:, type: :file_path); end - + def self.new( + # The ID of the file. + file_id:, + # The index of the file in the list of files. + index:, + # The type of the file path. Always `file_path`. + type: :file_path + ); end sig { override.returns({file_id: String, index: Integer, type: Symbol}) } def to_hash; end end diff --git a/rbi/lib/openai/models/responses/response_reasoning_item.rbi b/rbi/lib/openai/models/responses/response_reasoning_item.rbi index ecd2a673..7b83bf50 100644 --- a/rbi/lib/openai/models/responses/response_reasoning_item.rbi +++ b/rbi/lib/openai/models/responses/response_reasoning_item.rbi @@ -35,8 +35,17 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(id:, summary:, status: nil, type: :reasoning); end - + def self.new( + # The unique identifier of the reasoning content. + id:, + # Reasoning text contents. + summary:, + # The status of the item. One of `in_progress`, `completed`, or `incomplete`. + # Populated when items are returned via API. + status: nil, + # The type of the object. Always `reasoning`. + type: :reasoning + ); end sig do override .returns( @@ -60,8 +69,12 @@ module OpenAI attr_accessor :type sig { params(text: String, type: Symbol).returns(T.attached_class) } - def self.new(text:, type: :summary_text); end - + def self.new( + # A short summary of the reasoning used by the model when generating the response. + text:, + # The type of the object. Always `summary_text`. + type: :summary_text + ); end sig { override.returns({text: String, type: Symbol}) } def to_hash; end end diff --git a/rbi/lib/openai/models/responses/response_reasoning_summary_part_added_event.rbi b/rbi/lib/openai/models/responses/response_reasoning_summary_part_added_event.rbi index 2a08cbdb..22c28d0f 100644 --- a/rbi/lib/openai/models/responses/response_reasoning_summary_part_added_event.rbi +++ b/rbi/lib/openai/models/responses/response_reasoning_summary_part_added_event.rbi @@ -44,14 +44,17 @@ module OpenAI .returns(T.attached_class) end def self.new( + # The ID of the item this summary part is associated with. item_id:, + # The index of the output item this summary part is associated with. output_index:, + # The summary part that was added. part:, + # The index of the summary part within the reasoning summary. summary_index:, + # The type of the event. Always `response.reasoning_summary_part.added`. type: :"response.reasoning_summary_part.added" - ) - end - + ); end sig do override .returns( @@ -77,8 +80,12 @@ module OpenAI # The summary part that was added. sig { params(text: String, type: Symbol).returns(T.attached_class) } - def self.new(text:, type: :summary_text); end - + def self.new( + # The text of the summary part. + text:, + # The type of the summary part. Always `summary_text`. + type: :summary_text + ); end sig { override.returns({text: String, type: Symbol}) } def to_hash; end end diff --git a/rbi/lib/openai/models/responses/response_reasoning_summary_part_done_event.rbi b/rbi/lib/openai/models/responses/response_reasoning_summary_part_done_event.rbi index 074c9319..93ac8fbb 100644 --- a/rbi/lib/openai/models/responses/response_reasoning_summary_part_done_event.rbi +++ b/rbi/lib/openai/models/responses/response_reasoning_summary_part_done_event.rbi @@ -44,14 +44,17 @@ module OpenAI .returns(T.attached_class) end def self.new( + # The ID of the item this summary part is associated with. item_id:, + # The index of the output item this summary part is associated with. output_index:, + # The completed summary part. part:, + # The index of the summary part within the reasoning summary. summary_index:, + # The type of the event. Always `response.reasoning_summary_part.done`. type: :"response.reasoning_summary_part.done" - ) - end - + ); end sig do override .returns( @@ -77,8 +80,12 @@ module OpenAI # The completed summary part. sig { params(text: String, type: Symbol).returns(T.attached_class) } - def self.new(text:, type: :summary_text); end - + def self.new( + # The text of the summary part. + text:, + # The type of the summary part. Always `summary_text`. + type: :summary_text + ); end sig { override.returns({text: String, type: Symbol}) } def to_hash; end end diff --git a/rbi/lib/openai/models/responses/response_reasoning_summary_text_delta_event.rbi b/rbi/lib/openai/models/responses/response_reasoning_summary_text_delta_event.rbi index e659c052..0b471aed 100644 --- a/rbi/lib/openai/models/responses/response_reasoning_summary_text_delta_event.rbi +++ b/rbi/lib/openai/models/responses/response_reasoning_summary_text_delta_event.rbi @@ -30,14 +30,17 @@ module OpenAI .returns(T.attached_class) end def self.new( + # The text delta that was added to the summary. delta:, + # The ID of the item this summary text delta is associated with. item_id:, + # The index of the output item this summary text delta is associated with. output_index:, + # The index of the summary part within the reasoning summary. summary_index:, + # The type of the event. Always `response.reasoning_summary_text.delta`. type: :"response.reasoning_summary_text.delta" - ) - end - + ); end sig do override .returns({ diff --git a/rbi/lib/openai/models/responses/response_reasoning_summary_text_done_event.rbi b/rbi/lib/openai/models/responses/response_reasoning_summary_text_done_event.rbi index dea35ce6..6ff8c695 100644 --- a/rbi/lib/openai/models/responses/response_reasoning_summary_text_done_event.rbi +++ b/rbi/lib/openai/models/responses/response_reasoning_summary_text_done_event.rbi @@ -30,14 +30,17 @@ module OpenAI .returns(T.attached_class) end def self.new( + # The ID of the item this summary text is associated with. item_id:, + # The index of the output item this summary text is associated with. output_index:, + # The index of the summary part within the reasoning summary. summary_index:, + # The full text of the completed reasoning summary. text:, + # The type of the event. Always `response.reasoning_summary_text.done`. type: :"response.reasoning_summary_text.done" - ) - end - + ); end sig do override .returns({ diff --git a/rbi/lib/openai/models/responses/response_refusal_delta_event.rbi b/rbi/lib/openai/models/responses/response_refusal_delta_event.rbi index ec2c268f..204d391f 100644 --- a/rbi/lib/openai/models/responses/response_refusal_delta_event.rbi +++ b/rbi/lib/openai/models/responses/response_refusal_delta_event.rbi @@ -29,8 +29,18 @@ module OpenAI params(content_index: Integer, delta: String, item_id: String, output_index: Integer, type: Symbol) .returns(T.attached_class) end - def self.new(content_index:, delta:, item_id:, output_index:, type: :"response.refusal.delta"); end - + def self.new( + # The index of the content part that the refusal text is added to. + content_index:, + # The refusal text that is added. + delta:, + # The ID of the output item that the refusal text is added to. + item_id:, + # The index of the output item that the refusal text is added to. + output_index:, + # The type of the event. Always `response.refusal.delta`. + type: :"response.refusal.delta" + ); end sig do override .returns({ diff --git a/rbi/lib/openai/models/responses/response_refusal_done_event.rbi b/rbi/lib/openai/models/responses/response_refusal_done_event.rbi index 9f7db249..5bc2d764 100644 --- a/rbi/lib/openai/models/responses/response_refusal_done_event.rbi +++ b/rbi/lib/openai/models/responses/response_refusal_done_event.rbi @@ -35,8 +35,18 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(content_index:, item_id:, output_index:, refusal:, type: :"response.refusal.done"); end - + def self.new( + # The index of the content part that the refusal text is finalized. + content_index:, + # The ID of the output item that the refusal text is finalized. + item_id:, + # The index of the output item that the refusal text is finalized. + output_index:, + # The refusal text that is finalized. + refusal:, + # The type of the event. Always `response.refusal.done`. + type: :"response.refusal.done" + ); end sig do override .returns({ diff --git a/rbi/lib/openai/models/responses/response_retrieve_params.rbi b/rbi/lib/openai/models/responses/response_retrieve_params.rbi index 39ea7e1c..876e71b5 100644 --- a/rbi/lib/openai/models/responses/response_retrieve_params.rbi +++ b/rbi/lib/openai/models/responses/response_retrieve_params.rbi @@ -22,8 +22,12 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(include: nil, request_options: {}); end - + def self.new( + # Additional fields to include in the response. See the `include` parameter for + # Response creation above for more information. + include: nil, + request_options: {} + ); end sig do override .returns( diff --git a/rbi/lib/openai/models/responses/response_text_annotation_delta_event.rbi b/rbi/lib/openai/models/responses/response_text_annotation_delta_event.rbi index 16c54b75..91bc1793 100644 --- a/rbi/lib/openai/models/responses/response_text_annotation_delta_event.rbi +++ b/rbi/lib/openai/models/responses/response_text_annotation_delta_event.rbi @@ -54,11 +54,17 @@ module OpenAI .returns(T.attached_class) end def self.new( + # A citation to a file. annotation:, + # The index of the annotation that was added. annotation_index:, + # The index of the content part that the text annotation was added to. content_index:, + # The ID of the output item that the text annotation was added to. item_id:, + # The index of the output item that the text annotation was added to. output_index:, + # The type of the event. Always `response.output_text.annotation.added`. type: :"response.output_text.annotation.added" ); end sig do @@ -99,8 +105,14 @@ module OpenAI # A citation to a file. sig { params(file_id: String, index: Integer, type: Symbol).returns(T.attached_class) } - def self.new(file_id:, index:, type: :file_citation); end - + def self.new( + # The ID of the file. + file_id:, + # The index of the file in the list of files. + index:, + # The type of the file citation. Always `file_citation`. + type: :file_citation + ); end sig { override.returns({file_id: String, index: Integer, type: Symbol}) } def to_hash; end end @@ -131,8 +143,18 @@ module OpenAI params(end_index: Integer, start_index: Integer, title: String, url: String, type: Symbol) .returns(T.attached_class) end - def self.new(end_index:, start_index:, title:, url:, type: :url_citation); end - + def self.new( + # The index of the last character of the URL citation in the message. + end_index:, + # The index of the first character of the URL citation in the message. + start_index:, + # The title of the web resource. + title:, + # The URL of the web resource. + url:, + # The type of the URL citation. Always `url_citation`. + type: :url_citation + ); end sig do override.returns( { @@ -162,8 +184,14 @@ module OpenAI # A path to a file. sig { params(file_id: String, index: Integer, type: Symbol).returns(T.attached_class) } - def self.new(file_id:, index:, type: :file_path); end - + def self.new( + # The ID of the file. + file_id:, + # The index of the file in the list of files. + index:, + # The type of the file path. Always `file_path`. + type: :file_path + ); end sig { override.returns({file_id: String, index: Integer, type: Symbol}) } def to_hash; end end diff --git a/rbi/lib/openai/models/responses/response_text_config.rbi b/rbi/lib/openai/models/responses/response_text_config.rbi index 68a82916..2f1c517e 100644 --- a/rbi/lib/openai/models/responses/response_text_config.rbi +++ b/rbi/lib/openai/models/responses/response_text_config.rbi @@ -59,8 +59,22 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(format_: nil); end - + def self.new( + # An object specifying the format that the model must output. + # + # Configuring `{ "type": "json_schema" }` enables Structured Outputs, which + # ensures the model will match your supplied JSON schema. Learn more in the + # [Structured Outputs guide](https://platform.openai.com/docs/guides/structured-outputs). + # + # The default format is `{ "type": "text" }` with no additional options. + # + # **Not recommended for gpt-4o and newer models:** + # + # Setting to `{ "type": "json_object" }` enables the older JSON mode, which + # ensures the message the model generates is valid JSON. Using `json_schema` is + # preferred for models that support it. + format_: nil + ); end sig do override .returns( diff --git a/rbi/lib/openai/models/responses/response_text_delta_event.rbi b/rbi/lib/openai/models/responses/response_text_delta_event.rbi index 7880e8f9..29ea7431 100644 --- a/rbi/lib/openai/models/responses/response_text_delta_event.rbi +++ b/rbi/lib/openai/models/responses/response_text_delta_event.rbi @@ -29,9 +29,18 @@ module OpenAI params(content_index: Integer, delta: String, item_id: String, output_index: Integer, type: Symbol) .returns(T.attached_class) end - def self.new(content_index:, delta:, item_id:, output_index:, type: :"response.output_text.delta") - end - + def self.new( + # The index of the content part that the text delta was added to. + content_index:, + # The text delta that was added. + delta:, + # The ID of the output item that the text delta was added to. + item_id:, + # The index of the output item that the text delta was added to. + output_index:, + # The type of the event. Always `response.output_text.delta`. + type: :"response.output_text.delta" + ); end sig do override .returns({ diff --git a/rbi/lib/openai/models/responses/response_text_done_event.rbi b/rbi/lib/openai/models/responses/response_text_done_event.rbi index 52fa9bef..40459549 100644 --- a/rbi/lib/openai/models/responses/response_text_done_event.rbi +++ b/rbi/lib/openai/models/responses/response_text_done_event.rbi @@ -29,8 +29,18 @@ module OpenAI params(content_index: Integer, item_id: String, output_index: Integer, text: String, type: Symbol) .returns(T.attached_class) end - def self.new(content_index:, item_id:, output_index:, text:, type: :"response.output_text.done"); end - + def self.new( + # The index of the content part that the text content is finalized. + content_index:, + # The ID of the output item that the text content is finalized. + item_id:, + # The index of the output item that the text content is finalized. + output_index:, + # The text content that is finalized. + text:, + # The type of the event. Always `response.output_text.done`. + type: :"response.output_text.done" + ); end sig do override .returns({ diff --git a/rbi/lib/openai/models/responses/response_usage.rbi b/rbi/lib/openai/models/responses/response_usage.rbi index 852d91c4..f435b178 100644 --- a/rbi/lib/openai/models/responses/response_usage.rbi +++ b/rbi/lib/openai/models/responses/response_usage.rbi @@ -53,14 +53,17 @@ module OpenAI .returns(T.attached_class) end def self.new( + # The number of input tokens. input_tokens:, + # A detailed breakdown of the input tokens. input_tokens_details:, + # The number of output tokens. output_tokens:, + # A detailed breakdown of the output tokens. output_tokens_details:, + # The total number of tokens used. total_tokens: - ) - end - + ); end sig do override .returns( @@ -83,8 +86,11 @@ module OpenAI # A detailed breakdown of the input tokens. sig { params(cached_tokens: Integer).returns(T.attached_class) } - def self.new(cached_tokens:); end - + def self.new( + # The number of tokens that were retrieved from the cache. + # [More on prompt caching](https://platform.openai.com/docs/guides/prompt-caching). + cached_tokens: + ); end sig { override.returns({cached_tokens: Integer}) } def to_hash; end end @@ -96,8 +102,10 @@ module OpenAI # A detailed breakdown of the output tokens. sig { params(reasoning_tokens: Integer).returns(T.attached_class) } - def self.new(reasoning_tokens:); end - + def self.new( + # The number of reasoning tokens. + reasoning_tokens: + ); end sig { override.returns({reasoning_tokens: Integer}) } def to_hash; end end diff --git a/rbi/lib/openai/models/responses/response_web_search_call_completed_event.rbi b/rbi/lib/openai/models/responses/response_web_search_call_completed_event.rbi index fab93564..1f479679 100644 --- a/rbi/lib/openai/models/responses/response_web_search_call_completed_event.rbi +++ b/rbi/lib/openai/models/responses/response_web_search_call_completed_event.rbi @@ -18,8 +18,14 @@ module OpenAI # Emitted when a web search call is completed. sig { params(item_id: String, output_index: Integer, type: Symbol).returns(T.attached_class) } - def self.new(item_id:, output_index:, type: :"response.web_search_call.completed"); end - + def self.new( + # Unique ID for the output item associated with the web search call. + item_id:, + # The index of the output item that the web search call is associated with. + output_index:, + # The type of the event. Always `response.web_search_call.completed`. + type: :"response.web_search_call.completed" + ); end sig { override.returns({item_id: String, output_index: Integer, type: Symbol}) } def to_hash; end end diff --git a/rbi/lib/openai/models/responses/response_web_search_call_in_progress_event.rbi b/rbi/lib/openai/models/responses/response_web_search_call_in_progress_event.rbi index b98665f8..f8c355d5 100644 --- a/rbi/lib/openai/models/responses/response_web_search_call_in_progress_event.rbi +++ b/rbi/lib/openai/models/responses/response_web_search_call_in_progress_event.rbi @@ -18,8 +18,14 @@ module OpenAI # Emitted when a web search call is initiated. sig { params(item_id: String, output_index: Integer, type: Symbol).returns(T.attached_class) } - def self.new(item_id:, output_index:, type: :"response.web_search_call.in_progress"); end - + def self.new( + # Unique ID for the output item associated with the web search call. + item_id:, + # The index of the output item that the web search call is associated with. + output_index:, + # The type of the event. Always `response.web_search_call.in_progress`. + type: :"response.web_search_call.in_progress" + ); end sig { override.returns({item_id: String, output_index: Integer, type: Symbol}) } def to_hash; end end diff --git a/rbi/lib/openai/models/responses/response_web_search_call_searching_event.rbi b/rbi/lib/openai/models/responses/response_web_search_call_searching_event.rbi index 0ad8d67e..0cffcfae 100644 --- a/rbi/lib/openai/models/responses/response_web_search_call_searching_event.rbi +++ b/rbi/lib/openai/models/responses/response_web_search_call_searching_event.rbi @@ -18,8 +18,14 @@ module OpenAI # Emitted when a web search call is executing. sig { params(item_id: String, output_index: Integer, type: Symbol).returns(T.attached_class) } - def self.new(item_id:, output_index:, type: :"response.web_search_call.searching"); end - + def self.new( + # Unique ID for the output item associated with the web search call. + item_id:, + # The index of the output item that the web search call is associated with. + output_index:, + # The type of the event. Always `response.web_search_call.searching`. + type: :"response.web_search_call.searching" + ); end sig { override.returns({item_id: String, output_index: Integer, type: Symbol}) } def to_hash; end end diff --git a/rbi/lib/openai/models/responses/tool_choice_function.rbi b/rbi/lib/openai/models/responses/tool_choice_function.rbi index d0753332..98de2eb9 100644 --- a/rbi/lib/openai/models/responses/tool_choice_function.rbi +++ b/rbi/lib/openai/models/responses/tool_choice_function.rbi @@ -14,8 +14,12 @@ module OpenAI # Use this option to force the model to call a specific function. sig { params(name: String, type: Symbol).returns(T.attached_class) } - def self.new(name:, type: :function); end - + def self.new( + # The name of the function to call. + name:, + # For function calling, the type is always `function`. + type: :function + ); end sig { override.returns({name: String, type: Symbol}) } def to_hash; end end diff --git a/rbi/lib/openai/models/responses/tool_choice_types.rbi b/rbi/lib/openai/models/responses/tool_choice_types.rbi index 1b8ed0b6..943a8c1f 100644 --- a/rbi/lib/openai/models/responses/tool_choice_types.rbi +++ b/rbi/lib/openai/models/responses/tool_choice_types.rbi @@ -18,8 +18,17 @@ module OpenAI # Indicates that the model should use a built-in tool to generate a response. # [Learn more about built-in tools](https://platform.openai.com/docs/guides/tools). sig { params(type: OpenAI::Models::Responses::ToolChoiceTypes::Type::OrSymbol).returns(T.attached_class) } - def self.new(type:); end - + def self.new( + # The type of hosted tool the model should to use. Learn more about + # [built-in tools](https://platform.openai.com/docs/guides/tools). + # + # Allowed values are: + # + # - `file_search` + # - `web_search_preview` + # - `computer_use_preview` + type: + ); end sig { override.returns({type: OpenAI::Models::Responses::ToolChoiceTypes::Type::OrSymbol}) } def to_hash; end diff --git a/rbi/lib/openai/models/responses/web_search_tool.rbi b/rbi/lib/openai/models/responses/web_search_tool.rbi index 9b23c93c..fa6955fd 100644 --- a/rbi/lib/openai/models/responses/web_search_tool.rbi +++ b/rbi/lib/openai/models/responses/web_search_tool.rbi @@ -41,8 +41,17 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(type:, search_context_size: nil, user_location: nil); end - + def self.new( + # The type of the web search tool. One of: + # + # - `web_search_preview` + # - `web_search_preview_2025_03_11` + type:, + # High level guidance for the amount of context window space to use for the + # search. One of `low`, `medium`, or `high`. `medium` is the default. + search_context_size: nil, + user_location: nil + ); end sig do override .returns( @@ -130,8 +139,20 @@ module OpenAI params(city: String, country: String, region: String, timezone: String, type: Symbol) .returns(T.attached_class) end - def self.new(city: nil, country: nil, region: nil, timezone: nil, type: :approximate); end - + def self.new( + # Free text input for the city of the user, e.g. `San Francisco`. + city: nil, + # The two-letter [ISO country code](https://en.wikipedia.org/wiki/ISO_3166-1) of + # the user, e.g. `US`. + country: nil, + # Free text input for the region of the user, e.g. `California`. + region: nil, + # The [IANA timezone](https://timeapi.io/documentation/iana-timezones) of the + # user, e.g. `America/Los_Angeles`. + timezone: nil, + # The type of location approximation. Always `approximate`. + type: :approximate + ); end sig do override.returns({type: Symbol, city: String, country: String, region: String, timezone: String}) end diff --git a/rbi/lib/openai/models/static_file_chunking_strategy.rbi b/rbi/lib/openai/models/static_file_chunking_strategy.rbi index ce9bb8d5..ae5b7298 100644 --- a/rbi/lib/openai/models/static_file_chunking_strategy.rbi +++ b/rbi/lib/openai/models/static_file_chunking_strategy.rbi @@ -15,8 +15,15 @@ module OpenAI attr_accessor :max_chunk_size_tokens sig { params(chunk_overlap_tokens: Integer, max_chunk_size_tokens: Integer).returns(T.attached_class) } - def self.new(chunk_overlap_tokens:, max_chunk_size_tokens:); end - + def self.new( + # The number of tokens that overlap between chunks. The default value is `400`. + # + # Note that the overlap must not exceed half of `max_chunk_size_tokens`. + chunk_overlap_tokens:, + # The maximum number of tokens in each chunk. The default value is `800`. The + # minimum value is `100` and the maximum value is `4096`. + max_chunk_size_tokens: + ); end sig { override.returns({chunk_overlap_tokens: Integer, max_chunk_size_tokens: Integer}) } def to_hash; end end diff --git a/rbi/lib/openai/models/static_file_chunking_strategy_object.rbi b/rbi/lib/openai/models/static_file_chunking_strategy_object.rbi index a5f3133a..2a978597 100644 --- a/rbi/lib/openai/models/static_file_chunking_strategy_object.rbi +++ b/rbi/lib/openai/models/static_file_chunking_strategy_object.rbi @@ -17,8 +17,11 @@ module OpenAI params(static: T.any(OpenAI::Models::StaticFileChunkingStrategy, OpenAI::Internal::AnyHash), type: Symbol) .returns(T.attached_class) end - def self.new(static:, type: :static); end - + def self.new( + static:, + # Always `static`. + type: :static + ); end sig { override.returns({static: OpenAI::Models::StaticFileChunkingStrategy, type: Symbol}) } def to_hash; end end diff --git a/rbi/lib/openai/models/static_file_chunking_strategy_object_param.rbi b/rbi/lib/openai/models/static_file_chunking_strategy_object_param.rbi index 49f61a35..ba278994 100644 --- a/rbi/lib/openai/models/static_file_chunking_strategy_object_param.rbi +++ b/rbi/lib/openai/models/static_file_chunking_strategy_object_param.rbi @@ -18,8 +18,11 @@ module OpenAI params(static: T.any(OpenAI::Models::StaticFileChunkingStrategy, OpenAI::Internal::AnyHash), type: Symbol) .returns(T.attached_class) end - def self.new(static:, type: :static); end - + def self.new( + static:, + # Always `static`. + type: :static + ); end sig { override.returns({static: OpenAI::Models::StaticFileChunkingStrategy, type: Symbol}) } def to_hash; end end diff --git a/rbi/lib/openai/models/upload.rbi b/rbi/lib/openai/models/upload.rbi index 083dbd10..f0483771 100644 --- a/rbi/lib/openai/models/upload.rbi +++ b/rbi/lib/openai/models/upload.rbi @@ -60,18 +60,27 @@ module OpenAI .returns(T.attached_class) end def self.new( + # The Upload unique identifier, which can be referenced in API endpoints. id:, + # The intended number of bytes to be uploaded. bytes:, + # The Unix timestamp (in seconds) for when the Upload was created. created_at:, + # The Unix timestamp (in seconds) for when the Upload will expire. expires_at:, + # The name of the file to be uploaded. filename:, + # The intended purpose of the file. + # [Please refer here](https://platform.openai.com/docs/api-reference/files/object#files/object-purpose) + # for acceptable values. purpose:, + # The status of the Upload. status:, + # The `File` object represents a document that has been uploaded to OpenAI. file: nil, + # The object type, which is always "upload". object: :upload - ) - end - + ); end sig do override .returns( diff --git a/rbi/lib/openai/models/upload_complete_params.rbi b/rbi/lib/openai/models/upload_complete_params.rbi index 344ab351..71c0c76b 100644 --- a/rbi/lib/openai/models/upload_complete_params.rbi +++ b/rbi/lib/openai/models/upload_complete_params.rbi @@ -26,8 +26,14 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(part_ids:, md5: nil, request_options: {}); end - + def self.new( + # The ordered list of Part IDs. + part_ids:, + # The optional md5 checksum for the file contents to verify if the bytes uploaded + # matches what you expect. + md5: nil, + request_options: {} + ); end sig do override.returns({part_ids: T::Array[String], md5: String, request_options: OpenAI::RequestOptions}) end diff --git a/rbi/lib/openai/models/upload_create_params.rbi b/rbi/lib/openai/models/upload_create_params.rbi index 74c1e762..cd69d21c 100644 --- a/rbi/lib/openai/models/upload_create_params.rbi +++ b/rbi/lib/openai/models/upload_create_params.rbi @@ -38,8 +38,23 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(bytes:, filename:, mime_type:, purpose:, request_options: {}); end - + def self.new( + # The number of bytes in the file you are uploading. + bytes:, + # The name of the file to upload. + filename:, + # The MIME type of the file. + # + # This must fall within the supported MIME types for your file purpose. See the + # supported MIME types for assistants and vision. + mime_type:, + # The intended purpose of the uploaded file. + # + # See the + # [documentation on File purposes](https://platform.openai.com/docs/api-reference/files/create#files-create-purpose). + purpose:, + request_options: {} + ); end sig do override .returns( diff --git a/rbi/lib/openai/models/uploads/part_create_params.rbi b/rbi/lib/openai/models/uploads/part_create_params.rbi index 3915001e..1a62a478 100644 --- a/rbi/lib/openai/models/uploads/part_create_params.rbi +++ b/rbi/lib/openai/models/uploads/part_create_params.rbi @@ -18,8 +18,11 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(data:, request_options: {}); end - + def self.new( + # The chunk of bytes for this Part. + data:, + request_options: {} + ); end sig { override.returns({data: T.any(Pathname, StringIO), request_options: OpenAI::RequestOptions}) } def to_hash; end end diff --git a/rbi/lib/openai/models/uploads/upload_part.rbi b/rbi/lib/openai/models/uploads/upload_part.rbi index a6d037e0..17a8849b 100644 --- a/rbi/lib/openai/models/uploads/upload_part.rbi +++ b/rbi/lib/openai/models/uploads/upload_part.rbi @@ -24,8 +24,16 @@ module OpenAI sig do params(id: String, created_at: Integer, upload_id: String, object: Symbol).returns(T.attached_class) end - def self.new(id:, created_at:, upload_id:, object: :"upload.part"); end - + def self.new( + # The upload Part unique identifier, which can be referenced in API endpoints. + id:, + # The Unix timestamp (in seconds) for when the Part was created. + created_at:, + # The ID of the Upload object that this Part was added to. + upload_id:, + # The object type, which is always `upload.part`. + object: :"upload.part" + ); end sig { override.returns({id: String, created_at: Integer, object: Symbol, upload_id: String}) } def to_hash; end end diff --git a/rbi/lib/openai/models/vector_store.rbi b/rbi/lib/openai/models/vector_store.rbi index dd704e90..eefaf648 100644 --- a/rbi/lib/openai/models/vector_store.rbi +++ b/rbi/lib/openai/models/vector_store.rbi @@ -78,16 +78,33 @@ module OpenAI .returns(T.attached_class) end def self.new( + # The identifier, which can be referenced in API endpoints. id:, + # The Unix timestamp (in seconds) for when the vector store was created. created_at:, file_counts:, + # The Unix timestamp (in seconds) for when the vector store was last active. last_active_at:, + # 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:, + # The name of the vector store. name:, + # The status of the vector store, which can be either `expired`, `in_progress`, or + # `completed`. A status of `completed` indicates that the vector store is ready + # for use. status:, + # The total number of bytes used by the files in the vector store. usage_bytes:, + # The expiration policy for a vector store. expires_after: nil, + # The Unix timestamp (in seconds) for when the vector store will expire. expires_at: nil, + # The object type, which is always `vector_store`. object: :vector_store ); end sig do @@ -141,8 +158,18 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(cancelled:, completed:, failed:, in_progress:, total:); end - + def self.new( + # The number of files that were cancelled. + cancelled:, + # The number of files that have been successfully processed. + completed:, + # The number of files that have failed to process. + failed:, + # The number of files that are currently being processed. + in_progress:, + # The total number of files. + total: + ); end sig do override .returns({ @@ -185,8 +212,13 @@ module OpenAI # The expiration policy for a vector store. sig { params(days: Integer, anchor: Symbol).returns(T.attached_class) } - def self.new(days:, anchor: :last_active_at); end - + def self.new( + # The number of days after the anchor time that the vector store will expire. + days:, + # Anchor timestamp after which the expiration policy applies. Supported anchors: + # `last_active_at`. + anchor: :last_active_at + ); end sig { override.returns({anchor: Symbol, days: Integer}) } def to_hash; end end diff --git a/rbi/lib/openai/models/vector_store_create_params.rbi b/rbi/lib/openai/models/vector_store_create_params.rbi index c6256c21..ea4b49c5 100644 --- a/rbi/lib/openai/models/vector_store_create_params.rbi +++ b/rbi/lib/openai/models/vector_store_create_params.rbi @@ -85,15 +85,26 @@ module OpenAI .returns(T.attached_class) end def self.new( + # The chunking strategy used to chunk the file(s). If not set, will use the `auto` + # strategy. Only applicable if `file_ids` is non-empty. chunking_strategy: nil, + # The expiration policy for a vector store. expires_after: nil, + # A list of [File](https://platform.openai.com/docs/api-reference/files) IDs that + # the vector store should use. Useful for tools like `file_search` that can access + # files. file_ids: nil, + # 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: nil, + # The name of the vector store. name: nil, request_options: {} - ) - end - + ); end sig do override .returns( @@ -124,8 +135,13 @@ module OpenAI # The expiration policy for a vector store. sig { params(days: Integer, anchor: Symbol).returns(T.attached_class) } - def self.new(days:, anchor: :last_active_at); end - + def self.new( + # The number of days after the anchor time that the vector store will expire. + days:, + # Anchor timestamp after which the expiration policy applies. Supported anchors: + # `last_active_at`. + anchor: :last_active_at + ); end sig { override.returns({anchor: Symbol, days: Integer}) } def to_hash; end end diff --git a/rbi/lib/openai/models/vector_store_list_params.rbi b/rbi/lib/openai/models/vector_store_list_params.rbi index 802bf5c5..5a6218c2 100644 --- a/rbi/lib/openai/models/vector_store_list_params.rbi +++ b/rbi/lib/openai/models/vector_store_list_params.rbi @@ -52,8 +52,25 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(after: nil, before: nil, limit: nil, order: nil, request_options: {}); end - + def self.new( + # A cursor for use in pagination. `after` is an object ID that defines your place + # in the list. For instance, if you make a list request and receive 100 objects, + # ending with obj_foo, your subsequent call can include after=obj_foo in order to + # fetch the next page of the list. + after: nil, + # A cursor for use in pagination. `before` is an object ID that defines your place + # in the list. For instance, if you make a list request and receive 100 objects, + # starting with obj_foo, your subsequent call can include before=obj_foo in order + # to fetch the previous page of the list. + before: nil, + # A limit on the number of objects to be returned. Limit can range between 1 and + # 100, and the default is 20. + limit: nil, + # Sort order by the `created_at` timestamp of the objects. `asc` for ascending + # order and `desc` for descending order. + order: nil, + request_options: {} + ); end sig do override .returns( diff --git a/rbi/lib/openai/models/vector_store_search_params.rbi b/rbi/lib/openai/models/vector_store_search_params.rbi index 47525fb1..e187c6b1 100644 --- a/rbi/lib/openai/models/vector_store_search_params.rbi +++ b/rbi/lib/openai/models/vector_store_search_params.rbi @@ -61,15 +61,19 @@ module OpenAI .returns(T.attached_class) end def self.new( + # A query string for a search query:, + # A filter to apply based on file attributes. filters: nil, + # The maximum number of results to return. This number should be between 1 and 50 + # inclusive. max_num_results: nil, + # Ranking options for search. ranking_options: nil, + # Whether to rewrite the natural language query for vector search. rewrite_query: nil, request_options: {} - ) - end - + ); end sig do override .returns( diff --git a/rbi/lib/openai/models/vector_store_search_response.rbi b/rbi/lib/openai/models/vector_store_search_response.rbi index fdfceacf..26ac1ca1 100644 --- a/rbi/lib/openai/models/vector_store_search_response.rbi +++ b/rbi/lib/openai/models/vector_store_search_response.rbi @@ -37,8 +37,22 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(attributes:, content:, file_id:, filename:, score:); end - + def self.new( + # 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, booleans, or numbers. + attributes:, + # Content chunks from the file. + content:, + # The ID of the vector store file. + file_id:, + # The name of the vector store file. + filename:, + # The similarity score for the result. + score: + ); end sig do override .returns( @@ -73,8 +87,12 @@ module OpenAI params(text: String, type: OpenAI::Models::VectorStoreSearchResponse::Content::Type::OrSymbol) .returns(T.attached_class) end - def self.new(text:, type:); end - + def self.new( + # The text content returned from search. + text:, + # The type of content. + type: + ); end sig do override .returns({text: String, type: OpenAI::Models::VectorStoreSearchResponse::Content::Type::TaggedSymbol}) diff --git a/rbi/lib/openai/models/vector_store_update_params.rbi b/rbi/lib/openai/models/vector_store_update_params.rbi index b40311aa..5955b4ed 100644 --- a/rbi/lib/openai/models/vector_store_update_params.rbi +++ b/rbi/lib/openai/models/vector_store_update_params.rbi @@ -40,8 +40,20 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(expires_after: nil, metadata: nil, name: nil, request_options: {}); end - + def self.new( + # The expiration policy for a vector store. + expires_after: nil, + # 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: nil, + # The name of the vector store. + name: nil, + request_options: {} + ); end sig do override .returns( @@ -67,8 +79,13 @@ module OpenAI # The expiration policy for a vector store. sig { params(days: Integer, anchor: Symbol).returns(T.attached_class) } - def self.new(days:, anchor: :last_active_at); end - + def self.new( + # The number of days after the anchor time that the vector store will expire. + days:, + # Anchor timestamp after which the expiration policy applies. Supported anchors: + # `last_active_at`. + anchor: :last_active_at + ); end sig { override.returns({anchor: Symbol, days: Integer}) } def to_hash; end end diff --git a/rbi/lib/openai/models/vector_stores/file_batch_create_params.rbi b/rbi/lib/openai/models/vector_stores/file_batch_create_params.rbi index f64e4470..9fbb2a61 100644 --- a/rbi/lib/openai/models/vector_stores/file_batch_create_params.rbi +++ b/rbi/lib/openai/models/vector_stores/file_batch_create_params.rbi @@ -60,8 +60,22 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(file_ids:, attributes: nil, chunking_strategy: nil, request_options: {}); end - + def self.new( + # A list of [File](https://platform.openai.com/docs/api-reference/files) IDs that + # the vector store should use. Useful for tools like `file_search` that can access + # files. + file_ids:, + # 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, booleans, or numbers. + attributes: nil, + # The chunking strategy used to chunk the file(s). If not set, will use the `auto` + # strategy. Only applicable if `file_ids` is non-empty. + chunking_strategy: nil, + request_options: {} + ); end sig do override .returns( diff --git a/rbi/lib/openai/models/vector_stores/file_batch_list_files_params.rbi b/rbi/lib/openai/models/vector_stores/file_batch_list_files_params.rbi index 041e3c17..d5544112 100644 --- a/rbi/lib/openai/models/vector_stores/file_batch_list_files_params.rbi +++ b/rbi/lib/openai/models/vector_stores/file_batch_list_files_params.rbi @@ -67,15 +67,26 @@ module OpenAI end def self.new( vector_store_id:, + # A cursor for use in pagination. `after` is an object ID that defines your place + # in the list. For instance, if you make a list request and receive 100 objects, + # ending with obj_foo, your subsequent call can include after=obj_foo in order to + # fetch the next page of the list. after: nil, + # A cursor for use in pagination. `before` is an object ID that defines your place + # in the list. For instance, if you make a list request and receive 100 objects, + # starting with obj_foo, your subsequent call can include before=obj_foo in order + # to fetch the previous page of the list. before: nil, + # Filter by file status. One of `in_progress`, `completed`, `failed`, `cancelled`. filter: nil, + # A limit on the number of objects to be returned. Limit can range between 1 and + # 100, and the default is 20. limit: nil, + # Sort order by the `created_at` timestamp of the objects. `asc` for ascending + # order and `desc` for descending order. order: nil, request_options: {} - ) - end - + ); end sig do override .returns( diff --git a/rbi/lib/openai/models/vector_stores/file_content_response.rbi b/rbi/lib/openai/models/vector_stores/file_content_response.rbi index d7f8b8d3..658c26b7 100644 --- a/rbi/lib/openai/models/vector_stores/file_content_response.rbi +++ b/rbi/lib/openai/models/vector_stores/file_content_response.rbi @@ -19,8 +19,12 @@ module OpenAI attr_writer :type sig { params(text: String, type: String).returns(T.attached_class) } - def self.new(text: nil, type: nil); end - + def self.new( + # The text content + text: nil, + # The content type (currently only `"text"`) + type: nil + ); end sig { override.returns({text: String, type: String}) } def to_hash; end end diff --git a/rbi/lib/openai/models/vector_stores/file_create_params.rbi b/rbi/lib/openai/models/vector_stores/file_create_params.rbi index 774e6c2e..17f31378 100644 --- a/rbi/lib/openai/models/vector_stores/file_create_params.rbi +++ b/rbi/lib/openai/models/vector_stores/file_create_params.rbi @@ -60,8 +60,22 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(file_id:, attributes: nil, chunking_strategy: nil, request_options: {}); end - + def self.new( + # A [File](https://platform.openai.com/docs/api-reference/files) ID that the + # vector store should use. Useful for tools like `file_search` that can access + # files. + file_id:, + # 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, booleans, or numbers. + attributes: nil, + # The chunking strategy used to chunk the file(s). If not set, will use the `auto` + # strategy. Only applicable if `file_ids` is non-empty. + chunking_strategy: nil, + request_options: {} + ); end sig do override .returns( diff --git a/rbi/lib/openai/models/vector_stores/file_list_params.rbi b/rbi/lib/openai/models/vector_stores/file_list_params.rbi index 0ef2cb3a..5e252bbb 100644 --- a/rbi/lib/openai/models/vector_stores/file_list_params.rbi +++ b/rbi/lib/openai/models/vector_stores/file_list_params.rbi @@ -61,8 +61,27 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(after: nil, before: nil, filter: nil, limit: nil, order: nil, request_options: {}); end - + def self.new( + # A cursor for use in pagination. `after` is an object ID that defines your place + # in the list. For instance, if you make a list request and receive 100 objects, + # ending with obj_foo, your subsequent call can include after=obj_foo in order to + # fetch the next page of the list. + after: nil, + # A cursor for use in pagination. `before` is an object ID that defines your place + # in the list. For instance, if you make a list request and receive 100 objects, + # starting with obj_foo, your subsequent call can include before=obj_foo in order + # to fetch the previous page of the list. + before: nil, + # Filter by file status. One of `in_progress`, `completed`, `failed`, `cancelled`. + filter: nil, + # A limit on the number of objects to be returned. Limit can range between 1 and + # 100, and the default is 20. + limit: nil, + # Sort order by the `created_at` timestamp of the objects. `asc` for ascending + # order and `desc` for descending order. + order: nil, + request_options: {} + ); end sig do override .returns( diff --git a/rbi/lib/openai/models/vector_stores/file_update_params.rbi b/rbi/lib/openai/models/vector_stores/file_update_params.rbi index 41edb9ab..1d18d667 100644 --- a/rbi/lib/openai/models/vector_stores/file_update_params.rbi +++ b/rbi/lib/openai/models/vector_stores/file_update_params.rbi @@ -26,8 +26,16 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(vector_store_id:, attributes:, request_options: {}); end - + def self.new( + vector_store_id:, + # 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, booleans, or numbers. + attributes:, + request_options: {} + ); end sig do override .returns( diff --git a/rbi/lib/openai/models/vector_stores/vector_store_file.rbi b/rbi/lib/openai/models/vector_stores/vector_store_file.rbi index 72356d37..168da5d5 100644 --- a/rbi/lib/openai/models/vector_stores/vector_store_file.rbi +++ b/rbi/lib/openai/models/vector_stores/vector_store_file.rbi @@ -97,14 +97,34 @@ module OpenAI .returns(T.attached_class) end def self.new( + # The identifier, which can be referenced in API endpoints. id:, + # The Unix timestamp (in seconds) for when the vector store file was created. created_at:, + # The last error associated with this vector store file. Will be `null` if there + # are no errors. last_error:, + # The status of the vector store file, which can be either `in_progress`, + # `completed`, `cancelled`, or `failed`. The status `completed` indicates that the + # vector store file is ready for use. status:, + # The total vector store usage in bytes. Note that this may be different from the + # original file size. usage_bytes:, + # The ID of the + # [vector store](https://platform.openai.com/docs/api-reference/vector-stores/object) + # that the [File](https://platform.openai.com/docs/api-reference/files) is + # attached to. vector_store_id:, + # 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, booleans, or numbers. attributes: nil, + # The strategy used to chunk the file. chunking_strategy: nil, + # The object type, which is always `vector_store.file`. object: :"vector_store.file" ); end sig do @@ -140,8 +160,12 @@ module OpenAI params(code: OpenAI::Models::VectorStores::VectorStoreFile::LastError::Code::OrSymbol, message: String) .returns(T.attached_class) end - def self.new(code:, message:); end - + def self.new( + # One of `server_error` or `rate_limit_exceeded`. + code:, + # A human-readable description of the error. + message: + ); end sig do override .returns( diff --git a/rbi/lib/openai/models/vector_stores/vector_store_file_batch.rbi b/rbi/lib/openai/models/vector_stores/vector_store_file_batch.rbi index 4b1e6a60..18461980 100644 --- a/rbi/lib/openai/models/vector_stores/vector_store_file_batch.rbi +++ b/rbi/lib/openai/models/vector_stores/vector_store_file_batch.rbi @@ -53,15 +53,23 @@ module OpenAI .returns(T.attached_class) end def self.new( + # The identifier, which can be referenced in API endpoints. id:, + # The Unix timestamp (in seconds) for when the vector store files batch was + # created. created_at:, file_counts:, + # The status of the vector store files batch, which can be either `in_progress`, + # `completed`, `cancelled` or `failed`. status:, + # The ID of the + # [vector store](https://platform.openai.com/docs/api-reference/vector-stores/object) + # that the [File](https://platform.openai.com/docs/api-reference/files) is + # attached to. vector_store_id:, + # The object type, which is always `vector_store.file_batch`. object: :"vector_store.files_batch" - ) - end - + ); end sig do override .returns( @@ -108,8 +116,18 @@ module OpenAI ) .returns(T.attached_class) end - def self.new(cancelled:, completed:, failed:, in_progress:, total:); end - + def self.new( + # The number of files that where cancelled. + cancelled:, + # The number of files that have been processed. + completed:, + # The number of files that have failed to process. + failed:, + # The number of files that are currently being processed. + in_progress:, + # The total number of files. + total: + ); end sig do override .returns({ From ece942cb2c7982ed73e20321318a0f8634c22023 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Thu, 24 Apr 2025 18:59:25 +0000 Subject: [PATCH 14/47] feat: support specifying content-type with FilePart class --- lib/openai.rb | 3 +- lib/openai/file_part.rb | 55 +++++++++++ lib/openai/internal/type/converter.rb | 2 +- .../type/{io_like.rb => file_input.rb} | 12 ++- lib/openai/internal/util.rb | 96 ++++++++++--------- .../audio/transcription_create_params.rb | 6 +- .../models/audio/translation_create_params.rb | 6 +- lib/openai/models/file_create_params.rb | 6 +- .../models/image_create_variation_params.rb | 6 +- lib/openai/models/image_edit_params.rb | 14 +-- .../models/uploads/part_create_params.rb | 6 +- lib/openai/resources/audio/transcriptions.rb | 4 +- lib/openai/resources/audio/translations.rb | 2 +- lib/openai/resources/files.rb | 2 +- lib/openai/resources/images.rb | 6 +- lib/openai/resources/uploads/parts.rb | 2 +- rbi/lib/openai/file_part.rbi | 34 +++++++ .../type/{io_like.rbi => file_input.rbi} | 8 +- rbi/lib/openai/internal/util.rbi | 28 +++--- .../audio/transcription_create_params.rbi | 6 +- .../audio/translation_create_params.rbi | 6 +- rbi/lib/openai/models/file_create_params.rbi | 6 +- .../models/image_create_variation_params.rbi | 6 +- rbi/lib/openai/models/image_edit_params.rbi | 38 ++++++-- .../models/uploads/part_create_params.rbi | 12 ++- .../openai/resources/audio/transcriptions.rbi | 4 +- .../openai/resources/audio/translations.rbi | 2 +- rbi/lib/openai/resources/files.rbi | 2 +- rbi/lib/openai/resources/images.rbi | 12 ++- rbi/lib/openai/resources/uploads/parts.rbi | 2 +- sig/openai/file_part.rbs | 21 ++++ .../type/{io_like.rbs => file_input.rbs} | 2 +- sig/openai/internal/util.rbs | 17 ++-- .../audio/transcription_create_params.rbs | 6 +- .../audio/translation_create_params.rbs | 6 +- sig/openai/models/file_create_params.rbs | 9 +- .../models/image_create_variation_params.rbs | 6 +- sig/openai/models/image_edit_params.rbs | 19 ++-- .../models/uploads/part_create_params.rbs | 6 +- sig/openai/resources/audio/transcriptions.rbs | 4 +- sig/openai/resources/audio/translations.rbs | 2 +- sig/openai/resources/files.rbs | 2 +- sig/openai/resources/images.rbs | 4 +- sig/openai/resources/uploads/parts.rbs | 2 +- test/openai/internal/type/base_model_test.rb | 2 +- test/openai/internal/util_test.rb | 14 ++- 46 files changed, 342 insertions(+), 174 deletions(-) create mode 100644 lib/openai/file_part.rb rename lib/openai/internal/type/{io_like.rb => file_input.rb} (84%) create mode 100644 rbi/lib/openai/file_part.rbi rename rbi/lib/openai/internal/type/{io_like.rbi => file_input.rbi} (83%) create mode 100644 sig/openai/file_part.rbs rename sig/openai/internal/type/{io_like.rbs => file_input.rbs} (96%) diff --git a/lib/openai.rb b/lib/openai.rb index 5bd82a3c..0883b56f 100644 --- a/lib/openai.rb +++ b/lib/openai.rb @@ -31,7 +31,7 @@ require_relative "openai/internal/type/converter" require_relative "openai/internal/type/unknown" require_relative "openai/internal/type/boolean" -require_relative "openai/internal/type/io_like" +require_relative "openai/internal/type/file_input" require_relative "openai/internal/type/enum" require_relative "openai/internal/type/union" require_relative "openai/internal/type/array_of" @@ -42,6 +42,7 @@ require_relative "openai/internal/type/request_parameters" require_relative "openai/internal" require_relative "openai/request_options" +require_relative "openai/file_part" require_relative "openai/errors" require_relative "openai/internal/transport/base_client" require_relative "openai/internal/transport/pooled_net_requester" diff --git a/lib/openai/file_part.rb b/lib/openai/file_part.rb new file mode 100644 index 00000000..f17371ec --- /dev/null +++ b/lib/openai/file_part.rb @@ -0,0 +1,55 @@ +# frozen_string_literal: true + +module OpenAI + class FilePart + # @return [Pathname, StringIO, IO, String] + attr_reader :content + + # @return [String, nil] + attr_reader :content_type + + # @return [String, nil] + attr_reader :filename + + # @api private + # + # @return [String] + private def read + case contents + in Pathname + contents.read(binmode: true) + in StringIO + contents.string + in IO + contents.read + in String + contents + end + end + + # @param a [Object] + # + # @return [String] + def to_json(*a) = read.to_json(*a) + + # @param a [Object] + # + # @return [String] + def to_yaml(*a) = read.to_yaml(*a) + + # @param content [Pathname, StringIO, IO, String] + # @param filename [String, nil] + # @param content_type [String, nil] + def initialize(content, filename: nil, content_type: nil) + @content = content + @filename = + case content + in Pathname + filename.nil? ? content.basename.to_path : File.basename(filename) + else + filename.nil? ? nil : File.basename(filename) + end + @content_type = content_type + end + end +end diff --git a/lib/openai/internal/type/converter.rb b/lib/openai/internal/type/converter.rb index 1cd4385d..0b58d3b0 100644 --- a/lib/openai/internal/type/converter.rb +++ b/lib/openai/internal/type/converter.rb @@ -43,7 +43,7 @@ def dump(value, state:) value.string in Pathname | IO state[:can_retry] = false if value.is_a?(IO) - OpenAI::Internal::Util::SerializationAdapter.new(value) + OpenAI::FilePart.new(value) else value end diff --git a/lib/openai/internal/type/io_like.rb b/lib/openai/internal/type/file_input.rb similarity index 84% rename from lib/openai/internal/type/io_like.rb rename to lib/openai/internal/type/file_input.rb index 568418be..892a1761 100644 --- a/lib/openai/internal/type/io_like.rb +++ b/lib/openai/internal/type/file_input.rb @@ -7,8 +7,12 @@ module Type # # @abstract # - # Either `Pathname` or `StringIO`. - class IOLike + # Either `Pathname` or `StringIO`, or `IO`, or + # `OpenAI::Internal::Type::FileInput`. + # + # Note: when `IO` is used, all retries are disabled, since many IO` streams are + # not rewindable. + class FileInput extend OpenAI::Internal::Type::Converter private_class_method :new @@ -20,7 +24,7 @@ class IOLike # @return [Boolean] def self.===(other) case other - in StringIO | Pathname | IO + in Pathname | StringIO | IO | String | OpenAI::FilePart true else false @@ -32,7 +36,7 @@ def self.===(other) # @param other [Object] # # @return [Boolean] - def self.==(other) = other.is_a?(Class) && other <= OpenAI::Internal::Type::IOLike + def self.==(other) = other.is_a?(Class) && other <= OpenAI::Internal::Type::FileInput class << self # @api private diff --git a/lib/openai/internal/util.rb b/lib/openai/internal/util.rb index fa6aec64..7b82110b 100644 --- a/lib/openai/internal/util.rb +++ b/lib/openai/internal/util.rb @@ -348,27 +348,6 @@ def normalized_headers(*headers) end end - # @api private - class SerializationAdapter - # @return [Pathname, IO] - attr_reader :inner - - # @param a [Object] - # - # @return [String] - def to_json(*a) = (inner.is_a?(IO) ? inner.read : inner.read(binmode: true)).to_json(*a) - - # @param a [Object] - # - # @return [String] - def to_yaml(*a) = (inner.is_a?(IO) ? inner.read : inner.read(binmode: true)).to_yaml(*a) - - # @api private - # - # @param inner [Pathname, IO] - def initialize(inner) = @inner = inner - end - # @api private # # An adapter that satisfies the IO interface required by `::IO.copy_stream` @@ -480,42 +459,35 @@ class << self # @api private # # @param y [Enumerator::Yielder] - # @param boundary [String] - # @param key [Symbol, String] # @param val [Object] # @param closing [Array] - private def write_multipart_chunk(y, boundary:, key:, val:, closing:) - val = val.inner if val.is_a?(OpenAI::Internal::Util::SerializationAdapter) + # @param content_type [String, nil] + private def write_multipart_content(y, val:, closing:, content_type: nil) + content_type ||= "application/octet-stream" - y << "--#{boundary}\r\n" - y << "Content-Disposition: form-data" - unless key.nil? - name = ERB::Util.url_encode(key.to_s) - y << "; name=\"#{name}\"" - end - case val - in Pathname | IO - filename = ERB::Util.url_encode(File.basename(val.to_path)) - y << "; filename=\"#{filename}\"" - else - end - y << "\r\n" case val + in OpenAI::FilePart + return write_multipart_content( + y, + val: val.content, + closing: closing, + content_type: val.content_type + ) in Pathname - y << "Content-Type: application/octet-stream\r\n\r\n" + y << "Content-Type: #{content_type}\r\n\r\n" io = val.open(binmode: true) closing << io.method(:close) IO.copy_stream(io, y) in IO - y << "Content-Type: application/octet-stream\r\n\r\n" + y << "Content-Type: #{content_type}\r\n\r\n" IO.copy_stream(val, y) in StringIO - y << "Content-Type: application/octet-stream\r\n\r\n" + y << "Content-Type: #{content_type}\r\n\r\n" y << val.string in String - y << "Content-Type: application/octet-stream\r\n\r\n" + y << "Content-Type: #{content_type}\r\n\r\n" y << val.to_s - in _ if primitive?(val) + in -> { primitive?(_1) } y << "Content-Type: text/plain\r\n\r\n" y << val.to_s else @@ -525,6 +497,36 @@ class << self y << "\r\n" end + # @api private + # + # @param y [Enumerator::Yielder] + # @param boundary [String] + # @param key [Symbol, String] + # @param val [Object] + # @param closing [Array] + private def write_multipart_chunk(y, boundary:, key:, val:, closing:) + y << "--#{boundary}\r\n" + y << "Content-Disposition: form-data" + + unless key.nil? + name = ERB::Util.url_encode(key.to_s) + y << "; name=\"#{name}\"" + end + + case val + in OpenAI::FilePart unless val.filename.nil? + filename = ERB::Util.url_encode(val.filename) + y << "; filename=\"#{filename}\"" + in Pathname | IO + filename = ERB::Util.url_encode(File.basename(val.to_path)) + y << "; filename=\"#{filename}\"" + else + end + y << "\r\n" + + write_multipart_content(y, val: val, closing: closing) + end + # @api private # # @param body [Object] @@ -565,14 +567,12 @@ class << self # @return [Object] def encode_content(headers, body) content_type = headers["content-type"] - body = body.inner if body.is_a?(OpenAI::Internal::Util::SerializationAdapter) - case [content_type, body] in [OpenAI::Internal::Util::JSON_CONTENT, Hash | Array | -> { primitive?(_1) }] [headers, JSON.fast_generate(body)] - in [OpenAI::Internal::Util::JSONL_CONTENT, Enumerable] unless body.is_a?(StringIO) || body.is_a?(IO) + in [OpenAI::Internal::Util::JSONL_CONTENT, Enumerable] unless body.is_a?(OpenAI::Internal::Type::FileInput) [headers, body.lazy.map { JSON.fast_generate(_1) }] - in [%r{^multipart/form-data}, Hash | Pathname | StringIO | IO] + in [%r{^multipart/form-data}, Hash | OpenAI::Internal::Type::FileInput] boundary, strio = encode_multipart_streaming(body) headers = {**headers, "content-type" => "#{content_type}; boundary=#{boundary}"} [headers, strio] @@ -580,6 +580,8 @@ def encode_content(headers, body) [headers, body.to_s] in [_, StringIO] [headers, body.string] + in [_, OpenAI::FilePart] + [headers, body.content] else [headers, body] end diff --git a/lib/openai/models/audio/transcription_create_params.rb b/lib/openai/models/audio/transcription_create_params.rb index ccb71b14..c9efed38 100644 --- a/lib/openai/models/audio/transcription_create_params.rb +++ b/lib/openai/models/audio/transcription_create_params.rb @@ -14,8 +14,8 @@ class TranscriptionCreateParams < OpenAI::Internal::Type::BaseModel # The audio file object (not file name) to transcribe, in one of these formats: # flac, mp3, mp4, mpeg, mpga, m4a, ogg, wav, or webm. # - # @return [Pathname, StringIO] - required :file, OpenAI::Internal::Type::IOLike + # @return [Pathname, StringIO, IO, OpenAI::FilePart] + required :file, OpenAI::Internal::Type::FileInput # @!attribute model # ID of the model to use. The options are `gpt-4o-transcribe`, @@ -86,7 +86,7 @@ class TranscriptionCreateParams < OpenAI::Internal::Type::BaseModel # Some parameter documentations has been truncated, see # {OpenAI::Models::Audio::TranscriptionCreateParams} for more details. # - # @param file [Pathname, StringIO] The audio file object (not file name) to transcribe, in one of these formats: fl + # @param file [Pathname, StringIO, IO, OpenAI::FilePart] The audio file object (not file name) to transcribe, in one of these formats: fl # ... # # @param model [String, Symbol, OpenAI::Models::AudioModel] ID of the model to use. The options are `gpt-4o-transcribe`, `gpt-4o-mini-transc diff --git a/lib/openai/models/audio/translation_create_params.rb b/lib/openai/models/audio/translation_create_params.rb index a933aaa9..d5ab1b8d 100644 --- a/lib/openai/models/audio/translation_create_params.rb +++ b/lib/openai/models/audio/translation_create_params.rb @@ -12,8 +12,8 @@ class TranslationCreateParams < OpenAI::Internal::Type::BaseModel # The audio file object (not file name) translate, in one of these formats: flac, # mp3, mp4, mpeg, mpga, m4a, ogg, wav, or webm. # - # @return [Pathname, StringIO] - required :file, OpenAI::Internal::Type::IOLike + # @return [Pathname, StringIO, IO, OpenAI::FilePart] + required :file, OpenAI::Internal::Type::FileInput # @!attribute model # ID of the model to use. Only `whisper-1` (which is powered by our open source @@ -52,7 +52,7 @@ class TranslationCreateParams < OpenAI::Internal::Type::BaseModel # Some parameter documentations has been truncated, see # {OpenAI::Models::Audio::TranslationCreateParams} for more details. # - # @param file [Pathname, StringIO] The audio file object (not file name) translate, in one of these formats: flac, + # @param file [Pathname, StringIO, IO, OpenAI::FilePart] The audio file object (not file name) translate, in one of these formats: flac, # ... # # @param model [String, Symbol, OpenAI::Models::AudioModel] ID of the model to use. Only `whisper-1` (which is powered by our open source Wh diff --git a/lib/openai/models/file_create_params.rb b/lib/openai/models/file_create_params.rb index 94e5f46f..d5062f4d 100644 --- a/lib/openai/models/file_create_params.rb +++ b/lib/openai/models/file_create_params.rb @@ -10,8 +10,8 @@ class FileCreateParams < OpenAI::Internal::Type::BaseModel # @!attribute file # The File object (not file name) to be uploaded. # - # @return [Pathname, StringIO] - required :file, OpenAI::Internal::Type::IOLike + # @return [Pathname, StringIO, IO, OpenAI::FilePart] + required :file, OpenAI::Internal::Type::FileInput # @!attribute purpose # The intended purpose of the uploaded file. One of: - `assistants`: Used in the @@ -26,7 +26,7 @@ class FileCreateParams < OpenAI::Internal::Type::BaseModel # Some parameter documentations has been truncated, see # {OpenAI::Models::FileCreateParams} for more details. # - # @param file [Pathname, StringIO] The File object (not file name) to be uploaded. ... + # @param file [Pathname, StringIO, IO, OpenAI::FilePart] The File object (not file name) to be uploaded. ... # # @param purpose [Symbol, OpenAI::Models::FilePurpose] The intended purpose of the uploaded file. One of: - `assistants`: Used in the A # ... diff --git a/lib/openai/models/image_create_variation_params.rb b/lib/openai/models/image_create_variation_params.rb index d3b45a32..6dc339d5 100644 --- a/lib/openai/models/image_create_variation_params.rb +++ b/lib/openai/models/image_create_variation_params.rb @@ -11,8 +11,8 @@ class ImageCreateVariationParams < OpenAI::Internal::Type::BaseModel # The image to use as the basis for the variation(s). Must be a valid PNG file, # less than 4MB, and square. # - # @return [Pathname, StringIO] - required :image, OpenAI::Internal::Type::IOLike + # @return [Pathname, StringIO, IO, OpenAI::FilePart] + required :image, OpenAI::Internal::Type::FileInput # @!attribute model # The model to use for image generation. Only `dall-e-2` is supported at this @@ -56,7 +56,7 @@ class ImageCreateVariationParams < OpenAI::Internal::Type::BaseModel # Some parameter documentations has been truncated, see # {OpenAI::Models::ImageCreateVariationParams} for more details. # - # @param image [Pathname, StringIO] The image to use as the basis for the variation(s). Must be a valid PNG file, le + # @param image [Pathname, StringIO, IO, OpenAI::FilePart] The image to use as the basis for the variation(s). Must be a valid PNG file, le # ... # # @param model [String, Symbol, OpenAI::Models::ImageModel, nil] The model to use for image generation. Only `dall-e-2` is supported at this time diff --git a/lib/openai/models/image_edit_params.rb b/lib/openai/models/image_edit_params.rb index 45591d12..33526447 100644 --- a/lib/openai/models/image_edit_params.rb +++ b/lib/openai/models/image_edit_params.rb @@ -13,7 +13,7 @@ class ImageEditParams < OpenAI::Internal::Type::BaseModel # 25MB. For `dall-e-2`, you can only provide one image, and it should be a square # `png` file less than 4MB. # - # @return [Pathname, StringIO, Array] + # @return [Pathname, StringIO, IO, OpenAI::FilePart, Array] required :image, union: -> { OpenAI::Models::ImageEditParams::Image } # @!attribute prompt @@ -29,8 +29,8 @@ class ImageEditParams < OpenAI::Internal::Type::BaseModel # the mask will be applied on the first image. Must be a valid PNG file, less than # 4MB, and have the same dimensions as `image`. # - # @return [Pathname, StringIO, nil] - optional :mask, OpenAI::Internal::Type::IOLike + # @return [Pathname, StringIO, IO, OpenAI::FilePart, nil] + optional :mask, OpenAI::Internal::Type::FileInput # @!attribute model # The model to use for image generation. Only `dall-e-2` and `gpt-image-1` are @@ -83,13 +83,13 @@ class ImageEditParams < OpenAI::Internal::Type::BaseModel # Some parameter documentations has been truncated, see # {OpenAI::Models::ImageEditParams} for more details. # - # @param image [Pathname, StringIO, Array] The image(s) to edit. Must be a supported image file or an array of images. For + # @param image [Pathname, StringIO, IO, OpenAI::FilePart, Array] The image(s) to edit. Must be a supported image file or an array of images. For # ... # # @param prompt [String] A text description of the desired image(s). The maximum length is 1000 character # ... # - # @param mask [Pathname, StringIO] An additional image whose fully transparent areas (e.g. where alpha is zero) ind + # @param mask [Pathname, StringIO, IO, OpenAI::FilePart] An additional image whose fully transparent areas (e.g. where alpha is zero) ind # ... # # @param model [String, Symbol, OpenAI::Models::ImageModel, nil] The model to use for image generation. Only `dall-e-2` and `gpt-image-1` are sup @@ -118,14 +118,14 @@ class ImageEditParams < OpenAI::Internal::Type::BaseModel module Image extend OpenAI::Internal::Type::Union - variant OpenAI::Internal::Type::IOLike + variant OpenAI::Internal::Type::FileInput variant -> { OpenAI::Models::ImageEditParams::Image::StringArray } # @!method self.variants # @return [Array(StringIO, Array)] - StringArray = OpenAI::Internal::Type::ArrayOf[OpenAI::Internal::Type::IOLike] + StringArray = OpenAI::Internal::Type::ArrayOf[OpenAI::Internal::Type::FileInput] end # The model to use for image generation. Only `dall-e-2` and `gpt-image-1` are diff --git a/lib/openai/models/uploads/part_create_params.rb b/lib/openai/models/uploads/part_create_params.rb index d4e1d7bf..df8520b6 100644 --- a/lib/openai/models/uploads/part_create_params.rb +++ b/lib/openai/models/uploads/part_create_params.rb @@ -11,14 +11,14 @@ class PartCreateParams < OpenAI::Internal::Type::BaseModel # @!attribute data # The chunk of bytes for this Part. # - # @return [Pathname, StringIO] - required :data, OpenAI::Internal::Type::IOLike + # @return [Pathname, StringIO, IO, OpenAI::FilePart] + required :data, OpenAI::Internal::Type::FileInput # @!method initialize(data:, request_options: {}) # Some parameter documentations has been truncated, see # {OpenAI::Models::Uploads::PartCreateParams} for more details. # - # @param data [Pathname, StringIO] The chunk of bytes for this Part. ... + # @param data [Pathname, StringIO, IO, OpenAI::FilePart] The chunk of bytes for this Part. ... # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] end diff --git a/lib/openai/resources/audio/transcriptions.rb b/lib/openai/resources/audio/transcriptions.rb index d7f5de3e..a3fc4454 100644 --- a/lib/openai/resources/audio/transcriptions.rb +++ b/lib/openai/resources/audio/transcriptions.rb @@ -14,7 +14,7 @@ class Transcriptions # # @overload create(file:, model:, include: nil, language: nil, prompt: nil, response_format: nil, temperature: nil, timestamp_granularities: nil, request_options: {}) # - # @param file [Pathname, StringIO] The audio file object (not file name) to transcribe, in one of these formats: fl + # @param file [Pathname, StringIO, IO, OpenAI::FilePart] The audio file object (not file name) to transcribe, in one of these formats: fl # ... # # @param model [String, Symbol, OpenAI::Models::AudioModel] ID of the model to use. The options are `gpt-4o-transcribe`, `gpt-4o-mini-transc @@ -68,7 +68,7 @@ def create(params) # # @overload create_streaming(file:, model:, include: nil, language: nil, prompt: nil, response_format: nil, temperature: nil, timestamp_granularities: nil, request_options: {}) # - # @param file [Pathname, StringIO] The audio file object (not file name) to transcribe, in one of these formats: fl + # @param file [Pathname, StringIO, IO, OpenAI::FilePart] The audio file object (not file name) to transcribe, in one of these formats: fl # ... # # @param model [String, Symbol, OpenAI::Models::AudioModel] ID of the model to use. The options are `gpt-4o-transcribe`, `gpt-4o-mini-transc diff --git a/lib/openai/resources/audio/translations.rb b/lib/openai/resources/audio/translations.rb index d52be7ea..0a43a53a 100644 --- a/lib/openai/resources/audio/translations.rb +++ b/lib/openai/resources/audio/translations.rb @@ -11,7 +11,7 @@ class Translations # # @overload create(file:, model:, prompt: nil, response_format: nil, temperature: nil, request_options: {}) # - # @param file [Pathname, StringIO] The audio file object (not file name) translate, in one of these formats: flac, + # @param file [Pathname, StringIO, IO, OpenAI::FilePart] The audio file object (not file name) translate, in one of these formats: flac, # ... # # @param model [String, Symbol, OpenAI::Models::AudioModel] ID of the model to use. Only `whisper-1` (which is powered by our open source Wh diff --git a/lib/openai/resources/files.rb b/lib/openai/resources/files.rb index 726182c0..77ba2646 100644 --- a/lib/openai/resources/files.rb +++ b/lib/openai/resources/files.rb @@ -30,7 +30,7 @@ class Files # # @overload create(file:, purpose:, request_options: {}) # - # @param file [Pathname, StringIO] The File object (not file name) to be uploaded. ... + # @param file [Pathname, StringIO, IO, OpenAI::FilePart] The File object (not file name) to be uploaded. ... # # @param purpose [Symbol, OpenAI::Models::FilePurpose] The intended purpose of the uploaded file. One of: - `assistants`: Used in the A # ... diff --git a/lib/openai/resources/images.rb b/lib/openai/resources/images.rb index e5f8f465..f34671b0 100644 --- a/lib/openai/resources/images.rb +++ b/lib/openai/resources/images.rb @@ -10,7 +10,7 @@ class Images # # @overload create_variation(image:, model: nil, n: nil, response_format: nil, size: nil, user: nil, request_options: {}) # - # @param image [Pathname, StringIO] The image to use as the basis for the variation(s). Must be a valid PNG file, le + # @param image [Pathname, StringIO, IO, OpenAI::FilePart] The image to use as the basis for the variation(s). Must be a valid PNG file, le # ... # # @param model [String, Symbol, OpenAI::Models::ImageModel, nil] The model to use for image generation. Only `dall-e-2` is supported at this time @@ -52,13 +52,13 @@ def create_variation(params) # # @overload edit(image:, prompt:, mask: nil, model: nil, n: nil, quality: nil, response_format: nil, size: nil, user: nil, request_options: {}) # - # @param image [Pathname, StringIO, Array] The image(s) to edit. Must be a supported image file or an array of images. For + # @param image [Pathname, StringIO, IO, OpenAI::FilePart, Array] The image(s) to edit. Must be a supported image file or an array of images. For # ... # # @param prompt [String] A text description of the desired image(s). The maximum length is 1000 character # ... # - # @param mask [Pathname, StringIO] An additional image whose fully transparent areas (e.g. where alpha is zero) ind + # @param mask [Pathname, StringIO, IO, OpenAI::FilePart] An additional image whose fully transparent areas (e.g. where alpha is zero) ind # ... # # @param model [String, Symbol, OpenAI::Models::ImageModel, nil] The model to use for image generation. Only `dall-e-2` and `gpt-image-1` are sup diff --git a/lib/openai/resources/uploads/parts.rb b/lib/openai/resources/uploads/parts.rb index b0e572a1..3d7e4770 100644 --- a/lib/openai/resources/uploads/parts.rb +++ b/lib/openai/resources/uploads/parts.rb @@ -23,7 +23,7 @@ class Parts # # @param upload_id [String] The ID of the Upload. ... # - # @param data [Pathname, StringIO] The chunk of bytes for this Part. ... + # @param data [Pathname, StringIO, IO, OpenAI::FilePart] The chunk of bytes for this Part. ... # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # diff --git a/rbi/lib/openai/file_part.rbi b/rbi/lib/openai/file_part.rbi new file mode 100644 index 00000000..20c06b85 --- /dev/null +++ b/rbi/lib/openai/file_part.rbi @@ -0,0 +1,34 @@ +# typed: strong + +module OpenAI + class FilePart + sig { returns(T.any(Pathname, StringIO, IO, String)) } + attr_reader :content + + sig { returns(T.nilable(String)) } + attr_reader :content_type + + sig { returns(T.nilable(String)) } + attr_reader :filename + + # @api private + sig { returns(String) } + private def read; end + + sig { params(a: T.anything).returns(String) } + def to_json(*a); end + + sig { params(a: T.anything).returns(String) } + def to_yaml(*a); end + + sig do + params( + content: T.any(Pathname, StringIO, IO, String), + filename: T.nilable(String), + content_type: T.nilable(String) + ) + .returns(T.attached_class) + end + def self.new(content, filename: nil, content_type: nil); end + end +end diff --git a/rbi/lib/openai/internal/type/io_like.rbi b/rbi/lib/openai/internal/type/file_input.rbi similarity index 83% rename from rbi/lib/openai/internal/type/io_like.rbi rename to rbi/lib/openai/internal/type/file_input.rbi index 321a5563..5271aa5e 100644 --- a/rbi/lib/openai/internal/type/io_like.rbi +++ b/rbi/lib/openai/internal/type/file_input.rbi @@ -5,8 +5,12 @@ module OpenAI module Type # @api private # - # Either `Pathname` or `StringIO`. - class IOLike + # Either `Pathname` or `StringIO`, or `IO`, or + # `OpenAI::Internal::Type::FileInput`. + # + # Note: when `IO` is used, all retries are disabled, since many IO` streams are + # not rewindable. + class FileInput extend OpenAI::Internal::Type::Converter abstract! diff --git a/rbi/lib/openai/internal/util.rbi b/rbi/lib/openai/internal/util.rbi index f1ca8cb7..70758fde 100644 --- a/rbi/lib/openai/internal/util.rbi +++ b/rbi/lib/openai/internal/util.rbi @@ -140,22 +140,6 @@ module OpenAI def normalized_headers(*headers); end end - # @api private - class SerializationAdapter - sig { returns(T.any(Pathname, IO)) } - attr_reader :inner - - sig { params(a: T.anything).returns(String) } - def to_json(*a); end - - sig { params(a: T.anything).returns(String) } - def to_yaml(*a); end - - # @api private - sig { params(inner: T.any(Pathname, IO)).returns(T.attached_class) } - def self.new(inner); end - end - # @api private # # An adapter that satisfies the IO interface required by `::IO.copy_stream` @@ -196,6 +180,18 @@ module OpenAI JSONL_CONTENT = T.let(%r{^application/(?:x-)?jsonl}, Regexp) class << self + # @api private + sig do + params( + y: Enumerator::Yielder, + val: T.anything, + closing: T::Array[T.proc.void], + content_type: T.nilable(String) + ) + .void + end + private def write_multipart_content(y, val:, closing:, content_type: nil); end + # @api private sig do params( diff --git a/rbi/lib/openai/models/audio/transcription_create_params.rbi b/rbi/lib/openai/models/audio/transcription_create_params.rbi index f89a401f..57d34b34 100644 --- a/rbi/lib/openai/models/audio/transcription_create_params.rbi +++ b/rbi/lib/openai/models/audio/transcription_create_params.rbi @@ -9,7 +9,7 @@ module OpenAI # The audio file object (not file name) to transcribe, in one of these formats: # flac, mp3, mp4, mpeg, mpga, m4a, ogg, wav, or webm. - sig { returns(T.any(Pathname, StringIO)) } + sig { returns(T.any(Pathname, StringIO, IO, OpenAI::FilePart)) } attr_accessor :file # ID of the model to use. The options are `gpt-4o-transcribe`, @@ -90,7 +90,7 @@ module OpenAI sig do params( - file: T.any(Pathname, StringIO), + file: T.any(Pathname, StringIO, IO, OpenAI::FilePart), model: T.any(String, OpenAI::Models::AudioModel::OrSymbol), include: T::Array[OpenAI::Models::Audio::TranscriptionInclude::OrSymbol], language: String, @@ -147,7 +147,7 @@ module OpenAI override .returns( { - file: T.any(Pathname, StringIO), + file: T.any(Pathname, StringIO, IO, OpenAI::FilePart), model: T.any(String, OpenAI::Models::AudioModel::OrSymbol), include: T::Array[OpenAI::Models::Audio::TranscriptionInclude::OrSymbol], language: String, diff --git a/rbi/lib/openai/models/audio/translation_create_params.rbi b/rbi/lib/openai/models/audio/translation_create_params.rbi index 807e0bb2..77933b04 100644 --- a/rbi/lib/openai/models/audio/translation_create_params.rbi +++ b/rbi/lib/openai/models/audio/translation_create_params.rbi @@ -9,7 +9,7 @@ module OpenAI # The audio file object (not file name) translate, in one of these formats: flac, # mp3, mp4, mpeg, mpga, m4a, ogg, wav, or webm. - sig { returns(T.any(Pathname, StringIO)) } + sig { returns(T.any(Pathname, StringIO, IO, OpenAI::FilePart)) } attr_accessor :file # ID of the model to use. Only `whisper-1` (which is powered by our open source @@ -48,7 +48,7 @@ module OpenAI sig do params( - file: T.any(Pathname, StringIO), + file: T.any(Pathname, StringIO, IO, OpenAI::FilePart), model: T.any(String, OpenAI::Models::AudioModel::OrSymbol), prompt: String, response_format: OpenAI::Models::Audio::TranslationCreateParams::ResponseFormat::OrSymbol, @@ -84,7 +84,7 @@ module OpenAI override .returns( { - file: T.any(Pathname, StringIO), + file: T.any(Pathname, StringIO, IO, OpenAI::FilePart), model: T.any(String, OpenAI::Models::AudioModel::OrSymbol), prompt: String, response_format: OpenAI::Models::Audio::TranslationCreateParams::ResponseFormat::OrSymbol, diff --git a/rbi/lib/openai/models/file_create_params.rbi b/rbi/lib/openai/models/file_create_params.rbi index 2580e280..675c3c74 100644 --- a/rbi/lib/openai/models/file_create_params.rbi +++ b/rbi/lib/openai/models/file_create_params.rbi @@ -7,7 +7,7 @@ module OpenAI include OpenAI::Internal::Type::RequestParameters # The File object (not file name) to be uploaded. - sig { returns(T.any(Pathname, StringIO)) } + sig { returns(T.any(Pathname, StringIO, IO, OpenAI::FilePart)) } attr_accessor :file # The intended purpose of the uploaded file. One of: - `assistants`: Used in the @@ -19,7 +19,7 @@ module OpenAI sig do params( - file: T.any(Pathname, StringIO), + file: T.any(Pathname, StringIO, IO, OpenAI::FilePart), purpose: OpenAI::Models::FilePurpose::OrSymbol, request_options: T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash) ) @@ -39,7 +39,7 @@ module OpenAI override .returns( { - file: T.any(Pathname, StringIO), + file: T.any(Pathname, StringIO, IO, OpenAI::FilePart), purpose: OpenAI::Models::FilePurpose::OrSymbol, request_options: OpenAI::RequestOptions } diff --git a/rbi/lib/openai/models/image_create_variation_params.rbi b/rbi/lib/openai/models/image_create_variation_params.rbi index 96899fe5..361f3512 100644 --- a/rbi/lib/openai/models/image_create_variation_params.rbi +++ b/rbi/lib/openai/models/image_create_variation_params.rbi @@ -8,7 +8,7 @@ module OpenAI # The image to use as the basis for the variation(s). Must be a valid PNG file, # less than 4MB, and square. - sig { returns(T.any(Pathname, StringIO)) } + sig { returns(T.any(Pathname, StringIO, IO, OpenAI::FilePart)) } attr_accessor :image # The model to use for image generation. Only `dall-e-2` is supported at this @@ -42,7 +42,7 @@ module OpenAI sig do params( - image: T.any(Pathname, StringIO), + image: T.any(Pathname, StringIO, IO, OpenAI::FilePart), model: T.nilable(T.any(String, OpenAI::Models::ImageModel::OrSymbol)), n: T.nilable(Integer), response_format: T.nilable(OpenAI::Models::ImageCreateVariationParams::ResponseFormat::OrSymbol), @@ -78,7 +78,7 @@ module OpenAI override .returns( { - image: T.any(Pathname, StringIO), + image: T.any(Pathname, StringIO, IO, OpenAI::FilePart), model: T.nilable(T.any(String, OpenAI::Models::ImageModel::OrSymbol)), n: T.nilable(Integer), response_format: T.nilable(OpenAI::Models::ImageCreateVariationParams::ResponseFormat::OrSymbol), diff --git a/rbi/lib/openai/models/image_edit_params.rbi b/rbi/lib/openai/models/image_edit_params.rbi index 68d09cd7..4ae05e29 100644 --- a/rbi/lib/openai/models/image_edit_params.rbi +++ b/rbi/lib/openai/models/image_edit_params.rbi @@ -10,7 +10,17 @@ module OpenAI # `gpt-image-1`, each image should be a `png`, `webp`, or `jpg` file less than # 25MB. For `dall-e-2`, you can only provide one image, and it should be a square # `png` file less than 4MB. - sig { returns(T.any(Pathname, StringIO, T::Array[T.any(Pathname, StringIO)])) } + sig do + returns( + T.any( + Pathname, + StringIO, + IO, + OpenAI::FilePart, + T::Array[T.any(Pathname, StringIO, IO, OpenAI::FilePart)] + ) + ) + end attr_accessor :image # A text description of the desired image(s). The maximum length is 1000 @@ -22,10 +32,10 @@ module OpenAI # indicate where `image` should be edited. If there are multiple images provided, # the mask will be applied on the first image. Must be a valid PNG file, less than # 4MB, and have the same dimensions as `image`. - sig { returns(T.nilable(T.any(Pathname, StringIO))) } + sig { returns(T.nilable(T.any(Pathname, StringIO, IO, OpenAI::FilePart))) } attr_reader :mask - sig { params(mask: T.any(Pathname, StringIO)).void } + sig { params(mask: T.any(Pathname, StringIO, IO, OpenAI::FilePart)).void } attr_writer :mask # The model to use for image generation. Only `dall-e-2` and `gpt-image-1` are @@ -68,9 +78,15 @@ module OpenAI sig do params( - image: T.any(Pathname, StringIO, T::Array[T.any(Pathname, StringIO)]), + image: T.any( + Pathname, + StringIO, + IO, + OpenAI::FilePart, + T::Array[T.any(Pathname, StringIO, IO, OpenAI::FilePart)] + ), prompt: String, - mask: T.any(Pathname, StringIO), + mask: T.any(Pathname, StringIO, IO, OpenAI::FilePart), model: T.nilable(T.any(String, OpenAI::Models::ImageModel::OrSymbol)), n: T.nilable(Integer), quality: T.nilable(OpenAI::Models::ImageEditParams::Quality::OrSymbol), @@ -124,9 +140,15 @@ module OpenAI override .returns( { - image: T.any(Pathname, StringIO, T::Array[T.any(Pathname, StringIO)]), + image: T.any( + Pathname, + StringIO, + IO, + OpenAI::FilePart, + T::Array[T.any(Pathname, StringIO, IO, OpenAI::FilePart)] + ), prompt: String, - mask: T.any(Pathname, StringIO), + mask: T.any(Pathname, StringIO, IO, OpenAI::FilePart), model: T.nilable(T.any(String, OpenAI::Models::ImageModel::OrSymbol)), n: T.nilable(Integer), quality: T.nilable(OpenAI::Models::ImageEditParams::Quality::OrSymbol), @@ -151,7 +173,7 @@ module OpenAI StringArray = T.let( - OpenAI::Internal::Type::ArrayOf[OpenAI::Internal::Type::IOLike], + OpenAI::Internal::Type::ArrayOf[OpenAI::Internal::Type::FileInput], OpenAI::Internal::Type::Converter ) end diff --git a/rbi/lib/openai/models/uploads/part_create_params.rbi b/rbi/lib/openai/models/uploads/part_create_params.rbi index 1a62a478..e8d07b06 100644 --- a/rbi/lib/openai/models/uploads/part_create_params.rbi +++ b/rbi/lib/openai/models/uploads/part_create_params.rbi @@ -8,12 +8,12 @@ module OpenAI include OpenAI::Internal::Type::RequestParameters # The chunk of bytes for this Part. - sig { returns(T.any(Pathname, StringIO)) } + sig { returns(T.any(Pathname, StringIO, IO, OpenAI::FilePart)) } attr_accessor :data sig do params( - data: T.any(Pathname, StringIO), + data: T.any(Pathname, StringIO, IO, OpenAI::FilePart), request_options: T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash) ) .returns(T.attached_class) @@ -23,7 +23,13 @@ module OpenAI data:, request_options: {} ); end - sig { override.returns({data: T.any(Pathname, StringIO), request_options: OpenAI::RequestOptions}) } + sig do + override + .returns({ + data: T.any(Pathname, StringIO, IO, OpenAI::FilePart), + request_options: OpenAI::RequestOptions + }) + end def to_hash; end end end diff --git a/rbi/lib/openai/resources/audio/transcriptions.rbi b/rbi/lib/openai/resources/audio/transcriptions.rbi index a411c389..45316428 100644 --- a/rbi/lib/openai/resources/audio/transcriptions.rbi +++ b/rbi/lib/openai/resources/audio/transcriptions.rbi @@ -10,7 +10,7 @@ module OpenAI # Transcribes audio into the input language. sig do params( - file: T.any(Pathname, StringIO), + file: T.any(Pathname, StringIO, IO, OpenAI::FilePart), model: T.any(String, OpenAI::Models::AudioModel::OrSymbol), include: T::Array[OpenAI::Models::Audio::TranscriptionInclude::OrSymbol], language: String, @@ -73,7 +73,7 @@ module OpenAI # Transcribes audio into the input language. sig do params( - file: T.any(Pathname, StringIO), + file: T.any(Pathname, StringIO, IO, OpenAI::FilePart), model: T.any(String, OpenAI::Models::AudioModel::OrSymbol), include: T::Array[OpenAI::Models::Audio::TranscriptionInclude::OrSymbol], language: String, diff --git a/rbi/lib/openai/resources/audio/translations.rbi b/rbi/lib/openai/resources/audio/translations.rbi index c11c0bde..b9130883 100644 --- a/rbi/lib/openai/resources/audio/translations.rbi +++ b/rbi/lib/openai/resources/audio/translations.rbi @@ -7,7 +7,7 @@ module OpenAI # Translates audio into English. sig do params( - file: T.any(Pathname, StringIO), + file: T.any(Pathname, StringIO, IO, OpenAI::FilePart), model: T.any(String, OpenAI::Models::AudioModel::OrSymbol), prompt: String, response_format: OpenAI::Models::Audio::TranslationCreateParams::ResponseFormat::OrSymbol, diff --git a/rbi/lib/openai/resources/files.rbi b/rbi/lib/openai/resources/files.rbi index 182dba52..aa872185 100644 --- a/rbi/lib/openai/resources/files.rbi +++ b/rbi/lib/openai/resources/files.rbi @@ -26,7 +26,7 @@ module OpenAI # storage limits. sig do params( - file: T.any(Pathname, StringIO), + file: T.any(Pathname, StringIO, IO, OpenAI::FilePart), purpose: OpenAI::Models::FilePurpose::OrSymbol, request_options: T.nilable(T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash)) ) diff --git a/rbi/lib/openai/resources/images.rbi b/rbi/lib/openai/resources/images.rbi index 7e97700a..f50d6486 100644 --- a/rbi/lib/openai/resources/images.rbi +++ b/rbi/lib/openai/resources/images.rbi @@ -6,7 +6,7 @@ module OpenAI # Creates a variation of a given image. This endpoint only supports `dall-e-2`. sig do params( - image: T.any(Pathname, StringIO), + image: T.any(Pathname, StringIO, IO, OpenAI::FilePart), model: T.nilable(T.any(String, OpenAI::Models::ImageModel::OrSymbol)), n: T.nilable(Integer), response_format: T.nilable(OpenAI::Models::ImageCreateVariationParams::ResponseFormat::OrSymbol), @@ -42,9 +42,15 @@ module OpenAI # prompt. This endpoint only supports `gpt-image-1` and `dall-e-2`. sig do params( - image: T.any(Pathname, StringIO, T::Array[T.any(Pathname, StringIO)]), + image: T.any( + Pathname, + StringIO, + IO, + OpenAI::FilePart, + T::Array[T.any(Pathname, StringIO, IO, OpenAI::FilePart)] + ), prompt: String, - mask: T.any(Pathname, StringIO), + mask: T.any(Pathname, StringIO, IO, OpenAI::FilePart), model: T.nilable(T.any(String, OpenAI::Models::ImageModel::OrSymbol)), n: T.nilable(Integer), quality: T.nilable(OpenAI::Models::ImageEditParams::Quality::OrSymbol), diff --git a/rbi/lib/openai/resources/uploads/parts.rbi b/rbi/lib/openai/resources/uploads/parts.rbi index 8258aeea..867a760a 100644 --- a/rbi/lib/openai/resources/uploads/parts.rbi +++ b/rbi/lib/openai/resources/uploads/parts.rbi @@ -18,7 +18,7 @@ module OpenAI sig do params( upload_id: String, - data: T.any(Pathname, StringIO), + data: T.any(Pathname, StringIO, IO, OpenAI::FilePart), request_options: T.nilable(T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash)) ) .returns(OpenAI::Models::Uploads::UploadPart) diff --git a/sig/openai/file_part.rbs b/sig/openai/file_part.rbs new file mode 100644 index 00000000..c517bee8 --- /dev/null +++ b/sig/openai/file_part.rbs @@ -0,0 +1,21 @@ +module OpenAI + class FilePart + attr_reader content: Pathname | StringIO | IO | String + + attr_reader content_type: String? + + attr_reader filename: String? + + private def read: -> String + + def to_json: (*top a) -> String + + def to_yaml: (*top a) -> String + + def initialize: ( + Pathname | StringIO | IO | String content, + ?filename: String?, + ?content_type: String? + ) -> void + end +end diff --git a/sig/openai/internal/type/io_like.rbs b/sig/openai/internal/type/file_input.rbs similarity index 96% rename from sig/openai/internal/type/io_like.rbs rename to sig/openai/internal/type/file_input.rbs index 8a5fb508..862c2111 100644 --- a/sig/openai/internal/type/io_like.rbs +++ b/sig/openai/internal/type/file_input.rbs @@ -1,7 +1,7 @@ module OpenAI module Internal module Type - class IOLike + class FileInput extend OpenAI::Internal::Type::Converter def self.===: (top other) -> bool diff --git a/sig/openai/internal/util.rbs b/sig/openai/internal/util.rbs index 6c038865..0e7d0388 100644 --- a/sig/openai/internal/util.rbs +++ b/sig/openai/internal/util.rbs @@ -73,16 +73,6 @@ module OpenAI | ::Array[(String | Integer)?])?] headers ) -> ::Hash[String, String] - class SerializationAdapter - attr_reader inner: Pathname | IO - - def to_json: (*top a) -> String - - def to_yaml: (*top a) -> String - - def initialize: (Pathname | IO inner) -> void - end - class ReadIOAdapter def close?: -> bool? @@ -106,6 +96,13 @@ module OpenAI JSON_CONTENT: Regexp JSONL_CONTENT: Regexp + def self?.write_multipart_content: ( + Enumerator::Yielder y, + val: top, + closing: ::Array[^-> void], + ?content_type: String? + ) -> void + def self?.write_multipart_chunk: ( Enumerator::Yielder y, boundary: String, diff --git a/sig/openai/models/audio/transcription_create_params.rbs b/sig/openai/models/audio/transcription_create_params.rbs index 0ed3e9cd..e16d6287 100644 --- a/sig/openai/models/audio/transcription_create_params.rbs +++ b/sig/openai/models/audio/transcription_create_params.rbs @@ -3,7 +3,7 @@ module OpenAI module Audio type transcription_create_params = { - file: (Pathname | StringIO), + file: (Pathname | StringIO | IO | OpenAI::FilePart), model: OpenAI::Models::Audio::TranscriptionCreateParams::model, include: ::Array[OpenAI::Models::Audio::transcription_include], language: String, @@ -18,7 +18,7 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters - attr_accessor file: Pathname | StringIO + attr_accessor file: Pathname | StringIO | IO | OpenAI::FilePart attr_accessor model: OpenAI::Models::Audio::TranscriptionCreateParams::model @@ -53,7 +53,7 @@ module OpenAI ) -> ::Array[OpenAI::Models::Audio::TranscriptionCreateParams::timestamp_granularity] def initialize: ( - file: Pathname | StringIO, + file: Pathname | StringIO | IO | OpenAI::FilePart, model: OpenAI::Models::Audio::TranscriptionCreateParams::model, ?include: ::Array[OpenAI::Models::Audio::transcription_include], ?language: String, diff --git a/sig/openai/models/audio/translation_create_params.rbs b/sig/openai/models/audio/translation_create_params.rbs index 2ed83e46..8fcd623b 100644 --- a/sig/openai/models/audio/translation_create_params.rbs +++ b/sig/openai/models/audio/translation_create_params.rbs @@ -3,7 +3,7 @@ module OpenAI module Audio type translation_create_params = { - file: (Pathname | StringIO), + file: (Pathname | StringIO | IO | OpenAI::FilePart), model: OpenAI::Models::Audio::TranslationCreateParams::model, prompt: String, response_format: OpenAI::Models::Audio::TranslationCreateParams::response_format, @@ -15,7 +15,7 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters - attr_accessor file: Pathname | StringIO + attr_accessor file: Pathname | StringIO | IO | OpenAI::FilePart attr_accessor model: OpenAI::Models::Audio::TranslationCreateParams::model @@ -34,7 +34,7 @@ module OpenAI def temperature=: (Float) -> Float def initialize: ( - file: Pathname | StringIO, + file: Pathname | StringIO | IO | OpenAI::FilePart, model: OpenAI::Models::Audio::TranslationCreateParams::model, ?prompt: String, ?response_format: OpenAI::Models::Audio::TranslationCreateParams::response_format, diff --git a/sig/openai/models/file_create_params.rbs b/sig/openai/models/file_create_params.rbs index c57c5981..33f381f0 100644 --- a/sig/openai/models/file_create_params.rbs +++ b/sig/openai/models/file_create_params.rbs @@ -1,19 +1,22 @@ module OpenAI module Models type file_create_params = - { file: (Pathname | StringIO), purpose: OpenAI::Models::file_purpose } + { + file: (Pathname | StringIO | IO | OpenAI::FilePart), + purpose: OpenAI::Models::file_purpose + } & OpenAI::Internal::Type::request_parameters class FileCreateParams < OpenAI::Internal::Type::BaseModel extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters - attr_accessor file: Pathname | StringIO + attr_accessor file: Pathname | StringIO | IO | OpenAI::FilePart attr_accessor purpose: OpenAI::Models::file_purpose def initialize: ( - file: Pathname | StringIO, + file: Pathname | StringIO | IO | OpenAI::FilePart, purpose: OpenAI::Models::file_purpose, ?request_options: OpenAI::request_opts ) -> void diff --git a/sig/openai/models/image_create_variation_params.rbs b/sig/openai/models/image_create_variation_params.rbs index 28803369..1d87d6c6 100644 --- a/sig/openai/models/image_create_variation_params.rbs +++ b/sig/openai/models/image_create_variation_params.rbs @@ -2,7 +2,7 @@ module OpenAI module Models type image_create_variation_params = { - image: (Pathname | StringIO), + image: (Pathname | StringIO | IO | OpenAI::FilePart), model: OpenAI::Models::ImageCreateVariationParams::model?, n: Integer?, response_format: OpenAI::Models::ImageCreateVariationParams::response_format?, @@ -15,7 +15,7 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters - attr_accessor image: Pathname | StringIO + attr_accessor image: Pathname | StringIO | IO | OpenAI::FilePart attr_accessor model: OpenAI::Models::ImageCreateVariationParams::model? @@ -30,7 +30,7 @@ module OpenAI def user=: (String) -> String def initialize: ( - image: Pathname | StringIO, + image: Pathname | StringIO | IO | OpenAI::FilePart, ?model: OpenAI::Models::ImageCreateVariationParams::model?, ?n: Integer?, ?response_format: OpenAI::Models::ImageCreateVariationParams::response_format?, diff --git a/sig/openai/models/image_edit_params.rbs b/sig/openai/models/image_edit_params.rbs index 30bf203d..95e02a84 100644 --- a/sig/openai/models/image_edit_params.rbs +++ b/sig/openai/models/image_edit_params.rbs @@ -4,7 +4,7 @@ module OpenAI { image: OpenAI::Models::ImageEditParams::image, prompt: String, - mask: (Pathname | StringIO), + mask: (Pathname | StringIO | IO | OpenAI::FilePart), model: OpenAI::Models::ImageEditParams::model?, n: Integer?, quality: OpenAI::Models::ImageEditParams::quality?, @@ -22,9 +22,11 @@ module OpenAI attr_accessor prompt: String - attr_reader mask: (Pathname | StringIO)? + attr_reader mask: (Pathname | StringIO | IO | OpenAI::FilePart)? - def mask=: (Pathname | StringIO) -> (Pathname | StringIO) + def mask=: ( + Pathname | StringIO | IO | OpenAI::FilePart + ) -> (Pathname | StringIO | IO | OpenAI::FilePart) attr_accessor model: OpenAI::Models::ImageEditParams::model? @@ -43,7 +45,7 @@ module OpenAI def initialize: ( image: OpenAI::Models::ImageEditParams::image, prompt: String, - ?mask: Pathname | StringIO, + ?mask: Pathname | StringIO | IO | OpenAI::FilePart, ?model: OpenAI::Models::ImageEditParams::model?, ?n: Integer?, ?quality: OpenAI::Models::ImageEditParams::quality?, @@ -55,14 +57,19 @@ module OpenAI def to_hash: -> OpenAI::Models::image_edit_params - type image = Pathname | StringIO | ::Array[Pathname | StringIO] + type image = + Pathname + | StringIO + | IO + | OpenAI::FilePart + | ::Array[Pathname | StringIO | IO | OpenAI::FilePart] module Image extend OpenAI::Internal::Type::Union def self?.variants: -> [StringIO, ::Array[StringIO]] - type string_array = ::Array[Pathname | StringIO] + type string_array = ::Array[Pathname | StringIO | IO | OpenAI::FilePart] StringArray: string_array end diff --git a/sig/openai/models/uploads/part_create_params.rbs b/sig/openai/models/uploads/part_create_params.rbs index 89c4c092..f3ea9aa1 100644 --- a/sig/openai/models/uploads/part_create_params.rbs +++ b/sig/openai/models/uploads/part_create_params.rbs @@ -2,17 +2,17 @@ module OpenAI module Models module Uploads type part_create_params = - { data: (Pathname | StringIO) } + { data: (Pathname | StringIO | IO | OpenAI::FilePart) } & OpenAI::Internal::Type::request_parameters class PartCreateParams < OpenAI::Internal::Type::BaseModel extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters - attr_accessor data: Pathname | StringIO + attr_accessor data: Pathname | StringIO | IO | OpenAI::FilePart def initialize: ( - data: Pathname | StringIO, + data: Pathname | StringIO | IO | OpenAI::FilePart, ?request_options: OpenAI::request_opts ) -> void diff --git a/sig/openai/resources/audio/transcriptions.rbs b/sig/openai/resources/audio/transcriptions.rbs index bf5e0c11..50dccae8 100644 --- a/sig/openai/resources/audio/transcriptions.rbs +++ b/sig/openai/resources/audio/transcriptions.rbs @@ -3,7 +3,7 @@ module OpenAI class Audio class Transcriptions def create: ( - file: Pathname | StringIO, + file: Pathname | StringIO | IO | OpenAI::FilePart, model: OpenAI::Models::Audio::TranscriptionCreateParams::model, ?include: ::Array[OpenAI::Models::Audio::transcription_include], ?language: String, @@ -15,7 +15,7 @@ module OpenAI ) -> OpenAI::Models::Audio::transcription_create_response def create_streaming: ( - file: Pathname | StringIO, + file: Pathname | StringIO | IO | OpenAI::FilePart, model: OpenAI::Models::Audio::TranscriptionCreateParams::model, ?include: ::Array[OpenAI::Models::Audio::transcription_include], ?language: String, diff --git a/sig/openai/resources/audio/translations.rbs b/sig/openai/resources/audio/translations.rbs index a5cdf743..a2cece60 100644 --- a/sig/openai/resources/audio/translations.rbs +++ b/sig/openai/resources/audio/translations.rbs @@ -3,7 +3,7 @@ module OpenAI class Audio class Translations def create: ( - file: Pathname | StringIO, + file: Pathname | StringIO | IO | OpenAI::FilePart, model: OpenAI::Models::Audio::TranslationCreateParams::model, ?prompt: String, ?response_format: OpenAI::Models::Audio::TranslationCreateParams::response_format, diff --git a/sig/openai/resources/files.rbs b/sig/openai/resources/files.rbs index f4c12155..b6cefa86 100644 --- a/sig/openai/resources/files.rbs +++ b/sig/openai/resources/files.rbs @@ -2,7 +2,7 @@ module OpenAI module Resources class Files def create: ( - file: Pathname | StringIO, + file: Pathname | StringIO | IO | OpenAI::FilePart, purpose: OpenAI::Models::file_purpose, ?request_options: OpenAI::request_opts ) -> OpenAI::Models::FileObject diff --git a/sig/openai/resources/images.rbs b/sig/openai/resources/images.rbs index ec6082ff..d1bddd09 100644 --- a/sig/openai/resources/images.rbs +++ b/sig/openai/resources/images.rbs @@ -2,7 +2,7 @@ module OpenAI module Resources class Images def create_variation: ( - image: Pathname | StringIO, + image: Pathname | StringIO | IO | OpenAI::FilePart, ?model: OpenAI::Models::ImageCreateVariationParams::model?, ?n: Integer?, ?response_format: OpenAI::Models::ImageCreateVariationParams::response_format?, @@ -14,7 +14,7 @@ module OpenAI def edit: ( image: OpenAI::Models::ImageEditParams::image, prompt: String, - ?mask: Pathname | StringIO, + ?mask: Pathname | StringIO | IO | OpenAI::FilePart, ?model: OpenAI::Models::ImageEditParams::model?, ?n: Integer?, ?quality: OpenAI::Models::ImageEditParams::quality?, diff --git a/sig/openai/resources/uploads/parts.rbs b/sig/openai/resources/uploads/parts.rbs index 7d3f7d89..f296f1ef 100644 --- a/sig/openai/resources/uploads/parts.rbs +++ b/sig/openai/resources/uploads/parts.rbs @@ -4,7 +4,7 @@ module OpenAI class Parts def create: ( String upload_id, - data: Pathname | StringIO, + data: Pathname | StringIO | IO | OpenAI::FilePart, ?request_options: OpenAI::request_opts ) -> OpenAI::Models::Uploads::UploadPart diff --git a/test/openai/internal/type/base_model_test.rb b/test/openai/internal/type/base_model_test.rb index a3267818..3f6e7420 100644 --- a/test/openai/internal/type/base_model_test.rb +++ b/test/openai/internal/type/base_model_test.rb @@ -94,7 +94,7 @@ def test_dump [:a, :b] => :b, [:a, "a"] => "a", [String, StringIO.new("one")] => "one", - [String, Pathname(__FILE__)] => OpenAI::Internal::Util::SerializationAdapter + [String, Pathname(__FILE__)] => OpenAI::FilePart } cases.each do diff --git a/test/openai/internal/util_test.rb b/test/openai/internal/util_test.rb index adae5642..5d52ee06 100644 --- a/test/openai/internal/util_test.rb +++ b/test/openai/internal/util_test.rb @@ -200,8 +200,12 @@ def test_file_encode file = Pathname(__FILE__) headers = {"content-type" => "multipart/form-data"} cases = { + "abc" => "abc", StringIO.new("abc") => "abc", - file => /^class OpenAI/ + OpenAI::FilePart.new("abc") => "abc", + OpenAI::FilePart.new(StringIO.new("abc")) => "abc", + file => /^class OpenAI/, + OpenAI::FilePart.new(file) => /^class OpenAI/ } cases.each do |body, val| encoded = OpenAI::Internal::Util.encode_content(headers, body) @@ -219,7 +223,13 @@ def test_hash_encode {a: 2, b: nil} => {"a" => "2", "b" => "null"}, {a: 2, b: [1, 2, 3]} => {"a" => "2", "b" => "1"}, {strio: StringIO.new("a")} => {"strio" => "a"}, - {pathname: Pathname(__FILE__)} => {"pathname" => -> { _1.read in /^class OpenAI/ }} + {strio: OpenAI::FilePart.new("a")} => {"strio" => "a"}, + {pathname: Pathname(__FILE__)} => {"pathname" => -> { _1.read in /^class OpenAI/ }}, + {pathname: OpenAI::FilePart.new(Pathname(__FILE__))} => { + "pathname" => -> { + _1.read in /^class OpenAI/ + } + } } cases.each do |body, testcase| encoded = OpenAI::Internal::Util.encode_content(headers, body) From cec4b051bb0f4357032779cde2c11babe4196fcd Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Thu, 24 Apr 2025 19:45:39 +0000 Subject: [PATCH 15/47] chore: consistently use string in examples, even for enums --- README.md | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/README.md b/README.md index 33a1ebe9..94764336 100644 --- a/README.md +++ b/README.md @@ -33,7 +33,7 @@ openai = OpenAI::Client.new( ) chat_completion = openai.chat.completions.create( - messages: [{role: :user, content: "Say this is a test"}], + messages: [{role: "user", content: "Say this is a test"}], model: :"gpt-4.1" ) @@ -48,7 +48,7 @@ When using sorbet, it is recommended to use model classes as below. This provide ```ruby openai.chat.completions.create( - messages: [OpenAI::Models::Chat::ChatCompletionUserMessageParam.new(role: :user, content: "Say this is a test")], + messages: [OpenAI::Models::Chat::ChatCompletionUserMessageParam.new(role: "user", content: "Say this is a test")], model: :"gpt-4.1" ) ``` @@ -80,7 +80,7 @@ We provide support for streaming responses using Server-Sent Events (SSE). ```ruby stream = openai.chat.completions.stream_raw( - messages: [{role: :user, content: "Say this is a test"}], + messages: [{role: "user", content: "Say this is a test"}], model: :"gpt-4.1" ) @@ -97,11 +97,11 @@ Request parameters that correspond to file uploads can be passed as `StringIO`, require "pathname" # using `Pathname`, the file will be lazily read, without reading everything in to memory -file_object = openai.files.create(file: Pathname("input.jsonl"), purpose: :"fine-tune") +file_object = openai.files.create(file: Pathname("input.jsonl"), purpose: "fine-tune") file = File.read("input.jsonl") # using `StringIO`, useful if you already have the data in memory -file_object = openai.files.create(file: StringIO.new(file), purpose: :"fine-tune") +file_object = openai.files.create(file: StringIO.new(file), purpose: "fine-tune") puts(file_object.id) ``` @@ -150,7 +150,7 @@ openai = OpenAI::Client.new( # Or, configure per-request: openai.chat.completions.create( - messages: [{role: :user, content: "How can I get the name of the current day in JavaScript?"}], + messages: [{role: "user", content: "How can I get the name of the current day in JavaScript?"}], model: :"gpt-4.1", request_options: {max_retries: 5} ) @@ -172,7 +172,7 @@ openai = OpenAI::Client.new( # Or, configure per-request: openai.chat.completions.create( - messages: [{role: :user, content: "How can I list all files in a directory using Python?"}], + messages: [{role: "user", content: "How can I list all files in a directory using Python?"}], model: :"gpt-4.1", request_options: {timeout: 5} ) @@ -189,13 +189,13 @@ In all places where a `BaseModel` type is specified, vanilla Ruby `Hash` can als ```ruby # This has tooling readability, for auto-completion, static analysis, and goto definition with supported language services params = OpenAI::Models::Chat::CompletionCreateParams.new( - messages: [OpenAI::Models::Chat::ChatCompletionUserMessageParam.new(role: :user, content: "Say this is a test")], + messages: [OpenAI::Models::Chat::ChatCompletionUserMessageParam.new(role: "user", content: "Say this is a test")], model: :"gpt-4.1" ) # This also works params = { - messages: [{role: :user, content: "Say this is a test"}], + messages: [{role: "user", content: "Say this is a test"}], model: :"gpt-4.1" } ``` @@ -257,7 +257,7 @@ It is possible to pass a compatible model / parameter class to a method that exp ```ruby params = OpenAI::Models::Chat::CompletionCreateParams.new( - messages: [OpenAI::Models::Chat::ChatCompletionUserMessageParam.new(role: :user, content: "Say this is a test")], + messages: [OpenAI::Models::Chat::ChatCompletionUserMessageParam.new(role: "user", content: "Say this is a test")], model: :"gpt-4.1" ) openai.chat.completions.create(**params) From a05d2c5d16ce052c1fb84005739e6b6d853f5e8e Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Thu, 24 Apr 2025 23:03:34 +0000 Subject: [PATCH 16/47] chore(internal): improve response envelope unwrap functionality --- lib/openai/internal/transport/base_client.rb | 4 ++-- lib/openai/internal/util.rb | 23 ++++++++++--------- .../openai/internal/transport/base_client.rbi | 18 +++++++++++++-- rbi/lib/openai/internal/util.rbi | 12 +++++++--- sig/openai/internal/transport/base_client.rbs | 10 ++++++-- sig/openai/internal/util.rbs | 6 +++-- test/openai/internal/util_test.rb | 7 +++--- 7 files changed, 55 insertions(+), 25 deletions(-) diff --git a/lib/openai/internal/transport/base_client.rb b/lib/openai/internal/transport/base_client.rb index 8866d7ad..5d77a764 100644 --- a/lib/openai/internal/transport/base_client.rb +++ b/lib/openai/internal/transport/base_client.rb @@ -214,7 +214,7 @@ def initialize( # # @option req [Object, nil] :body # - # @option req [Symbol, nil] :unwrap + # @option req [Symbol, Integer, Array, Proc, nil] :unwrap # # @option req [Class, nil] :page # @@ -415,7 +415,7 @@ def initialize( # # @param body [Object, nil] # - # @param unwrap [Symbol, nil] + # @param unwrap [Symbol, Integer, Array, Proc, nil] # # @param page [Class, nil] # diff --git a/lib/openai/internal/util.rb b/lib/openai/internal/util.rb index 7b82110b..c1359d17 100644 --- a/lib/openai/internal/util.rb +++ b/lib/openai/internal/util.rb @@ -175,18 +175,17 @@ def deep_merge(*values, sentinel: nil, concat: false) # @api private # # @param data [Hash{Symbol=>Object}, Array, Object] - # @param pick [Symbol, Integer, Array, nil] - # @param sentinel [Object, nil] + # @param pick [Symbol, Integer, Array, Proc, nil] # @param blk [Proc, nil] # # @return [Object, nil] - def dig(data, pick, sentinel = nil, &blk) - case [data, pick, blk] - in [_, nil, nil] + def dig(data, pick, &blk) + case [data, pick] + in [_, nil] data - in [Hash, Symbol, _] | [Array, Integer, _] - blk.nil? ? data.fetch(pick, sentinel) : data.fetch(pick, &blk) - in [Hash | Array, Array, _] + in [Hash, Symbol] | [Array, Integer] + data.fetch(pick) { blk&.call } + in [Hash | Array, Array] pick.reduce(data) do |acc, key| case acc in Hash if acc.key?(key) @@ -194,11 +193,13 @@ def dig(data, pick, sentinel = nil, &blk) in Array if key.is_a?(Integer) && key < acc.length acc[key] else - return blk.nil? ? sentinel : blk.call + return blk&.call end end - in _ - blk.nil? ? sentinel : blk.call + in [_, Proc] + pick.call(data) + else + blk&.call end end end diff --git a/rbi/lib/openai/internal/transport/base_client.rbi b/rbi/lib/openai/internal/transport/base_client.rbi index 73785f6c..fb87b782 100644 --- a/rbi/lib/openai/internal/transport/base_client.rbi +++ b/rbi/lib/openai/internal/transport/base_client.rbi @@ -24,7 +24,14 @@ module OpenAI )] ), body: T.nilable(T.anything), - unwrap: T.nilable(Symbol), + unwrap: T.nilable( + T.any( + Symbol, + Integer, + T::Array[T.any(Symbol, Integer)], + T.proc.params(arg0: T.anything).returns(T.anything) + ) + ), page: T.nilable(T::Class[OpenAI::Internal::Type::BasePage[OpenAI::Internal::Type::BaseModel]]), stream: T.nilable( T::Class[OpenAI::Internal::Type::BaseStream[T.anything, @@ -173,7 +180,14 @@ module OpenAI )] ), body: T.nilable(T.anything), - unwrap: T.nilable(Symbol), + unwrap: T.nilable( + T.any( + Symbol, + Integer, + T::Array[T.any(Symbol, Integer)], + T.proc.params(arg0: T.anything).returns(T.anything) + ) + ), page: T.nilable(T::Class[OpenAI::Internal::Type::BasePage[OpenAI::Internal::Type::BaseModel]]), stream: T.nilable( T::Class[OpenAI::Internal::Type::BaseStream[T.anything, diff --git a/rbi/lib/openai/internal/util.rbi b/rbi/lib/openai/internal/util.rbi index 70758fde..3fe2f560 100644 --- a/rbi/lib/openai/internal/util.rbi +++ b/rbi/lib/openai/internal/util.rbi @@ -68,13 +68,19 @@ module OpenAI sig do params( data: T.any(OpenAI::Internal::AnyHash, T::Array[T.anything], T.anything), - pick: T.nilable(T.any(Symbol, Integer, T::Array[T.any(Symbol, Integer)])), - sentinel: T.nilable(T.anything), + pick: T.nilable( + T.any( + Symbol, + Integer, + T::Array[T.any(Symbol, Integer)], + T.proc.params(arg0: T.anything).returns(T.anything) + ) + ), blk: T.nilable(T.proc.returns(T.anything)) ) .returns(T.nilable(T.anything)) end - def dig(data, pick, sentinel = nil, &blk); end + def dig(data, pick, &blk); end end class << self diff --git a/sig/openai/internal/transport/base_client.rbs b/sig/openai/internal/transport/base_client.rbs index acb379e9..3b3e9b44 100644 --- a/sig/openai/internal/transport/base_client.rbs +++ b/sig/openai/internal/transport/base_client.rbs @@ -11,7 +11,10 @@ module OpenAI | Integer | ::Array[(String | Integer)?])?]?, body: top?, - unwrap: Symbol?, + unwrap: (Symbol + | Integer + | ::Array[(Symbol | Integer)] + | (^(top arg0) -> top))?, page: Class?, stream: Class?, model: OpenAI::Internal::Type::Converter::input?, @@ -96,7 +99,10 @@ module OpenAI | Integer | ::Array[(String | Integer)?])?]?, ?body: top?, - ?unwrap: Symbol?, + ?unwrap: (Symbol + | Integer + | ::Array[(Symbol | Integer)] + | (^(top arg0) -> top))?, ?page: Class?, ?stream: Class?, ?model: OpenAI::Internal::Type::Converter::input?, diff --git a/sig/openai/internal/util.rbs b/sig/openai/internal/util.rbs index 0e7d0388..14b3d577 100644 --- a/sig/openai/internal/util.rbs +++ b/sig/openai/internal/util.rbs @@ -29,8 +29,10 @@ module OpenAI def self?.dig: ( ::Hash[Symbol, top] | ::Array[top] | top data, - (Symbol | Integer | ::Array[(Symbol | Integer)])? pick, - ?top? sentinel + (Symbol + | Integer + | ::Array[(Symbol | Integer)] + | (^(top arg0) -> top))? pick ) { -> top? } -> top? diff --git a/test/openai/internal/util_test.rb b/test/openai/internal/util_test.rb index 5d52ee06..565fe013 100644 --- a/test/openai/internal/util_test.rb +++ b/test/openai/internal/util_test.rb @@ -87,8 +87,9 @@ def test_dig OpenAI::Internal::Util.dig([], 1.0) => nil OpenAI::Internal::Util.dig(Object, 1) => nil - OpenAI::Internal::Util.dig([], 1.0, 2) => 2 OpenAI::Internal::Util.dig([], 1.0) { 2 } => 2 + OpenAI::Internal::Util.dig([], ->(_) { 2 }) => 2 + OpenAI::Internal::Util.dig([1], -> { _1 in [1] }) => true end end end @@ -165,9 +166,9 @@ def test_json_content "application/vnd.github.v3+json" => true, "application/vnd.api+json" => true } - cases.each do |header, _verdict| + cases.each do |header, verdict| assert_pattern do - OpenAI::Internal::Util::JSON_CONTENT.match?(header) => verdict + OpenAI::Internal::Util::JSON_CONTENT.match?(header) => ^verdict end end end From 513acd850f86110f1820a97468f50baf3a3ae0b3 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Fri, 25 Apr 2025 16:32:47 +0000 Subject: [PATCH 17/47] fix: ensure gem release is unaffected by renaming --- Rakefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Rakefile b/Rakefile index 09924f69..2e5368f2 100644 --- a/Rakefile +++ b/Rakefile @@ -135,5 +135,5 @@ end desc("Release ruby gem") multitask(release: [:"build:gem"]) do - sh(*%w[gem push], *FileList["openai-*.gem"]) + sh(*%w[gem push], *FileList["*.gem"]) end From c78ea0fad674def58c3d15eec516a18149777d09 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Fri, 25 Apr 2025 21:06:42 +0000 Subject: [PATCH 18/47] fix: make a typo for `FilePart.content` --- lib/openai/file_part.rb | 10 ++++---- lib/openai/internal/type/converter.rb | 3 +++ lib/openai/internal/type/file_input.rb | 33 +++++++++++++++++--------- test/openai/file_part_test.rb | 12 ++++++++++ 4 files changed, 42 insertions(+), 16 deletions(-) create mode 100644 test/openai/file_part_test.rb diff --git a/lib/openai/file_part.rb b/lib/openai/file_part.rb index f17371ec..d2a3f6a5 100644 --- a/lib/openai/file_part.rb +++ b/lib/openai/file_part.rb @@ -15,15 +15,15 @@ class FilePart # # @return [String] private def read - case contents + case content in Pathname - contents.read(binmode: true) + content.read(binmode: true) in StringIO - contents.string + content.string in IO - contents.read + content.read in String - contents + content end end diff --git a/lib/openai/internal/type/converter.rb b/lib/openai/internal/type/converter.rb index 0b58d3b0..0d498235 100644 --- a/lib/openai/internal/type/converter.rb +++ b/lib/openai/internal/type/converter.rb @@ -44,6 +44,9 @@ def dump(value, state:) in Pathname | IO state[:can_retry] = false if value.is_a?(IO) OpenAI::FilePart.new(value) + in OpenAI::FilePart + state[:can_retry] = false if value.content.is_a?(IO) + value else value end diff --git a/lib/openai/internal/type/file_input.rb b/lib/openai/internal/type/file_input.rb index 892a1761..3ed13ec6 100644 --- a/lib/openai/internal/type/file_input.rb +++ b/lib/openai/internal/type/file_input.rb @@ -67,17 +67,28 @@ def coerce(value, state:) end end - # @!parse - # # @api private - # # - # # @param value [Pathname, StringIO, IO, String, Object] - # # - # # @param state [Hash{Symbol=>Object}] . - # # - # # @option state [Boolean] :can_retry - # # - # # @return [Pathname, StringIO, IO, String, Object] - # def dump(value, state:) = super + # @api private + # + # @param value [Pathname, StringIO, IO, String, Object] + # + # @param state [Hash{Symbol=>Object}] . + # + # @option state [Boolean] :can_retry + # + # @return [Pathname, StringIO, IO, String, Object] + def dump(value, state:) + # rubocop:disable Lint/DuplicateBranch + case value + in IO + state[:can_retry] = false + in OpenAI::FilePart if value.content.is_a?(IO) + state[:can_retry] = false + else + end + # rubocop:enable Lint/DuplicateBranch + + value + end end end end diff --git a/test/openai/file_part_test.rb b/test/openai/file_part_test.rb new file mode 100644 index 00000000..4136b1b6 --- /dev/null +++ b/test/openai/file_part_test.rb @@ -0,0 +1,12 @@ +# frozen_string_literal: true + +require_relative "test_helper" + +class OpenAI::Test::FilePartTest < Minitest::Test + def test_to_json + text = "gray" + filepart = OpenAI::FilePart.new(StringIO.new(text)) + + assert_equal(text.to_json, filepart.to_json) + end +end From df9e0991a3aac2a5a480bfb3cf622139ca1b1373 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Sat, 26 Apr 2025 05:41:35 +0000 Subject: [PATCH 19/47] chore(internal): remove unnecessary `rbi/lib` folder --- rbi/{lib => }/openai/client.rbi | 0 rbi/{lib => }/openai/errors.rbi | 0 rbi/{lib => }/openai/file_part.rbi | 0 rbi/{lib => }/openai/internal.rbi | 0 rbi/{lib => }/openai/internal/cursor_page.rbi | 0 rbi/{lib => }/openai/internal/page.rbi | 0 rbi/{lib => }/openai/internal/stream.rbi | 0 rbi/{lib => }/openai/internal/transport/base_client.rbi | 0 rbi/{lib => }/openai/internal/transport/pooled_net_requester.rbi | 0 rbi/{lib => }/openai/internal/type/array_of.rbi | 0 rbi/{lib => }/openai/internal/type/base_model.rbi | 0 rbi/{lib => }/openai/internal/type/base_page.rbi | 0 rbi/{lib => }/openai/internal/type/base_stream.rbi | 0 rbi/{lib => }/openai/internal/type/boolean.rbi | 0 rbi/{lib => }/openai/internal/type/converter.rbi | 0 rbi/{lib => }/openai/internal/type/enum.rbi | 0 rbi/{lib => }/openai/internal/type/file_input.rbi | 0 rbi/{lib => }/openai/internal/type/hash_of.rbi | 0 rbi/{lib => }/openai/internal/type/request_parameters.rbi | 0 rbi/{lib => }/openai/internal/type/union.rbi | 0 rbi/{lib => }/openai/internal/type/unknown.rbi | 0 rbi/{lib => }/openai/internal/util.rbi | 0 rbi/{lib => }/openai/models/all_models.rbi | 0 rbi/{lib => }/openai/models/audio/speech_create_params.rbi | 0 rbi/{lib => }/openai/models/audio/speech_model.rbi | 0 rbi/{lib => }/openai/models/audio/transcription.rbi | 0 rbi/{lib => }/openai/models/audio/transcription_create_params.rbi | 0 .../openai/models/audio/transcription_create_response.rbi | 0 rbi/{lib => }/openai/models/audio/transcription_include.rbi | 0 rbi/{lib => }/openai/models/audio/transcription_segment.rbi | 0 rbi/{lib => }/openai/models/audio/transcription_stream_event.rbi | 0 .../openai/models/audio/transcription_text_delta_event.rbi | 0 .../openai/models/audio/transcription_text_done_event.rbi | 0 rbi/{lib => }/openai/models/audio/transcription_verbose.rbi | 0 rbi/{lib => }/openai/models/audio/transcription_word.rbi | 0 rbi/{lib => }/openai/models/audio/translation.rbi | 0 rbi/{lib => }/openai/models/audio/translation_create_params.rbi | 0 rbi/{lib => }/openai/models/audio/translation_create_response.rbi | 0 rbi/{lib => }/openai/models/audio/translation_verbose.rbi | 0 rbi/{lib => }/openai/models/audio_model.rbi | 0 rbi/{lib => }/openai/models/audio_response_format.rbi | 0 rbi/{lib => }/openai/models/auto_file_chunking_strategy_param.rbi | 0 rbi/{lib => }/openai/models/batch.rbi | 0 rbi/{lib => }/openai/models/batch_cancel_params.rbi | 0 rbi/{lib => }/openai/models/batch_create_params.rbi | 0 rbi/{lib => }/openai/models/batch_error.rbi | 0 rbi/{lib => }/openai/models/batch_list_params.rbi | 0 rbi/{lib => }/openai/models/batch_request_counts.rbi | 0 rbi/{lib => }/openai/models/batch_retrieve_params.rbi | 0 rbi/{lib => }/openai/models/beta/assistant.rbi | 0 rbi/{lib => }/openai/models/beta/assistant_create_params.rbi | 0 rbi/{lib => }/openai/models/beta/assistant_delete_params.rbi | 0 rbi/{lib => }/openai/models/beta/assistant_deleted.rbi | 0 rbi/{lib => }/openai/models/beta/assistant_list_params.rbi | 0 .../openai/models/beta/assistant_response_format_option.rbi | 0 rbi/{lib => }/openai/models/beta/assistant_retrieve_params.rbi | 0 rbi/{lib => }/openai/models/beta/assistant_stream_event.rbi | 0 rbi/{lib => }/openai/models/beta/assistant_tool.rbi | 0 rbi/{lib => }/openai/models/beta/assistant_tool_choice.rbi | 0 .../openai/models/beta/assistant_tool_choice_function.rbi | 0 rbi/{lib => }/openai/models/beta/assistant_tool_choice_option.rbi | 0 rbi/{lib => }/openai/models/beta/assistant_update_params.rbi | 0 rbi/{lib => }/openai/models/beta/code_interpreter_tool.rbi | 0 rbi/{lib => }/openai/models/beta/file_search_tool.rbi | 0 rbi/{lib => }/openai/models/beta/function_tool.rbi | 0 rbi/{lib => }/openai/models/beta/message_stream_event.rbi | 0 rbi/{lib => }/openai/models/beta/run_step_stream_event.rbi | 0 rbi/{lib => }/openai/models/beta/run_stream_event.rbi | 0 rbi/{lib => }/openai/models/beta/thread.rbi | 0 rbi/{lib => }/openai/models/beta/thread_create_and_run_params.rbi | 0 rbi/{lib => }/openai/models/beta/thread_create_params.rbi | 0 rbi/{lib => }/openai/models/beta/thread_delete_params.rbi | 0 rbi/{lib => }/openai/models/beta/thread_deleted.rbi | 0 rbi/{lib => }/openai/models/beta/thread_retrieve_params.rbi | 0 rbi/{lib => }/openai/models/beta/thread_stream_event.rbi | 0 rbi/{lib => }/openai/models/beta/thread_update_params.rbi | 0 rbi/{lib => }/openai/models/beta/threads/annotation.rbi | 0 rbi/{lib => }/openai/models/beta/threads/annotation_delta.rbi | 0 .../openai/models/beta/threads/file_citation_annotation.rbi | 0 .../openai/models/beta/threads/file_citation_delta_annotation.rbi | 0 rbi/{lib => }/openai/models/beta/threads/file_path_annotation.rbi | 0 .../openai/models/beta/threads/file_path_delta_annotation.rbi | 0 rbi/{lib => }/openai/models/beta/threads/image_file.rbi | 0 .../openai/models/beta/threads/image_file_content_block.rbi | 0 rbi/{lib => }/openai/models/beta/threads/image_file_delta.rbi | 0 .../openai/models/beta/threads/image_file_delta_block.rbi | 0 rbi/{lib => }/openai/models/beta/threads/image_url.rbi | 0 .../openai/models/beta/threads/image_url_content_block.rbi | 0 rbi/{lib => }/openai/models/beta/threads/image_url_delta.rbi | 0 .../openai/models/beta/threads/image_url_delta_block.rbi | 0 rbi/{lib => }/openai/models/beta/threads/message.rbi | 0 rbi/{lib => }/openai/models/beta/threads/message_content.rbi | 0 .../openai/models/beta/threads/message_content_delta.rbi | 0 .../openai/models/beta/threads/message_content_part_param.rbi | 0 .../openai/models/beta/threads/message_create_params.rbi | 0 .../openai/models/beta/threads/message_delete_params.rbi | 0 rbi/{lib => }/openai/models/beta/threads/message_deleted.rbi | 0 rbi/{lib => }/openai/models/beta/threads/message_delta.rbi | 0 rbi/{lib => }/openai/models/beta/threads/message_delta_event.rbi | 0 rbi/{lib => }/openai/models/beta/threads/message_list_params.rbi | 0 .../openai/models/beta/threads/message_retrieve_params.rbi | 0 .../openai/models/beta/threads/message_update_params.rbi | 0 .../openai/models/beta/threads/refusal_content_block.rbi | 0 rbi/{lib => }/openai/models/beta/threads/refusal_delta_block.rbi | 0 .../models/beta/threads/required_action_function_tool_call.rbi | 0 rbi/{lib => }/openai/models/beta/threads/run.rbi | 0 rbi/{lib => }/openai/models/beta/threads/run_cancel_params.rbi | 0 rbi/{lib => }/openai/models/beta/threads/run_create_params.rbi | 0 rbi/{lib => }/openai/models/beta/threads/run_list_params.rbi | 0 rbi/{lib => }/openai/models/beta/threads/run_retrieve_params.rbi | 0 rbi/{lib => }/openai/models/beta/threads/run_status.rbi | 0 .../openai/models/beta/threads/run_submit_tool_outputs_params.rbi | 0 rbi/{lib => }/openai/models/beta/threads/run_update_params.rbi | 0 .../openai/models/beta/threads/runs/code_interpreter_logs.rbi | 0 .../models/beta/threads/runs/code_interpreter_output_image.rbi | 0 .../models/beta/threads/runs/code_interpreter_tool_call.rbi | 0 .../models/beta/threads/runs/code_interpreter_tool_call_delta.rbi | 0 .../openai/models/beta/threads/runs/file_search_tool_call.rbi | 0 .../models/beta/threads/runs/file_search_tool_call_delta.rbi | 0 .../openai/models/beta/threads/runs/function_tool_call.rbi | 0 .../openai/models/beta/threads/runs/function_tool_call_delta.rbi | 0 .../models/beta/threads/runs/message_creation_step_details.rbi | 0 rbi/{lib => }/openai/models/beta/threads/runs/run_step.rbi | 0 rbi/{lib => }/openai/models/beta/threads/runs/run_step_delta.rbi | 0 .../openai/models/beta/threads/runs/run_step_delta_event.rbi | 0 .../models/beta/threads/runs/run_step_delta_message_delta.rbi | 0 .../openai/models/beta/threads/runs/run_step_include.rbi | 0 .../openai/models/beta/threads/runs/step_list_params.rbi | 0 .../openai/models/beta/threads/runs/step_retrieve_params.rbi | 0 rbi/{lib => }/openai/models/beta/threads/runs/tool_call.rbi | 0 rbi/{lib => }/openai/models/beta/threads/runs/tool_call_delta.rbi | 0 .../openai/models/beta/threads/runs/tool_call_delta_object.rbi | 0 .../openai/models/beta/threads/runs/tool_calls_step_details.rbi | 0 rbi/{lib => }/openai/models/beta/threads/text.rbi | 0 rbi/{lib => }/openai/models/beta/threads/text_content_block.rbi | 0 .../openai/models/beta/threads/text_content_block_param.rbi | 0 rbi/{lib => }/openai/models/beta/threads/text_delta.rbi | 0 rbi/{lib => }/openai/models/beta/threads/text_delta_block.rbi | 0 rbi/{lib => }/openai/models/chat/chat_completion.rbi | 0 .../models/chat/chat_completion_assistant_message_param.rbi | 0 rbi/{lib => }/openai/models/chat/chat_completion_audio.rbi | 0 rbi/{lib => }/openai/models/chat/chat_completion_audio_param.rbi | 0 rbi/{lib => }/openai/models/chat/chat_completion_chunk.rbi | 0 rbi/{lib => }/openai/models/chat/chat_completion_content_part.rbi | 0 .../openai/models/chat/chat_completion_content_part_image.rbi | 0 .../models/chat/chat_completion_content_part_input_audio.rbi | 0 .../openai/models/chat/chat_completion_content_part_refusal.rbi | 0 .../openai/models/chat/chat_completion_content_part_text.rbi | 0 rbi/{lib => }/openai/models/chat/chat_completion_deleted.rbi | 0 .../models/chat/chat_completion_developer_message_param.rbi | 0 .../openai/models/chat/chat_completion_function_call_option.rbi | 0 .../openai/models/chat/chat_completion_function_message_param.rbi | 0 rbi/{lib => }/openai/models/chat/chat_completion_message.rbi | 0 .../openai/models/chat/chat_completion_message_param.rbi | 0 .../openai/models/chat/chat_completion_message_tool_call.rbi | 0 rbi/{lib => }/openai/models/chat/chat_completion_modality.rbi | 0 .../openai/models/chat/chat_completion_named_tool_choice.rbi | 0 .../openai/models/chat/chat_completion_prediction_content.rbi | 0 .../openai/models/chat/chat_completion_reasoning_effort.rbi | 0 rbi/{lib => }/openai/models/chat/chat_completion_role.rbi | 0 .../openai/models/chat/chat_completion_store_message.rbi | 0 .../openai/models/chat/chat_completion_stream_options.rbi | 0 .../openai/models/chat/chat_completion_system_message_param.rbi | 0 .../openai/models/chat/chat_completion_token_logprob.rbi | 0 rbi/{lib => }/openai/models/chat/chat_completion_tool.rbi | 0 .../openai/models/chat/chat_completion_tool_choice_option.rbi | 0 .../openai/models/chat/chat_completion_tool_message_param.rbi | 0 .../openai/models/chat/chat_completion_user_message_param.rbi | 0 rbi/{lib => }/openai/models/chat/completion_create_params.rbi | 0 rbi/{lib => }/openai/models/chat/completion_delete_params.rbi | 0 rbi/{lib => }/openai/models/chat/completion_list_params.rbi | 0 rbi/{lib => }/openai/models/chat/completion_retrieve_params.rbi | 0 rbi/{lib => }/openai/models/chat/completion_update_params.rbi | 0 .../openai/models/chat/completions/message_list_params.rbi | 0 rbi/{lib => }/openai/models/chat_model.rbi | 0 rbi/{lib => }/openai/models/comparison_filter.rbi | 0 rbi/{lib => }/openai/models/completion.rbi | 0 rbi/{lib => }/openai/models/completion_choice.rbi | 0 rbi/{lib => }/openai/models/completion_create_params.rbi | 0 rbi/{lib => }/openai/models/completion_usage.rbi | 0 rbi/{lib => }/openai/models/compound_filter.rbi | 0 rbi/{lib => }/openai/models/create_embedding_response.rbi | 0 rbi/{lib => }/openai/models/embedding.rbi | 0 rbi/{lib => }/openai/models/embedding_create_params.rbi | 0 rbi/{lib => }/openai/models/embedding_model.rbi | 0 rbi/{lib => }/openai/models/error_object.rbi | 0 rbi/{lib => }/openai/models/eval_create_params.rbi | 0 rbi/{lib => }/openai/models/eval_create_response.rbi | 0 rbi/{lib => }/openai/models/eval_custom_data_source_config.rbi | 0 rbi/{lib => }/openai/models/eval_delete_params.rbi | 0 rbi/{lib => }/openai/models/eval_delete_response.rbi | 0 rbi/{lib => }/openai/models/eval_label_model_grader.rbi | 0 rbi/{lib => }/openai/models/eval_list_params.rbi | 0 rbi/{lib => }/openai/models/eval_list_response.rbi | 0 rbi/{lib => }/openai/models/eval_retrieve_params.rbi | 0 rbi/{lib => }/openai/models/eval_retrieve_response.rbi | 0 .../openai/models/eval_stored_completions_data_source_config.rbi | 0 rbi/{lib => }/openai/models/eval_string_check_grader.rbi | 0 rbi/{lib => }/openai/models/eval_text_similarity_grader.rbi | 0 rbi/{lib => }/openai/models/eval_update_params.rbi | 0 rbi/{lib => }/openai/models/eval_update_response.rbi | 0 .../models/evals/create_eval_completions_run_data_source.rbi | 0 .../openai/models/evals/create_eval_jsonl_run_data_source.rbi | 0 rbi/{lib => }/openai/models/evals/eval_api_error.rbi | 0 rbi/{lib => }/openai/models/evals/run_cancel_params.rbi | 0 rbi/{lib => }/openai/models/evals/run_cancel_response.rbi | 0 rbi/{lib => }/openai/models/evals/run_create_params.rbi | 0 rbi/{lib => }/openai/models/evals/run_create_response.rbi | 0 rbi/{lib => }/openai/models/evals/run_delete_params.rbi | 0 rbi/{lib => }/openai/models/evals/run_delete_response.rbi | 0 rbi/{lib => }/openai/models/evals/run_list_params.rbi | 0 rbi/{lib => }/openai/models/evals/run_list_response.rbi | 0 rbi/{lib => }/openai/models/evals/run_retrieve_params.rbi | 0 rbi/{lib => }/openai/models/evals/run_retrieve_response.rbi | 0 .../openai/models/evals/runs/output_item_list_params.rbi | 0 .../openai/models/evals/runs/output_item_list_response.rbi | 0 .../openai/models/evals/runs/output_item_retrieve_params.rbi | 0 .../openai/models/evals/runs/output_item_retrieve_response.rbi | 0 rbi/{lib => }/openai/models/file_chunking_strategy.rbi | 0 rbi/{lib => }/openai/models/file_chunking_strategy_param.rbi | 0 rbi/{lib => }/openai/models/file_content_params.rbi | 0 rbi/{lib => }/openai/models/file_create_params.rbi | 0 rbi/{lib => }/openai/models/file_delete_params.rbi | 0 rbi/{lib => }/openai/models/file_deleted.rbi | 0 rbi/{lib => }/openai/models/file_list_params.rbi | 0 rbi/{lib => }/openai/models/file_object.rbi | 0 rbi/{lib => }/openai/models/file_purpose.rbi | 0 rbi/{lib => }/openai/models/file_retrieve_params.rbi | 0 .../models/fine_tuning/checkpoints/permission_create_params.rbi | 0 .../models/fine_tuning/checkpoints/permission_create_response.rbi | 0 .../models/fine_tuning/checkpoints/permission_delete_params.rbi | 0 .../models/fine_tuning/checkpoints/permission_delete_response.rbi | 0 .../models/fine_tuning/checkpoints/permission_retrieve_params.rbi | 0 .../fine_tuning/checkpoints/permission_retrieve_response.rbi | 0 rbi/{lib => }/openai/models/fine_tuning/fine_tuning_job.rbi | 0 rbi/{lib => }/openai/models/fine_tuning/fine_tuning_job_event.rbi | 0 .../openai/models/fine_tuning/fine_tuning_job_integration.rbi | 0 .../models/fine_tuning/fine_tuning_job_wandb_integration.rbi | 0 .../fine_tuning/fine_tuning_job_wandb_integration_object.rbi | 0 rbi/{lib => }/openai/models/fine_tuning/job_cancel_params.rbi | 0 rbi/{lib => }/openai/models/fine_tuning/job_create_params.rbi | 0 .../openai/models/fine_tuning/job_list_events_params.rbi | 0 rbi/{lib => }/openai/models/fine_tuning/job_list_params.rbi | 0 rbi/{lib => }/openai/models/fine_tuning/job_retrieve_params.rbi | 0 .../openai/models/fine_tuning/jobs/checkpoint_list_params.rbi | 0 .../openai/models/fine_tuning/jobs/fine_tuning_job_checkpoint.rbi | 0 rbi/{lib => }/openai/models/function_definition.rbi | 0 rbi/{lib => }/openai/models/function_parameters.rbi | 0 rbi/{lib => }/openai/models/image.rbi | 0 rbi/{lib => }/openai/models/image_create_variation_params.rbi | 0 rbi/{lib => }/openai/models/image_edit_params.rbi | 0 rbi/{lib => }/openai/models/image_generate_params.rbi | 0 rbi/{lib => }/openai/models/image_model.rbi | 0 rbi/{lib => }/openai/models/images_response.rbi | 0 rbi/{lib => }/openai/models/metadata.rbi | 0 rbi/{lib => }/openai/models/model.rbi | 0 rbi/{lib => }/openai/models/model_delete_params.rbi | 0 rbi/{lib => }/openai/models/model_deleted.rbi | 0 rbi/{lib => }/openai/models/model_list_params.rbi | 0 rbi/{lib => }/openai/models/model_retrieve_params.rbi | 0 rbi/{lib => }/openai/models/moderation.rbi | 0 rbi/{lib => }/openai/models/moderation_create_params.rbi | 0 rbi/{lib => }/openai/models/moderation_create_response.rbi | 0 rbi/{lib => }/openai/models/moderation_image_url_input.rbi | 0 rbi/{lib => }/openai/models/moderation_model.rbi | 0 rbi/{lib => }/openai/models/moderation_multi_modal_input.rbi | 0 rbi/{lib => }/openai/models/moderation_text_input.rbi | 0 .../openai/models/other_file_chunking_strategy_object.rbi | 0 rbi/{lib => }/openai/models/reasoning.rbi | 0 rbi/{lib => }/openai/models/reasoning_effort.rbi | 0 rbi/{lib => }/openai/models/response_format_json_object.rbi | 0 rbi/{lib => }/openai/models/response_format_json_schema.rbi | 0 rbi/{lib => }/openai/models/response_format_text.rbi | 0 rbi/{lib => }/openai/models/responses/computer_tool.rbi | 0 rbi/{lib => }/openai/models/responses/easy_input_message.rbi | 0 rbi/{lib => }/openai/models/responses/file_search_tool.rbi | 0 rbi/{lib => }/openai/models/responses/function_tool.rbi | 0 rbi/{lib => }/openai/models/responses/input_item_list_params.rbi | 0 rbi/{lib => }/openai/models/responses/response.rbi | 0 .../openai/models/responses/response_audio_delta_event.rbi | 0 .../openai/models/responses/response_audio_done_event.rbi | 0 .../models/responses/response_audio_transcript_delta_event.rbi | 0 .../models/responses/response_audio_transcript_done_event.rbi | 0 .../responses/response_code_interpreter_call_code_delta_event.rbi | 0 .../responses/response_code_interpreter_call_code_done_event.rbi | 0 .../responses/response_code_interpreter_call_completed_event.rbi | 0 .../response_code_interpreter_call_in_progress_event.rbi | 0 .../response_code_interpreter_call_interpreting_event.rbi | 0 .../models/responses/response_code_interpreter_tool_call.rbi | 0 .../openai/models/responses/response_completed_event.rbi | 0 .../openai/models/responses/response_computer_tool_call.rbi | 0 .../models/responses/response_computer_tool_call_output_item.rbi | 0 .../responses/response_computer_tool_call_output_screenshot.rbi | 0 rbi/{lib => }/openai/models/responses/response_content.rbi | 0 .../openai/models/responses/response_content_part_added_event.rbi | 0 .../openai/models/responses/response_content_part_done_event.rbi | 0 rbi/{lib => }/openai/models/responses/response_create_params.rbi | 0 rbi/{lib => }/openai/models/responses/response_created_event.rbi | 0 rbi/{lib => }/openai/models/responses/response_delete_params.rbi | 0 rbi/{lib => }/openai/models/responses/response_error.rbi | 0 rbi/{lib => }/openai/models/responses/response_error_event.rbi | 0 rbi/{lib => }/openai/models/responses/response_failed_event.rbi | 0 .../responses/response_file_search_call_completed_event.rbi | 0 .../responses/response_file_search_call_in_progress_event.rbi | 0 .../responses/response_file_search_call_searching_event.rbi | 0 .../openai/models/responses/response_file_search_tool_call.rbi | 0 .../openai/models/responses/response_format_text_config.rbi | 0 .../models/responses/response_format_text_json_schema_config.rbi | 0 .../responses/response_function_call_arguments_delta_event.rbi | 0 .../responses/response_function_call_arguments_done_event.rbi | 0 .../openai/models/responses/response_function_tool_call.rbi | 0 .../openai/models/responses/response_function_tool_call_item.rbi | 0 .../models/responses/response_function_tool_call_output_item.rbi | 0 .../openai/models/responses/response_function_web_search.rbi | 0 .../openai/models/responses/response_in_progress_event.rbi | 0 rbi/{lib => }/openai/models/responses/response_includable.rbi | 0 .../openai/models/responses/response_incomplete_event.rbi | 0 rbi/{lib => }/openai/models/responses/response_input.rbi | 0 rbi/{lib => }/openai/models/responses/response_input_audio.rbi | 0 rbi/{lib => }/openai/models/responses/response_input_content.rbi | 0 rbi/{lib => }/openai/models/responses/response_input_file.rbi | 0 rbi/{lib => }/openai/models/responses/response_input_image.rbi | 0 rbi/{lib => }/openai/models/responses/response_input_item.rbi | 0 .../models/responses/response_input_message_content_list.rbi | 0 .../openai/models/responses/response_input_message_item.rbi | 0 rbi/{lib => }/openai/models/responses/response_input_text.rbi | 0 rbi/{lib => }/openai/models/responses/response_item.rbi | 0 rbi/{lib => }/openai/models/responses/response_item_list.rbi | 0 rbi/{lib => }/openai/models/responses/response_output_audio.rbi | 0 rbi/{lib => }/openai/models/responses/response_output_item.rbi | 0 .../openai/models/responses/response_output_item_added_event.rbi | 0 .../openai/models/responses/response_output_item_done_event.rbi | 0 rbi/{lib => }/openai/models/responses/response_output_message.rbi | 0 rbi/{lib => }/openai/models/responses/response_output_refusal.rbi | 0 rbi/{lib => }/openai/models/responses/response_output_text.rbi | 0 rbi/{lib => }/openai/models/responses/response_reasoning_item.rbi | 0 .../responses/response_reasoning_summary_part_added_event.rbi | 0 .../responses/response_reasoning_summary_part_done_event.rbi | 0 .../responses/response_reasoning_summary_text_delta_event.rbi | 0 .../responses/response_reasoning_summary_text_done_event.rbi | 0 .../openai/models/responses/response_refusal_delta_event.rbi | 0 .../openai/models/responses/response_refusal_done_event.rbi | 0 .../openai/models/responses/response_retrieve_params.rbi | 0 rbi/{lib => }/openai/models/responses/response_status.rbi | 0 rbi/{lib => }/openai/models/responses/response_stream_event.rbi | 0 .../models/responses/response_text_annotation_delta_event.rbi | 0 rbi/{lib => }/openai/models/responses/response_text_config.rbi | 0 .../openai/models/responses/response_text_delta_event.rbi | 0 .../openai/models/responses/response_text_done_event.rbi | 0 rbi/{lib => }/openai/models/responses/response_usage.rbi | 0 .../models/responses/response_web_search_call_completed_event.rbi | 0 .../responses/response_web_search_call_in_progress_event.rbi | 0 .../models/responses/response_web_search_call_searching_event.rbi | 0 rbi/{lib => }/openai/models/responses/tool.rbi | 0 rbi/{lib => }/openai/models/responses/tool_choice_function.rbi | 0 rbi/{lib => }/openai/models/responses/tool_choice_options.rbi | 0 rbi/{lib => }/openai/models/responses/tool_choice_types.rbi | 0 rbi/{lib => }/openai/models/responses/web_search_tool.rbi | 0 rbi/{lib => }/openai/models/responses_model.rbi | 0 rbi/{lib => }/openai/models/static_file_chunking_strategy.rbi | 0 .../openai/models/static_file_chunking_strategy_object.rbi | 0 .../openai/models/static_file_chunking_strategy_object_param.rbi | 0 rbi/{lib => }/openai/models/upload.rbi | 0 rbi/{lib => }/openai/models/upload_cancel_params.rbi | 0 rbi/{lib => }/openai/models/upload_complete_params.rbi | 0 rbi/{lib => }/openai/models/upload_create_params.rbi | 0 rbi/{lib => }/openai/models/uploads/part_create_params.rbi | 0 rbi/{lib => }/openai/models/uploads/upload_part.rbi | 0 rbi/{lib => }/openai/models/vector_store.rbi | 0 rbi/{lib => }/openai/models/vector_store_create_params.rbi | 0 rbi/{lib => }/openai/models/vector_store_delete_params.rbi | 0 rbi/{lib => }/openai/models/vector_store_deleted.rbi | 0 rbi/{lib => }/openai/models/vector_store_list_params.rbi | 0 rbi/{lib => }/openai/models/vector_store_retrieve_params.rbi | 0 rbi/{lib => }/openai/models/vector_store_search_params.rbi | 0 rbi/{lib => }/openai/models/vector_store_search_response.rbi | 0 rbi/{lib => }/openai/models/vector_store_update_params.rbi | 0 .../openai/models/vector_stores/file_batch_cancel_params.rbi | 0 .../openai/models/vector_stores/file_batch_create_params.rbi | 0 .../openai/models/vector_stores/file_batch_list_files_params.rbi | 0 .../openai/models/vector_stores/file_batch_retrieve_params.rbi | 0 rbi/{lib => }/openai/models/vector_stores/file_content_params.rbi | 0 .../openai/models/vector_stores/file_content_response.rbi | 0 rbi/{lib => }/openai/models/vector_stores/file_create_params.rbi | 0 rbi/{lib => }/openai/models/vector_stores/file_delete_params.rbi | 0 rbi/{lib => }/openai/models/vector_stores/file_list_params.rbi | 0 .../openai/models/vector_stores/file_retrieve_params.rbi | 0 rbi/{lib => }/openai/models/vector_stores/file_update_params.rbi | 0 rbi/{lib => }/openai/models/vector_stores/vector_store_file.rbi | 0 .../openai/models/vector_stores/vector_store_file_batch.rbi | 0 .../openai/models/vector_stores/vector_store_file_deleted.rbi | 0 rbi/{lib => }/openai/request_options.rbi | 0 rbi/{lib => }/openai/resources/audio.rbi | 0 rbi/{lib => }/openai/resources/audio/speech.rbi | 0 rbi/{lib => }/openai/resources/audio/transcriptions.rbi | 0 rbi/{lib => }/openai/resources/audio/translations.rbi | 0 rbi/{lib => }/openai/resources/batches.rbi | 0 rbi/{lib => }/openai/resources/beta.rbi | 0 rbi/{lib => }/openai/resources/beta/assistants.rbi | 0 rbi/{lib => }/openai/resources/beta/threads.rbi | 0 rbi/{lib => }/openai/resources/beta/threads/messages.rbi | 0 rbi/{lib => }/openai/resources/beta/threads/runs.rbi | 0 rbi/{lib => }/openai/resources/beta/threads/runs/steps.rbi | 0 rbi/{lib => }/openai/resources/chat.rbi | 0 rbi/{lib => }/openai/resources/chat/completions.rbi | 0 rbi/{lib => }/openai/resources/chat/completions/messages.rbi | 0 rbi/{lib => }/openai/resources/completions.rbi | 0 rbi/{lib => }/openai/resources/embeddings.rbi | 0 rbi/{lib => }/openai/resources/evals.rbi | 0 rbi/{lib => }/openai/resources/evals/runs.rbi | 0 rbi/{lib => }/openai/resources/evals/runs/output_items.rbi | 0 rbi/{lib => }/openai/resources/files.rbi | 0 rbi/{lib => }/openai/resources/fine_tuning.rbi | 0 rbi/{lib => }/openai/resources/fine_tuning/checkpoints.rbi | 0 .../openai/resources/fine_tuning/checkpoints/permissions.rbi | 0 rbi/{lib => }/openai/resources/fine_tuning/jobs.rbi | 0 rbi/{lib => }/openai/resources/fine_tuning/jobs/checkpoints.rbi | 0 rbi/{lib => }/openai/resources/images.rbi | 0 rbi/{lib => }/openai/resources/models.rbi | 0 rbi/{lib => }/openai/resources/moderations.rbi | 0 rbi/{lib => }/openai/resources/responses.rbi | 0 rbi/{lib => }/openai/resources/responses/input_items.rbi | 0 rbi/{lib => }/openai/resources/uploads.rbi | 0 rbi/{lib => }/openai/resources/uploads/parts.rbi | 0 rbi/{lib => }/openai/resources/vector_stores.rbi | 0 rbi/{lib => }/openai/resources/vector_stores/file_batches.rbi | 0 rbi/{lib => }/openai/resources/vector_stores/files.rbi | 0 rbi/{lib => }/openai/version.rbi | 0 428 files changed, 0 insertions(+), 0 deletions(-) rename rbi/{lib => }/openai/client.rbi (100%) rename rbi/{lib => }/openai/errors.rbi (100%) rename rbi/{lib => }/openai/file_part.rbi (100%) rename rbi/{lib => }/openai/internal.rbi (100%) rename rbi/{lib => }/openai/internal/cursor_page.rbi (100%) rename rbi/{lib => }/openai/internal/page.rbi (100%) rename rbi/{lib => }/openai/internal/stream.rbi (100%) rename rbi/{lib => }/openai/internal/transport/base_client.rbi (100%) rename rbi/{lib => }/openai/internal/transport/pooled_net_requester.rbi (100%) rename rbi/{lib => }/openai/internal/type/array_of.rbi (100%) rename rbi/{lib => }/openai/internal/type/base_model.rbi (100%) rename rbi/{lib => }/openai/internal/type/base_page.rbi (100%) rename rbi/{lib => }/openai/internal/type/base_stream.rbi (100%) rename rbi/{lib => }/openai/internal/type/boolean.rbi (100%) rename rbi/{lib => }/openai/internal/type/converter.rbi (100%) rename rbi/{lib => }/openai/internal/type/enum.rbi (100%) rename rbi/{lib => }/openai/internal/type/file_input.rbi (100%) rename rbi/{lib => }/openai/internal/type/hash_of.rbi (100%) rename rbi/{lib => }/openai/internal/type/request_parameters.rbi (100%) rename rbi/{lib => }/openai/internal/type/union.rbi (100%) rename rbi/{lib => }/openai/internal/type/unknown.rbi (100%) rename rbi/{lib => }/openai/internal/util.rbi (100%) rename rbi/{lib => }/openai/models/all_models.rbi (100%) rename rbi/{lib => }/openai/models/audio/speech_create_params.rbi (100%) rename rbi/{lib => }/openai/models/audio/speech_model.rbi (100%) rename rbi/{lib => }/openai/models/audio/transcription.rbi (100%) rename rbi/{lib => }/openai/models/audio/transcription_create_params.rbi (100%) rename rbi/{lib => }/openai/models/audio/transcription_create_response.rbi (100%) rename rbi/{lib => }/openai/models/audio/transcription_include.rbi (100%) rename rbi/{lib => }/openai/models/audio/transcription_segment.rbi (100%) rename rbi/{lib => }/openai/models/audio/transcription_stream_event.rbi (100%) rename rbi/{lib => }/openai/models/audio/transcription_text_delta_event.rbi (100%) rename rbi/{lib => }/openai/models/audio/transcription_text_done_event.rbi (100%) rename rbi/{lib => }/openai/models/audio/transcription_verbose.rbi (100%) rename rbi/{lib => }/openai/models/audio/transcription_word.rbi (100%) rename rbi/{lib => }/openai/models/audio/translation.rbi (100%) rename rbi/{lib => }/openai/models/audio/translation_create_params.rbi (100%) rename rbi/{lib => }/openai/models/audio/translation_create_response.rbi (100%) rename rbi/{lib => }/openai/models/audio/translation_verbose.rbi (100%) rename rbi/{lib => }/openai/models/audio_model.rbi (100%) rename rbi/{lib => }/openai/models/audio_response_format.rbi (100%) rename rbi/{lib => }/openai/models/auto_file_chunking_strategy_param.rbi (100%) rename rbi/{lib => }/openai/models/batch.rbi (100%) rename rbi/{lib => }/openai/models/batch_cancel_params.rbi (100%) rename rbi/{lib => }/openai/models/batch_create_params.rbi (100%) rename rbi/{lib => }/openai/models/batch_error.rbi (100%) rename rbi/{lib => }/openai/models/batch_list_params.rbi (100%) rename rbi/{lib => }/openai/models/batch_request_counts.rbi (100%) rename rbi/{lib => }/openai/models/batch_retrieve_params.rbi (100%) rename rbi/{lib => }/openai/models/beta/assistant.rbi (100%) rename rbi/{lib => }/openai/models/beta/assistant_create_params.rbi (100%) rename rbi/{lib => }/openai/models/beta/assistant_delete_params.rbi (100%) rename rbi/{lib => }/openai/models/beta/assistant_deleted.rbi (100%) rename rbi/{lib => }/openai/models/beta/assistant_list_params.rbi (100%) rename rbi/{lib => }/openai/models/beta/assistant_response_format_option.rbi (100%) rename rbi/{lib => }/openai/models/beta/assistant_retrieve_params.rbi (100%) rename rbi/{lib => }/openai/models/beta/assistant_stream_event.rbi (100%) rename rbi/{lib => }/openai/models/beta/assistant_tool.rbi (100%) rename rbi/{lib => }/openai/models/beta/assistant_tool_choice.rbi (100%) rename rbi/{lib => }/openai/models/beta/assistant_tool_choice_function.rbi (100%) rename rbi/{lib => }/openai/models/beta/assistant_tool_choice_option.rbi (100%) rename rbi/{lib => }/openai/models/beta/assistant_update_params.rbi (100%) rename rbi/{lib => }/openai/models/beta/code_interpreter_tool.rbi (100%) rename rbi/{lib => }/openai/models/beta/file_search_tool.rbi (100%) rename rbi/{lib => }/openai/models/beta/function_tool.rbi (100%) rename rbi/{lib => }/openai/models/beta/message_stream_event.rbi (100%) rename rbi/{lib => }/openai/models/beta/run_step_stream_event.rbi (100%) rename rbi/{lib => }/openai/models/beta/run_stream_event.rbi (100%) rename rbi/{lib => }/openai/models/beta/thread.rbi (100%) rename rbi/{lib => }/openai/models/beta/thread_create_and_run_params.rbi (100%) rename rbi/{lib => }/openai/models/beta/thread_create_params.rbi (100%) rename rbi/{lib => }/openai/models/beta/thread_delete_params.rbi (100%) rename rbi/{lib => }/openai/models/beta/thread_deleted.rbi (100%) rename rbi/{lib => }/openai/models/beta/thread_retrieve_params.rbi (100%) rename rbi/{lib => }/openai/models/beta/thread_stream_event.rbi (100%) rename rbi/{lib => }/openai/models/beta/thread_update_params.rbi (100%) rename rbi/{lib => }/openai/models/beta/threads/annotation.rbi (100%) rename rbi/{lib => }/openai/models/beta/threads/annotation_delta.rbi (100%) rename rbi/{lib => }/openai/models/beta/threads/file_citation_annotation.rbi (100%) rename rbi/{lib => }/openai/models/beta/threads/file_citation_delta_annotation.rbi (100%) rename rbi/{lib => }/openai/models/beta/threads/file_path_annotation.rbi (100%) rename rbi/{lib => }/openai/models/beta/threads/file_path_delta_annotation.rbi (100%) rename rbi/{lib => }/openai/models/beta/threads/image_file.rbi (100%) rename rbi/{lib => }/openai/models/beta/threads/image_file_content_block.rbi (100%) rename rbi/{lib => }/openai/models/beta/threads/image_file_delta.rbi (100%) rename rbi/{lib => }/openai/models/beta/threads/image_file_delta_block.rbi (100%) rename rbi/{lib => }/openai/models/beta/threads/image_url.rbi (100%) rename rbi/{lib => }/openai/models/beta/threads/image_url_content_block.rbi (100%) rename rbi/{lib => }/openai/models/beta/threads/image_url_delta.rbi (100%) rename rbi/{lib => }/openai/models/beta/threads/image_url_delta_block.rbi (100%) rename rbi/{lib => }/openai/models/beta/threads/message.rbi (100%) rename rbi/{lib => }/openai/models/beta/threads/message_content.rbi (100%) rename rbi/{lib => }/openai/models/beta/threads/message_content_delta.rbi (100%) rename rbi/{lib => }/openai/models/beta/threads/message_content_part_param.rbi (100%) rename rbi/{lib => }/openai/models/beta/threads/message_create_params.rbi (100%) rename rbi/{lib => }/openai/models/beta/threads/message_delete_params.rbi (100%) rename rbi/{lib => }/openai/models/beta/threads/message_deleted.rbi (100%) rename rbi/{lib => }/openai/models/beta/threads/message_delta.rbi (100%) rename rbi/{lib => }/openai/models/beta/threads/message_delta_event.rbi (100%) rename rbi/{lib => }/openai/models/beta/threads/message_list_params.rbi (100%) rename rbi/{lib => }/openai/models/beta/threads/message_retrieve_params.rbi (100%) rename rbi/{lib => }/openai/models/beta/threads/message_update_params.rbi (100%) rename rbi/{lib => }/openai/models/beta/threads/refusal_content_block.rbi (100%) rename rbi/{lib => }/openai/models/beta/threads/refusal_delta_block.rbi (100%) rename rbi/{lib => }/openai/models/beta/threads/required_action_function_tool_call.rbi (100%) rename rbi/{lib => }/openai/models/beta/threads/run.rbi (100%) rename rbi/{lib => }/openai/models/beta/threads/run_cancel_params.rbi (100%) rename rbi/{lib => }/openai/models/beta/threads/run_create_params.rbi (100%) rename rbi/{lib => }/openai/models/beta/threads/run_list_params.rbi (100%) rename rbi/{lib => }/openai/models/beta/threads/run_retrieve_params.rbi (100%) rename rbi/{lib => }/openai/models/beta/threads/run_status.rbi (100%) rename rbi/{lib => }/openai/models/beta/threads/run_submit_tool_outputs_params.rbi (100%) rename rbi/{lib => }/openai/models/beta/threads/run_update_params.rbi (100%) rename rbi/{lib => }/openai/models/beta/threads/runs/code_interpreter_logs.rbi (100%) rename rbi/{lib => }/openai/models/beta/threads/runs/code_interpreter_output_image.rbi (100%) rename rbi/{lib => }/openai/models/beta/threads/runs/code_interpreter_tool_call.rbi (100%) rename rbi/{lib => }/openai/models/beta/threads/runs/code_interpreter_tool_call_delta.rbi (100%) rename rbi/{lib => }/openai/models/beta/threads/runs/file_search_tool_call.rbi (100%) rename rbi/{lib => }/openai/models/beta/threads/runs/file_search_tool_call_delta.rbi (100%) rename rbi/{lib => }/openai/models/beta/threads/runs/function_tool_call.rbi (100%) rename rbi/{lib => }/openai/models/beta/threads/runs/function_tool_call_delta.rbi (100%) rename rbi/{lib => }/openai/models/beta/threads/runs/message_creation_step_details.rbi (100%) rename rbi/{lib => }/openai/models/beta/threads/runs/run_step.rbi (100%) rename rbi/{lib => }/openai/models/beta/threads/runs/run_step_delta.rbi (100%) rename rbi/{lib => }/openai/models/beta/threads/runs/run_step_delta_event.rbi (100%) rename rbi/{lib => }/openai/models/beta/threads/runs/run_step_delta_message_delta.rbi (100%) rename rbi/{lib => }/openai/models/beta/threads/runs/run_step_include.rbi (100%) rename rbi/{lib => }/openai/models/beta/threads/runs/step_list_params.rbi (100%) rename rbi/{lib => }/openai/models/beta/threads/runs/step_retrieve_params.rbi (100%) rename rbi/{lib => }/openai/models/beta/threads/runs/tool_call.rbi (100%) rename rbi/{lib => }/openai/models/beta/threads/runs/tool_call_delta.rbi (100%) rename rbi/{lib => }/openai/models/beta/threads/runs/tool_call_delta_object.rbi (100%) rename rbi/{lib => }/openai/models/beta/threads/runs/tool_calls_step_details.rbi (100%) rename rbi/{lib => }/openai/models/beta/threads/text.rbi (100%) rename rbi/{lib => }/openai/models/beta/threads/text_content_block.rbi (100%) rename rbi/{lib => }/openai/models/beta/threads/text_content_block_param.rbi (100%) rename rbi/{lib => }/openai/models/beta/threads/text_delta.rbi (100%) rename rbi/{lib => }/openai/models/beta/threads/text_delta_block.rbi (100%) rename rbi/{lib => }/openai/models/chat/chat_completion.rbi (100%) rename rbi/{lib => }/openai/models/chat/chat_completion_assistant_message_param.rbi (100%) rename rbi/{lib => }/openai/models/chat/chat_completion_audio.rbi (100%) rename rbi/{lib => }/openai/models/chat/chat_completion_audio_param.rbi (100%) rename rbi/{lib => }/openai/models/chat/chat_completion_chunk.rbi (100%) rename rbi/{lib => }/openai/models/chat/chat_completion_content_part.rbi (100%) rename rbi/{lib => }/openai/models/chat/chat_completion_content_part_image.rbi (100%) rename rbi/{lib => }/openai/models/chat/chat_completion_content_part_input_audio.rbi (100%) rename rbi/{lib => }/openai/models/chat/chat_completion_content_part_refusal.rbi (100%) rename rbi/{lib => }/openai/models/chat/chat_completion_content_part_text.rbi (100%) rename rbi/{lib => }/openai/models/chat/chat_completion_deleted.rbi (100%) rename rbi/{lib => }/openai/models/chat/chat_completion_developer_message_param.rbi (100%) rename rbi/{lib => }/openai/models/chat/chat_completion_function_call_option.rbi (100%) rename rbi/{lib => }/openai/models/chat/chat_completion_function_message_param.rbi (100%) rename rbi/{lib => }/openai/models/chat/chat_completion_message.rbi (100%) rename rbi/{lib => }/openai/models/chat/chat_completion_message_param.rbi (100%) rename rbi/{lib => }/openai/models/chat/chat_completion_message_tool_call.rbi (100%) rename rbi/{lib => }/openai/models/chat/chat_completion_modality.rbi (100%) rename rbi/{lib => }/openai/models/chat/chat_completion_named_tool_choice.rbi (100%) rename rbi/{lib => }/openai/models/chat/chat_completion_prediction_content.rbi (100%) rename rbi/{lib => }/openai/models/chat/chat_completion_reasoning_effort.rbi (100%) rename rbi/{lib => }/openai/models/chat/chat_completion_role.rbi (100%) rename rbi/{lib => }/openai/models/chat/chat_completion_store_message.rbi (100%) rename rbi/{lib => }/openai/models/chat/chat_completion_stream_options.rbi (100%) rename rbi/{lib => }/openai/models/chat/chat_completion_system_message_param.rbi (100%) rename rbi/{lib => }/openai/models/chat/chat_completion_token_logprob.rbi (100%) rename rbi/{lib => }/openai/models/chat/chat_completion_tool.rbi (100%) rename rbi/{lib => }/openai/models/chat/chat_completion_tool_choice_option.rbi (100%) rename rbi/{lib => }/openai/models/chat/chat_completion_tool_message_param.rbi (100%) rename rbi/{lib => }/openai/models/chat/chat_completion_user_message_param.rbi (100%) rename rbi/{lib => }/openai/models/chat/completion_create_params.rbi (100%) rename rbi/{lib => }/openai/models/chat/completion_delete_params.rbi (100%) rename rbi/{lib => }/openai/models/chat/completion_list_params.rbi (100%) rename rbi/{lib => }/openai/models/chat/completion_retrieve_params.rbi (100%) rename rbi/{lib => }/openai/models/chat/completion_update_params.rbi (100%) rename rbi/{lib => }/openai/models/chat/completions/message_list_params.rbi (100%) rename rbi/{lib => }/openai/models/chat_model.rbi (100%) rename rbi/{lib => }/openai/models/comparison_filter.rbi (100%) rename rbi/{lib => }/openai/models/completion.rbi (100%) rename rbi/{lib => }/openai/models/completion_choice.rbi (100%) rename rbi/{lib => }/openai/models/completion_create_params.rbi (100%) rename rbi/{lib => }/openai/models/completion_usage.rbi (100%) rename rbi/{lib => }/openai/models/compound_filter.rbi (100%) rename rbi/{lib => }/openai/models/create_embedding_response.rbi (100%) rename rbi/{lib => }/openai/models/embedding.rbi (100%) rename rbi/{lib => }/openai/models/embedding_create_params.rbi (100%) rename rbi/{lib => }/openai/models/embedding_model.rbi (100%) rename rbi/{lib => }/openai/models/error_object.rbi (100%) rename rbi/{lib => }/openai/models/eval_create_params.rbi (100%) rename rbi/{lib => }/openai/models/eval_create_response.rbi (100%) rename rbi/{lib => }/openai/models/eval_custom_data_source_config.rbi (100%) rename rbi/{lib => }/openai/models/eval_delete_params.rbi (100%) rename rbi/{lib => }/openai/models/eval_delete_response.rbi (100%) rename rbi/{lib => }/openai/models/eval_label_model_grader.rbi (100%) rename rbi/{lib => }/openai/models/eval_list_params.rbi (100%) rename rbi/{lib => }/openai/models/eval_list_response.rbi (100%) rename rbi/{lib => }/openai/models/eval_retrieve_params.rbi (100%) rename rbi/{lib => }/openai/models/eval_retrieve_response.rbi (100%) rename rbi/{lib => }/openai/models/eval_stored_completions_data_source_config.rbi (100%) rename rbi/{lib => }/openai/models/eval_string_check_grader.rbi (100%) rename rbi/{lib => }/openai/models/eval_text_similarity_grader.rbi (100%) rename rbi/{lib => }/openai/models/eval_update_params.rbi (100%) rename rbi/{lib => }/openai/models/eval_update_response.rbi (100%) rename rbi/{lib => }/openai/models/evals/create_eval_completions_run_data_source.rbi (100%) rename rbi/{lib => }/openai/models/evals/create_eval_jsonl_run_data_source.rbi (100%) rename rbi/{lib => }/openai/models/evals/eval_api_error.rbi (100%) rename rbi/{lib => }/openai/models/evals/run_cancel_params.rbi (100%) rename rbi/{lib => }/openai/models/evals/run_cancel_response.rbi (100%) rename rbi/{lib => }/openai/models/evals/run_create_params.rbi (100%) rename rbi/{lib => }/openai/models/evals/run_create_response.rbi (100%) rename rbi/{lib => }/openai/models/evals/run_delete_params.rbi (100%) rename rbi/{lib => }/openai/models/evals/run_delete_response.rbi (100%) rename rbi/{lib => }/openai/models/evals/run_list_params.rbi (100%) rename rbi/{lib => }/openai/models/evals/run_list_response.rbi (100%) rename rbi/{lib => }/openai/models/evals/run_retrieve_params.rbi (100%) rename rbi/{lib => }/openai/models/evals/run_retrieve_response.rbi (100%) rename rbi/{lib => }/openai/models/evals/runs/output_item_list_params.rbi (100%) rename rbi/{lib => }/openai/models/evals/runs/output_item_list_response.rbi (100%) rename rbi/{lib => }/openai/models/evals/runs/output_item_retrieve_params.rbi (100%) rename rbi/{lib => }/openai/models/evals/runs/output_item_retrieve_response.rbi (100%) rename rbi/{lib => }/openai/models/file_chunking_strategy.rbi (100%) rename rbi/{lib => }/openai/models/file_chunking_strategy_param.rbi (100%) rename rbi/{lib => }/openai/models/file_content_params.rbi (100%) rename rbi/{lib => }/openai/models/file_create_params.rbi (100%) rename rbi/{lib => }/openai/models/file_delete_params.rbi (100%) rename rbi/{lib => }/openai/models/file_deleted.rbi (100%) rename rbi/{lib => }/openai/models/file_list_params.rbi (100%) rename rbi/{lib => }/openai/models/file_object.rbi (100%) rename rbi/{lib => }/openai/models/file_purpose.rbi (100%) rename rbi/{lib => }/openai/models/file_retrieve_params.rbi (100%) rename rbi/{lib => }/openai/models/fine_tuning/checkpoints/permission_create_params.rbi (100%) rename rbi/{lib => }/openai/models/fine_tuning/checkpoints/permission_create_response.rbi (100%) rename rbi/{lib => }/openai/models/fine_tuning/checkpoints/permission_delete_params.rbi (100%) rename rbi/{lib => }/openai/models/fine_tuning/checkpoints/permission_delete_response.rbi (100%) rename rbi/{lib => }/openai/models/fine_tuning/checkpoints/permission_retrieve_params.rbi (100%) rename rbi/{lib => }/openai/models/fine_tuning/checkpoints/permission_retrieve_response.rbi (100%) rename rbi/{lib => }/openai/models/fine_tuning/fine_tuning_job.rbi (100%) rename rbi/{lib => }/openai/models/fine_tuning/fine_tuning_job_event.rbi (100%) rename rbi/{lib => }/openai/models/fine_tuning/fine_tuning_job_integration.rbi (100%) rename rbi/{lib => }/openai/models/fine_tuning/fine_tuning_job_wandb_integration.rbi (100%) rename rbi/{lib => }/openai/models/fine_tuning/fine_tuning_job_wandb_integration_object.rbi (100%) rename rbi/{lib => }/openai/models/fine_tuning/job_cancel_params.rbi (100%) rename rbi/{lib => }/openai/models/fine_tuning/job_create_params.rbi (100%) rename rbi/{lib => }/openai/models/fine_tuning/job_list_events_params.rbi (100%) rename rbi/{lib => }/openai/models/fine_tuning/job_list_params.rbi (100%) rename rbi/{lib => }/openai/models/fine_tuning/job_retrieve_params.rbi (100%) rename rbi/{lib => }/openai/models/fine_tuning/jobs/checkpoint_list_params.rbi (100%) rename rbi/{lib => }/openai/models/fine_tuning/jobs/fine_tuning_job_checkpoint.rbi (100%) rename rbi/{lib => }/openai/models/function_definition.rbi (100%) rename rbi/{lib => }/openai/models/function_parameters.rbi (100%) rename rbi/{lib => }/openai/models/image.rbi (100%) rename rbi/{lib => }/openai/models/image_create_variation_params.rbi (100%) rename rbi/{lib => }/openai/models/image_edit_params.rbi (100%) rename rbi/{lib => }/openai/models/image_generate_params.rbi (100%) rename rbi/{lib => }/openai/models/image_model.rbi (100%) rename rbi/{lib => }/openai/models/images_response.rbi (100%) rename rbi/{lib => }/openai/models/metadata.rbi (100%) rename rbi/{lib => }/openai/models/model.rbi (100%) rename rbi/{lib => }/openai/models/model_delete_params.rbi (100%) rename rbi/{lib => }/openai/models/model_deleted.rbi (100%) rename rbi/{lib => }/openai/models/model_list_params.rbi (100%) rename rbi/{lib => }/openai/models/model_retrieve_params.rbi (100%) rename rbi/{lib => }/openai/models/moderation.rbi (100%) rename rbi/{lib => }/openai/models/moderation_create_params.rbi (100%) rename rbi/{lib => }/openai/models/moderation_create_response.rbi (100%) rename rbi/{lib => }/openai/models/moderation_image_url_input.rbi (100%) rename rbi/{lib => }/openai/models/moderation_model.rbi (100%) rename rbi/{lib => }/openai/models/moderation_multi_modal_input.rbi (100%) rename rbi/{lib => }/openai/models/moderation_text_input.rbi (100%) rename rbi/{lib => }/openai/models/other_file_chunking_strategy_object.rbi (100%) rename rbi/{lib => }/openai/models/reasoning.rbi (100%) rename rbi/{lib => }/openai/models/reasoning_effort.rbi (100%) rename rbi/{lib => }/openai/models/response_format_json_object.rbi (100%) rename rbi/{lib => }/openai/models/response_format_json_schema.rbi (100%) rename rbi/{lib => }/openai/models/response_format_text.rbi (100%) rename rbi/{lib => }/openai/models/responses/computer_tool.rbi (100%) rename rbi/{lib => }/openai/models/responses/easy_input_message.rbi (100%) rename rbi/{lib => }/openai/models/responses/file_search_tool.rbi (100%) rename rbi/{lib => }/openai/models/responses/function_tool.rbi (100%) rename rbi/{lib => }/openai/models/responses/input_item_list_params.rbi (100%) rename rbi/{lib => }/openai/models/responses/response.rbi (100%) rename rbi/{lib => }/openai/models/responses/response_audio_delta_event.rbi (100%) rename rbi/{lib => }/openai/models/responses/response_audio_done_event.rbi (100%) rename rbi/{lib => }/openai/models/responses/response_audio_transcript_delta_event.rbi (100%) rename rbi/{lib => }/openai/models/responses/response_audio_transcript_done_event.rbi (100%) rename rbi/{lib => }/openai/models/responses/response_code_interpreter_call_code_delta_event.rbi (100%) rename rbi/{lib => }/openai/models/responses/response_code_interpreter_call_code_done_event.rbi (100%) rename rbi/{lib => }/openai/models/responses/response_code_interpreter_call_completed_event.rbi (100%) rename rbi/{lib => }/openai/models/responses/response_code_interpreter_call_in_progress_event.rbi (100%) rename rbi/{lib => }/openai/models/responses/response_code_interpreter_call_interpreting_event.rbi (100%) rename rbi/{lib => }/openai/models/responses/response_code_interpreter_tool_call.rbi (100%) rename rbi/{lib => }/openai/models/responses/response_completed_event.rbi (100%) rename rbi/{lib => }/openai/models/responses/response_computer_tool_call.rbi (100%) rename rbi/{lib => }/openai/models/responses/response_computer_tool_call_output_item.rbi (100%) rename rbi/{lib => }/openai/models/responses/response_computer_tool_call_output_screenshot.rbi (100%) rename rbi/{lib => }/openai/models/responses/response_content.rbi (100%) rename rbi/{lib => }/openai/models/responses/response_content_part_added_event.rbi (100%) rename rbi/{lib => }/openai/models/responses/response_content_part_done_event.rbi (100%) rename rbi/{lib => }/openai/models/responses/response_create_params.rbi (100%) rename rbi/{lib => }/openai/models/responses/response_created_event.rbi (100%) rename rbi/{lib => }/openai/models/responses/response_delete_params.rbi (100%) rename rbi/{lib => }/openai/models/responses/response_error.rbi (100%) rename rbi/{lib => }/openai/models/responses/response_error_event.rbi (100%) rename rbi/{lib => }/openai/models/responses/response_failed_event.rbi (100%) rename rbi/{lib => }/openai/models/responses/response_file_search_call_completed_event.rbi (100%) rename rbi/{lib => }/openai/models/responses/response_file_search_call_in_progress_event.rbi (100%) rename rbi/{lib => }/openai/models/responses/response_file_search_call_searching_event.rbi (100%) rename rbi/{lib => }/openai/models/responses/response_file_search_tool_call.rbi (100%) rename rbi/{lib => }/openai/models/responses/response_format_text_config.rbi (100%) rename rbi/{lib => }/openai/models/responses/response_format_text_json_schema_config.rbi (100%) rename rbi/{lib => }/openai/models/responses/response_function_call_arguments_delta_event.rbi (100%) rename rbi/{lib => }/openai/models/responses/response_function_call_arguments_done_event.rbi (100%) rename rbi/{lib => }/openai/models/responses/response_function_tool_call.rbi (100%) rename rbi/{lib => }/openai/models/responses/response_function_tool_call_item.rbi (100%) rename rbi/{lib => }/openai/models/responses/response_function_tool_call_output_item.rbi (100%) rename rbi/{lib => }/openai/models/responses/response_function_web_search.rbi (100%) rename rbi/{lib => }/openai/models/responses/response_in_progress_event.rbi (100%) rename rbi/{lib => }/openai/models/responses/response_includable.rbi (100%) rename rbi/{lib => }/openai/models/responses/response_incomplete_event.rbi (100%) rename rbi/{lib => }/openai/models/responses/response_input.rbi (100%) rename rbi/{lib => }/openai/models/responses/response_input_audio.rbi (100%) rename rbi/{lib => }/openai/models/responses/response_input_content.rbi (100%) rename rbi/{lib => }/openai/models/responses/response_input_file.rbi (100%) rename rbi/{lib => }/openai/models/responses/response_input_image.rbi (100%) rename rbi/{lib => }/openai/models/responses/response_input_item.rbi (100%) rename rbi/{lib => }/openai/models/responses/response_input_message_content_list.rbi (100%) rename rbi/{lib => }/openai/models/responses/response_input_message_item.rbi (100%) rename rbi/{lib => }/openai/models/responses/response_input_text.rbi (100%) rename rbi/{lib => }/openai/models/responses/response_item.rbi (100%) rename rbi/{lib => }/openai/models/responses/response_item_list.rbi (100%) rename rbi/{lib => }/openai/models/responses/response_output_audio.rbi (100%) rename rbi/{lib => }/openai/models/responses/response_output_item.rbi (100%) rename rbi/{lib => }/openai/models/responses/response_output_item_added_event.rbi (100%) rename rbi/{lib => }/openai/models/responses/response_output_item_done_event.rbi (100%) rename rbi/{lib => }/openai/models/responses/response_output_message.rbi (100%) rename rbi/{lib => }/openai/models/responses/response_output_refusal.rbi (100%) rename rbi/{lib => }/openai/models/responses/response_output_text.rbi (100%) rename rbi/{lib => }/openai/models/responses/response_reasoning_item.rbi (100%) rename rbi/{lib => }/openai/models/responses/response_reasoning_summary_part_added_event.rbi (100%) rename rbi/{lib => }/openai/models/responses/response_reasoning_summary_part_done_event.rbi (100%) rename rbi/{lib => }/openai/models/responses/response_reasoning_summary_text_delta_event.rbi (100%) rename rbi/{lib => }/openai/models/responses/response_reasoning_summary_text_done_event.rbi (100%) rename rbi/{lib => }/openai/models/responses/response_refusal_delta_event.rbi (100%) rename rbi/{lib => }/openai/models/responses/response_refusal_done_event.rbi (100%) rename rbi/{lib => }/openai/models/responses/response_retrieve_params.rbi (100%) rename rbi/{lib => }/openai/models/responses/response_status.rbi (100%) rename rbi/{lib => }/openai/models/responses/response_stream_event.rbi (100%) rename rbi/{lib => }/openai/models/responses/response_text_annotation_delta_event.rbi (100%) rename rbi/{lib => }/openai/models/responses/response_text_config.rbi (100%) rename rbi/{lib => }/openai/models/responses/response_text_delta_event.rbi (100%) rename rbi/{lib => }/openai/models/responses/response_text_done_event.rbi (100%) rename rbi/{lib => }/openai/models/responses/response_usage.rbi (100%) rename rbi/{lib => }/openai/models/responses/response_web_search_call_completed_event.rbi (100%) rename rbi/{lib => }/openai/models/responses/response_web_search_call_in_progress_event.rbi (100%) rename rbi/{lib => }/openai/models/responses/response_web_search_call_searching_event.rbi (100%) rename rbi/{lib => }/openai/models/responses/tool.rbi (100%) rename rbi/{lib => }/openai/models/responses/tool_choice_function.rbi (100%) rename rbi/{lib => }/openai/models/responses/tool_choice_options.rbi (100%) rename rbi/{lib => }/openai/models/responses/tool_choice_types.rbi (100%) rename rbi/{lib => }/openai/models/responses/web_search_tool.rbi (100%) rename rbi/{lib => }/openai/models/responses_model.rbi (100%) rename rbi/{lib => }/openai/models/static_file_chunking_strategy.rbi (100%) rename rbi/{lib => }/openai/models/static_file_chunking_strategy_object.rbi (100%) rename rbi/{lib => }/openai/models/static_file_chunking_strategy_object_param.rbi (100%) rename rbi/{lib => }/openai/models/upload.rbi (100%) rename rbi/{lib => }/openai/models/upload_cancel_params.rbi (100%) rename rbi/{lib => }/openai/models/upload_complete_params.rbi (100%) rename rbi/{lib => }/openai/models/upload_create_params.rbi (100%) rename rbi/{lib => }/openai/models/uploads/part_create_params.rbi (100%) rename rbi/{lib => }/openai/models/uploads/upload_part.rbi (100%) rename rbi/{lib => }/openai/models/vector_store.rbi (100%) rename rbi/{lib => }/openai/models/vector_store_create_params.rbi (100%) rename rbi/{lib => }/openai/models/vector_store_delete_params.rbi (100%) rename rbi/{lib => }/openai/models/vector_store_deleted.rbi (100%) rename rbi/{lib => }/openai/models/vector_store_list_params.rbi (100%) rename rbi/{lib => }/openai/models/vector_store_retrieve_params.rbi (100%) rename rbi/{lib => }/openai/models/vector_store_search_params.rbi (100%) rename rbi/{lib => }/openai/models/vector_store_search_response.rbi (100%) rename rbi/{lib => }/openai/models/vector_store_update_params.rbi (100%) rename rbi/{lib => }/openai/models/vector_stores/file_batch_cancel_params.rbi (100%) rename rbi/{lib => }/openai/models/vector_stores/file_batch_create_params.rbi (100%) rename rbi/{lib => }/openai/models/vector_stores/file_batch_list_files_params.rbi (100%) rename rbi/{lib => }/openai/models/vector_stores/file_batch_retrieve_params.rbi (100%) rename rbi/{lib => }/openai/models/vector_stores/file_content_params.rbi (100%) rename rbi/{lib => }/openai/models/vector_stores/file_content_response.rbi (100%) rename rbi/{lib => }/openai/models/vector_stores/file_create_params.rbi (100%) rename rbi/{lib => }/openai/models/vector_stores/file_delete_params.rbi (100%) rename rbi/{lib => }/openai/models/vector_stores/file_list_params.rbi (100%) rename rbi/{lib => }/openai/models/vector_stores/file_retrieve_params.rbi (100%) rename rbi/{lib => }/openai/models/vector_stores/file_update_params.rbi (100%) rename rbi/{lib => }/openai/models/vector_stores/vector_store_file.rbi (100%) rename rbi/{lib => }/openai/models/vector_stores/vector_store_file_batch.rbi (100%) rename rbi/{lib => }/openai/models/vector_stores/vector_store_file_deleted.rbi (100%) rename rbi/{lib => }/openai/request_options.rbi (100%) rename rbi/{lib => }/openai/resources/audio.rbi (100%) rename rbi/{lib => }/openai/resources/audio/speech.rbi (100%) rename rbi/{lib => }/openai/resources/audio/transcriptions.rbi (100%) rename rbi/{lib => }/openai/resources/audio/translations.rbi (100%) rename rbi/{lib => }/openai/resources/batches.rbi (100%) rename rbi/{lib => }/openai/resources/beta.rbi (100%) rename rbi/{lib => }/openai/resources/beta/assistants.rbi (100%) rename rbi/{lib => }/openai/resources/beta/threads.rbi (100%) rename rbi/{lib => }/openai/resources/beta/threads/messages.rbi (100%) rename rbi/{lib => }/openai/resources/beta/threads/runs.rbi (100%) rename rbi/{lib => }/openai/resources/beta/threads/runs/steps.rbi (100%) rename rbi/{lib => }/openai/resources/chat.rbi (100%) rename rbi/{lib => }/openai/resources/chat/completions.rbi (100%) rename rbi/{lib => }/openai/resources/chat/completions/messages.rbi (100%) rename rbi/{lib => }/openai/resources/completions.rbi (100%) rename rbi/{lib => }/openai/resources/embeddings.rbi (100%) rename rbi/{lib => }/openai/resources/evals.rbi (100%) rename rbi/{lib => }/openai/resources/evals/runs.rbi (100%) rename rbi/{lib => }/openai/resources/evals/runs/output_items.rbi (100%) rename rbi/{lib => }/openai/resources/files.rbi (100%) rename rbi/{lib => }/openai/resources/fine_tuning.rbi (100%) rename rbi/{lib => }/openai/resources/fine_tuning/checkpoints.rbi (100%) rename rbi/{lib => }/openai/resources/fine_tuning/checkpoints/permissions.rbi (100%) rename rbi/{lib => }/openai/resources/fine_tuning/jobs.rbi (100%) rename rbi/{lib => }/openai/resources/fine_tuning/jobs/checkpoints.rbi (100%) rename rbi/{lib => }/openai/resources/images.rbi (100%) rename rbi/{lib => }/openai/resources/models.rbi (100%) rename rbi/{lib => }/openai/resources/moderations.rbi (100%) rename rbi/{lib => }/openai/resources/responses.rbi (100%) rename rbi/{lib => }/openai/resources/responses/input_items.rbi (100%) rename rbi/{lib => }/openai/resources/uploads.rbi (100%) rename rbi/{lib => }/openai/resources/uploads/parts.rbi (100%) rename rbi/{lib => }/openai/resources/vector_stores.rbi (100%) rename rbi/{lib => }/openai/resources/vector_stores/file_batches.rbi (100%) rename rbi/{lib => }/openai/resources/vector_stores/files.rbi (100%) rename rbi/{lib => }/openai/version.rbi (100%) diff --git a/rbi/lib/openai/client.rbi b/rbi/openai/client.rbi similarity index 100% rename from rbi/lib/openai/client.rbi rename to rbi/openai/client.rbi diff --git a/rbi/lib/openai/errors.rbi b/rbi/openai/errors.rbi similarity index 100% rename from rbi/lib/openai/errors.rbi rename to rbi/openai/errors.rbi diff --git a/rbi/lib/openai/file_part.rbi b/rbi/openai/file_part.rbi similarity index 100% rename from rbi/lib/openai/file_part.rbi rename to rbi/openai/file_part.rbi diff --git a/rbi/lib/openai/internal.rbi b/rbi/openai/internal.rbi similarity index 100% rename from rbi/lib/openai/internal.rbi rename to rbi/openai/internal.rbi diff --git a/rbi/lib/openai/internal/cursor_page.rbi b/rbi/openai/internal/cursor_page.rbi similarity index 100% rename from rbi/lib/openai/internal/cursor_page.rbi rename to rbi/openai/internal/cursor_page.rbi diff --git a/rbi/lib/openai/internal/page.rbi b/rbi/openai/internal/page.rbi similarity index 100% rename from rbi/lib/openai/internal/page.rbi rename to rbi/openai/internal/page.rbi diff --git a/rbi/lib/openai/internal/stream.rbi b/rbi/openai/internal/stream.rbi similarity index 100% rename from rbi/lib/openai/internal/stream.rbi rename to rbi/openai/internal/stream.rbi diff --git a/rbi/lib/openai/internal/transport/base_client.rbi b/rbi/openai/internal/transport/base_client.rbi similarity index 100% rename from rbi/lib/openai/internal/transport/base_client.rbi rename to rbi/openai/internal/transport/base_client.rbi diff --git a/rbi/lib/openai/internal/transport/pooled_net_requester.rbi b/rbi/openai/internal/transport/pooled_net_requester.rbi similarity index 100% rename from rbi/lib/openai/internal/transport/pooled_net_requester.rbi rename to rbi/openai/internal/transport/pooled_net_requester.rbi diff --git a/rbi/lib/openai/internal/type/array_of.rbi b/rbi/openai/internal/type/array_of.rbi similarity index 100% rename from rbi/lib/openai/internal/type/array_of.rbi rename to rbi/openai/internal/type/array_of.rbi diff --git a/rbi/lib/openai/internal/type/base_model.rbi b/rbi/openai/internal/type/base_model.rbi similarity index 100% rename from rbi/lib/openai/internal/type/base_model.rbi rename to rbi/openai/internal/type/base_model.rbi diff --git a/rbi/lib/openai/internal/type/base_page.rbi b/rbi/openai/internal/type/base_page.rbi similarity index 100% rename from rbi/lib/openai/internal/type/base_page.rbi rename to rbi/openai/internal/type/base_page.rbi diff --git a/rbi/lib/openai/internal/type/base_stream.rbi b/rbi/openai/internal/type/base_stream.rbi similarity index 100% rename from rbi/lib/openai/internal/type/base_stream.rbi rename to rbi/openai/internal/type/base_stream.rbi diff --git a/rbi/lib/openai/internal/type/boolean.rbi b/rbi/openai/internal/type/boolean.rbi similarity index 100% rename from rbi/lib/openai/internal/type/boolean.rbi rename to rbi/openai/internal/type/boolean.rbi diff --git a/rbi/lib/openai/internal/type/converter.rbi b/rbi/openai/internal/type/converter.rbi similarity index 100% rename from rbi/lib/openai/internal/type/converter.rbi rename to rbi/openai/internal/type/converter.rbi diff --git a/rbi/lib/openai/internal/type/enum.rbi b/rbi/openai/internal/type/enum.rbi similarity index 100% rename from rbi/lib/openai/internal/type/enum.rbi rename to rbi/openai/internal/type/enum.rbi diff --git a/rbi/lib/openai/internal/type/file_input.rbi b/rbi/openai/internal/type/file_input.rbi similarity index 100% rename from rbi/lib/openai/internal/type/file_input.rbi rename to rbi/openai/internal/type/file_input.rbi diff --git a/rbi/lib/openai/internal/type/hash_of.rbi b/rbi/openai/internal/type/hash_of.rbi similarity index 100% rename from rbi/lib/openai/internal/type/hash_of.rbi rename to rbi/openai/internal/type/hash_of.rbi diff --git a/rbi/lib/openai/internal/type/request_parameters.rbi b/rbi/openai/internal/type/request_parameters.rbi similarity index 100% rename from rbi/lib/openai/internal/type/request_parameters.rbi rename to rbi/openai/internal/type/request_parameters.rbi diff --git a/rbi/lib/openai/internal/type/union.rbi b/rbi/openai/internal/type/union.rbi similarity index 100% rename from rbi/lib/openai/internal/type/union.rbi rename to rbi/openai/internal/type/union.rbi diff --git a/rbi/lib/openai/internal/type/unknown.rbi b/rbi/openai/internal/type/unknown.rbi similarity index 100% rename from rbi/lib/openai/internal/type/unknown.rbi rename to rbi/openai/internal/type/unknown.rbi diff --git a/rbi/lib/openai/internal/util.rbi b/rbi/openai/internal/util.rbi similarity index 100% rename from rbi/lib/openai/internal/util.rbi rename to rbi/openai/internal/util.rbi diff --git a/rbi/lib/openai/models/all_models.rbi b/rbi/openai/models/all_models.rbi similarity index 100% rename from rbi/lib/openai/models/all_models.rbi rename to rbi/openai/models/all_models.rbi diff --git a/rbi/lib/openai/models/audio/speech_create_params.rbi b/rbi/openai/models/audio/speech_create_params.rbi similarity index 100% rename from rbi/lib/openai/models/audio/speech_create_params.rbi rename to rbi/openai/models/audio/speech_create_params.rbi diff --git a/rbi/lib/openai/models/audio/speech_model.rbi b/rbi/openai/models/audio/speech_model.rbi similarity index 100% rename from rbi/lib/openai/models/audio/speech_model.rbi rename to rbi/openai/models/audio/speech_model.rbi diff --git a/rbi/lib/openai/models/audio/transcription.rbi b/rbi/openai/models/audio/transcription.rbi similarity index 100% rename from rbi/lib/openai/models/audio/transcription.rbi rename to rbi/openai/models/audio/transcription.rbi diff --git a/rbi/lib/openai/models/audio/transcription_create_params.rbi b/rbi/openai/models/audio/transcription_create_params.rbi similarity index 100% rename from rbi/lib/openai/models/audio/transcription_create_params.rbi rename to rbi/openai/models/audio/transcription_create_params.rbi diff --git a/rbi/lib/openai/models/audio/transcription_create_response.rbi b/rbi/openai/models/audio/transcription_create_response.rbi similarity index 100% rename from rbi/lib/openai/models/audio/transcription_create_response.rbi rename to rbi/openai/models/audio/transcription_create_response.rbi diff --git a/rbi/lib/openai/models/audio/transcription_include.rbi b/rbi/openai/models/audio/transcription_include.rbi similarity index 100% rename from rbi/lib/openai/models/audio/transcription_include.rbi rename to rbi/openai/models/audio/transcription_include.rbi diff --git a/rbi/lib/openai/models/audio/transcription_segment.rbi b/rbi/openai/models/audio/transcription_segment.rbi similarity index 100% rename from rbi/lib/openai/models/audio/transcription_segment.rbi rename to rbi/openai/models/audio/transcription_segment.rbi diff --git a/rbi/lib/openai/models/audio/transcription_stream_event.rbi b/rbi/openai/models/audio/transcription_stream_event.rbi similarity index 100% rename from rbi/lib/openai/models/audio/transcription_stream_event.rbi rename to rbi/openai/models/audio/transcription_stream_event.rbi diff --git a/rbi/lib/openai/models/audio/transcription_text_delta_event.rbi b/rbi/openai/models/audio/transcription_text_delta_event.rbi similarity index 100% rename from rbi/lib/openai/models/audio/transcription_text_delta_event.rbi rename to rbi/openai/models/audio/transcription_text_delta_event.rbi diff --git a/rbi/lib/openai/models/audio/transcription_text_done_event.rbi b/rbi/openai/models/audio/transcription_text_done_event.rbi similarity index 100% rename from rbi/lib/openai/models/audio/transcription_text_done_event.rbi rename to rbi/openai/models/audio/transcription_text_done_event.rbi diff --git a/rbi/lib/openai/models/audio/transcription_verbose.rbi b/rbi/openai/models/audio/transcription_verbose.rbi similarity index 100% rename from rbi/lib/openai/models/audio/transcription_verbose.rbi rename to rbi/openai/models/audio/transcription_verbose.rbi diff --git a/rbi/lib/openai/models/audio/transcription_word.rbi b/rbi/openai/models/audio/transcription_word.rbi similarity index 100% rename from rbi/lib/openai/models/audio/transcription_word.rbi rename to rbi/openai/models/audio/transcription_word.rbi diff --git a/rbi/lib/openai/models/audio/translation.rbi b/rbi/openai/models/audio/translation.rbi similarity index 100% rename from rbi/lib/openai/models/audio/translation.rbi rename to rbi/openai/models/audio/translation.rbi diff --git a/rbi/lib/openai/models/audio/translation_create_params.rbi b/rbi/openai/models/audio/translation_create_params.rbi similarity index 100% rename from rbi/lib/openai/models/audio/translation_create_params.rbi rename to rbi/openai/models/audio/translation_create_params.rbi diff --git a/rbi/lib/openai/models/audio/translation_create_response.rbi b/rbi/openai/models/audio/translation_create_response.rbi similarity index 100% rename from rbi/lib/openai/models/audio/translation_create_response.rbi rename to rbi/openai/models/audio/translation_create_response.rbi diff --git a/rbi/lib/openai/models/audio/translation_verbose.rbi b/rbi/openai/models/audio/translation_verbose.rbi similarity index 100% rename from rbi/lib/openai/models/audio/translation_verbose.rbi rename to rbi/openai/models/audio/translation_verbose.rbi diff --git a/rbi/lib/openai/models/audio_model.rbi b/rbi/openai/models/audio_model.rbi similarity index 100% rename from rbi/lib/openai/models/audio_model.rbi rename to rbi/openai/models/audio_model.rbi diff --git a/rbi/lib/openai/models/audio_response_format.rbi b/rbi/openai/models/audio_response_format.rbi similarity index 100% rename from rbi/lib/openai/models/audio_response_format.rbi rename to rbi/openai/models/audio_response_format.rbi diff --git a/rbi/lib/openai/models/auto_file_chunking_strategy_param.rbi b/rbi/openai/models/auto_file_chunking_strategy_param.rbi similarity index 100% rename from rbi/lib/openai/models/auto_file_chunking_strategy_param.rbi rename to rbi/openai/models/auto_file_chunking_strategy_param.rbi diff --git a/rbi/lib/openai/models/batch.rbi b/rbi/openai/models/batch.rbi similarity index 100% rename from rbi/lib/openai/models/batch.rbi rename to rbi/openai/models/batch.rbi diff --git a/rbi/lib/openai/models/batch_cancel_params.rbi b/rbi/openai/models/batch_cancel_params.rbi similarity index 100% rename from rbi/lib/openai/models/batch_cancel_params.rbi rename to rbi/openai/models/batch_cancel_params.rbi diff --git a/rbi/lib/openai/models/batch_create_params.rbi b/rbi/openai/models/batch_create_params.rbi similarity index 100% rename from rbi/lib/openai/models/batch_create_params.rbi rename to rbi/openai/models/batch_create_params.rbi diff --git a/rbi/lib/openai/models/batch_error.rbi b/rbi/openai/models/batch_error.rbi similarity index 100% rename from rbi/lib/openai/models/batch_error.rbi rename to rbi/openai/models/batch_error.rbi diff --git a/rbi/lib/openai/models/batch_list_params.rbi b/rbi/openai/models/batch_list_params.rbi similarity index 100% rename from rbi/lib/openai/models/batch_list_params.rbi rename to rbi/openai/models/batch_list_params.rbi diff --git a/rbi/lib/openai/models/batch_request_counts.rbi b/rbi/openai/models/batch_request_counts.rbi similarity index 100% rename from rbi/lib/openai/models/batch_request_counts.rbi rename to rbi/openai/models/batch_request_counts.rbi diff --git a/rbi/lib/openai/models/batch_retrieve_params.rbi b/rbi/openai/models/batch_retrieve_params.rbi similarity index 100% rename from rbi/lib/openai/models/batch_retrieve_params.rbi rename to rbi/openai/models/batch_retrieve_params.rbi diff --git a/rbi/lib/openai/models/beta/assistant.rbi b/rbi/openai/models/beta/assistant.rbi similarity index 100% rename from rbi/lib/openai/models/beta/assistant.rbi rename to rbi/openai/models/beta/assistant.rbi diff --git a/rbi/lib/openai/models/beta/assistant_create_params.rbi b/rbi/openai/models/beta/assistant_create_params.rbi similarity index 100% rename from rbi/lib/openai/models/beta/assistant_create_params.rbi rename to rbi/openai/models/beta/assistant_create_params.rbi diff --git a/rbi/lib/openai/models/beta/assistant_delete_params.rbi b/rbi/openai/models/beta/assistant_delete_params.rbi similarity index 100% rename from rbi/lib/openai/models/beta/assistant_delete_params.rbi rename to rbi/openai/models/beta/assistant_delete_params.rbi diff --git a/rbi/lib/openai/models/beta/assistant_deleted.rbi b/rbi/openai/models/beta/assistant_deleted.rbi similarity index 100% rename from rbi/lib/openai/models/beta/assistant_deleted.rbi rename to rbi/openai/models/beta/assistant_deleted.rbi diff --git a/rbi/lib/openai/models/beta/assistant_list_params.rbi b/rbi/openai/models/beta/assistant_list_params.rbi similarity index 100% rename from rbi/lib/openai/models/beta/assistant_list_params.rbi rename to rbi/openai/models/beta/assistant_list_params.rbi diff --git a/rbi/lib/openai/models/beta/assistant_response_format_option.rbi b/rbi/openai/models/beta/assistant_response_format_option.rbi similarity index 100% rename from rbi/lib/openai/models/beta/assistant_response_format_option.rbi rename to rbi/openai/models/beta/assistant_response_format_option.rbi diff --git a/rbi/lib/openai/models/beta/assistant_retrieve_params.rbi b/rbi/openai/models/beta/assistant_retrieve_params.rbi similarity index 100% rename from rbi/lib/openai/models/beta/assistant_retrieve_params.rbi rename to rbi/openai/models/beta/assistant_retrieve_params.rbi diff --git a/rbi/lib/openai/models/beta/assistant_stream_event.rbi b/rbi/openai/models/beta/assistant_stream_event.rbi similarity index 100% rename from rbi/lib/openai/models/beta/assistant_stream_event.rbi rename to rbi/openai/models/beta/assistant_stream_event.rbi diff --git a/rbi/lib/openai/models/beta/assistant_tool.rbi b/rbi/openai/models/beta/assistant_tool.rbi similarity index 100% rename from rbi/lib/openai/models/beta/assistant_tool.rbi rename to rbi/openai/models/beta/assistant_tool.rbi diff --git a/rbi/lib/openai/models/beta/assistant_tool_choice.rbi b/rbi/openai/models/beta/assistant_tool_choice.rbi similarity index 100% rename from rbi/lib/openai/models/beta/assistant_tool_choice.rbi rename to rbi/openai/models/beta/assistant_tool_choice.rbi diff --git a/rbi/lib/openai/models/beta/assistant_tool_choice_function.rbi b/rbi/openai/models/beta/assistant_tool_choice_function.rbi similarity index 100% rename from rbi/lib/openai/models/beta/assistant_tool_choice_function.rbi rename to rbi/openai/models/beta/assistant_tool_choice_function.rbi diff --git a/rbi/lib/openai/models/beta/assistant_tool_choice_option.rbi b/rbi/openai/models/beta/assistant_tool_choice_option.rbi similarity index 100% rename from rbi/lib/openai/models/beta/assistant_tool_choice_option.rbi rename to rbi/openai/models/beta/assistant_tool_choice_option.rbi diff --git a/rbi/lib/openai/models/beta/assistant_update_params.rbi b/rbi/openai/models/beta/assistant_update_params.rbi similarity index 100% rename from rbi/lib/openai/models/beta/assistant_update_params.rbi rename to rbi/openai/models/beta/assistant_update_params.rbi diff --git a/rbi/lib/openai/models/beta/code_interpreter_tool.rbi b/rbi/openai/models/beta/code_interpreter_tool.rbi similarity index 100% rename from rbi/lib/openai/models/beta/code_interpreter_tool.rbi rename to rbi/openai/models/beta/code_interpreter_tool.rbi diff --git a/rbi/lib/openai/models/beta/file_search_tool.rbi b/rbi/openai/models/beta/file_search_tool.rbi similarity index 100% rename from rbi/lib/openai/models/beta/file_search_tool.rbi rename to rbi/openai/models/beta/file_search_tool.rbi diff --git a/rbi/lib/openai/models/beta/function_tool.rbi b/rbi/openai/models/beta/function_tool.rbi similarity index 100% rename from rbi/lib/openai/models/beta/function_tool.rbi rename to rbi/openai/models/beta/function_tool.rbi diff --git a/rbi/lib/openai/models/beta/message_stream_event.rbi b/rbi/openai/models/beta/message_stream_event.rbi similarity index 100% rename from rbi/lib/openai/models/beta/message_stream_event.rbi rename to rbi/openai/models/beta/message_stream_event.rbi diff --git a/rbi/lib/openai/models/beta/run_step_stream_event.rbi b/rbi/openai/models/beta/run_step_stream_event.rbi similarity index 100% rename from rbi/lib/openai/models/beta/run_step_stream_event.rbi rename to rbi/openai/models/beta/run_step_stream_event.rbi diff --git a/rbi/lib/openai/models/beta/run_stream_event.rbi b/rbi/openai/models/beta/run_stream_event.rbi similarity index 100% rename from rbi/lib/openai/models/beta/run_stream_event.rbi rename to rbi/openai/models/beta/run_stream_event.rbi diff --git a/rbi/lib/openai/models/beta/thread.rbi b/rbi/openai/models/beta/thread.rbi similarity index 100% rename from rbi/lib/openai/models/beta/thread.rbi rename to rbi/openai/models/beta/thread.rbi diff --git a/rbi/lib/openai/models/beta/thread_create_and_run_params.rbi b/rbi/openai/models/beta/thread_create_and_run_params.rbi similarity index 100% rename from rbi/lib/openai/models/beta/thread_create_and_run_params.rbi rename to rbi/openai/models/beta/thread_create_and_run_params.rbi diff --git a/rbi/lib/openai/models/beta/thread_create_params.rbi b/rbi/openai/models/beta/thread_create_params.rbi similarity index 100% rename from rbi/lib/openai/models/beta/thread_create_params.rbi rename to rbi/openai/models/beta/thread_create_params.rbi diff --git a/rbi/lib/openai/models/beta/thread_delete_params.rbi b/rbi/openai/models/beta/thread_delete_params.rbi similarity index 100% rename from rbi/lib/openai/models/beta/thread_delete_params.rbi rename to rbi/openai/models/beta/thread_delete_params.rbi diff --git a/rbi/lib/openai/models/beta/thread_deleted.rbi b/rbi/openai/models/beta/thread_deleted.rbi similarity index 100% rename from rbi/lib/openai/models/beta/thread_deleted.rbi rename to rbi/openai/models/beta/thread_deleted.rbi diff --git a/rbi/lib/openai/models/beta/thread_retrieve_params.rbi b/rbi/openai/models/beta/thread_retrieve_params.rbi similarity index 100% rename from rbi/lib/openai/models/beta/thread_retrieve_params.rbi rename to rbi/openai/models/beta/thread_retrieve_params.rbi diff --git a/rbi/lib/openai/models/beta/thread_stream_event.rbi b/rbi/openai/models/beta/thread_stream_event.rbi similarity index 100% rename from rbi/lib/openai/models/beta/thread_stream_event.rbi rename to rbi/openai/models/beta/thread_stream_event.rbi diff --git a/rbi/lib/openai/models/beta/thread_update_params.rbi b/rbi/openai/models/beta/thread_update_params.rbi similarity index 100% rename from rbi/lib/openai/models/beta/thread_update_params.rbi rename to rbi/openai/models/beta/thread_update_params.rbi diff --git a/rbi/lib/openai/models/beta/threads/annotation.rbi b/rbi/openai/models/beta/threads/annotation.rbi similarity index 100% rename from rbi/lib/openai/models/beta/threads/annotation.rbi rename to rbi/openai/models/beta/threads/annotation.rbi diff --git a/rbi/lib/openai/models/beta/threads/annotation_delta.rbi b/rbi/openai/models/beta/threads/annotation_delta.rbi similarity index 100% rename from rbi/lib/openai/models/beta/threads/annotation_delta.rbi rename to rbi/openai/models/beta/threads/annotation_delta.rbi diff --git a/rbi/lib/openai/models/beta/threads/file_citation_annotation.rbi b/rbi/openai/models/beta/threads/file_citation_annotation.rbi similarity index 100% rename from rbi/lib/openai/models/beta/threads/file_citation_annotation.rbi rename to rbi/openai/models/beta/threads/file_citation_annotation.rbi diff --git a/rbi/lib/openai/models/beta/threads/file_citation_delta_annotation.rbi b/rbi/openai/models/beta/threads/file_citation_delta_annotation.rbi similarity index 100% rename from rbi/lib/openai/models/beta/threads/file_citation_delta_annotation.rbi rename to rbi/openai/models/beta/threads/file_citation_delta_annotation.rbi diff --git a/rbi/lib/openai/models/beta/threads/file_path_annotation.rbi b/rbi/openai/models/beta/threads/file_path_annotation.rbi similarity index 100% rename from rbi/lib/openai/models/beta/threads/file_path_annotation.rbi rename to rbi/openai/models/beta/threads/file_path_annotation.rbi diff --git a/rbi/lib/openai/models/beta/threads/file_path_delta_annotation.rbi b/rbi/openai/models/beta/threads/file_path_delta_annotation.rbi similarity index 100% rename from rbi/lib/openai/models/beta/threads/file_path_delta_annotation.rbi rename to rbi/openai/models/beta/threads/file_path_delta_annotation.rbi diff --git a/rbi/lib/openai/models/beta/threads/image_file.rbi b/rbi/openai/models/beta/threads/image_file.rbi similarity index 100% rename from rbi/lib/openai/models/beta/threads/image_file.rbi rename to rbi/openai/models/beta/threads/image_file.rbi diff --git a/rbi/lib/openai/models/beta/threads/image_file_content_block.rbi b/rbi/openai/models/beta/threads/image_file_content_block.rbi similarity index 100% rename from rbi/lib/openai/models/beta/threads/image_file_content_block.rbi rename to rbi/openai/models/beta/threads/image_file_content_block.rbi diff --git a/rbi/lib/openai/models/beta/threads/image_file_delta.rbi b/rbi/openai/models/beta/threads/image_file_delta.rbi similarity index 100% rename from rbi/lib/openai/models/beta/threads/image_file_delta.rbi rename to rbi/openai/models/beta/threads/image_file_delta.rbi diff --git a/rbi/lib/openai/models/beta/threads/image_file_delta_block.rbi b/rbi/openai/models/beta/threads/image_file_delta_block.rbi similarity index 100% rename from rbi/lib/openai/models/beta/threads/image_file_delta_block.rbi rename to rbi/openai/models/beta/threads/image_file_delta_block.rbi diff --git a/rbi/lib/openai/models/beta/threads/image_url.rbi b/rbi/openai/models/beta/threads/image_url.rbi similarity index 100% rename from rbi/lib/openai/models/beta/threads/image_url.rbi rename to rbi/openai/models/beta/threads/image_url.rbi diff --git a/rbi/lib/openai/models/beta/threads/image_url_content_block.rbi b/rbi/openai/models/beta/threads/image_url_content_block.rbi similarity index 100% rename from rbi/lib/openai/models/beta/threads/image_url_content_block.rbi rename to rbi/openai/models/beta/threads/image_url_content_block.rbi diff --git a/rbi/lib/openai/models/beta/threads/image_url_delta.rbi b/rbi/openai/models/beta/threads/image_url_delta.rbi similarity index 100% rename from rbi/lib/openai/models/beta/threads/image_url_delta.rbi rename to rbi/openai/models/beta/threads/image_url_delta.rbi diff --git a/rbi/lib/openai/models/beta/threads/image_url_delta_block.rbi b/rbi/openai/models/beta/threads/image_url_delta_block.rbi similarity index 100% rename from rbi/lib/openai/models/beta/threads/image_url_delta_block.rbi rename to rbi/openai/models/beta/threads/image_url_delta_block.rbi diff --git a/rbi/lib/openai/models/beta/threads/message.rbi b/rbi/openai/models/beta/threads/message.rbi similarity index 100% rename from rbi/lib/openai/models/beta/threads/message.rbi rename to rbi/openai/models/beta/threads/message.rbi diff --git a/rbi/lib/openai/models/beta/threads/message_content.rbi b/rbi/openai/models/beta/threads/message_content.rbi similarity index 100% rename from rbi/lib/openai/models/beta/threads/message_content.rbi rename to rbi/openai/models/beta/threads/message_content.rbi diff --git a/rbi/lib/openai/models/beta/threads/message_content_delta.rbi b/rbi/openai/models/beta/threads/message_content_delta.rbi similarity index 100% rename from rbi/lib/openai/models/beta/threads/message_content_delta.rbi rename to rbi/openai/models/beta/threads/message_content_delta.rbi diff --git a/rbi/lib/openai/models/beta/threads/message_content_part_param.rbi b/rbi/openai/models/beta/threads/message_content_part_param.rbi similarity index 100% rename from rbi/lib/openai/models/beta/threads/message_content_part_param.rbi rename to rbi/openai/models/beta/threads/message_content_part_param.rbi diff --git a/rbi/lib/openai/models/beta/threads/message_create_params.rbi b/rbi/openai/models/beta/threads/message_create_params.rbi similarity index 100% rename from rbi/lib/openai/models/beta/threads/message_create_params.rbi rename to rbi/openai/models/beta/threads/message_create_params.rbi diff --git a/rbi/lib/openai/models/beta/threads/message_delete_params.rbi b/rbi/openai/models/beta/threads/message_delete_params.rbi similarity index 100% rename from rbi/lib/openai/models/beta/threads/message_delete_params.rbi rename to rbi/openai/models/beta/threads/message_delete_params.rbi diff --git a/rbi/lib/openai/models/beta/threads/message_deleted.rbi b/rbi/openai/models/beta/threads/message_deleted.rbi similarity index 100% rename from rbi/lib/openai/models/beta/threads/message_deleted.rbi rename to rbi/openai/models/beta/threads/message_deleted.rbi diff --git a/rbi/lib/openai/models/beta/threads/message_delta.rbi b/rbi/openai/models/beta/threads/message_delta.rbi similarity index 100% rename from rbi/lib/openai/models/beta/threads/message_delta.rbi rename to rbi/openai/models/beta/threads/message_delta.rbi diff --git a/rbi/lib/openai/models/beta/threads/message_delta_event.rbi b/rbi/openai/models/beta/threads/message_delta_event.rbi similarity index 100% rename from rbi/lib/openai/models/beta/threads/message_delta_event.rbi rename to rbi/openai/models/beta/threads/message_delta_event.rbi diff --git a/rbi/lib/openai/models/beta/threads/message_list_params.rbi b/rbi/openai/models/beta/threads/message_list_params.rbi similarity index 100% rename from rbi/lib/openai/models/beta/threads/message_list_params.rbi rename to rbi/openai/models/beta/threads/message_list_params.rbi diff --git a/rbi/lib/openai/models/beta/threads/message_retrieve_params.rbi b/rbi/openai/models/beta/threads/message_retrieve_params.rbi similarity index 100% rename from rbi/lib/openai/models/beta/threads/message_retrieve_params.rbi rename to rbi/openai/models/beta/threads/message_retrieve_params.rbi diff --git a/rbi/lib/openai/models/beta/threads/message_update_params.rbi b/rbi/openai/models/beta/threads/message_update_params.rbi similarity index 100% rename from rbi/lib/openai/models/beta/threads/message_update_params.rbi rename to rbi/openai/models/beta/threads/message_update_params.rbi diff --git a/rbi/lib/openai/models/beta/threads/refusal_content_block.rbi b/rbi/openai/models/beta/threads/refusal_content_block.rbi similarity index 100% rename from rbi/lib/openai/models/beta/threads/refusal_content_block.rbi rename to rbi/openai/models/beta/threads/refusal_content_block.rbi diff --git a/rbi/lib/openai/models/beta/threads/refusal_delta_block.rbi b/rbi/openai/models/beta/threads/refusal_delta_block.rbi similarity index 100% rename from rbi/lib/openai/models/beta/threads/refusal_delta_block.rbi rename to rbi/openai/models/beta/threads/refusal_delta_block.rbi diff --git a/rbi/lib/openai/models/beta/threads/required_action_function_tool_call.rbi b/rbi/openai/models/beta/threads/required_action_function_tool_call.rbi similarity index 100% rename from rbi/lib/openai/models/beta/threads/required_action_function_tool_call.rbi rename to rbi/openai/models/beta/threads/required_action_function_tool_call.rbi diff --git a/rbi/lib/openai/models/beta/threads/run.rbi b/rbi/openai/models/beta/threads/run.rbi similarity index 100% rename from rbi/lib/openai/models/beta/threads/run.rbi rename to rbi/openai/models/beta/threads/run.rbi diff --git a/rbi/lib/openai/models/beta/threads/run_cancel_params.rbi b/rbi/openai/models/beta/threads/run_cancel_params.rbi similarity index 100% rename from rbi/lib/openai/models/beta/threads/run_cancel_params.rbi rename to rbi/openai/models/beta/threads/run_cancel_params.rbi diff --git a/rbi/lib/openai/models/beta/threads/run_create_params.rbi b/rbi/openai/models/beta/threads/run_create_params.rbi similarity index 100% rename from rbi/lib/openai/models/beta/threads/run_create_params.rbi rename to rbi/openai/models/beta/threads/run_create_params.rbi diff --git a/rbi/lib/openai/models/beta/threads/run_list_params.rbi b/rbi/openai/models/beta/threads/run_list_params.rbi similarity index 100% rename from rbi/lib/openai/models/beta/threads/run_list_params.rbi rename to rbi/openai/models/beta/threads/run_list_params.rbi diff --git a/rbi/lib/openai/models/beta/threads/run_retrieve_params.rbi b/rbi/openai/models/beta/threads/run_retrieve_params.rbi similarity index 100% rename from rbi/lib/openai/models/beta/threads/run_retrieve_params.rbi rename to rbi/openai/models/beta/threads/run_retrieve_params.rbi diff --git a/rbi/lib/openai/models/beta/threads/run_status.rbi b/rbi/openai/models/beta/threads/run_status.rbi similarity index 100% rename from rbi/lib/openai/models/beta/threads/run_status.rbi rename to rbi/openai/models/beta/threads/run_status.rbi diff --git a/rbi/lib/openai/models/beta/threads/run_submit_tool_outputs_params.rbi b/rbi/openai/models/beta/threads/run_submit_tool_outputs_params.rbi similarity index 100% rename from rbi/lib/openai/models/beta/threads/run_submit_tool_outputs_params.rbi rename to rbi/openai/models/beta/threads/run_submit_tool_outputs_params.rbi diff --git a/rbi/lib/openai/models/beta/threads/run_update_params.rbi b/rbi/openai/models/beta/threads/run_update_params.rbi similarity index 100% rename from rbi/lib/openai/models/beta/threads/run_update_params.rbi rename to rbi/openai/models/beta/threads/run_update_params.rbi diff --git a/rbi/lib/openai/models/beta/threads/runs/code_interpreter_logs.rbi b/rbi/openai/models/beta/threads/runs/code_interpreter_logs.rbi similarity index 100% rename from rbi/lib/openai/models/beta/threads/runs/code_interpreter_logs.rbi rename to rbi/openai/models/beta/threads/runs/code_interpreter_logs.rbi diff --git a/rbi/lib/openai/models/beta/threads/runs/code_interpreter_output_image.rbi b/rbi/openai/models/beta/threads/runs/code_interpreter_output_image.rbi similarity index 100% rename from rbi/lib/openai/models/beta/threads/runs/code_interpreter_output_image.rbi rename to rbi/openai/models/beta/threads/runs/code_interpreter_output_image.rbi diff --git a/rbi/lib/openai/models/beta/threads/runs/code_interpreter_tool_call.rbi b/rbi/openai/models/beta/threads/runs/code_interpreter_tool_call.rbi similarity index 100% rename from rbi/lib/openai/models/beta/threads/runs/code_interpreter_tool_call.rbi rename to rbi/openai/models/beta/threads/runs/code_interpreter_tool_call.rbi diff --git a/rbi/lib/openai/models/beta/threads/runs/code_interpreter_tool_call_delta.rbi b/rbi/openai/models/beta/threads/runs/code_interpreter_tool_call_delta.rbi similarity index 100% rename from rbi/lib/openai/models/beta/threads/runs/code_interpreter_tool_call_delta.rbi rename to rbi/openai/models/beta/threads/runs/code_interpreter_tool_call_delta.rbi diff --git a/rbi/lib/openai/models/beta/threads/runs/file_search_tool_call.rbi b/rbi/openai/models/beta/threads/runs/file_search_tool_call.rbi similarity index 100% rename from rbi/lib/openai/models/beta/threads/runs/file_search_tool_call.rbi rename to rbi/openai/models/beta/threads/runs/file_search_tool_call.rbi diff --git a/rbi/lib/openai/models/beta/threads/runs/file_search_tool_call_delta.rbi b/rbi/openai/models/beta/threads/runs/file_search_tool_call_delta.rbi similarity index 100% rename from rbi/lib/openai/models/beta/threads/runs/file_search_tool_call_delta.rbi rename to rbi/openai/models/beta/threads/runs/file_search_tool_call_delta.rbi diff --git a/rbi/lib/openai/models/beta/threads/runs/function_tool_call.rbi b/rbi/openai/models/beta/threads/runs/function_tool_call.rbi similarity index 100% rename from rbi/lib/openai/models/beta/threads/runs/function_tool_call.rbi rename to rbi/openai/models/beta/threads/runs/function_tool_call.rbi diff --git a/rbi/lib/openai/models/beta/threads/runs/function_tool_call_delta.rbi b/rbi/openai/models/beta/threads/runs/function_tool_call_delta.rbi similarity index 100% rename from rbi/lib/openai/models/beta/threads/runs/function_tool_call_delta.rbi rename to rbi/openai/models/beta/threads/runs/function_tool_call_delta.rbi diff --git a/rbi/lib/openai/models/beta/threads/runs/message_creation_step_details.rbi b/rbi/openai/models/beta/threads/runs/message_creation_step_details.rbi similarity index 100% rename from rbi/lib/openai/models/beta/threads/runs/message_creation_step_details.rbi rename to rbi/openai/models/beta/threads/runs/message_creation_step_details.rbi diff --git a/rbi/lib/openai/models/beta/threads/runs/run_step.rbi b/rbi/openai/models/beta/threads/runs/run_step.rbi similarity index 100% rename from rbi/lib/openai/models/beta/threads/runs/run_step.rbi rename to rbi/openai/models/beta/threads/runs/run_step.rbi diff --git a/rbi/lib/openai/models/beta/threads/runs/run_step_delta.rbi b/rbi/openai/models/beta/threads/runs/run_step_delta.rbi similarity index 100% rename from rbi/lib/openai/models/beta/threads/runs/run_step_delta.rbi rename to rbi/openai/models/beta/threads/runs/run_step_delta.rbi diff --git a/rbi/lib/openai/models/beta/threads/runs/run_step_delta_event.rbi b/rbi/openai/models/beta/threads/runs/run_step_delta_event.rbi similarity index 100% rename from rbi/lib/openai/models/beta/threads/runs/run_step_delta_event.rbi rename to rbi/openai/models/beta/threads/runs/run_step_delta_event.rbi diff --git a/rbi/lib/openai/models/beta/threads/runs/run_step_delta_message_delta.rbi b/rbi/openai/models/beta/threads/runs/run_step_delta_message_delta.rbi similarity index 100% rename from rbi/lib/openai/models/beta/threads/runs/run_step_delta_message_delta.rbi rename to rbi/openai/models/beta/threads/runs/run_step_delta_message_delta.rbi diff --git a/rbi/lib/openai/models/beta/threads/runs/run_step_include.rbi b/rbi/openai/models/beta/threads/runs/run_step_include.rbi similarity index 100% rename from rbi/lib/openai/models/beta/threads/runs/run_step_include.rbi rename to rbi/openai/models/beta/threads/runs/run_step_include.rbi diff --git a/rbi/lib/openai/models/beta/threads/runs/step_list_params.rbi b/rbi/openai/models/beta/threads/runs/step_list_params.rbi similarity index 100% rename from rbi/lib/openai/models/beta/threads/runs/step_list_params.rbi rename to rbi/openai/models/beta/threads/runs/step_list_params.rbi diff --git a/rbi/lib/openai/models/beta/threads/runs/step_retrieve_params.rbi b/rbi/openai/models/beta/threads/runs/step_retrieve_params.rbi similarity index 100% rename from rbi/lib/openai/models/beta/threads/runs/step_retrieve_params.rbi rename to rbi/openai/models/beta/threads/runs/step_retrieve_params.rbi diff --git a/rbi/lib/openai/models/beta/threads/runs/tool_call.rbi b/rbi/openai/models/beta/threads/runs/tool_call.rbi similarity index 100% rename from rbi/lib/openai/models/beta/threads/runs/tool_call.rbi rename to rbi/openai/models/beta/threads/runs/tool_call.rbi diff --git a/rbi/lib/openai/models/beta/threads/runs/tool_call_delta.rbi b/rbi/openai/models/beta/threads/runs/tool_call_delta.rbi similarity index 100% rename from rbi/lib/openai/models/beta/threads/runs/tool_call_delta.rbi rename to rbi/openai/models/beta/threads/runs/tool_call_delta.rbi diff --git a/rbi/lib/openai/models/beta/threads/runs/tool_call_delta_object.rbi b/rbi/openai/models/beta/threads/runs/tool_call_delta_object.rbi similarity index 100% rename from rbi/lib/openai/models/beta/threads/runs/tool_call_delta_object.rbi rename to rbi/openai/models/beta/threads/runs/tool_call_delta_object.rbi diff --git a/rbi/lib/openai/models/beta/threads/runs/tool_calls_step_details.rbi b/rbi/openai/models/beta/threads/runs/tool_calls_step_details.rbi similarity index 100% rename from rbi/lib/openai/models/beta/threads/runs/tool_calls_step_details.rbi rename to rbi/openai/models/beta/threads/runs/tool_calls_step_details.rbi diff --git a/rbi/lib/openai/models/beta/threads/text.rbi b/rbi/openai/models/beta/threads/text.rbi similarity index 100% rename from rbi/lib/openai/models/beta/threads/text.rbi rename to rbi/openai/models/beta/threads/text.rbi diff --git a/rbi/lib/openai/models/beta/threads/text_content_block.rbi b/rbi/openai/models/beta/threads/text_content_block.rbi similarity index 100% rename from rbi/lib/openai/models/beta/threads/text_content_block.rbi rename to rbi/openai/models/beta/threads/text_content_block.rbi diff --git a/rbi/lib/openai/models/beta/threads/text_content_block_param.rbi b/rbi/openai/models/beta/threads/text_content_block_param.rbi similarity index 100% rename from rbi/lib/openai/models/beta/threads/text_content_block_param.rbi rename to rbi/openai/models/beta/threads/text_content_block_param.rbi diff --git a/rbi/lib/openai/models/beta/threads/text_delta.rbi b/rbi/openai/models/beta/threads/text_delta.rbi similarity index 100% rename from rbi/lib/openai/models/beta/threads/text_delta.rbi rename to rbi/openai/models/beta/threads/text_delta.rbi diff --git a/rbi/lib/openai/models/beta/threads/text_delta_block.rbi b/rbi/openai/models/beta/threads/text_delta_block.rbi similarity index 100% rename from rbi/lib/openai/models/beta/threads/text_delta_block.rbi rename to rbi/openai/models/beta/threads/text_delta_block.rbi diff --git a/rbi/lib/openai/models/chat/chat_completion.rbi b/rbi/openai/models/chat/chat_completion.rbi similarity index 100% rename from rbi/lib/openai/models/chat/chat_completion.rbi rename to rbi/openai/models/chat/chat_completion.rbi diff --git a/rbi/lib/openai/models/chat/chat_completion_assistant_message_param.rbi b/rbi/openai/models/chat/chat_completion_assistant_message_param.rbi similarity index 100% rename from rbi/lib/openai/models/chat/chat_completion_assistant_message_param.rbi rename to rbi/openai/models/chat/chat_completion_assistant_message_param.rbi diff --git a/rbi/lib/openai/models/chat/chat_completion_audio.rbi b/rbi/openai/models/chat/chat_completion_audio.rbi similarity index 100% rename from rbi/lib/openai/models/chat/chat_completion_audio.rbi rename to rbi/openai/models/chat/chat_completion_audio.rbi diff --git a/rbi/lib/openai/models/chat/chat_completion_audio_param.rbi b/rbi/openai/models/chat/chat_completion_audio_param.rbi similarity index 100% rename from rbi/lib/openai/models/chat/chat_completion_audio_param.rbi rename to rbi/openai/models/chat/chat_completion_audio_param.rbi diff --git a/rbi/lib/openai/models/chat/chat_completion_chunk.rbi b/rbi/openai/models/chat/chat_completion_chunk.rbi similarity index 100% rename from rbi/lib/openai/models/chat/chat_completion_chunk.rbi rename to rbi/openai/models/chat/chat_completion_chunk.rbi diff --git a/rbi/lib/openai/models/chat/chat_completion_content_part.rbi b/rbi/openai/models/chat/chat_completion_content_part.rbi similarity index 100% rename from rbi/lib/openai/models/chat/chat_completion_content_part.rbi rename to rbi/openai/models/chat/chat_completion_content_part.rbi diff --git a/rbi/lib/openai/models/chat/chat_completion_content_part_image.rbi b/rbi/openai/models/chat/chat_completion_content_part_image.rbi similarity index 100% rename from rbi/lib/openai/models/chat/chat_completion_content_part_image.rbi rename to rbi/openai/models/chat/chat_completion_content_part_image.rbi diff --git a/rbi/lib/openai/models/chat/chat_completion_content_part_input_audio.rbi b/rbi/openai/models/chat/chat_completion_content_part_input_audio.rbi similarity index 100% rename from rbi/lib/openai/models/chat/chat_completion_content_part_input_audio.rbi rename to rbi/openai/models/chat/chat_completion_content_part_input_audio.rbi diff --git a/rbi/lib/openai/models/chat/chat_completion_content_part_refusal.rbi b/rbi/openai/models/chat/chat_completion_content_part_refusal.rbi similarity index 100% rename from rbi/lib/openai/models/chat/chat_completion_content_part_refusal.rbi rename to rbi/openai/models/chat/chat_completion_content_part_refusal.rbi diff --git a/rbi/lib/openai/models/chat/chat_completion_content_part_text.rbi b/rbi/openai/models/chat/chat_completion_content_part_text.rbi similarity index 100% rename from rbi/lib/openai/models/chat/chat_completion_content_part_text.rbi rename to rbi/openai/models/chat/chat_completion_content_part_text.rbi diff --git a/rbi/lib/openai/models/chat/chat_completion_deleted.rbi b/rbi/openai/models/chat/chat_completion_deleted.rbi similarity index 100% rename from rbi/lib/openai/models/chat/chat_completion_deleted.rbi rename to rbi/openai/models/chat/chat_completion_deleted.rbi diff --git a/rbi/lib/openai/models/chat/chat_completion_developer_message_param.rbi b/rbi/openai/models/chat/chat_completion_developer_message_param.rbi similarity index 100% rename from rbi/lib/openai/models/chat/chat_completion_developer_message_param.rbi rename to rbi/openai/models/chat/chat_completion_developer_message_param.rbi diff --git a/rbi/lib/openai/models/chat/chat_completion_function_call_option.rbi b/rbi/openai/models/chat/chat_completion_function_call_option.rbi similarity index 100% rename from rbi/lib/openai/models/chat/chat_completion_function_call_option.rbi rename to rbi/openai/models/chat/chat_completion_function_call_option.rbi diff --git a/rbi/lib/openai/models/chat/chat_completion_function_message_param.rbi b/rbi/openai/models/chat/chat_completion_function_message_param.rbi similarity index 100% rename from rbi/lib/openai/models/chat/chat_completion_function_message_param.rbi rename to rbi/openai/models/chat/chat_completion_function_message_param.rbi diff --git a/rbi/lib/openai/models/chat/chat_completion_message.rbi b/rbi/openai/models/chat/chat_completion_message.rbi similarity index 100% rename from rbi/lib/openai/models/chat/chat_completion_message.rbi rename to rbi/openai/models/chat/chat_completion_message.rbi diff --git a/rbi/lib/openai/models/chat/chat_completion_message_param.rbi b/rbi/openai/models/chat/chat_completion_message_param.rbi similarity index 100% rename from rbi/lib/openai/models/chat/chat_completion_message_param.rbi rename to rbi/openai/models/chat/chat_completion_message_param.rbi diff --git a/rbi/lib/openai/models/chat/chat_completion_message_tool_call.rbi b/rbi/openai/models/chat/chat_completion_message_tool_call.rbi similarity index 100% rename from rbi/lib/openai/models/chat/chat_completion_message_tool_call.rbi rename to rbi/openai/models/chat/chat_completion_message_tool_call.rbi diff --git a/rbi/lib/openai/models/chat/chat_completion_modality.rbi b/rbi/openai/models/chat/chat_completion_modality.rbi similarity index 100% rename from rbi/lib/openai/models/chat/chat_completion_modality.rbi rename to rbi/openai/models/chat/chat_completion_modality.rbi diff --git a/rbi/lib/openai/models/chat/chat_completion_named_tool_choice.rbi b/rbi/openai/models/chat/chat_completion_named_tool_choice.rbi similarity index 100% rename from rbi/lib/openai/models/chat/chat_completion_named_tool_choice.rbi rename to rbi/openai/models/chat/chat_completion_named_tool_choice.rbi diff --git a/rbi/lib/openai/models/chat/chat_completion_prediction_content.rbi b/rbi/openai/models/chat/chat_completion_prediction_content.rbi similarity index 100% rename from rbi/lib/openai/models/chat/chat_completion_prediction_content.rbi rename to rbi/openai/models/chat/chat_completion_prediction_content.rbi diff --git a/rbi/lib/openai/models/chat/chat_completion_reasoning_effort.rbi b/rbi/openai/models/chat/chat_completion_reasoning_effort.rbi similarity index 100% rename from rbi/lib/openai/models/chat/chat_completion_reasoning_effort.rbi rename to rbi/openai/models/chat/chat_completion_reasoning_effort.rbi diff --git a/rbi/lib/openai/models/chat/chat_completion_role.rbi b/rbi/openai/models/chat/chat_completion_role.rbi similarity index 100% rename from rbi/lib/openai/models/chat/chat_completion_role.rbi rename to rbi/openai/models/chat/chat_completion_role.rbi diff --git a/rbi/lib/openai/models/chat/chat_completion_store_message.rbi b/rbi/openai/models/chat/chat_completion_store_message.rbi similarity index 100% rename from rbi/lib/openai/models/chat/chat_completion_store_message.rbi rename to rbi/openai/models/chat/chat_completion_store_message.rbi diff --git a/rbi/lib/openai/models/chat/chat_completion_stream_options.rbi b/rbi/openai/models/chat/chat_completion_stream_options.rbi similarity index 100% rename from rbi/lib/openai/models/chat/chat_completion_stream_options.rbi rename to rbi/openai/models/chat/chat_completion_stream_options.rbi diff --git a/rbi/lib/openai/models/chat/chat_completion_system_message_param.rbi b/rbi/openai/models/chat/chat_completion_system_message_param.rbi similarity index 100% rename from rbi/lib/openai/models/chat/chat_completion_system_message_param.rbi rename to rbi/openai/models/chat/chat_completion_system_message_param.rbi diff --git a/rbi/lib/openai/models/chat/chat_completion_token_logprob.rbi b/rbi/openai/models/chat/chat_completion_token_logprob.rbi similarity index 100% rename from rbi/lib/openai/models/chat/chat_completion_token_logprob.rbi rename to rbi/openai/models/chat/chat_completion_token_logprob.rbi diff --git a/rbi/lib/openai/models/chat/chat_completion_tool.rbi b/rbi/openai/models/chat/chat_completion_tool.rbi similarity index 100% rename from rbi/lib/openai/models/chat/chat_completion_tool.rbi rename to rbi/openai/models/chat/chat_completion_tool.rbi diff --git a/rbi/lib/openai/models/chat/chat_completion_tool_choice_option.rbi b/rbi/openai/models/chat/chat_completion_tool_choice_option.rbi similarity index 100% rename from rbi/lib/openai/models/chat/chat_completion_tool_choice_option.rbi rename to rbi/openai/models/chat/chat_completion_tool_choice_option.rbi diff --git a/rbi/lib/openai/models/chat/chat_completion_tool_message_param.rbi b/rbi/openai/models/chat/chat_completion_tool_message_param.rbi similarity index 100% rename from rbi/lib/openai/models/chat/chat_completion_tool_message_param.rbi rename to rbi/openai/models/chat/chat_completion_tool_message_param.rbi diff --git a/rbi/lib/openai/models/chat/chat_completion_user_message_param.rbi b/rbi/openai/models/chat/chat_completion_user_message_param.rbi similarity index 100% rename from rbi/lib/openai/models/chat/chat_completion_user_message_param.rbi rename to rbi/openai/models/chat/chat_completion_user_message_param.rbi diff --git a/rbi/lib/openai/models/chat/completion_create_params.rbi b/rbi/openai/models/chat/completion_create_params.rbi similarity index 100% rename from rbi/lib/openai/models/chat/completion_create_params.rbi rename to rbi/openai/models/chat/completion_create_params.rbi diff --git a/rbi/lib/openai/models/chat/completion_delete_params.rbi b/rbi/openai/models/chat/completion_delete_params.rbi similarity index 100% rename from rbi/lib/openai/models/chat/completion_delete_params.rbi rename to rbi/openai/models/chat/completion_delete_params.rbi diff --git a/rbi/lib/openai/models/chat/completion_list_params.rbi b/rbi/openai/models/chat/completion_list_params.rbi similarity index 100% rename from rbi/lib/openai/models/chat/completion_list_params.rbi rename to rbi/openai/models/chat/completion_list_params.rbi diff --git a/rbi/lib/openai/models/chat/completion_retrieve_params.rbi b/rbi/openai/models/chat/completion_retrieve_params.rbi similarity index 100% rename from rbi/lib/openai/models/chat/completion_retrieve_params.rbi rename to rbi/openai/models/chat/completion_retrieve_params.rbi diff --git a/rbi/lib/openai/models/chat/completion_update_params.rbi b/rbi/openai/models/chat/completion_update_params.rbi similarity index 100% rename from rbi/lib/openai/models/chat/completion_update_params.rbi rename to rbi/openai/models/chat/completion_update_params.rbi diff --git a/rbi/lib/openai/models/chat/completions/message_list_params.rbi b/rbi/openai/models/chat/completions/message_list_params.rbi similarity index 100% rename from rbi/lib/openai/models/chat/completions/message_list_params.rbi rename to rbi/openai/models/chat/completions/message_list_params.rbi diff --git a/rbi/lib/openai/models/chat_model.rbi b/rbi/openai/models/chat_model.rbi similarity index 100% rename from rbi/lib/openai/models/chat_model.rbi rename to rbi/openai/models/chat_model.rbi diff --git a/rbi/lib/openai/models/comparison_filter.rbi b/rbi/openai/models/comparison_filter.rbi similarity index 100% rename from rbi/lib/openai/models/comparison_filter.rbi rename to rbi/openai/models/comparison_filter.rbi diff --git a/rbi/lib/openai/models/completion.rbi b/rbi/openai/models/completion.rbi similarity index 100% rename from rbi/lib/openai/models/completion.rbi rename to rbi/openai/models/completion.rbi diff --git a/rbi/lib/openai/models/completion_choice.rbi b/rbi/openai/models/completion_choice.rbi similarity index 100% rename from rbi/lib/openai/models/completion_choice.rbi rename to rbi/openai/models/completion_choice.rbi diff --git a/rbi/lib/openai/models/completion_create_params.rbi b/rbi/openai/models/completion_create_params.rbi similarity index 100% rename from rbi/lib/openai/models/completion_create_params.rbi rename to rbi/openai/models/completion_create_params.rbi diff --git a/rbi/lib/openai/models/completion_usage.rbi b/rbi/openai/models/completion_usage.rbi similarity index 100% rename from rbi/lib/openai/models/completion_usage.rbi rename to rbi/openai/models/completion_usage.rbi diff --git a/rbi/lib/openai/models/compound_filter.rbi b/rbi/openai/models/compound_filter.rbi similarity index 100% rename from rbi/lib/openai/models/compound_filter.rbi rename to rbi/openai/models/compound_filter.rbi diff --git a/rbi/lib/openai/models/create_embedding_response.rbi b/rbi/openai/models/create_embedding_response.rbi similarity index 100% rename from rbi/lib/openai/models/create_embedding_response.rbi rename to rbi/openai/models/create_embedding_response.rbi diff --git a/rbi/lib/openai/models/embedding.rbi b/rbi/openai/models/embedding.rbi similarity index 100% rename from rbi/lib/openai/models/embedding.rbi rename to rbi/openai/models/embedding.rbi diff --git a/rbi/lib/openai/models/embedding_create_params.rbi b/rbi/openai/models/embedding_create_params.rbi similarity index 100% rename from rbi/lib/openai/models/embedding_create_params.rbi rename to rbi/openai/models/embedding_create_params.rbi diff --git a/rbi/lib/openai/models/embedding_model.rbi b/rbi/openai/models/embedding_model.rbi similarity index 100% rename from rbi/lib/openai/models/embedding_model.rbi rename to rbi/openai/models/embedding_model.rbi diff --git a/rbi/lib/openai/models/error_object.rbi b/rbi/openai/models/error_object.rbi similarity index 100% rename from rbi/lib/openai/models/error_object.rbi rename to rbi/openai/models/error_object.rbi diff --git a/rbi/lib/openai/models/eval_create_params.rbi b/rbi/openai/models/eval_create_params.rbi similarity index 100% rename from rbi/lib/openai/models/eval_create_params.rbi rename to rbi/openai/models/eval_create_params.rbi diff --git a/rbi/lib/openai/models/eval_create_response.rbi b/rbi/openai/models/eval_create_response.rbi similarity index 100% rename from rbi/lib/openai/models/eval_create_response.rbi rename to rbi/openai/models/eval_create_response.rbi diff --git a/rbi/lib/openai/models/eval_custom_data_source_config.rbi b/rbi/openai/models/eval_custom_data_source_config.rbi similarity index 100% rename from rbi/lib/openai/models/eval_custom_data_source_config.rbi rename to rbi/openai/models/eval_custom_data_source_config.rbi diff --git a/rbi/lib/openai/models/eval_delete_params.rbi b/rbi/openai/models/eval_delete_params.rbi similarity index 100% rename from rbi/lib/openai/models/eval_delete_params.rbi rename to rbi/openai/models/eval_delete_params.rbi diff --git a/rbi/lib/openai/models/eval_delete_response.rbi b/rbi/openai/models/eval_delete_response.rbi similarity index 100% rename from rbi/lib/openai/models/eval_delete_response.rbi rename to rbi/openai/models/eval_delete_response.rbi diff --git a/rbi/lib/openai/models/eval_label_model_grader.rbi b/rbi/openai/models/eval_label_model_grader.rbi similarity index 100% rename from rbi/lib/openai/models/eval_label_model_grader.rbi rename to rbi/openai/models/eval_label_model_grader.rbi diff --git a/rbi/lib/openai/models/eval_list_params.rbi b/rbi/openai/models/eval_list_params.rbi similarity index 100% rename from rbi/lib/openai/models/eval_list_params.rbi rename to rbi/openai/models/eval_list_params.rbi diff --git a/rbi/lib/openai/models/eval_list_response.rbi b/rbi/openai/models/eval_list_response.rbi similarity index 100% rename from rbi/lib/openai/models/eval_list_response.rbi rename to rbi/openai/models/eval_list_response.rbi diff --git a/rbi/lib/openai/models/eval_retrieve_params.rbi b/rbi/openai/models/eval_retrieve_params.rbi similarity index 100% rename from rbi/lib/openai/models/eval_retrieve_params.rbi rename to rbi/openai/models/eval_retrieve_params.rbi diff --git a/rbi/lib/openai/models/eval_retrieve_response.rbi b/rbi/openai/models/eval_retrieve_response.rbi similarity index 100% rename from rbi/lib/openai/models/eval_retrieve_response.rbi rename to rbi/openai/models/eval_retrieve_response.rbi diff --git a/rbi/lib/openai/models/eval_stored_completions_data_source_config.rbi b/rbi/openai/models/eval_stored_completions_data_source_config.rbi similarity index 100% rename from rbi/lib/openai/models/eval_stored_completions_data_source_config.rbi rename to rbi/openai/models/eval_stored_completions_data_source_config.rbi diff --git a/rbi/lib/openai/models/eval_string_check_grader.rbi b/rbi/openai/models/eval_string_check_grader.rbi similarity index 100% rename from rbi/lib/openai/models/eval_string_check_grader.rbi rename to rbi/openai/models/eval_string_check_grader.rbi diff --git a/rbi/lib/openai/models/eval_text_similarity_grader.rbi b/rbi/openai/models/eval_text_similarity_grader.rbi similarity index 100% rename from rbi/lib/openai/models/eval_text_similarity_grader.rbi rename to rbi/openai/models/eval_text_similarity_grader.rbi diff --git a/rbi/lib/openai/models/eval_update_params.rbi b/rbi/openai/models/eval_update_params.rbi similarity index 100% rename from rbi/lib/openai/models/eval_update_params.rbi rename to rbi/openai/models/eval_update_params.rbi diff --git a/rbi/lib/openai/models/eval_update_response.rbi b/rbi/openai/models/eval_update_response.rbi similarity index 100% rename from rbi/lib/openai/models/eval_update_response.rbi rename to rbi/openai/models/eval_update_response.rbi diff --git a/rbi/lib/openai/models/evals/create_eval_completions_run_data_source.rbi b/rbi/openai/models/evals/create_eval_completions_run_data_source.rbi similarity index 100% rename from rbi/lib/openai/models/evals/create_eval_completions_run_data_source.rbi rename to rbi/openai/models/evals/create_eval_completions_run_data_source.rbi diff --git a/rbi/lib/openai/models/evals/create_eval_jsonl_run_data_source.rbi b/rbi/openai/models/evals/create_eval_jsonl_run_data_source.rbi similarity index 100% rename from rbi/lib/openai/models/evals/create_eval_jsonl_run_data_source.rbi rename to rbi/openai/models/evals/create_eval_jsonl_run_data_source.rbi diff --git a/rbi/lib/openai/models/evals/eval_api_error.rbi b/rbi/openai/models/evals/eval_api_error.rbi similarity index 100% rename from rbi/lib/openai/models/evals/eval_api_error.rbi rename to rbi/openai/models/evals/eval_api_error.rbi diff --git a/rbi/lib/openai/models/evals/run_cancel_params.rbi b/rbi/openai/models/evals/run_cancel_params.rbi similarity index 100% rename from rbi/lib/openai/models/evals/run_cancel_params.rbi rename to rbi/openai/models/evals/run_cancel_params.rbi diff --git a/rbi/lib/openai/models/evals/run_cancel_response.rbi b/rbi/openai/models/evals/run_cancel_response.rbi similarity index 100% rename from rbi/lib/openai/models/evals/run_cancel_response.rbi rename to rbi/openai/models/evals/run_cancel_response.rbi diff --git a/rbi/lib/openai/models/evals/run_create_params.rbi b/rbi/openai/models/evals/run_create_params.rbi similarity index 100% rename from rbi/lib/openai/models/evals/run_create_params.rbi rename to rbi/openai/models/evals/run_create_params.rbi diff --git a/rbi/lib/openai/models/evals/run_create_response.rbi b/rbi/openai/models/evals/run_create_response.rbi similarity index 100% rename from rbi/lib/openai/models/evals/run_create_response.rbi rename to rbi/openai/models/evals/run_create_response.rbi diff --git a/rbi/lib/openai/models/evals/run_delete_params.rbi b/rbi/openai/models/evals/run_delete_params.rbi similarity index 100% rename from rbi/lib/openai/models/evals/run_delete_params.rbi rename to rbi/openai/models/evals/run_delete_params.rbi diff --git a/rbi/lib/openai/models/evals/run_delete_response.rbi b/rbi/openai/models/evals/run_delete_response.rbi similarity index 100% rename from rbi/lib/openai/models/evals/run_delete_response.rbi rename to rbi/openai/models/evals/run_delete_response.rbi diff --git a/rbi/lib/openai/models/evals/run_list_params.rbi b/rbi/openai/models/evals/run_list_params.rbi similarity index 100% rename from rbi/lib/openai/models/evals/run_list_params.rbi rename to rbi/openai/models/evals/run_list_params.rbi diff --git a/rbi/lib/openai/models/evals/run_list_response.rbi b/rbi/openai/models/evals/run_list_response.rbi similarity index 100% rename from rbi/lib/openai/models/evals/run_list_response.rbi rename to rbi/openai/models/evals/run_list_response.rbi diff --git a/rbi/lib/openai/models/evals/run_retrieve_params.rbi b/rbi/openai/models/evals/run_retrieve_params.rbi similarity index 100% rename from rbi/lib/openai/models/evals/run_retrieve_params.rbi rename to rbi/openai/models/evals/run_retrieve_params.rbi diff --git a/rbi/lib/openai/models/evals/run_retrieve_response.rbi b/rbi/openai/models/evals/run_retrieve_response.rbi similarity index 100% rename from rbi/lib/openai/models/evals/run_retrieve_response.rbi rename to rbi/openai/models/evals/run_retrieve_response.rbi diff --git a/rbi/lib/openai/models/evals/runs/output_item_list_params.rbi b/rbi/openai/models/evals/runs/output_item_list_params.rbi similarity index 100% rename from rbi/lib/openai/models/evals/runs/output_item_list_params.rbi rename to rbi/openai/models/evals/runs/output_item_list_params.rbi diff --git a/rbi/lib/openai/models/evals/runs/output_item_list_response.rbi b/rbi/openai/models/evals/runs/output_item_list_response.rbi similarity index 100% rename from rbi/lib/openai/models/evals/runs/output_item_list_response.rbi rename to rbi/openai/models/evals/runs/output_item_list_response.rbi diff --git a/rbi/lib/openai/models/evals/runs/output_item_retrieve_params.rbi b/rbi/openai/models/evals/runs/output_item_retrieve_params.rbi similarity index 100% rename from rbi/lib/openai/models/evals/runs/output_item_retrieve_params.rbi rename to rbi/openai/models/evals/runs/output_item_retrieve_params.rbi diff --git a/rbi/lib/openai/models/evals/runs/output_item_retrieve_response.rbi b/rbi/openai/models/evals/runs/output_item_retrieve_response.rbi similarity index 100% rename from rbi/lib/openai/models/evals/runs/output_item_retrieve_response.rbi rename to rbi/openai/models/evals/runs/output_item_retrieve_response.rbi diff --git a/rbi/lib/openai/models/file_chunking_strategy.rbi b/rbi/openai/models/file_chunking_strategy.rbi similarity index 100% rename from rbi/lib/openai/models/file_chunking_strategy.rbi rename to rbi/openai/models/file_chunking_strategy.rbi diff --git a/rbi/lib/openai/models/file_chunking_strategy_param.rbi b/rbi/openai/models/file_chunking_strategy_param.rbi similarity index 100% rename from rbi/lib/openai/models/file_chunking_strategy_param.rbi rename to rbi/openai/models/file_chunking_strategy_param.rbi diff --git a/rbi/lib/openai/models/file_content_params.rbi b/rbi/openai/models/file_content_params.rbi similarity index 100% rename from rbi/lib/openai/models/file_content_params.rbi rename to rbi/openai/models/file_content_params.rbi diff --git a/rbi/lib/openai/models/file_create_params.rbi b/rbi/openai/models/file_create_params.rbi similarity index 100% rename from rbi/lib/openai/models/file_create_params.rbi rename to rbi/openai/models/file_create_params.rbi diff --git a/rbi/lib/openai/models/file_delete_params.rbi b/rbi/openai/models/file_delete_params.rbi similarity index 100% rename from rbi/lib/openai/models/file_delete_params.rbi rename to rbi/openai/models/file_delete_params.rbi diff --git a/rbi/lib/openai/models/file_deleted.rbi b/rbi/openai/models/file_deleted.rbi similarity index 100% rename from rbi/lib/openai/models/file_deleted.rbi rename to rbi/openai/models/file_deleted.rbi diff --git a/rbi/lib/openai/models/file_list_params.rbi b/rbi/openai/models/file_list_params.rbi similarity index 100% rename from rbi/lib/openai/models/file_list_params.rbi rename to rbi/openai/models/file_list_params.rbi diff --git a/rbi/lib/openai/models/file_object.rbi b/rbi/openai/models/file_object.rbi similarity index 100% rename from rbi/lib/openai/models/file_object.rbi rename to rbi/openai/models/file_object.rbi diff --git a/rbi/lib/openai/models/file_purpose.rbi b/rbi/openai/models/file_purpose.rbi similarity index 100% rename from rbi/lib/openai/models/file_purpose.rbi rename to rbi/openai/models/file_purpose.rbi diff --git a/rbi/lib/openai/models/file_retrieve_params.rbi b/rbi/openai/models/file_retrieve_params.rbi similarity index 100% rename from rbi/lib/openai/models/file_retrieve_params.rbi rename to rbi/openai/models/file_retrieve_params.rbi diff --git a/rbi/lib/openai/models/fine_tuning/checkpoints/permission_create_params.rbi b/rbi/openai/models/fine_tuning/checkpoints/permission_create_params.rbi similarity index 100% rename from rbi/lib/openai/models/fine_tuning/checkpoints/permission_create_params.rbi rename to rbi/openai/models/fine_tuning/checkpoints/permission_create_params.rbi diff --git a/rbi/lib/openai/models/fine_tuning/checkpoints/permission_create_response.rbi b/rbi/openai/models/fine_tuning/checkpoints/permission_create_response.rbi similarity index 100% rename from rbi/lib/openai/models/fine_tuning/checkpoints/permission_create_response.rbi rename to rbi/openai/models/fine_tuning/checkpoints/permission_create_response.rbi diff --git a/rbi/lib/openai/models/fine_tuning/checkpoints/permission_delete_params.rbi b/rbi/openai/models/fine_tuning/checkpoints/permission_delete_params.rbi similarity index 100% rename from rbi/lib/openai/models/fine_tuning/checkpoints/permission_delete_params.rbi rename to rbi/openai/models/fine_tuning/checkpoints/permission_delete_params.rbi diff --git a/rbi/lib/openai/models/fine_tuning/checkpoints/permission_delete_response.rbi b/rbi/openai/models/fine_tuning/checkpoints/permission_delete_response.rbi similarity index 100% rename from rbi/lib/openai/models/fine_tuning/checkpoints/permission_delete_response.rbi rename to rbi/openai/models/fine_tuning/checkpoints/permission_delete_response.rbi diff --git a/rbi/lib/openai/models/fine_tuning/checkpoints/permission_retrieve_params.rbi b/rbi/openai/models/fine_tuning/checkpoints/permission_retrieve_params.rbi similarity index 100% rename from rbi/lib/openai/models/fine_tuning/checkpoints/permission_retrieve_params.rbi rename to rbi/openai/models/fine_tuning/checkpoints/permission_retrieve_params.rbi diff --git a/rbi/lib/openai/models/fine_tuning/checkpoints/permission_retrieve_response.rbi b/rbi/openai/models/fine_tuning/checkpoints/permission_retrieve_response.rbi similarity index 100% rename from rbi/lib/openai/models/fine_tuning/checkpoints/permission_retrieve_response.rbi rename to rbi/openai/models/fine_tuning/checkpoints/permission_retrieve_response.rbi diff --git a/rbi/lib/openai/models/fine_tuning/fine_tuning_job.rbi b/rbi/openai/models/fine_tuning/fine_tuning_job.rbi similarity index 100% rename from rbi/lib/openai/models/fine_tuning/fine_tuning_job.rbi rename to rbi/openai/models/fine_tuning/fine_tuning_job.rbi diff --git a/rbi/lib/openai/models/fine_tuning/fine_tuning_job_event.rbi b/rbi/openai/models/fine_tuning/fine_tuning_job_event.rbi similarity index 100% rename from rbi/lib/openai/models/fine_tuning/fine_tuning_job_event.rbi rename to rbi/openai/models/fine_tuning/fine_tuning_job_event.rbi diff --git a/rbi/lib/openai/models/fine_tuning/fine_tuning_job_integration.rbi b/rbi/openai/models/fine_tuning/fine_tuning_job_integration.rbi similarity index 100% rename from rbi/lib/openai/models/fine_tuning/fine_tuning_job_integration.rbi rename to rbi/openai/models/fine_tuning/fine_tuning_job_integration.rbi diff --git a/rbi/lib/openai/models/fine_tuning/fine_tuning_job_wandb_integration.rbi b/rbi/openai/models/fine_tuning/fine_tuning_job_wandb_integration.rbi similarity index 100% rename from rbi/lib/openai/models/fine_tuning/fine_tuning_job_wandb_integration.rbi rename to rbi/openai/models/fine_tuning/fine_tuning_job_wandb_integration.rbi diff --git a/rbi/lib/openai/models/fine_tuning/fine_tuning_job_wandb_integration_object.rbi b/rbi/openai/models/fine_tuning/fine_tuning_job_wandb_integration_object.rbi similarity index 100% rename from rbi/lib/openai/models/fine_tuning/fine_tuning_job_wandb_integration_object.rbi rename to rbi/openai/models/fine_tuning/fine_tuning_job_wandb_integration_object.rbi diff --git a/rbi/lib/openai/models/fine_tuning/job_cancel_params.rbi b/rbi/openai/models/fine_tuning/job_cancel_params.rbi similarity index 100% rename from rbi/lib/openai/models/fine_tuning/job_cancel_params.rbi rename to rbi/openai/models/fine_tuning/job_cancel_params.rbi diff --git a/rbi/lib/openai/models/fine_tuning/job_create_params.rbi b/rbi/openai/models/fine_tuning/job_create_params.rbi similarity index 100% rename from rbi/lib/openai/models/fine_tuning/job_create_params.rbi rename to rbi/openai/models/fine_tuning/job_create_params.rbi diff --git a/rbi/lib/openai/models/fine_tuning/job_list_events_params.rbi b/rbi/openai/models/fine_tuning/job_list_events_params.rbi similarity index 100% rename from rbi/lib/openai/models/fine_tuning/job_list_events_params.rbi rename to rbi/openai/models/fine_tuning/job_list_events_params.rbi diff --git a/rbi/lib/openai/models/fine_tuning/job_list_params.rbi b/rbi/openai/models/fine_tuning/job_list_params.rbi similarity index 100% rename from rbi/lib/openai/models/fine_tuning/job_list_params.rbi rename to rbi/openai/models/fine_tuning/job_list_params.rbi diff --git a/rbi/lib/openai/models/fine_tuning/job_retrieve_params.rbi b/rbi/openai/models/fine_tuning/job_retrieve_params.rbi similarity index 100% rename from rbi/lib/openai/models/fine_tuning/job_retrieve_params.rbi rename to rbi/openai/models/fine_tuning/job_retrieve_params.rbi diff --git a/rbi/lib/openai/models/fine_tuning/jobs/checkpoint_list_params.rbi b/rbi/openai/models/fine_tuning/jobs/checkpoint_list_params.rbi similarity index 100% rename from rbi/lib/openai/models/fine_tuning/jobs/checkpoint_list_params.rbi rename to rbi/openai/models/fine_tuning/jobs/checkpoint_list_params.rbi diff --git a/rbi/lib/openai/models/fine_tuning/jobs/fine_tuning_job_checkpoint.rbi b/rbi/openai/models/fine_tuning/jobs/fine_tuning_job_checkpoint.rbi similarity index 100% rename from rbi/lib/openai/models/fine_tuning/jobs/fine_tuning_job_checkpoint.rbi rename to rbi/openai/models/fine_tuning/jobs/fine_tuning_job_checkpoint.rbi diff --git a/rbi/lib/openai/models/function_definition.rbi b/rbi/openai/models/function_definition.rbi similarity index 100% rename from rbi/lib/openai/models/function_definition.rbi rename to rbi/openai/models/function_definition.rbi diff --git a/rbi/lib/openai/models/function_parameters.rbi b/rbi/openai/models/function_parameters.rbi similarity index 100% rename from rbi/lib/openai/models/function_parameters.rbi rename to rbi/openai/models/function_parameters.rbi diff --git a/rbi/lib/openai/models/image.rbi b/rbi/openai/models/image.rbi similarity index 100% rename from rbi/lib/openai/models/image.rbi rename to rbi/openai/models/image.rbi diff --git a/rbi/lib/openai/models/image_create_variation_params.rbi b/rbi/openai/models/image_create_variation_params.rbi similarity index 100% rename from rbi/lib/openai/models/image_create_variation_params.rbi rename to rbi/openai/models/image_create_variation_params.rbi diff --git a/rbi/lib/openai/models/image_edit_params.rbi b/rbi/openai/models/image_edit_params.rbi similarity index 100% rename from rbi/lib/openai/models/image_edit_params.rbi rename to rbi/openai/models/image_edit_params.rbi diff --git a/rbi/lib/openai/models/image_generate_params.rbi b/rbi/openai/models/image_generate_params.rbi similarity index 100% rename from rbi/lib/openai/models/image_generate_params.rbi rename to rbi/openai/models/image_generate_params.rbi diff --git a/rbi/lib/openai/models/image_model.rbi b/rbi/openai/models/image_model.rbi similarity index 100% rename from rbi/lib/openai/models/image_model.rbi rename to rbi/openai/models/image_model.rbi diff --git a/rbi/lib/openai/models/images_response.rbi b/rbi/openai/models/images_response.rbi similarity index 100% rename from rbi/lib/openai/models/images_response.rbi rename to rbi/openai/models/images_response.rbi diff --git a/rbi/lib/openai/models/metadata.rbi b/rbi/openai/models/metadata.rbi similarity index 100% rename from rbi/lib/openai/models/metadata.rbi rename to rbi/openai/models/metadata.rbi diff --git a/rbi/lib/openai/models/model.rbi b/rbi/openai/models/model.rbi similarity index 100% rename from rbi/lib/openai/models/model.rbi rename to rbi/openai/models/model.rbi diff --git a/rbi/lib/openai/models/model_delete_params.rbi b/rbi/openai/models/model_delete_params.rbi similarity index 100% rename from rbi/lib/openai/models/model_delete_params.rbi rename to rbi/openai/models/model_delete_params.rbi diff --git a/rbi/lib/openai/models/model_deleted.rbi b/rbi/openai/models/model_deleted.rbi similarity index 100% rename from rbi/lib/openai/models/model_deleted.rbi rename to rbi/openai/models/model_deleted.rbi diff --git a/rbi/lib/openai/models/model_list_params.rbi b/rbi/openai/models/model_list_params.rbi similarity index 100% rename from rbi/lib/openai/models/model_list_params.rbi rename to rbi/openai/models/model_list_params.rbi diff --git a/rbi/lib/openai/models/model_retrieve_params.rbi b/rbi/openai/models/model_retrieve_params.rbi similarity index 100% rename from rbi/lib/openai/models/model_retrieve_params.rbi rename to rbi/openai/models/model_retrieve_params.rbi diff --git a/rbi/lib/openai/models/moderation.rbi b/rbi/openai/models/moderation.rbi similarity index 100% rename from rbi/lib/openai/models/moderation.rbi rename to rbi/openai/models/moderation.rbi diff --git a/rbi/lib/openai/models/moderation_create_params.rbi b/rbi/openai/models/moderation_create_params.rbi similarity index 100% rename from rbi/lib/openai/models/moderation_create_params.rbi rename to rbi/openai/models/moderation_create_params.rbi diff --git a/rbi/lib/openai/models/moderation_create_response.rbi b/rbi/openai/models/moderation_create_response.rbi similarity index 100% rename from rbi/lib/openai/models/moderation_create_response.rbi rename to rbi/openai/models/moderation_create_response.rbi diff --git a/rbi/lib/openai/models/moderation_image_url_input.rbi b/rbi/openai/models/moderation_image_url_input.rbi similarity index 100% rename from rbi/lib/openai/models/moderation_image_url_input.rbi rename to rbi/openai/models/moderation_image_url_input.rbi diff --git a/rbi/lib/openai/models/moderation_model.rbi b/rbi/openai/models/moderation_model.rbi similarity index 100% rename from rbi/lib/openai/models/moderation_model.rbi rename to rbi/openai/models/moderation_model.rbi diff --git a/rbi/lib/openai/models/moderation_multi_modal_input.rbi b/rbi/openai/models/moderation_multi_modal_input.rbi similarity index 100% rename from rbi/lib/openai/models/moderation_multi_modal_input.rbi rename to rbi/openai/models/moderation_multi_modal_input.rbi diff --git a/rbi/lib/openai/models/moderation_text_input.rbi b/rbi/openai/models/moderation_text_input.rbi similarity index 100% rename from rbi/lib/openai/models/moderation_text_input.rbi rename to rbi/openai/models/moderation_text_input.rbi diff --git a/rbi/lib/openai/models/other_file_chunking_strategy_object.rbi b/rbi/openai/models/other_file_chunking_strategy_object.rbi similarity index 100% rename from rbi/lib/openai/models/other_file_chunking_strategy_object.rbi rename to rbi/openai/models/other_file_chunking_strategy_object.rbi diff --git a/rbi/lib/openai/models/reasoning.rbi b/rbi/openai/models/reasoning.rbi similarity index 100% rename from rbi/lib/openai/models/reasoning.rbi rename to rbi/openai/models/reasoning.rbi diff --git a/rbi/lib/openai/models/reasoning_effort.rbi b/rbi/openai/models/reasoning_effort.rbi similarity index 100% rename from rbi/lib/openai/models/reasoning_effort.rbi rename to rbi/openai/models/reasoning_effort.rbi diff --git a/rbi/lib/openai/models/response_format_json_object.rbi b/rbi/openai/models/response_format_json_object.rbi similarity index 100% rename from rbi/lib/openai/models/response_format_json_object.rbi rename to rbi/openai/models/response_format_json_object.rbi diff --git a/rbi/lib/openai/models/response_format_json_schema.rbi b/rbi/openai/models/response_format_json_schema.rbi similarity index 100% rename from rbi/lib/openai/models/response_format_json_schema.rbi rename to rbi/openai/models/response_format_json_schema.rbi diff --git a/rbi/lib/openai/models/response_format_text.rbi b/rbi/openai/models/response_format_text.rbi similarity index 100% rename from rbi/lib/openai/models/response_format_text.rbi rename to rbi/openai/models/response_format_text.rbi diff --git a/rbi/lib/openai/models/responses/computer_tool.rbi b/rbi/openai/models/responses/computer_tool.rbi similarity index 100% rename from rbi/lib/openai/models/responses/computer_tool.rbi rename to rbi/openai/models/responses/computer_tool.rbi diff --git a/rbi/lib/openai/models/responses/easy_input_message.rbi b/rbi/openai/models/responses/easy_input_message.rbi similarity index 100% rename from rbi/lib/openai/models/responses/easy_input_message.rbi rename to rbi/openai/models/responses/easy_input_message.rbi diff --git a/rbi/lib/openai/models/responses/file_search_tool.rbi b/rbi/openai/models/responses/file_search_tool.rbi similarity index 100% rename from rbi/lib/openai/models/responses/file_search_tool.rbi rename to rbi/openai/models/responses/file_search_tool.rbi diff --git a/rbi/lib/openai/models/responses/function_tool.rbi b/rbi/openai/models/responses/function_tool.rbi similarity index 100% rename from rbi/lib/openai/models/responses/function_tool.rbi rename to rbi/openai/models/responses/function_tool.rbi diff --git a/rbi/lib/openai/models/responses/input_item_list_params.rbi b/rbi/openai/models/responses/input_item_list_params.rbi similarity index 100% rename from rbi/lib/openai/models/responses/input_item_list_params.rbi rename to rbi/openai/models/responses/input_item_list_params.rbi diff --git a/rbi/lib/openai/models/responses/response.rbi b/rbi/openai/models/responses/response.rbi similarity index 100% rename from rbi/lib/openai/models/responses/response.rbi rename to rbi/openai/models/responses/response.rbi diff --git a/rbi/lib/openai/models/responses/response_audio_delta_event.rbi b/rbi/openai/models/responses/response_audio_delta_event.rbi similarity index 100% rename from rbi/lib/openai/models/responses/response_audio_delta_event.rbi rename to rbi/openai/models/responses/response_audio_delta_event.rbi diff --git a/rbi/lib/openai/models/responses/response_audio_done_event.rbi b/rbi/openai/models/responses/response_audio_done_event.rbi similarity index 100% rename from rbi/lib/openai/models/responses/response_audio_done_event.rbi rename to rbi/openai/models/responses/response_audio_done_event.rbi diff --git a/rbi/lib/openai/models/responses/response_audio_transcript_delta_event.rbi b/rbi/openai/models/responses/response_audio_transcript_delta_event.rbi similarity index 100% rename from rbi/lib/openai/models/responses/response_audio_transcript_delta_event.rbi rename to rbi/openai/models/responses/response_audio_transcript_delta_event.rbi diff --git a/rbi/lib/openai/models/responses/response_audio_transcript_done_event.rbi b/rbi/openai/models/responses/response_audio_transcript_done_event.rbi similarity index 100% rename from rbi/lib/openai/models/responses/response_audio_transcript_done_event.rbi rename to rbi/openai/models/responses/response_audio_transcript_done_event.rbi diff --git a/rbi/lib/openai/models/responses/response_code_interpreter_call_code_delta_event.rbi b/rbi/openai/models/responses/response_code_interpreter_call_code_delta_event.rbi similarity index 100% rename from rbi/lib/openai/models/responses/response_code_interpreter_call_code_delta_event.rbi rename to rbi/openai/models/responses/response_code_interpreter_call_code_delta_event.rbi diff --git a/rbi/lib/openai/models/responses/response_code_interpreter_call_code_done_event.rbi b/rbi/openai/models/responses/response_code_interpreter_call_code_done_event.rbi similarity index 100% rename from rbi/lib/openai/models/responses/response_code_interpreter_call_code_done_event.rbi rename to rbi/openai/models/responses/response_code_interpreter_call_code_done_event.rbi diff --git a/rbi/lib/openai/models/responses/response_code_interpreter_call_completed_event.rbi b/rbi/openai/models/responses/response_code_interpreter_call_completed_event.rbi similarity index 100% rename from rbi/lib/openai/models/responses/response_code_interpreter_call_completed_event.rbi rename to rbi/openai/models/responses/response_code_interpreter_call_completed_event.rbi diff --git a/rbi/lib/openai/models/responses/response_code_interpreter_call_in_progress_event.rbi b/rbi/openai/models/responses/response_code_interpreter_call_in_progress_event.rbi similarity index 100% rename from rbi/lib/openai/models/responses/response_code_interpreter_call_in_progress_event.rbi rename to rbi/openai/models/responses/response_code_interpreter_call_in_progress_event.rbi diff --git a/rbi/lib/openai/models/responses/response_code_interpreter_call_interpreting_event.rbi b/rbi/openai/models/responses/response_code_interpreter_call_interpreting_event.rbi similarity index 100% rename from rbi/lib/openai/models/responses/response_code_interpreter_call_interpreting_event.rbi rename to rbi/openai/models/responses/response_code_interpreter_call_interpreting_event.rbi diff --git a/rbi/lib/openai/models/responses/response_code_interpreter_tool_call.rbi b/rbi/openai/models/responses/response_code_interpreter_tool_call.rbi similarity index 100% rename from rbi/lib/openai/models/responses/response_code_interpreter_tool_call.rbi rename to rbi/openai/models/responses/response_code_interpreter_tool_call.rbi diff --git a/rbi/lib/openai/models/responses/response_completed_event.rbi b/rbi/openai/models/responses/response_completed_event.rbi similarity index 100% rename from rbi/lib/openai/models/responses/response_completed_event.rbi rename to rbi/openai/models/responses/response_completed_event.rbi diff --git a/rbi/lib/openai/models/responses/response_computer_tool_call.rbi b/rbi/openai/models/responses/response_computer_tool_call.rbi similarity index 100% rename from rbi/lib/openai/models/responses/response_computer_tool_call.rbi rename to rbi/openai/models/responses/response_computer_tool_call.rbi diff --git a/rbi/lib/openai/models/responses/response_computer_tool_call_output_item.rbi b/rbi/openai/models/responses/response_computer_tool_call_output_item.rbi similarity index 100% rename from rbi/lib/openai/models/responses/response_computer_tool_call_output_item.rbi rename to rbi/openai/models/responses/response_computer_tool_call_output_item.rbi diff --git a/rbi/lib/openai/models/responses/response_computer_tool_call_output_screenshot.rbi b/rbi/openai/models/responses/response_computer_tool_call_output_screenshot.rbi similarity index 100% rename from rbi/lib/openai/models/responses/response_computer_tool_call_output_screenshot.rbi rename to rbi/openai/models/responses/response_computer_tool_call_output_screenshot.rbi diff --git a/rbi/lib/openai/models/responses/response_content.rbi b/rbi/openai/models/responses/response_content.rbi similarity index 100% rename from rbi/lib/openai/models/responses/response_content.rbi rename to rbi/openai/models/responses/response_content.rbi diff --git a/rbi/lib/openai/models/responses/response_content_part_added_event.rbi b/rbi/openai/models/responses/response_content_part_added_event.rbi similarity index 100% rename from rbi/lib/openai/models/responses/response_content_part_added_event.rbi rename to rbi/openai/models/responses/response_content_part_added_event.rbi diff --git a/rbi/lib/openai/models/responses/response_content_part_done_event.rbi b/rbi/openai/models/responses/response_content_part_done_event.rbi similarity index 100% rename from rbi/lib/openai/models/responses/response_content_part_done_event.rbi rename to rbi/openai/models/responses/response_content_part_done_event.rbi diff --git a/rbi/lib/openai/models/responses/response_create_params.rbi b/rbi/openai/models/responses/response_create_params.rbi similarity index 100% rename from rbi/lib/openai/models/responses/response_create_params.rbi rename to rbi/openai/models/responses/response_create_params.rbi diff --git a/rbi/lib/openai/models/responses/response_created_event.rbi b/rbi/openai/models/responses/response_created_event.rbi similarity index 100% rename from rbi/lib/openai/models/responses/response_created_event.rbi rename to rbi/openai/models/responses/response_created_event.rbi diff --git a/rbi/lib/openai/models/responses/response_delete_params.rbi b/rbi/openai/models/responses/response_delete_params.rbi similarity index 100% rename from rbi/lib/openai/models/responses/response_delete_params.rbi rename to rbi/openai/models/responses/response_delete_params.rbi diff --git a/rbi/lib/openai/models/responses/response_error.rbi b/rbi/openai/models/responses/response_error.rbi similarity index 100% rename from rbi/lib/openai/models/responses/response_error.rbi rename to rbi/openai/models/responses/response_error.rbi diff --git a/rbi/lib/openai/models/responses/response_error_event.rbi b/rbi/openai/models/responses/response_error_event.rbi similarity index 100% rename from rbi/lib/openai/models/responses/response_error_event.rbi rename to rbi/openai/models/responses/response_error_event.rbi diff --git a/rbi/lib/openai/models/responses/response_failed_event.rbi b/rbi/openai/models/responses/response_failed_event.rbi similarity index 100% rename from rbi/lib/openai/models/responses/response_failed_event.rbi rename to rbi/openai/models/responses/response_failed_event.rbi diff --git a/rbi/lib/openai/models/responses/response_file_search_call_completed_event.rbi b/rbi/openai/models/responses/response_file_search_call_completed_event.rbi similarity index 100% rename from rbi/lib/openai/models/responses/response_file_search_call_completed_event.rbi rename to rbi/openai/models/responses/response_file_search_call_completed_event.rbi diff --git a/rbi/lib/openai/models/responses/response_file_search_call_in_progress_event.rbi b/rbi/openai/models/responses/response_file_search_call_in_progress_event.rbi similarity index 100% rename from rbi/lib/openai/models/responses/response_file_search_call_in_progress_event.rbi rename to rbi/openai/models/responses/response_file_search_call_in_progress_event.rbi diff --git a/rbi/lib/openai/models/responses/response_file_search_call_searching_event.rbi b/rbi/openai/models/responses/response_file_search_call_searching_event.rbi similarity index 100% rename from rbi/lib/openai/models/responses/response_file_search_call_searching_event.rbi rename to rbi/openai/models/responses/response_file_search_call_searching_event.rbi diff --git a/rbi/lib/openai/models/responses/response_file_search_tool_call.rbi b/rbi/openai/models/responses/response_file_search_tool_call.rbi similarity index 100% rename from rbi/lib/openai/models/responses/response_file_search_tool_call.rbi rename to rbi/openai/models/responses/response_file_search_tool_call.rbi diff --git a/rbi/lib/openai/models/responses/response_format_text_config.rbi b/rbi/openai/models/responses/response_format_text_config.rbi similarity index 100% rename from rbi/lib/openai/models/responses/response_format_text_config.rbi rename to rbi/openai/models/responses/response_format_text_config.rbi diff --git a/rbi/lib/openai/models/responses/response_format_text_json_schema_config.rbi b/rbi/openai/models/responses/response_format_text_json_schema_config.rbi similarity index 100% rename from rbi/lib/openai/models/responses/response_format_text_json_schema_config.rbi rename to rbi/openai/models/responses/response_format_text_json_schema_config.rbi diff --git a/rbi/lib/openai/models/responses/response_function_call_arguments_delta_event.rbi b/rbi/openai/models/responses/response_function_call_arguments_delta_event.rbi similarity index 100% rename from rbi/lib/openai/models/responses/response_function_call_arguments_delta_event.rbi rename to rbi/openai/models/responses/response_function_call_arguments_delta_event.rbi diff --git a/rbi/lib/openai/models/responses/response_function_call_arguments_done_event.rbi b/rbi/openai/models/responses/response_function_call_arguments_done_event.rbi similarity index 100% rename from rbi/lib/openai/models/responses/response_function_call_arguments_done_event.rbi rename to rbi/openai/models/responses/response_function_call_arguments_done_event.rbi diff --git a/rbi/lib/openai/models/responses/response_function_tool_call.rbi b/rbi/openai/models/responses/response_function_tool_call.rbi similarity index 100% rename from rbi/lib/openai/models/responses/response_function_tool_call.rbi rename to rbi/openai/models/responses/response_function_tool_call.rbi diff --git a/rbi/lib/openai/models/responses/response_function_tool_call_item.rbi b/rbi/openai/models/responses/response_function_tool_call_item.rbi similarity index 100% rename from rbi/lib/openai/models/responses/response_function_tool_call_item.rbi rename to rbi/openai/models/responses/response_function_tool_call_item.rbi diff --git a/rbi/lib/openai/models/responses/response_function_tool_call_output_item.rbi b/rbi/openai/models/responses/response_function_tool_call_output_item.rbi similarity index 100% rename from rbi/lib/openai/models/responses/response_function_tool_call_output_item.rbi rename to rbi/openai/models/responses/response_function_tool_call_output_item.rbi diff --git a/rbi/lib/openai/models/responses/response_function_web_search.rbi b/rbi/openai/models/responses/response_function_web_search.rbi similarity index 100% rename from rbi/lib/openai/models/responses/response_function_web_search.rbi rename to rbi/openai/models/responses/response_function_web_search.rbi diff --git a/rbi/lib/openai/models/responses/response_in_progress_event.rbi b/rbi/openai/models/responses/response_in_progress_event.rbi similarity index 100% rename from rbi/lib/openai/models/responses/response_in_progress_event.rbi rename to rbi/openai/models/responses/response_in_progress_event.rbi diff --git a/rbi/lib/openai/models/responses/response_includable.rbi b/rbi/openai/models/responses/response_includable.rbi similarity index 100% rename from rbi/lib/openai/models/responses/response_includable.rbi rename to rbi/openai/models/responses/response_includable.rbi diff --git a/rbi/lib/openai/models/responses/response_incomplete_event.rbi b/rbi/openai/models/responses/response_incomplete_event.rbi similarity index 100% rename from rbi/lib/openai/models/responses/response_incomplete_event.rbi rename to rbi/openai/models/responses/response_incomplete_event.rbi diff --git a/rbi/lib/openai/models/responses/response_input.rbi b/rbi/openai/models/responses/response_input.rbi similarity index 100% rename from rbi/lib/openai/models/responses/response_input.rbi rename to rbi/openai/models/responses/response_input.rbi diff --git a/rbi/lib/openai/models/responses/response_input_audio.rbi b/rbi/openai/models/responses/response_input_audio.rbi similarity index 100% rename from rbi/lib/openai/models/responses/response_input_audio.rbi rename to rbi/openai/models/responses/response_input_audio.rbi diff --git a/rbi/lib/openai/models/responses/response_input_content.rbi b/rbi/openai/models/responses/response_input_content.rbi similarity index 100% rename from rbi/lib/openai/models/responses/response_input_content.rbi rename to rbi/openai/models/responses/response_input_content.rbi diff --git a/rbi/lib/openai/models/responses/response_input_file.rbi b/rbi/openai/models/responses/response_input_file.rbi similarity index 100% rename from rbi/lib/openai/models/responses/response_input_file.rbi rename to rbi/openai/models/responses/response_input_file.rbi diff --git a/rbi/lib/openai/models/responses/response_input_image.rbi b/rbi/openai/models/responses/response_input_image.rbi similarity index 100% rename from rbi/lib/openai/models/responses/response_input_image.rbi rename to rbi/openai/models/responses/response_input_image.rbi diff --git a/rbi/lib/openai/models/responses/response_input_item.rbi b/rbi/openai/models/responses/response_input_item.rbi similarity index 100% rename from rbi/lib/openai/models/responses/response_input_item.rbi rename to rbi/openai/models/responses/response_input_item.rbi diff --git a/rbi/lib/openai/models/responses/response_input_message_content_list.rbi b/rbi/openai/models/responses/response_input_message_content_list.rbi similarity index 100% rename from rbi/lib/openai/models/responses/response_input_message_content_list.rbi rename to rbi/openai/models/responses/response_input_message_content_list.rbi diff --git a/rbi/lib/openai/models/responses/response_input_message_item.rbi b/rbi/openai/models/responses/response_input_message_item.rbi similarity index 100% rename from rbi/lib/openai/models/responses/response_input_message_item.rbi rename to rbi/openai/models/responses/response_input_message_item.rbi diff --git a/rbi/lib/openai/models/responses/response_input_text.rbi b/rbi/openai/models/responses/response_input_text.rbi similarity index 100% rename from rbi/lib/openai/models/responses/response_input_text.rbi rename to rbi/openai/models/responses/response_input_text.rbi diff --git a/rbi/lib/openai/models/responses/response_item.rbi b/rbi/openai/models/responses/response_item.rbi similarity index 100% rename from rbi/lib/openai/models/responses/response_item.rbi rename to rbi/openai/models/responses/response_item.rbi diff --git a/rbi/lib/openai/models/responses/response_item_list.rbi b/rbi/openai/models/responses/response_item_list.rbi similarity index 100% rename from rbi/lib/openai/models/responses/response_item_list.rbi rename to rbi/openai/models/responses/response_item_list.rbi diff --git a/rbi/lib/openai/models/responses/response_output_audio.rbi b/rbi/openai/models/responses/response_output_audio.rbi similarity index 100% rename from rbi/lib/openai/models/responses/response_output_audio.rbi rename to rbi/openai/models/responses/response_output_audio.rbi diff --git a/rbi/lib/openai/models/responses/response_output_item.rbi b/rbi/openai/models/responses/response_output_item.rbi similarity index 100% rename from rbi/lib/openai/models/responses/response_output_item.rbi rename to rbi/openai/models/responses/response_output_item.rbi diff --git a/rbi/lib/openai/models/responses/response_output_item_added_event.rbi b/rbi/openai/models/responses/response_output_item_added_event.rbi similarity index 100% rename from rbi/lib/openai/models/responses/response_output_item_added_event.rbi rename to rbi/openai/models/responses/response_output_item_added_event.rbi diff --git a/rbi/lib/openai/models/responses/response_output_item_done_event.rbi b/rbi/openai/models/responses/response_output_item_done_event.rbi similarity index 100% rename from rbi/lib/openai/models/responses/response_output_item_done_event.rbi rename to rbi/openai/models/responses/response_output_item_done_event.rbi diff --git a/rbi/lib/openai/models/responses/response_output_message.rbi b/rbi/openai/models/responses/response_output_message.rbi similarity index 100% rename from rbi/lib/openai/models/responses/response_output_message.rbi rename to rbi/openai/models/responses/response_output_message.rbi diff --git a/rbi/lib/openai/models/responses/response_output_refusal.rbi b/rbi/openai/models/responses/response_output_refusal.rbi similarity index 100% rename from rbi/lib/openai/models/responses/response_output_refusal.rbi rename to rbi/openai/models/responses/response_output_refusal.rbi diff --git a/rbi/lib/openai/models/responses/response_output_text.rbi b/rbi/openai/models/responses/response_output_text.rbi similarity index 100% rename from rbi/lib/openai/models/responses/response_output_text.rbi rename to rbi/openai/models/responses/response_output_text.rbi diff --git a/rbi/lib/openai/models/responses/response_reasoning_item.rbi b/rbi/openai/models/responses/response_reasoning_item.rbi similarity index 100% rename from rbi/lib/openai/models/responses/response_reasoning_item.rbi rename to rbi/openai/models/responses/response_reasoning_item.rbi diff --git a/rbi/lib/openai/models/responses/response_reasoning_summary_part_added_event.rbi b/rbi/openai/models/responses/response_reasoning_summary_part_added_event.rbi similarity index 100% rename from rbi/lib/openai/models/responses/response_reasoning_summary_part_added_event.rbi rename to rbi/openai/models/responses/response_reasoning_summary_part_added_event.rbi diff --git a/rbi/lib/openai/models/responses/response_reasoning_summary_part_done_event.rbi b/rbi/openai/models/responses/response_reasoning_summary_part_done_event.rbi similarity index 100% rename from rbi/lib/openai/models/responses/response_reasoning_summary_part_done_event.rbi rename to rbi/openai/models/responses/response_reasoning_summary_part_done_event.rbi diff --git a/rbi/lib/openai/models/responses/response_reasoning_summary_text_delta_event.rbi b/rbi/openai/models/responses/response_reasoning_summary_text_delta_event.rbi similarity index 100% rename from rbi/lib/openai/models/responses/response_reasoning_summary_text_delta_event.rbi rename to rbi/openai/models/responses/response_reasoning_summary_text_delta_event.rbi diff --git a/rbi/lib/openai/models/responses/response_reasoning_summary_text_done_event.rbi b/rbi/openai/models/responses/response_reasoning_summary_text_done_event.rbi similarity index 100% rename from rbi/lib/openai/models/responses/response_reasoning_summary_text_done_event.rbi rename to rbi/openai/models/responses/response_reasoning_summary_text_done_event.rbi diff --git a/rbi/lib/openai/models/responses/response_refusal_delta_event.rbi b/rbi/openai/models/responses/response_refusal_delta_event.rbi similarity index 100% rename from rbi/lib/openai/models/responses/response_refusal_delta_event.rbi rename to rbi/openai/models/responses/response_refusal_delta_event.rbi diff --git a/rbi/lib/openai/models/responses/response_refusal_done_event.rbi b/rbi/openai/models/responses/response_refusal_done_event.rbi similarity index 100% rename from rbi/lib/openai/models/responses/response_refusal_done_event.rbi rename to rbi/openai/models/responses/response_refusal_done_event.rbi diff --git a/rbi/lib/openai/models/responses/response_retrieve_params.rbi b/rbi/openai/models/responses/response_retrieve_params.rbi similarity index 100% rename from rbi/lib/openai/models/responses/response_retrieve_params.rbi rename to rbi/openai/models/responses/response_retrieve_params.rbi diff --git a/rbi/lib/openai/models/responses/response_status.rbi b/rbi/openai/models/responses/response_status.rbi similarity index 100% rename from rbi/lib/openai/models/responses/response_status.rbi rename to rbi/openai/models/responses/response_status.rbi diff --git a/rbi/lib/openai/models/responses/response_stream_event.rbi b/rbi/openai/models/responses/response_stream_event.rbi similarity index 100% rename from rbi/lib/openai/models/responses/response_stream_event.rbi rename to rbi/openai/models/responses/response_stream_event.rbi diff --git a/rbi/lib/openai/models/responses/response_text_annotation_delta_event.rbi b/rbi/openai/models/responses/response_text_annotation_delta_event.rbi similarity index 100% rename from rbi/lib/openai/models/responses/response_text_annotation_delta_event.rbi rename to rbi/openai/models/responses/response_text_annotation_delta_event.rbi diff --git a/rbi/lib/openai/models/responses/response_text_config.rbi b/rbi/openai/models/responses/response_text_config.rbi similarity index 100% rename from rbi/lib/openai/models/responses/response_text_config.rbi rename to rbi/openai/models/responses/response_text_config.rbi diff --git a/rbi/lib/openai/models/responses/response_text_delta_event.rbi b/rbi/openai/models/responses/response_text_delta_event.rbi similarity index 100% rename from rbi/lib/openai/models/responses/response_text_delta_event.rbi rename to rbi/openai/models/responses/response_text_delta_event.rbi diff --git a/rbi/lib/openai/models/responses/response_text_done_event.rbi b/rbi/openai/models/responses/response_text_done_event.rbi similarity index 100% rename from rbi/lib/openai/models/responses/response_text_done_event.rbi rename to rbi/openai/models/responses/response_text_done_event.rbi diff --git a/rbi/lib/openai/models/responses/response_usage.rbi b/rbi/openai/models/responses/response_usage.rbi similarity index 100% rename from rbi/lib/openai/models/responses/response_usage.rbi rename to rbi/openai/models/responses/response_usage.rbi diff --git a/rbi/lib/openai/models/responses/response_web_search_call_completed_event.rbi b/rbi/openai/models/responses/response_web_search_call_completed_event.rbi similarity index 100% rename from rbi/lib/openai/models/responses/response_web_search_call_completed_event.rbi rename to rbi/openai/models/responses/response_web_search_call_completed_event.rbi diff --git a/rbi/lib/openai/models/responses/response_web_search_call_in_progress_event.rbi b/rbi/openai/models/responses/response_web_search_call_in_progress_event.rbi similarity index 100% rename from rbi/lib/openai/models/responses/response_web_search_call_in_progress_event.rbi rename to rbi/openai/models/responses/response_web_search_call_in_progress_event.rbi diff --git a/rbi/lib/openai/models/responses/response_web_search_call_searching_event.rbi b/rbi/openai/models/responses/response_web_search_call_searching_event.rbi similarity index 100% rename from rbi/lib/openai/models/responses/response_web_search_call_searching_event.rbi rename to rbi/openai/models/responses/response_web_search_call_searching_event.rbi diff --git a/rbi/lib/openai/models/responses/tool.rbi b/rbi/openai/models/responses/tool.rbi similarity index 100% rename from rbi/lib/openai/models/responses/tool.rbi rename to rbi/openai/models/responses/tool.rbi diff --git a/rbi/lib/openai/models/responses/tool_choice_function.rbi b/rbi/openai/models/responses/tool_choice_function.rbi similarity index 100% rename from rbi/lib/openai/models/responses/tool_choice_function.rbi rename to rbi/openai/models/responses/tool_choice_function.rbi diff --git a/rbi/lib/openai/models/responses/tool_choice_options.rbi b/rbi/openai/models/responses/tool_choice_options.rbi similarity index 100% rename from rbi/lib/openai/models/responses/tool_choice_options.rbi rename to rbi/openai/models/responses/tool_choice_options.rbi diff --git a/rbi/lib/openai/models/responses/tool_choice_types.rbi b/rbi/openai/models/responses/tool_choice_types.rbi similarity index 100% rename from rbi/lib/openai/models/responses/tool_choice_types.rbi rename to rbi/openai/models/responses/tool_choice_types.rbi diff --git a/rbi/lib/openai/models/responses/web_search_tool.rbi b/rbi/openai/models/responses/web_search_tool.rbi similarity index 100% rename from rbi/lib/openai/models/responses/web_search_tool.rbi rename to rbi/openai/models/responses/web_search_tool.rbi diff --git a/rbi/lib/openai/models/responses_model.rbi b/rbi/openai/models/responses_model.rbi similarity index 100% rename from rbi/lib/openai/models/responses_model.rbi rename to rbi/openai/models/responses_model.rbi diff --git a/rbi/lib/openai/models/static_file_chunking_strategy.rbi b/rbi/openai/models/static_file_chunking_strategy.rbi similarity index 100% rename from rbi/lib/openai/models/static_file_chunking_strategy.rbi rename to rbi/openai/models/static_file_chunking_strategy.rbi diff --git a/rbi/lib/openai/models/static_file_chunking_strategy_object.rbi b/rbi/openai/models/static_file_chunking_strategy_object.rbi similarity index 100% rename from rbi/lib/openai/models/static_file_chunking_strategy_object.rbi rename to rbi/openai/models/static_file_chunking_strategy_object.rbi diff --git a/rbi/lib/openai/models/static_file_chunking_strategy_object_param.rbi b/rbi/openai/models/static_file_chunking_strategy_object_param.rbi similarity index 100% rename from rbi/lib/openai/models/static_file_chunking_strategy_object_param.rbi rename to rbi/openai/models/static_file_chunking_strategy_object_param.rbi diff --git a/rbi/lib/openai/models/upload.rbi b/rbi/openai/models/upload.rbi similarity index 100% rename from rbi/lib/openai/models/upload.rbi rename to rbi/openai/models/upload.rbi diff --git a/rbi/lib/openai/models/upload_cancel_params.rbi b/rbi/openai/models/upload_cancel_params.rbi similarity index 100% rename from rbi/lib/openai/models/upload_cancel_params.rbi rename to rbi/openai/models/upload_cancel_params.rbi diff --git a/rbi/lib/openai/models/upload_complete_params.rbi b/rbi/openai/models/upload_complete_params.rbi similarity index 100% rename from rbi/lib/openai/models/upload_complete_params.rbi rename to rbi/openai/models/upload_complete_params.rbi diff --git a/rbi/lib/openai/models/upload_create_params.rbi b/rbi/openai/models/upload_create_params.rbi similarity index 100% rename from rbi/lib/openai/models/upload_create_params.rbi rename to rbi/openai/models/upload_create_params.rbi diff --git a/rbi/lib/openai/models/uploads/part_create_params.rbi b/rbi/openai/models/uploads/part_create_params.rbi similarity index 100% rename from rbi/lib/openai/models/uploads/part_create_params.rbi rename to rbi/openai/models/uploads/part_create_params.rbi diff --git a/rbi/lib/openai/models/uploads/upload_part.rbi b/rbi/openai/models/uploads/upload_part.rbi similarity index 100% rename from rbi/lib/openai/models/uploads/upload_part.rbi rename to rbi/openai/models/uploads/upload_part.rbi diff --git a/rbi/lib/openai/models/vector_store.rbi b/rbi/openai/models/vector_store.rbi similarity index 100% rename from rbi/lib/openai/models/vector_store.rbi rename to rbi/openai/models/vector_store.rbi diff --git a/rbi/lib/openai/models/vector_store_create_params.rbi b/rbi/openai/models/vector_store_create_params.rbi similarity index 100% rename from rbi/lib/openai/models/vector_store_create_params.rbi rename to rbi/openai/models/vector_store_create_params.rbi diff --git a/rbi/lib/openai/models/vector_store_delete_params.rbi b/rbi/openai/models/vector_store_delete_params.rbi similarity index 100% rename from rbi/lib/openai/models/vector_store_delete_params.rbi rename to rbi/openai/models/vector_store_delete_params.rbi diff --git a/rbi/lib/openai/models/vector_store_deleted.rbi b/rbi/openai/models/vector_store_deleted.rbi similarity index 100% rename from rbi/lib/openai/models/vector_store_deleted.rbi rename to rbi/openai/models/vector_store_deleted.rbi diff --git a/rbi/lib/openai/models/vector_store_list_params.rbi b/rbi/openai/models/vector_store_list_params.rbi similarity index 100% rename from rbi/lib/openai/models/vector_store_list_params.rbi rename to rbi/openai/models/vector_store_list_params.rbi diff --git a/rbi/lib/openai/models/vector_store_retrieve_params.rbi b/rbi/openai/models/vector_store_retrieve_params.rbi similarity index 100% rename from rbi/lib/openai/models/vector_store_retrieve_params.rbi rename to rbi/openai/models/vector_store_retrieve_params.rbi diff --git a/rbi/lib/openai/models/vector_store_search_params.rbi b/rbi/openai/models/vector_store_search_params.rbi similarity index 100% rename from rbi/lib/openai/models/vector_store_search_params.rbi rename to rbi/openai/models/vector_store_search_params.rbi diff --git a/rbi/lib/openai/models/vector_store_search_response.rbi b/rbi/openai/models/vector_store_search_response.rbi similarity index 100% rename from rbi/lib/openai/models/vector_store_search_response.rbi rename to rbi/openai/models/vector_store_search_response.rbi diff --git a/rbi/lib/openai/models/vector_store_update_params.rbi b/rbi/openai/models/vector_store_update_params.rbi similarity index 100% rename from rbi/lib/openai/models/vector_store_update_params.rbi rename to rbi/openai/models/vector_store_update_params.rbi diff --git a/rbi/lib/openai/models/vector_stores/file_batch_cancel_params.rbi b/rbi/openai/models/vector_stores/file_batch_cancel_params.rbi similarity index 100% rename from rbi/lib/openai/models/vector_stores/file_batch_cancel_params.rbi rename to rbi/openai/models/vector_stores/file_batch_cancel_params.rbi diff --git a/rbi/lib/openai/models/vector_stores/file_batch_create_params.rbi b/rbi/openai/models/vector_stores/file_batch_create_params.rbi similarity index 100% rename from rbi/lib/openai/models/vector_stores/file_batch_create_params.rbi rename to rbi/openai/models/vector_stores/file_batch_create_params.rbi diff --git a/rbi/lib/openai/models/vector_stores/file_batch_list_files_params.rbi b/rbi/openai/models/vector_stores/file_batch_list_files_params.rbi similarity index 100% rename from rbi/lib/openai/models/vector_stores/file_batch_list_files_params.rbi rename to rbi/openai/models/vector_stores/file_batch_list_files_params.rbi diff --git a/rbi/lib/openai/models/vector_stores/file_batch_retrieve_params.rbi b/rbi/openai/models/vector_stores/file_batch_retrieve_params.rbi similarity index 100% rename from rbi/lib/openai/models/vector_stores/file_batch_retrieve_params.rbi rename to rbi/openai/models/vector_stores/file_batch_retrieve_params.rbi diff --git a/rbi/lib/openai/models/vector_stores/file_content_params.rbi b/rbi/openai/models/vector_stores/file_content_params.rbi similarity index 100% rename from rbi/lib/openai/models/vector_stores/file_content_params.rbi rename to rbi/openai/models/vector_stores/file_content_params.rbi diff --git a/rbi/lib/openai/models/vector_stores/file_content_response.rbi b/rbi/openai/models/vector_stores/file_content_response.rbi similarity index 100% rename from rbi/lib/openai/models/vector_stores/file_content_response.rbi rename to rbi/openai/models/vector_stores/file_content_response.rbi diff --git a/rbi/lib/openai/models/vector_stores/file_create_params.rbi b/rbi/openai/models/vector_stores/file_create_params.rbi similarity index 100% rename from rbi/lib/openai/models/vector_stores/file_create_params.rbi rename to rbi/openai/models/vector_stores/file_create_params.rbi diff --git a/rbi/lib/openai/models/vector_stores/file_delete_params.rbi b/rbi/openai/models/vector_stores/file_delete_params.rbi similarity index 100% rename from rbi/lib/openai/models/vector_stores/file_delete_params.rbi rename to rbi/openai/models/vector_stores/file_delete_params.rbi diff --git a/rbi/lib/openai/models/vector_stores/file_list_params.rbi b/rbi/openai/models/vector_stores/file_list_params.rbi similarity index 100% rename from rbi/lib/openai/models/vector_stores/file_list_params.rbi rename to rbi/openai/models/vector_stores/file_list_params.rbi diff --git a/rbi/lib/openai/models/vector_stores/file_retrieve_params.rbi b/rbi/openai/models/vector_stores/file_retrieve_params.rbi similarity index 100% rename from rbi/lib/openai/models/vector_stores/file_retrieve_params.rbi rename to rbi/openai/models/vector_stores/file_retrieve_params.rbi diff --git a/rbi/lib/openai/models/vector_stores/file_update_params.rbi b/rbi/openai/models/vector_stores/file_update_params.rbi similarity index 100% rename from rbi/lib/openai/models/vector_stores/file_update_params.rbi rename to rbi/openai/models/vector_stores/file_update_params.rbi diff --git a/rbi/lib/openai/models/vector_stores/vector_store_file.rbi b/rbi/openai/models/vector_stores/vector_store_file.rbi similarity index 100% rename from rbi/lib/openai/models/vector_stores/vector_store_file.rbi rename to rbi/openai/models/vector_stores/vector_store_file.rbi diff --git a/rbi/lib/openai/models/vector_stores/vector_store_file_batch.rbi b/rbi/openai/models/vector_stores/vector_store_file_batch.rbi similarity index 100% rename from rbi/lib/openai/models/vector_stores/vector_store_file_batch.rbi rename to rbi/openai/models/vector_stores/vector_store_file_batch.rbi diff --git a/rbi/lib/openai/models/vector_stores/vector_store_file_deleted.rbi b/rbi/openai/models/vector_stores/vector_store_file_deleted.rbi similarity index 100% rename from rbi/lib/openai/models/vector_stores/vector_store_file_deleted.rbi rename to rbi/openai/models/vector_stores/vector_store_file_deleted.rbi diff --git a/rbi/lib/openai/request_options.rbi b/rbi/openai/request_options.rbi similarity index 100% rename from rbi/lib/openai/request_options.rbi rename to rbi/openai/request_options.rbi diff --git a/rbi/lib/openai/resources/audio.rbi b/rbi/openai/resources/audio.rbi similarity index 100% rename from rbi/lib/openai/resources/audio.rbi rename to rbi/openai/resources/audio.rbi diff --git a/rbi/lib/openai/resources/audio/speech.rbi b/rbi/openai/resources/audio/speech.rbi similarity index 100% rename from rbi/lib/openai/resources/audio/speech.rbi rename to rbi/openai/resources/audio/speech.rbi diff --git a/rbi/lib/openai/resources/audio/transcriptions.rbi b/rbi/openai/resources/audio/transcriptions.rbi similarity index 100% rename from rbi/lib/openai/resources/audio/transcriptions.rbi rename to rbi/openai/resources/audio/transcriptions.rbi diff --git a/rbi/lib/openai/resources/audio/translations.rbi b/rbi/openai/resources/audio/translations.rbi similarity index 100% rename from rbi/lib/openai/resources/audio/translations.rbi rename to rbi/openai/resources/audio/translations.rbi diff --git a/rbi/lib/openai/resources/batches.rbi b/rbi/openai/resources/batches.rbi similarity index 100% rename from rbi/lib/openai/resources/batches.rbi rename to rbi/openai/resources/batches.rbi diff --git a/rbi/lib/openai/resources/beta.rbi b/rbi/openai/resources/beta.rbi similarity index 100% rename from rbi/lib/openai/resources/beta.rbi rename to rbi/openai/resources/beta.rbi diff --git a/rbi/lib/openai/resources/beta/assistants.rbi b/rbi/openai/resources/beta/assistants.rbi similarity index 100% rename from rbi/lib/openai/resources/beta/assistants.rbi rename to rbi/openai/resources/beta/assistants.rbi diff --git a/rbi/lib/openai/resources/beta/threads.rbi b/rbi/openai/resources/beta/threads.rbi similarity index 100% rename from rbi/lib/openai/resources/beta/threads.rbi rename to rbi/openai/resources/beta/threads.rbi diff --git a/rbi/lib/openai/resources/beta/threads/messages.rbi b/rbi/openai/resources/beta/threads/messages.rbi similarity index 100% rename from rbi/lib/openai/resources/beta/threads/messages.rbi rename to rbi/openai/resources/beta/threads/messages.rbi diff --git a/rbi/lib/openai/resources/beta/threads/runs.rbi b/rbi/openai/resources/beta/threads/runs.rbi similarity index 100% rename from rbi/lib/openai/resources/beta/threads/runs.rbi rename to rbi/openai/resources/beta/threads/runs.rbi diff --git a/rbi/lib/openai/resources/beta/threads/runs/steps.rbi b/rbi/openai/resources/beta/threads/runs/steps.rbi similarity index 100% rename from rbi/lib/openai/resources/beta/threads/runs/steps.rbi rename to rbi/openai/resources/beta/threads/runs/steps.rbi diff --git a/rbi/lib/openai/resources/chat.rbi b/rbi/openai/resources/chat.rbi similarity index 100% rename from rbi/lib/openai/resources/chat.rbi rename to rbi/openai/resources/chat.rbi diff --git a/rbi/lib/openai/resources/chat/completions.rbi b/rbi/openai/resources/chat/completions.rbi similarity index 100% rename from rbi/lib/openai/resources/chat/completions.rbi rename to rbi/openai/resources/chat/completions.rbi diff --git a/rbi/lib/openai/resources/chat/completions/messages.rbi b/rbi/openai/resources/chat/completions/messages.rbi similarity index 100% rename from rbi/lib/openai/resources/chat/completions/messages.rbi rename to rbi/openai/resources/chat/completions/messages.rbi diff --git a/rbi/lib/openai/resources/completions.rbi b/rbi/openai/resources/completions.rbi similarity index 100% rename from rbi/lib/openai/resources/completions.rbi rename to rbi/openai/resources/completions.rbi diff --git a/rbi/lib/openai/resources/embeddings.rbi b/rbi/openai/resources/embeddings.rbi similarity index 100% rename from rbi/lib/openai/resources/embeddings.rbi rename to rbi/openai/resources/embeddings.rbi diff --git a/rbi/lib/openai/resources/evals.rbi b/rbi/openai/resources/evals.rbi similarity index 100% rename from rbi/lib/openai/resources/evals.rbi rename to rbi/openai/resources/evals.rbi diff --git a/rbi/lib/openai/resources/evals/runs.rbi b/rbi/openai/resources/evals/runs.rbi similarity index 100% rename from rbi/lib/openai/resources/evals/runs.rbi rename to rbi/openai/resources/evals/runs.rbi diff --git a/rbi/lib/openai/resources/evals/runs/output_items.rbi b/rbi/openai/resources/evals/runs/output_items.rbi similarity index 100% rename from rbi/lib/openai/resources/evals/runs/output_items.rbi rename to rbi/openai/resources/evals/runs/output_items.rbi diff --git a/rbi/lib/openai/resources/files.rbi b/rbi/openai/resources/files.rbi similarity index 100% rename from rbi/lib/openai/resources/files.rbi rename to rbi/openai/resources/files.rbi diff --git a/rbi/lib/openai/resources/fine_tuning.rbi b/rbi/openai/resources/fine_tuning.rbi similarity index 100% rename from rbi/lib/openai/resources/fine_tuning.rbi rename to rbi/openai/resources/fine_tuning.rbi diff --git a/rbi/lib/openai/resources/fine_tuning/checkpoints.rbi b/rbi/openai/resources/fine_tuning/checkpoints.rbi similarity index 100% rename from rbi/lib/openai/resources/fine_tuning/checkpoints.rbi rename to rbi/openai/resources/fine_tuning/checkpoints.rbi diff --git a/rbi/lib/openai/resources/fine_tuning/checkpoints/permissions.rbi b/rbi/openai/resources/fine_tuning/checkpoints/permissions.rbi similarity index 100% rename from rbi/lib/openai/resources/fine_tuning/checkpoints/permissions.rbi rename to rbi/openai/resources/fine_tuning/checkpoints/permissions.rbi diff --git a/rbi/lib/openai/resources/fine_tuning/jobs.rbi b/rbi/openai/resources/fine_tuning/jobs.rbi similarity index 100% rename from rbi/lib/openai/resources/fine_tuning/jobs.rbi rename to rbi/openai/resources/fine_tuning/jobs.rbi diff --git a/rbi/lib/openai/resources/fine_tuning/jobs/checkpoints.rbi b/rbi/openai/resources/fine_tuning/jobs/checkpoints.rbi similarity index 100% rename from rbi/lib/openai/resources/fine_tuning/jobs/checkpoints.rbi rename to rbi/openai/resources/fine_tuning/jobs/checkpoints.rbi diff --git a/rbi/lib/openai/resources/images.rbi b/rbi/openai/resources/images.rbi similarity index 100% rename from rbi/lib/openai/resources/images.rbi rename to rbi/openai/resources/images.rbi diff --git a/rbi/lib/openai/resources/models.rbi b/rbi/openai/resources/models.rbi similarity index 100% rename from rbi/lib/openai/resources/models.rbi rename to rbi/openai/resources/models.rbi diff --git a/rbi/lib/openai/resources/moderations.rbi b/rbi/openai/resources/moderations.rbi similarity index 100% rename from rbi/lib/openai/resources/moderations.rbi rename to rbi/openai/resources/moderations.rbi diff --git a/rbi/lib/openai/resources/responses.rbi b/rbi/openai/resources/responses.rbi similarity index 100% rename from rbi/lib/openai/resources/responses.rbi rename to rbi/openai/resources/responses.rbi diff --git a/rbi/lib/openai/resources/responses/input_items.rbi b/rbi/openai/resources/responses/input_items.rbi similarity index 100% rename from rbi/lib/openai/resources/responses/input_items.rbi rename to rbi/openai/resources/responses/input_items.rbi diff --git a/rbi/lib/openai/resources/uploads.rbi b/rbi/openai/resources/uploads.rbi similarity index 100% rename from rbi/lib/openai/resources/uploads.rbi rename to rbi/openai/resources/uploads.rbi diff --git a/rbi/lib/openai/resources/uploads/parts.rbi b/rbi/openai/resources/uploads/parts.rbi similarity index 100% rename from rbi/lib/openai/resources/uploads/parts.rbi rename to rbi/openai/resources/uploads/parts.rbi diff --git a/rbi/lib/openai/resources/vector_stores.rbi b/rbi/openai/resources/vector_stores.rbi similarity index 100% rename from rbi/lib/openai/resources/vector_stores.rbi rename to rbi/openai/resources/vector_stores.rbi diff --git a/rbi/lib/openai/resources/vector_stores/file_batches.rbi b/rbi/openai/resources/vector_stores/file_batches.rbi similarity index 100% rename from rbi/lib/openai/resources/vector_stores/file_batches.rbi rename to rbi/openai/resources/vector_stores/file_batches.rbi diff --git a/rbi/lib/openai/resources/vector_stores/files.rbi b/rbi/openai/resources/vector_stores/files.rbi similarity index 100% rename from rbi/lib/openai/resources/vector_stores/files.rbi rename to rbi/openai/resources/vector_stores/files.rbi diff --git a/rbi/lib/openai/version.rbi b/rbi/openai/version.rbi similarity index 100% rename from rbi/lib/openai/version.rbi rename to rbi/openai/version.rbi From 04b111dcdc2c5d458159be87a180174243a9d058 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Sat, 26 Apr 2025 06:27:23 +0000 Subject: [PATCH 20/47] chore: more accurate type annotations and aliases --- lib/openai/errors.rb | 36 +++++++++---------- lib/openai/internal/type/boolean.rb | 21 ++++++----- lib/openai/internal/type/enum.rb | 21 ++++++----- lib/openai/internal/type/unknown.rb | 21 ++++++----- .../beta/thread_create_and_run_params.rb | 1 + .../models/beta/thread_create_params.rb | 1 + .../beta/threads/message_create_params.rb | 1 + .../models/beta/threads/run_create_params.rb | 1 + ...chat_completion_assistant_message_param.rb | 1 + ...chat_completion_developer_message_param.rb | 1 + .../chat_completion_prediction_content.rb | 1 + .../chat_completion_system_message_param.rb | 1 + .../chat_completion_tool_message_param.rb | 1 + .../chat_completion_user_message_param.rb | 1 + .../models/chat/completion_create_params.rb | 1 + lib/openai/models/completion_create_params.rb | 4 +++ lib/openai/models/embedding_create_params.rb | 3 ++ lib/openai/models/image_edit_params.rb | 1 + lib/openai/models/moderation_create_params.rb | 2 ++ .../models/vector_store_search_params.rb | 1 + lib/openai/request_options.rb | 9 +++-- .../beta/thread_create_and_run_params.rbs | 5 +-- .../models/beta/thread_create_params.rbs | 5 +-- .../beta/threads/message_create_params.rbs | 5 +-- .../models/beta/threads/run_create_params.rbs | 5 +-- ...hat_completion_assistant_message_param.rbs | 5 +-- ...hat_completion_developer_message_param.rbs | 5 +-- .../chat_completion_prediction_content.rbs | 5 +-- .../chat_completion_system_message_param.rbs | 5 +-- .../chat_completion_tool_message_param.rbs | 5 +-- .../chat_completion_user_message_param.rbs | 5 +-- .../models/chat/completion_create_params.rbs | 4 +-- .../models/completion_create_params.rbs | 16 +++------ sig/openai/models/embedding_create_params.rbs | 12 ++----- sig/openai/models/image_edit_params.rbs | 4 +-- .../models/moderation_create_params.rbs | 9 ++--- .../models/vector_store_search_params.rbs | 4 +-- test/openai/file_part_test.rb | 1 + 38 files changed, 97 insertions(+), 133 deletions(-) diff --git a/lib/openai/errors.rb b/lib/openai/errors.rb index 73e74f52..6f159c87 100644 --- a/lib/openai/errors.rb +++ b/lib/openai/errors.rb @@ -3,9 +3,9 @@ module OpenAI module Errors class Error < StandardError - # @!parse - # # @return [StandardError, nil] - # attr_accessor :cause + # @!attribute cause + # + # @return [StandardError, nil] end class ConversionError < OpenAI::Errors::Error @@ -49,25 +49,25 @@ def initialize(url:, status: nil, body: nil, request: nil, response: nil, messag end class APIConnectionError < OpenAI::Errors::APIError - # @!parse - # # @return [nil] - # attr_accessor :status + # @!attribute status + # + # @return [nil] - # @!parse - # # @return [nil] - # attr_accessor :body + # @!attribute body + # + # @return [nil] - # @!parse - # # @return [nil] - # attr_accessor :code + # @!attribute code + # + # @return [nil] - # @!parse - # # @return [nil] - # attr_accessor :param + # @!attribute param + # + # @return [nil] - # @!parse - # # @return [nil] - # attr_accessor :type + # @!attribute type + # + # @return [nil] # @api private # diff --git a/lib/openai/internal/type/boolean.rb b/lib/openai/internal/type/boolean.rb index 13c242e0..3e852539 100644 --- a/lib/openai/internal/type/boolean.rb +++ b/lib/openai/internal/type/boolean.rb @@ -46,17 +46,16 @@ def coerce(value, state:) value end - # @!parse - # # @api private - # # - # # @param value [Boolean, Object] - # # - # # @param state [Hash{Symbol=>Object}] . - # # - # # @option state [Boolean] :can_retry - # # - # # @return [Boolean, Object] - # def dump(value, state:) = super + # @!method dump(value, state:) + # @api private + # + # @param value [Boolean, Object] + # + # @param state [Hash{Symbol=>Object}] . + # + # @option state [Boolean] :can_retry + # + # @return [Boolean, Object] end end end diff --git a/lib/openai/internal/type/enum.rb b/lib/openai/internal/type/enum.rb index 55df3e66..5ceef679 100644 --- a/lib/openai/internal/type/enum.rb +++ b/lib/openai/internal/type/enum.rb @@ -100,17 +100,16 @@ def coerce(value, state:) end end - # @!parse - # # @api private - # # - # # @param value [Symbol, Object] - # # - # # @param state [Hash{Symbol=>Object}] . - # # - # # @option state [Boolean] :can_retry - # # - # # @return [Symbol, Object] - # def dump(value, state:) = super + # @!method dump(value, state:) + # @api private + # + # @param value [Symbol, Object] + # + # @param state [Hash{Symbol=>Object}] . + # + # @option state [Boolean] :can_retry + # + # @return [Symbol, Object] # @api private # diff --git a/lib/openai/internal/type/unknown.rb b/lib/openai/internal/type/unknown.rb index 698303d5..a629570f 100644 --- a/lib/openai/internal/type/unknown.rb +++ b/lib/openai/internal/type/unknown.rb @@ -48,17 +48,16 @@ def coerce(value, state:) value end - # @!parse - # # @api private - # # - # # @param value [Object] - # # - # # @param state [Hash{Symbol=>Object}] . - # # - # # @option state [Boolean] :can_retry - # # - # # @return [Object] - # def dump(value, state:) = super + # @!method dump(value, state:) + # @api private + # + # @param value [Object] + # + # @param state [Hash{Symbol=>Object}] . + # + # @option state [Boolean] :can_retry + # + # @return [Object] end # rubocop:enable Lint/UnusedMethodArgument diff --git a/lib/openai/models/beta/thread_create_and_run_params.rb b/lib/openai/models/beta/thread_create_and_run_params.rb index 0cd74409..4199cc52 100644 --- a/lib/openai/models/beta/thread_create_and_run_params.rb +++ b/lib/openai/models/beta/thread_create_and_run_params.rb @@ -337,6 +337,7 @@ module Content # @!method self.variants # @return [Array(String, Array)] + # @type [OpenAI::Internal::Type::Converter] MessageContentPartParamArray = OpenAI::Internal::Type::ArrayOf[union: -> { OpenAI::Models::Beta::Threads::MessageContentPartParam }] end diff --git a/lib/openai/models/beta/thread_create_params.rb b/lib/openai/models/beta/thread_create_params.rb index 3cb1d240..50ef5aca 100644 --- a/lib/openai/models/beta/thread_create_params.rb +++ b/lib/openai/models/beta/thread_create_params.rb @@ -114,6 +114,7 @@ module Content # @!method self.variants # @return [Array(String, Array)] + # @type [OpenAI::Internal::Type::Converter] MessageContentPartParamArray = OpenAI::Internal::Type::ArrayOf[union: -> { OpenAI::Models::Beta::Threads::MessageContentPartParam }] end diff --git a/lib/openai/models/beta/threads/message_create_params.rb b/lib/openai/models/beta/threads/message_create_params.rb index ff6d233f..e6a5e155 100644 --- a/lib/openai/models/beta/threads/message_create_params.rb +++ b/lib/openai/models/beta/threads/message_create_params.rb @@ -72,6 +72,7 @@ module Content # @!method self.variants # @return [Array(String, Array)] + # @type [OpenAI::Internal::Type::Converter] MessageContentPartParamArray = OpenAI::Internal::Type::ArrayOf[union: -> { OpenAI::Models::Beta::Threads::MessageContentPartParam }] end diff --git a/lib/openai/models/beta/threads/run_create_params.rb b/lib/openai/models/beta/threads/run_create_params.rb index d47e1177..8ced1f05 100644 --- a/lib/openai/models/beta/threads/run_create_params.rb +++ b/lib/openai/models/beta/threads/run_create_params.rb @@ -307,6 +307,7 @@ module Content # @!method self.variants # @return [Array(String, Array)] + # @type [OpenAI::Internal::Type::Converter] MessageContentPartParamArray = OpenAI::Internal::Type::ArrayOf[union: -> { OpenAI::Models::Beta::Threads::MessageContentPartParam }] end diff --git a/lib/openai/models/chat/chat_completion_assistant_message_param.rb b/lib/openai/models/chat/chat_completion_assistant_message_param.rb index f5bc27e0..ab8b934b 100644 --- a/lib/openai/models/chat/chat_completion_assistant_message_param.rb +++ b/lib/openai/models/chat/chat_completion_assistant_message_param.rb @@ -131,6 +131,7 @@ module ArrayOfContentPart # @!method self.variants # @return [Array(String, Array)] + # @type [OpenAI::Internal::Type::Converter] ArrayOfContentPartArray = OpenAI::Internal::Type::ArrayOf[union: -> { OpenAI::Models::Chat::ChatCompletionAssistantMessageParam::Content::ArrayOfContentPart }] end diff --git a/lib/openai/models/chat/chat_completion_developer_message_param.rb b/lib/openai/models/chat/chat_completion_developer_message_param.rb index df851c32..412741c9 100644 --- a/lib/openai/models/chat/chat_completion_developer_message_param.rb +++ b/lib/openai/models/chat/chat_completion_developer_message_param.rb @@ -53,6 +53,7 @@ module Content # @!method self.variants # @return [Array(String, Array)] + # @type [OpenAI::Internal::Type::Converter] ChatCompletionContentPartTextArray = OpenAI::Internal::Type::ArrayOf[-> { OpenAI::Models::Chat::ChatCompletionContentPartText }] end diff --git a/lib/openai/models/chat/chat_completion_prediction_content.rb b/lib/openai/models/chat/chat_completion_prediction_content.rb index 3669e9d3..df3dbe30 100644 --- a/lib/openai/models/chat/chat_completion_prediction_content.rb +++ b/lib/openai/models/chat/chat_completion_prediction_content.rb @@ -48,6 +48,7 @@ module Content # @!method self.variants # @return [Array(String, Array)] + # @type [OpenAI::Internal::Type::Converter] ChatCompletionContentPartTextArray = OpenAI::Internal::Type::ArrayOf[-> { OpenAI::Models::Chat::ChatCompletionContentPartText }] end diff --git a/lib/openai/models/chat/chat_completion_system_message_param.rb b/lib/openai/models/chat/chat_completion_system_message_param.rb index 99e35629..7ef7fbfd 100644 --- a/lib/openai/models/chat/chat_completion_system_message_param.rb +++ b/lib/openai/models/chat/chat_completion_system_message_param.rb @@ -53,6 +53,7 @@ module Content # @!method self.variants # @return [Array(String, Array)] + # @type [OpenAI::Internal::Type::Converter] ChatCompletionContentPartTextArray = OpenAI::Internal::Type::ArrayOf[-> { OpenAI::Models::Chat::ChatCompletionContentPartText }] end diff --git a/lib/openai/models/chat/chat_completion_tool_message_param.rb b/lib/openai/models/chat/chat_completion_tool_message_param.rb index e03505be..2ff0bf3b 100644 --- a/lib/openai/models/chat/chat_completion_tool_message_param.rb +++ b/lib/openai/models/chat/chat_completion_tool_message_param.rb @@ -44,6 +44,7 @@ module Content # @!method self.variants # @return [Array(String, Array)] + # @type [OpenAI::Internal::Type::Converter] ChatCompletionContentPartTextArray = OpenAI::Internal::Type::ArrayOf[-> { OpenAI::Models::Chat::ChatCompletionContentPartText }] end diff --git a/lib/openai/models/chat/chat_completion_user_message_param.rb b/lib/openai/models/chat/chat_completion_user_message_param.rb index 3aa9532f..b412e5c9 100644 --- a/lib/openai/models/chat/chat_completion_user_message_param.rb +++ b/lib/openai/models/chat/chat_completion_user_message_param.rb @@ -52,6 +52,7 @@ module Content # @!method self.variants # @return [Array(String, Array)] + # @type [OpenAI::Internal::Type::Converter] ChatCompletionContentPartArray = OpenAI::Internal::Type::ArrayOf[union: -> { OpenAI::Models::Chat::ChatCompletionContentPart }] end diff --git a/lib/openai/models/chat/completion_create_params.rb b/lib/openai/models/chat/completion_create_params.rb index 185edac2..ed12261d 100644 --- a/lib/openai/models/chat/completion_create_params.rb +++ b/lib/openai/models/chat/completion_create_params.rb @@ -587,6 +587,7 @@ module Stop # @!method self.variants # @return [Array(String, Array)] + # @type [OpenAI::Internal::Type::Converter] StringArray = OpenAI::Internal::Type::ArrayOf[String] end diff --git a/lib/openai/models/completion_create_params.rb b/lib/openai/models/completion_create_params.rb index c6f47865..d397fba1 100644 --- a/lib/openai/models/completion_create_params.rb +++ b/lib/openai/models/completion_create_params.rb @@ -281,10 +281,13 @@ module Prompt # @!method self.variants # @return [Array(String, Array, Array, Array>)] + # @type [OpenAI::Internal::Type::Converter] StringArray = OpenAI::Internal::Type::ArrayOf[String] + # @type [OpenAI::Internal::Type::Converter] IntegerArray = OpenAI::Internal::Type::ArrayOf[Integer] + # @type [OpenAI::Internal::Type::Converter] ArrayOfToken2DArray = OpenAI::Internal::Type::ArrayOf[OpenAI::Internal::Type::ArrayOf[Integer]] end @@ -302,6 +305,7 @@ module Stop # @!method self.variants # @return [Array(String, Array)] + # @type [OpenAI::Internal::Type::Converter] StringArray = OpenAI::Internal::Type::ArrayOf[String] end end diff --git a/lib/openai/models/embedding_create_params.rb b/lib/openai/models/embedding_create_params.rb index f3fe5c40..bff4d83f 100644 --- a/lib/openai/models/embedding_create_params.rb +++ b/lib/openai/models/embedding_create_params.rb @@ -99,10 +99,13 @@ module Input # @!method self.variants # @return [Array(String, Array, Array, Array>)] + # @type [OpenAI::Internal::Type::Converter] StringArray = OpenAI::Internal::Type::ArrayOf[String] + # @type [OpenAI::Internal::Type::Converter] IntegerArray = OpenAI::Internal::Type::ArrayOf[Integer] + # @type [OpenAI::Internal::Type::Converter] ArrayOfToken2DArray = OpenAI::Internal::Type::ArrayOf[OpenAI::Internal::Type::ArrayOf[Integer]] end diff --git a/lib/openai/models/image_edit_params.rb b/lib/openai/models/image_edit_params.rb index 33526447..e42475a3 100644 --- a/lib/openai/models/image_edit_params.rb +++ b/lib/openai/models/image_edit_params.rb @@ -125,6 +125,7 @@ module Image # @!method self.variants # @return [Array(StringIO, Array)] + # @type [OpenAI::Internal::Type::Converter] StringArray = OpenAI::Internal::Type::ArrayOf[OpenAI::Internal::Type::FileInput] end diff --git a/lib/openai/models/moderation_create_params.rb b/lib/openai/models/moderation_create_params.rb index b6231c78..ae82c207 100644 --- a/lib/openai/models/moderation_create_params.rb +++ b/lib/openai/models/moderation_create_params.rb @@ -51,8 +51,10 @@ module Input # @!method self.variants # @return [Array(String, Array, Array)] + # @type [OpenAI::Internal::Type::Converter] StringArray = OpenAI::Internal::Type::ArrayOf[String] + # @type [OpenAI::Internal::Type::Converter] ModerationMultiModalInputArray = OpenAI::Internal::Type::ArrayOf[union: -> { OpenAI::Models::ModerationMultiModalInput }] end diff --git a/lib/openai/models/vector_store_search_params.rb b/lib/openai/models/vector_store_search_params.rb index 5eaa270d..17447b6d 100644 --- a/lib/openai/models/vector_store_search_params.rb +++ b/lib/openai/models/vector_store_search_params.rb @@ -66,6 +66,7 @@ module Query # @!method self.variants # @return [Array(String, Array)] + # @type [OpenAI::Internal::Type::Converter] StringArray = OpenAI::Internal::Type::ArrayOf[String] end diff --git a/lib/openai/request_options.rb b/lib/openai/request_options.rb index 4bd64d4b..d4a15822 100644 --- a/lib/openai/request_options.rb +++ b/lib/openai/request_options.rb @@ -65,10 +65,9 @@ def self.validate!(opts) # @return [Float, nil] optional :timeout, Float - # @!parse - # # @!method initialize(values = {}) - # # Returns a new instance of RequestOptions. - # # - # # @param values [Hash{Symbol=>Object}] + # @!method initialize(values = {}) + # Returns a new instance of RequestOptions. + # + # @param values [Hash{Symbol=>Object}] end end diff --git a/sig/openai/models/beta/thread_create_and_run_params.rbs b/sig/openai/models/beta/thread_create_and_run_params.rbs index 67ca7b95..5d78ca13 100644 --- a/sig/openai/models/beta/thread_create_and_run_params.rbs +++ b/sig/openai/models/beta/thread_create_and_run_params.rbs @@ -151,10 +151,7 @@ module OpenAI def self?.variants: -> [String, ::Array[OpenAI::Models::Beta::Threads::message_content_part_param]] - type message_content_part_param_array = - ::Array[OpenAI::Models::Beta::Threads::message_content_part_param] - - MessageContentPartParamArray: message_content_part_param_array + MessageContentPartParamArray: OpenAI::Internal::Type::Converter end type role = :user | :assistant diff --git a/sig/openai/models/beta/thread_create_params.rbs b/sig/openai/models/beta/thread_create_params.rbs index 96d0d366..08c6bdd2 100644 --- a/sig/openai/models/beta/thread_create_params.rbs +++ b/sig/openai/models/beta/thread_create_params.rbs @@ -67,10 +67,7 @@ module OpenAI def self?.variants: -> [String, ::Array[OpenAI::Models::Beta::Threads::message_content_part_param]] - type message_content_part_param_array = - ::Array[OpenAI::Models::Beta::Threads::message_content_part_param] - - MessageContentPartParamArray: message_content_part_param_array + MessageContentPartParamArray: OpenAI::Internal::Type::Converter end type role = :user | :assistant diff --git a/sig/openai/models/beta/threads/message_create_params.rbs b/sig/openai/models/beta/threads/message_create_params.rbs index 0b4397bf..fd5c2c49 100644 --- a/sig/openai/models/beta/threads/message_create_params.rbs +++ b/sig/openai/models/beta/threads/message_create_params.rbs @@ -42,10 +42,7 @@ module OpenAI def self?.variants: -> [String, ::Array[OpenAI::Models::Beta::Threads::message_content_part_param]] - type message_content_part_param_array = - ::Array[OpenAI::Models::Beta::Threads::message_content_part_param] - - MessageContentPartParamArray: message_content_part_param_array + MessageContentPartParamArray: OpenAI::Internal::Type::Converter end type role = :user | :assistant diff --git a/sig/openai/models/beta/threads/run_create_params.rbs b/sig/openai/models/beta/threads/run_create_params.rbs index f5462f0c..da318adb 100644 --- a/sig/openai/models/beta/threads/run_create_params.rbs +++ b/sig/openai/models/beta/threads/run_create_params.rbs @@ -126,10 +126,7 @@ module OpenAI def self?.variants: -> [String, ::Array[OpenAI::Models::Beta::Threads::message_content_part_param]] - type message_content_part_param_array = - ::Array[OpenAI::Models::Beta::Threads::message_content_part_param] - - MessageContentPartParamArray: message_content_part_param_array + MessageContentPartParamArray: OpenAI::Internal::Type::Converter end type role = :user | :assistant diff --git a/sig/openai/models/chat/chat_completion_assistant_message_param.rbs b/sig/openai/models/chat/chat_completion_assistant_message_param.rbs index 4f92813c..6016de8d 100644 --- a/sig/openai/models/chat/chat_completion_assistant_message_param.rbs +++ b/sig/openai/models/chat/chat_completion_assistant_message_param.rbs @@ -76,10 +76,7 @@ module OpenAI def self?.variants: -> [String, ::Array[OpenAI::Models::Chat::ChatCompletionAssistantMessageParam::Content::array_of_content_part]] - type array_of_content_part_array = - ::Array[OpenAI::Models::Chat::ChatCompletionAssistantMessageParam::Content::array_of_content_part] - - ArrayOfContentPartArray: array_of_content_part_array + ArrayOfContentPartArray: OpenAI::Internal::Type::Converter end type function_call = { arguments: String, name: String } diff --git a/sig/openai/models/chat/chat_completion_developer_message_param.rbs b/sig/openai/models/chat/chat_completion_developer_message_param.rbs index b0dfdf86..ed1e4afb 100644 --- a/sig/openai/models/chat/chat_completion_developer_message_param.rbs +++ b/sig/openai/models/chat/chat_completion_developer_message_param.rbs @@ -35,10 +35,7 @@ module OpenAI def self?.variants: -> [String, ::Array[OpenAI::Models::Chat::ChatCompletionContentPartText]] - type chat_completion_content_part_text_array = - ::Array[OpenAI::Models::Chat::ChatCompletionContentPartText] - - ChatCompletionContentPartTextArray: chat_completion_content_part_text_array + ChatCompletionContentPartTextArray: OpenAI::Internal::Type::Converter end end end diff --git a/sig/openai/models/chat/chat_completion_prediction_content.rbs b/sig/openai/models/chat/chat_completion_prediction_content.rbs index 1f5c681a..ad9cdb21 100644 --- a/sig/openai/models/chat/chat_completion_prediction_content.rbs +++ b/sig/openai/models/chat/chat_completion_prediction_content.rbs @@ -29,10 +29,7 @@ module OpenAI def self?.variants: -> [String, ::Array[OpenAI::Models::Chat::ChatCompletionContentPartText]] - type chat_completion_content_part_text_array = - ::Array[OpenAI::Models::Chat::ChatCompletionContentPartText] - - ChatCompletionContentPartTextArray: chat_completion_content_part_text_array + ChatCompletionContentPartTextArray: OpenAI::Internal::Type::Converter end end end diff --git a/sig/openai/models/chat/chat_completion_system_message_param.rbs b/sig/openai/models/chat/chat_completion_system_message_param.rbs index 12811868..81cdf351 100644 --- a/sig/openai/models/chat/chat_completion_system_message_param.rbs +++ b/sig/openai/models/chat/chat_completion_system_message_param.rbs @@ -35,10 +35,7 @@ module OpenAI def self?.variants: -> [String, ::Array[OpenAI::Models::Chat::ChatCompletionContentPartText]] - type chat_completion_content_part_text_array = - ::Array[OpenAI::Models::Chat::ChatCompletionContentPartText] - - ChatCompletionContentPartTextArray: chat_completion_content_part_text_array + ChatCompletionContentPartTextArray: OpenAI::Internal::Type::Converter end end end diff --git a/sig/openai/models/chat/chat_completion_tool_message_param.rbs b/sig/openai/models/chat/chat_completion_tool_message_param.rbs index 7808c0a9..5b737943 100644 --- a/sig/openai/models/chat/chat_completion_tool_message_param.rbs +++ b/sig/openai/models/chat/chat_completion_tool_message_param.rbs @@ -33,10 +33,7 @@ module OpenAI def self?.variants: -> [String, ::Array[OpenAI::Models::Chat::ChatCompletionContentPartText]] - type chat_completion_content_part_text_array = - ::Array[OpenAI::Models::Chat::ChatCompletionContentPartText] - - ChatCompletionContentPartTextArray: chat_completion_content_part_text_array + ChatCompletionContentPartTextArray: OpenAI::Internal::Type::Converter end end end diff --git a/sig/openai/models/chat/chat_completion_user_message_param.rbs b/sig/openai/models/chat/chat_completion_user_message_param.rbs index ea9b16d6..5f5c1a1c 100644 --- a/sig/openai/models/chat/chat_completion_user_message_param.rbs +++ b/sig/openai/models/chat/chat_completion_user_message_param.rbs @@ -35,10 +35,7 @@ module OpenAI def self?.variants: -> [String, ::Array[OpenAI::Models::Chat::chat_completion_content_part]] - type chat_completion_content_part_array = - ::Array[OpenAI::Models::Chat::chat_completion_content_part] - - ChatCompletionContentPartArray: chat_completion_content_part_array + ChatCompletionContentPartArray: OpenAI::Internal::Type::Converter end end end diff --git a/sig/openai/models/chat/completion_create_params.rbs b/sig/openai/models/chat/completion_create_params.rbs index 02d22187..1eb9953b 100644 --- a/sig/openai/models/chat/completion_create_params.rbs +++ b/sig/openai/models/chat/completion_create_params.rbs @@ -263,9 +263,7 @@ module OpenAI def self?.variants: -> [String, ::Array[String]] - type string_array = ::Array[String] - - StringArray: string_array + StringArray: OpenAI::Internal::Type::Converter end type web_search_options = diff --git a/sig/openai/models/completion_create_params.rbs b/sig/openai/models/completion_create_params.rbs index d4b9afbe..184a3c57 100644 --- a/sig/openai/models/completion_create_params.rbs +++ b/sig/openai/models/completion_create_params.rbs @@ -108,17 +108,11 @@ module OpenAI def self?.variants: -> [String, ::Array[String], ::Array[Integer], ::Array[::Array[Integer]]] - type string_array = ::Array[String] + StringArray: OpenAI::Internal::Type::Converter - StringArray: string_array + IntegerArray: OpenAI::Internal::Type::Converter - type integer_array = ::Array[Integer] - - IntegerArray: integer_array - - type array_of_token2_d_array = ::Array[::Array[Integer]] - - ArrayOfToken2DArray: array_of_token2_d_array + ArrayOfToken2DArray: OpenAI::Internal::Type::Converter end type stop = (String | ::Array[String])? @@ -128,9 +122,7 @@ module OpenAI def self?.variants: -> [String, ::Array[String]] - type string_array = ::Array[String] - - StringArray: string_array + StringArray: OpenAI::Internal::Type::Converter end end end diff --git a/sig/openai/models/embedding_create_params.rbs b/sig/openai/models/embedding_create_params.rbs index fc247341..16c3bd6d 100644 --- a/sig/openai/models/embedding_create_params.rbs +++ b/sig/openai/models/embedding_create_params.rbs @@ -51,17 +51,11 @@ module OpenAI def self?.variants: -> [String, ::Array[String], ::Array[Integer], ::Array[::Array[Integer]]] - type string_array = ::Array[String] + StringArray: OpenAI::Internal::Type::Converter - StringArray: string_array + IntegerArray: OpenAI::Internal::Type::Converter - type integer_array = ::Array[Integer] - - IntegerArray: integer_array - - type array_of_token2_d_array = ::Array[::Array[Integer]] - - ArrayOfToken2DArray: array_of_token2_d_array + ArrayOfToken2DArray: OpenAI::Internal::Type::Converter end type model = String | OpenAI::Models::embedding_model diff --git a/sig/openai/models/image_edit_params.rbs b/sig/openai/models/image_edit_params.rbs index 95e02a84..bf702f1e 100644 --- a/sig/openai/models/image_edit_params.rbs +++ b/sig/openai/models/image_edit_params.rbs @@ -69,9 +69,7 @@ module OpenAI def self?.variants: -> [StringIO, ::Array[StringIO]] - type string_array = ::Array[Pathname | StringIO | IO | OpenAI::FilePart] - - StringArray: string_array + StringArray: OpenAI::Internal::Type::Converter end type model = String | OpenAI::Models::image_model diff --git a/sig/openai/models/moderation_create_params.rbs b/sig/openai/models/moderation_create_params.rbs index e8c1e576..e6f8668e 100644 --- a/sig/openai/models/moderation_create_params.rbs +++ b/sig/openai/models/moderation_create_params.rbs @@ -37,14 +37,9 @@ module OpenAI def self?.variants: -> [String, ::Array[String], ::Array[OpenAI::Models::moderation_multi_modal_input]] - type string_array = ::Array[String] + StringArray: OpenAI::Internal::Type::Converter - StringArray: string_array - - type moderation_multi_modal_input_array = - ::Array[OpenAI::Models::moderation_multi_modal_input] - - ModerationMultiModalInputArray: moderation_multi_modal_input_array + ModerationMultiModalInputArray: OpenAI::Internal::Type::Converter end type model = String | OpenAI::Models::moderation_model diff --git a/sig/openai/models/vector_store_search_params.rbs b/sig/openai/models/vector_store_search_params.rbs index 823cd7bc..9d571eee 100644 --- a/sig/openai/models/vector_store_search_params.rbs +++ b/sig/openai/models/vector_store_search_params.rbs @@ -54,9 +54,7 @@ module OpenAI def self?.variants: -> [String, ::Array[String]] - type string_array = ::Array[String] - - StringArray: string_array + StringArray: OpenAI::Internal::Type::Converter end type filters = diff --git a/test/openai/file_part_test.rb b/test/openai/file_part_test.rb index 4136b1b6..96abf7cf 100644 --- a/test/openai/file_part_test.rb +++ b/test/openai/file_part_test.rb @@ -8,5 +8,6 @@ def test_to_json filepart = OpenAI::FilePart.new(StringIO.new(text)) assert_equal(text.to_json, filepart.to_json) + assert_equal(text.to_yaml, filepart.to_yaml) end end From 4918836aac697a899b19e4c3767126d0d86914d4 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Sat, 26 Apr 2025 13:23:36 +0000 Subject: [PATCH 21/47] chore(internal): annotate request options with type aliases in sorbet --- lib/openai/models/function_parameters.rb | 1 + lib/openai/models/metadata.rb | 1 + lib/openai/models/responses/response_input.rb | 1 + .../response_input_message_content_list.rb | 1 + rbi/openai/internal/transport/base_client.rbi | 4 +-- .../internal/type/request_parameters.rbi | 2 +- rbi/openai/request_options.rbi | 2 ++ rbi/openai/resources/audio/speech.rbi | 2 +- rbi/openai/resources/audio/transcriptions.rbi | 4 +-- rbi/openai/resources/audio/translations.rbi | 2 +- rbi/openai/resources/batches.rbi | 24 +++------------- rbi/openai/resources/beta/assistants.rbi | 17 ++++------- rbi/openai/resources/beta/threads.rbi | 21 ++++---------- .../resources/beta/threads/messages.rbi | 18 ++++-------- rbi/openai/resources/beta/threads/runs.rbi | 24 ++++++---------- .../resources/beta/threads/runs/steps.rbi | 4 +-- rbi/openai/resources/chat/completions.rbi | 18 ++++-------- .../resources/chat/completions/messages.rbi | 2 +- rbi/openai/resources/completions.rbi | 4 +-- rbi/openai/resources/embeddings.rbi | 2 +- rbi/openai/resources/evals.rbi | 20 ++++--------- rbi/openai/resources/evals/runs.rbi | 22 ++++----------- .../resources/evals/runs/output_items.rbi | 4 +-- rbi/openai/resources/files.rbi | 28 ++++--------------- .../fine_tuning/checkpoints/permissions.rbi | 6 ++-- rbi/openai/resources/fine_tuning/jobs.rbi | 16 ++++------- .../fine_tuning/jobs/checkpoints.rbi | 2 +- rbi/openai/resources/images.rbi | 6 ++-- rbi/openai/resources/models.rbi | 21 ++------------ rbi/openai/resources/moderations.rbi | 2 +- rbi/openai/resources/responses.rbi | 14 +++------- .../resources/responses/input_items.rbi | 2 +- rbi/openai/resources/uploads.rbi | 12 ++------ rbi/openai/resources/uploads/parts.rbi | 2 +- rbi/openai/resources/vector_stores.rbi | 21 ++++---------- .../resources/vector_stores/file_batches.rbi | 16 +++-------- rbi/openai/resources/vector_stores/files.rbi | 24 ++++------------ sig/openai/models/function_parameters.rbs | 2 +- sig/openai/models/metadata.rbs | 2 +- .../models/responses/response_input.rbs | 2 +- .../response_input_message_content_list.rbs | 2 +- 41 files changed, 115 insertions(+), 265 deletions(-) diff --git a/lib/openai/models/function_parameters.rb b/lib/openai/models/function_parameters.rb index c32b337a..efd72125 100644 --- a/lib/openai/models/function_parameters.rb +++ b/lib/openai/models/function_parameters.rb @@ -2,6 +2,7 @@ module OpenAI module Models + # @type [OpenAI::Internal::Type::Converter] FunctionParameters = OpenAI::Internal::Type::HashOf[OpenAI::Internal::Type::Unknown] end end diff --git a/lib/openai/models/metadata.rb b/lib/openai/models/metadata.rb index c6a6935d..7930ffac 100644 --- a/lib/openai/models/metadata.rb +++ b/lib/openai/models/metadata.rb @@ -2,6 +2,7 @@ module OpenAI module Models + # @type [OpenAI::Internal::Type::Converter] Metadata = OpenAI::Internal::Type::HashOf[String] end end diff --git a/lib/openai/models/responses/response_input.rb b/lib/openai/models/responses/response_input.rb index 591bab05..aa4de811 100644 --- a/lib/openai/models/responses/response_input.rb +++ b/lib/openai/models/responses/response_input.rb @@ -3,6 +3,7 @@ module OpenAI module Models module Responses + # @type [OpenAI::Internal::Type::Converter] ResponseInput = OpenAI::Internal::Type::ArrayOf[union: -> { OpenAI::Models::Responses::ResponseInputItem }] end diff --git a/lib/openai/models/responses/response_input_message_content_list.rb b/lib/openai/models/responses/response_input_message_content_list.rb index a1362365..888f3f1c 100644 --- a/lib/openai/models/responses/response_input_message_content_list.rb +++ b/lib/openai/models/responses/response_input_message_content_list.rb @@ -3,6 +3,7 @@ module OpenAI module Models module Responses + # @type [OpenAI::Internal::Type::Converter] ResponseInputMessageContentList = OpenAI::Internal::Type::ArrayOf[union: -> { OpenAI::Models::Responses::ResponseInputContent }] end diff --git a/rbi/openai/internal/transport/base_client.rbi b/rbi/openai/internal/transport/base_client.rbi index fb87b782..612daee4 100644 --- a/rbi/openai/internal/transport/base_client.rbi +++ b/rbi/openai/internal/transport/base_client.rbi @@ -38,7 +38,7 @@ module OpenAI OpenAI::Internal::Type::BaseModel]] ), model: T.nilable(OpenAI::Internal::Type::Converter::Input), - options: T.nilable(T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash)) + options: T.nilable(OpenAI::RequestOpts) } end @@ -194,7 +194,7 @@ module OpenAI OpenAI::Internal::Type::BaseModel]] ), model: T.nilable(OpenAI::Internal::Type::Converter::Input), - options: T.nilable(T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash)) + options: T.nilable(OpenAI::RequestOpts) ) .returns(T.anything) end diff --git a/rbi/openai/internal/type/request_parameters.rbi b/rbi/openai/internal/type/request_parameters.rbi index 2a1c8d7f..1d86b7ab 100644 --- a/rbi/openai/internal/type/request_parameters.rbi +++ b/rbi/openai/internal/type/request_parameters.rbi @@ -6,7 +6,7 @@ module OpenAI # @api private module RequestParameters # Options to specify HTTP behaviour for this request. - sig { returns(T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash)) } + sig { returns(OpenAI::RequestOpts) } attr_accessor :request_options # @api private diff --git a/rbi/openai/request_options.rbi b/rbi/openai/request_options.rbi index 9c3df5a0..2dc1eb77 100644 --- a/rbi/openai/request_options.rbi +++ b/rbi/openai/request_options.rbi @@ -1,6 +1,8 @@ # typed: strong module OpenAI + RequestOpts = T.type_alias { T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash) } + # Specify HTTP behaviour to use for a specific request. These options supplement # or override those provided at the client level. # diff --git a/rbi/openai/resources/audio/speech.rbi b/rbi/openai/resources/audio/speech.rbi index 2717898a..16739bc4 100644 --- a/rbi/openai/resources/audio/speech.rbi +++ b/rbi/openai/resources/audio/speech.rbi @@ -13,7 +13,7 @@ module OpenAI instructions: String, response_format: OpenAI::Models::Audio::SpeechCreateParams::ResponseFormat::OrSymbol, speed: Float, - request_options: T.nilable(T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash)) + request_options: OpenAI::RequestOpts ) .returns(StringIO) end diff --git a/rbi/openai/resources/audio/transcriptions.rbi b/rbi/openai/resources/audio/transcriptions.rbi index 45316428..b8fb2b38 100644 --- a/rbi/openai/resources/audio/transcriptions.rbi +++ b/rbi/openai/resources/audio/transcriptions.rbi @@ -19,7 +19,7 @@ module OpenAI temperature: Float, timestamp_granularities: T::Array[OpenAI::Models::Audio::TranscriptionCreateParams::TimestampGranularity::OrSymbol], stream: T.noreturn, - request_options: T.nilable(T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash)) + request_options: OpenAI::RequestOpts ) .returns(T.any(OpenAI::Models::Audio::Transcription, OpenAI::Models::Audio::TranscriptionVerbose)) end @@ -82,7 +82,7 @@ module OpenAI temperature: Float, timestamp_granularities: T::Array[OpenAI::Models::Audio::TranscriptionCreateParams::TimestampGranularity::OrSymbol], stream: T.noreturn, - request_options: T.nilable(T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash)) + request_options: OpenAI::RequestOpts ) .returns( OpenAI::Internal::Stream[ diff --git a/rbi/openai/resources/audio/translations.rbi b/rbi/openai/resources/audio/translations.rbi index b9130883..b9675bf8 100644 --- a/rbi/openai/resources/audio/translations.rbi +++ b/rbi/openai/resources/audio/translations.rbi @@ -12,7 +12,7 @@ module OpenAI prompt: String, response_format: OpenAI::Models::Audio::TranslationCreateParams::ResponseFormat::OrSymbol, temperature: Float, - request_options: T.nilable(T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash)) + request_options: OpenAI::RequestOpts ) .returns(T.any(OpenAI::Models::Audio::Translation, OpenAI::Models::Audio::TranslationVerbose)) end diff --git a/rbi/openai/resources/batches.rbi b/rbi/openai/resources/batches.rbi index 390a8fa9..f58e4e80 100644 --- a/rbi/openai/resources/batches.rbi +++ b/rbi/openai/resources/batches.rbi @@ -10,7 +10,7 @@ module OpenAI endpoint: OpenAI::Models::BatchCreateParams::Endpoint::OrSymbol, input_file_id: String, metadata: T.nilable(T::Hash[Symbol, String]), - request_options: T.nilable(T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash)) + request_options: OpenAI::RequestOpts ) .returns(OpenAI::Models::Batch) end @@ -43,13 +43,7 @@ module OpenAI request_options: {} ); end # Retrieves a batch. - sig do - params( - batch_id: String, - request_options: T.nilable(T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash)) - ) - .returns(OpenAI::Models::Batch) - end + sig { params(batch_id: String, request_options: OpenAI::RequestOpts).returns(OpenAI::Models::Batch) } def retrieve( # The ID of the batch to retrieve. batch_id, @@ -57,11 +51,7 @@ module OpenAI ); end # List your organization's batches. sig do - params( - after: String, - limit: Integer, - request_options: T.nilable(T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash)) - ) + params(after: String, limit: Integer, request_options: OpenAI::RequestOpts) .returns(OpenAI::Internal::CursorPage[OpenAI::Models::Batch]) end def list( @@ -78,13 +68,7 @@ module OpenAI # Cancels an in-progress batch. The batch will be in status `cancelling` for up to # 10 minutes, before changing to `cancelled`, where it will have partial results # (if any) available in the output file. - sig do - params( - batch_id: String, - request_options: T.nilable(T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash)) - ) - .returns(OpenAI::Models::Batch) - end + sig { params(batch_id: String, request_options: OpenAI::RequestOpts).returns(OpenAI::Models::Batch) } def cancel( # The ID of the batch to cancel. batch_id, diff --git a/rbi/openai/resources/beta/assistants.rbi b/rbi/openai/resources/beta/assistants.rbi index 580fbcba..f58ad07a 100644 --- a/rbi/openai/resources/beta/assistants.rbi +++ b/rbi/openai/resources/beta/assistants.rbi @@ -33,7 +33,7 @@ module OpenAI ) ], top_p: T.nilable(Float), - request_options: T.nilable(T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash)) + request_options: OpenAI::RequestOpts ) .returns(OpenAI::Models::Beta::Assistant) end @@ -109,11 +109,7 @@ module OpenAI ); end # Retrieves an assistant. sig do - params( - assistant_id: String, - request_options: T.nilable(T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash)) - ) - .returns(OpenAI::Models::Beta::Assistant) + params(assistant_id: String, request_options: OpenAI::RequestOpts).returns(OpenAI::Models::Beta::Assistant) end def retrieve( # The ID of the assistant to retrieve. @@ -150,7 +146,7 @@ module OpenAI ) ], top_p: T.nilable(Float), - request_options: T.nilable(T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash)) + request_options: OpenAI::RequestOpts ) .returns(OpenAI::Models::Beta::Assistant) end @@ -233,7 +229,7 @@ module OpenAI before: String, limit: Integer, order: OpenAI::Models::Beta::AssistantListParams::Order::OrSymbol, - request_options: T.nilable(T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash)) + request_options: OpenAI::RequestOpts ) .returns(OpenAI::Internal::CursorPage[OpenAI::Models::Beta::Assistant]) end @@ -258,10 +254,7 @@ module OpenAI ); end # Delete an assistant. sig do - params( - assistant_id: String, - request_options: T.nilable(T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash)) - ) + params(assistant_id: String, request_options: OpenAI::RequestOpts) .returns(OpenAI::Models::Beta::AssistantDeleted) end def delete( diff --git a/rbi/openai/resources/beta/threads.rbi b/rbi/openai/resources/beta/threads.rbi index 316bbca4..aa3e43b7 100644 --- a/rbi/openai/resources/beta/threads.rbi +++ b/rbi/openai/resources/beta/threads.rbi @@ -16,7 +16,7 @@ module OpenAI messages: T::Array[T.any(OpenAI::Models::Beta::ThreadCreateParams::Message, OpenAI::Internal::AnyHash)], metadata: T.nilable(T::Hash[Symbol, String]), tool_resources: T.nilable(T.any(OpenAI::Models::Beta::ThreadCreateParams::ToolResources, OpenAI::Internal::AnyHash)), - request_options: T.nilable(T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash)) + request_options: OpenAI::RequestOpts ) .returns(OpenAI::Models::Beta::Thread) end @@ -39,13 +39,7 @@ module OpenAI request_options: {} ); end # Retrieves a thread. - sig do - params( - thread_id: String, - request_options: T.nilable(T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash)) - ) - .returns(OpenAI::Models::Beta::Thread) - end + sig { params(thread_id: String, request_options: OpenAI::RequestOpts).returns(OpenAI::Models::Beta::Thread) } def retrieve( # The ID of the thread to retrieve. thread_id, @@ -57,7 +51,7 @@ module OpenAI thread_id: String, metadata: T.nilable(T::Hash[Symbol, String]), tool_resources: T.nilable(T.any(OpenAI::Models::Beta::ThreadUpdateParams::ToolResources, OpenAI::Internal::AnyHash)), - request_options: T.nilable(T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash)) + request_options: OpenAI::RequestOpts ) .returns(OpenAI::Models::Beta::Thread) end @@ -80,10 +74,7 @@ module OpenAI ); end # Delete a thread. sig do - params( - thread_id: String, - request_options: T.nilable(T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash)) - ) + params(thread_id: String, request_options: OpenAI::RequestOpts) .returns(OpenAI::Models::Beta::ThreadDeleted) end def delete( @@ -137,7 +128,7 @@ module OpenAI T.any(OpenAI::Models::Beta::ThreadCreateAndRunParams::TruncationStrategy, OpenAI::Internal::AnyHash) ), stream: T.noreturn, - request_options: T.nilable(T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash)) + request_options: OpenAI::RequestOpts ) .returns(OpenAI::Models::Beta::Threads::Run) end @@ -282,7 +273,7 @@ module OpenAI T.any(OpenAI::Models::Beta::ThreadCreateAndRunParams::TruncationStrategy, OpenAI::Internal::AnyHash) ), stream: T.noreturn, - request_options: T.nilable(T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash)) + request_options: OpenAI::RequestOpts ) .returns( OpenAI::Internal::Stream[ diff --git a/rbi/openai/resources/beta/threads/messages.rbi b/rbi/openai/resources/beta/threads/messages.rbi index 2d12cb7e..f17e3cfe 100644 --- a/rbi/openai/resources/beta/threads/messages.rbi +++ b/rbi/openai/resources/beta/threads/messages.rbi @@ -25,7 +25,7 @@ module OpenAI T::Array[T.any(OpenAI::Models::Beta::Threads::MessageCreateParams::Attachment, OpenAI::Internal::AnyHash)] ), metadata: T.nilable(T::Hash[Symbol, String]), - request_options: T.nilable(T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash)) + request_options: OpenAI::RequestOpts ) .returns(OpenAI::Models::Beta::Threads::Message) end @@ -55,11 +55,7 @@ module OpenAI ); end # Retrieve a message. sig do - params( - message_id: String, - thread_id: String, - request_options: T.nilable(T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash)) - ) + params(message_id: String, thread_id: String, request_options: OpenAI::RequestOpts) .returns(OpenAI::Models::Beta::Threads::Message) end def retrieve( @@ -76,7 +72,7 @@ module OpenAI message_id: String, thread_id: String, metadata: T.nilable(T::Hash[Symbol, String]), - request_options: T.nilable(T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash)) + request_options: OpenAI::RequestOpts ) .returns(OpenAI::Models::Beta::Threads::Message) end @@ -103,7 +99,7 @@ module OpenAI limit: Integer, order: OpenAI::Models::Beta::Threads::MessageListParams::Order::OrSymbol, run_id: String, - request_options: T.nilable(T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash)) + request_options: OpenAI::RequestOpts ) .returns(OpenAI::Internal::CursorPage[OpenAI::Models::Beta::Threads::Message]) end @@ -133,11 +129,7 @@ module OpenAI ); end # Deletes a message. sig do - params( - message_id: String, - thread_id: String, - request_options: T.nilable(T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash)) - ) + params(message_id: String, thread_id: String, request_options: OpenAI::RequestOpts) .returns(OpenAI::Models::Beta::Threads::MessageDeleted) end def delete( diff --git a/rbi/openai/resources/beta/threads/runs.rbi b/rbi/openai/resources/beta/threads/runs.rbi index e3a1216a..0148ff01 100644 --- a/rbi/openai/resources/beta/threads/runs.rbi +++ b/rbi/openai/resources/beta/threads/runs.rbi @@ -60,7 +60,7 @@ module OpenAI T.any(OpenAI::Models::Beta::Threads::RunCreateParams::TruncationStrategy, OpenAI::Internal::AnyHash) ), stream: T.noreturn, - request_options: T.nilable(T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash)) + request_options: OpenAI::RequestOpts ) .returns(OpenAI::Models::Beta::Threads::Run) end @@ -230,7 +230,7 @@ module OpenAI T.any(OpenAI::Models::Beta::Threads::RunCreateParams::TruncationStrategy, OpenAI::Internal::AnyHash) ), stream: T.noreturn, - request_options: T.nilable(T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash)) + request_options: OpenAI::RequestOpts ) .returns( OpenAI::Internal::Stream[ @@ -379,11 +379,7 @@ module OpenAI ); end # Retrieves a run. sig do - params( - run_id: String, - thread_id: String, - request_options: T.nilable(T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash)) - ) + params(run_id: String, thread_id: String, request_options: OpenAI::RequestOpts) .returns(OpenAI::Models::Beta::Threads::Run) end def retrieve( @@ -400,7 +396,7 @@ module OpenAI run_id: String, thread_id: String, metadata: T.nilable(T::Hash[Symbol, String]), - request_options: T.nilable(T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash)) + request_options: OpenAI::RequestOpts ) .returns(OpenAI::Models::Beta::Threads::Run) end @@ -427,7 +423,7 @@ module OpenAI before: String, limit: Integer, order: OpenAI::Models::Beta::Threads::RunListParams::Order::OrSymbol, - request_options: T.nilable(T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash)) + request_options: OpenAI::RequestOpts ) .returns(OpenAI::Internal::CursorPage[OpenAI::Models::Beta::Threads::Run]) end @@ -454,11 +450,7 @@ module OpenAI ); end # Cancels a run that is `in_progress`. sig do - params( - run_id: String, - thread_id: String, - request_options: T.nilable(T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash)) - ) + params(run_id: String, thread_id: String, request_options: OpenAI::RequestOpts) .returns(OpenAI::Models::Beta::Threads::Run) end def cancel( @@ -481,7 +473,7 @@ module OpenAI thread_id: String, tool_outputs: T::Array[T.any(OpenAI::Models::Beta::Threads::RunSubmitToolOutputsParams::ToolOutput, OpenAI::Internal::AnyHash)], stream: T.noreturn, - request_options: T.nilable(T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash)) + request_options: OpenAI::RequestOpts ) .returns(OpenAI::Models::Beta::Threads::Run) end @@ -513,7 +505,7 @@ module OpenAI thread_id: String, tool_outputs: T::Array[T.any(OpenAI::Models::Beta::Threads::RunSubmitToolOutputsParams::ToolOutput, OpenAI::Internal::AnyHash)], stream: T.noreturn, - request_options: T.nilable(T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash)) + request_options: OpenAI::RequestOpts ) .returns( OpenAI::Internal::Stream[ diff --git a/rbi/openai/resources/beta/threads/runs/steps.rbi b/rbi/openai/resources/beta/threads/runs/steps.rbi index 949e7d14..4ffb638c 100644 --- a/rbi/openai/resources/beta/threads/runs/steps.rbi +++ b/rbi/openai/resources/beta/threads/runs/steps.rbi @@ -13,7 +13,7 @@ module OpenAI thread_id: String, run_id: String, include: T::Array[OpenAI::Models::Beta::Threads::Runs::RunStepInclude::OrSymbol], - request_options: T.nilable(T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash)) + request_options: OpenAI::RequestOpts ) .returns(OpenAI::Models::Beta::Threads::Runs::RunStep) end @@ -45,7 +45,7 @@ module OpenAI include: T::Array[OpenAI::Models::Beta::Threads::Runs::RunStepInclude::OrSymbol], limit: Integer, order: OpenAI::Models::Beta::Threads::Runs::StepListParams::Order::OrSymbol, - request_options: T.nilable(T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash)) + request_options: OpenAI::RequestOpts ) .returns(OpenAI::Internal::CursorPage[OpenAI::Models::Beta::Threads::Runs::RunStep]) end diff --git a/rbi/openai/resources/chat/completions.rbi b/rbi/openai/resources/chat/completions.rbi index 6a7ba0a2..9c73209e 100644 --- a/rbi/openai/resources/chat/completions.rbi +++ b/rbi/openai/resources/chat/completions.rbi @@ -82,7 +82,7 @@ module OpenAI user: String, web_search_options: T.any(OpenAI::Models::Chat::CompletionCreateParams::WebSearchOptions, OpenAI::Internal::AnyHash), stream: T.noreturn, - request_options: T.nilable(T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash)) + request_options: OpenAI::RequestOpts ) .returns(OpenAI::Models::Chat::ChatCompletion) end @@ -355,7 +355,7 @@ module OpenAI user: String, web_search_options: T.any(OpenAI::Models::Chat::CompletionCreateParams::WebSearchOptions, OpenAI::Internal::AnyHash), stream: T.noreturn, - request_options: T.nilable(T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash)) + request_options: OpenAI::RequestOpts ) .returns(OpenAI::Internal::Stream[OpenAI::Models::Chat::ChatCompletionChunk]) end @@ -556,10 +556,7 @@ module OpenAI # Get a stored chat completion. Only Chat Completions that have been created with # the `store` parameter set to `true` will be returned. sig do - params( - completion_id: String, - request_options: T.nilable(T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash)) - ) + params(completion_id: String, request_options: OpenAI::RequestOpts) .returns(OpenAI::Models::Chat::ChatCompletion) end def retrieve( @@ -574,7 +571,7 @@ module OpenAI params( completion_id: String, metadata: T.nilable(T::Hash[Symbol, String]), - request_options: T.nilable(T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash)) + request_options: OpenAI::RequestOpts ) .returns(OpenAI::Models::Chat::ChatCompletion) end @@ -599,7 +596,7 @@ module OpenAI metadata: T.nilable(T::Hash[Symbol, String]), model: String, order: OpenAI::Models::Chat::CompletionListParams::Order::OrSymbol, - request_options: T.nilable(T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash)) + request_options: OpenAI::RequestOpts ) .returns(OpenAI::Internal::CursorPage[OpenAI::Models::Chat::ChatCompletion]) end @@ -622,10 +619,7 @@ module OpenAI # Delete a stored chat completion. Only Chat Completions that have been created # with the `store` parameter set to `true` can be deleted. sig do - params( - completion_id: String, - request_options: T.nilable(T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash)) - ) + params(completion_id: String, request_options: OpenAI::RequestOpts) .returns(OpenAI::Models::Chat::ChatCompletionDeleted) end def delete( diff --git a/rbi/openai/resources/chat/completions/messages.rbi b/rbi/openai/resources/chat/completions/messages.rbi index 53d6538e..c0c82fe6 100644 --- a/rbi/openai/resources/chat/completions/messages.rbi +++ b/rbi/openai/resources/chat/completions/messages.rbi @@ -13,7 +13,7 @@ module OpenAI after: String, limit: Integer, order: OpenAI::Models::Chat::Completions::MessageListParams::Order::OrSymbol, - request_options: T.nilable(T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash)) + request_options: OpenAI::RequestOpts ) .returns(OpenAI::Internal::CursorPage[OpenAI::Models::Chat::ChatCompletionStoreMessage]) end diff --git a/rbi/openai/resources/completions.rbi b/rbi/openai/resources/completions.rbi index 82e27795..b3576715 100644 --- a/rbi/openai/resources/completions.rbi +++ b/rbi/openai/resources/completions.rbi @@ -26,7 +26,7 @@ module OpenAI top_p: T.nilable(Float), user: String, stream: T.noreturn, - request_options: T.nilable(T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash)) + request_options: OpenAI::RequestOpts ) .returns(OpenAI::Models::Completion) end @@ -164,7 +164,7 @@ module OpenAI top_p: T.nilable(Float), user: String, stream: T.noreturn, - request_options: T.nilable(T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash)) + request_options: OpenAI::RequestOpts ) .returns(OpenAI::Internal::Stream[OpenAI::Models::Completion]) end diff --git a/rbi/openai/resources/embeddings.rbi b/rbi/openai/resources/embeddings.rbi index ae6d042f..26fa538b 100644 --- a/rbi/openai/resources/embeddings.rbi +++ b/rbi/openai/resources/embeddings.rbi @@ -11,7 +11,7 @@ module OpenAI dimensions: Integer, encoding_format: OpenAI::Models::EmbeddingCreateParams::EncodingFormat::OrSymbol, user: String, - request_options: T.nilable(T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash)) + request_options: OpenAI::RequestOpts ) .returns(OpenAI::Models::CreateEmbeddingResponse) end diff --git a/rbi/openai/resources/evals.rbi b/rbi/openai/resources/evals.rbi index ccf5a9f3..0f330e56 100644 --- a/rbi/openai/resources/evals.rbi +++ b/rbi/openai/resources/evals.rbi @@ -30,7 +30,7 @@ module OpenAI ], metadata: T.nilable(T::Hash[Symbol, String]), name: String, - request_options: T.nilable(T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash)) + request_options: OpenAI::RequestOpts ) .returns(OpenAI::Models::EvalCreateResponse) end @@ -52,11 +52,7 @@ module OpenAI ); end # Get an evaluation by ID. sig do - params( - eval_id: String, - request_options: T.nilable(T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash)) - ) - .returns(OpenAI::Models::EvalRetrieveResponse) + params(eval_id: String, request_options: OpenAI::RequestOpts).returns(OpenAI::Models::EvalRetrieveResponse) end def retrieve( # The ID of the evaluation to retrieve. @@ -69,7 +65,7 @@ module OpenAI eval_id: String, metadata: T.nilable(T::Hash[Symbol, String]), name: String, - request_options: T.nilable(T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash)) + request_options: OpenAI::RequestOpts ) .returns(OpenAI::Models::EvalUpdateResponse) end @@ -94,7 +90,7 @@ module OpenAI limit: Integer, order: OpenAI::Models::EvalListParams::Order::OrSymbol, order_by: OpenAI::Models::EvalListParams::OrderBy::OrSymbol, - request_options: T.nilable(T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash)) + request_options: OpenAI::RequestOpts ) .returns(OpenAI::Internal::CursorPage[OpenAI::Models::EvalListResponse]) end @@ -112,13 +108,7 @@ module OpenAI request_options: {} ); end # Delete an evaluation. - sig do - params( - eval_id: String, - request_options: T.nilable(T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash)) - ) - .returns(OpenAI::Models::EvalDeleteResponse) - end + sig { params(eval_id: String, request_options: OpenAI::RequestOpts).returns(OpenAI::Models::EvalDeleteResponse) } def delete( # The ID of the evaluation to delete. eval_id, diff --git a/rbi/openai/resources/evals/runs.rbi b/rbi/openai/resources/evals/runs.rbi index 014d5734..86dad155 100644 --- a/rbi/openai/resources/evals/runs.rbi +++ b/rbi/openai/resources/evals/runs.rbi @@ -19,7 +19,7 @@ module OpenAI ), metadata: T.nilable(T::Hash[Symbol, String]), name: String, - request_options: T.nilable(T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash)) + request_options: OpenAI::RequestOpts ) .returns(OpenAI::Models::Evals::RunCreateResponse) end @@ -41,11 +41,7 @@ module OpenAI ); end # Get an evaluation run by ID. sig do - params( - run_id: String, - eval_id: String, - request_options: T.nilable(T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash)) - ) + params(run_id: String, eval_id: String, request_options: OpenAI::RequestOpts) .returns(OpenAI::Models::Evals::RunRetrieveResponse) end def retrieve( @@ -63,7 +59,7 @@ module OpenAI limit: Integer, order: OpenAI::Models::Evals::RunListParams::Order::OrSymbol, status: OpenAI::Models::Evals::RunListParams::Status::OrSymbol, - request_options: T.nilable(T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash)) + request_options: OpenAI::RequestOpts ) .returns(OpenAI::Internal::CursorPage[OpenAI::Models::Evals::RunListResponse]) end @@ -84,11 +80,7 @@ module OpenAI ); end # Delete an eval run. sig do - params( - run_id: String, - eval_id: String, - request_options: T.nilable(T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash)) - ) + params(run_id: String, eval_id: String, request_options: OpenAI::RequestOpts) .returns(OpenAI::Models::Evals::RunDeleteResponse) end def delete( @@ -100,11 +92,7 @@ module OpenAI ); end # Cancel an ongoing evaluation run. sig do - params( - run_id: String, - eval_id: String, - request_options: T.nilable(T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash)) - ) + params(run_id: String, eval_id: String, request_options: OpenAI::RequestOpts) .returns(OpenAI::Models::Evals::RunCancelResponse) end def cancel( diff --git a/rbi/openai/resources/evals/runs/output_items.rbi b/rbi/openai/resources/evals/runs/output_items.rbi index 16053fa0..85f0767a 100644 --- a/rbi/openai/resources/evals/runs/output_items.rbi +++ b/rbi/openai/resources/evals/runs/output_items.rbi @@ -11,7 +11,7 @@ module OpenAI output_item_id: String, eval_id: String, run_id: String, - request_options: T.nilable(T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash)) + request_options: OpenAI::RequestOpts ) .returns(OpenAI::Models::Evals::Runs::OutputItemRetrieveResponse) end @@ -33,7 +33,7 @@ module OpenAI limit: Integer, order: OpenAI::Models::Evals::Runs::OutputItemListParams::Order::OrSymbol, status: OpenAI::Models::Evals::Runs::OutputItemListParams::Status::OrSymbol, - request_options: T.nilable(T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash)) + request_options: OpenAI::RequestOpts ) .returns(OpenAI::Internal::CursorPage[OpenAI::Models::Evals::Runs::OutputItemListResponse]) end diff --git a/rbi/openai/resources/files.rbi b/rbi/openai/resources/files.rbi index aa872185..4afa8467 100644 --- a/rbi/openai/resources/files.rbi +++ b/rbi/openai/resources/files.rbi @@ -28,7 +28,7 @@ module OpenAI params( file: T.any(Pathname, StringIO, IO, OpenAI::FilePart), purpose: OpenAI::Models::FilePurpose::OrSymbol, - request_options: T.nilable(T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash)) + request_options: OpenAI::RequestOpts ) .returns(OpenAI::Models::FileObject) end @@ -43,13 +43,7 @@ module OpenAI request_options: {} ); end # Returns information about a specific file. - sig do - params( - file_id: String, - request_options: T.nilable(T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash)) - ) - .returns(OpenAI::Models::FileObject) - end + sig { params(file_id: String, request_options: OpenAI::RequestOpts).returns(OpenAI::Models::FileObject) } def retrieve( # The ID of the file to use for this request. file_id, @@ -62,7 +56,7 @@ module OpenAI limit: Integer, order: OpenAI::Models::FileListParams::Order::OrSymbol, purpose: String, - request_options: T.nilable(T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash)) + request_options: OpenAI::RequestOpts ) .returns(OpenAI::Internal::CursorPage[OpenAI::Models::FileObject]) end @@ -83,26 +77,14 @@ module OpenAI request_options: {} ); end # Delete a file. - sig do - params( - file_id: String, - request_options: T.nilable(T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash)) - ) - .returns(OpenAI::Models::FileDeleted) - end + sig { params(file_id: String, request_options: OpenAI::RequestOpts).returns(OpenAI::Models::FileDeleted) } def delete( # The ID of the file to use for this request. file_id, request_options: {} ); end # Returns the contents of the specified file. - sig do - params( - file_id: String, - request_options: T.nilable(T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash)) - ) - .returns(StringIO) - end + sig { params(file_id: String, request_options: OpenAI::RequestOpts).returns(StringIO) } def content( # The ID of the file to use for this request. file_id, diff --git a/rbi/openai/resources/fine_tuning/checkpoints/permissions.rbi b/rbi/openai/resources/fine_tuning/checkpoints/permissions.rbi index 64fb5a6a..1fa2933b 100644 --- a/rbi/openai/resources/fine_tuning/checkpoints/permissions.rbi +++ b/rbi/openai/resources/fine_tuning/checkpoints/permissions.rbi @@ -13,7 +13,7 @@ module OpenAI params( fine_tuned_model_checkpoint: String, project_ids: T::Array[String], - request_options: T.nilable(T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash)) + request_options: OpenAI::RequestOpts ) .returns(OpenAI::Internal::Page[OpenAI::Models::FineTuning::Checkpoints::PermissionCreateResponse]) end @@ -35,7 +35,7 @@ module OpenAI limit: Integer, order: OpenAI::Models::FineTuning::Checkpoints::PermissionRetrieveParams::Order::OrSymbol, project_id: String, - request_options: T.nilable(T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash)) + request_options: OpenAI::RequestOpts ) .returns(OpenAI::Models::FineTuning::Checkpoints::PermissionRetrieveResponse) end @@ -60,7 +60,7 @@ module OpenAI params( permission_id: String, fine_tuned_model_checkpoint: String, - request_options: T.nilable(T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash)) + request_options: OpenAI::RequestOpts ) .returns(OpenAI::Models::FineTuning::Checkpoints::PermissionDeleteResponse) end diff --git a/rbi/openai/resources/fine_tuning/jobs.rbi b/rbi/openai/resources/fine_tuning/jobs.rbi index b39d1d85..c0e05100 100644 --- a/rbi/openai/resources/fine_tuning/jobs.rbi +++ b/rbi/openai/resources/fine_tuning/jobs.rbi @@ -27,7 +27,7 @@ module OpenAI seed: T.nilable(Integer), suffix: T.nilable(String), validation_file: T.nilable(String), - request_options: T.nilable(T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash)) + request_options: OpenAI::RequestOpts ) .returns(OpenAI::Models::FineTuning::FineTuningJob) end @@ -96,10 +96,7 @@ module OpenAI # # [Learn more about fine-tuning](https://platform.openai.com/docs/guides/fine-tuning) sig do - params( - fine_tuning_job_id: String, - request_options: T.nilable(T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash)) - ) + params(fine_tuning_job_id: String, request_options: OpenAI::RequestOpts) .returns(OpenAI::Models::FineTuning::FineTuningJob) end def retrieve( @@ -113,7 +110,7 @@ module OpenAI after: String, limit: Integer, metadata: T.nilable(T::Hash[Symbol, String]), - request_options: T.nilable(T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash)) + request_options: OpenAI::RequestOpts ) .returns(OpenAI::Internal::CursorPage[OpenAI::Models::FineTuning::FineTuningJob]) end @@ -129,10 +126,7 @@ module OpenAI ); end # Immediately cancel a fine-tune job. sig do - params( - fine_tuning_job_id: String, - request_options: T.nilable(T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash)) - ) + params(fine_tuning_job_id: String, request_options: OpenAI::RequestOpts) .returns(OpenAI::Models::FineTuning::FineTuningJob) end def cancel( @@ -146,7 +140,7 @@ module OpenAI fine_tuning_job_id: String, after: String, limit: Integer, - request_options: T.nilable(T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash)) + request_options: OpenAI::RequestOpts ) .returns(OpenAI::Internal::CursorPage[OpenAI::Models::FineTuning::FineTuningJobEvent]) end diff --git a/rbi/openai/resources/fine_tuning/jobs/checkpoints.rbi b/rbi/openai/resources/fine_tuning/jobs/checkpoints.rbi index dfc6cee6..bf3ced26 100644 --- a/rbi/openai/resources/fine_tuning/jobs/checkpoints.rbi +++ b/rbi/openai/resources/fine_tuning/jobs/checkpoints.rbi @@ -11,7 +11,7 @@ module OpenAI fine_tuning_job_id: String, after: String, limit: Integer, - request_options: T.nilable(T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash)) + request_options: OpenAI::RequestOpts ) .returns(OpenAI::Internal::CursorPage[OpenAI::Models::FineTuning::Jobs::FineTuningJobCheckpoint]) end diff --git a/rbi/openai/resources/images.rbi b/rbi/openai/resources/images.rbi index f50d6486..13ac0077 100644 --- a/rbi/openai/resources/images.rbi +++ b/rbi/openai/resources/images.rbi @@ -12,7 +12,7 @@ module OpenAI response_format: T.nilable(OpenAI::Models::ImageCreateVariationParams::ResponseFormat::OrSymbol), size: T.nilable(OpenAI::Models::ImageCreateVariationParams::Size::OrSymbol), user: String, - request_options: T.nilable(T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash)) + request_options: OpenAI::RequestOpts ) .returns(OpenAI::Models::ImagesResponse) end @@ -57,7 +57,7 @@ module OpenAI response_format: T.nilable(OpenAI::Models::ImageEditParams::ResponseFormat::OrSymbol), size: T.nilable(OpenAI::Models::ImageEditParams::Size::OrSymbol), user: String, - request_options: T.nilable(T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash)) + request_options: OpenAI::RequestOpts ) .returns(OpenAI::Models::ImagesResponse) end @@ -116,7 +116,7 @@ module OpenAI size: T.nilable(OpenAI::Models::ImageGenerateParams::Size::OrSymbol), style: T.nilable(OpenAI::Models::ImageGenerateParams::Style::OrSymbol), user: String, - request_options: T.nilable(T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash)) + request_options: OpenAI::RequestOpts ) .returns(OpenAI::Models::ImagesResponse) end diff --git a/rbi/openai/resources/models.rbi b/rbi/openai/resources/models.rbi index 252a1dca..e403a7e3 100644 --- a/rbi/openai/resources/models.rbi +++ b/rbi/openai/resources/models.rbi @@ -5,13 +5,7 @@ module OpenAI class Models # Retrieves a model instance, providing basic information about the model such as # the owner and permissioning. - sig do - params( - model: String, - request_options: T.nilable(T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash)) - ) - .returns(OpenAI::Models::Model) - end + sig { params(model: String, request_options: OpenAI::RequestOpts).returns(OpenAI::Models::Model) } def retrieve( # The ID of the model to use for this request model, @@ -19,21 +13,12 @@ module OpenAI ); end # Lists the currently available models, and provides basic information about each # one such as the owner and availability. - sig do - params(request_options: T.nilable(T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash))) - .returns(OpenAI::Internal::Page[OpenAI::Models::Model]) - end + sig { params(request_options: OpenAI::RequestOpts).returns(OpenAI::Internal::Page[OpenAI::Models::Model]) } def list(request_options: {}); end # Delete a fine-tuned model. You must have the Owner role in your organization to # delete a model. - sig do - params( - model: String, - request_options: T.nilable(T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash)) - ) - .returns(OpenAI::Models::ModelDeleted) - end + sig { params(model: String, request_options: OpenAI::RequestOpts).returns(OpenAI::Models::ModelDeleted) } def delete( # The model to delete model, diff --git a/rbi/openai/resources/moderations.rbi b/rbi/openai/resources/moderations.rbi index b068d8e7..fe3696e7 100644 --- a/rbi/openai/resources/moderations.rbi +++ b/rbi/openai/resources/moderations.rbi @@ -19,7 +19,7 @@ module OpenAI ] ), model: T.any(String, OpenAI::Models::ModerationModel::OrSymbol), - request_options: T.nilable(T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash)) + request_options: OpenAI::RequestOpts ) .returns(OpenAI::Models::ModerationCreateResponse) end diff --git a/rbi/openai/resources/responses.rbi b/rbi/openai/resources/responses.rbi index b67ed0d1..ba349b4b 100644 --- a/rbi/openai/resources/responses.rbi +++ b/rbi/openai/resources/responses.rbi @@ -75,7 +75,7 @@ module OpenAI truncation: T.nilable(OpenAI::Models::Responses::ResponseCreateParams::Truncation::OrSymbol), user: String, stream: T.noreturn, - request_options: T.nilable(T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash)) + request_options: OpenAI::RequestOpts ) .returns(OpenAI::Models::Responses::Response) end @@ -276,7 +276,7 @@ module OpenAI truncation: T.nilable(OpenAI::Models::Responses::ResponseCreateParams::Truncation::OrSymbol), user: String, stream: T.noreturn, - request_options: T.nilable(T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash)) + request_options: OpenAI::RequestOpts ) .returns( OpenAI::Internal::Stream[ @@ -454,7 +454,7 @@ module OpenAI params( response_id: String, include: T::Array[OpenAI::Models::Responses::ResponseIncludable::OrSymbol], - request_options: T.nilable(T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash)) + request_options: OpenAI::RequestOpts ) .returns(OpenAI::Models::Responses::Response) end @@ -467,13 +467,7 @@ module OpenAI request_options: {} ); end # Deletes a model response with the given ID. - sig do - params( - response_id: String, - request_options: T.nilable(T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash)) - ) - .void - end + sig { params(response_id: String, request_options: OpenAI::RequestOpts).void } def delete( # The ID of the response to delete. response_id, diff --git a/rbi/openai/resources/responses/input_items.rbi b/rbi/openai/resources/responses/input_items.rbi index 0c70b7b0..b2d6a042 100644 --- a/rbi/openai/resources/responses/input_items.rbi +++ b/rbi/openai/resources/responses/input_items.rbi @@ -13,7 +13,7 @@ module OpenAI include: T::Array[OpenAI::Models::Responses::ResponseIncludable::OrSymbol], limit: Integer, order: OpenAI::Models::Responses::InputItemListParams::Order::OrSymbol, - request_options: T.nilable(T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash)) + request_options: OpenAI::RequestOpts ) .returns( OpenAI::Internal::CursorPage[ diff --git a/rbi/openai/resources/uploads.rbi b/rbi/openai/resources/uploads.rbi index c397fdbf..ef17a778 100644 --- a/rbi/openai/resources/uploads.rbi +++ b/rbi/openai/resources/uploads.rbi @@ -31,7 +31,7 @@ module OpenAI filename: String, mime_type: String, purpose: OpenAI::Models::FilePurpose::OrSymbol, - request_options: T.nilable(T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash)) + request_options: OpenAI::RequestOpts ) .returns(OpenAI::Models::Upload) end @@ -53,13 +53,7 @@ module OpenAI request_options: {} ); end # Cancels the Upload. No Parts may be added after an Upload is cancelled. - sig do - params( - upload_id: String, - request_options: T.nilable(T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash)) - ) - .returns(OpenAI::Models::Upload) - end + sig { params(upload_id: String, request_options: OpenAI::RequestOpts).returns(OpenAI::Models::Upload) } def cancel( # The ID of the Upload. upload_id, @@ -83,7 +77,7 @@ module OpenAI upload_id: String, part_ids: T::Array[String], md5: String, - request_options: T.nilable(T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash)) + request_options: OpenAI::RequestOpts ) .returns(OpenAI::Models::Upload) end diff --git a/rbi/openai/resources/uploads/parts.rbi b/rbi/openai/resources/uploads/parts.rbi index 867a760a..4534662a 100644 --- a/rbi/openai/resources/uploads/parts.rbi +++ b/rbi/openai/resources/uploads/parts.rbi @@ -19,7 +19,7 @@ module OpenAI params( upload_id: String, data: T.any(Pathname, StringIO, IO, OpenAI::FilePart), - request_options: T.nilable(T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash)) + request_options: OpenAI::RequestOpts ) .returns(OpenAI::Models::Uploads::UploadPart) end diff --git a/rbi/openai/resources/vector_stores.rbi b/rbi/openai/resources/vector_stores.rbi index 7658101e..6c6be823 100644 --- a/rbi/openai/resources/vector_stores.rbi +++ b/rbi/openai/resources/vector_stores.rbi @@ -21,7 +21,7 @@ module OpenAI file_ids: T::Array[String], metadata: T.nilable(T::Hash[Symbol, String]), name: String, - request_options: T.nilable(T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash)) + request_options: OpenAI::RequestOpts ) .returns(OpenAI::Models::VectorStore) end @@ -47,13 +47,7 @@ module OpenAI request_options: {} ); end # Retrieves a vector store. - sig do - params( - vector_store_id: String, - request_options: T.nilable(T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash)) - ) - .returns(OpenAI::Models::VectorStore) - end + sig { params(vector_store_id: String, request_options: OpenAI::RequestOpts).returns(OpenAI::Models::VectorStore) } def retrieve( # The ID of the vector store to retrieve. vector_store_id, @@ -66,7 +60,7 @@ module OpenAI expires_after: T.nilable(T.any(OpenAI::Models::VectorStoreUpdateParams::ExpiresAfter, OpenAI::Internal::AnyHash)), metadata: T.nilable(T::Hash[Symbol, String]), name: T.nilable(String), - request_options: T.nilable(T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash)) + request_options: OpenAI::RequestOpts ) .returns(OpenAI::Models::VectorStore) end @@ -93,7 +87,7 @@ module OpenAI before: String, limit: Integer, order: OpenAI::Models::VectorStoreListParams::Order::OrSymbol, - request_options: T.nilable(T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash)) + request_options: OpenAI::RequestOpts ) .returns(OpenAI::Internal::CursorPage[OpenAI::Models::VectorStore]) end @@ -118,10 +112,7 @@ module OpenAI ); end # Delete a vector store. sig do - params( - vector_store_id: String, - request_options: T.nilable(T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash)) - ) + params(vector_store_id: String, request_options: OpenAI::RequestOpts) .returns(OpenAI::Models::VectorStoreDeleted) end def delete( @@ -139,7 +130,7 @@ module OpenAI max_num_results: Integer, ranking_options: T.any(OpenAI::Models::VectorStoreSearchParams::RankingOptions, OpenAI::Internal::AnyHash), rewrite_query: T::Boolean, - request_options: T.nilable(T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash)) + request_options: OpenAI::RequestOpts ) .returns(OpenAI::Internal::Page[OpenAI::Models::VectorStoreSearchResponse]) end diff --git a/rbi/openai/resources/vector_stores/file_batches.rbi b/rbi/openai/resources/vector_stores/file_batches.rbi index 8a6a5231..3ef38403 100644 --- a/rbi/openai/resources/vector_stores/file_batches.rbi +++ b/rbi/openai/resources/vector_stores/file_batches.rbi @@ -15,7 +15,7 @@ module OpenAI OpenAI::Internal::AnyHash, OpenAI::Models::StaticFileChunkingStrategyObjectParam ), - request_options: T.nilable(T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash)) + request_options: OpenAI::RequestOpts ) .returns(OpenAI::Models::VectorStores::VectorStoreFileBatch) end @@ -39,11 +39,7 @@ module OpenAI ); end # Retrieves a vector store file batch. sig do - params( - batch_id: String, - vector_store_id: String, - request_options: T.nilable(T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash)) - ) + params(batch_id: String, vector_store_id: String, request_options: OpenAI::RequestOpts) .returns(OpenAI::Models::VectorStores::VectorStoreFileBatch) end def retrieve( @@ -56,11 +52,7 @@ module OpenAI # Cancel a vector store file batch. This attempts to cancel the processing of # files in this batch as soon as possible. sig do - params( - batch_id: String, - vector_store_id: String, - request_options: T.nilable(T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash)) - ) + params(batch_id: String, vector_store_id: String, request_options: OpenAI::RequestOpts) .returns(OpenAI::Models::VectorStores::VectorStoreFileBatch) end def cancel( @@ -80,7 +72,7 @@ module OpenAI filter: OpenAI::Models::VectorStores::FileBatchListFilesParams::Filter::OrSymbol, limit: Integer, order: OpenAI::Models::VectorStores::FileBatchListFilesParams::Order::OrSymbol, - request_options: T.nilable(T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash)) + request_options: OpenAI::RequestOpts ) .returns(OpenAI::Internal::CursorPage[OpenAI::Models::VectorStores::VectorStoreFile]) end diff --git a/rbi/openai/resources/vector_stores/files.rbi b/rbi/openai/resources/vector_stores/files.rbi index eb8c2391..e70c0adf 100644 --- a/rbi/openai/resources/vector_stores/files.rbi +++ b/rbi/openai/resources/vector_stores/files.rbi @@ -17,7 +17,7 @@ module OpenAI OpenAI::Internal::AnyHash, OpenAI::Models::StaticFileChunkingStrategyObjectParam ), - request_options: T.nilable(T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash)) + request_options: OpenAI::RequestOpts ) .returns(OpenAI::Models::VectorStores::VectorStoreFile) end @@ -41,11 +41,7 @@ module OpenAI ); end # Retrieves a vector store file. sig do - params( - file_id: String, - vector_store_id: String, - request_options: T.nilable(T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash)) - ) + params(file_id: String, vector_store_id: String, request_options: OpenAI::RequestOpts) .returns(OpenAI::Models::VectorStores::VectorStoreFile) end def retrieve( @@ -61,7 +57,7 @@ module OpenAI file_id: String, vector_store_id: String, attributes: T.nilable(T::Hash[Symbol, T.any(String, Float, T::Boolean)]), - request_options: T.nilable(T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash)) + request_options: OpenAI::RequestOpts ) .returns(OpenAI::Models::VectorStores::VectorStoreFile) end @@ -87,7 +83,7 @@ module OpenAI filter: OpenAI::Models::VectorStores::FileListParams::Filter::OrSymbol, limit: Integer, order: OpenAI::Models::VectorStores::FileListParams::Order::OrSymbol, - request_options: T.nilable(T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash)) + request_options: OpenAI::RequestOpts ) .returns(OpenAI::Internal::CursorPage[OpenAI::Models::VectorStores::VectorStoreFile]) end @@ -119,11 +115,7 @@ module OpenAI # [delete file](https://platform.openai.com/docs/api-reference/files/delete) # endpoint. sig do - params( - file_id: String, - vector_store_id: String, - request_options: T.nilable(T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash)) - ) + params(file_id: String, vector_store_id: String, request_options: OpenAI::RequestOpts) .returns(OpenAI::Models::VectorStores::VectorStoreFileDeleted) end def delete( @@ -135,11 +127,7 @@ module OpenAI ); end # Retrieve the parsed contents of a vector store file. sig do - params( - file_id: String, - vector_store_id: String, - request_options: T.nilable(T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash)) - ) + params(file_id: String, vector_store_id: String, request_options: OpenAI::RequestOpts) .returns(OpenAI::Internal::Page[OpenAI::Models::VectorStores::FileContentResponse]) end def content( diff --git a/sig/openai/models/function_parameters.rbs b/sig/openai/models/function_parameters.rbs index 6dcb5bc1..9370883a 100644 --- a/sig/openai/models/function_parameters.rbs +++ b/sig/openai/models/function_parameters.rbs @@ -2,6 +2,6 @@ module OpenAI module Models type function_parameters = ::Hash[Symbol, top] - FunctionParameters: function_parameters + FunctionParameters: OpenAI::Internal::Type::Converter end end diff --git a/sig/openai/models/metadata.rbs b/sig/openai/models/metadata.rbs index 304e17b7..74e531c1 100644 --- a/sig/openai/models/metadata.rbs +++ b/sig/openai/models/metadata.rbs @@ -2,6 +2,6 @@ module OpenAI module Models type metadata = ::Hash[Symbol, String]? - Metadata: metadata + Metadata: OpenAI::Internal::Type::Converter end end diff --git a/sig/openai/models/responses/response_input.rbs b/sig/openai/models/responses/response_input.rbs index 2ca95b4d..494efa0c 100644 --- a/sig/openai/models/responses/response_input.rbs +++ b/sig/openai/models/responses/response_input.rbs @@ -4,7 +4,7 @@ module OpenAI type response_input = ::Array[OpenAI::Models::Responses::response_input_item] - ResponseInput: response_input + ResponseInput: OpenAI::Internal::Type::Converter end end end diff --git a/sig/openai/models/responses/response_input_message_content_list.rbs b/sig/openai/models/responses/response_input_message_content_list.rbs index d269f8ed..38dd2e85 100644 --- a/sig/openai/models/responses/response_input_message_content_list.rbs +++ b/sig/openai/models/responses/response_input_message_content_list.rbs @@ -4,7 +4,7 @@ module OpenAI type response_input_message_content_list = ::Array[OpenAI::Models::Responses::response_input_content] - ResponseInputMessageContentList: response_input_message_content_list + ResponseInputMessageContentList: OpenAI::Internal::Type::Converter end end end From 5c9767ed5d4204dd17bcda1b5a5b79d5e628e0e1 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Mon, 28 Apr 2025 14:14:25 +0000 Subject: [PATCH 22/47] chore: add generator safe directory --- CONTRIBUTING.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 6f93458e..97d0df78 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -14,7 +14,7 @@ This will install all the required dependencies. ## Modifying/Adding code -Most of the SDK is generated code. Modifications to code will be persisted between generations, but may result in merge conflicts between manual patches and changes from the generator. The generator will never modify the contents `examples/` directory. +Most of the SDK is generated code. Modifications to code will be persisted between generations, but may result in merge conflicts between manual patches and changes from the generator. The generator will never modify the contents of `lib/openai/helpers/` and `examples/` directory. ## Adding and running examples From 4244f8967d1583d97efa679d096eee04fd764240 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Tue, 29 Apr 2025 15:14:57 +0000 Subject: [PATCH 23/47] chore: loosen rubocop rules that don't always make sense --- .rubocop.yml | 11 +++++++++++ Rakefile | 8 +++++++- test/openai/internal/type/base_model_test.rb | 2 -- 3 files changed, 18 insertions(+), 3 deletions(-) diff --git a/.rubocop.yml b/.rubocop.yml index c88b94f1..315db278 100644 --- a/.rubocop.yml +++ b/.rubocop.yml @@ -64,11 +64,19 @@ Layout/MultilineMethodParameterLineBreaks: Layout/SpaceInsideHashLiteralBraces: EnforcedStyle: no_space +Lint/BooleanSymbol: + Enabled: false + # This option occasionally mangles identifier names Lint/DeprecatedConstants: Exclude: - "**/*.rbi" +# We use pattern assertion in tests to ensure correctness. +Lint/DuplicateMatchPattern: + Exclude: + - "test/**/*" + # Fairly useful in tests for pattern assertions. Lint/EmptyInPattern: Exclude: @@ -119,6 +127,9 @@ Metrics/ParameterLists: Metrics/PerceivedComplexity: Enabled: false +Naming/AccessorMethodName: + Enabled: false + # Need to preserve block identifier for documentation. Naming/BlockForwarding: Enabled: false diff --git a/Rakefile b/Rakefile index 2e5368f2..97b1805c 100644 --- a/Rakefile +++ b/Rakefile @@ -39,7 +39,13 @@ xargs = %w[xargs --no-run-if-empty --null --max-procs=0 --max-args=300 --] desc("Lint `*.rb(i)`") multitask(:"lint:rubocop") do - lint = xargs + %w[rubocop --fail-level E] + (ENV.key?("CI") ? %w[--format github] : []) + rubocop = %w[rubocop --fail-level E] + rubocop += %w[--format github] if ENV.key?("CI") + + # some lines cannot be shortened + rubocop += %w[--except Lint/RedundantCopDisableDirective,Layout/LineLength] + + lint = xargs + rubocop sh("#{rubo_find.shelljoin} | #{lint.shelljoin}") end diff --git a/test/openai/internal/type/base_model_test.rb b/test/openai/internal/type/base_model_test.rb index 3f6e7420..f29a04c2 100644 --- a/test/openai/internal/type/base_model_test.rb +++ b/test/openai/internal/type/base_model_test.rb @@ -194,11 +194,9 @@ def test_coerce [E0.new(:one), "one"] => [{yes: 1}, :one], [E0.new(:two), "one"] => [{maybe: 1}, "one"], - # rubocop:disable Lint/BooleanSymbol [E1, true] => [{yes: 1}, true], [E1, false] => [{no: 1}, false], [E1, :true] => [{no: 1}, :true], - # rubocop:enable Lint/BooleanSymbol [E2, 1] => [{yes: 1}, 1], [E2, 1.0] => [{yes: 1}, 1], From 8a0bf703fc96d22831b38ddcef4aff3eb9bd301f Mon Sep 17 00:00:00 2001 From: Erik Berlin Date: Tue, 29 Apr 2025 15:15:51 -0700 Subject: [PATCH 24/47] Fix warning: JSON.fast_generate is deprecated Use JSON.generate instead. --- lib/openai/internal/util.rb | 6 +++--- test/openai/client_test.rb | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/lib/openai/internal/util.rb b/lib/openai/internal/util.rb index d2eb9c19..4722ccb2 100644 --- a/lib/openai/internal/util.rb +++ b/lib/openai/internal/util.rb @@ -515,7 +515,7 @@ class << self y << val.to_s else y << "Content-Type: application/json\r\n\r\n" - y << JSON.fast_generate(val) + y << JSON.generate(val) end y << "\r\n" end @@ -564,9 +564,9 @@ def encode_content(headers, body) case [content_type, body] in [%r{^application/(?:vnd\.api\+)?json}, Hash | Array | -> { primitive?(_1) }] - [headers, JSON.fast_generate(body)] + [headers, JSON.generate(body)] in [%r{^application/(?:x-)?jsonl}, Enumerable] unless body.is_a?(StringIO) || body.is_a?(IO) - [headers, body.lazy.map { JSON.fast_generate(_1) }] + [headers, body.lazy.map { JSON.generate(_1) }] in [%r{^multipart/form-data}, Hash | Pathname | StringIO | IO] boundary, strio = encode_multipart_streaming(body) headers = {**headers, "content-type" => "#{content_type}; boundary=#{boundary}"} diff --git a/test/openai/client_test.rb b/test/openai/client_test.rb index 586ba30e..567c7840 100644 --- a/test/openai/client_test.rb +++ b/test/openai/client_test.rb @@ -37,7 +37,7 @@ class MockRequester def initialize(response_code, response_headers, response_data) @response_code = response_code @response_headers = response_headers - @response_data = JSON.fast_generate(response_data) + @response_data = JSON.generate(response_data) @attempts = [] end From 85e979631b691e5e8e278482b0fc98f7ddbbcafa Mon Sep 17 00:00:00 2001 From: Erik Berlin Date: Tue, 29 Apr 2025 16:08:57 -0700 Subject: [PATCH 25/47] Bump minimum supported Ruby version to 3.2 Ruby 3.1 is no longer supported as of March 31, 2025. --- .github/workflows/ci.yml | 4 ++-- .github/workflows/create-releases.yml | 2 +- .github/workflows/publish-gem.yml | 2 +- .rubocop.yml | 2 +- .ruby-version | 2 +- README.md | 6 +++--- examples/advanced_streaming.rb | 4 ++-- lib/openai/internal/type/base_stream.rb | 4 ++-- openai.gemspec | 2 +- 9 files changed, 14 insertions(+), 14 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index b2c0c8f7..5923e599 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -18,7 +18,7 @@ jobs: uses: ruby/setup-ruby@v1 with: bundler-cache: false - ruby-version: '3.1' + ruby-version: '3.2' - run: |- bundle install @@ -33,7 +33,7 @@ jobs: uses: ruby/setup-ruby@v1 with: bundler-cache: false - ruby-version: '3.1' + ruby-version: '3.2' - run: |- bundle install diff --git a/.github/workflows/create-releases.yml b/.github/workflows/create-releases.yml index c1ea30fa..b9e97dc6 100644 --- a/.github/workflows/create-releases.yml +++ b/.github/workflows/create-releases.yml @@ -29,7 +29,7 @@ jobs: uses: ruby/setup-ruby@v1 with: bundler-cache: false - ruby-version: '3.1' + ruby-version: '3.2' - run: |- bundle install diff --git a/.github/workflows/publish-gem.yml b/.github/workflows/publish-gem.yml index 7502f1c2..0e942b1c 100644 --- a/.github/workflows/publish-gem.yml +++ b/.github/workflows/publish-gem.yml @@ -15,7 +15,7 @@ jobs: uses: ruby/setup-ruby@v1 with: bundler-cache: false - ruby-version: '3.1' + ruby-version: '3.2' - run: |- bundle install diff --git a/.rubocop.yml b/.rubocop.yml index c88b94f1..bb81142c 100644 --- a/.rubocop.yml +++ b/.rubocop.yml @@ -8,7 +8,7 @@ AllCops: - "bin/*" NewCops: enable SuggestExtensions: false - TargetRubyVersion: 3.1.0 + TargetRubyVersion: 3.2 # Whether MFA is required or not should be left to the token configuration. Gemspec/RequireMFA: diff --git a/.ruby-version b/.ruby-version index fd2a0186..a3ec5a4b 100644 --- a/.ruby-version +++ b/.ruby-version @@ -1 +1 @@ -3.1.0 +3.2 diff --git a/README.md b/README.md index 33a1ebe9..f1a0a15a 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ # OpenAI Ruby API library -The OpenAI Ruby library provides convenient access to the OpenAI REST API from any Ruby 3.1.0+ application. +The OpenAI Ruby library provides convenient access to the OpenAI REST API from any Ruby 3.2+ application. ## Documentation @@ -91,7 +91,7 @@ end ### File uploads -Request parameters that correspond to file uploads can be passed as `StringIO`, or a [`Pathname`](https://rubyapi.org/3.1/o/pathname) instance. +Request parameters that correspond to file uploads can be passed as `StringIO`, or a [`Pathname`](https://rubyapi.org/3.2/o/pathname) instance. ```ruby require "pathname" @@ -271,7 +271,7 @@ This package considers improvements to the (non-runtime) `*.rbi` and `*.rbs` typ ## Requirements -Ruby 3.1.0 or higher. +Ruby 3.2 or higher. ## Contributing diff --git a/examples/advanced_streaming.rb b/examples/advanced_streaming.rb index 1d3cf073..75a656d7 100755 --- a/examples/advanced_streaming.rb +++ b/examples/advanced_streaming.rb @@ -17,7 +17,7 @@ temperature: 0.0 ) - # the `stream` itself is an `https://rubyapi.org/3.1/o/enumerable` + # the `stream` itself is an `https://rubyapi.org/3.2/o/enumerable` # which means that you can work with the stream almost as if it is an array all_choices = stream @@ -49,7 +49,7 @@ stream_of_choices = stream - # calling `#lazy` will return a deferred `https://rubyapi.org/3.1/o/enumerator/lazy` + # calling `#lazy` will return a deferred `https://rubyapi.org/3.2/o/enumerator/lazy` .lazy # each successive calls to methods that return another `enumerable` will not consume the stream # but rather, return a transformed stream. (see link above) diff --git a/lib/openai/internal/type/base_stream.rb b/lib/openai/internal/type/base_stream.rb index ebcb564c..58f90fc6 100644 --- a/lib/openai/internal/type/base_stream.rb +++ b/lib/openai/internal/type/base_stream.rb @@ -7,7 +7,7 @@ module Type # # This module provides a base implementation for streaming responses in the SDK. # - # @see https://rubyapi.org/3.1/o/enumerable + # @see https://rubyapi.org/3.2/o/enumerable module BaseStream include Enumerable @@ -22,7 +22,7 @@ class << self # # @return [Proc] # - # @see https://rubyapi.org/3.1/o/objectspace#method-c-define_finalizer + # @see https://rubyapi.org/3.2/o/objectspace#method-c-define_finalizer def defer_closing(stream) = ->(_id) { OpenAI::Internal::Util.close_fused!(stream) } end diff --git a/openai.gemspec b/openai.gemspec index 64c1b6d9..a26c3c68 100644 --- a/openai.gemspec +++ b/openai.gemspec @@ -12,7 +12,7 @@ Gem::Specification.new do |s| s.metadata["homepage_uri"] = s.homepage s.metadata["source_code_uri"] = "https://github.com/openai/openai-ruby" s.metadata["rubygems_mfa_required"] = false.to_s - s.required_ruby_version = ">= 3.0.0" + s.required_ruby_version = ">= 3.2" s.files = Dir[ "lib/**/*.rb", From a6c76091c66abaf1c9bdfaaa348f9593639cadc4 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Wed, 30 Apr 2025 15:46:53 +0000 Subject: [PATCH 26/47] docs(readme): fix typo --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 5c092f5e..9e3e1aec 100644 --- a/README.md +++ b/README.md @@ -118,7 +118,7 @@ rescue OpenAI::Errors::APIError => e end ``` -Error codes are as followed: +Error codes are as follows: | Cause | Error Type | | ---------------- | -------------------------- | From 3be700f04d782b538fcde678016532cfbc2eb66d Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Wed, 30 Apr 2025 15:59:00 +0000 Subject: [PATCH 27/47] chore: migrate away from deprecated `JSON#fast_generate` --- Rakefile | 2 +- lib/openai/internal/util.rb | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Rakefile b/Rakefile index 97b1805c..df7a5b88 100644 --- a/Rakefile +++ b/Rakefile @@ -31,7 +31,7 @@ multitask(:test) do .map { "require_relative(#{_1.dump});" } .join - ruby(*%w[-e], rb, verbose: false) { fail unless _1 } + ruby(*%w[-w -e], rb, verbose: false) { fail unless _1 } end rubo_find = %w[find ./lib ./test ./rbi -type f -and ( -name *.rb -or -name *.rbi ) -print0] diff --git a/lib/openai/internal/util.rb b/lib/openai/internal/util.rb index d87a0000..0ecc6aca 100644 --- a/lib/openai/internal/util.rb +++ b/lib/openai/internal/util.rb @@ -493,7 +493,7 @@ class << self y << val.to_s else y << "Content-Type: application/json\r\n\r\n" - y << JSON.fast_generate(val) + y << JSON.generate(val) end y << "\r\n" end From c248f1522ed120fed49cb94a79a49cc8db146bf5 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Thu, 1 May 2025 15:38:43 +0000 Subject: [PATCH 28/47] chore: remove Gemfile.lock during bootstrap --- .github/workflows/ci.yml | 2 - .github/workflows/publish-gem.yml | 1 - .gitignore | 1 + .ruby-version | 2 +- Gemfile.lock | 47 ++++++++++---------- README.md | 4 +- Rakefile | 2 +- lib/openai/internal/transport/base_client.rb | 2 +- openai.gemspec | 2 +- rbi/openai/errors.rbi | 2 +- scripts/bootstrap | 1 + 11 files changed, 33 insertions(+), 33 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 13505cd7..6026ce13 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -20,7 +20,6 @@ jobs: uses: ruby/setup-ruby@v1 with: bundler-cache: false - ruby-version: '3.2' - run: |- bundle install @@ -36,7 +35,6 @@ jobs: uses: ruby/setup-ruby@v1 with: bundler-cache: false - ruby-version: '3.2' - run: |- bundle install diff --git a/.github/workflows/publish-gem.yml b/.github/workflows/publish-gem.yml index 0e942b1c..b3a5a647 100644 --- a/.github/workflows/publish-gem.yml +++ b/.github/workflows/publish-gem.yml @@ -15,7 +15,6 @@ jobs: uses: ruby/setup-ruby@v1 with: bundler-cache: false - ruby-version: '3.2' - run: |- bundle install diff --git a/.gitignore b/.gitignore index 3d26ceed..edaa164e 100644 --- a/.gitignore +++ b/.gitignore @@ -7,4 +7,5 @@ bin/tapioca Brewfile.lock.json doc/ +Gemfile.lock sorbet/tapioca/* diff --git a/.ruby-version b/.ruby-version index a3ec5a4b..944880fa 100644 --- a/.ruby-version +++ b/.ruby-version @@ -1 +1 @@ -3.2 +3.2.0 diff --git a/Gemfile.lock b/Gemfile.lock index 6a6143f4..e1fd6bb2 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -1,6 +1,6 @@ GIT remote: https://github.com/stainless-api/syntax_tree-rbs.git - revision: 140eb3ba2ff4b959b345ac2a7927cd758a9f1284 + revision: c30b50219918be7cfe3ef803a00b59d1e77fcada branch: main specs: syntax_tree-rbs (1.0.0) @@ -17,7 +17,7 @@ PATH GEM remote: https://rubygems.org/ specs: - activesupport (7.2.2.1) + activesupport (8.0.2) base64 benchmark (>= 0.3) bigdecimal @@ -29,6 +29,7 @@ GEM minitest (>= 5.1) securerandom (>= 0.3) tzinfo (~> 2.0, >= 2.0.5) + uri (>= 0.13.1) addressable (2.8.7) public_suffix (>= 2.0.2, < 7.0) ast (2.4.3) @@ -42,7 +43,7 @@ GEM benchmark (0.4.0) bigdecimal (3.1.9) concurrent-ruby (1.3.5) - connection_pool (2.5.0) + connection_pool (2.5.3) console (1.30.2) fiber-annotation fiber-local (~> 1.1) @@ -50,20 +51,20 @@ GEM crack (1.0.0) bigdecimal rexml - csv (3.3.3) + csv (3.3.4) drb (2.2.1) erubi (1.13.1) - ffi (1.17.1) + ffi (1.17.2-x86_64-linux-gnu) fiber-annotation (0.2.0) fiber-local (1.1.0) fiber-storage - fiber-storage (1.0.0) + fiber-storage (1.0.1) fileutils (1.7.3) hashdiff (1.1.2) i18n (1.14.7) concurrent-ruby (~> 1.0) io-event (1.10.0) - json (2.10.2) + json (2.11.3) language_server-protocol (3.17.0.4) lint_roller (1.1.0) listen (3.9.0) @@ -82,20 +83,20 @@ GEM minitest (~> 5.0) mutex_m (0.3.0) netrc (0.11.0) - parallel (1.26.3) - parser (3.3.7.4) + parallel (1.27.0) + parser (3.3.8.0) ast (~> 2.4.1) racc prettier_print (1.2.1) prism (1.4.0) - public_suffix (6.0.1) + public_suffix (6.0.2) racc (1.8.1) rainbow (3.1.1) rake (13.2.1) rb-fsevent (0.11.2) rb-inotify (0.11.1) ffi (~> 1.0) - rbi (0.3.1) + rbi (0.3.2) prism (~> 1.0) rbs (>= 3.4.4) sorbet-runtime (>= 0.5.9204) @@ -104,7 +105,7 @@ GEM redcarpet (3.6.1) regexp_parser (2.10.0) rexml (3.4.1) - rubocop (1.75.1) + rubocop (1.75.4) json (~> 2.3) language_server-protocol (~> 3.17.0.2) lint_roller (~> 1.1.0) @@ -112,21 +113,21 @@ GEM parser (>= 3.3.0.2) rainbow (>= 2.2.2, < 4.0) regexp_parser (>= 2.9.3, < 3.0) - rubocop-ast (>= 1.43.0, < 2.0) + rubocop-ast (>= 1.44.0, < 2.0) ruby-progressbar (~> 1.7) unicode-display_width (>= 2.4.0, < 4.0) - rubocop-ast (1.43.0) + rubocop-ast (1.44.1) parser (>= 3.3.7.2) prism (~> 1.4) ruby-progressbar (1.13.0) securerandom (0.4.1) - sorbet (0.5.11966) - sorbet-static (= 0.5.11966) - sorbet-runtime (0.5.11966) - sorbet-static (0.5.11966-x86_64-linux) - sorbet-static-and-runtime (0.5.11966) - sorbet (= 0.5.11966) - sorbet-runtime (= 0.5.11966) + sorbet (0.5.12048) + sorbet-static (= 0.5.12048) + sorbet-runtime (0.5.12048) + sorbet-static (0.5.12048-x86_64-linux) + sorbet-static-and-runtime (0.5.12048) + sorbet (= 0.5.12048) + sorbet-runtime (= 0.5.12048) spoom (1.6.1) erubi (>= 1.10.0) prism (>= 0.28.0) @@ -150,7 +151,7 @@ GEM strscan (>= 1.0.0) terminal-table (>= 2, < 5) uri (>= 0.12.0) - strscan (3.1.2) + strscan (3.1.4) syntax_tree (6.2.0) prettier_print (>= 1.2.0) tapioca (0.16.11) @@ -208,4 +209,4 @@ DEPENDENCIES yard BUNDLED WITH - 2.3.3 + 2.4.1 diff --git a/README.md b/README.md index 9e3e1aec..ed33b344 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ # OpenAI Ruby API library -The OpenAI Ruby library provides convenient access to the OpenAI REST API from any Ruby 3.2+ application. +The OpenAI Ruby library provides convenient access to the OpenAI REST API from any Ruby 3.2.0+ application. ## Documentation @@ -271,7 +271,7 @@ This package considers improvements to the (non-runtime) `*.rbi` and `*.rbs` typ ## Requirements -Ruby 3.2 or higher. +Ruby 3.2.0 or higher. ## Contributing diff --git a/Rakefile b/Rakefile index df7a5b88..661da932 100644 --- a/Rakefile +++ b/Rakefile @@ -11,7 +11,7 @@ require "rubocop/rake_task" tapioca = "sorbet/tapioca" ignore_file = ".ignore" -CLEAN.push(*%w[.idea/ .ruby-lsp/ .yardoc/ doc/], *FileList["*.gem"], ignore_file) +CLEAN.push(*%w[.idea/ .ruby-lsp/ .yardoc/ doc/ Gemfile.lock], *FileList["*.gem"], ignore_file) CLOBBER.push(*%w[sorbet/rbi/annotations/ sorbet/rbi/gems/], tapioca) diff --git a/lib/openai/internal/transport/base_client.rb b/lib/openai/internal/transport/base_client.rb index 5d77a764..b3bb579b 100644 --- a/lib/openai/internal/transport/base_client.rb +++ b/lib/openai/internal/transport/base_client.rb @@ -261,7 +261,7 @@ def initialize( headers["x-stainless-retry-count"] = "0" end - timeout = opts.fetch(:timeout, @timeout).to_f.clamp((0..)) + timeout = opts.fetch(:timeout, @timeout).to_f.clamp(0..) unless headers.key?("x-stainless-timeout") || timeout.zero? headers["x-stainless-timeout"] = timeout.to_s end diff --git a/openai.gemspec b/openai.gemspec index a26c3c68..cc0a7426 100644 --- a/openai.gemspec +++ b/openai.gemspec @@ -12,7 +12,7 @@ Gem::Specification.new do |s| s.metadata["homepage_uri"] = s.homepage s.metadata["source_code_uri"] = "https://github.com/openai/openai-ruby" s.metadata["rubygems_mfa_required"] = false.to_s - s.required_ruby_version = ">= 3.2" + s.required_ruby_version = ">= 3.2.0" s.files = Dir[ "lib/**/*.rb", diff --git a/rbi/openai/errors.rbi b/rbi/openai/errors.rbi index 51d71f19..1eb51da4 100644 --- a/rbi/openai/errors.rbi +++ b/rbi/openai/errors.rbi @@ -164,7 +164,7 @@ module OpenAI end class InternalServerError < OpenAI::Errors::APIStatusError - HTTP_STATUS = T.let((500..), T::Range[Integer]) + HTTP_STATUS = T.let(500.., T::Range[Integer]) end end end diff --git a/scripts/bootstrap b/scripts/bootstrap index cc31aa85..9bf05537 100755 --- a/scripts/bootstrap +++ b/scripts/bootstrap @@ -13,4 +13,5 @@ fi echo "==> Installing Ruby dependencies…" +rm -fr -v -- Gemfile.lock exec -- bundle install "$@" From 2306cb447a81fd494a1a1696f99d90191103e187 Mon Sep 17 00:00:00 2001 From: dogisgreat Date: Thu, 1 May 2025 11:39:12 -0400 Subject: [PATCH 29/47] chore: remove Gemfile.lock --- Gemfile.lock | 212 --------------------------------------------------- 1 file changed, 212 deletions(-) delete mode 100644 Gemfile.lock diff --git a/Gemfile.lock b/Gemfile.lock deleted file mode 100644 index e1fd6bb2..00000000 --- a/Gemfile.lock +++ /dev/null @@ -1,212 +0,0 @@ -GIT - remote: https://github.com/stainless-api/syntax_tree-rbs.git - revision: c30b50219918be7cfe3ef803a00b59d1e77fcada - branch: main - specs: - syntax_tree-rbs (1.0.0) - prettier_print - rbs - syntax_tree (>= 2.0.1) - -PATH - remote: . - specs: - openai (0.1.0.pre.alpha.5) - connection_pool - -GEM - remote: https://rubygems.org/ - specs: - activesupport (8.0.2) - base64 - benchmark (>= 0.3) - bigdecimal - concurrent-ruby (~> 1.0, >= 1.3.1) - connection_pool (>= 2.2.5) - drb - i18n (>= 1.6, < 2) - logger (>= 1.4.2) - minitest (>= 5.1) - securerandom (>= 0.3) - tzinfo (~> 2.0, >= 2.0.5) - uri (>= 0.13.1) - addressable (2.8.7) - public_suffix (>= 2.0.2, < 7.0) - ast (2.4.3) - async (2.23.1) - console (~> 1.29) - fiber-annotation - io-event (~> 1.9) - metrics (~> 0.12) - traces (~> 0.15) - base64 (0.2.0) - benchmark (0.4.0) - bigdecimal (3.1.9) - concurrent-ruby (1.3.5) - connection_pool (2.5.3) - console (1.30.2) - fiber-annotation - fiber-local (~> 1.1) - json - crack (1.0.0) - bigdecimal - rexml - csv (3.3.4) - drb (2.2.1) - erubi (1.13.1) - ffi (1.17.2-x86_64-linux-gnu) - fiber-annotation (0.2.0) - fiber-local (1.1.0) - fiber-storage - fiber-storage (1.0.1) - fileutils (1.7.3) - hashdiff (1.1.2) - i18n (1.14.7) - concurrent-ruby (~> 1.0) - io-event (1.10.0) - json (2.11.3) - language_server-protocol (3.17.0.4) - lint_roller (1.1.0) - listen (3.9.0) - rb-fsevent (~> 0.10, >= 0.10.3) - rb-inotify (~> 0.9, >= 0.9.10) - logger (1.7.0) - metrics (0.12.2) - minitest (5.25.5) - minitest-focus (1.4.0) - minitest (>= 4, < 6) - minitest-hooks (1.5.2) - minitest (> 5.3) - minitest-proveit (1.0.0) - minitest (> 5, < 7) - minitest-rg (5.3.0) - minitest (~> 5.0) - mutex_m (0.3.0) - netrc (0.11.0) - parallel (1.27.0) - parser (3.3.8.0) - ast (~> 2.4.1) - racc - prettier_print (1.2.1) - prism (1.4.0) - public_suffix (6.0.2) - racc (1.8.1) - rainbow (3.1.1) - rake (13.2.1) - rb-fsevent (0.11.2) - rb-inotify (0.11.1) - ffi (~> 1.0) - rbi (0.3.2) - prism (~> 1.0) - rbs (>= 3.4.4) - sorbet-runtime (>= 0.5.9204) - rbs (3.9.2) - logger - redcarpet (3.6.1) - regexp_parser (2.10.0) - rexml (3.4.1) - rubocop (1.75.4) - json (~> 2.3) - language_server-protocol (~> 3.17.0.2) - lint_roller (~> 1.1.0) - parallel (~> 1.10) - parser (>= 3.3.0.2) - rainbow (>= 2.2.2, < 4.0) - regexp_parser (>= 2.9.3, < 3.0) - rubocop-ast (>= 1.44.0, < 2.0) - ruby-progressbar (~> 1.7) - unicode-display_width (>= 2.4.0, < 4.0) - rubocop-ast (1.44.1) - parser (>= 3.3.7.2) - prism (~> 1.4) - ruby-progressbar (1.13.0) - securerandom (0.4.1) - sorbet (0.5.12048) - sorbet-static (= 0.5.12048) - sorbet-runtime (0.5.12048) - sorbet-static (0.5.12048-x86_64-linux) - sorbet-static-and-runtime (0.5.12048) - sorbet (= 0.5.12048) - sorbet-runtime (= 0.5.12048) - spoom (1.6.1) - erubi (>= 1.10.0) - prism (>= 0.28.0) - rbi (>= 0.2.3) - sorbet-static-and-runtime (>= 0.5.10187) - thor (>= 0.19.2) - steep (1.10.0) - activesupport (>= 5.1) - concurrent-ruby (>= 1.1.10) - csv (>= 3.0.9) - fileutils (>= 1.1.0) - json (>= 2.1.0) - language_server-protocol (>= 3.17.0.4, < 4.0) - listen (~> 3.0) - logger (>= 1.3.0) - mutex_m (>= 0.3.0) - parser (>= 3.1) - rainbow (>= 2.2.2, < 4.0) - rbs (~> 3.9) - securerandom (>= 0.1) - strscan (>= 1.0.0) - terminal-table (>= 2, < 5) - uri (>= 0.12.0) - strscan (3.1.4) - syntax_tree (6.2.0) - prettier_print (>= 1.2.0) - tapioca (0.16.11) - benchmark - bundler (>= 2.2.25) - netrc (>= 0.11.0) - parallel (>= 1.21.0) - rbi (~> 0.2) - sorbet-static-and-runtime (>= 0.5.11087) - spoom (>= 1.2.0) - thor (>= 1.2.0) - yard-sorbet - terminal-table (4.0.0) - unicode-display_width (>= 1.1.1, < 4) - thor (1.3.2) - traces (0.15.2) - tzinfo (2.0.6) - concurrent-ruby (~> 1.0) - unicode-display_width (3.1.4) - unicode-emoji (~> 4.0, >= 4.0.4) - unicode-emoji (4.0.4) - uri (1.0.3) - webmock (3.25.1) - addressable (>= 2.8.0) - crack (>= 0.3.2) - hashdiff (>= 0.4.0, < 2.0.0) - webrick (1.9.1) - yard (0.9.37) - yard-sorbet (0.9.0) - sorbet-runtime - yard - -PLATFORMS - x86_64-linux - -DEPENDENCIES - async - minitest - minitest-focus - minitest-hooks - minitest-proveit - minitest-rg - openai! - rake - rbs - redcarpet - rubocop - sorbet - steep - syntax_tree - syntax_tree-rbs! - tapioca - webmock - webrick - yard - -BUNDLED WITH - 2.4.1 From 1815c45472109efaf891e2296f37b83b2acf275d Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Thu, 1 May 2025 15:52:31 +0000 Subject: [PATCH 30/47] chore: reorganize type aliases --- lib/openai.rb | 1 + lib/openai/models/file_content.rb | 7 +++++++ rbi/openai/models/beta/threads/runs/run_step.rbi | 4 ++-- rbi/openai/models/beta/threads/runs/run_step_delta.rbi | 4 ++-- .../models/beta/threads/runs/run_step_delta_event.rbi | 4 ++-- .../beta/threads/runs/run_step_delta_message_delta.rbi | 4 ++-- rbi/openai/models/beta/threads/runs/run_step_include.rbi | 4 ++-- rbi/openai/models/chat/chat_completion.rbi | 4 ++-- .../chat/chat_completion_assistant_message_param.rbi | 4 ++-- rbi/openai/models/chat/chat_completion_audio.rbi | 4 ++-- rbi/openai/models/chat/chat_completion_audio_param.rbi | 4 ++-- rbi/openai/models/chat/chat_completion_chunk.rbi | 4 ++-- rbi/openai/models/chat/chat_completion_content_part.rbi | 4 ++-- .../models/chat/chat_completion_content_part_image.rbi | 4 ++-- .../chat/chat_completion_content_part_input_audio.rbi | 4 ++-- .../models/chat/chat_completion_content_part_refusal.rbi | 4 ++-- .../models/chat/chat_completion_content_part_text.rbi | 4 ++-- rbi/openai/models/chat/chat_completion_deleted.rbi | 4 ++-- .../chat/chat_completion_developer_message_param.rbi | 4 ++-- .../models/chat/chat_completion_function_call_option.rbi | 4 ++-- .../models/chat/chat_completion_function_message_param.rbi | 4 ++-- rbi/openai/models/chat/chat_completion_message.rbi | 4 ++-- rbi/openai/models/chat/chat_completion_message_param.rbi | 4 ++-- .../models/chat/chat_completion_message_tool_call.rbi | 4 ++-- rbi/openai/models/chat/chat_completion_modality.rbi | 4 ++-- .../models/chat/chat_completion_named_tool_choice.rbi | 4 ++-- .../models/chat/chat_completion_prediction_content.rbi | 4 ++-- .../models/chat/chat_completion_reasoning_effort.rbi | 4 ++-- rbi/openai/models/chat/chat_completion_role.rbi | 4 ++-- rbi/openai/models/chat/chat_completion_store_message.rbi | 4 ++-- rbi/openai/models/chat/chat_completion_stream_options.rbi | 4 ++-- .../models/chat/chat_completion_system_message_param.rbi | 4 ++-- rbi/openai/models/chat/chat_completion_token_logprob.rbi | 4 ++-- rbi/openai/models/chat/chat_completion_tool.rbi | 4 ++-- .../models/chat/chat_completion_tool_choice_option.rbi | 4 ++-- .../models/chat/chat_completion_tool_message_param.rbi | 4 ++-- .../models/chat/chat_completion_user_message_param.rbi | 4 ++-- rbi/openai/models/evals/eval_api_error.rbi | 4 ++-- rbi/openai/models/file_content.rbi | 7 +++++++ rbi/openai/models/fine_tuning/fine_tuning_job.rbi | 4 ++-- rbi/openai/models/fine_tuning/fine_tuning_job_event.rbi | 4 ++-- .../models/fine_tuning/fine_tuning_job_integration.rbi | 4 ++-- .../fine_tuning/fine_tuning_job_wandb_integration.rbi | 4 ++-- .../fine_tuning_job_wandb_integration_object.rbi | 4 ++-- rbi/openai/models/responses/response_item_list.rbi | 4 ++-- rbi/openai/models/uploads/upload_part.rbi | 4 ++-- rbi/openai/models/vector_stores/vector_store_file.rbi | 4 ++-- .../models/vector_stores/vector_store_file_batch.rbi | 4 ++-- .../models/vector_stores/vector_store_file_deleted.rbi | 4 ++-- sig/openai/models/file_content.rbs | 5 +++++ 50 files changed, 112 insertions(+), 92 deletions(-) create mode 100644 lib/openai/models/file_content.rb create mode 100644 rbi/openai/models/file_content.rbi create mode 100644 sig/openai/models/file_content.rbs diff --git a/lib/openai.rb b/lib/openai.rb index 0883b56f..0aadd7ca 100644 --- a/lib/openai.rb +++ b/lib/openai.rb @@ -251,6 +251,7 @@ require_relative "openai/models/eval_update_response" require_relative "openai/models/file_chunking_strategy" require_relative "openai/models/file_chunking_strategy_param" +require_relative "openai/models/file_content" require_relative "openai/models/file_content_params" require_relative "openai/models/file_create_params" require_relative "openai/models/file_deleted" diff --git a/lib/openai/models/file_content.rb b/lib/openai/models/file_content.rb new file mode 100644 index 00000000..0ffd9f84 --- /dev/null +++ b/lib/openai/models/file_content.rb @@ -0,0 +1,7 @@ +# frozen_string_literal: true + +module OpenAI + module Models + FileContent = String + end +end diff --git a/rbi/openai/models/beta/threads/runs/run_step.rbi b/rbi/openai/models/beta/threads/runs/run_step.rbi index 0e70020b..86e8b940 100644 --- a/rbi/openai/models/beta/threads/runs/run_step.rbi +++ b/rbi/openai/models/beta/threads/runs/run_step.rbi @@ -4,6 +4,8 @@ module OpenAI module Models module Beta module Threads + RunStep = Runs::RunStep + module Runs class RunStep < OpenAI::Internal::Type::BaseModel # The identifier of the run step, which can be referenced in API endpoints. @@ -337,8 +339,6 @@ module OpenAI end end end - - RunStep = Runs::RunStep end end end diff --git a/rbi/openai/models/beta/threads/runs/run_step_delta.rbi b/rbi/openai/models/beta/threads/runs/run_step_delta.rbi index d151496b..e70a40af 100644 --- a/rbi/openai/models/beta/threads/runs/run_step_delta.rbi +++ b/rbi/openai/models/beta/threads/runs/run_step_delta.rbi @@ -4,6 +4,8 @@ module OpenAI module Models module Beta module Threads + RunStepDelta = Runs::RunStepDelta + module Runs class RunStepDelta < OpenAI::Internal::Type::BaseModel # The details of the run step. @@ -73,8 +75,6 @@ module OpenAI end end end - - RunStepDelta = Runs::RunStepDelta end end end diff --git a/rbi/openai/models/beta/threads/runs/run_step_delta_event.rbi b/rbi/openai/models/beta/threads/runs/run_step_delta_event.rbi index a9a700a4..3828467d 100644 --- a/rbi/openai/models/beta/threads/runs/run_step_delta_event.rbi +++ b/rbi/openai/models/beta/threads/runs/run_step_delta_event.rbi @@ -4,6 +4,8 @@ module OpenAI module Models module Beta module Threads + RunStepDeltaEvent = Runs::RunStepDeltaEvent + module Runs class RunStepDeltaEvent < OpenAI::Internal::Type::BaseModel # The identifier of the run step, which can be referenced in API endpoints. @@ -43,8 +45,6 @@ module OpenAI def to_hash; end end end - - RunStepDeltaEvent = Runs::RunStepDeltaEvent end end end diff --git a/rbi/openai/models/beta/threads/runs/run_step_delta_message_delta.rbi b/rbi/openai/models/beta/threads/runs/run_step_delta_message_delta.rbi index efe29b30..a05e1586 100644 --- a/rbi/openai/models/beta/threads/runs/run_step_delta_message_delta.rbi +++ b/rbi/openai/models/beta/threads/runs/run_step_delta_message_delta.rbi @@ -4,6 +4,8 @@ module OpenAI module Models module Beta module Threads + RunStepDeltaMessageDelta = Runs::RunStepDeltaMessageDelta + module Runs class RunStepDeltaMessageDelta < OpenAI::Internal::Type::BaseModel # Always `message_creation`. @@ -69,8 +71,6 @@ module OpenAI end end end - - RunStepDeltaMessageDelta = Runs::RunStepDeltaMessageDelta end end end diff --git a/rbi/openai/models/beta/threads/runs/run_step_include.rbi b/rbi/openai/models/beta/threads/runs/run_step_include.rbi index 1632e2a6..2b97eb05 100644 --- a/rbi/openai/models/beta/threads/runs/run_step_include.rbi +++ b/rbi/openai/models/beta/threads/runs/run_step_include.rbi @@ -4,6 +4,8 @@ module OpenAI module Models module Beta module Threads + RunStepInclude = Runs::RunStepInclude + module Runs module RunStepInclude extend OpenAI::Internal::Type::Enum @@ -21,8 +23,6 @@ module OpenAI def self.values; end end end - - RunStepInclude = Runs::RunStepInclude end end end diff --git a/rbi/openai/models/chat/chat_completion.rbi b/rbi/openai/models/chat/chat_completion.rbi index dbf3c910..9986624b 100644 --- a/rbi/openai/models/chat/chat_completion.rbi +++ b/rbi/openai/models/chat/chat_completion.rbi @@ -2,6 +2,8 @@ module OpenAI module Models + ChatCompletion = Chat::ChatCompletion + module Chat class ChatCompletion < OpenAI::Internal::Type::BaseModel # A unique identifier for the chat completion. @@ -294,7 +296,5 @@ module OpenAI end end end - - ChatCompletion = Chat::ChatCompletion end end diff --git a/rbi/openai/models/chat/chat_completion_assistant_message_param.rbi b/rbi/openai/models/chat/chat_completion_assistant_message_param.rbi index a9321c4b..783cdfc2 100644 --- a/rbi/openai/models/chat/chat_completion_assistant_message_param.rbi +++ b/rbi/openai/models/chat/chat_completion_assistant_message_param.rbi @@ -2,6 +2,8 @@ module OpenAI module Models + ChatCompletionAssistantMessageParam = Chat::ChatCompletionAssistantMessageParam + module Chat class ChatCompletionAssistantMessageParam < OpenAI::Internal::Type::BaseModel # The role of the messages author, in this case `assistant`. @@ -242,7 +244,5 @@ module OpenAI end end end - - ChatCompletionAssistantMessageParam = Chat::ChatCompletionAssistantMessageParam end end diff --git a/rbi/openai/models/chat/chat_completion_audio.rbi b/rbi/openai/models/chat/chat_completion_audio.rbi index 3a562bd2..ce531040 100644 --- a/rbi/openai/models/chat/chat_completion_audio.rbi +++ b/rbi/openai/models/chat/chat_completion_audio.rbi @@ -2,6 +2,8 @@ module OpenAI module Models + ChatCompletionAudio = Chat::ChatCompletionAudio + module Chat class ChatCompletionAudio < OpenAI::Internal::Type::BaseModel # Unique identifier for this audio response. @@ -44,7 +46,5 @@ module OpenAI def to_hash; end end end - - ChatCompletionAudio = Chat::ChatCompletionAudio end end diff --git a/rbi/openai/models/chat/chat_completion_audio_param.rbi b/rbi/openai/models/chat/chat_completion_audio_param.rbi index f8798fa0..2b135efe 100644 --- a/rbi/openai/models/chat/chat_completion_audio_param.rbi +++ b/rbi/openai/models/chat/chat_completion_audio_param.rbi @@ -2,6 +2,8 @@ module OpenAI module Models + ChatCompletionAudioParam = Chat::ChatCompletionAudioParam + module Chat class ChatCompletionAudioParam < OpenAI::Internal::Type::BaseModel # Specifies the output audio format. Must be one of `wav`, `mp3`, `flac`, `opus`, @@ -87,7 +89,5 @@ module OpenAI end end end - - ChatCompletionAudioParam = Chat::ChatCompletionAudioParam end end diff --git a/rbi/openai/models/chat/chat_completion_chunk.rbi b/rbi/openai/models/chat/chat_completion_chunk.rbi index c4d28509..e5905846 100644 --- a/rbi/openai/models/chat/chat_completion_chunk.rbi +++ b/rbi/openai/models/chat/chat_completion_chunk.rbi @@ -2,6 +2,8 @@ module OpenAI module Models + ChatCompletionChunk = Chat::ChatCompletionChunk + module Chat class ChatCompletionChunk < OpenAI::Internal::Type::BaseModel # A unique identifier for the chat completion. Each chunk has the same ID. @@ -562,7 +564,5 @@ module OpenAI end end end - - ChatCompletionChunk = Chat::ChatCompletionChunk end end diff --git a/rbi/openai/models/chat/chat_completion_content_part.rbi b/rbi/openai/models/chat/chat_completion_content_part.rbi index d380d60e..beb80345 100644 --- a/rbi/openai/models/chat/chat_completion_content_part.rbi +++ b/rbi/openai/models/chat/chat_completion_content_part.rbi @@ -2,6 +2,8 @@ module OpenAI module Models + ChatCompletionContentPart = Chat::ChatCompletionContentPart + module Chat # Learn about # [text inputs](https://platform.openai.com/docs/guides/text-generation). @@ -88,7 +90,5 @@ module OpenAI def self.variants; end end end - - ChatCompletionContentPart = Chat::ChatCompletionContentPart end end diff --git a/rbi/openai/models/chat/chat_completion_content_part_image.rbi b/rbi/openai/models/chat/chat_completion_content_part_image.rbi index 8d2a8ddd..83ae49c3 100644 --- a/rbi/openai/models/chat/chat_completion_content_part_image.rbi +++ b/rbi/openai/models/chat/chat_completion_content_part_image.rbi @@ -2,6 +2,8 @@ module OpenAI module Models + ChatCompletionContentPartImage = Chat::ChatCompletionContentPartImage + module Chat class ChatCompletionContentPartImage < OpenAI::Internal::Type::BaseModel sig { returns(OpenAI::Models::Chat::ChatCompletionContentPartImage::ImageURL) } @@ -94,7 +96,5 @@ module OpenAI end end end - - ChatCompletionContentPartImage = Chat::ChatCompletionContentPartImage end end diff --git a/rbi/openai/models/chat/chat_completion_content_part_input_audio.rbi b/rbi/openai/models/chat/chat_completion_content_part_input_audio.rbi index 34e7e778..412e8c32 100644 --- a/rbi/openai/models/chat/chat_completion_content_part_input_audio.rbi +++ b/rbi/openai/models/chat/chat_completion_content_part_input_audio.rbi @@ -2,6 +2,8 @@ module OpenAI module Models + ChatCompletionContentPartInputAudio = Chat::ChatCompletionContentPartInputAudio + module Chat class ChatCompletionContentPartInputAudio < OpenAI::Internal::Type::BaseModel sig { returns(OpenAI::Models::Chat::ChatCompletionContentPartInputAudio::InputAudio) } @@ -97,7 +99,5 @@ module OpenAI end end end - - ChatCompletionContentPartInputAudio = Chat::ChatCompletionContentPartInputAudio end end diff --git a/rbi/openai/models/chat/chat_completion_content_part_refusal.rbi b/rbi/openai/models/chat/chat_completion_content_part_refusal.rbi index 8088fdc0..4dbbaad1 100644 --- a/rbi/openai/models/chat/chat_completion_content_part_refusal.rbi +++ b/rbi/openai/models/chat/chat_completion_content_part_refusal.rbi @@ -2,6 +2,8 @@ module OpenAI module Models + ChatCompletionContentPartRefusal = Chat::ChatCompletionContentPartRefusal + module Chat class ChatCompletionContentPartRefusal < OpenAI::Internal::Type::BaseModel # The refusal message generated by the model. @@ -23,7 +25,5 @@ module OpenAI def to_hash; end end end - - ChatCompletionContentPartRefusal = Chat::ChatCompletionContentPartRefusal end end diff --git a/rbi/openai/models/chat/chat_completion_content_part_text.rbi b/rbi/openai/models/chat/chat_completion_content_part_text.rbi index 8fecc89b..d9d89cc1 100644 --- a/rbi/openai/models/chat/chat_completion_content_part_text.rbi +++ b/rbi/openai/models/chat/chat_completion_content_part_text.rbi @@ -2,6 +2,8 @@ module OpenAI module Models + ChatCompletionContentPartText = Chat::ChatCompletionContentPartText + module Chat class ChatCompletionContentPartText < OpenAI::Internal::Type::BaseModel # The text content. @@ -25,7 +27,5 @@ module OpenAI def to_hash; end end end - - ChatCompletionContentPartText = Chat::ChatCompletionContentPartText end end diff --git a/rbi/openai/models/chat/chat_completion_deleted.rbi b/rbi/openai/models/chat/chat_completion_deleted.rbi index e5083b94..344fb3ef 100644 --- a/rbi/openai/models/chat/chat_completion_deleted.rbi +++ b/rbi/openai/models/chat/chat_completion_deleted.rbi @@ -2,6 +2,8 @@ module OpenAI module Models + ChatCompletionDeleted = Chat::ChatCompletionDeleted + module Chat class ChatCompletionDeleted < OpenAI::Internal::Type::BaseModel # The ID of the chat completion that was deleted. @@ -29,7 +31,5 @@ module OpenAI def to_hash; end end end - - ChatCompletionDeleted = Chat::ChatCompletionDeleted end end diff --git a/rbi/openai/models/chat/chat_completion_developer_message_param.rbi b/rbi/openai/models/chat/chat_completion_developer_message_param.rbi index ea4a6d05..7e1c7e21 100644 --- a/rbi/openai/models/chat/chat_completion_developer_message_param.rbi +++ b/rbi/openai/models/chat/chat_completion_developer_message_param.rbi @@ -2,6 +2,8 @@ module OpenAI module Models + ChatCompletionDeveloperMessageParam = Chat::ChatCompletionDeveloperMessageParam + module Chat class ChatCompletionDeveloperMessageParam < OpenAI::Internal::Type::BaseModel # The contents of the developer message. @@ -70,7 +72,5 @@ module OpenAI end end end - - ChatCompletionDeveloperMessageParam = Chat::ChatCompletionDeveloperMessageParam end end diff --git a/rbi/openai/models/chat/chat_completion_function_call_option.rbi b/rbi/openai/models/chat/chat_completion_function_call_option.rbi index 93220f0f..56f38623 100644 --- a/rbi/openai/models/chat/chat_completion_function_call_option.rbi +++ b/rbi/openai/models/chat/chat_completion_function_call_option.rbi @@ -2,6 +2,8 @@ module OpenAI module Models + ChatCompletionFunctionCallOption = Chat::ChatCompletionFunctionCallOption + module Chat class ChatCompletionFunctionCallOption < OpenAI::Internal::Type::BaseModel # The name of the function to call. @@ -19,7 +21,5 @@ module OpenAI def to_hash; end end end - - ChatCompletionFunctionCallOption = Chat::ChatCompletionFunctionCallOption end end diff --git a/rbi/openai/models/chat/chat_completion_function_message_param.rbi b/rbi/openai/models/chat/chat_completion_function_message_param.rbi index dd32f6f7..4bfeb555 100644 --- a/rbi/openai/models/chat/chat_completion_function_message_param.rbi +++ b/rbi/openai/models/chat/chat_completion_function_message_param.rbi @@ -2,6 +2,8 @@ module OpenAI module Models + ChatCompletionFunctionMessageParam = Chat::ChatCompletionFunctionMessageParam + module Chat class ChatCompletionFunctionMessageParam < OpenAI::Internal::Type::BaseModel # The contents of the function message. @@ -29,7 +31,5 @@ module OpenAI def to_hash; end end end - - ChatCompletionFunctionMessageParam = Chat::ChatCompletionFunctionMessageParam end end diff --git a/rbi/openai/models/chat/chat_completion_message.rbi b/rbi/openai/models/chat/chat_completion_message.rbi index dcffce2a..a1c9abf6 100644 --- a/rbi/openai/models/chat/chat_completion_message.rbi +++ b/rbi/openai/models/chat/chat_completion_message.rbi @@ -2,6 +2,8 @@ module OpenAI module Models + ChatCompletionMessage = Chat::ChatCompletionMessage + module Chat class ChatCompletionMessage < OpenAI::Internal::Type::BaseModel # The contents of the message. @@ -221,7 +223,5 @@ module OpenAI end end end - - ChatCompletionMessage = Chat::ChatCompletionMessage end end diff --git a/rbi/openai/models/chat/chat_completion_message_param.rbi b/rbi/openai/models/chat/chat_completion_message_param.rbi index 4c9296f5..8a340084 100644 --- a/rbi/openai/models/chat/chat_completion_message_param.rbi +++ b/rbi/openai/models/chat/chat_completion_message_param.rbi @@ -2,6 +2,8 @@ module OpenAI module Models + ChatCompletionMessageParam = Chat::ChatCompletionMessageParam + module Chat # Developer-provided instructions that the model should follow, regardless of # messages sent by the user. With o1 models and newer, `developer` messages @@ -18,7 +20,5 @@ module OpenAI def self.variants; end end end - - ChatCompletionMessageParam = Chat::ChatCompletionMessageParam end end diff --git a/rbi/openai/models/chat/chat_completion_message_tool_call.rbi b/rbi/openai/models/chat/chat_completion_message_tool_call.rbi index 77013f68..85d78135 100644 --- a/rbi/openai/models/chat/chat_completion_message_tool_call.rbi +++ b/rbi/openai/models/chat/chat_completion_message_tool_call.rbi @@ -2,6 +2,8 @@ module OpenAI module Models + ChatCompletionMessageToolCall = Chat::ChatCompletionMessageToolCall + module Chat class ChatCompletionMessageToolCall < OpenAI::Internal::Type::BaseModel # The ID of the tool call. @@ -76,7 +78,5 @@ module OpenAI end end end - - ChatCompletionMessageToolCall = Chat::ChatCompletionMessageToolCall end end diff --git a/rbi/openai/models/chat/chat_completion_modality.rbi b/rbi/openai/models/chat/chat_completion_modality.rbi index 0226b92f..de02e647 100644 --- a/rbi/openai/models/chat/chat_completion_modality.rbi +++ b/rbi/openai/models/chat/chat_completion_modality.rbi @@ -2,6 +2,8 @@ module OpenAI module Models + ChatCompletionModality = Chat::ChatCompletionModality + module Chat module ChatCompletionModality extend OpenAI::Internal::Type::Enum @@ -16,7 +18,5 @@ module OpenAI def self.values; end end end - - ChatCompletionModality = Chat::ChatCompletionModality end end diff --git a/rbi/openai/models/chat/chat_completion_named_tool_choice.rbi b/rbi/openai/models/chat/chat_completion_named_tool_choice.rbi index f7ef280e..4380546a 100644 --- a/rbi/openai/models/chat/chat_completion_named_tool_choice.rbi +++ b/rbi/openai/models/chat/chat_completion_named_tool_choice.rbi @@ -2,6 +2,8 @@ module OpenAI module Models + ChatCompletionNamedToolChoice = Chat::ChatCompletionNamedToolChoice + module Chat class ChatCompletionNamedToolChoice < OpenAI::Internal::Type::BaseModel sig { returns(OpenAI::Models::Chat::ChatCompletionNamedToolChoice::Function) } @@ -51,7 +53,5 @@ module OpenAI end end end - - ChatCompletionNamedToolChoice = Chat::ChatCompletionNamedToolChoice end end diff --git a/rbi/openai/models/chat/chat_completion_prediction_content.rbi b/rbi/openai/models/chat/chat_completion_prediction_content.rbi index 93fab93c..2bc5a26a 100644 --- a/rbi/openai/models/chat/chat_completion_prediction_content.rbi +++ b/rbi/openai/models/chat/chat_completion_prediction_content.rbi @@ -2,6 +2,8 @@ module OpenAI module Models + ChatCompletionPredictionContent = Chat::ChatCompletionPredictionContent + module Chat class ChatCompletionPredictionContent < OpenAI::Internal::Type::BaseModel # The content that should be matched when generating a model response. If @@ -61,7 +63,5 @@ module OpenAI end end end - - ChatCompletionPredictionContent = Chat::ChatCompletionPredictionContent end end diff --git a/rbi/openai/models/chat/chat_completion_reasoning_effort.rbi b/rbi/openai/models/chat/chat_completion_reasoning_effort.rbi index 479be67b..87be1185 100644 --- a/rbi/openai/models/chat/chat_completion_reasoning_effort.rbi +++ b/rbi/openai/models/chat/chat_completion_reasoning_effort.rbi @@ -2,10 +2,10 @@ module OpenAI module Models + ChatCompletionReasoningEffort = Chat::ChatCompletionReasoningEffort + module Chat ChatCompletionReasoningEffort = OpenAI::Models::ReasoningEffort end - - ChatCompletionReasoningEffort = Chat::ChatCompletionReasoningEffort end end diff --git a/rbi/openai/models/chat/chat_completion_role.rbi b/rbi/openai/models/chat/chat_completion_role.rbi index 9be9e3e1..46776b39 100644 --- a/rbi/openai/models/chat/chat_completion_role.rbi +++ b/rbi/openai/models/chat/chat_completion_role.rbi @@ -2,6 +2,8 @@ module OpenAI module Models + ChatCompletionRole = Chat::ChatCompletionRole + module Chat # The role of the author of a message module ChatCompletionRole @@ -21,7 +23,5 @@ module OpenAI def self.values; end end end - - ChatCompletionRole = Chat::ChatCompletionRole end end diff --git a/rbi/openai/models/chat/chat_completion_store_message.rbi b/rbi/openai/models/chat/chat_completion_store_message.rbi index 5af6dfc9..db4cc17e 100644 --- a/rbi/openai/models/chat/chat_completion_store_message.rbi +++ b/rbi/openai/models/chat/chat_completion_store_message.rbi @@ -2,6 +2,8 @@ module OpenAI module Models + ChatCompletionStoreMessage = Chat::ChatCompletionStoreMessage + module Chat class ChatCompletionStoreMessage < OpenAI::Models::Chat::ChatCompletionMessage # The identifier of the chat message. @@ -18,7 +20,5 @@ module OpenAI def to_hash; end end end - - ChatCompletionStoreMessage = Chat::ChatCompletionStoreMessage end end diff --git a/rbi/openai/models/chat/chat_completion_stream_options.rbi b/rbi/openai/models/chat/chat_completion_stream_options.rbi index 08fdb738..8a28c8ab 100644 --- a/rbi/openai/models/chat/chat_completion_stream_options.rbi +++ b/rbi/openai/models/chat/chat_completion_stream_options.rbi @@ -2,6 +2,8 @@ module OpenAI module Models + ChatCompletionStreamOptions = Chat::ChatCompletionStreamOptions + module Chat class ChatCompletionStreamOptions < OpenAI::Internal::Type::BaseModel # If set, an additional chunk will be streamed before the `data: [DONE]` message. @@ -33,7 +35,5 @@ module OpenAI def to_hash; end end end - - ChatCompletionStreamOptions = Chat::ChatCompletionStreamOptions end end diff --git a/rbi/openai/models/chat/chat_completion_system_message_param.rbi b/rbi/openai/models/chat/chat_completion_system_message_param.rbi index aeac775d..5578d9e7 100644 --- a/rbi/openai/models/chat/chat_completion_system_message_param.rbi +++ b/rbi/openai/models/chat/chat_completion_system_message_param.rbi @@ -2,6 +2,8 @@ module OpenAI module Models + ChatCompletionSystemMessageParam = Chat::ChatCompletionSystemMessageParam + module Chat class ChatCompletionSystemMessageParam < OpenAI::Internal::Type::BaseModel # The contents of the system message. @@ -70,7 +72,5 @@ module OpenAI end end end - - ChatCompletionSystemMessageParam = Chat::ChatCompletionSystemMessageParam end end diff --git a/rbi/openai/models/chat/chat_completion_token_logprob.rbi b/rbi/openai/models/chat/chat_completion_token_logprob.rbi index 00a79a48..f75eb74c 100644 --- a/rbi/openai/models/chat/chat_completion_token_logprob.rbi +++ b/rbi/openai/models/chat/chat_completion_token_logprob.rbi @@ -2,6 +2,8 @@ module OpenAI module Models + ChatCompletionTokenLogprob = Chat::ChatCompletionTokenLogprob + module Chat class ChatCompletionTokenLogprob < OpenAI::Internal::Type::BaseModel # The token. @@ -109,7 +111,5 @@ module OpenAI end end end - - ChatCompletionTokenLogprob = Chat::ChatCompletionTokenLogprob end end diff --git a/rbi/openai/models/chat/chat_completion_tool.rbi b/rbi/openai/models/chat/chat_completion_tool.rbi index 0b898367..54e45a9a 100644 --- a/rbi/openai/models/chat/chat_completion_tool.rbi +++ b/rbi/openai/models/chat/chat_completion_tool.rbi @@ -2,6 +2,8 @@ module OpenAI module Models + ChatCompletionTool = Chat::ChatCompletionTool + module Chat class ChatCompletionTool < OpenAI::Internal::Type::BaseModel sig { returns(OpenAI::Models::FunctionDefinition) } @@ -27,7 +29,5 @@ module OpenAI def to_hash; end end end - - ChatCompletionTool = Chat::ChatCompletionTool end end diff --git a/rbi/openai/models/chat/chat_completion_tool_choice_option.rbi b/rbi/openai/models/chat/chat_completion_tool_choice_option.rbi index fbdb6fda..090a8a1d 100644 --- a/rbi/openai/models/chat/chat_completion_tool_choice_option.rbi +++ b/rbi/openai/models/chat/chat_completion_tool_choice_option.rbi @@ -2,6 +2,8 @@ module OpenAI module Models + ChatCompletionToolChoiceOption = Chat::ChatCompletionToolChoiceOption + module Chat # Controls which (if any) tool is called by the model. `none` means the model will # not call any tool and instead generates a message. `auto` means the model can @@ -41,7 +43,5 @@ module OpenAI def self.variants; end end end - - ChatCompletionToolChoiceOption = Chat::ChatCompletionToolChoiceOption end end diff --git a/rbi/openai/models/chat/chat_completion_tool_message_param.rbi b/rbi/openai/models/chat/chat_completion_tool_message_param.rbi index b0ed167b..862e00bf 100644 --- a/rbi/openai/models/chat/chat_completion_tool_message_param.rbi +++ b/rbi/openai/models/chat/chat_completion_tool_message_param.rbi @@ -2,6 +2,8 @@ module OpenAI module Models + ChatCompletionToolMessageParam = Chat::ChatCompletionToolMessageParam + module Chat class ChatCompletionToolMessageParam < OpenAI::Internal::Type::BaseModel # The contents of the tool message. @@ -62,7 +64,5 @@ module OpenAI end end end - - ChatCompletionToolMessageParam = Chat::ChatCompletionToolMessageParam end end diff --git a/rbi/openai/models/chat/chat_completion_user_message_param.rbi b/rbi/openai/models/chat/chat_completion_user_message_param.rbi index 197c73d0..a9452e5c 100644 --- a/rbi/openai/models/chat/chat_completion_user_message_param.rbi +++ b/rbi/openai/models/chat/chat_completion_user_message_param.rbi @@ -2,6 +2,8 @@ module OpenAI module Models + ChatCompletionUserMessageParam = Chat::ChatCompletionUserMessageParam + module Chat class ChatCompletionUserMessageParam < OpenAI::Internal::Type::BaseModel # The contents of the user message. @@ -116,7 +118,5 @@ module OpenAI end end end - - ChatCompletionUserMessageParam = Chat::ChatCompletionUserMessageParam end end diff --git a/rbi/openai/models/evals/eval_api_error.rbi b/rbi/openai/models/evals/eval_api_error.rbi index 20859d95..906200ec 100644 --- a/rbi/openai/models/evals/eval_api_error.rbi +++ b/rbi/openai/models/evals/eval_api_error.rbi @@ -2,6 +2,8 @@ module OpenAI module Models + EvalAPIError = Evals::EvalAPIError + module Evals class EvalAPIError < OpenAI::Internal::Type::BaseModel # The error code. @@ -24,7 +26,5 @@ module OpenAI def to_hash; end end end - - EvalAPIError = Evals::EvalAPIError end end diff --git a/rbi/openai/models/file_content.rbi b/rbi/openai/models/file_content.rbi new file mode 100644 index 00000000..92b8b41a --- /dev/null +++ b/rbi/openai/models/file_content.rbi @@ -0,0 +1,7 @@ +# typed: strong + +module OpenAI + module Models + FileContent = String + end +end diff --git a/rbi/openai/models/fine_tuning/fine_tuning_job.rbi b/rbi/openai/models/fine_tuning/fine_tuning_job.rbi index b9a0f929..3036f3a4 100644 --- a/rbi/openai/models/fine_tuning/fine_tuning_job.rbi +++ b/rbi/openai/models/fine_tuning/fine_tuning_job.rbi @@ -2,6 +2,8 @@ module OpenAI module Models + FineTuningJob = FineTuning::FineTuningJob + module FineTuning class FineTuningJob < OpenAI::Internal::Type::BaseModel # The object identifier, which can be referenced in the API endpoints. @@ -697,7 +699,5 @@ module OpenAI end end end - - FineTuningJob = FineTuning::FineTuningJob end end diff --git a/rbi/openai/models/fine_tuning/fine_tuning_job_event.rbi b/rbi/openai/models/fine_tuning/fine_tuning_job_event.rbi index bae007c6..f034e524 100644 --- a/rbi/openai/models/fine_tuning/fine_tuning_job_event.rbi +++ b/rbi/openai/models/fine_tuning/fine_tuning_job_event.rbi @@ -2,6 +2,8 @@ module OpenAI module Models + FineTuningJobEvent = FineTuning::FineTuningJobEvent + module FineTuning class FineTuningJobEvent < OpenAI::Internal::Type::BaseModel # The object identifier. @@ -113,7 +115,5 @@ module OpenAI end end end - - FineTuningJobEvent = FineTuning::FineTuningJobEvent end end diff --git a/rbi/openai/models/fine_tuning/fine_tuning_job_integration.rbi b/rbi/openai/models/fine_tuning/fine_tuning_job_integration.rbi index 8a6c1da1..9ae1ecd5 100644 --- a/rbi/openai/models/fine_tuning/fine_tuning_job_integration.rbi +++ b/rbi/openai/models/fine_tuning/fine_tuning_job_integration.rbi @@ -2,10 +2,10 @@ module OpenAI module Models + FineTuningJobIntegration = FineTuning::FineTuningJobIntegration + module FineTuning FineTuningJobIntegration = OpenAI::Models::FineTuning::FineTuningJobWandbIntegrationObject end - - FineTuningJobIntegration = FineTuning::FineTuningJobIntegration end end diff --git a/rbi/openai/models/fine_tuning/fine_tuning_job_wandb_integration.rbi b/rbi/openai/models/fine_tuning/fine_tuning_job_wandb_integration.rbi index f177e1fc..fb541aa4 100644 --- a/rbi/openai/models/fine_tuning/fine_tuning_job_wandb_integration.rbi +++ b/rbi/openai/models/fine_tuning/fine_tuning_job_wandb_integration.rbi @@ -2,6 +2,8 @@ module OpenAI module Models + FineTuningJobWandbIntegration = FineTuning::FineTuningJobWandbIntegration + module FineTuning class FineTuningJobWandbIntegration < OpenAI::Internal::Type::BaseModel # The name of the project that the new run will be created under. @@ -63,7 +65,5 @@ module OpenAI def to_hash; end end end - - FineTuningJobWandbIntegration = FineTuning::FineTuningJobWandbIntegration end end diff --git a/rbi/openai/models/fine_tuning/fine_tuning_job_wandb_integration_object.rbi b/rbi/openai/models/fine_tuning/fine_tuning_job_wandb_integration_object.rbi index 2b2e10d9..c17319c1 100644 --- a/rbi/openai/models/fine_tuning/fine_tuning_job_wandb_integration_object.rbi +++ b/rbi/openai/models/fine_tuning/fine_tuning_job_wandb_integration_object.rbi @@ -2,6 +2,8 @@ module OpenAI module Models + FineTuningJobWandbIntegrationObject = FineTuning::FineTuningJobWandbIntegrationObject + module FineTuning class FineTuningJobWandbIntegrationObject < OpenAI::Internal::Type::BaseModel # The type of the integration being enabled for the fine-tuning job @@ -41,7 +43,5 @@ module OpenAI def to_hash; end end end - - FineTuningJobWandbIntegrationObject = FineTuning::FineTuningJobWandbIntegrationObject end end diff --git a/rbi/openai/models/responses/response_item_list.rbi b/rbi/openai/models/responses/response_item_list.rbi index 60f9ee2b..d83e183d 100644 --- a/rbi/openai/models/responses/response_item_list.rbi +++ b/rbi/openai/models/responses/response_item_list.rbi @@ -2,6 +2,8 @@ module OpenAI module Models + ResponseItemList = Responses::ResponseItemList + module Responses class ResponseItemList < OpenAI::Internal::Type::BaseModel # A list of items used to generate this response. @@ -100,7 +102,5 @@ module OpenAI def to_hash; end end end - - ResponseItemList = Responses::ResponseItemList end end diff --git a/rbi/openai/models/uploads/upload_part.rbi b/rbi/openai/models/uploads/upload_part.rbi index 17a8849b..79bf9d95 100644 --- a/rbi/openai/models/uploads/upload_part.rbi +++ b/rbi/openai/models/uploads/upload_part.rbi @@ -2,6 +2,8 @@ module OpenAI module Models + UploadPart = Uploads::UploadPart + module Uploads class UploadPart < OpenAI::Internal::Type::BaseModel # The upload Part unique identifier, which can be referenced in API endpoints. @@ -38,7 +40,5 @@ module OpenAI def to_hash; end end end - - UploadPart = Uploads::UploadPart end end diff --git a/rbi/openai/models/vector_stores/vector_store_file.rbi b/rbi/openai/models/vector_stores/vector_store_file.rbi index 168da5d5..79686b0f 100644 --- a/rbi/openai/models/vector_stores/vector_store_file.rbi +++ b/rbi/openai/models/vector_stores/vector_store_file.rbi @@ -2,6 +2,8 @@ module OpenAI module Models + VectorStoreFile = VectorStores::VectorStoreFile + module VectorStores class VectorStoreFile < OpenAI::Internal::Type::BaseModel # The identifier, which can be referenced in API endpoints. @@ -220,7 +222,5 @@ module OpenAI end end end - - VectorStoreFile = VectorStores::VectorStoreFile end end diff --git a/rbi/openai/models/vector_stores/vector_store_file_batch.rbi b/rbi/openai/models/vector_stores/vector_store_file_batch.rbi index 18461980..8712684e 100644 --- a/rbi/openai/models/vector_stores/vector_store_file_batch.rbi +++ b/rbi/openai/models/vector_stores/vector_store_file_batch.rbi @@ -2,6 +2,8 @@ module OpenAI module Models + VectorStoreFileBatch = VectorStores::VectorStoreFileBatch + module VectorStores class VectorStoreFileBatch < OpenAI::Internal::Type::BaseModel # The identifier, which can be referenced in API endpoints. @@ -160,7 +162,5 @@ module OpenAI end end end - - VectorStoreFileBatch = VectorStores::VectorStoreFileBatch end end diff --git a/rbi/openai/models/vector_stores/vector_store_file_deleted.rbi b/rbi/openai/models/vector_stores/vector_store_file_deleted.rbi index 9642c9d5..769eeefd 100644 --- a/rbi/openai/models/vector_stores/vector_store_file_deleted.rbi +++ b/rbi/openai/models/vector_stores/vector_store_file_deleted.rbi @@ -2,6 +2,8 @@ module OpenAI module Models + VectorStoreFileDeleted = VectorStores::VectorStoreFileDeleted + module VectorStores class VectorStoreFileDeleted < OpenAI::Internal::Type::BaseModel sig { returns(String) } @@ -20,7 +22,5 @@ module OpenAI def to_hash; end end end - - VectorStoreFileDeleted = VectorStores::VectorStoreFileDeleted end end diff --git a/sig/openai/models/file_content.rbs b/sig/openai/models/file_content.rbs new file mode 100644 index 00000000..947667c0 --- /dev/null +++ b/sig/openai/models/file_content.rbs @@ -0,0 +1,5 @@ +module OpenAI + module Models + class FileContent = String + end +end From 8c5e78a1b2374c072c590f859008f69bd8d46d63 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Thu, 1 May 2025 18:38:45 +0000 Subject: [PATCH 31/47] chore: re-export top level models under library namespace --- lib/openai/models.rb | 193 ++++++++++++++++++++++++++++++++++++++++++ rbi/openai/models.rbi | 191 +++++++++++++++++++++++++++++++++++++++++ sig/openai/models.rbs | 189 +++++++++++++++++++++++++++++++++++++++++ 3 files changed, 573 insertions(+) create mode 100644 lib/openai/models.rb create mode 100644 rbi/openai/models.rbi create mode 100644 sig/openai/models.rbs diff --git a/lib/openai/models.rb b/lib/openai/models.rb new file mode 100644 index 00000000..2a0f2cef --- /dev/null +++ b/lib/openai/models.rb @@ -0,0 +1,193 @@ +# frozen_string_literal: true + +module OpenAI + AllModels = OpenAI::Models::AllModels + + Audio = OpenAI::Models::Audio + + AudioModel = OpenAI::Models::AudioModel + + AudioResponseFormat = OpenAI::Models::AudioResponseFormat + + AutoFileChunkingStrategyParam = OpenAI::Models::AutoFileChunkingStrategyParam + + Batch = OpenAI::Models::Batch + + BatchCancelParams = OpenAI::Models::BatchCancelParams + + BatchCreateParams = OpenAI::Models::BatchCreateParams + + BatchError = OpenAI::Models::BatchError + + BatchListParams = OpenAI::Models::BatchListParams + + BatchRequestCounts = OpenAI::Models::BatchRequestCounts + + BatchRetrieveParams = OpenAI::Models::BatchRetrieveParams + + Beta = OpenAI::Models::Beta + + Chat = OpenAI::Models::Chat + + ChatModel = OpenAI::Models::ChatModel + + ComparisonFilter = OpenAI::Models::ComparisonFilter + + Completion = OpenAI::Models::Completion + + CompletionChoice = OpenAI::Models::CompletionChoice + + CompletionCreateParams = OpenAI::Models::CompletionCreateParams + + CompletionUsage = OpenAI::Models::CompletionUsage + + CompoundFilter = OpenAI::Models::CompoundFilter + + CreateEmbeddingResponse = OpenAI::Models::CreateEmbeddingResponse + + Embedding = OpenAI::Models::Embedding + + EmbeddingCreateParams = OpenAI::Models::EmbeddingCreateParams + + EmbeddingModel = OpenAI::Models::EmbeddingModel + + ErrorObject = OpenAI::Models::ErrorObject + + EvalCreateParams = OpenAI::Models::EvalCreateParams + + EvalCustomDataSourceConfig = OpenAI::Models::EvalCustomDataSourceConfig + + EvalDeleteParams = OpenAI::Models::EvalDeleteParams + + EvalLabelModelGrader = OpenAI::Models::EvalLabelModelGrader + + EvalListParams = OpenAI::Models::EvalListParams + + EvalRetrieveParams = OpenAI::Models::EvalRetrieveParams + + Evals = OpenAI::Models::Evals + + EvalStoredCompletionsDataSourceConfig = OpenAI::Models::EvalStoredCompletionsDataSourceConfig + + EvalStringCheckGrader = OpenAI::Models::EvalStringCheckGrader + + EvalTextSimilarityGrader = OpenAI::Models::EvalTextSimilarityGrader + + EvalUpdateParams = OpenAI::Models::EvalUpdateParams + + FileChunkingStrategy = OpenAI::Models::FileChunkingStrategy + + FileChunkingStrategyParam = OpenAI::Models::FileChunkingStrategyParam + + FileContent = OpenAI::Models::FileContent + + FileContentParams = OpenAI::Models::FileContentParams + + FileCreateParams = OpenAI::Models::FileCreateParams + + FileDeleted = OpenAI::Models::FileDeleted + + FileDeleteParams = OpenAI::Models::FileDeleteParams + + FileListParams = OpenAI::Models::FileListParams + + FileObject = OpenAI::Models::FileObject + + FilePurpose = OpenAI::Models::FilePurpose + + FileRetrieveParams = OpenAI::Models::FileRetrieveParams + + FineTuning = OpenAI::Models::FineTuning + + FunctionDefinition = OpenAI::Models::FunctionDefinition + + # @type [OpenAI::Internal::Type::Converter] + FunctionParameters = OpenAI::Models::FunctionParameters + + Image = OpenAI::Models::Image + + ImageCreateVariationParams = OpenAI::Models::ImageCreateVariationParams + + ImageEditParams = OpenAI::Models::ImageEditParams + + ImageGenerateParams = OpenAI::Models::ImageGenerateParams + + ImageModel = OpenAI::Models::ImageModel + + ImagesResponse = OpenAI::Models::ImagesResponse + + # @type [OpenAI::Internal::Type::Converter] + Metadata = OpenAI::Models::Metadata + + Model = OpenAI::Models::Model + + ModelDeleted = OpenAI::Models::ModelDeleted + + ModelDeleteParams = OpenAI::Models::ModelDeleteParams + + ModelListParams = OpenAI::Models::ModelListParams + + ModelRetrieveParams = OpenAI::Models::ModelRetrieveParams + + Moderation = OpenAI::Models::Moderation + + ModerationCreateParams = OpenAI::Models::ModerationCreateParams + + ModerationImageURLInput = OpenAI::Models::ModerationImageURLInput + + ModerationModel = OpenAI::Models::ModerationModel + + ModerationMultiModalInput = OpenAI::Models::ModerationMultiModalInput + + ModerationTextInput = OpenAI::Models::ModerationTextInput + + OtherFileChunkingStrategyObject = OpenAI::Models::OtherFileChunkingStrategyObject + + Reasoning = OpenAI::Models::Reasoning + + ReasoningEffort = OpenAI::Models::ReasoningEffort + + ResponseFormatJSONObject = OpenAI::Models::ResponseFormatJSONObject + + ResponseFormatJSONSchema = OpenAI::Models::ResponseFormatJSONSchema + + ResponseFormatText = OpenAI::Models::ResponseFormatText + + Responses = OpenAI::Models::Responses + + ResponsesModel = OpenAI::Models::ResponsesModel + + StaticFileChunkingStrategy = OpenAI::Models::StaticFileChunkingStrategy + + StaticFileChunkingStrategyObject = OpenAI::Models::StaticFileChunkingStrategyObject + + StaticFileChunkingStrategyObjectParam = OpenAI::Models::StaticFileChunkingStrategyObjectParam + + Upload = OpenAI::Models::Upload + + UploadCancelParams = OpenAI::Models::UploadCancelParams + + UploadCompleteParams = OpenAI::Models::UploadCompleteParams + + UploadCreateParams = OpenAI::Models::UploadCreateParams + + Uploads = OpenAI::Models::Uploads + + VectorStore = OpenAI::Models::VectorStore + + VectorStoreCreateParams = OpenAI::Models::VectorStoreCreateParams + + VectorStoreDeleted = OpenAI::Models::VectorStoreDeleted + + VectorStoreDeleteParams = OpenAI::Models::VectorStoreDeleteParams + + VectorStoreListParams = OpenAI::Models::VectorStoreListParams + + VectorStoreRetrieveParams = OpenAI::Models::VectorStoreRetrieveParams + + VectorStores = OpenAI::Models::VectorStores + + VectorStoreSearchParams = OpenAI::Models::VectorStoreSearchParams + + VectorStoreUpdateParams = OpenAI::Models::VectorStoreUpdateParams +end diff --git a/rbi/openai/models.rbi b/rbi/openai/models.rbi new file mode 100644 index 00000000..b72b3e70 --- /dev/null +++ b/rbi/openai/models.rbi @@ -0,0 +1,191 @@ +# typed: strong + +module OpenAI + AllModels = OpenAI::Models::AllModels + + Audio = OpenAI::Models::Audio + + AudioModel = OpenAI::Models::AudioModel + + AudioResponseFormat = OpenAI::Models::AudioResponseFormat + + AutoFileChunkingStrategyParam = OpenAI::Models::AutoFileChunkingStrategyParam + + Batch = OpenAI::Models::Batch + + BatchCancelParams = OpenAI::Models::BatchCancelParams + + BatchCreateParams = OpenAI::Models::BatchCreateParams + + BatchError = OpenAI::Models::BatchError + + BatchListParams = OpenAI::Models::BatchListParams + + BatchRequestCounts = OpenAI::Models::BatchRequestCounts + + BatchRetrieveParams = OpenAI::Models::BatchRetrieveParams + + Beta = OpenAI::Models::Beta + + Chat = OpenAI::Models::Chat + + ChatModel = OpenAI::Models::ChatModel + + ComparisonFilter = OpenAI::Models::ComparisonFilter + + Completion = OpenAI::Models::Completion + + CompletionChoice = OpenAI::Models::CompletionChoice + + CompletionCreateParams = OpenAI::Models::CompletionCreateParams + + CompletionUsage = OpenAI::Models::CompletionUsage + + CompoundFilter = OpenAI::Models::CompoundFilter + + CreateEmbeddingResponse = OpenAI::Models::CreateEmbeddingResponse + + Embedding = OpenAI::Models::Embedding + + EmbeddingCreateParams = OpenAI::Models::EmbeddingCreateParams + + EmbeddingModel = OpenAI::Models::EmbeddingModel + + ErrorObject = OpenAI::Models::ErrorObject + + EvalCreateParams = OpenAI::Models::EvalCreateParams + + EvalCustomDataSourceConfig = OpenAI::Models::EvalCustomDataSourceConfig + + EvalDeleteParams = OpenAI::Models::EvalDeleteParams + + EvalLabelModelGrader = OpenAI::Models::EvalLabelModelGrader + + EvalListParams = OpenAI::Models::EvalListParams + + EvalRetrieveParams = OpenAI::Models::EvalRetrieveParams + + Evals = OpenAI::Models::Evals + + EvalStoredCompletionsDataSourceConfig = OpenAI::Models::EvalStoredCompletionsDataSourceConfig + + EvalStringCheckGrader = OpenAI::Models::EvalStringCheckGrader + + EvalTextSimilarityGrader = OpenAI::Models::EvalTextSimilarityGrader + + EvalUpdateParams = OpenAI::Models::EvalUpdateParams + + FileChunkingStrategy = OpenAI::Models::FileChunkingStrategy + + FileChunkingStrategyParam = OpenAI::Models::FileChunkingStrategyParam + + FileContent = OpenAI::Models::FileContent + + FileContentParams = OpenAI::Models::FileContentParams + + FileCreateParams = OpenAI::Models::FileCreateParams + + FileDeleted = OpenAI::Models::FileDeleted + + FileDeleteParams = OpenAI::Models::FileDeleteParams + + FileListParams = OpenAI::Models::FileListParams + + FileObject = OpenAI::Models::FileObject + + FilePurpose = OpenAI::Models::FilePurpose + + FileRetrieveParams = OpenAI::Models::FileRetrieveParams + + FineTuning = OpenAI::Models::FineTuning + + FunctionDefinition = OpenAI::Models::FunctionDefinition + + FunctionParameters = T.let(OpenAI::Models::FunctionParameters, OpenAI::Internal::Type::Converter) + + Image = OpenAI::Models::Image + + ImageCreateVariationParams = OpenAI::Models::ImageCreateVariationParams + + ImageEditParams = OpenAI::Models::ImageEditParams + + ImageGenerateParams = OpenAI::Models::ImageGenerateParams + + ImageModel = OpenAI::Models::ImageModel + + ImagesResponse = OpenAI::Models::ImagesResponse + + Metadata = T.let(OpenAI::Models::Metadata, OpenAI::Internal::Type::Converter) + + Model = OpenAI::Models::Model + + ModelDeleted = OpenAI::Models::ModelDeleted + + ModelDeleteParams = OpenAI::Models::ModelDeleteParams + + ModelListParams = OpenAI::Models::ModelListParams + + ModelRetrieveParams = OpenAI::Models::ModelRetrieveParams + + Moderation = OpenAI::Models::Moderation + + ModerationCreateParams = OpenAI::Models::ModerationCreateParams + + ModerationImageURLInput = OpenAI::Models::ModerationImageURLInput + + ModerationModel = OpenAI::Models::ModerationModel + + ModerationMultiModalInput = OpenAI::Models::ModerationMultiModalInput + + ModerationTextInput = OpenAI::Models::ModerationTextInput + + OtherFileChunkingStrategyObject = OpenAI::Models::OtherFileChunkingStrategyObject + + Reasoning = OpenAI::Models::Reasoning + + ReasoningEffort = OpenAI::Models::ReasoningEffort + + ResponseFormatJSONObject = OpenAI::Models::ResponseFormatJSONObject + + ResponseFormatJSONSchema = OpenAI::Models::ResponseFormatJSONSchema + + ResponseFormatText = OpenAI::Models::ResponseFormatText + + Responses = OpenAI::Models::Responses + + ResponsesModel = OpenAI::Models::ResponsesModel + + StaticFileChunkingStrategy = OpenAI::Models::StaticFileChunkingStrategy + + StaticFileChunkingStrategyObject = OpenAI::Models::StaticFileChunkingStrategyObject + + StaticFileChunkingStrategyObjectParam = OpenAI::Models::StaticFileChunkingStrategyObjectParam + + Upload = OpenAI::Models::Upload + + UploadCancelParams = OpenAI::Models::UploadCancelParams + + UploadCompleteParams = OpenAI::Models::UploadCompleteParams + + UploadCreateParams = OpenAI::Models::UploadCreateParams + + Uploads = OpenAI::Models::Uploads + + VectorStore = OpenAI::Models::VectorStore + + VectorStoreCreateParams = OpenAI::Models::VectorStoreCreateParams + + VectorStoreDeleted = OpenAI::Models::VectorStoreDeleted + + VectorStoreDeleteParams = OpenAI::Models::VectorStoreDeleteParams + + VectorStoreListParams = OpenAI::Models::VectorStoreListParams + + VectorStoreRetrieveParams = OpenAI::Models::VectorStoreRetrieveParams + + VectorStores = OpenAI::Models::VectorStores + + VectorStoreSearchParams = OpenAI::Models::VectorStoreSearchParams + + VectorStoreUpdateParams = OpenAI::Models::VectorStoreUpdateParams +end diff --git a/sig/openai/models.rbs b/sig/openai/models.rbs new file mode 100644 index 00000000..7802cabe --- /dev/null +++ b/sig/openai/models.rbs @@ -0,0 +1,189 @@ +module OpenAI + module AllModels = OpenAI::Models::AllModels + + module Audio = OpenAI::Models::Audio + + module AudioModel = OpenAI::Models::AudioModel + + module AudioResponseFormat = OpenAI::Models::AudioResponseFormat + + class AutoFileChunkingStrategyParam = OpenAI::Models::AutoFileChunkingStrategyParam + + class Batch = OpenAI::Models::Batch + + class BatchCancelParams = OpenAI::Models::BatchCancelParams + + class BatchCreateParams = OpenAI::Models::BatchCreateParams + + class BatchError = OpenAI::Models::BatchError + + class BatchListParams = OpenAI::Models::BatchListParams + + class BatchRequestCounts = OpenAI::Models::BatchRequestCounts + + class BatchRetrieveParams = OpenAI::Models::BatchRetrieveParams + + module Beta = OpenAI::Models::Beta + + module Chat = OpenAI::Models::Chat + + module ChatModel = OpenAI::Models::ChatModel + + class ComparisonFilter = OpenAI::Models::ComparisonFilter + + class Completion = OpenAI::Models::Completion + + class CompletionChoice = OpenAI::Models::CompletionChoice + + class CompletionCreateParams = OpenAI::Models::CompletionCreateParams + + class CompletionUsage = OpenAI::Models::CompletionUsage + + class CompoundFilter = OpenAI::Models::CompoundFilter + + class CreateEmbeddingResponse = OpenAI::Models::CreateEmbeddingResponse + + class Embedding = OpenAI::Models::Embedding + + class EmbeddingCreateParams = OpenAI::Models::EmbeddingCreateParams + + module EmbeddingModel = OpenAI::Models::EmbeddingModel + + class ErrorObject = OpenAI::Models::ErrorObject + + class EvalCreateParams = OpenAI::Models::EvalCreateParams + + class EvalCustomDataSourceConfig = OpenAI::Models::EvalCustomDataSourceConfig + + class EvalDeleteParams = OpenAI::Models::EvalDeleteParams + + class EvalLabelModelGrader = OpenAI::Models::EvalLabelModelGrader + + class EvalListParams = OpenAI::Models::EvalListParams + + class EvalRetrieveParams = OpenAI::Models::EvalRetrieveParams + + module Evals = OpenAI::Models::Evals + + class EvalStoredCompletionsDataSourceConfig = OpenAI::Models::EvalStoredCompletionsDataSourceConfig + + class EvalStringCheckGrader = OpenAI::Models::EvalStringCheckGrader + + class EvalTextSimilarityGrader = OpenAI::Models::EvalTextSimilarityGrader + + class EvalUpdateParams = OpenAI::Models::EvalUpdateParams + + module FileChunkingStrategy = OpenAI::Models::FileChunkingStrategy + + module FileChunkingStrategyParam = OpenAI::Models::FileChunkingStrategyParam + + class FileContent = OpenAI::Models::FileContent + + class FileContentParams = OpenAI::Models::FileContentParams + + class FileCreateParams = OpenAI::Models::FileCreateParams + + class FileDeleted = OpenAI::Models::FileDeleted + + class FileDeleteParams = OpenAI::Models::FileDeleteParams + + class FileListParams = OpenAI::Models::FileListParams + + class FileObject = OpenAI::Models::FileObject + + module FilePurpose = OpenAI::Models::FilePurpose + + class FileRetrieveParams = OpenAI::Models::FileRetrieveParams + + module FineTuning = OpenAI::Models::FineTuning + + class FunctionDefinition = OpenAI::Models::FunctionDefinition + + FunctionParameters: OpenAI::Internal::Type::Converter + + class Image = OpenAI::Models::Image + + class ImageCreateVariationParams = OpenAI::Models::ImageCreateVariationParams + + class ImageEditParams = OpenAI::Models::ImageEditParams + + class ImageGenerateParams = OpenAI::Models::ImageGenerateParams + + module ImageModel = OpenAI::Models::ImageModel + + class ImagesResponse = OpenAI::Models::ImagesResponse + + Metadata: OpenAI::Internal::Type::Converter + + class Model = OpenAI::Models::Model + + class ModelDeleted = OpenAI::Models::ModelDeleted + + class ModelDeleteParams = OpenAI::Models::ModelDeleteParams + + class ModelListParams = OpenAI::Models::ModelListParams + + class ModelRetrieveParams = OpenAI::Models::ModelRetrieveParams + + class Moderation = OpenAI::Models::Moderation + + class ModerationCreateParams = OpenAI::Models::ModerationCreateParams + + class ModerationImageURLInput = OpenAI::Models::ModerationImageURLInput + + module ModerationModel = OpenAI::Models::ModerationModel + + module ModerationMultiModalInput = OpenAI::Models::ModerationMultiModalInput + + class ModerationTextInput = OpenAI::Models::ModerationTextInput + + class OtherFileChunkingStrategyObject = OpenAI::Models::OtherFileChunkingStrategyObject + + class Reasoning = OpenAI::Models::Reasoning + + module ReasoningEffort = OpenAI::Models::ReasoningEffort + + class ResponseFormatJSONObject = OpenAI::Models::ResponseFormatJSONObject + + class ResponseFormatJSONSchema = OpenAI::Models::ResponseFormatJSONSchema + + class ResponseFormatText = OpenAI::Models::ResponseFormatText + + module Responses = OpenAI::Models::Responses + + module ResponsesModel = OpenAI::Models::ResponsesModel + + class StaticFileChunkingStrategy = OpenAI::Models::StaticFileChunkingStrategy + + class StaticFileChunkingStrategyObject = OpenAI::Models::StaticFileChunkingStrategyObject + + class StaticFileChunkingStrategyObjectParam = OpenAI::Models::StaticFileChunkingStrategyObjectParam + + class Upload = OpenAI::Models::Upload + + class UploadCancelParams = OpenAI::Models::UploadCancelParams + + class UploadCompleteParams = OpenAI::Models::UploadCompleteParams + + class UploadCreateParams = OpenAI::Models::UploadCreateParams + + module Uploads = OpenAI::Models::Uploads + + class VectorStore = OpenAI::Models::VectorStore + + class VectorStoreCreateParams = OpenAI::Models::VectorStoreCreateParams + + class VectorStoreDeleted = OpenAI::Models::VectorStoreDeleted + + class VectorStoreDeleteParams = OpenAI::Models::VectorStoreDeleteParams + + class VectorStoreListParams = OpenAI::Models::VectorStoreListParams + + class VectorStoreRetrieveParams = OpenAI::Models::VectorStoreRetrieveParams + + module VectorStores = OpenAI::Models::VectorStores + + class VectorStoreSearchParams = OpenAI::Models::VectorStoreSearchParams + + class VectorStoreUpdateParams = OpenAI::Models::VectorStoreUpdateParams +end From 8e8464e2b6d9dc814c68f0e20268a2eafba37361 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Thu, 1 May 2025 21:45:07 +0000 Subject: [PATCH 32/47] chore: always check if current page is empty in `next_page?` --- lib/openai/internal/cursor_page.rb | 4 ++-- lib/openai/internal/page.rb | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/lib/openai/internal/cursor_page.rb b/lib/openai/internal/cursor_page.rb index 3cb0654b..5f68a217 100644 --- a/lib/openai/internal/cursor_page.rb +++ b/lib/openai/internal/cursor_page.rb @@ -66,8 +66,8 @@ def initialize(client:, req:, headers:, page_data:) super case page_data - in {data: Array | nil => data} - @data = data&.map { OpenAI::Internal::Type::Converter.coerce(@model, _1) } + in {data: Array => data} + @data = data.map { OpenAI::Internal::Type::Converter.coerce(@model, _1) } else end @has_more = page_data[:has_more] diff --git a/lib/openai/internal/page.rb b/lib/openai/internal/page.rb index f3792c4c..36c350a4 100644 --- a/lib/openai/internal/page.rb +++ b/lib/openai/internal/page.rb @@ -60,8 +60,8 @@ def initialize(client:, req:, headers:, page_data:) super case page_data - in {data: Array | nil => data} - @data = data&.map { OpenAI::Internal::Type::Converter.coerce(@model, _1) } + in {data: Array => data} + @data = data.map { OpenAI::Internal::Type::Converter.coerce(@model, _1) } else end @object = page_data[:object] From c5b4f523e1cc110b5a944c53a1530fa0d9456eae Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Thu, 1 May 2025 22:55:29 +0000 Subject: [PATCH 33/47] chore: validate request option coercion correctness --- lib/openai/internal/type/base_model.rb | 10 +--------- lib/openai/internal/type/request_parameters.rb | 10 ++-------- lib/openai/internal/util.rb | 16 ++++++++++++++++ lib/openai/resources/beta/assistants.rb | 10 +++++----- lib/openai/resources/beta/threads.rb | 12 ++++++------ lib/openai/resources/beta/threads/messages.rb | 10 +++++----- lib/openai/resources/beta/threads/runs.rb | 16 ++++++++-------- lib/openai/resources/beta/threads/runs/steps.rb | 4 ++-- lib/openai/resources/vector_stores.rb | 12 ++++++------ .../resources/vector_stores/file_batches.rb | 8 ++++---- lib/openai/resources/vector_stores/files.rb | 12 ++++++------ rbi/openai/internal/util.rbi | 4 ++++ sig/openai/internal/util.rbs | 2 ++ 13 files changed, 67 insertions(+), 59 deletions(-) diff --git a/lib/openai/internal/type/base_model.rb b/lib/openai/internal/type/base_model.rb index af231837..0035eb6c 100644 --- a/lib/openai/internal/type/base_model.rb +++ b/lib/openai/internal/type/base_model.rb @@ -390,15 +390,7 @@ def to_yaml(*a) = OpenAI::Internal::Type::Converter.dump(self.class, self).to_ya # Create a new instance of a model. # # @param data [Hash{Symbol=>Object}, self] - def initialize(data = {}) - case OpenAI::Internal::Util.coerce_hash(data) - in Hash => coerced - @data = coerced - else - message = "Expected a #{Hash} or #{OpenAI::Internal::Type::BaseModel}, got #{data.inspect}" - raise ArgumentError.new(message) - end - end + def initialize(data = {}) = (@data = OpenAI::Internal::Util.coerce_hash!(data).to_h) class << self # @api private diff --git a/lib/openai/internal/type/request_parameters.rb b/lib/openai/internal/type/request_parameters.rb index 958e1051..0a362d38 100644 --- a/lib/openai/internal/type/request_parameters.rb +++ b/lib/openai/internal/type/request_parameters.rb @@ -28,14 +28,8 @@ def dump_request(params) state = {can_retry: true} case (dumped = dump(params, state: state)) in Hash - options = OpenAI::Internal::Util.coerce_hash(dumped[:request_options]) - request_options = - case [options, state.fetch(:can_retry)] - in [Hash | nil, false] - {**options.to_h, max_retries: 0} - else - options - end + options = OpenAI::Internal::Util.coerce_hash!(dumped[:request_options]).to_h + request_options = state.fetch(:can_retry) ? options : {**options, max_retries: 0} [dumped.except(:request_options), request_options] else [dumped, nil] diff --git a/lib/openai/internal/util.rb b/lib/openai/internal/util.rb index 0ecc6aca..e6424124 100644 --- a/lib/openai/internal/util.rb +++ b/lib/openai/internal/util.rb @@ -128,6 +128,22 @@ def coerce_hash(input) input.respond_to?(:to_h) ? input.to_h : input end end + + # @api private + # + # @param input [Object] + # + # @raise [ArgumentError] + # @return [Hash{Object=>Object}, nil] + def coerce_hash!(input) + case coerce_hash(input) + in Hash | nil => coerced + coerced + else + message = "Expected a #{Hash} or #{OpenAI::Internal::Type::BaseModel}, got #{data.inspect}" + raise ArgumentError.new(message) + end + end end class << self diff --git a/lib/openai/resources/beta/assistants.rb b/lib/openai/resources/beta/assistants.rb index 303843a0..25b83738 100644 --- a/lib/openai/resources/beta/assistants.rb +++ b/lib/openai/resources/beta/assistants.rb @@ -52,7 +52,7 @@ def create(params) path: "assistants", body: parsed, model: OpenAI::Models::Beta::Assistant, - options: options + options: {extra_headers: {"OpenAI-Beta" => "assistants=v2"}, **options} ) end @@ -72,7 +72,7 @@ def retrieve(assistant_id, params = {}) method: :get, path: ["assistants/%1$s", assistant_id], model: OpenAI::Models::Beta::Assistant, - options: params[:request_options] + options: {extra_headers: {"OpenAI-Beta" => "assistants=v2"}, **params[:request_options].to_h} ) end @@ -126,7 +126,7 @@ def update(assistant_id, params = {}) path: ["assistants/%1$s", assistant_id], body: parsed, model: OpenAI::Models::Beta::Assistant, - options: options + options: {extra_headers: {"OpenAI-Beta" => "assistants=v2"}, **options} ) end @@ -162,7 +162,7 @@ def list(params = {}) query: parsed, page: OpenAI::Internal::CursorPage, model: OpenAI::Models::Beta::Assistant, - options: options + options: {extra_headers: {"OpenAI-Beta" => "assistants=v2"}, **options} ) end @@ -182,7 +182,7 @@ def delete(assistant_id, params = {}) method: :delete, path: ["assistants/%1$s", assistant_id], model: OpenAI::Models::Beta::AssistantDeleted, - options: params[:request_options] + options: {extra_headers: {"OpenAI-Beta" => "assistants=v2"}, **params[:request_options].to_h} ) end diff --git a/lib/openai/resources/beta/threads.rb b/lib/openai/resources/beta/threads.rb index 85c88739..56a97bfe 100644 --- a/lib/openai/resources/beta/threads.rb +++ b/lib/openai/resources/beta/threads.rb @@ -37,7 +37,7 @@ def create(params = {}) path: "threads", body: parsed, model: OpenAI::Models::Beta::Thread, - options: options + options: {extra_headers: {"OpenAI-Beta" => "assistants=v2"}, **options} ) end @@ -57,7 +57,7 @@ def retrieve(thread_id, params = {}) method: :get, path: ["threads/%1$s", thread_id], model: OpenAI::Models::Beta::Thread, - options: params[:request_options] + options: {extra_headers: {"OpenAI-Beta" => "assistants=v2"}, **params[:request_options].to_h} ) end @@ -87,7 +87,7 @@ def update(thread_id, params = {}) path: ["threads/%1$s", thread_id], body: parsed, model: OpenAI::Models::Beta::Thread, - options: options + options: {extra_headers: {"OpenAI-Beta" => "assistants=v2"}, **options} ) end @@ -107,7 +107,7 @@ def delete(thread_id, params = {}) method: :delete, path: ["threads/%1$s", thread_id], model: OpenAI::Models::Beta::ThreadDeleted, - options: params[:request_options] + options: {extra_headers: {"OpenAI-Beta" => "assistants=v2"}, **params[:request_options].to_h} ) end @@ -178,7 +178,7 @@ def create_and_run(params) path: "threads/runs", body: parsed, model: OpenAI::Models::Beta::Threads::Run, - options: options + options: {extra_headers: {"OpenAI-Beta" => "assistants=v2"}, **options} ) end @@ -257,7 +257,7 @@ def stream_raw(params) body: parsed, stream: OpenAI::Internal::Stream, model: OpenAI::Models::Beta::AssistantStreamEvent, - options: options + options: {extra_headers: {"OpenAI-Beta" => "assistants=v2"}, **options} ) end diff --git a/lib/openai/resources/beta/threads/messages.rb b/lib/openai/resources/beta/threads/messages.rb index d9191639..d60ca5f6 100644 --- a/lib/openai/resources/beta/threads/messages.rb +++ b/lib/openai/resources/beta/threads/messages.rb @@ -35,7 +35,7 @@ def create(thread_id, params) path: ["threads/%1$s/messages", thread_id], body: parsed, model: OpenAI::Models::Beta::Threads::Message, - options: options + options: {extra_headers: {"OpenAI-Beta" => "assistants=v2"}, **options} ) end @@ -66,7 +66,7 @@ def retrieve(message_id, params) method: :get, path: ["threads/%1$s/messages/%2$s", thread_id, message_id], model: OpenAI::Models::Beta::Threads::Message, - options: options + options: {extra_headers: {"OpenAI-Beta" => "assistants=v2"}, **options} ) end @@ -100,7 +100,7 @@ def update(message_id, params) path: ["threads/%1$s/messages/%2$s", thread_id, message_id], body: parsed, model: OpenAI::Models::Beta::Threads::Message, - options: options + options: {extra_headers: {"OpenAI-Beta" => "assistants=v2"}, **options} ) end @@ -141,7 +141,7 @@ def list(thread_id, params = {}) query: parsed, page: OpenAI::Internal::CursorPage, model: OpenAI::Models::Beta::Threads::Message, - options: options + options: {extra_headers: {"OpenAI-Beta" => "assistants=v2"}, **options} ) end @@ -168,7 +168,7 @@ def delete(message_id, params) method: :delete, path: ["threads/%1$s/messages/%2$s", thread_id, message_id], model: OpenAI::Models::Beta::Threads::MessageDeleted, - options: options + options: {extra_headers: {"OpenAI-Beta" => "assistants=v2"}, **options} ) end diff --git a/lib/openai/resources/beta/threads/runs.rb b/lib/openai/resources/beta/threads/runs.rb index 1dfcaeb2..3f1b6d0d 100644 --- a/lib/openai/resources/beta/threads/runs.rb +++ b/lib/openai/resources/beta/threads/runs.rb @@ -86,7 +86,7 @@ def create(thread_id, params) query: parsed.slice(*query_params), body: parsed.except(*query_params), model: OpenAI::Models::Beta::Threads::Run, - options: options + options: {extra_headers: {"OpenAI-Beta" => "assistants=v2"}, **options} ) end @@ -171,7 +171,7 @@ def create_stream_raw(thread_id, params) body: parsed.except(*query_params), stream: OpenAI::Internal::Stream, model: OpenAI::Models::Beta::AssistantStreamEvent, - options: options + options: {extra_headers: {"OpenAI-Beta" => "assistants=v2"}, **options} ) end @@ -202,7 +202,7 @@ def retrieve(run_id, params) method: :get, path: ["threads/%1$s/runs/%2$s", thread_id, run_id], model: OpenAI::Models::Beta::Threads::Run, - options: options + options: {extra_headers: {"OpenAI-Beta" => "assistants=v2"}, **options} ) end @@ -237,7 +237,7 @@ def update(run_id, params) path: ["threads/%1$s/runs/%2$s", thread_id, run_id], body: parsed, model: OpenAI::Models::Beta::Threads::Run, - options: options + options: {extra_headers: {"OpenAI-Beta" => "assistants=v2"}, **options} ) end @@ -275,7 +275,7 @@ def list(thread_id, params = {}) query: parsed, page: OpenAI::Internal::CursorPage, model: OpenAI::Models::Beta::Threads::Run, - options: options + options: {extra_headers: {"OpenAI-Beta" => "assistants=v2"}, **options} ) end @@ -302,7 +302,7 @@ def cancel(run_id, params) method: :post, path: ["threads/%1$s/runs/%2$s/cancel", thread_id, run_id], model: OpenAI::Models::Beta::Threads::Run, - options: options + options: {extra_headers: {"OpenAI-Beta" => "assistants=v2"}, **options} ) end @@ -346,7 +346,7 @@ def submit_tool_outputs(run_id, params) path: ["threads/%1$s/runs/%2$s/submit_tool_outputs", thread_id, run_id], body: parsed, model: OpenAI::Models::Beta::Threads::Run, - options: options + options: {extra_headers: {"OpenAI-Beta" => "assistants=v2"}, **options} ) end @@ -393,7 +393,7 @@ def submit_tool_outputs_stream_raw(run_id, params) body: parsed, stream: OpenAI::Internal::Stream, model: OpenAI::Models::Beta::AssistantStreamEvent, - options: options + options: {extra_headers: {"OpenAI-Beta" => "assistants=v2"}, **options} ) end diff --git a/lib/openai/resources/beta/threads/runs/steps.rb b/lib/openai/resources/beta/threads/runs/steps.rb index 21bbd9a5..011a0874 100644 --- a/lib/openai/resources/beta/threads/runs/steps.rb +++ b/lib/openai/resources/beta/threads/runs/steps.rb @@ -42,7 +42,7 @@ def retrieve(step_id, params) path: ["threads/%1$s/runs/%2$s/steps/%3$s", thread_id, run_id, step_id], query: parsed, model: OpenAI::Models::Beta::Threads::Runs::RunStep, - options: options + options: {extra_headers: {"OpenAI-Beta" => "assistants=v2"}, **options} ) end @@ -89,7 +89,7 @@ def list(run_id, params) query: parsed, page: OpenAI::Internal::CursorPage, model: OpenAI::Models::Beta::Threads::Runs::RunStep, - options: options + options: {extra_headers: {"OpenAI-Beta" => "assistants=v2"}, **options} ) end diff --git a/lib/openai/resources/vector_stores.rb b/lib/openai/resources/vector_stores.rb index cc75a01e..c0eace72 100644 --- a/lib/openai/resources/vector_stores.rb +++ b/lib/openai/resources/vector_stores.rb @@ -40,7 +40,7 @@ def create(params = {}) path: "vector_stores", body: parsed, model: OpenAI::Models::VectorStore, - options: options + options: {extra_headers: {"OpenAI-Beta" => "assistants=v2"}, **options} ) end @@ -60,7 +60,7 @@ def retrieve(vector_store_id, params = {}) method: :get, path: ["vector_stores/%1$s", vector_store_id], model: OpenAI::Models::VectorStore, - options: params[:request_options] + options: {extra_headers: {"OpenAI-Beta" => "assistants=v2"}, **params[:request_options].to_h} ) end @@ -91,7 +91,7 @@ def update(vector_store_id, params = {}) path: ["vector_stores/%1$s", vector_store_id], body: parsed, model: OpenAI::Models::VectorStore, - options: options + options: {extra_headers: {"OpenAI-Beta" => "assistants=v2"}, **options} ) end @@ -127,7 +127,7 @@ def list(params = {}) query: parsed, page: OpenAI::Internal::CursorPage, model: OpenAI::Models::VectorStore, - options: options + options: {extra_headers: {"OpenAI-Beta" => "assistants=v2"}, **options} ) end @@ -147,7 +147,7 @@ def delete(vector_store_id, params = {}) method: :delete, path: ["vector_stores/%1$s", vector_store_id], model: OpenAI::Models::VectorStoreDeleted, - options: params[:request_options] + options: {extra_headers: {"OpenAI-Beta" => "assistants=v2"}, **params[:request_options].to_h} ) end @@ -185,7 +185,7 @@ def search(vector_store_id, params) body: parsed, page: OpenAI::Internal::Page, model: OpenAI::Models::VectorStoreSearchResponse, - options: options + options: {extra_headers: {"OpenAI-Beta" => "assistants=v2"}, **options} ) end diff --git a/lib/openai/resources/vector_stores/file_batches.rb b/lib/openai/resources/vector_stores/file_batches.rb index 10b3e3dc..a56053dd 100644 --- a/lib/openai/resources/vector_stores/file_batches.rb +++ b/lib/openai/resources/vector_stores/file_batches.rb @@ -33,7 +33,7 @@ def create(vector_store_id, params) path: ["vector_stores/%1$s/file_batches", vector_store_id], body: parsed, model: OpenAI::Models::VectorStores::VectorStoreFileBatch, - options: options + options: {extra_headers: {"OpenAI-Beta" => "assistants=v2"}, **options} ) end @@ -60,7 +60,7 @@ def retrieve(batch_id, params) method: :get, path: ["vector_stores/%1$s/file_batches/%2$s", vector_store_id, batch_id], model: OpenAI::Models::VectorStores::VectorStoreFileBatch, - options: options + options: {extra_headers: {"OpenAI-Beta" => "assistants=v2"}, **options} ) end @@ -88,7 +88,7 @@ def cancel(batch_id, params) method: :post, path: ["vector_stores/%1$s/file_batches/%2$s/cancel", vector_store_id, batch_id], model: OpenAI::Models::VectorStores::VectorStoreFileBatch, - options: options + options: {extra_headers: {"OpenAI-Beta" => "assistants=v2"}, **options} ) end @@ -135,7 +135,7 @@ def list_files(batch_id, params) query: parsed, page: OpenAI::Internal::CursorPage, model: OpenAI::Models::VectorStores::VectorStoreFile, - options: options + options: {extra_headers: {"OpenAI-Beta" => "assistants=v2"}, **options} ) end diff --git a/lib/openai/resources/vector_stores/files.rb b/lib/openai/resources/vector_stores/files.rb index 74870229..fa0b48c5 100644 --- a/lib/openai/resources/vector_stores/files.rb +++ b/lib/openai/resources/vector_stores/files.rb @@ -35,7 +35,7 @@ def create(vector_store_id, params) path: ["vector_stores/%1$s/files", vector_store_id], body: parsed, model: OpenAI::Models::VectorStores::VectorStoreFile, - options: options + options: {extra_headers: {"OpenAI-Beta" => "assistants=v2"}, **options} ) end @@ -62,7 +62,7 @@ def retrieve(file_id, params) method: :get, path: ["vector_stores/%1$s/files/%2$s", vector_store_id, file_id], model: OpenAI::Models::VectorStores::VectorStoreFile, - options: options + options: {extra_headers: {"OpenAI-Beta" => "assistants=v2"}, **options} ) end @@ -96,7 +96,7 @@ def update(file_id, params) path: ["vector_stores/%1$s/files/%2$s", vector_store_id, file_id], body: parsed, model: OpenAI::Models::VectorStores::VectorStoreFile, - options: options + options: {extra_headers: {"OpenAI-Beta" => "assistants=v2"}, **options} ) end @@ -137,7 +137,7 @@ def list(vector_store_id, params = {}) query: parsed, page: OpenAI::Internal::CursorPage, model: OpenAI::Models::VectorStores::VectorStoreFile, - options: options + options: {extra_headers: {"OpenAI-Beta" => "assistants=v2"}, **options} ) end @@ -167,7 +167,7 @@ def delete(file_id, params) method: :delete, path: ["vector_stores/%1$s/files/%2$s", vector_store_id, file_id], model: OpenAI::Models::VectorStores::VectorStoreFileDeleted, - options: options + options: {extra_headers: {"OpenAI-Beta" => "assistants=v2"}, **options} ) end @@ -195,7 +195,7 @@ def content(file_id, params) path: ["vector_stores/%1$s/files/%2$s/content", vector_store_id, file_id], page: OpenAI::Internal::Page, model: OpenAI::Models::VectorStores::FileContentResponse, - options: options + options: {extra_headers: {"OpenAI-Beta" => "assistants=v2"}, **options} ) end diff --git a/rbi/openai/internal/util.rbi b/rbi/openai/internal/util.rbi index 3fe2f560..c86a9895 100644 --- a/rbi/openai/internal/util.rbi +++ b/rbi/openai/internal/util.rbi @@ -42,6 +42,10 @@ module OpenAI # @api private sig { params(input: T.anything).returns(T.any(T::Hash[T.anything, T.anything], T.anything)) } def coerce_hash(input); end + + # @api private + sig { params(input: T.anything).returns(T.nilable(T::Hash[T.anything, T.anything])) } + def coerce_hash!(input); end end class << self diff --git a/sig/openai/internal/util.rbs b/sig/openai/internal/util.rbs index 14b3d577..725c664b 100644 --- a/sig/openai/internal/util.rbs +++ b/sig/openai/internal/util.rbs @@ -19,6 +19,8 @@ module OpenAI def self?.coerce_hash: (top input) -> (::Hash[top, top] | top) + def self?.coerce_hash!: (top input) -> ::Hash[top, top]? + def self?.deep_merge_lr: (top lhs, top rhs, ?concat: bool) -> top def self?.deep_merge: ( From 7720dcabd020a5c672838dcf935fd9c9ba5b94e1 Mon Sep 17 00:00:00 2001 From: dogisgreat Date: Thu, 1 May 2025 18:58:35 -0400 Subject: [PATCH 34/47] chore: ensure examples have busybox compat shebangs --- examples/advanced_streaming.rb | 2 +- examples/demo.rb | 2 +- examples/demo_sorbet.rb | 2 +- examples/picture.rb | 2 +- examples/streaming.rb | 2 +- 5 files changed, 5 insertions(+), 5 deletions(-) diff --git a/examples/advanced_streaming.rb b/examples/advanced_streaming.rb index 75a656d7..edf264e4 100755 --- a/examples/advanced_streaming.rb +++ b/examples/advanced_streaming.rb @@ -1,4 +1,4 @@ -#!/usr/bin/env -S -- ruby +#!/usr/bin/env ruby # frozen_string_literal: true # typed: strong diff --git a/examples/demo.rb b/examples/demo.rb index d8f2f195..aeccec76 100755 --- a/examples/demo.rb +++ b/examples/demo.rb @@ -1,4 +1,4 @@ -#!/usr/bin/env -S -- ruby +#!/usr/bin/env ruby # frozen_string_literal: true # typed: strong diff --git a/examples/demo_sorbet.rb b/examples/demo_sorbet.rb index 996480dc..8a52e08b 100755 --- a/examples/demo_sorbet.rb +++ b/examples/demo_sorbet.rb @@ -1,4 +1,4 @@ -#!/usr/bin/env -S -- ruby +#!/usr/bin/env ruby # frozen_string_literal: true # typed: strong diff --git a/examples/picture.rb b/examples/picture.rb index b3d40273..9397c7c9 100755 --- a/examples/picture.rb +++ b/examples/picture.rb @@ -1,4 +1,4 @@ -#!/usr/bin/env -S -- ruby +#!/usr/bin/env ruby # frozen_string_literal: true # typed: strong diff --git a/examples/streaming.rb b/examples/streaming.rb index 8e9bb795..f13830c5 100755 --- a/examples/streaming.rb +++ b/examples/streaming.rb @@ -1,4 +1,4 @@ -#!/usr/bin/env -S -- ruby +#!/usr/bin/env ruby # frozen_string_literal: true # typed: strong From d64d9283d59e4448cf1881814c42f11f192ddb12 Mon Sep 17 00:00:00 2001 From: Erik Berlin Date: Fri, 2 May 2025 00:09:18 -0700 Subject: [PATCH 35/47] Remove unnecessary require statement In Ruby 3.2, the Set class is built-in and does not require a require "set" statement. It's automatically loaded when you use the Set constant or call Enumerable#to_set. --- lib/openai.rb | 1 - 1 file changed, 1 deletion(-) diff --git a/lib/openai.rb b/lib/openai.rb index 0aadd7ca..2b3a1e44 100644 --- a/lib/openai.rb +++ b/lib/openai.rb @@ -11,7 +11,6 @@ require "pathname" require "rbconfig" require "securerandom" -require "set" require "stringio" require "time" require "uri" From a613a39f25a9faee787bd696e6384d0f1ac34cb0 Mon Sep 17 00:00:00 2001 From: dogisgreat Date: Fri, 2 May 2025 16:01:43 -0400 Subject: [PATCH 36/47] feat: initial structured outputs support (#565) Co-authored-by: stainless-app[bot] <142633134+stainless-app[bot]@users.noreply.github.com> Co-authored-by: Charles Finkel --- .../structured_outputs_chat_completions.rb | 55 +++++ ...tputs_chat_completions_function_calling.rb | 31 +++ lib/openai.rb | 8 + lib/openai/helpers/structured_output.rb | 16 ++ .../helpers/structured_output/array_of.rb | 49 ++++ .../helpers/structured_output/base_model.rb | 78 +++++++ .../helpers/structured_output/boolean.rb | 28 +++ .../helpers/structured_output/enum_of.rb | 63 +++++ .../json_schema_converter.rb | 163 +++++++++++++ .../helpers/structured_output/union_of.rb | 57 +++++ .../models/chat/chat_completion_message.rb | 6 + .../chat/chat_completion_message_tool_call.rb | 6 + lib/openai/resources/chat/completions.rb | 69 ++++++ lib/openai/structured_output.rb | 9 + test/openai/client_test.rb | 2 +- test/openai/helpers/structured_output_test.rb | 221 ++++++++++++++++++ 16 files changed, 860 insertions(+), 1 deletion(-) create mode 100755 examples/structured_outputs_chat_completions.rb create mode 100755 examples/structured_outputs_chat_completions_function_calling.rb create mode 100644 lib/openai/helpers/structured_output.rb create mode 100644 lib/openai/helpers/structured_output/array_of.rb create mode 100644 lib/openai/helpers/structured_output/base_model.rb create mode 100644 lib/openai/helpers/structured_output/boolean.rb create mode 100644 lib/openai/helpers/structured_output/enum_of.rb create mode 100644 lib/openai/helpers/structured_output/json_schema_converter.rb create mode 100644 lib/openai/helpers/structured_output/union_of.rb create mode 100644 lib/openai/structured_output.rb create mode 100644 test/openai/helpers/structured_output_test.rb diff --git a/examples/structured_outputs_chat_completions.rb b/examples/structured_outputs_chat_completions.rb new file mode 100755 index 00000000..7d52a4b7 --- /dev/null +++ b/examples/structured_outputs_chat_completions.rb @@ -0,0 +1,55 @@ +#!/usr/bin/env ruby +# frozen_string_literal: true +# typed: strong + +require_relative "../lib/openai" + +class Location < OpenAI::BaseModel + required :address, String + required :city, String, doc: "City name" + required :postal_code, String, nil?: true +end + +# Participant model with an optional last_name and an enum for status +class Participant < OpenAI::BaseModel + required :first_name, String + required :last_name, String, nil?: true + required :status, OpenAI::EnumOf[:confirmed, :unconfirmed, :tentative] +end + +# CalendarEvent model with a list of participants. +class CalendarEvent < OpenAI::BaseModel + required :name, String + required :date, String + required :participants, OpenAI::ArrayOf[Participant] + required :is_virtual, OpenAI::Boolean + required :location, + OpenAI::UnionOf[String, Location], + nil?: true, + doc: "Event location" +end + +# # gets API Key from environment variable `OPENAI_API_KEY` +client = OpenAI::Client.new + +chat_completion = client.chat.completions.create( + model: "gpt-4o-2024-08-06", + messages: [ + {role: :system, content: "Extract the event information."}, + { + role: :user, + content: <<~CONTENT + Alice Shah and Lena are going to a science fair on Friday at 123 Main St. in San Diego. + They have also invited Jasper Vellani and Talia Groves - Jasper has not responded and Talia said she is thinking about it. + CONTENT + } + ], + response_format: CalendarEvent +) + +chat_completion + .choices + .filter { !_1.message.refusal } + .each do |choice| + pp(choice.message.parsed) + end diff --git a/examples/structured_outputs_chat_completions_function_calling.rb b/examples/structured_outputs_chat_completions_function_calling.rb new file mode 100755 index 00000000..5a473089 --- /dev/null +++ b/examples/structured_outputs_chat_completions_function_calling.rb @@ -0,0 +1,31 @@ +#!/usr/bin/env ruby +# frozen_string_literal: true +# typed: strong + +require_relative "../lib/openai" + +class GetWeather < OpenAI::BaseModel + required :location, String, doc: "City and country e.g. Bogotá, Colombia" +end + +# gets API Key from environment variable `OPENAI_API_KEY` +client = OpenAI::Client.new + +chat_completion = client.chat.completions.create( + model: "gpt-4o-2024-08-06", + messages: [ + { + role: :user, + content: "What's the weather like in Paris today?" + } + ], + tools: [GetWeather] +) + +chat_completion + .choices + .filter { !_1.message.refusal } + .flat_map { _1.message.tool_calls.to_a } + .each do |tool_call| + pp(tool_call.function.parsed) + end diff --git a/lib/openai.rb b/lib/openai.rb index 0aadd7ca..4623a8dc 100644 --- a/lib/openai.rb +++ b/lib/openai.rb @@ -50,6 +50,14 @@ require_relative "openai/internal/stream" require_relative "openai/internal/cursor_page" require_relative "openai/internal/page" +require_relative "openai/helpers/structured_output/json_schema_converter" +require_relative "openai/helpers/structured_output/boolean" +require_relative "openai/helpers/structured_output/enum_of" +require_relative "openai/helpers/structured_output/union_of" +require_relative "openai/helpers/structured_output/array_of" +require_relative "openai/helpers/structured_output/base_model" +require_relative "openai/helpers/structured_output" +require_relative "openai/structured_output" require_relative "openai/models/reasoning_effort" require_relative "openai/models/chat/chat_completion_message" require_relative "openai/models/fine_tuning/fine_tuning_job_wandb_integration_object" diff --git a/lib/openai/helpers/structured_output.rb b/lib/openai/helpers/structured_output.rb new file mode 100644 index 00000000..361a36d9 --- /dev/null +++ b/lib/openai/helpers/structured_output.rb @@ -0,0 +1,16 @@ +# frozen_string_literal: true + +module OpenAI + module Helpers + # Helpers for the structured output API. + # + # see https://platform.openai.com/docs/guides/structured-outputs + # see https://json-schema.org + # + # Based on the DSL in {OpenAI::Internal::Type}, but currently only support the limited subset of JSON schema types used in structured output APIs. + # + # Supported types: {NilClass} {String} {Symbol} {Integer} {Float} {OpenAI::Boolean}, {OpenAI::EnumOf}, {OpenAI::UnionOf}, {OpenAI::ArrayOf}, {OpenAI::BaseModel} + module StructuredOutput + end + end +end diff --git a/lib/openai/helpers/structured_output/array_of.rb b/lib/openai/helpers/structured_output/array_of.rb new file mode 100644 index 00000000..cf134ea9 --- /dev/null +++ b/lib/openai/helpers/structured_output/array_of.rb @@ -0,0 +1,49 @@ +# frozen_string_literal: true + +module OpenAI + module Helpers + module StructuredOutput + # @generic Elem + # + # @example + # example = OpenAI::ArrayOf[Integer] + # + # @example + # example = OpenAI::ArrayOf[Integer, nil?: true, doc: "hi there!"] + class ArrayOf < OpenAI::Internal::Type::ArrayOf + include OpenAI::Helpers::StructuredOutput::JsonSchemaConverter + + # @api private + # + # @param state [Hash{Symbol=>Object}] + # + # @option state [Hash{Object=>String}] :defs + # + # @option state [Array] :path + # + # @return [Hash{Symbol=>Object}] + def to_json_schema_inner(state:) + OpenAI::Helpers::StructuredOutput::JsonSchemaConverter.cache_def!(state, type: self) do + state.fetch(:path) << "[]" + items = OpenAI::Helpers::StructuredOutput::JsonSchemaConverter.to_json_schema_inner( + item_type, + state: state + ) + items = OpenAI::Helpers::StructuredOutput::JsonSchemaConverter.to_nilable(items) if nilable? + + schema = {type: "array", items: items} + description.nil? ? schema : schema.update(description: description) + end + end + + # @return [String, nil] + attr_reader :description + + def initialize(type_info, spec = {}) + super + @description = [type_info, spec].grep(Hash).filter_map { _1[:doc] }.first + end + end + end + end +end diff --git a/lib/openai/helpers/structured_output/base_model.rb b/lib/openai/helpers/structured_output/base_model.rb new file mode 100644 index 00000000..5294df80 --- /dev/null +++ b/lib/openai/helpers/structured_output/base_model.rb @@ -0,0 +1,78 @@ +# frozen_string_literal: true + +module OpenAI + module Helpers + module StructuredOutput + # Represents a response from OpenAI's API where the model's output has been structured according to a schema predefined by the user. + # + # This class is specifically used when making requests with the `response_format` parameter set to use structured output (e.g., JSON). + # + # See {examples/structured_outputs_chat_completions.rb} for a complete example of use + class BaseModel < OpenAI::Internal::Type::BaseModel + extend OpenAI::Helpers::StructuredOutput::JsonSchemaConverter + + class << self + # @return [Hash{Symbol=>Object}] + def to_json_schema = OpenAI::Helpers::StructuredOutput::JsonSchemaConverter.to_json_schema(self) + + # @api private + # + # @param state [Hash{Symbol=>Object}] + # + # @option state [Hash{Object=>String}] :defs + # + # @option state [Array] :path + # + # @return [Hash{Symbol=>Object}] + def to_json_schema_inner(state:) + OpenAI::Helpers::StructuredOutput::JsonSchemaConverter.cache_def!(state, type: self) do + path = state.fetch(:path) + properties = fields.to_h do |name, field| + type, nilable = field.fetch_values(:type, :nilable) + new_state = {**state, path: [*path, ".#{name}"]} + + schema = + case type + in {"$ref": String} + type + in OpenAI::Helpers::StructuredOutput::JsonSchemaConverter + type.to_json_schema_inner(state: new_state).update(field.slice(:description)) + else + OpenAI::Helpers::StructuredOutput::JsonSchemaConverter.to_json_schema_inner( + type, + state: new_state + ) + end + schema = OpenAI::Helpers::StructuredOutput::JsonSchemaConverter.to_nilable(schema) if nilable + [name, schema] + end + + { + type: "object", + properties: properties, + required: properties.keys.map(&:to_s), + additionalProperties: false + } + end + end + end + + class << self + def required(name_sym, type_info, spec = {}) + super + + doc = [type_info, spec].grep(Hash).filter_map { _1[:doc] }.first + known_fields.fetch(name_sym).update(description: doc) unless doc.nil? + end + + def optional(...) + # rubocop:disable Layout/LineLength + message = "`optional` is not supported for structured output APIs, use `#required` with `nil?: true` instead" + # rubocop:enable Layout/LineLength + raise RuntimeError.new(message) + end + end + end + end + end +end diff --git a/lib/openai/helpers/structured_output/boolean.rb b/lib/openai/helpers/structured_output/boolean.rb new file mode 100644 index 00000000..e9b92a84 --- /dev/null +++ b/lib/openai/helpers/structured_output/boolean.rb @@ -0,0 +1,28 @@ +# frozen_string_literal: true + +module OpenAI + module Helpers + module StructuredOutput + # @abstract + # + # Ruby does not have a "boolean" Class, this is something for models to refer to. + class Boolean < OpenAI::Internal::Type::Boolean + extend OpenAI::Helpers::StructuredOutput::JsonSchemaConverter + # rubocop:disable Lint/UnusedMethodArgument + + # @api private + # + # @param state [Hash{Symbol=>Object}] + # + # @option state [Hash{Object=>String}] :defs + # + # @option state [Array] :path + # + # @return [Hash{Symbol=>Object}] + def self.to_json_schema_inner(state:) = {type: "boolean"} + + # rubocop:enable Lint/UnusedMethodArgument + end + end + end +end diff --git a/lib/openai/helpers/structured_output/enum_of.rb b/lib/openai/helpers/structured_output/enum_of.rb new file mode 100644 index 00000000..89e1774e --- /dev/null +++ b/lib/openai/helpers/structured_output/enum_of.rb @@ -0,0 +1,63 @@ +# frozen_string_literal: true + +module OpenAI + module Helpers + module StructuredOutput + # @generic Value + # + # @example + # example = OpenAI::EnumOf[:foo, :bar, :zoo] + # + # @example + # example = OpenAI::EnumOf[1, 2, 3] + class EnumOf + include OpenAI::Internal::Type::Enum + include OpenAI::Helpers::StructuredOutput::JsonSchemaConverter + + # @api private + # + # @param state [Hash{Symbol=>Object}] + # + # @option state [Hash{Object=>String}] :defs + # + # @option state [Array] :path + # + # @return [Hash{Symbol=>Object}] + def to_json_schema_inner(state:) + OpenAI::Helpers::StructuredOutput::JsonSchemaConverter.cache_def!(state, type: self) do + types = values.map do + case _1 + in NilClass + "null" + in true | false + "boolean" + in Integer + "integer" + in Float + "number" + in Symbol + "string" + end + end + .uniq + + { + type: types.length == 1 ? types.first : types, + enum: values.map { _1.is_a?(Symbol) ? _1.to_s : _1 } + } + end + end + + private_class_method :new + + def self.[](...) = new(...) + + # @return [Array>] + attr_reader :values + + # @param values [Array>] + def initialize(*values) = (@values = values.map { _1.is_a?(String) ? _1.to_sym : _1 }) + end + end + end +end diff --git a/lib/openai/helpers/structured_output/json_schema_converter.rb b/lib/openai/helpers/structured_output/json_schema_converter.rb new file mode 100644 index 00000000..d6d0c621 --- /dev/null +++ b/lib/openai/helpers/structured_output/json_schema_converter.rb @@ -0,0 +1,163 @@ +# frozen_string_literal: true + +module OpenAI + module Helpers + module StructuredOutput + # To customize the JSON schema conversion for a type, implement the `JsonSchemaConverter` interface. + module JsonSchemaConverter + POINTER = Object.new.freeze + COUNTER = Object.new.freeze + + # rubocop:disable Lint/UnusedMethodArgument + + # The exact JSON schema produced is subject to improvement between minor release versions. + # + # @param state [Hash{Symbol=>Object}] + # + # @option state [Hash{Object=>String}] :defs + # + # @option state [Array] :path + # + # @return [Hash{Symbol=>Object}] + def to_json_schema_inner(state:) = (raise NotImplementedError) + + # rubocop:enable Lint/UnusedMethodArgument + + # Internal helpers methods. + class << self + # @api private + # + # @param schema [Hash{Symbol=>Object}] + # + # @return [Hash{Symbol=>Object}] + def to_nilable(schema) + null = "null" + case schema + in {"$ref": String} + {anyOf: [schema, {type: null}]} + in {anyOf: schemas} + null = {type: null} + schemas.any? { _1 == null || _1 == {type: ["null"]} } ? schema : {anyOf: [*schemas, null]} + in {type: String => type} + type == null ? schema : schema.update(type: [type, null]) + in {type: Array => types} + types.include?(null) ? schema : schema.update(type: [*types, null]) + end + end + + # @api private + # + # @param state [Hash{Symbol=>Object}] + # + # @option state [Hash{Object=>String}] :defs + # + # @option state [Array] :path + # + # @param type [Object] + # + # @param blk [Proc] + # + def cache_def!(state, type:, &blk) + defs, path = state.fetch_values(:defs, :path) + if (stored = defs[type]) + stored[OpenAI::Helpers::StructuredOutput::JsonSchemaConverter::COUNTER] += 1 + stored.fetch(OpenAI::Helpers::StructuredOutput::JsonSchemaConverter::POINTER) + else + ref_path = String.new + ref = {"$ref": ref_path} + stored = { + OpenAI::Helpers::StructuredOutput::JsonSchemaConverter::POINTER => ref, + OpenAI::Helpers::StructuredOutput::JsonSchemaConverter::COUNTER => 1 + } + defs.store(type, stored) + schema = blk.call + ref_path.replace("#/definitions/#{path.join('/')}") + stored.update(schema) + ref + end + end + + # @api private + # + # @param type [OpenAI::Helpers::StructuredOutput::JsonSchemaConverter, Class] + # + # @return [Hash{Symbol=>Object}] + def to_json_schema(type) + defs = {} + state = {defs: defs, path: []} + schema = OpenAI::Helpers::StructuredOutput::JsonSchemaConverter.to_json_schema_inner( + type, + state: state + ) + reused_defs = {} + defs.each_value do |acc| + ref = acc.fetch(OpenAI::Helpers::StructuredOutput::JsonSchemaConverter::POINTER) + sch = acc.except( + OpenAI::Helpers::StructuredOutput::JsonSchemaConverter::POINTER, + OpenAI::Helpers::StructuredOutput::JsonSchemaConverter::COUNTER + ) + if acc.fetch(OpenAI::Helpers::StructuredOutput::JsonSchemaConverter::COUNTER) > 1 + reused_defs.store(ref.fetch(:$ref), sch) + else + ref.replace(sch) + end + end + reused_defs.empty? ? schema : {"$defs": reused_defs}.update(schema) + end + + # @api private + # + # @param type [OpenAI::Helpers::StructuredOutput::JsonSchemaConverter, Class] + # + # @param state [Hash{Symbol=>Object}] + # + # @option state [Hash{Object=>String}] :defs + # + # @option state [Array] :path + # + # @return [Hash{Symbol=>Object}] + def to_json_schema_inner(type, state:) + case type + in {"$ref": String} + return type + in OpenAI::Helpers::StructuredOutput::JsonSchemaConverter + return type.to_json_schema_inner(state: state) + in Class + case type + in -> { _1 <= NilClass } + return {type: "null"} + in -> { _1 <= Integer } + return {type: "integer"} + in -> { _1 <= Float } + return {type: "number"} + in -> { _1 <= Symbol || _1 <= String } + return {type: "string"} + else + end + in _ if OpenAI::Internal::Util.primitive?(type) + return {const: type.is_a?(Symbol) ? type.to_s : type} + else + end + + models = %w[ + NilClass + String + Symbol + Integer + Float + OpenAI::Boolean + OpenAI::ArrayOf + OpenAI::EnumOf + OpenAI::UnionOf + OpenAI::BaseModel + ] + # rubocop:disable Layout/LineLength + message = "#{type} does not implement the #{OpenAI::Helpers::StructuredOutput::JsonSchemaConverter} interface. Please use one of the supported types: #{models}" + # rubocop:enable Layout/LineLength + raise ArgumentError.new(message) + end + end + end + end + end +end diff --git a/lib/openai/helpers/structured_output/union_of.rb b/lib/openai/helpers/structured_output/union_of.rb new file mode 100644 index 00000000..2356b6bf --- /dev/null +++ b/lib/openai/helpers/structured_output/union_of.rb @@ -0,0 +1,57 @@ +# frozen_string_literal: true + +module OpenAI + module Helpers + module StructuredOutput + # @generic Member + # + # @example + # example = OpenAI::UnionOf[Float, OpenAI::ArrayOf[Integer]] + class UnionOf + include OpenAI::Internal::Type::Union + include OpenAI::Helpers::StructuredOutput::JsonSchemaConverter + + # @api private + # + # @param state [Hash{Symbol=>Object}] + # + # @option state [Hash{Object=>String}] :defs + # + # @option state [Array] :path + # + # @return [Hash{Symbol=>Object}] + def to_json_schema_inner(state:) + OpenAI::Helpers::StructuredOutput::JsonSchemaConverter.cache_def!(state, type: self) do + path = state.fetch(:path) + mergeable_keys = {[:anyOf] => 0, [:type] => 0} + schemas = variants.to_enum.with_index.map do + new_state = {**state, path: [*path, "?.#{_2}"]} + OpenAI::Helpers::StructuredOutput::JsonSchemaConverter.to_json_schema_inner(_1, state: new_state) + end + + schemas.each do |schema| + mergeable_keys.each_key { mergeable_keys[_1] += 1 if schema.keys == _1 } + end + mergeable = mergeable_keys.any? { _1.last == schemas.length } + mergeable ? OpenAI::Internal::Util.deep_merge(*schemas, concat: true) : {anyOf: schemas} + end + end + + private_class_method :new + + def self.[](...) = new(...) + + # @param variants [Array>] + def initialize(*variants) + case variants + in [Symbol => d, Hash => vs ] + discriminator(d) + vs.each { variant(_1, _2) } + else + variants.each { variant(_1) } + end + end + end + end + end +end diff --git a/lib/openai/models/chat/chat_completion_message.rb b/lib/openai/models/chat/chat_completion_message.rb index 8a75e905..b6f083cd 100644 --- a/lib/openai/models/chat/chat_completion_message.rb +++ b/lib/openai/models/chat/chat_completion_message.rb @@ -10,6 +10,12 @@ class ChatCompletionMessage < OpenAI::Internal::Type::BaseModel # @return [String, nil] required :content, String, nil?: true + # @!attribute parsed + # The parsed contents of the message, if JSON schema is specified. + # + # @return [Object, nil] + optional :parsed, OpenAI::Internal::Type::Unknown + # @!attribute refusal # The refusal message generated by the model. # diff --git a/lib/openai/models/chat/chat_completion_message_tool_call.rb b/lib/openai/models/chat/chat_completion_message_tool_call.rb index 6ecdc5b5..11320fb7 100644 --- a/lib/openai/models/chat/chat_completion_message_tool_call.rb +++ b/lib/openai/models/chat/chat_completion_message_tool_call.rb @@ -40,6 +40,12 @@ class Function < OpenAI::Internal::Type::BaseModel # @return [String] required :arguments, String + # @!attribute parsed + # The parsed contents of the arguments. + # + # @return [Object, nil] + required :parsed, OpenAI::Internal::Type::Unknown + # @!attribute name # The name of the function to call. # diff --git a/lib/openai/resources/chat/completions.rb b/lib/openai/resources/chat/completions.rb index 66a4c48c..651a775e 100644 --- a/lib/openai/resources/chat/completions.rb +++ b/lib/openai/resources/chat/completions.rb @@ -110,10 +110,79 @@ def create(params) message = "Please use `#stream_raw` for the streaming use case." raise ArgumentError.new(message) end + + # rubocop:disable Layout/LineLength + model = nil + tool_models = {} + case parsed + in {response_format: OpenAI::Helpers::StructuredOutput::JsonSchemaConverter => model} + parsed.update( + response_format: { + type: :json_schema, + json_schema: { + strict: true, + name: model.name.split("::").last, + schema: model.to_json_schema + } + } + ) + in {response_format: {type: :json_schema, json_schema: {schema: OpenAI::Helpers::StructuredOutput::JsonSchemaConverter => model}}} + parsed.dig(:response_format, :json_schema).store(:schema, model.to_json_schema) + in {tools: Array => tools} + mapped = tools.map do |tool| + case tool + in OpenAI::Helpers::StructuredOutput::JsonSchemaConverter + name = tool.name.split("::").last + tool_models.store(name, tool) + { + type: :function, + function: { + strict: true, + name: name, + parameters: tool.to_json_schema + } + } + in {function: {parameters: OpenAI::Helpers::StructuredOutput::JsonSchemaConverter => params}} + func = tool.fetch(:function) + name = func[:name] ||= params.name.split("::").last + tool_models.store(name, params) + func.update(parameters: params.to_json_schema) + else + end + end + tools.replace(mapped) + else + end + + unwrap = ->(raw) do + if model.is_a?(OpenAI::Helpers::StructuredOutput::JsonSchemaConverter) + raw[:choices]&.each do |choice| + message = choice.fetch(:message) + parsed = JSON.parse(message.fetch(:content), symbolize_names: true) + coerced = OpenAI::Internal::Type::Converter.coerce(model, parsed) + message.store(:parsed, coerced) + end + end + raw[:choices]&.each do |choice| + choice.dig(:message, :tool_calls)&.each do |tool_call| + func = tool_call.fetch(:function) + next if (model = tool_models[func.fetch(:name)]).nil? + + parsed = JSON.parse(func.fetch(:arguments), symbolize_names: true) + coerced = OpenAI::Internal::Type::Converter.coerce(model, parsed) + func.store(:parsed, coerced) + end + end + + raw + end + # rubocop:enable Layout/LineLength + @client.request( method: :post, path: "chat/completions", body: parsed, + unwrap: unwrap, model: OpenAI::Models::Chat::ChatCompletion, options: options ) diff --git a/lib/openai/structured_output.rb b/lib/openai/structured_output.rb new file mode 100644 index 00000000..c4bbc24c --- /dev/null +++ b/lib/openai/structured_output.rb @@ -0,0 +1,9 @@ +# frozen_string_literal: true + +module OpenAI + ArrayOf = OpenAI::Helpers::StructuredOutput::ArrayOf + BaseModel = OpenAI::Helpers::StructuredOutput::BaseModel + Boolean = OpenAI::Helpers::StructuredOutput::Boolean + EnumOf = OpenAI::Helpers::StructuredOutput::EnumOf + UnionOf = OpenAI::Helpers::StructuredOutput::UnionOf +end diff --git a/test/openai/client_test.rb b/test/openai/client_test.rb index 75ec5de4..b084b1b5 100644 --- a/test/openai/client_test.rb +++ b/test/openai/client_test.rb @@ -327,4 +327,4 @@ def test_default_headers headers.each { refute_empty(_1) } end end -end \ No newline at end of file +end diff --git a/test/openai/helpers/structured_output_test.rb b/test/openai/helpers/structured_output_test.rb new file mode 100644 index 00000000..5b7b0c3a --- /dev/null +++ b/test/openai/helpers/structured_output_test.rb @@ -0,0 +1,221 @@ +# frozen_string_literal: true + +require_relative "../test_helper" + +class OpenAI::Test::StructuredOutputTest < Minitest::Test + def test_misuse + test_cases = [ + OpenAI::Internal::Type::HashOf[String], + Date, + OpenAI::Helpers::StructuredOutput::ArrayOf[Time] + ] + + test_cases.each do |input| + assert_raises(ArgumentError) do + OpenAI::Helpers::StructuredOutput::JsonSchemaConverter.to_json_schema(input) + end + end + end + + A1 = OpenAI::Helpers::StructuredOutput::ArrayOf[String] + + E1 = OpenAI::Helpers::StructuredOutput::EnumOf[:one] + + class M1 < OpenAI::Helpers::StructuredOutput::BaseModel + required :a, String + required :b, Integer, nil?: true + required :c, E1, nil?: true + end + + class M2 < OpenAI::Helpers::StructuredOutput::BaseModel + required :type, const: :m2, doc: "Model M2" + end + + class M3 < OpenAI::Helpers::StructuredOutput::BaseModel + required :type, const: :m3, doc: "Model M3" + end + + U1 = OpenAI::Helpers::StructuredOutput::UnionOf[Integer, A1] + U2 = OpenAI::Helpers::StructuredOutput::UnionOf[:type, m2: M2, m3: M3] + + def test_coerce + cases = { + [A1, [:one]] => [{yes: 2}, ["one"]], + [E1, "one"] => [{yes: 1}, :one], + [E1, 1] => [{no: 1}, 1], + [U1, ["one"]] => [{yes: 2}, ["one"]], + [U2, ["one"]] => [{no: 1}, ["one"]], + [U2, {type: :m3}] => [{yes: 2}, M3] + } + cases.each do |lhs, rhs| + target, input = lhs + exactness, expect = rhs + state = {strictness: true, exactness: {yes: 0, no: 0, maybe: 0}, branched: 0} + assert_pattern do + OpenAI::Internal::Type::Converter.coerce(target, input, state: state) => ^expect + state.fetch(:exactness).filter { _2.nonzero? }.to_h => ^exactness + end + end + end + + def test_base_model + assert_raises(RuntimeError) do + Class.new(OpenAI::Helpers::StructuredOutput::BaseModel) do + optional :name, String + end + end + end + + def test_to_schema + cases = { + NilClass => {type: "null"}, + Integer => {type: "integer"}, + Float => {type: "number"}, + String => {type: "string"}, + Symbol => {type: "string"}, + A1 => {type: "array", items: {type: "string"}}, + OpenAI::Helpers::StructuredOutput::ArrayOf[String, nil?: true, doc: "a1"] => { + type: "array", + items: {type: %w[string null]}, + description: "a1" + }, + E1 => {type: "string", enum: ["one"]}, + M1 => { + type: "object", + properties: { + a: {type: "string"}, + b: {type: %w[integer null]}, + c: {anyOf: [{type: "string", enum: %w[one]}, {type: "null"}]} + }, + required: %w[a b c], + additionalProperties: false + }, + U1 => { + anyOf: [ + {type: "integer"}, + {type: "array", items: {type: "string"}} + ] + }, + U2 => { + anyOf: [ + { + type: "object", + properties: {type: {const: "m2"}}, + required: %w[type], + additionalProperties: false + }, + { + type: "object", + properties: {type: {const: "m3"}}, + required: %w[type], + additionalProperties: false + } + ] + } + } + cases.each do |input, expected| + assert_pattern do + schema = OpenAI::Helpers::StructuredOutput::JsonSchemaConverter.to_json_schema(input) + assert_equal(expected, schema) + end + end + end + + class M4 < OpenAI::Helpers::StructuredOutput::BaseModel + required :a, E1 + required :b, E1, nil?: true + required :c, OpenAI::Helpers::StructuredOutput::ArrayOf[E1, nil?: true, doc: "nested"], nil?: true + end + + A2 = OpenAI::Helpers::StructuredOutput::ArrayOf[E1, nil?: true] + + class M5 < OpenAI::Helpers::StructuredOutput::BaseModel + required :a, A2, nil?: true + required :b, A2, nil?: true + end + + class M6 < OpenAI::Helpers::StructuredOutput::BaseModel + required :a, String + required :b, -> { M6 }, nil?: true + end + + def test_definition_reusing + cases = { + M4 => { + :$defs => { + "#/definitions/.a" => {type: "string", enum: ["one"]} + }, + :type => "object", + :properties => { + a: {"$ref": "#/definitions/.a"}, + b: { + anyOf: [ + {"$ref": "#/definitions/.a"}, + {type: "null"} + ] + }, + c: { + anyOf: [ + { + type: "array", + items: { + anyOf: [ + {"$ref": "#/definitions/.a"}, + {type: "null"} + ] + }, + description: "nested" + }, + {type: "null"} + ] + } + }, + :required => %w[a b c], + :additionalProperties => false + }, + M5 => { + :$defs => { + "#/definitions/.a/[]" => { + type: "array", + items: {anyOf: [{type: "string", enum: ["one"]}, {type: "null"}]} + } + }, + :type => "object", + :properties => { + a: {anyOf: [{:$ref => "#/definitions/.a/[]"}, {type: "null"}]}, + b: {anyOf: [{:$ref => "#/definitions/.a/[]"}, {type: "null"}]} + }, + :required => %w[a b], + :additionalProperties => false + }, + OpenAI::Helpers::StructuredOutput::UnionOf[E1, A2] => { + :$defs => {"#/definitions/?.0" => {type: "string", enum: ["one"]}}, + :anyOf => [ + {:$ref => "#/definitions/?.0"}, + {type: "array", items: {anyOf: [{:$ref => "#/definitions/?.0"}, {type: "null"}]}} + ] + }, + M6 => { + :$defs => { + "#/definitions/" => { + type: "object", + properties: { + a: {type: "string"}, + b: {anyOf: [{:$ref => "#/definitions/"}, {type: "null"}]} + }, + required: %w[a b], + additionalProperties: false + } + }, + :$ref => "#/definitions/" + } + } + + cases.each do |input, expected| + schema = OpenAI::Helpers::StructuredOutput::JsonSchemaConverter.to_json_schema(input) + assert_pattern do + assert_equal(expected, schema) + end + end + end +end From f3fc915680f295098029d615129708a1e6a29ed3 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Tue, 6 May 2025 11:08:05 +0000 Subject: [PATCH 37/47] chore(internal): codegen related update From c4565ed4c5ea2dc45fd8c0fb1f11b78ce1dd44ac Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Fri, 2 May 2025 19:12:14 +0000 Subject: [PATCH 38/47] feat(api): add image sizes, reasoning encryption --- .stats.yml | 6 +- .../models/audio/speech_create_params.rb | 2 +- lib/openai/models/image_edit_params.rb | 62 +++++++-- lib/openai/models/responses/computer_tool.rb | 22 ++-- .../models/responses/file_search_tool.rb | 18 +-- lib/openai/models/responses/function_tool.rb | 19 +-- .../responses/response_create_params.rb | 5 + .../models/responses/response_includable.rb | 6 + .../models/responses/response_input_file.rb | 8 +- .../models/responses/response_input_image.rb | 12 +- .../models/responses/response_input_item.rb | 82 +++++++----- .../models/responses/response_input_text.rb | 7 +- .../models/responses/response_output_item.rb | 4 +- .../responses/response_output_refusal.rb | 7 +- .../models/responses/response_output_text.rb | 33 ++--- .../responses/response_reasoning_item.rb | 15 ++- .../response_text_annotation_delta_event.rb | 26 ++-- lib/openai/models/responses/tool.rb | 16 +-- .../models/responses/web_search_tool.rb | 43 +++--- lib/openai/resources/images.rb | 7 +- .../models/audio/speech_create_params.rbi | 4 +- rbi/openai/models/image_edit_params.rbi | 77 +++++++++-- rbi/openai/models/responses/computer_tool.rbi | 15 ++- .../models/responses/file_search_tool.rbi | 22 ++-- rbi/openai/models/responses/function_tool.rbi | 12 +- .../responses/response_create_params.rbi | 10 ++ .../models/responses/response_includable.rbi | 7 + .../models/responses/response_input_file.rbi | 12 +- .../models/responses/response_input_image.rbi | 2 +- .../models/responses/response_input_item.rbi | 123 ++++++++++-------- .../responses/response_reasoning_item.rbi | 14 +- rbi/openai/models/responses/tool.rbi | 4 +- .../models/responses/web_search_tool.rbi | 60 ++++----- rbi/openai/resources/audio/speech.rbi | 2 +- rbi/openai/resources/images.rbi | 20 ++- rbi/openai/resources/responses.rbi | 10 ++ sig/openai/models/image_edit_params.rbs | 27 +++- sig/openai/models/responses/computer_tool.rbs | 17 +-- .../models/responses/file_search_tool.rbs | 10 +- sig/openai/models/responses/function_tool.rbs | 12 +- .../models/responses/response_includable.rbs | 2 + .../models/responses/response_input_file.rbs | 8 +- .../models/responses/response_input_image.rbs | 4 +- .../models/responses/response_input_item.rbs | 81 ++++++------ .../responses/response_reasoning_item.rbs | 4 + .../models/responses/web_search_tool.rbs | 32 ++--- sig/openai/resources/images.rbs | 1 + 47 files changed, 593 insertions(+), 399 deletions(-) diff --git a/.stats.yml b/.stats.yml index 7738ef3d..089abe5d 100644 --- a/.stats.yml +++ b/.stats.yml @@ -1,4 +1,4 @@ configured_endpoints: 95 -openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/openai%2Fopenai-8b68ae6b807dca92e914da1dd9e835a20f69b075e79102a264367fd7fddddb33.yml -openapi_spec_hash: b6ade5b1a6327339e6669e1134de2d03 -config_hash: b597cd9a31e9e5ec709e2eefb4c54122 +openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/openai%2Fopenai-0ee6b36cf3cc278cef4199a6aec5f7d530a6c1f17a74830037e96d50ca1edc50.yml +openapi_spec_hash: e8ec5f46bc0655b34f292422d58a60f6 +config_hash: d9b6b6e6bc85744663e300eebc482067 diff --git a/lib/openai/models/audio/speech_create_params.rb b/lib/openai/models/audio/speech_create_params.rb index 5ab05354..e17d7ec9 100644 --- a/lib/openai/models/audio/speech_create_params.rb +++ b/lib/openai/models/audio/speech_create_params.rb @@ -46,7 +46,7 @@ class SpeechCreateParams < OpenAI::Internal::Type::BaseModel # @!attribute speed # The speed of the generated audio. Select a value from `0.25` to `4.0`. `1.0` is - # the default. + # the default. Does not work with `gpt-4o-mini-tts`. # # @return [Float, nil] optional :speed, Float diff --git a/lib/openai/models/image_edit_params.rb b/lib/openai/models/image_edit_params.rb index e42475a3..d850e2a5 100644 --- a/lib/openai/models/image_edit_params.rb +++ b/lib/openai/models/image_edit_params.rb @@ -8,10 +8,13 @@ class ImageEditParams < OpenAI::Internal::Type::BaseModel include OpenAI::Internal::Type::RequestParameters # @!attribute image - # The image(s) to edit. Must be a supported image file or an array of images. For - # `gpt-image-1`, each image should be a `png`, `webp`, or `jpg` file less than - # 25MB. For `dall-e-2`, you can only provide one image, and it should be a square - # `png` file less than 4MB. + # The image(s) to edit. Must be a supported image file or an array of images. + # + # For `gpt-image-1`, each image should be a `png`, `webp`, or `jpg` file less than + # 25MB. You can provide up to 16 images. + # + # For `dall-e-2`, you can only provide one image, and it should be a square `png` + # file less than 4MB. # # @return [Pathname, StringIO, IO, OpenAI::FilePart, Array] required :image, union: -> { OpenAI::Models::ImageEditParams::Image } @@ -23,6 +26,18 @@ class ImageEditParams < OpenAI::Internal::Type::BaseModel # @return [String] required :prompt, String + # @!attribute background + # Allows to set transparency for the background of the generated image(s). This + # parameter is only supported for `gpt-image-1`. Must be one of `transparent`, + # `opaque` or `auto` (default value). When `auto` is used, the model will + # automatically determine the best background for the image. + # + # If `transparent`, the output format needs to support transparency, so it should + # be set to either `png` (default value) or `webp`. + # + # @return [Symbol, OpenAI::Models::ImageEditParams::Background, nil] + optional :background, enum: -> { OpenAI::Models::ImageEditParams::Background }, nil?: true + # @!attribute mask # An additional image whose fully transparent areas (e.g. where alpha is zero) # indicate where `image` should be edited. If there are multiple images provided, @@ -79,16 +94,17 @@ class ImageEditParams < OpenAI::Internal::Type::BaseModel # @return [String, nil] optional :user, String - # @!method initialize(image:, prompt:, mask: nil, model: nil, n: nil, quality: nil, response_format: nil, size: nil, user: nil, request_options: {}) + # @!method initialize(image:, prompt:, background: nil, mask: nil, model: nil, n: nil, quality: nil, response_format: nil, size: nil, user: nil, request_options: {}) # Some parameter documentations has been truncated, see # {OpenAI::Models::ImageEditParams} for more details. # - # @param image [Pathname, StringIO, IO, OpenAI::FilePart, Array] The image(s) to edit. Must be a supported image file or an array of images. For - # ... + # @param image [Pathname, StringIO, IO, OpenAI::FilePart, Array] The image(s) to edit. Must be a supported image file or an array of images. ... # # @param prompt [String] A text description of the desired image(s). The maximum length is 1000 character # ... # + # @param background [Symbol, OpenAI::Models::ImageEditParams::Background, nil] Allows to set transparency for the background of the generated image(s). ... + # # @param mask [Pathname, StringIO, IO, OpenAI::FilePart] An additional image whose fully transparent areas (e.g. where alpha is zero) ind # ... # @@ -111,10 +127,13 @@ class ImageEditParams < OpenAI::Internal::Type::BaseModel # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] - # The image(s) to edit. Must be a supported image file or an array of images. For - # `gpt-image-1`, each image should be a `png`, `webp`, or `jpg` file less than - # 25MB. For `dall-e-2`, you can only provide one image, and it should be a square - # `png` file less than 4MB. + # The image(s) to edit. Must be a supported image file or an array of images. + # + # For `gpt-image-1`, each image should be a `png`, `webp`, or `jpg` file less than + # 25MB. You can provide up to 16 images. + # + # For `dall-e-2`, you can only provide one image, and it should be a square `png` + # file less than 4MB. module Image extend OpenAI::Internal::Type::Union @@ -129,6 +148,24 @@ module Image StringArray = OpenAI::Internal::Type::ArrayOf[OpenAI::Internal::Type::FileInput] end + # Allows to set transparency for the background of the generated image(s). This + # parameter is only supported for `gpt-image-1`. Must be one of `transparent`, + # `opaque` or `auto` (default value). When `auto` is used, the model will + # automatically determine the best background for the image. + # + # If `transparent`, the output format needs to support transparency, so it should + # be set to either `png` (default value) or `webp`. + module Background + extend OpenAI::Internal::Type::Enum + + TRANSPARENT = :transparent + OPAQUE = :opaque + AUTO = :auto + + # @!method self.values + # @return [Array] + end + # The model to use for image generation. Only `dall-e-2` and `gpt-image-1` are # supported. Defaults to `dall-e-2` unless a parameter specific to `gpt-image-1` # is used. @@ -183,6 +220,9 @@ module Size SIZE_256X256 = :"256x256" SIZE_512X512 = :"512x512" SIZE_1024X1024 = :"1024x1024" + SIZE_1536X1024 = :"1536x1024" + SIZE_1024X1536 = :"1024x1536" + AUTO = :auto # @!method self.values # @return [Array] diff --git a/lib/openai/models/responses/computer_tool.rb b/lib/openai/models/responses/computer_tool.rb index 29644748..d65a0f31 100644 --- a/lib/openai/models/responses/computer_tool.rb +++ b/lib/openai/models/responses/computer_tool.rb @@ -7,14 +7,14 @@ class ComputerTool < OpenAI::Internal::Type::BaseModel # @!attribute display_height # The height of the computer display. # - # @return [Float] - required :display_height, Float + # @return [Integer] + required :display_height, Integer # @!attribute display_width # The width of the computer display. # - # @return [Float] - required :display_width, Float + # @return [Integer] + required :display_width, Integer # @!attribute environment # The type of computer environment to control. @@ -29,19 +29,16 @@ class ComputerTool < OpenAI::Internal::Type::BaseModel required :type, const: :computer_use_preview # @!method initialize(display_height:, display_width:, environment:, type: :computer_use_preview) - # Some parameter documentations has been truncated, see - # {OpenAI::Models::Responses::ComputerTool} for more details. - # # A tool that controls a virtual computer. Learn more about the # [computer tool](https://platform.openai.com/docs/guides/tools-computer-use). # - # @param display_height [Float] The height of the computer display. ... + # @param display_height [Integer] The height of the computer display. # - # @param display_width [Float] The width of the computer display. ... + # @param display_width [Integer] The width of the computer display. # - # @param environment [Symbol, OpenAI::Models::Responses::ComputerTool::Environment] The type of computer environment to control. ... + # @param environment [Symbol, OpenAI::Models::Responses::ComputerTool::Environment] The type of computer environment to control. # - # @param type [Symbol, :computer_use_preview] The type of the computer use tool. Always `computer_use_preview`. ... + # @param type [Symbol, :computer_use_preview] The type of the computer use tool. Always `computer_use_preview`. # The type of computer environment to control. # @@ -49,8 +46,9 @@ class ComputerTool < OpenAI::Internal::Type::BaseModel module Environment extend OpenAI::Internal::Type::Enum - MAC = :mac WINDOWS = :windows + MAC = :mac + LINUX = :linux UBUNTU = :ubuntu BROWSER = :browser diff --git a/lib/openai/models/responses/file_search_tool.rb b/lib/openai/models/responses/file_search_tool.rb index bdd10f5f..1019298c 100644 --- a/lib/openai/models/responses/file_search_tool.rb +++ b/lib/openai/models/responses/file_search_tool.rb @@ -17,10 +17,10 @@ class FileSearchTool < OpenAI::Internal::Type::BaseModel required :vector_store_ids, OpenAI::Internal::Type::ArrayOf[String] # @!attribute filters - # A filter to apply based on file attributes. + # A filter to apply. # # @return [OpenAI::Models::ComparisonFilter, OpenAI::Models::CompoundFilter, nil] - optional :filters, union: -> { OpenAI::Models::Responses::FileSearchTool::Filters } + optional :filters, union: -> { OpenAI::Models::Responses::FileSearchTool::Filters }, nil?: true # @!attribute max_num_results # The maximum number of results to return. This number should be between 1 and 50 @@ -43,17 +43,18 @@ class FileSearchTool < OpenAI::Internal::Type::BaseModel # the # [file search tool](https://platform.openai.com/docs/guides/tools-file-search). # - # @param vector_store_ids [Array] The IDs of the vector stores to search. ... + # @param vector_store_ids [Array] The IDs of the vector stores to search. # - # @param filters [OpenAI::Models::ComparisonFilter, OpenAI::Models::CompoundFilter] A filter to apply based on file attributes. + # @param filters [OpenAI::Models::ComparisonFilter, OpenAI::Models::CompoundFilter, nil] A filter to apply. # - # @param max_num_results [Integer] The maximum number of results to return. This number should be between 1 ... + # @param max_num_results [Integer] The maximum number of results to return. This number should be between 1 and 50 + # ... # # @param ranking_options [OpenAI::Models::Responses::FileSearchTool::RankingOptions] Ranking options for search. # - # @param type [Symbol, :file_search] The type of the file search tool. Always `file_search`. ... + # @param type [Symbol, :file_search] The type of the file search tool. Always `file_search`. - # A filter to apply based on file attributes. + # A filter to apply. # # @see OpenAI::Models::Responses::FileSearchTool#filters module Filters @@ -93,7 +94,8 @@ class RankingOptions < OpenAI::Internal::Type::BaseModel # # @param ranker [Symbol, OpenAI::Models::Responses::FileSearchTool::RankingOptions::Ranker] The ranker to use for the file search. # - # @param score_threshold [Float] The score threshold for the file search, a number between 0 and 1. ... + # @param score_threshold [Float] The score threshold for the file search, a number between 0 and 1. Numbers close + # ... # The ranker to use for the file search. # diff --git a/lib/openai/models/responses/function_tool.rb b/lib/openai/models/responses/function_tool.rb index e74ed4b6..f37a388a 100644 --- a/lib/openai/models/responses/function_tool.rb +++ b/lib/openai/models/responses/function_tool.rb @@ -13,14 +13,14 @@ class FunctionTool < OpenAI::Internal::Type::BaseModel # @!attribute parameters # A JSON schema object describing the parameters of the function. # - # @return [Hash{Symbol=>Object}] - required :parameters, OpenAI::Internal::Type::HashOf[OpenAI::Internal::Type::Unknown] + # @return [Hash{Symbol=>Object}, nil] + required :parameters, OpenAI::Internal::Type::HashOf[OpenAI::Internal::Type::Unknown], nil?: true # @!attribute strict # Whether to enforce strict parameter validation. Default `true`. # - # @return [Boolean] - required :strict, OpenAI::Internal::Type::Boolean + # @return [Boolean, nil] + required :strict, OpenAI::Internal::Type::Boolean, nil?: true # @!attribute type # The type of the function tool. Always `function`. @@ -43,15 +43,16 @@ class FunctionTool < OpenAI::Internal::Type::BaseModel # about # [function calling](https://platform.openai.com/docs/guides/function-calling). # - # @param name [String] The name of the function to call. ... + # @param name [String] The name of the function to call. # - # @param parameters [Hash{Symbol=>Object}] A JSON schema object describing the parameters of the function. ... + # @param parameters [Hash{Symbol=>Object}, nil] A JSON schema object describing the parameters of the function. # - # @param strict [Boolean] Whether to enforce strict parameter validation. Default `true`. ... + # @param strict [Boolean, nil] Whether to enforce strict parameter validation. Default `true`. # - # @param description [String, nil] A description of the function. Used by the model to determine whether ... + # @param description [String, nil] A description of the function. Used by the model to determine whether or not to + # ... # - # @param type [Symbol, :function] The type of the function tool. Always `function`. ... + # @param type [Symbol, :function] The type of the function tool. Always `function`. end end end diff --git a/lib/openai/models/responses/response_create_params.rb b/lib/openai/models/responses/response_create_params.rb index 6e51faa1..13a1bb6b 100644 --- a/lib/openai/models/responses/response_create_params.rb +++ b/lib/openai/models/responses/response_create_params.rb @@ -43,6 +43,11 @@ class ResponseCreateParams < OpenAI::Internal::Type::BaseModel # - `message.input_image.image_url`: Include image urls from the input message. # - `computer_call_output.output.image_url`: Include image urls from the computer # call output. + # - `reasoning.encrypted_content`: Includes an encrypted version of reasoning + # tokens in reasoning item outputs. This enables reasoning items to be used in + # multi-turn conversations when using the Responses API statelessly (like when + # the `store` parameter is set to `false`, or when an organization is enrolled + # in the zero data retention program). # # @return [Array, nil] optional :include, diff --git a/lib/openai/models/responses/response_includable.rb b/lib/openai/models/responses/response_includable.rb index 2f90f277..f56e4278 100644 --- a/lib/openai/models/responses/response_includable.rb +++ b/lib/openai/models/responses/response_includable.rb @@ -11,12 +11,18 @@ module Responses # - `message.input_image.image_url`: Include image urls from the input message. # - `computer_call_output.output.image_url`: Include image urls from the computer # call output. + # - `reasoning.encrypted_content`: Includes an encrypted version of reasoning + # tokens in reasoning item outputs. This enables reasoning items to be used in + # multi-turn conversations when using the Responses API statelessly (like when + # the `store` parameter is set to `false`, or when an organization is enrolled + # in the zero data retention program). module ResponseIncludable extend OpenAI::Internal::Type::Enum FILE_SEARCH_CALL_RESULTS = :"file_search_call.results" MESSAGE_INPUT_IMAGE_IMAGE_URL = :"message.input_image.image_url" COMPUTER_CALL_OUTPUT_OUTPUT_IMAGE_URL = :"computer_call_output.output.image_url" + REASONING_ENCRYPTED_CONTENT = :"reasoning.encrypted_content" # @!method self.values # @return [Array] diff --git a/lib/openai/models/responses/response_input_file.rb b/lib/openai/models/responses/response_input_file.rb index 06938134..9837a2e0 100644 --- a/lib/openai/models/responses/response_input_file.rb +++ b/lib/openai/models/responses/response_input_file.rb @@ -20,7 +20,7 @@ class ResponseInputFile < OpenAI::Internal::Type::BaseModel # The ID of the file to be sent to the model. # # @return [String, nil] - optional :file_id, String + optional :file_id, String, nil?: true # @!attribute filename # The name of the file to be sent to the model. @@ -36,11 +36,11 @@ class ResponseInputFile < OpenAI::Internal::Type::BaseModel # # @param file_data [String] The content of the file to be sent to the model. ... # - # @param file_id [String] The ID of the file to be sent to the model. ... + # @param file_id [String, nil] The ID of the file to be sent to the model. # - # @param filename [String] The name of the file to be sent to the model. ... + # @param filename [String] The name of the file to be sent to the model. # - # @param type [Symbol, :input_file] The type of the input item. Always `input_file`. ... + # @param type [Symbol, :input_file] The type of the input item. Always `input_file`. end end end diff --git a/lib/openai/models/responses/response_input_image.rb b/lib/openai/models/responses/response_input_image.rb index 997851c2..643a2e3d 100644 --- a/lib/openai/models/responses/response_input_image.rb +++ b/lib/openai/models/responses/response_input_image.rb @@ -37,13 +37,15 @@ class ResponseInputImage < OpenAI::Internal::Type::BaseModel # An image input to the model. Learn about # [image inputs](https://platform.openai.com/docs/guides/vision). # - # @param detail [Symbol, OpenAI::Models::Responses::ResponseInputImage::Detail] The detail level of the image to be sent to the model. One of `high`, ... + # @param detail [Symbol, OpenAI::Models::Responses::ResponseInputImage::Detail] The detail level of the image to be sent to the model. One of `high`, `low`, or + # ... # - # @param file_id [String, nil] The ID of the file to be sent to the model. ... + # @param file_id [String, nil] The ID of the file to be sent to the model. # - # @param image_url [String, nil] The URL of the image to be sent to the model. A fully qualified URL or ... + # @param image_url [String, nil] The URL of the image to be sent to the model. A fully qualified URL or base64 en + # ... # - # @param type [Symbol, :input_image] The type of the input item. Always `input_image`. ... + # @param type [Symbol, :input_image] The type of the input item. Always `input_image`. # The detail level of the image to be sent to the model. One of `high`, `low`, or # `auto`. Defaults to `auto`. @@ -52,8 +54,8 @@ class ResponseInputImage < OpenAI::Internal::Type::BaseModel module Detail extend OpenAI::Internal::Type::Enum - HIGH = :high LOW = :low + HIGH = :high AUTO = :auto # @!method self.values diff --git a/lib/openai/models/responses/response_input_item.rb b/lib/openai/models/responses/response_input_item.rb index 29e533f3..95e8dbe5 100644 --- a/lib/openai/models/responses/response_input_item.rb +++ b/lib/openai/models/responses/response_input_item.rb @@ -51,7 +51,9 @@ module ResponseInputItem variant :function_call_output, -> { OpenAI::Models::Responses::ResponseInputItem::FunctionCallOutput } # A description of the chain of thought used by a reasoning model while generating - # a response. + # a response. Be sure to include these items in your `input` to the Responses API + # for subsequent turns of a conversation if you are manually + # [managing context](https://platform.openai.com/docs/guides/conversation-state). variant :reasoning, -> { OpenAI::Models::Responses::ResponseReasoningItem } # An internal identifier for an item to reference. @@ -166,7 +168,7 @@ class ComputerCallOutput < OpenAI::Internal::Type::BaseModel # The ID of the computer tool call output. # # @return [String, nil] - optional :id, String + optional :id, String, nil?: true # @!attribute acknowledged_safety_checks # The safety checks reported by the API that have been acknowledged by the @@ -174,14 +176,17 @@ class ComputerCallOutput < OpenAI::Internal::Type::BaseModel # # @return [Array, nil] optional :acknowledged_safety_checks, - -> { OpenAI::Internal::Type::ArrayOf[OpenAI::Models::Responses::ResponseInputItem::ComputerCallOutput::AcknowledgedSafetyCheck] } + -> { OpenAI::Internal::Type::ArrayOf[OpenAI::Models::Responses::ResponseInputItem::ComputerCallOutput::AcknowledgedSafetyCheck] }, + nil?: true # @!attribute status # The status of the message input. One of `in_progress`, `completed`, or # `incomplete`. Populated when input items are returned via API. # # @return [Symbol, OpenAI::Models::Responses::ResponseInputItem::ComputerCallOutput::Status, nil] - optional :status, enum: -> { OpenAI::Models::Responses::ResponseInputItem::ComputerCallOutput::Status } + optional :status, + enum: -> { OpenAI::Models::Responses::ResponseInputItem::ComputerCallOutput::Status }, + nil?: true # @!method initialize(call_id:, output:, id: nil, acknowledged_safety_checks: nil, status: nil, type: :computer_call_output) # Some parameter documentations has been truncated, see @@ -190,17 +195,19 @@ class ComputerCallOutput < OpenAI::Internal::Type::BaseModel # # The output of a computer tool call. # - # @param call_id [String] The ID of the computer tool call that produced the output. ... + # @param call_id [String] The ID of the computer tool call that produced the output. # # @param output [OpenAI::Models::Responses::ResponseComputerToolCallOutputScreenshot] A computer screenshot image used with the computer use tool. ... # - # @param id [String] The ID of the computer tool call output. ... + # @param id [String, nil] The ID of the computer tool call output. # - # @param acknowledged_safety_checks [Array] The safety checks reported by the API that have been acknowledged by the ... + # @param acknowledged_safety_checks [Array, nil] The safety checks reported by the API that have been acknowledged by the develop + # ... # - # @param status [Symbol, OpenAI::Models::Responses::ResponseInputItem::ComputerCallOutput::Status] The status of the message input. One of `in_progress`, `completed`, or ... + # @param status [Symbol, OpenAI::Models::Responses::ResponseInputItem::ComputerCallOutput::Status, nil] The status of the message input. One of `in_progress`, `completed`, or `incomple + # ... # - # @param type [Symbol, :computer_call_output] The type of the computer tool call output. Always `computer_call_output`. ... + # @param type [Symbol, :computer_call_output] The type of the computer tool call output. Always `computer_call_output`. class AcknowledgedSafetyCheck < OpenAI::Internal::Type::BaseModel # @!attribute id @@ -212,23 +219,23 @@ class AcknowledgedSafetyCheck < OpenAI::Internal::Type::BaseModel # @!attribute code # The type of the pending safety check. # - # @return [String] - required :code, String + # @return [String, nil] + optional :code, String, nil?: true # @!attribute message # Details about the pending safety check. # - # @return [String] - required :message, String + # @return [String, nil] + optional :message, String, nil?: true - # @!method initialize(id:, code:, message:) + # @!method initialize(id:, code: nil, message: nil) # A pending safety check for the computer call. # # @param id [String] The ID of the pending safety check. # - # @param code [String] The type of the pending safety check. + # @param code [String, nil] The type of the pending safety check. # - # @param message [String] Details about the pending safety check. + # @param message [String, nil] Details about the pending safety check. end # The status of the message input. One of `in_progress`, `completed`, or @@ -271,14 +278,16 @@ class FunctionCallOutput < OpenAI::Internal::Type::BaseModel # returned via API. # # @return [String, nil] - optional :id, String + optional :id, String, nil?: true # @!attribute status # The status of the item. One of `in_progress`, `completed`, or `incomplete`. # Populated when items are returned via API. # # @return [Symbol, OpenAI::Models::Responses::ResponseInputItem::FunctionCallOutput::Status, nil] - optional :status, enum: -> { OpenAI::Models::Responses::ResponseInputItem::FunctionCallOutput::Status } + optional :status, + enum: -> { OpenAI::Models::Responses::ResponseInputItem::FunctionCallOutput::Status }, + nil?: true # @!method initialize(call_id:, output:, id: nil, status: nil, type: :function_call_output) # Some parameter documentations has been truncated, see @@ -287,15 +296,17 @@ class FunctionCallOutput < OpenAI::Internal::Type::BaseModel # # The output of a function tool call. # - # @param call_id [String] The unique ID of the function tool call generated by the model. ... + # @param call_id [String] The unique ID of the function tool call generated by the model. # - # @param output [String] A JSON string of the output of the function tool call. ... + # @param output [String] A JSON string of the output of the function tool call. # - # @param id [String] The unique ID of the function tool call output. Populated when this item ... + # @param id [String, nil] The unique ID of the function tool call output. Populated when this item is retu + # ... # - # @param status [Symbol, OpenAI::Models::Responses::ResponseInputItem::FunctionCallOutput::Status] The status of the item. One of `in_progress`, `completed`, or ... + # @param status [Symbol, OpenAI::Models::Responses::ResponseInputItem::FunctionCallOutput::Status, nil] The status of the item. One of `in_progress`, `completed`, or `incomplete`. Popu + # ... # - # @param type [Symbol, :function_call_output] The type of the function tool call output. Always `function_call_output`. ... + # @param type [Symbol, :function_call_output] The type of the function tool call output. Always `function_call_output`. # The status of the item. One of `in_progress`, `completed`, or `incomplete`. # Populated when items are returned via API. @@ -323,18 +334,27 @@ class ItemReference < OpenAI::Internal::Type::BaseModel # @!attribute type # The type of item to reference. Always `item_reference`. # - # @return [Symbol, :item_reference] - required :type, const: :item_reference + # @return [Symbol, OpenAI::Models::Responses::ResponseInputItem::ItemReference::Type, nil] + optional :type, enum: -> { OpenAI::Models::Responses::ResponseInputItem::ItemReference::Type }, nil?: true - # @!method initialize(id:, type: :item_reference) - # Some parameter documentations has been truncated, see - # {OpenAI::Models::Responses::ResponseInputItem::ItemReference} for more details. - # + # @!method initialize(id:, type: nil) # An internal identifier for an item to reference. # - # @param id [String] The ID of the item to reference. ... + # @param id [String] The ID of the item to reference. # - # @param type [Symbol, :item_reference] The type of item to reference. Always `item_reference`. ... + # @param type [Symbol, OpenAI::Models::Responses::ResponseInputItem::ItemReference::Type, nil] The type of item to reference. Always `item_reference`. + + # The type of item to reference. Always `item_reference`. + # + # @see OpenAI::Models::Responses::ResponseInputItem::ItemReference#type + module Type + extend OpenAI::Internal::Type::Enum + + ITEM_REFERENCE = :item_reference + + # @!method self.values + # @return [Array] + end end # @!method self.variants diff --git a/lib/openai/models/responses/response_input_text.rb b/lib/openai/models/responses/response_input_text.rb index c05e5a54..9735f187 100644 --- a/lib/openai/models/responses/response_input_text.rb +++ b/lib/openai/models/responses/response_input_text.rb @@ -17,14 +17,11 @@ class ResponseInputText < OpenAI::Internal::Type::BaseModel required :type, const: :input_text # @!method initialize(text:, type: :input_text) - # Some parameter documentations has been truncated, see - # {OpenAI::Models::Responses::ResponseInputText} for more details. - # # A text input to the model. # - # @param text [String] The text input to the model. ... + # @param text [String] The text input to the model. # - # @param type [Symbol, :input_text] The type of the input item. Always `input_text`. ... + # @param type [Symbol, :input_text] The type of the input item. Always `input_text`. end end end diff --git a/lib/openai/models/responses/response_output_item.rb b/lib/openai/models/responses/response_output_item.rb index 83a8c4db..91539b62 100644 --- a/lib/openai/models/responses/response_output_item.rb +++ b/lib/openai/models/responses/response_output_item.rb @@ -29,7 +29,9 @@ module ResponseOutputItem variant :computer_call, -> { OpenAI::Models::Responses::ResponseComputerToolCall } # A description of the chain of thought used by a reasoning model while generating - # a response. + # a response. Be sure to include these items in your `input` to the Responses API + # for subsequent turns of a conversation if you are manually + # [managing context](https://platform.openai.com/docs/guides/conversation-state). variant :reasoning, -> { OpenAI::Models::Responses::ResponseReasoningItem } # @!method self.variants diff --git a/lib/openai/models/responses/response_output_refusal.rb b/lib/openai/models/responses/response_output_refusal.rb index 82729b85..62316c99 100644 --- a/lib/openai/models/responses/response_output_refusal.rb +++ b/lib/openai/models/responses/response_output_refusal.rb @@ -17,14 +17,11 @@ class ResponseOutputRefusal < OpenAI::Internal::Type::BaseModel required :type, const: :refusal # @!method initialize(refusal:, type: :refusal) - # Some parameter documentations has been truncated, see - # {OpenAI::Models::Responses::ResponseOutputRefusal} for more details. - # # A refusal from the model. # - # @param refusal [String] The refusal explanationfrom the model. ... + # @param refusal [String] The refusal explanationfrom the model. # - # @param type [Symbol, :refusal] The type of the refusal. Always `refusal`. ... + # @param type [Symbol, :refusal] The type of the refusal. Always `refusal`. end end end diff --git a/lib/openai/models/responses/response_output_text.rb b/lib/openai/models/responses/response_output_text.rb index 32465ac6..aaeda218 100644 --- a/lib/openai/models/responses/response_output_text.rb +++ b/lib/openai/models/responses/response_output_text.rb @@ -24,16 +24,13 @@ class ResponseOutputText < OpenAI::Internal::Type::BaseModel required :type, const: :output_text # @!method initialize(annotations:, text:, type: :output_text) - # Some parameter documentations has been truncated, see - # {OpenAI::Models::Responses::ResponseOutputText} for more details. - # # A text output from the model. # - # @param annotations [Array] The annotations of the text output. ... + # @param annotations [Array] The annotations of the text output. # - # @param text [String] The text output from the model. ... + # @param text [String] The text output from the model. # - # @param type [Symbol, :output_text] The type of the output text. Always `output_text`. ... + # @param type [Symbol, :output_text] The type of the output text. Always `output_text`. # A citation to a file. module Annotation @@ -70,17 +67,13 @@ class FileCitation < OpenAI::Internal::Type::BaseModel required :type, const: :file_citation # @!method initialize(file_id:, index:, type: :file_citation) - # Some parameter documentations has been truncated, see - # {OpenAI::Models::Responses::ResponseOutputText::Annotation::FileCitation} for - # more details. - # # A citation to a file. # - # @param file_id [String] The ID of the file. ... + # @param file_id [String] The ID of the file. # - # @param index [Integer] The index of the file in the list of files. ... + # @param index [Integer] The index of the file in the list of files. # - # @param type [Symbol, :file_citation] The type of the file citation. Always `file_citation`. ... + # @param type [Symbol, :file_citation] The type of the file citation. Always `file_citation`. end class URLCitation < OpenAI::Internal::Type::BaseModel @@ -115,21 +108,17 @@ class URLCitation < OpenAI::Internal::Type::BaseModel required :url, String # @!method initialize(end_index:, start_index:, title:, url:, type: :url_citation) - # Some parameter documentations has been truncated, see - # {OpenAI::Models::Responses::ResponseOutputText::Annotation::URLCitation} for - # more details. - # # A citation for a web resource used to generate a model response. # - # @param end_index [Integer] The index of the last character of the URL citation in the message. ... + # @param end_index [Integer] The index of the last character of the URL citation in the message. # - # @param start_index [Integer] The index of the first character of the URL citation in the message. ... + # @param start_index [Integer] The index of the first character of the URL citation in the message. # - # @param title [String] The title of the web resource. ... + # @param title [String] The title of the web resource. # - # @param url [String] The URL of the web resource. ... + # @param url [String] The URL of the web resource. # - # @param type [Symbol, :url_citation] The type of the URL citation. Always `url_citation`. ... + # @param type [Symbol, :url_citation] The type of the URL citation. Always `url_citation`. end class FilePath < OpenAI::Internal::Type::BaseModel diff --git a/lib/openai/models/responses/response_reasoning_item.rb b/lib/openai/models/responses/response_reasoning_item.rb index a09ba35b..5b029d34 100644 --- a/lib/openai/models/responses/response_reasoning_item.rb +++ b/lib/openai/models/responses/response_reasoning_item.rb @@ -23,6 +23,13 @@ class ResponseReasoningItem < OpenAI::Internal::Type::BaseModel # @return [Symbol, :reasoning] required :type, const: :reasoning + # @!attribute encrypted_content + # The encrypted content of the reasoning item - populated when a response is + # generated with `reasoning.encrypted_content` in the `include` parameter. + # + # @return [String, nil] + optional :encrypted_content, String, nil?: true + # @!attribute status # The status of the item. One of `in_progress`, `completed`, or `incomplete`. # Populated when items are returned via API. @@ -30,17 +37,21 @@ class ResponseReasoningItem < OpenAI::Internal::Type::BaseModel # @return [Symbol, OpenAI::Models::Responses::ResponseReasoningItem::Status, nil] optional :status, enum: -> { OpenAI::Models::Responses::ResponseReasoningItem::Status } - # @!method initialize(id:, summary:, status: nil, type: :reasoning) + # @!method initialize(id:, summary:, encrypted_content: nil, status: nil, type: :reasoning) # Some parameter documentations has been truncated, see # {OpenAI::Models::Responses::ResponseReasoningItem} for more details. # # A description of the chain of thought used by a reasoning model while generating - # a response. + # a response. Be sure to include these items in your `input` to the Responses API + # for subsequent turns of a conversation if you are manually + # [managing context](https://platform.openai.com/docs/guides/conversation-state). # # @param id [String] The unique identifier of the reasoning content. ... # # @param summary [Array] Reasoning text contents. ... # + # @param encrypted_content [String, nil] The encrypted content of the reasoning item - populated when a response is ... + # # @param status [Symbol, OpenAI::Models::Responses::ResponseReasoningItem::Status] The status of the item. One of `in_progress`, `completed`, or ... # # @param type [Symbol, :reasoning] The type of the object. Always `reasoning`. ... diff --git a/lib/openai/models/responses/response_text_annotation_delta_event.rb b/lib/openai/models/responses/response_text_annotation_delta_event.rb index 063252da..f0be62c1 100644 --- a/lib/openai/models/responses/response_text_annotation_delta_event.rb +++ b/lib/openai/models/responses/response_text_annotation_delta_event.rb @@ -47,7 +47,7 @@ class ResponseTextAnnotationDeltaEvent < OpenAI::Internal::Type::BaseModel # # Emitted when a text annotation is added. # - # @param annotation [OpenAI::Models::Responses::ResponseTextAnnotationDeltaEvent::Annotation::FileCitation, OpenAI::Models::Responses::ResponseTextAnnotationDeltaEvent::Annotation::URLCitation, OpenAI::Models::Responses::ResponseTextAnnotationDeltaEvent::Annotation::FilePath] A citation to a file. ... + # @param annotation [OpenAI::Models::Responses::ResponseTextAnnotationDeltaEvent::Annotation::FileCitation, OpenAI::Models::Responses::ResponseTextAnnotationDeltaEvent::Annotation::URLCitation, OpenAI::Models::Responses::ResponseTextAnnotationDeltaEvent::Annotation::FilePath] A citation to a file. # # @param annotation_index [Integer] The index of the annotation that was added. ... # @@ -99,17 +99,13 @@ class FileCitation < OpenAI::Internal::Type::BaseModel required :type, const: :file_citation # @!method initialize(file_id:, index:, type: :file_citation) - # Some parameter documentations has been truncated, see - # {OpenAI::Models::Responses::ResponseTextAnnotationDeltaEvent::Annotation::FileCitation} - # for more details. - # # A citation to a file. # - # @param file_id [String] The ID of the file. ... + # @param file_id [String] The ID of the file. # - # @param index [Integer] The index of the file in the list of files. ... + # @param index [Integer] The index of the file in the list of files. # - # @param type [Symbol, :file_citation] The type of the file citation. Always `file_citation`. ... + # @param type [Symbol, :file_citation] The type of the file citation. Always `file_citation`. end class URLCitation < OpenAI::Internal::Type::BaseModel @@ -144,21 +140,17 @@ class URLCitation < OpenAI::Internal::Type::BaseModel required :url, String # @!method initialize(end_index:, start_index:, title:, url:, type: :url_citation) - # Some parameter documentations has been truncated, see - # {OpenAI::Models::Responses::ResponseTextAnnotationDeltaEvent::Annotation::URLCitation} - # for more details. - # # A citation for a web resource used to generate a model response. # - # @param end_index [Integer] The index of the last character of the URL citation in the message. ... + # @param end_index [Integer] The index of the last character of the URL citation in the message. # - # @param start_index [Integer] The index of the first character of the URL citation in the message. ... + # @param start_index [Integer] The index of the first character of the URL citation in the message. # - # @param title [String] The title of the web resource. ... + # @param title [String] The title of the web resource. # - # @param url [String] The URL of the web resource. ... + # @param url [String] The URL of the web resource. # - # @param type [Symbol, :url_citation] The type of the URL citation. Always `url_citation`. ... + # @param type [Symbol, :url_citation] The type of the URL citation. Always `url_citation`. end class FilePath < OpenAI::Internal::Type::BaseModel diff --git a/lib/openai/models/responses/tool.rb b/lib/openai/models/responses/tool.rb index 5d053a5e..5c45cef7 100644 --- a/lib/openai/models/responses/tool.rb +++ b/lib/openai/models/responses/tool.rb @@ -3,28 +3,22 @@ module OpenAI module Models module Responses - # A tool that searches for relevant content from uploaded files. Learn more about - # the - # [file search tool](https://platform.openai.com/docs/guides/tools-file-search). + # A tool that can be used to generate a response. module Tool extend OpenAI::Internal::Type::Union discriminator :type - # A tool that searches for relevant content from uploaded files. - # Learn more about the [file search tool](https://platform.openai.com/docs/guides/tools-file-search). + # A tool that searches for relevant content from uploaded files. Learn more about the [file search tool](https://platform.openai.com/docs/guides/tools-file-search). variant :file_search, -> { OpenAI::Models::Responses::FileSearchTool } - # Defines a function in your own code the model can choose to call. Learn more - # about [function calling](https://platform.openai.com/docs/guides/function-calling). + # Defines a function in your own code the model can choose to call. Learn more about [function calling](https://platform.openai.com/docs/guides/function-calling). variant :function, -> { OpenAI::Models::Responses::FunctionTool } - # A tool that controls a virtual computer. Learn more about the - # [computer tool](https://platform.openai.com/docs/guides/tools-computer-use). + # A tool that controls a virtual computer. Learn more about the [computer tool](https://platform.openai.com/docs/guides/tools-computer-use). variant :computer_use_preview, -> { OpenAI::Models::Responses::ComputerTool } - # This tool searches the web for relevant results to use in a response. - # Learn more about the [web search tool](https://platform.openai.com/docs/guides/tools-web-search). + # This tool searches the web for relevant results to use in a response. Learn more about the [web search tool](https://platform.openai.com/docs/guides/tools-web-search). variant -> { OpenAI::Models::Responses::WebSearchTool } # @!method self.variants diff --git a/lib/openai/models/responses/web_search_tool.rb b/lib/openai/models/responses/web_search_tool.rb index 0885c4db..04073cbc 100644 --- a/lib/openai/models/responses/web_search_tool.rb +++ b/lib/openai/models/responses/web_search_tool.rb @@ -5,10 +5,8 @@ module Models module Responses class WebSearchTool < OpenAI::Internal::Type::BaseModel # @!attribute type - # The type of the web search tool. One of: - # - # - `web_search_preview` - # - `web_search_preview_2025_03_11` + # The type of the web search tool. One of `web_search_preview` or + # `web_search_preview_2025_03_11`. # # @return [Symbol, OpenAI::Models::Responses::WebSearchTool::Type] required :type, enum: -> { OpenAI::Models::Responses::WebSearchTool::Type } @@ -21,6 +19,7 @@ class WebSearchTool < OpenAI::Internal::Type::BaseModel optional :search_context_size, enum: -> { OpenAI::Models::Responses::WebSearchTool::SearchContextSize } # @!attribute user_location + # The user's location. # # @return [OpenAI::Models::Responses::WebSearchTool::UserLocation, nil] optional :user_location, -> { OpenAI::Models::Responses::WebSearchTool::UserLocation }, nil?: true @@ -33,16 +32,16 @@ class WebSearchTool < OpenAI::Internal::Type::BaseModel # about the # [web search tool](https://platform.openai.com/docs/guides/tools-web-search). # - # @param type [Symbol, OpenAI::Models::Responses::WebSearchTool::Type] The type of the web search tool. One of: ... + # @param type [Symbol, OpenAI::Models::Responses::WebSearchTool::Type] The type of the web search tool. One of `web_search_preview` or `web_search_prev + # ... # - # @param search_context_size [Symbol, OpenAI::Models::Responses::WebSearchTool::SearchContextSize] High level guidance for the amount of context window space to use for the ... + # @param search_context_size [Symbol, OpenAI::Models::Responses::WebSearchTool::SearchContextSize] High level guidance for the amount of context window space to use for the search + # ... # - # @param user_location [OpenAI::Models::Responses::WebSearchTool::UserLocation, nil] + # @param user_location [OpenAI::Models::Responses::WebSearchTool::UserLocation, nil] The user's location. - # The type of the web search tool. One of: - # - # - `web_search_preview` - # - `web_search_preview_2025_03_11` + # The type of the web search tool. One of `web_search_preview` or + # `web_search_preview_2025_03_11`. # # @see OpenAI::Models::Responses::WebSearchTool#type module Type @@ -82,41 +81,45 @@ class UserLocation < OpenAI::Internal::Type::BaseModel # Free text input for the city of the user, e.g. `San Francisco`. # # @return [String, nil] - optional :city, String + optional :city, String, nil?: true # @!attribute country # The two-letter [ISO country code](https://en.wikipedia.org/wiki/ISO_3166-1) of # the user, e.g. `US`. # # @return [String, nil] - optional :country, String + optional :country, String, nil?: true # @!attribute region # Free text input for the region of the user, e.g. `California`. # # @return [String, nil] - optional :region, String + optional :region, String, nil?: true # @!attribute timezone # The [IANA timezone](https://timeapi.io/documentation/iana-timezones) of the # user, e.g. `America/Los_Angeles`. # # @return [String, nil] - optional :timezone, String + optional :timezone, String, nil?: true # @!method initialize(city: nil, country: nil, region: nil, timezone: nil, type: :approximate) # Some parameter documentations has been truncated, see # {OpenAI::Models::Responses::WebSearchTool::UserLocation} for more details. # - # @param city [String] Free text input for the city of the user, e.g. `San Francisco`. ... + # The user's location. + # + # @param city [String, nil] Free text input for the city of the user, e.g. `San Francisco`. # - # @param country [String] The two-letter ... + # @param country [String, nil] The two-letter [ISO country code](https://en.wikipedia.org/wiki/ISO_3166-1) of t + # ... # - # @param region [String] Free text input for the region of the user, e.g. `California`. ... + # @param region [String, nil] Free text input for the region of the user, e.g. `California`. # - # @param timezone [String] The [IANA timezone](https://timeapi.io/documentation/iana-timezones) ... + # @param timezone [String, nil] The [IANA timezone](https://timeapi.io/documentation/iana-timezones) of the user + # ... # - # @param type [Symbol, :approximate] The type of location approximation. Always `approximate`. ... + # @param type [Symbol, :approximate] The type of location approximation. Always `approximate`. end end end diff --git a/lib/openai/resources/images.rb b/lib/openai/resources/images.rb index f34671b0..13484438 100644 --- a/lib/openai/resources/images.rb +++ b/lib/openai/resources/images.rb @@ -50,14 +50,15 @@ def create_variation(params) # Creates an edited or extended image given one or more source images and a # prompt. This endpoint only supports `gpt-image-1` and `dall-e-2`. # - # @overload edit(image:, prompt:, mask: nil, model: nil, n: nil, quality: nil, response_format: nil, size: nil, user: nil, request_options: {}) + # @overload edit(image:, prompt:, background: nil, mask: nil, model: nil, n: nil, quality: nil, response_format: nil, size: nil, user: nil, request_options: {}) # - # @param image [Pathname, StringIO, IO, OpenAI::FilePart, Array] The image(s) to edit. Must be a supported image file or an array of images. For - # ... + # @param image [Pathname, StringIO, IO, OpenAI::FilePart, Array] The image(s) to edit. Must be a supported image file or an array of images. ... # # @param prompt [String] A text description of the desired image(s). The maximum length is 1000 character # ... # + # @param background [Symbol, OpenAI::Models::ImageEditParams::Background, nil] Allows to set transparency for the background of the generated image(s). ... + # # @param mask [Pathname, StringIO, IO, OpenAI::FilePart] An additional image whose fully transparent areas (e.g. where alpha is zero) ind # ... # diff --git a/rbi/openai/models/audio/speech_create_params.rbi b/rbi/openai/models/audio/speech_create_params.rbi index d27b0482..5d48095e 100644 --- a/rbi/openai/models/audio/speech_create_params.rbi +++ b/rbi/openai/models/audio/speech_create_params.rbi @@ -40,7 +40,7 @@ module OpenAI attr_writer :response_format # The speed of the generated audio. Select a value from `0.25` to `4.0`. `1.0` is - # the default. + # the default. Does not work with `gpt-4o-mini-tts`. sig { returns(T.nilable(Float)) } attr_reader :speed @@ -77,7 +77,7 @@ module OpenAI # `wav`, and `pcm`. response_format: nil, # The speed of the generated audio. Select a value from `0.25` to `4.0`. `1.0` is - # the default. + # the default. Does not work with `gpt-4o-mini-tts`. speed: nil, request_options: {} ); end diff --git a/rbi/openai/models/image_edit_params.rbi b/rbi/openai/models/image_edit_params.rbi index 4ae05e29..54150702 100644 --- a/rbi/openai/models/image_edit_params.rbi +++ b/rbi/openai/models/image_edit_params.rbi @@ -6,10 +6,13 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters - # The image(s) to edit. Must be a supported image file or an array of images. For - # `gpt-image-1`, each image should be a `png`, `webp`, or `jpg` file less than - # 25MB. For `dall-e-2`, you can only provide one image, and it should be a square - # `png` file less than 4MB. + # The image(s) to edit. Must be a supported image file or an array of images. + # + # For `gpt-image-1`, each image should be a `png`, `webp`, or `jpg` file less than + # 25MB. You can provide up to 16 images. + # + # For `dall-e-2`, you can only provide one image, and it should be a square `png` + # file less than 4MB. sig do returns( T.any( @@ -28,6 +31,16 @@ module OpenAI sig { returns(String) } attr_accessor :prompt + # Allows to set transparency for the background of the generated image(s). This + # parameter is only supported for `gpt-image-1`. Must be one of `transparent`, + # `opaque` or `auto` (default value). When `auto` is used, the model will + # automatically determine the best background for the image. + # + # If `transparent`, the output format needs to support transparency, so it should + # be set to either `png` (default value) or `webp`. + sig { returns(T.nilable(OpenAI::Models::ImageEditParams::Background::OrSymbol)) } + attr_accessor :background + # An additional image whose fully transparent areas (e.g. where alpha is zero) # indicate where `image` should be edited. If there are multiple images provided, # the mask will be applied on the first image. Must be a valid PNG file, less than @@ -86,6 +99,7 @@ module OpenAI T::Array[T.any(Pathname, StringIO, IO, OpenAI::FilePart)] ), prompt: String, + background: T.nilable(OpenAI::Models::ImageEditParams::Background::OrSymbol), mask: T.any(Pathname, StringIO, IO, OpenAI::FilePart), model: T.nilable(T.any(String, OpenAI::Models::ImageModel::OrSymbol)), n: T.nilable(Integer), @@ -98,14 +112,25 @@ module OpenAI .returns(T.attached_class) end def self.new( - # The image(s) to edit. Must be a supported image file or an array of images. For - # `gpt-image-1`, each image should be a `png`, `webp`, or `jpg` file less than - # 25MB. For `dall-e-2`, you can only provide one image, and it should be a square - # `png` file less than 4MB. + # The image(s) to edit. Must be a supported image file or an array of images. + # + # For `gpt-image-1`, each image should be a `png`, `webp`, or `jpg` file less than + # 25MB. You can provide up to 16 images. + # + # For `dall-e-2`, you can only provide one image, and it should be a square `png` + # file less than 4MB. image:, # A text description of the desired image(s). The maximum length is 1000 # characters for `dall-e-2`, and 32000 characters for `gpt-image-1`. prompt:, + # Allows to set transparency for the background of the generated image(s). This + # parameter is only supported for `gpt-image-1`. Must be one of `transparent`, + # `opaque` or `auto` (default value). When `auto` is used, the model will + # automatically determine the best background for the image. + # + # If `transparent`, the output format needs to support transparency, so it should + # be set to either `png` (default value) or `webp`. + background: nil, # An additional image whose fully transparent areas (e.g. where alpha is zero) # indicate where `image` should be edited. If there are multiple images provided, # the mask will be applied on the first image. Must be a valid PNG file, less than @@ -148,6 +173,7 @@ module OpenAI T::Array[T.any(Pathname, StringIO, IO, OpenAI::FilePart)] ), prompt: String, + background: T.nilable(OpenAI::Models::ImageEditParams::Background::OrSymbol), mask: T.any(Pathname, StringIO, IO, OpenAI::FilePart), model: T.nilable(T.any(String, OpenAI::Models::ImageModel::OrSymbol)), n: T.nilable(Integer), @@ -161,10 +187,13 @@ module OpenAI end def to_hash; end - # The image(s) to edit. Must be a supported image file or an array of images. For - # `gpt-image-1`, each image should be a `png`, `webp`, or `jpg` file less than - # 25MB. For `dall-e-2`, you can only provide one image, and it should be a square - # `png` file less than 4MB. + # The image(s) to edit. Must be a supported image file or an array of images. + # + # For `gpt-image-1`, each image should be a `png`, `webp`, or `jpg` file less than + # 25MB. You can provide up to 16 images. + # + # For `dall-e-2`, you can only provide one image, and it should be a square `png` + # file less than 4MB. module Image extend OpenAI::Internal::Type::Union @@ -178,6 +207,27 @@ module OpenAI ) end + # Allows to set transparency for the background of the generated image(s). This + # parameter is only supported for `gpt-image-1`. Must be one of `transparent`, + # `opaque` or `auto` (default value). When `auto` is used, the model will + # automatically determine the best background for the image. + # + # If `transparent`, the output format needs to support transparency, so it should + # be set to either `png` (default value) or `webp`. + module Background + extend OpenAI::Internal::Type::Enum + + TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::ImageEditParams::Background) } + OrSymbol = T.type_alias { T.any(Symbol, String) } + + TRANSPARENT = T.let(:transparent, OpenAI::Models::ImageEditParams::Background::TaggedSymbol) + OPAQUE = T.let(:opaque, OpenAI::Models::ImageEditParams::Background::TaggedSymbol) + AUTO = T.let(:auto, OpenAI::Models::ImageEditParams::Background::TaggedSymbol) + + sig { override.returns(T::Array[OpenAI::Models::ImageEditParams::Background::TaggedSymbol]) } + def self.values; end + end + # The model to use for image generation. Only `dall-e-2` and `gpt-image-1` are # supported. Defaults to `dall-e-2` unless a parameter specific to `gpt-image-1` # is used. @@ -236,6 +286,9 @@ module OpenAI SIZE_256X256 = T.let(:"256x256", OpenAI::Models::ImageEditParams::Size::TaggedSymbol) SIZE_512X512 = T.let(:"512x512", OpenAI::Models::ImageEditParams::Size::TaggedSymbol) SIZE_1024X1024 = T.let(:"1024x1024", OpenAI::Models::ImageEditParams::Size::TaggedSymbol) + SIZE_1536X1024 = T.let(:"1536x1024", OpenAI::Models::ImageEditParams::Size::TaggedSymbol) + SIZE_1024X1536 = T.let(:"1024x1536", OpenAI::Models::ImageEditParams::Size::TaggedSymbol) + AUTO = T.let(:auto, OpenAI::Models::ImageEditParams::Size::TaggedSymbol) sig { override.returns(T::Array[OpenAI::Models::ImageEditParams::Size::TaggedSymbol]) } def self.values; end diff --git a/rbi/openai/models/responses/computer_tool.rbi b/rbi/openai/models/responses/computer_tool.rbi index 0223a583..99b52d59 100644 --- a/rbi/openai/models/responses/computer_tool.rbi +++ b/rbi/openai/models/responses/computer_tool.rbi @@ -5,11 +5,11 @@ module OpenAI module Responses class ComputerTool < OpenAI::Internal::Type::BaseModel # The height of the computer display. - sig { returns(Float) } + sig { returns(Integer) } attr_accessor :display_height # The width of the computer display. - sig { returns(Float) } + sig { returns(Integer) } attr_accessor :display_width # The type of computer environment to control. @@ -24,8 +24,8 @@ module OpenAI # [computer tool](https://platform.openai.com/docs/guides/tools-computer-use). sig do params( - display_height: Float, - display_width: Float, + display_height: Integer, + display_width: Integer, environment: OpenAI::Models::Responses::ComputerTool::Environment::OrSymbol, type: Symbol ) @@ -45,8 +45,8 @@ module OpenAI override .returns( { - display_height: Float, - display_width: Float, + display_height: Integer, + display_width: Integer, environment: OpenAI::Models::Responses::ComputerTool::Environment::OrSymbol, type: Symbol } @@ -61,8 +61,9 @@ module OpenAI TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::Responses::ComputerTool::Environment) } OrSymbol = T.type_alias { T.any(Symbol, String) } - MAC = T.let(:mac, OpenAI::Models::Responses::ComputerTool::Environment::TaggedSymbol) WINDOWS = T.let(:windows, OpenAI::Models::Responses::ComputerTool::Environment::TaggedSymbol) + MAC = T.let(:mac, OpenAI::Models::Responses::ComputerTool::Environment::TaggedSymbol) + LINUX = T.let(:linux, OpenAI::Models::Responses::ComputerTool::Environment::TaggedSymbol) UBUNTU = T.let(:ubuntu, OpenAI::Models::Responses::ComputerTool::Environment::TaggedSymbol) BROWSER = T.let(:browser, OpenAI::Models::Responses::ComputerTool::Environment::TaggedSymbol) diff --git a/rbi/openai/models/responses/file_search_tool.rbi b/rbi/openai/models/responses/file_search_tool.rbi index 12834382..005e1270 100644 --- a/rbi/openai/models/responses/file_search_tool.rbi +++ b/rbi/openai/models/responses/file_search_tool.rbi @@ -12,17 +12,9 @@ module OpenAI sig { returns(T::Array[String]) } attr_accessor :vector_store_ids - # A filter to apply based on file attributes. + # A filter to apply. sig { returns(T.nilable(T.any(OpenAI::Models::ComparisonFilter, OpenAI::Models::CompoundFilter))) } - attr_reader :filters - - sig do - params( - filters: T.any(OpenAI::Models::ComparisonFilter, OpenAI::Internal::AnyHash, OpenAI::Models::CompoundFilter) - ) - .void - end - attr_writer :filters + attr_accessor :filters # The maximum number of results to return. This number should be between 1 and 50 # inclusive. @@ -50,7 +42,9 @@ module OpenAI sig do params( vector_store_ids: T::Array[String], - filters: T.any(OpenAI::Models::ComparisonFilter, OpenAI::Internal::AnyHash, OpenAI::Models::CompoundFilter), + filters: T.nilable( + T.any(OpenAI::Models::ComparisonFilter, OpenAI::Internal::AnyHash, OpenAI::Models::CompoundFilter) + ), max_num_results: Integer, ranking_options: T.any(OpenAI::Models::Responses::FileSearchTool::RankingOptions, OpenAI::Internal::AnyHash), type: Symbol @@ -60,7 +54,7 @@ module OpenAI def self.new( # The IDs of the vector stores to search. vector_store_ids:, - # A filter to apply based on file attributes. + # A filter to apply. filters: nil, # The maximum number of results to return. This number should be between 1 and 50 # inclusive. @@ -76,7 +70,7 @@ module OpenAI { type: Symbol, vector_store_ids: T::Array[String], - filters: T.any(OpenAI::Models::ComparisonFilter, OpenAI::Models::CompoundFilter), + filters: T.nilable(T.any(OpenAI::Models::ComparisonFilter, OpenAI::Models::CompoundFilter)), max_num_results: Integer, ranking_options: OpenAI::Models::Responses::FileSearchTool::RankingOptions } @@ -84,7 +78,7 @@ module OpenAI end def to_hash; end - # A filter to apply based on file attributes. + # A filter to apply. module Filters extend OpenAI::Internal::Type::Union diff --git a/rbi/openai/models/responses/function_tool.rbi b/rbi/openai/models/responses/function_tool.rbi index 5fa541bd..294f57f1 100644 --- a/rbi/openai/models/responses/function_tool.rbi +++ b/rbi/openai/models/responses/function_tool.rbi @@ -9,11 +9,11 @@ module OpenAI attr_accessor :name # A JSON schema object describing the parameters of the function. - sig { returns(T::Hash[Symbol, T.anything]) } + sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } attr_accessor :parameters # Whether to enforce strict parameter validation. Default `true`. - sig { returns(T::Boolean) } + sig { returns(T.nilable(T::Boolean)) } attr_accessor :strict # The type of the function tool. Always `function`. @@ -31,8 +31,8 @@ module OpenAI sig do params( name: String, - parameters: T::Hash[Symbol, T.anything], - strict: T::Boolean, + parameters: T.nilable(T::Hash[Symbol, T.anything]), + strict: T.nilable(T::Boolean), description: T.nilable(String), type: Symbol ) @@ -56,8 +56,8 @@ module OpenAI .returns( { name: String, - parameters: T::Hash[Symbol, T.anything], - strict: T::Boolean, + parameters: T.nilable(T::Hash[Symbol, T.anything]), + strict: T.nilable(T::Boolean), type: Symbol, description: T.nilable(String) } diff --git a/rbi/openai/models/responses/response_create_params.rbi b/rbi/openai/models/responses/response_create_params.rbi index 3dd10986..753835a4 100644 --- a/rbi/openai/models/responses/response_create_params.rbi +++ b/rbi/openai/models/responses/response_create_params.rbi @@ -64,6 +64,11 @@ module OpenAI # - `message.input_image.image_url`: Include image urls from the input message. # - `computer_call_output.output.image_url`: Include image urls from the computer # call output. + # - `reasoning.encrypted_content`: Includes an encrypted version of reasoning + # tokens in reasoning item outputs. This enables reasoning items to be used in + # multi-turn conversations when using the Responses API statelessly (like when + # the `store` parameter is set to `false`, or when an organization is enrolled + # in the zero data retention program). sig { returns(T.nilable(T::Array[OpenAI::Models::Responses::ResponseIncludable::OrSymbol])) } attr_accessor :include @@ -339,6 +344,11 @@ module OpenAI # - `message.input_image.image_url`: Include image urls from the input message. # - `computer_call_output.output.image_url`: Include image urls from the computer # call output. + # - `reasoning.encrypted_content`: Includes an encrypted version of reasoning + # tokens in reasoning item outputs. This enables reasoning items to be used in + # multi-turn conversations when using the Responses API statelessly (like when + # the `store` parameter is set to `false`, or when an organization is enrolled + # in the zero data retention program). include: nil, # Inserts a system (or developer) message as the first item in the model's # context. diff --git a/rbi/openai/models/responses/response_includable.rbi b/rbi/openai/models/responses/response_includable.rbi index a6d5df86..cc0efd7c 100644 --- a/rbi/openai/models/responses/response_includable.rbi +++ b/rbi/openai/models/responses/response_includable.rbi @@ -11,6 +11,11 @@ module OpenAI # - `message.input_image.image_url`: Include image urls from the input message. # - `computer_call_output.output.image_url`: Include image urls from the computer # call output. + # - `reasoning.encrypted_content`: Includes an encrypted version of reasoning + # tokens in reasoning item outputs. This enables reasoning items to be used in + # multi-turn conversations when using the Responses API statelessly (like when + # the `store` parameter is set to `false`, or when an organization is enrolled + # in the zero data retention program). module ResponseIncludable extend OpenAI::Internal::Type::Enum @@ -26,6 +31,8 @@ module OpenAI :"computer_call_output.output.image_url", OpenAI::Models::Responses::ResponseIncludable::TaggedSymbol ) + REASONING_ENCRYPTED_CONTENT = + T.let(:"reasoning.encrypted_content", OpenAI::Models::Responses::ResponseIncludable::TaggedSymbol) sig { override.returns(T::Array[OpenAI::Models::Responses::ResponseIncludable::TaggedSymbol]) } def self.values; end diff --git a/rbi/openai/models/responses/response_input_file.rbi b/rbi/openai/models/responses/response_input_file.rbi index 74a535c7..b0dbcd3a 100644 --- a/rbi/openai/models/responses/response_input_file.rbi +++ b/rbi/openai/models/responses/response_input_file.rbi @@ -17,10 +17,7 @@ module OpenAI # The ID of the file to be sent to the model. sig { returns(T.nilable(String)) } - attr_reader :file_id - - sig { params(file_id: String).void } - attr_writer :file_id + attr_accessor :file_id # The name of the file to be sent to the model. sig { returns(T.nilable(String)) } @@ -31,7 +28,8 @@ module OpenAI # A file input to the model. sig do - params(file_data: String, file_id: String, filename: String, type: Symbol).returns(T.attached_class) + params(file_data: String, file_id: T.nilable(String), filename: String, type: Symbol) + .returns(T.attached_class) end def self.new( # The content of the file to be sent to the model. @@ -43,7 +41,9 @@ module OpenAI # The type of the input item. Always `input_file`. type: :input_file ); end - sig { override.returns({type: Symbol, file_data: String, file_id: String, filename: String}) } + sig do + override.returns({type: Symbol, file_data: String, file_id: T.nilable(String), filename: String}) + end def to_hash; end end end diff --git a/rbi/openai/models/responses/response_input_image.rbi b/rbi/openai/models/responses/response_input_image.rbi index d058b10d..ecac54d3 100644 --- a/rbi/openai/models/responses/response_input_image.rbi +++ b/rbi/openai/models/responses/response_input_image.rbi @@ -66,8 +66,8 @@ module OpenAI TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::Responses::ResponseInputImage::Detail) } OrSymbol = T.type_alias { T.any(Symbol, String) } - HIGH = T.let(:high, OpenAI::Models::Responses::ResponseInputImage::Detail::TaggedSymbol) LOW = T.let(:low, OpenAI::Models::Responses::ResponseInputImage::Detail::TaggedSymbol) + HIGH = T.let(:high, OpenAI::Models::Responses::ResponseInputImage::Detail::TaggedSymbol) AUTO = T.let(:auto, OpenAI::Models::Responses::ResponseInputImage::Detail::TaggedSymbol) sig { override.returns(T::Array[OpenAI::Models::Responses::ResponseInputImage::Detail::TaggedSymbol]) } diff --git a/rbi/openai/models/responses/response_input_item.rbi b/rbi/openai/models/responses/response_input_item.rbi index 6595bbdb..9c3dec78 100644 --- a/rbi/openai/models/responses/response_input_item.rbi +++ b/rbi/openai/models/responses/response_input_item.rbi @@ -170,10 +170,7 @@ module OpenAI # The ID of the computer tool call output. sig { returns(T.nilable(String)) } - attr_reader :id - - sig { params(id: String).void } - attr_writer :id + attr_accessor :id # The safety checks reported by the API that have been acknowledged by the # developer. @@ -184,42 +181,28 @@ module OpenAI ) ) end - attr_reader :acknowledged_safety_checks - - sig do - params( - acknowledged_safety_checks: T::Array[ - T.any( - OpenAI::Models::Responses::ResponseInputItem::ComputerCallOutput::AcknowledgedSafetyCheck, - OpenAI::Internal::AnyHash - ) - ] - ) - .void - end - attr_writer :acknowledged_safety_checks + attr_accessor :acknowledged_safety_checks # The status of the message input. One of `in_progress`, `completed`, or # `incomplete`. Populated when input items are returned via API. sig { returns(T.nilable(OpenAI::Models::Responses::ResponseInputItem::ComputerCallOutput::Status::OrSymbol)) } - attr_reader :status - - sig { params(status: OpenAI::Models::Responses::ResponseInputItem::ComputerCallOutput::Status::OrSymbol).void } - attr_writer :status + attr_accessor :status # The output of a computer tool call. sig do params( call_id: String, output: T.any(OpenAI::Models::Responses::ResponseComputerToolCallOutputScreenshot, OpenAI::Internal::AnyHash), - id: String, - acknowledged_safety_checks: T::Array[ - T.any( - OpenAI::Models::Responses::ResponseInputItem::ComputerCallOutput::AcknowledgedSafetyCheck, - OpenAI::Internal::AnyHash - ) - ], - status: OpenAI::Models::Responses::ResponseInputItem::ComputerCallOutput::Status::OrSymbol, + id: T.nilable(String), + acknowledged_safety_checks: T.nilable( + T::Array[ + T.any( + OpenAI::Models::Responses::ResponseInputItem::ComputerCallOutput::AcknowledgedSafetyCheck, + OpenAI::Internal::AnyHash + ) + ] + ), + status: T.nilable(OpenAI::Models::Responses::ResponseInputItem::ComputerCallOutput::Status::OrSymbol), type: Symbol ) .returns(T.attached_class) @@ -247,9 +230,11 @@ module OpenAI call_id: String, output: OpenAI::Models::Responses::ResponseComputerToolCallOutputScreenshot, type: Symbol, - id: String, - acknowledged_safety_checks: T::Array[OpenAI::Models::Responses::ResponseInputItem::ComputerCallOutput::AcknowledgedSafetyCheck], - status: OpenAI::Models::Responses::ResponseInputItem::ComputerCallOutput::Status::OrSymbol + id: T.nilable(String), + acknowledged_safety_checks: T.nilable( + T::Array[OpenAI::Models::Responses::ResponseInputItem::ComputerCallOutput::AcknowledgedSafetyCheck] + ), + status: T.nilable(OpenAI::Models::Responses::ResponseInputItem::ComputerCallOutput::Status::OrSymbol) } ) end @@ -261,24 +246,30 @@ module OpenAI attr_accessor :id # The type of the pending safety check. - sig { returns(String) } + sig { returns(T.nilable(String)) } attr_accessor :code # Details about the pending safety check. - sig { returns(String) } + sig { returns(T.nilable(String)) } attr_accessor :message # A pending safety check for the computer call. - sig { params(id: String, code: String, message: String).returns(T.attached_class) } + sig do + params( + id: String, + code: T.nilable(String), + message: T.nilable(String) + ).returns(T.attached_class) + end def self.new( # The ID of the pending safety check. id:, # The type of the pending safety check. - code:, + code: nil, # Details about the pending safety check. - message: + message: nil ); end - sig { override.returns({id: String, code: String, message: String}) } + sig { override.returns({id: String, code: T.nilable(String), message: T.nilable(String)}) } def to_hash; end end @@ -325,26 +316,20 @@ module OpenAI # The unique ID of the function tool call output. Populated when this item is # returned via API. sig { returns(T.nilable(String)) } - attr_reader :id - - sig { params(id: String).void } - attr_writer :id + attr_accessor :id # The status of the item. One of `in_progress`, `completed`, or `incomplete`. # Populated when items are returned via API. sig { returns(T.nilable(OpenAI::Models::Responses::ResponseInputItem::FunctionCallOutput::Status::OrSymbol)) } - attr_reader :status - - sig { params(status: OpenAI::Models::Responses::ResponseInputItem::FunctionCallOutput::Status::OrSymbol).void } - attr_writer :status + attr_accessor :status # The output of a function tool call. sig do params( call_id: String, output: String, - id: String, - status: OpenAI::Models::Responses::ResponseInputItem::FunctionCallOutput::Status::OrSymbol, + id: T.nilable(String), + status: T.nilable(OpenAI::Models::Responses::ResponseInputItem::FunctionCallOutput::Status::OrSymbol), type: Symbol ) .returns(T.attached_class) @@ -370,8 +355,8 @@ module OpenAI call_id: String, output: String, type: Symbol, - id: String, - status: OpenAI::Models::Responses::ResponseInputItem::FunctionCallOutput::Status::OrSymbol + id: T.nilable(String), + status: T.nilable(OpenAI::Models::Responses::ResponseInputItem::FunctionCallOutput::Status::OrSymbol) } ) end @@ -410,19 +395,47 @@ module OpenAI attr_accessor :id # The type of item to reference. Always `item_reference`. - sig { returns(Symbol) } + sig { returns(T.nilable(OpenAI::Models::Responses::ResponseInputItem::ItemReference::Type::OrSymbol)) } attr_accessor :type # An internal identifier for an item to reference. - sig { params(id: String, type: Symbol).returns(T.attached_class) } + sig do + params( + id: String, + type: T.nilable(OpenAI::Models::Responses::ResponseInputItem::ItemReference::Type::OrSymbol) + ) + .returns(T.attached_class) + end def self.new( # The ID of the item to reference. id:, # The type of item to reference. Always `item_reference`. - type: :item_reference + type: nil ); end - sig { override.returns({id: String, type: Symbol}) } + sig do + override + .returns( + {id: String, type: T.nilable(OpenAI::Models::Responses::ResponseInputItem::ItemReference::Type::OrSymbol)} + ) + end def to_hash; end + + # The type of item to reference. Always `item_reference`. + module Type + extend OpenAI::Internal::Type::Enum + + TaggedSymbol = + T.type_alias { T.all(Symbol, OpenAI::Models::Responses::ResponseInputItem::ItemReference::Type) } + OrSymbol = T.type_alias { T.any(Symbol, String) } + + ITEM_REFERENCE = + T.let(:item_reference, OpenAI::Models::Responses::ResponseInputItem::ItemReference::Type::TaggedSymbol) + + sig do + override.returns(T::Array[OpenAI::Models::Responses::ResponseInputItem::ItemReference::Type::TaggedSymbol]) + end + def self.values; end + end end sig do diff --git a/rbi/openai/models/responses/response_reasoning_item.rbi b/rbi/openai/models/responses/response_reasoning_item.rbi index 7b83bf50..6c5006fd 100644 --- a/rbi/openai/models/responses/response_reasoning_item.rbi +++ b/rbi/openai/models/responses/response_reasoning_item.rbi @@ -16,6 +16,11 @@ module OpenAI sig { returns(Symbol) } attr_accessor :type + # The encrypted content of the reasoning item - populated when a response is + # generated with `reasoning.encrypted_content` in the `include` parameter. + sig { returns(T.nilable(String)) } + attr_accessor :encrypted_content + # The status of the item. One of `in_progress`, `completed`, or `incomplete`. # Populated when items are returned via API. sig { returns(T.nilable(OpenAI::Models::Responses::ResponseReasoningItem::Status::OrSymbol)) } @@ -25,11 +30,14 @@ module OpenAI attr_writer :status # A description of the chain of thought used by a reasoning model while generating - # a response. + # a response. Be sure to include these items in your `input` to the Responses API + # for subsequent turns of a conversation if you are manually + # [managing context](https://platform.openai.com/docs/guides/conversation-state). sig do params( id: String, summary: T::Array[T.any(OpenAI::Models::Responses::ResponseReasoningItem::Summary, OpenAI::Internal::AnyHash)], + encrypted_content: T.nilable(String), status: OpenAI::Models::Responses::ResponseReasoningItem::Status::OrSymbol, type: Symbol ) @@ -40,6 +48,9 @@ module OpenAI id:, # Reasoning text contents. summary:, + # The encrypted content of the reasoning item - populated when a response is + # generated with `reasoning.encrypted_content` in the `include` parameter. + encrypted_content: nil, # The status of the item. One of `in_progress`, `completed`, or `incomplete`. # Populated when items are returned via API. status: nil, @@ -53,6 +64,7 @@ module OpenAI id: String, summary: T::Array[OpenAI::Models::Responses::ResponseReasoningItem::Summary], type: Symbol, + encrypted_content: T.nilable(String), status: OpenAI::Models::Responses::ResponseReasoningItem::Status::OrSymbol } ) diff --git a/rbi/openai/models/responses/tool.rbi b/rbi/openai/models/responses/tool.rbi index 292e8c9d..dd20795d 100644 --- a/rbi/openai/models/responses/tool.rbi +++ b/rbi/openai/models/responses/tool.rbi @@ -3,9 +3,7 @@ module OpenAI module Models module Responses - # A tool that searches for relevant content from uploaded files. Learn more about - # the - # [file search tool](https://platform.openai.com/docs/guides/tools-file-search). + # A tool that can be used to generate a response. module Tool extend OpenAI::Internal::Type::Union diff --git a/rbi/openai/models/responses/web_search_tool.rbi b/rbi/openai/models/responses/web_search_tool.rbi index fa6955fd..032f4d13 100644 --- a/rbi/openai/models/responses/web_search_tool.rbi +++ b/rbi/openai/models/responses/web_search_tool.rbi @@ -4,10 +4,8 @@ module OpenAI module Models module Responses class WebSearchTool < OpenAI::Internal::Type::BaseModel - # The type of the web search tool. One of: - # - # - `web_search_preview` - # - `web_search_preview_2025_03_11` + # The type of the web search tool. One of `web_search_preview` or + # `web_search_preview_2025_03_11`. sig { returns(OpenAI::Models::Responses::WebSearchTool::Type::OrSymbol) } attr_accessor :type @@ -19,6 +17,7 @@ module OpenAI sig { params(search_context_size: OpenAI::Models::Responses::WebSearchTool::SearchContextSize::OrSymbol).void } attr_writer :search_context_size + # The user's location. sig { returns(T.nilable(OpenAI::Models::Responses::WebSearchTool::UserLocation)) } attr_reader :user_location @@ -42,14 +41,13 @@ module OpenAI .returns(T.attached_class) end def self.new( - # The type of the web search tool. One of: - # - # - `web_search_preview` - # - `web_search_preview_2025_03_11` + # The type of the web search tool. One of `web_search_preview` or + # `web_search_preview_2025_03_11`. type:, # High level guidance for the amount of context window space to use for the # search. One of `low`, `medium`, or `high`. `medium` is the default. search_context_size: nil, + # The user's location. user_location: nil ); end sig do @@ -64,10 +62,8 @@ module OpenAI end def to_hash; end - # The type of the web search tool. One of: - # - # - `web_search_preview` - # - `web_search_preview_2025_03_11` + # The type of the web search tool. One of `web_search_preview` or + # `web_search_preview_2025_03_11`. module Type extend OpenAI::Internal::Type::Enum @@ -107,36 +103,31 @@ module OpenAI # Free text input for the city of the user, e.g. `San Francisco`. sig { returns(T.nilable(String)) } - attr_reader :city - - sig { params(city: String).void } - attr_writer :city + attr_accessor :city # The two-letter [ISO country code](https://en.wikipedia.org/wiki/ISO_3166-1) of # the user, e.g. `US`. sig { returns(T.nilable(String)) } - attr_reader :country - - sig { params(country: String).void } - attr_writer :country + attr_accessor :country # Free text input for the region of the user, e.g. `California`. sig { returns(T.nilable(String)) } - attr_reader :region - - sig { params(region: String).void } - attr_writer :region + attr_accessor :region # The [IANA timezone](https://timeapi.io/documentation/iana-timezones) of the # user, e.g. `America/Los_Angeles`. sig { returns(T.nilable(String)) } - attr_reader :timezone - - sig { params(timezone: String).void } - attr_writer :timezone + attr_accessor :timezone + # The user's location. sig do - params(city: String, country: String, region: String, timezone: String, type: Symbol) + params( + city: T.nilable(String), + country: T.nilable(String), + region: T.nilable(String), + timezone: T.nilable(String), + type: Symbol + ) .returns(T.attached_class) end def self.new( @@ -154,7 +145,16 @@ module OpenAI type: :approximate ); end sig do - override.returns({type: Symbol, city: String, country: String, region: String, timezone: String}) + override + .returns( + { + type: Symbol, + city: T.nilable(String), + country: T.nilable(String), + region: T.nilable(String), + timezone: T.nilable(String) + } + ) end def to_hash; end end diff --git a/rbi/openai/resources/audio/speech.rbi b/rbi/openai/resources/audio/speech.rbi index 16739bc4..4a2ffa44 100644 --- a/rbi/openai/resources/audio/speech.rbi +++ b/rbi/openai/resources/audio/speech.rbi @@ -35,7 +35,7 @@ module OpenAI # `wav`, and `pcm`. response_format: nil, # The speed of the generated audio. Select a value from `0.25` to `4.0`. `1.0` is - # the default. + # the default. Does not work with `gpt-4o-mini-tts`. speed: nil, request_options: {} ); end diff --git a/rbi/openai/resources/images.rbi b/rbi/openai/resources/images.rbi index 13ac0077..5341ac2b 100644 --- a/rbi/openai/resources/images.rbi +++ b/rbi/openai/resources/images.rbi @@ -50,6 +50,7 @@ module OpenAI T::Array[T.any(Pathname, StringIO, IO, OpenAI::FilePart)] ), prompt: String, + background: T.nilable(OpenAI::Models::ImageEditParams::Background::OrSymbol), mask: T.any(Pathname, StringIO, IO, OpenAI::FilePart), model: T.nilable(T.any(String, OpenAI::Models::ImageModel::OrSymbol)), n: T.nilable(Integer), @@ -62,14 +63,25 @@ module OpenAI .returns(OpenAI::Models::ImagesResponse) end def edit( - # The image(s) to edit. Must be a supported image file or an array of images. For - # `gpt-image-1`, each image should be a `png`, `webp`, or `jpg` file less than - # 25MB. For `dall-e-2`, you can only provide one image, and it should be a square - # `png` file less than 4MB. + # The image(s) to edit. Must be a supported image file or an array of images. + # + # For `gpt-image-1`, each image should be a `png`, `webp`, or `jpg` file less than + # 25MB. You can provide up to 16 images. + # + # For `dall-e-2`, you can only provide one image, and it should be a square `png` + # file less than 4MB. image:, # A text description of the desired image(s). The maximum length is 1000 # characters for `dall-e-2`, and 32000 characters for `gpt-image-1`. prompt:, + # Allows to set transparency for the background of the generated image(s). This + # parameter is only supported for `gpt-image-1`. Must be one of `transparent`, + # `opaque` or `auto` (default value). When `auto` is used, the model will + # automatically determine the best background for the image. + # + # If `transparent`, the output format needs to support transparency, so it should + # be set to either `png` (default value) or `webp`. + background: nil, # An additional image whose fully transparent areas (e.g. where alpha is zero) # indicate where `image` should be edited. If there are multiple images provided, # the mask will be applied on the first image. Must be a valid PNG file, less than diff --git a/rbi/openai/resources/responses.rbi b/rbi/openai/resources/responses.rbi index ba349b4b..e0dec08f 100644 --- a/rbi/openai/resources/responses.rbi +++ b/rbi/openai/resources/responses.rbi @@ -104,6 +104,11 @@ module OpenAI # - `message.input_image.image_url`: Include image urls from the input message. # - `computer_call_output.output.image_url`: Include image urls from the computer # call output. + # - `reasoning.encrypted_content`: Includes an encrypted version of reasoning + # tokens in reasoning item outputs. This enables reasoning items to be used in + # multi-turn conversations when using the Responses API statelessly (like when + # the `store` parameter is set to `false`, or when an organization is enrolled + # in the zero data retention program). include: nil, # Inserts a system (or developer) message as the first item in the model's # context. @@ -346,6 +351,11 @@ module OpenAI # - `message.input_image.image_url`: Include image urls from the input message. # - `computer_call_output.output.image_url`: Include image urls from the computer # call output. + # - `reasoning.encrypted_content`: Includes an encrypted version of reasoning + # tokens in reasoning item outputs. This enables reasoning items to be used in + # multi-turn conversations when using the Responses API statelessly (like when + # the `store` parameter is set to `false`, or when an organization is enrolled + # in the zero data retention program). include: nil, # Inserts a system (or developer) message as the first item in the model's # context. diff --git a/sig/openai/models/image_edit_params.rbs b/sig/openai/models/image_edit_params.rbs index bf702f1e..b8499e7e 100644 --- a/sig/openai/models/image_edit_params.rbs +++ b/sig/openai/models/image_edit_params.rbs @@ -4,6 +4,7 @@ module OpenAI { image: OpenAI::Models::ImageEditParams::image, prompt: String, + background: OpenAI::Models::ImageEditParams::background?, mask: (Pathname | StringIO | IO | OpenAI::FilePart), model: OpenAI::Models::ImageEditParams::model?, n: Integer?, @@ -22,6 +23,8 @@ module OpenAI attr_accessor prompt: String + attr_accessor background: OpenAI::Models::ImageEditParams::background? + attr_reader mask: (Pathname | StringIO | IO | OpenAI::FilePart)? def mask=: ( @@ -45,6 +48,7 @@ module OpenAI def initialize: ( image: OpenAI::Models::ImageEditParams::image, prompt: String, + ?background: OpenAI::Models::ImageEditParams::background?, ?mask: Pathname | StringIO | IO | OpenAI::FilePart, ?model: OpenAI::Models::ImageEditParams::model?, ?n: Integer?, @@ -72,6 +76,18 @@ module OpenAI StringArray: OpenAI::Internal::Type::Converter end + type background = :transparent | :opaque | :auto + + module Background + extend OpenAI::Internal::Type::Enum + + TRANSPARENT: :transparent + OPAQUE: :opaque + AUTO: :auto + + def self?.values: -> ::Array[OpenAI::Models::ImageEditParams::background] + end + type model = String | OpenAI::Models::image_model module Model @@ -105,7 +121,13 @@ module OpenAI def self?.values: -> ::Array[OpenAI::Models::ImageEditParams::response_format] end - type size = :"256x256" | :"512x512" | :"1024x1024" + type size = + :"256x256" + | :"512x512" + | :"1024x1024" + | :"1536x1024" + | :"1024x1536" + | :auto module Size extend OpenAI::Internal::Type::Enum @@ -113,6 +135,9 @@ module OpenAI SIZE_256X256: :"256x256" SIZE_512X512: :"512x512" SIZE_1024X1024: :"1024x1024" + SIZE_1536X1024: :"1536x1024" + SIZE_1024X1536: :"1024x1536" + AUTO: :auto def self?.values: -> ::Array[OpenAI::Models::ImageEditParams::size] end diff --git a/sig/openai/models/responses/computer_tool.rbs b/sig/openai/models/responses/computer_tool.rbs index f30d8909..f362244f 100644 --- a/sig/openai/models/responses/computer_tool.rbs +++ b/sig/openai/models/responses/computer_tool.rbs @@ -3,37 +3,38 @@ module OpenAI module Responses type computer_tool = { - display_height: Float, - display_width: Float, + display_height: Integer, + display_width: Integer, environment: OpenAI::Models::Responses::ComputerTool::environment, type: :computer_use_preview } class ComputerTool < OpenAI::Internal::Type::BaseModel - attr_accessor display_height: Float + attr_accessor display_height: Integer - attr_accessor display_width: Float + attr_accessor display_width: Integer attr_accessor environment: OpenAI::Models::Responses::ComputerTool::environment attr_accessor type: :computer_use_preview def initialize: ( - display_height: Float, - display_width: Float, + display_height: Integer, + display_width: Integer, environment: OpenAI::Models::Responses::ComputerTool::environment, ?type: :computer_use_preview ) -> void def to_hash: -> OpenAI::Models::Responses::computer_tool - type environment = :mac | :windows | :ubuntu | :browser + type environment = :windows | :mac | :linux | :ubuntu | :browser module Environment extend OpenAI::Internal::Type::Enum - MAC: :mac WINDOWS: :windows + MAC: :mac + LINUX: :linux UBUNTU: :ubuntu BROWSER: :browser diff --git a/sig/openai/models/responses/file_search_tool.rbs b/sig/openai/models/responses/file_search_tool.rbs index 6c174053..07747db5 100644 --- a/sig/openai/models/responses/file_search_tool.rbs +++ b/sig/openai/models/responses/file_search_tool.rbs @@ -5,7 +5,7 @@ module OpenAI { type: :file_search, vector_store_ids: ::Array[String], - filters: OpenAI::Models::Responses::FileSearchTool::filters, + filters: OpenAI::Models::Responses::FileSearchTool::filters?, max_num_results: Integer, ranking_options: OpenAI::Models::Responses::FileSearchTool::RankingOptions } @@ -15,11 +15,7 @@ module OpenAI attr_accessor vector_store_ids: ::Array[String] - attr_reader filters: OpenAI::Models::Responses::FileSearchTool::filters? - - def filters=: ( - OpenAI::Models::Responses::FileSearchTool::filters - ) -> OpenAI::Models::Responses::FileSearchTool::filters + attr_accessor filters: OpenAI::Models::Responses::FileSearchTool::filters? attr_reader max_num_results: Integer? @@ -33,7 +29,7 @@ module OpenAI def initialize: ( vector_store_ids: ::Array[String], - ?filters: OpenAI::Models::Responses::FileSearchTool::filters, + ?filters: OpenAI::Models::Responses::FileSearchTool::filters?, ?max_num_results: Integer, ?ranking_options: OpenAI::Models::Responses::FileSearchTool::RankingOptions, ?type: :file_search diff --git a/sig/openai/models/responses/function_tool.rbs b/sig/openai/models/responses/function_tool.rbs index f69630ac..3121cb1d 100644 --- a/sig/openai/models/responses/function_tool.rbs +++ b/sig/openai/models/responses/function_tool.rbs @@ -4,8 +4,8 @@ module OpenAI type function_tool = { name: String, - parameters: ::Hash[Symbol, top], - strict: bool, + parameters: ::Hash[Symbol, top]?, + strict: bool?, type: :function, description: String? } @@ -13,9 +13,9 @@ module OpenAI class FunctionTool < OpenAI::Internal::Type::BaseModel attr_accessor name: String - attr_accessor parameters: ::Hash[Symbol, top] + attr_accessor parameters: ::Hash[Symbol, top]? - attr_accessor strict: bool + attr_accessor strict: bool? attr_accessor type: :function @@ -23,8 +23,8 @@ module OpenAI def initialize: ( name: String, - parameters: ::Hash[Symbol, top], - strict: bool, + parameters: ::Hash[Symbol, top]?, + strict: bool?, ?description: String?, ?type: :function ) -> void diff --git a/sig/openai/models/responses/response_includable.rbs b/sig/openai/models/responses/response_includable.rbs index 0634f434..4f37a1b1 100644 --- a/sig/openai/models/responses/response_includable.rbs +++ b/sig/openai/models/responses/response_includable.rbs @@ -5,6 +5,7 @@ module OpenAI :"file_search_call.results" | :"message.input_image.image_url" | :"computer_call_output.output.image_url" + | :"reasoning.encrypted_content" module ResponseIncludable extend OpenAI::Internal::Type::Enum @@ -12,6 +13,7 @@ module OpenAI FILE_SEARCH_CALL_RESULTS: :"file_search_call.results" MESSAGE_INPUT_IMAGE_IMAGE_URL: :"message.input_image.image_url" COMPUTER_CALL_OUTPUT_OUTPUT_IMAGE_URL: :"computer_call_output.output.image_url" + REASONING_ENCRYPTED_CONTENT: :"reasoning.encrypted_content" def self?.values: -> ::Array[OpenAI::Models::Responses::response_includable] end diff --git a/sig/openai/models/responses/response_input_file.rbs b/sig/openai/models/responses/response_input_file.rbs index 75f0306c..20c40b3a 100644 --- a/sig/openai/models/responses/response_input_file.rbs +++ b/sig/openai/models/responses/response_input_file.rbs @@ -5,7 +5,7 @@ module OpenAI { type: :input_file, file_data: String, - file_id: String, + file_id: String?, filename: String } @@ -16,9 +16,7 @@ module OpenAI def file_data=: (String) -> String - attr_reader file_id: String? - - def file_id=: (String) -> String + attr_accessor file_id: String? attr_reader filename: String? @@ -26,7 +24,7 @@ module OpenAI def initialize: ( ?file_data: String, - ?file_id: String, + ?file_id: String?, ?filename: String, ?type: :input_file ) -> void diff --git a/sig/openai/models/responses/response_input_image.rbs b/sig/openai/models/responses/response_input_image.rbs index f6e47720..f9a423cc 100644 --- a/sig/openai/models/responses/response_input_image.rbs +++ b/sig/openai/models/responses/response_input_image.rbs @@ -27,13 +27,13 @@ module OpenAI def to_hash: -> OpenAI::Models::Responses::response_input_image - type detail = :high | :low | :auto + type detail = :low | :high | :auto module Detail extend OpenAI::Internal::Type::Enum - HIGH: :high LOW: :low + HIGH: :high AUTO: :auto def self?.values: -> ::Array[OpenAI::Models::Responses::ResponseInputImage::detail] diff --git a/sig/openai/models/responses/response_input_item.rbs b/sig/openai/models/responses/response_input_item.rbs index 35ad1d08..f5de100d 100644 --- a/sig/openai/models/responses/response_input_item.rbs +++ b/sig/openai/models/responses/response_input_item.rbs @@ -91,9 +91,9 @@ module OpenAI call_id: String, output: OpenAI::Models::Responses::ResponseComputerToolCallOutputScreenshot, type: :computer_call_output, - id: String, - acknowledged_safety_checks: ::Array[OpenAI::Models::Responses::ResponseInputItem::ComputerCallOutput::AcknowledgedSafetyCheck], - status: OpenAI::Models::Responses::ResponseInputItem::ComputerCallOutput::status + id: String?, + acknowledged_safety_checks: ::Array[OpenAI::Models::Responses::ResponseInputItem::ComputerCallOutput::AcknowledgedSafetyCheck]?, + status: OpenAI::Models::Responses::ResponseInputItem::ComputerCallOutput::status? } class ComputerCallOutput < OpenAI::Internal::Type::BaseModel @@ -103,44 +103,38 @@ module OpenAI attr_accessor type: :computer_call_output - attr_reader id: String? - - def id=: (String) -> String - - attr_reader acknowledged_safety_checks: ::Array[OpenAI::Models::Responses::ResponseInputItem::ComputerCallOutput::AcknowledgedSafetyCheck]? + attr_accessor id: String? - def acknowledged_safety_checks=: ( - ::Array[OpenAI::Models::Responses::ResponseInputItem::ComputerCallOutput::AcknowledgedSafetyCheck] - ) -> ::Array[OpenAI::Models::Responses::ResponseInputItem::ComputerCallOutput::AcknowledgedSafetyCheck] + attr_accessor acknowledged_safety_checks: ::Array[OpenAI::Models::Responses::ResponseInputItem::ComputerCallOutput::AcknowledgedSafetyCheck]? - attr_reader status: OpenAI::Models::Responses::ResponseInputItem::ComputerCallOutput::status? - - def status=: ( - OpenAI::Models::Responses::ResponseInputItem::ComputerCallOutput::status - ) -> OpenAI::Models::Responses::ResponseInputItem::ComputerCallOutput::status + attr_accessor status: OpenAI::Models::Responses::ResponseInputItem::ComputerCallOutput::status? def initialize: ( call_id: String, output: OpenAI::Models::Responses::ResponseComputerToolCallOutputScreenshot, - ?id: String, - ?acknowledged_safety_checks: ::Array[OpenAI::Models::Responses::ResponseInputItem::ComputerCallOutput::AcknowledgedSafetyCheck], - ?status: OpenAI::Models::Responses::ResponseInputItem::ComputerCallOutput::status, + ?id: String?, + ?acknowledged_safety_checks: ::Array[OpenAI::Models::Responses::ResponseInputItem::ComputerCallOutput::AcknowledgedSafetyCheck]?, + ?status: OpenAI::Models::Responses::ResponseInputItem::ComputerCallOutput::status?, ?type: :computer_call_output ) -> void def to_hash: -> OpenAI::Models::Responses::ResponseInputItem::computer_call_output type acknowledged_safety_check = - { id: String, code: String, message: String } + { id: String, code: String?, message: String? } class AcknowledgedSafetyCheck < OpenAI::Internal::Type::BaseModel attr_accessor id: String - attr_accessor code: String + attr_accessor code: String? - attr_accessor message: String + attr_accessor message: String? - def initialize: (id: String, code: String, message: String) -> void + def initialize: ( + id: String, + ?code: String?, + ?message: String? + ) -> void def to_hash: -> OpenAI::Models::Responses::ResponseInputItem::ComputerCallOutput::acknowledged_safety_check end @@ -163,8 +157,8 @@ module OpenAI call_id: String, output: String, type: :function_call_output, - id: String, - status: OpenAI::Models::Responses::ResponseInputItem::FunctionCallOutput::status + id: String?, + status: OpenAI::Models::Responses::ResponseInputItem::FunctionCallOutput::status? } class FunctionCallOutput < OpenAI::Internal::Type::BaseModel @@ -174,21 +168,15 @@ module OpenAI attr_accessor type: :function_call_output - attr_reader id: String? + attr_accessor id: String? - def id=: (String) -> String - - attr_reader status: OpenAI::Models::Responses::ResponseInputItem::FunctionCallOutput::status? - - def status=: ( - OpenAI::Models::Responses::ResponseInputItem::FunctionCallOutput::status - ) -> OpenAI::Models::Responses::ResponseInputItem::FunctionCallOutput::status + attr_accessor status: OpenAI::Models::Responses::ResponseInputItem::FunctionCallOutput::status? def initialize: ( call_id: String, output: String, - ?id: String, - ?status: OpenAI::Models::Responses::ResponseInputItem::FunctionCallOutput::status, + ?id: String?, + ?status: OpenAI::Models::Responses::ResponseInputItem::FunctionCallOutput::status?, ?type: :function_call_output ) -> void @@ -207,16 +195,33 @@ module OpenAI end end - type item_reference = { id: String, type: :item_reference } + type item_reference = + { + id: String, + type: OpenAI::Models::Responses::ResponseInputItem::ItemReference::type_? + } class ItemReference < OpenAI::Internal::Type::BaseModel attr_accessor id: String - attr_accessor type: :item_reference + attr_accessor type: OpenAI::Models::Responses::ResponseInputItem::ItemReference::type_? - def initialize: (id: String, ?type: :item_reference) -> void + def initialize: ( + id: String, + ?type: OpenAI::Models::Responses::ResponseInputItem::ItemReference::type_? + ) -> void def to_hash: -> OpenAI::Models::Responses::ResponseInputItem::item_reference + + type type_ = :item_reference + + module Type + extend OpenAI::Internal::Type::Enum + + ITEM_REFERENCE: :item_reference + + def self?.values: -> ::Array[OpenAI::Models::Responses::ResponseInputItem::ItemReference::type_] + end end def self?.variants: -> [OpenAI::Models::Responses::EasyInputMessage, OpenAI::Models::Responses::ResponseInputItem::Message, OpenAI::Models::Responses::ResponseOutputMessage, OpenAI::Models::Responses::ResponseFileSearchToolCall, OpenAI::Models::Responses::ResponseComputerToolCall, OpenAI::Models::Responses::ResponseInputItem::ComputerCallOutput, OpenAI::Models::Responses::ResponseFunctionWebSearch, OpenAI::Models::Responses::ResponseFunctionToolCall, OpenAI::Models::Responses::ResponseInputItem::FunctionCallOutput, OpenAI::Models::Responses::ResponseReasoningItem, OpenAI::Models::Responses::ResponseInputItem::ItemReference] diff --git a/sig/openai/models/responses/response_reasoning_item.rbs b/sig/openai/models/responses/response_reasoning_item.rbs index e83fbe06..19c0882c 100644 --- a/sig/openai/models/responses/response_reasoning_item.rbs +++ b/sig/openai/models/responses/response_reasoning_item.rbs @@ -6,6 +6,7 @@ module OpenAI id: String, summary: ::Array[OpenAI::Models::Responses::ResponseReasoningItem::Summary], type: :reasoning, + encrypted_content: String?, status: OpenAI::Models::Responses::ResponseReasoningItem::status } @@ -16,6 +17,8 @@ module OpenAI attr_accessor type: :reasoning + attr_accessor encrypted_content: String? + attr_reader status: OpenAI::Models::Responses::ResponseReasoningItem::status? def status=: ( @@ -25,6 +28,7 @@ module OpenAI def initialize: ( id: String, summary: ::Array[OpenAI::Models::Responses::ResponseReasoningItem::Summary], + ?encrypted_content: String?, ?status: OpenAI::Models::Responses::ResponseReasoningItem::status, ?type: :reasoning ) -> void diff --git a/sig/openai/models/responses/web_search_tool.rbs b/sig/openai/models/responses/web_search_tool.rbs index 92f25bd0..6b68aad5 100644 --- a/sig/openai/models/responses/web_search_tool.rbs +++ b/sig/openai/models/responses/web_search_tool.rbs @@ -53,36 +53,28 @@ module OpenAI type user_location = { type: :approximate, - city: String, - country: String, - region: String, - timezone: String + city: String?, + country: String?, + region: String?, + timezone: String? } class UserLocation < OpenAI::Internal::Type::BaseModel attr_accessor type: :approximate - attr_reader city: String? + attr_accessor city: String? - def city=: (String) -> String + attr_accessor country: String? - attr_reader country: String? + attr_accessor region: String? - def country=: (String) -> String - - attr_reader region: String? - - def region=: (String) -> String - - attr_reader timezone: String? - - def timezone=: (String) -> String + attr_accessor timezone: String? def initialize: ( - ?city: String, - ?country: String, - ?region: String, - ?timezone: String, + ?city: String?, + ?country: String?, + ?region: String?, + ?timezone: String?, ?type: :approximate ) -> void diff --git a/sig/openai/resources/images.rbs b/sig/openai/resources/images.rbs index d1bddd09..20b05ba5 100644 --- a/sig/openai/resources/images.rbs +++ b/sig/openai/resources/images.rbs @@ -14,6 +14,7 @@ module OpenAI def edit: ( image: OpenAI::Models::ImageEditParams::image, prompt: String, + ?background: OpenAI::Models::ImageEditParams::background?, ?mask: Pathname | StringIO | IO | OpenAI::FilePart, ?model: OpenAI::Models::ImageEditParams::model?, ?n: Integer?, From 7d8ee4f61fee6e53a07a44b20ca36f27bf3cc463 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Mon, 5 May 2025 15:30:25 +0000 Subject: [PATCH 39/47] docs: illustrate environmental defaults for auth variables --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index ed33b344..9a98df76 100644 --- a/README.md +++ b/README.md @@ -29,7 +29,7 @@ require "bundler/setup" require "openai" openai = OpenAI::Client.new( - api_key: "My API Key" # defaults to ENV["OPENAI_API_KEY"] + api_key: ENV["OPENAI_API_KEY"] # This is the default and can be omitted ) chat_completion = openai.chat.completions.create( From 71cf48f5fe64cd8ae20615c7d019b3e1c40f2529 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Mon, 5 May 2025 22:18:45 +0000 Subject: [PATCH 40/47] chore(internal): codegen related update --- lib/openai/internal/util.rb | 2 +- rbi/openai/internal/util.rbi | 2 +- test/openai/internal/util_test.rb | 16 ++++++++++++++++ 3 files changed, 18 insertions(+), 2 deletions(-) diff --git a/lib/openai/internal/util.rb b/lib/openai/internal/util.rb index e6424124..74239da5 100644 --- a/lib/openai/internal/util.rb +++ b/lib/openai/internal/util.rb @@ -470,7 +470,7 @@ def writable_enum(&blk) # @type [Regexp] JSON_CONTENT = %r{^application/(?:vnd(?:\.[^.]+)*\+)?json(?!l)} # @type [Regexp] - JSONL_CONTENT = %r{^application/(?:x-)?jsonl} + JSONL_CONTENT = %r{^application/(:?x-(?:n|l)djson)|(:?(?:x-)?jsonl)} class << self # @api private diff --git a/rbi/openai/internal/util.rbi b/rbi/openai/internal/util.rbi index c86a9895..594fae53 100644 --- a/rbi/openai/internal/util.rbi +++ b/rbi/openai/internal/util.rbi @@ -187,7 +187,7 @@ module OpenAI end JSON_CONTENT = T.let(%r{^application/(?:vnd(?:\.[^.]+)*\+)?json(?!l)}, Regexp) - JSONL_CONTENT = T.let(%r{^application/(?:x-)?jsonl}, Regexp) + JSONL_CONTENT = T.let(%r{^application/(:?x-(?:n|l)djson)|(:?(?:x-)?jsonl)}, Regexp) class << self # @api private diff --git a/test/openai/internal/util_test.rb b/test/openai/internal/util_test.rb index 565fe013..76f2f9f5 100644 --- a/test/openai/internal/util_test.rb +++ b/test/openai/internal/util_test.rb @@ -172,6 +172,22 @@ def test_json_content end end end + + def test_jsonl_content + cases = { + "application/x-ndjson" => true, + "application/x-ldjson" => true, + "application/jsonl" => true, + "application/x-jsonl" => true, + "application/json" => false, + "application/vnd.api+json" => false + } + cases.each do |header, verdict| + assert_pattern do + OpenAI::Internal::Util::JSONL_CONTENT.match?(header) => ^verdict + end + end + end end class OpenAI::Test::UtilFormDataEncodingTest < Minitest::Test From ebf0cae7f0935c96eb21a980c9b3d46892d2cea7 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Tue, 6 May 2025 19:05:51 +0000 Subject: [PATCH 41/47] chore(internal): codegen related update --- lib/openai/internal/stream.rb | 8 ++++---- lib/openai/internal/transport/base_client.rb | 4 ++-- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/lib/openai/internal/stream.rb b/lib/openai/internal/stream.rb index ad1f7a1d..2d3b9ac3 100644 --- a/lib/openai/internal/stream.rb +++ b/lib/openai/internal/stream.rb @@ -23,17 +23,17 @@ class Stream next if consume case msg - in { data: String => data } if data.start_with?("[DONE]") + in {data: String => data} if data.start_with?("[DONE]") consume = true next - in { data: String => data } + in {data: String => data} case JSON.parse(data, symbolize_names: true) - in { error: error } + in {error: error} message = case error in String error - in { message: String => m } + in {message: String => m} m else "An error occurred during streaming" diff --git a/lib/openai/internal/transport/base_client.rb b/lib/openai/internal/transport/base_client.rb index b3bb579b..0d15ff3d 100644 --- a/lib/openai/internal/transport/base_client.rb +++ b/lib/openai/internal/transport/base_client.rb @@ -458,9 +458,9 @@ def request(req) decoded = OpenAI::Internal::Util.decode_content(response, stream: stream) case req - in { stream: Class => st } + in {stream: Class => st} st.new(model: model, url: url, status: status, response: response, stream: decoded) - in { page: Class => page } + in {page: Class => page} page.new(client: self, req: req, headers: response, page_data: decoded) else unwrapped = OpenAI::Internal::Util.dig(decoded, req[:unwrap]) From 67847092007552991375fa6f72ccda5925051bb0 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Tue, 6 May 2025 15:20:02 +0000 Subject: [PATCH 42/47] fix(internal): fix formatting script for macos --- Rakefile | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/Rakefile b/Rakefile index 661da932..e8317577 100644 --- a/Rakefile +++ b/Rakefile @@ -58,12 +58,13 @@ end desc("Format `*.rbs`") multitask(:"format:syntax_tree") do find = %w[find ./sig -type f -name *.rbs -print0] - inplace = /darwin|bsd/ =~ RUBY_PLATFORM ? %w[-i''] : %w[-i] + inplace = /darwin|bsd/ =~ RUBY_PLATFORM ? ["-i", ""] : %w[-i] uuid = SecureRandom.uuid # `syntax_tree` has trouble with `rbs`'s class & module aliases - sed = xargs + %w[sed -E] + inplace + %w[-e] + sed_bin = /darwin/ =~ RUBY_PLATFORM ? "/usr/bin/sed" : "sed" + sed = xargs + [sed_bin, "-E", *inplace, "-e"] # annotate unprocessable aliases with a unique comment pre = sed + ["s/(class|module) ([^ ]+) = (.+$)/# \\1 #{uuid}\\n\\2: \\3/", "--"] fmt = xargs + %w[stree write --plugin=rbs --] From 139a140e6c5d37b638ad31a5fa8816e4d3fda5b8 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Tue, 6 May 2025 20:24:09 +0000 Subject: [PATCH 43/47] chore(internal): codegen related update From 9a2827b01a5a38985c4b92521534fc7a11f3c91a Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Tue, 6 May 2025 20:56:18 +0000 Subject: [PATCH 44/47] chore: revert ignoring Gemfile.lock --- .gitignore | 1 - Gemfile.lock | 212 ++++++++++++++++++++++++++++++++++++++++++++++ Rakefile | 2 +- scripts/bootstrap | 1 - 4 files changed, 213 insertions(+), 3 deletions(-) create mode 100644 Gemfile.lock diff --git a/.gitignore b/.gitignore index edaa164e..3d26ceed 100644 --- a/.gitignore +++ b/.gitignore @@ -7,5 +7,4 @@ bin/tapioca Brewfile.lock.json doc/ -Gemfile.lock sorbet/tapioca/* diff --git a/Gemfile.lock b/Gemfile.lock new file mode 100644 index 00000000..065e1cd1 --- /dev/null +++ b/Gemfile.lock @@ -0,0 +1,212 @@ +GIT + remote: https://github.com/stainless-api/syntax_tree-rbs.git + revision: c30b50219918be7cfe3ef803a00b59d1e77fcada + branch: main + specs: + syntax_tree-rbs (1.0.0) + prettier_print + rbs + syntax_tree (>= 2.0.1) + +PATH + remote: . + specs: + openai (0.1.0.pre.alpha.5) + connection_pool + +GEM + remote: https://rubygems.org/ + specs: + activesupport (8.0.2) + base64 + benchmark (>= 0.3) + bigdecimal + concurrent-ruby (~> 1.0, >= 1.3.1) + connection_pool (>= 2.2.5) + drb + i18n (>= 1.6, < 2) + logger (>= 1.4.2) + minitest (>= 5.1) + securerandom (>= 0.3) + tzinfo (~> 2.0, >= 2.0.5) + uri (>= 0.13.1) + addressable (2.8.7) + public_suffix (>= 2.0.2, < 7.0) + ast (2.4.3) + async (2.24.0) + console (~> 1.29) + fiber-annotation + io-event (~> 1.9) + metrics (~> 0.12) + traces (~> 0.15) + base64 (0.2.0) + benchmark (0.4.0) + bigdecimal (3.1.9) + concurrent-ruby (1.3.5) + connection_pool (2.5.3) + console (1.30.2) + fiber-annotation + fiber-local (~> 1.1) + json + crack (1.0.0) + bigdecimal + rexml + csv (3.3.4) + drb (2.2.1) + erubi (1.13.1) + ffi (1.17.2-x86_64-linux-gnu) + fiber-annotation (0.2.0) + fiber-local (1.1.0) + fiber-storage + fiber-storage (1.0.1) + fileutils (1.7.3) + hashdiff (1.1.2) + i18n (1.14.7) + concurrent-ruby (~> 1.0) + io-event (1.10.0) + json (2.11.3) + language_server-protocol (3.17.0.4) + lint_roller (1.1.0) + listen (3.9.0) + rb-fsevent (~> 0.10, >= 0.10.3) + rb-inotify (~> 0.9, >= 0.9.10) + logger (1.7.0) + metrics (0.12.2) + minitest (5.25.5) + minitest-focus (1.4.0) + minitest (>= 4, < 6) + minitest-hooks (1.5.2) + minitest (> 5.3) + minitest-proveit (1.0.0) + minitest (> 5, < 7) + minitest-rg (5.3.0) + minitest (~> 5.0) + mutex_m (0.3.0) + netrc (0.11.0) + parallel (1.27.0) + parser (3.3.8.0) + ast (~> 2.4.1) + racc + prettier_print (1.2.1) + prism (1.4.0) + public_suffix (6.0.2) + racc (1.8.1) + rainbow (3.1.1) + rake (13.2.1) + rb-fsevent (0.11.2) + rb-inotify (0.11.1) + ffi (~> 1.0) + rbi (0.3.2) + prism (~> 1.0) + rbs (>= 3.4.4) + sorbet-runtime (>= 0.5.9204) + rbs (3.9.2) + logger + redcarpet (3.6.1) + regexp_parser (2.10.0) + rexml (3.4.1) + rubocop (1.75.5) + json (~> 2.3) + language_server-protocol (~> 3.17.0.2) + lint_roller (~> 1.1.0) + parallel (~> 1.10) + parser (>= 3.3.0.2) + rainbow (>= 2.2.2, < 4.0) + regexp_parser (>= 2.9.3, < 3.0) + rubocop-ast (>= 1.44.0, < 2.0) + ruby-progressbar (~> 1.7) + unicode-display_width (>= 2.4.0, < 4.0) + rubocop-ast (1.44.1) + parser (>= 3.3.7.2) + prism (~> 1.4) + ruby-progressbar (1.13.0) + securerandom (0.4.1) + sorbet (0.5.12067) + sorbet-static (= 0.5.12067) + sorbet-runtime (0.5.12067) + sorbet-static (0.5.12067-x86_64-linux) + sorbet-static-and-runtime (0.5.12067) + sorbet (= 0.5.12067) + sorbet-runtime (= 0.5.12067) + spoom (1.6.1) + erubi (>= 1.10.0) + prism (>= 0.28.0) + rbi (>= 0.2.3) + sorbet-static-and-runtime (>= 0.5.10187) + thor (>= 0.19.2) + steep (1.10.0) + activesupport (>= 5.1) + concurrent-ruby (>= 1.1.10) + csv (>= 3.0.9) + fileutils (>= 1.1.0) + json (>= 2.1.0) + language_server-protocol (>= 3.17.0.4, < 4.0) + listen (~> 3.0) + logger (>= 1.3.0) + mutex_m (>= 0.3.0) + parser (>= 3.1) + rainbow (>= 2.2.2, < 4.0) + rbs (~> 3.9) + securerandom (>= 0.1) + strscan (>= 1.0.0) + terminal-table (>= 2, < 5) + uri (>= 0.12.0) + strscan (3.1.5) + syntax_tree (6.2.0) + prettier_print (>= 1.2.0) + tapioca (0.16.11) + benchmark + bundler (>= 2.2.25) + netrc (>= 0.11.0) + parallel (>= 1.21.0) + rbi (~> 0.2) + sorbet-static-and-runtime (>= 0.5.11087) + spoom (>= 1.2.0) + thor (>= 1.2.0) + yard-sorbet + terminal-table (4.0.0) + unicode-display_width (>= 1.1.1, < 4) + thor (1.3.2) + traces (0.15.2) + tzinfo (2.0.6) + concurrent-ruby (~> 1.0) + unicode-display_width (3.1.4) + unicode-emoji (~> 4.0, >= 4.0.4) + unicode-emoji (4.0.4) + uri (1.0.3) + webmock (3.25.1) + addressable (>= 2.8.0) + crack (>= 0.3.2) + hashdiff (>= 0.4.0, < 2.0.0) + webrick (1.9.1) + yard (0.9.37) + yard-sorbet (0.9.0) + sorbet-runtime + yard + +PLATFORMS + x86_64-linux + +DEPENDENCIES + async + minitest + minitest-focus + minitest-hooks + minitest-proveit + minitest-rg + openai! + rake + rbs + redcarpet + rubocop + sorbet + steep + syntax_tree + syntax_tree-rbs! + tapioca + webmock + webrick + yard + +BUNDLED WITH + 2.4.1 diff --git a/Rakefile b/Rakefile index e8317577..db2c83ed 100644 --- a/Rakefile +++ b/Rakefile @@ -11,7 +11,7 @@ require "rubocop/rake_task" tapioca = "sorbet/tapioca" ignore_file = ".ignore" -CLEAN.push(*%w[.idea/ .ruby-lsp/ .yardoc/ doc/ Gemfile.lock], *FileList["*.gem"], ignore_file) +CLEAN.push(*%w[.idea/ .ruby-lsp/ .yardoc/ doc/], *FileList["*.gem"], ignore_file) CLOBBER.push(*%w[sorbet/rbi/annotations/ sorbet/rbi/gems/], tapioca) diff --git a/scripts/bootstrap b/scripts/bootstrap index 9bf05537..cc31aa85 100755 --- a/scripts/bootstrap +++ b/scripts/bootstrap @@ -13,5 +13,4 @@ fi echo "==> Installing Ruby dependencies…" -rm -fr -v -- Gemfile.lock exec -- bundle install "$@" From 3d51f780bcedad3ca4ff5f7823af97f891a5f85e Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Wed, 7 May 2025 14:10:17 +0000 Subject: [PATCH 45/47] fix(internal): ensure formatting always uses c.utf-8 locale --- .rubocop.yml | 10 + README.md | 10 +- Rakefile | 27 +- lib/openai.rb | 1 + lib/openai/file_part.rb | 4 +- lib/openai/internal/type/enum.rb | 8 +- .../internal/type/request_parameters.rb | 8 +- lib/openai/internal/type/union.rb | 8 +- lib/openai/internal/util.rb | 2 +- lib/openai/models/all_models.rb | 6 +- .../models/audio/speech_create_params.rb | 49 +- lib/openai/models/audio/transcription.rb | 9 +- .../audio/transcription_create_params.rb | 38 +- .../audio/transcription_create_response.rb | 6 +- .../models/audio/transcription_segment.rb | 5 +- .../audio/transcription_stream_event.rb | 6 +- .../audio/transcription_text_delta_event.rb | 21 +- .../audio/transcription_text_done_event.rb | 21 +- .../models/audio/transcription_verbose.rb | 12 +- .../models/audio/translation_create_params.rb | 21 +- .../audio/translation_create_response.rb | 6 +- .../models/audio/translation_verbose.rb | 6 +- lib/openai/models/batch.rb | 34 +- lib/openai/models/batch_create_params.rb | 18 +- lib/openai/models/batch_list_params.rb | 2 - lib/openai/models/beta/assistant.rb | 60 +- .../models/beta/assistant_create_params.rb | 124 +- .../models/beta/assistant_list_params.rb | 10 +- .../beta/assistant_response_format_option.rb | 8 +- .../models/beta/assistant_stream_event.rb | 290 +++-- lib/openai/models/beta/assistant_tool.rb | 8 +- .../models/beta/assistant_tool_choice.rb | 14 +- .../beta/assistant_tool_choice_option.rb | 6 +- .../models/beta/assistant_update_params.rb | 143 ++- lib/openai/models/beta/file_search_tool.rb | 33 +- lib/openai/models/beta/function_tool.rb | 6 +- .../models/beta/message_stream_event.rb | 65 +- .../models/beta/run_step_stream_event.rb | 83 +- lib/openai/models/beta/run_stream_event.rb | 114 +- lib/openai/models/beta/thread.rb | 37 +- .../beta/thread_create_and_run_params.rb | 255 ++-- .../models/beta/thread_create_params.rb | 144 +-- lib/openai/models/beta/thread_stream_event.rb | 9 +- .../models/beta/thread_update_params.rb | 35 +- lib/openai/models/beta/threads/annotation.rb | 6 +- .../models/beta/threads/annotation_delta.rb | 6 +- .../beta/threads/file_citation_annotation.rb | 8 +- .../threads/file_citation_delta_annotation.rb | 8 +- .../beta/threads/file_path_annotation.rb | 8 +- .../threads/file_path_delta_annotation.rb | 8 +- lib/openai/models/beta/threads/image_file.rb | 12 +- .../beta/threads/image_file_content_block.rb | 6 +- .../models/beta/threads/image_file_delta.rb | 12 +- .../beta/threads/image_file_delta_block.rb | 6 +- lib/openai/models/beta/threads/image_url.rb | 12 +- .../beta/threads/image_url_content_block.rb | 6 +- .../models/beta/threads/image_url_delta.rb | 12 +- .../beta/threads/image_url_delta_block.rb | 6 +- lib/openai/models/beta/threads/message.rb | 70 +- .../models/beta/threads/message_content.rb | 10 +- .../beta/threads/message_content_delta.rb | 10 +- .../threads/message_content_part_param.rb | 8 +- .../beta/threads/message_create_params.rb | 44 +- .../models/beta/threads/message_delta.rb | 14 +- .../beta/threads/message_delta_event.rb | 6 +- .../beta/threads/message_list_params.rb | 12 +- .../beta/threads/message_update_params.rb | 2 +- .../required_action_function_tool_call.rb | 13 +- lib/openai/models/beta/threads/run.rb | 131 +-- .../models/beta/threads/run_create_params.rb | 139 ++- .../models/beta/threads/run_list_params.rb | 10 +- .../threads/run_submit_tool_outputs_params.rb | 11 +- .../models/beta/threads/run_update_params.rb | 2 +- .../runs/code_interpreter_output_image.rb | 13 +- .../runs/code_interpreter_tool_call.rb | 49 +- .../runs/code_interpreter_tool_call_delta.rb | 31 +- .../threads/runs/file_search_tool_call.rb | 65 +- .../runs/file_search_tool_call_delta.rb | 3 +- .../beta/threads/runs/function_tool_call.rb | 15 +- .../threads/runs/function_tool_call_delta.rb | 15 +- .../runs/message_creation_step_details.rb | 8 +- .../models/beta/threads/runs/run_step.rb | 65 +- .../beta/threads/runs/run_step_delta.rb | 14 +- .../beta/threads/runs/run_step_delta_event.rb | 6 +- .../runs/run_step_delta_message_delta.rb | 10 +- .../beta/threads/runs/step_list_params.rb | 17 +- .../beta/threads/runs/step_retrieve_params.rb | 7 +- .../models/beta/threads/runs/tool_call.rb | 8 +- .../beta/threads/runs/tool_call_delta.rb | 8 +- .../threads/runs/tool_call_delta_object.rb | 9 +- .../threads/runs/tool_calls_step_details.rb | 11 +- lib/openai/models/beta/threads/text.rb | 8 +- .../models/beta/threads/text_content_block.rb | 6 +- lib/openai/models/beta/threads/text_delta.rb | 6 +- .../models/beta/threads/text_delta_block.rb | 6 +- lib/openai/models/chat/chat_completion.rb | 62 +- ...chat_completion_assistant_message_param.rb | 63 +- .../models/chat/chat_completion_audio.rb | 6 +- .../chat/chat_completion_audio_param.rb | 40 +- .../models/chat/chat_completion_chunk.rb | 121 +- .../chat/chat_completion_content_part.rb | 26 +- .../chat_completion_content_part_image.rb | 20 +- ...hat_completion_content_part_input_audio.rb | 18 +- ...chat_completion_developer_message_param.rb | 19 +- .../models/chat/chat_completion_message.rb | 42 +- .../chat/chat_completion_message_param.rb | 14 +- .../chat/chat_completion_message_tool_call.rb | 12 +- .../chat/chat_completion_named_tool_choice.rb | 8 +- .../chat_completion_prediction_content.rb | 20 +- .../chat/chat_completion_stream_options.rb | 4 +- .../chat_completion_system_message_param.rb | 19 +- .../chat/chat_completion_token_logprob.rb | 15 +- .../models/chat/chat_completion_tool.rb | 6 +- .../chat_completion_tool_choice_option.rb | 6 +- .../chat_completion_tool_message_param.rb | 16 +- .../chat_completion_user_message_param.rb | 17 +- .../models/chat/completion_create_params.rb | 183 ++- .../models/chat/completion_list_params.rb | 9 +- .../models/chat/completion_update_params.rb | 2 +- .../chat/completions/message_list_params.rb | 7 +- lib/openai/models/comparison_filter.rb | 17 +- lib/openai/models/completion.rb | 17 +- lib/openai/models/completion_choice.rb | 21 +- lib/openai/models/completion_create_params.rb | 51 +- lib/openai/models/completion_usage.rb | 22 +- lib/openai/models/compound_filter.rb | 23 +- .../models/create_embedding_response.rb | 14 +- lib/openai/models/embedding.rb | 5 +- lib/openai/models/embedding_create_params.rb | 29 +- lib/openai/models/eval_create_params.rb | 151 +-- lib/openai/models/eval_create_response.rb | 40 +- .../models/eval_custom_data_source_config.rb | 4 +- lib/openai/models/eval_label_model_grader.rb | 45 +- lib/openai/models/eval_list_params.rb | 13 +- lib/openai/models/eval_list_response.rb | 40 +- lib/openai/models/eval_retrieve_response.rb | 40 +- ...l_stored_completions_data_source_config.rb | 6 +- lib/openai/models/eval_string_check_grader.rb | 8 +- .../models/eval_text_similarity_grader.rb | 11 +- lib/openai/models/eval_update_params.rb | 2 +- lib/openai/models/eval_update_response.rb | 40 +- ...create_eval_completions_run_data_source.rb | 132 ++- .../create_eval_jsonl_run_data_source.rb | 22 +- .../models/evals/run_cancel_response.rb | 51 +- lib/openai/models/evals/run_create_params.rb | 175 +-- .../models/evals/run_create_response.rb | 51 +- lib/openai/models/evals/run_list_params.rb | 14 +- lib/openai/models/evals/run_list_response.rb | 51 +- .../models/evals/run_retrieve_response.rb | 51 +- .../evals/runs/output_item_list_params.rb | 13 +- .../evals/runs/output_item_list_response.rb | 6 +- .../runs/output_item_retrieve_response.rb | 6 +- lib/openai/models/file_chunking_strategy.rb | 6 +- .../models/file_chunking_strategy_param.rb | 6 +- lib/openai/models/file_create_params.rb | 9 +- lib/openai/models/file_list_params.rb | 9 +- lib/openai/models/file_object.rb | 23 +- .../checkpoints/permission_retrieve_params.rb | 6 +- .../models/fine_tuning/fine_tuning_job.rb | 173 ++- .../fine_tuning/fine_tuning_job_event.rb | 16 +- .../fine_tuning_job_wandb_integration.rb | 7 +- ...ine_tuning_job_wandb_integration_object.rb | 10 +- .../models/fine_tuning/job_create_params.rb | 179 ++- .../models/fine_tuning/job_list_params.rb | 1 - .../jobs/fine_tuning_job_checkpoint.rb | 8 +- lib/openai/models/function_definition.rb | 6 +- lib/openai/models/image.rb | 6 +- .../models/image_create_variation_params.rb | 29 +- lib/openai/models/image_edit_params.rb | 47 +- lib/openai/models/image_generate_params.rb | 62 +- lib/openai/models/images_response.rb | 27 +- lib/openai/models/moderation.rb | 145 +-- lib/openai/models/moderation_create_params.rb | 25 +- .../models/moderation_create_response.rb | 6 +- .../models/moderation_image_url_input.rb | 8 +- .../models/moderation_multi_modal_input.rb | 6 +- lib/openai/models/reasoning.rb | 26 +- .../models/response_format_json_schema.rb | 20 +- lib/openai/models/responses/computer_tool.rb | 8 +- .../models/responses/easy_input_message.rb | 30 +- .../models/responses/file_search_tool.rb | 36 +- lib/openai/models/responses/function_tool.rb | 3 +- .../responses/input_item_list_params.rb | 19 +- lib/openai/models/responses/response.rb | 118 +- .../responses/response_audio_delta_event.rb | 6 +- .../responses/response_audio_done_event.rb | 4 +- .../response_audio_transcript_delta_event.rb | 6 +- .../response_audio_transcript_done_event.rb | 4 +- ..._code_interpreter_call_code_delta_event.rb | 9 +- ...e_code_interpreter_call_code_done_event.rb | 9 +- ...e_code_interpreter_call_completed_event.rb | 13 +- ...code_interpreter_call_in_progress_event.rb | 12 +- ...ode_interpreter_call_interpreting_event.rb | 14 +- .../response_code_interpreter_tool_call.rb | 60 +- .../responses/response_completed_event.rb | 10 +- .../responses/response_computer_tool_call.rb | 152 ++- ...response_computer_tool_call_output_item.rb | 31 +- ...se_computer_tool_call_output_screenshot.rb | 5 +- .../models/responses/response_content.rb | 12 +- .../response_content_part_added_event.rb | 24 +- .../response_content_part_done_event.rb | 24 +- .../responses/response_create_params.rb | 83 +- .../responses/response_created_event.rb | 10 +- lib/openai/models/responses/response_error.rb | 12 +- .../models/responses/response_error_event.rb | 10 +- .../models/responses/response_failed_event.rb | 10 +- ...sponse_file_search_call_completed_event.rb | 9 +- ...onse_file_search_call_in_progress_event.rb | 9 +- ...sponse_file_search_call_searching_event.rb | 9 +- .../response_file_search_tool_call.rb | 41 +- .../responses/response_format_text_config.rb | 8 +- ...response_format_text_json_schema_config.rb | 11 +- ...nse_function_call_arguments_delta_event.rb | 9 +- .../responses/response_function_tool_call.rb | 20 +- .../response_function_tool_call_item.rb | 4 +- ...response_function_tool_call_output_item.rb | 19 +- .../responses/response_function_web_search.rb | 14 +- .../responses/response_in_progress_event.rb | 10 +- .../responses/response_incomplete_event.rb | 10 +- lib/openai/models/responses/response_input.rb | 3 +- .../models/responses/response_input_audio.rb | 14 +- .../responses/response_input_content.rb | 8 +- .../models/responses/response_input_file.rb | 4 +- .../models/responses/response_input_image.rb | 12 +- .../models/responses/response_input_item.rb | 106 +- .../response_input_message_content_list.rb | 2 +- .../responses/response_input_message_item.rb | 36 +- lib/openai/models/responses/response_item.rb | 18 +- .../models/responses/response_item_list.rb | 6 +- .../models/responses/response_output_audio.rb | 8 +- .../models/responses/response_output_item.rb | 14 +- .../response_output_item_added_event.rb | 12 +- .../response_output_item_done_event.rb | 12 +- .../responses/response_output_message.rb | 30 +- .../models/responses/response_output_text.rb | 25 +- .../responses/response_reasoning_item.rb | 28 +- ...onse_reasoning_summary_part_added_event.rb | 19 +- ...ponse_reasoning_summary_part_done_event.rb | 19 +- ...onse_reasoning_summary_text_delta_event.rb | 13 +- ...ponse_reasoning_summary_text_done_event.rb | 13 +- .../responses/response_refusal_delta_event.rb | 12 +- .../responses/response_refusal_done_event.rb | 12 +- .../responses/response_retrieve_params.rb | 7 +- .../models/responses/response_stream_event.rb | 77 +- .../response_text_annotation_delta_event.rb | 42 +- .../models/responses/response_text_config.rb | 8 +- .../responses/response_text_delta_event.rb | 12 +- .../responses/response_text_done_event.rb | 12 +- lib/openai/models/responses/response_usage.rb | 20 +- ...esponse_web_search_call_completed_event.rb | 9 +- ...ponse_web_search_call_in_progress_event.rb | 9 +- ...esponse_web_search_call_searching_event.rb | 9 +- lib/openai/models/responses/tool.rb | 10 +- .../models/responses/tool_choice_types.rb | 10 +- .../models/responses/web_search_tool.rb | 32 +- lib/openai/models/responses_model.rb | 6 +- .../models/static_file_chunking_strategy.rb | 4 +- .../static_file_chunking_strategy_object.rb | 6 +- ...tic_file_chunking_strategy_object_param.rb | 6 +- lib/openai/models/upload.rb | 19 +- lib/openai/models/upload_complete_params.rb | 3 +- lib/openai/models/upload_create_params.rb | 12 +- .../models/uploads/part_create_params.rb | 2 +- lib/openai/models/vector_store.rb | 34 +- .../models/vector_store_create_params.rb | 19 +- lib/openai/models/vector_store_list_params.rb | 10 +- .../models/vector_store_search_params.rb | 31 +- .../models/vector_store_search_response.rb | 2 +- .../models/vector_store_update_params.rb | 11 +- .../vector_stores/file_batch_create_params.rb | 14 +- .../file_batch_list_files_params.rb | 17 +- .../vector_stores/file_create_params.rb | 14 +- .../models/vector_stores/file_list_params.rb | 17 +- .../vector_stores/file_update_params.rb | 6 +- .../models/vector_stores/vector_store_file.rb | 42 +- .../vector_stores/vector_store_file_batch.rb | 21 +- lib/openai/resources/audio/speech.rb | 13 +- lib/openai/resources/audio/transcriptions.rb | 40 +- lib/openai/resources/audio/translations.rb | 13 +- lib/openai/resources/batches.rb | 38 +- lib/openai/resources/beta/assistants.rb | 78 +- lib/openai/resources/beta/threads.rb | 101 +- lib/openai/resources/beta/threads/messages.rb | 50 +- lib/openai/resources/beta/threads/runs.rb | 123 +- .../resources/beta/threads/runs/steps.rb | 24 +- lib/openai/resources/chat/completions.rb | 153 ++- .../resources/chat/completions/messages.rb | 9 +- lib/openai/resources/completions.rb | 62 +- lib/openai/resources/embeddings.rb | 15 +- lib/openai/resources/evals.rb | 19 +- lib/openai/resources/evals/runs.rb | 20 +- .../resources/evals/runs/output_items.rb | 11 +- lib/openai/resources/files.rb | 30 +- .../fine_tuning/checkpoints/permissions.rb | 16 +- lib/openai/resources/fine_tuning/jobs.rb | 49 +- .../resources/fine_tuning/jobs/checkpoints.rb | 8 +- lib/openai/resources/images.rb | 74 +- lib/openai/resources/models.rb | 12 +- lib/openai/resources/moderations.rb | 7 +- lib/openai/resources/responses.rb | 86 +- lib/openai/resources/responses/input_items.rb | 16 +- lib/openai/resources/uploads.rb | 37 +- lib/openai/resources/uploads/parts.rb | 10 +- lib/openai/resources/vector_stores.rb | 51 +- .../resources/vector_stores/file_batches.rb | 41 +- lib/openai/resources/vector_stores/files.rb | 50 +- rbi/openai/client.rbi | 9 +- rbi/openai/errors.rbi | 51 +- rbi/openai/file_part.rbi | 15 +- rbi/openai/internal/cursor_page.rbi | 3 +- rbi/openai/internal/page.rbi | 3 +- rbi/openai/internal/stream.rbi | 6 +- rbi/openai/internal/transport/base_client.rbi | 234 ++-- .../transport/pooled_net_requester.rbi | 38 +- rbi/openai/internal/type/array_of.rbi | 58 +- rbi/openai/internal/type/base_model.rbi | 189 +-- rbi/openai/internal/type/base_page.rbi | 21 +- rbi/openai/internal/type/base_stream.rbi | 33 +- rbi/openai/internal/type/boolean.rbi | 30 +- rbi/openai/internal/type/converter.rbi | 92 +- rbi/openai/internal/type/enum.rbi | 42 +- rbi/openai/internal/type/file_input.rbi | 22 +- rbi/openai/internal/type/hash_of.rbi | 58 +- .../internal/type/request_parameters.rbi | 16 +- rbi/openai/internal/type/union.rbi | 78 +- rbi/openai/internal/type/unknown.rbi | 27 +- rbi/openai/internal/util.rbi | 301 +++-- rbi/openai/models.rbi | 15 +- rbi/openai/models/all_models.rbi | 47 +- .../models/audio/speech_create_params.rbi | 212 +++- rbi/openai/models/audio/speech_model.rbi | 17 +- rbi/openai/models/audio/transcription.rbi | 56 +- .../audio/transcription_create_params.rbi | 131 ++- .../audio/transcription_create_response.rbi | 19 +- .../models/audio/transcription_include.rbi | 15 +- .../models/audio/transcription_segment.rbi | 41 +- .../audio/transcription_stream_event.rbi | 18 +- .../audio/transcription_text_delta_event.rbi | 69 +- .../audio/transcription_text_done_event.rbi | 69 +- .../models/audio/transcription_verbose.rbi | 50 +- .../models/audio/transcription_word.rbi | 17 +- rbi/openai/models/audio/translation.rbi | 10 +- .../audio/translation_create_params.rbi | 117 +- .../audio/translation_create_response.rbi | 14 +- .../models/audio/translation_verbose.rbi | 35 +- rbi/openai/models/audio_model.rbi | 15 +- rbi/openai/models/audio_response_format.rbi | 20 +- .../auto_file_chunking_strategy_param.rbi | 11 +- rbi/openai/models/batch.rbi | 127 +- rbi/openai/models/batch_cancel_params.rbi | 19 +- rbi/openai/models/batch_create_params.rbi | 98 +- rbi/openai/models/batch_error.rbi | 26 +- rbi/openai/models/batch_list_params.rbi | 24 +- rbi/openai/models/batch_request_counts.rbi | 21 +- rbi/openai/models/batch_retrieve_params.rbi | 19 +- rbi/openai/models/beta/assistant.rbi | 204 ++-- .../models/beta/assistant_create_params.rbi | 462 +++++--- .../models/beta/assistant_delete_params.rbi | 19 +- rbi/openai/models/beta/assistant_deleted.rbi | 18 +- .../models/beta/assistant_list_params.rbi | 63 +- .../beta/assistant_response_format_option.rbi | 20 +- .../models/beta/assistant_retrieve_params.rbi | 19 +- .../models/beta/assistant_stream_event.rbi | 668 ++++++++--- rbi/openai/models/beta/assistant_tool.rbi | 17 +- .../models/beta/assistant_tool_choice.rbi | 70 +- .../beta/assistant_tool_choice_function.rbi | 11 +- .../beta/assistant_tool_choice_option.rbi | 52 +- .../models/beta/assistant_update_params.rbi | 489 +++++--- .../models/beta/code_interpreter_tool.rbi | 11 +- rbi/openai/models/beta/file_search_tool.rbi | 140 ++- rbi/openai/models/beta/function_tool.rbi | 25 +- .../models/beta/message_stream_event.rbi | 150 ++- .../models/beta/run_step_stream_event.rbi | 213 +++- rbi/openai/models/beta/run_stream_event.rbi | 284 +++-- rbi/openai/models/beta/thread.rbi | 126 +- .../beta/thread_create_and_run_params.rbi | 1033 ++++++++++------- .../models/beta/thread_create_params.rbi | 610 ++++++---- .../models/beta/thread_delete_params.rbi | 19 +- rbi/openai/models/beta/thread_deleted.rbi | 18 +- .../models/beta/thread_retrieve_params.rbi | 19 +- .../models/beta/thread_stream_event.rbi | 24 +- .../models/beta/thread_update_params.rbi | 136 ++- rbi/openai/models/beta/threads/annotation.rbi | 18 +- .../models/beta/threads/annotation_delta.rbi | 18 +- .../beta/threads/file_citation_annotation.rbi | 58 +- .../file_citation_delta_annotation.rbi | 68 +- .../beta/threads/file_path_annotation.rbi | 55 +- .../threads/file_path_delta_annotation.rbi | 64 +- rbi/openai/models/beta/threads/image_file.rbi | 69 +- .../beta/threads/image_file_content_block.rbi | 27 +- .../models/beta/threads/image_file_delta.rbi | 73 +- .../beta/threads/image_file_delta_block.rbi | 31 +- rbi/openai/models/beta/threads/image_url.rbi | 66 +- .../beta/threads/image_url_content_block.rbi | 28 +- .../models/beta/threads/image_url_delta.rbi | 72 +- .../beta/threads/image_url_delta_block.rbi | 31 +- rbi/openai/models/beta/threads/message.rbi | 350 ++++-- .../models/beta/threads/message_content.rbi | 20 +- .../beta/threads/message_content_delta.rbi | 20 +- .../threads/message_content_part_param.rbi | 19 +- .../beta/threads/message_create_params.rbi | 261 +++-- .../beta/threads/message_delete_params.rbi | 23 +- .../models/beta/threads/message_deleted.rbi | 21 +- .../models/beta/threads/message_delta.rbi | 124 +- .../beta/threads/message_delta_event.rbi | 31 +- .../beta/threads/message_list_params.rbi | 81 +- .../beta/threads/message_retrieve_params.rbi | 23 +- .../beta/threads/message_update_params.rbi | 30 +- .../beta/threads/refusal_content_block.rbi | 16 +- .../beta/threads/refusal_delta_block.rbi | 20 +- .../required_action_function_tool_call.rbi | 56 +- rbi/openai/models/beta/threads/run.rbi | 518 ++++++--- .../models/beta/threads/run_cancel_params.rbi | 23 +- .../models/beta/threads/run_create_params.rbi | 562 +++++---- .../models/beta/threads/run_list_params.rbi | 76 +- .../beta/threads/run_retrieve_params.rbi | 23 +- rbi/openai/models/beta/threads/run_status.rbi | 42 +- .../run_submit_tool_outputs_params.rbi | 64 +- .../models/beta/threads/run_update_params.rbi | 30 +- .../threads/runs/code_interpreter_logs.rbi | 20 +- .../runs/code_interpreter_output_image.rbi | 54 +- .../runs/code_interpreter_tool_call.rbi | 197 ++-- .../runs/code_interpreter_tool_call_delta.rbi | 140 ++- .../threads/runs/file_search_tool_call.rbi | 304 +++-- .../runs/file_search_tool_call_delta.rbi | 21 +- .../beta/threads/runs/function_tool_call.rbi | 60 +- .../threads/runs/function_tool_call_delta.rbi | 70 +- .../runs/message_creation_step_details.rbi | 60 +- .../models/beta/threads/runs/run_step.rbi | 297 +++-- .../beta/threads/runs/run_step_delta.rbi | 76 +- .../threads/runs/run_step_delta_event.rbi | 33 +- .../runs/run_step_delta_message_delta.rbi | 62 +- .../beta/threads/runs/run_step_include.rbi | 18 +- .../beta/threads/runs/step_list_params.rbi | 115 +- .../threads/runs/step_retrieve_params.rbi | 59 +- .../models/beta/threads/runs/tool_call.rbi | 19 +- .../beta/threads/runs/tool_call_delta.rbi | 19 +- .../threads/runs/tool_call_delta_object.rbi | 74 +- .../threads/runs/tool_calls_step_details.rbi | 55 +- rbi/openai/models/beta/threads/text.rbi | 49 +- .../beta/threads/text_content_block.rbi | 26 +- .../beta/threads/text_content_block_param.rbi | 12 +- rbi/openai/models/beta/threads/text_delta.rbi | 66 +- .../models/beta/threads/text_delta_block.rbi | 29 +- rbi/openai/models/chat/chat_completion.rbi | 258 ++-- ...hat_completion_assistant_message_param.rbi | 226 ++-- .../models/chat/chat_completion_audio.rbi | 27 +- .../chat/chat_completion_audio_param.rbi | 190 ++- .../models/chat/chat_completion_chunk.rbi | 544 ++++++--- .../chat/chat_completion_content_part.rbi | 75 +- .../chat_completion_content_part_image.rbi | 107 +- ...at_completion_content_part_input_audio.rbi | 104 +- .../chat_completion_content_part_refusal.rbi | 11 +- .../chat_completion_content_part_text.rbi | 11 +- .../models/chat/chat_completion_deleted.rbi | 19 +- ...hat_completion_developer_message_param.rbi | 72 +- .../chat_completion_function_call_option.rbi | 11 +- ...chat_completion_function_message_param.rbi | 26 +- .../models/chat/chat_completion_message.rbi | 165 ++- .../chat/chat_completion_message_param.rbi | 22 +- .../chat_completion_message_tool_call.rbi | 50 +- .../models/chat/chat_completion_modality.rbi | 17 +- .../chat_completion_named_tool_choice.rbi | 44 +- .../chat_completion_prediction_content.rbi | 64 +- .../models/chat/chat_completion_role.rbi | 27 +- .../chat/chat_completion_store_message.rbi | 11 +- .../chat/chat_completion_stream_options.rbi | 11 +- .../chat_completion_system_message_param.rbi | 69 +- .../chat/chat_completion_token_logprob.rbi | 61 +- .../models/chat/chat_completion_tool.rbi | 25 +- .../chat_completion_tool_choice_option.rbi | 52 +- .../chat_completion_tool_message_param.rbi | 69 +- .../chat_completion_user_message_param.rbi | 107 +- .../models/chat/completion_create_params.rbi | 705 +++++++---- .../models/chat/completion_delete_params.rbi | 19 +- .../models/chat/completion_list_params.rbi | 72 +- .../chat/completion_retrieve_params.rbi | 19 +- .../models/chat/completion_update_params.rbi | 14 +- .../chat/completions/message_list_params.rbi | 81 +- rbi/openai/models/chat_model.rbi | 154 ++- rbi/openai/models/comparison_filter.rbi | 60 +- rbi/openai/models/completion.rbi | 45 +- rbi/openai/models/completion_choice.rbi | 99 +- .../models/completion_create_params.rbi | 186 ++- rbi/openai/models/completion_usage.rbi | 104 +- rbi/openai/models/compound_filter.rbi | 57 +- .../models/create_embedding_response.rbi | 58 +- rbi/openai/models/embedding.rbi | 23 +- rbi/openai/models/embedding_create_params.rbi | 156 ++- rbi/openai/models/embedding_model.rbi | 16 +- rbi/openai/models/error_object.rbi | 25 +- rbi/openai/models/eval_create_params.rbi | 678 +++++++---- rbi/openai/models/eval_create_response.rbi | 351 ++++-- .../models/eval_custom_data_source_config.rbi | 19 +- rbi/openai/models/eval_delete_params.rbi | 19 +- rbi/openai/models/eval_delete_response.rbi | 20 +- rbi/openai/models/eval_label_model_grader.rbi | 190 ++- rbi/openai/models/eval_list_params.rbi | 79 +- rbi/openai/models/eval_list_response.rbi | 361 ++++-- rbi/openai/models/eval_retrieve_params.rbi | 19 +- rbi/openai/models/eval_retrieve_response.rbi | 350 ++++-- ..._stored_completions_data_source_config.rbi | 25 +- .../models/eval_string_check_grader.rbi | 59 +- .../models/eval_text_similarity_grader.rbi | 116 +- rbi/openai/models/eval_update_params.rbi | 29 +- rbi/openai/models/eval_update_response.rbi | 351 ++++-- ...reate_eval_completions_run_data_source.rbi | 556 +++++---- .../create_eval_jsonl_run_data_source.rbi | 139 ++- rbi/openai/models/evals/eval_api_error.rbi | 11 +- rbi/openai/models/evals/run_cancel_params.rbi | 20 +- .../models/evals/run_cancel_response.rbi | 743 +++++++----- rbi/openai/models/evals/run_create_params.rbi | 665 +++++++---- .../models/evals/run_create_response.rbi | 743 +++++++----- rbi/openai/models/evals/run_delete_params.rbi | 20 +- .../models/evals/run_delete_response.rbi | 22 +- rbi/openai/models/evals/run_list_params.rbi | 104 +- rbi/openai/models/evals/run_list_response.rbi | 741 +++++++----- .../models/evals/run_retrieve_params.rbi | 20 +- .../models/evals/run_retrieve_response.rbi | 747 +++++++----- .../evals/runs/output_item_list_params.rbi | 128 +- .../evals/runs/output_item_list_response.rbi | 214 ++-- .../runs/output_item_retrieve_params.rbi | 24 +- .../runs/output_item_retrieve_response.rbi | 216 ++-- rbi/openai/models/file_chunking_strategy.rbi | 14 +- .../models/file_chunking_strategy_param.rbi | 16 +- rbi/openai/models/file_content_params.rbi | 19 +- rbi/openai/models/file_create_params.rbi | 33 +- rbi/openai/models/file_delete_params.rbi | 19 +- rbi/openai/models/file_deleted.rbi | 18 +- rbi/openai/models/file_list_params.rbi | 55 +- rbi/openai/models/file_object.rbi | 94 +- rbi/openai/models/file_purpose.rbi | 19 +- rbi/openai/models/file_retrieve_params.rbi | 19 +- .../checkpoints/permission_create_params.rbi | 24 +- .../permission_create_response.rbi | 21 +- .../checkpoints/permission_delete_params.rbi | 21 +- .../permission_delete_response.rbi | 22 +- .../permission_retrieve_params.rbi | 80 +- .../permission_retrieve_response.rbi | 79 +- .../models/fine_tuning/fine_tuning_job.rbi | 598 +++++++--- .../fine_tuning/fine_tuning_job_event.rbi | 120 +- .../fine_tuning_job_integration.rbi | 3 +- .../fine_tuning_job_wandb_integration.rbi | 32 +- ...ne_tuning_job_wandb_integration_object.rbi | 33 +- .../models/fine_tuning/job_cancel_params.rbi | 19 +- .../models/fine_tuning/job_create_params.rbi | 626 +++++++--- .../fine_tuning/job_list_events_params.rbi | 24 +- .../models/fine_tuning/job_list_params.rbi | 31 +- .../fine_tuning/job_retrieve_params.rbi | 19 +- .../jobs/checkpoint_list_params.rbi | 25 +- .../jobs/fine_tuning_job_checkpoint.rbi | 86 +- rbi/openai/models/function_definition.rbi | 29 +- rbi/openai/models/image.rbi | 21 +- .../models/image_create_variation_params.rbi | 135 ++- rbi/openai/models/image_edit_params.rbi | 205 ++-- rbi/openai/models/image_generate_params.rbi | 286 +++-- rbi/openai/models/image_model.rbi | 13 +- rbi/openai/models/images_response.rbi | 96 +- rbi/openai/models/metadata.rbi | 6 +- rbi/openai/models/model.rbi | 24 +- rbi/openai/models/model_delete_params.rbi | 19 +- rbi/openai/models/model_deleted.rbi | 18 +- rbi/openai/models/model_list_params.rbi | 19 +- rbi/openai/models/model_retrieve_params.rbi | 19 +- rbi/openai/models/moderation.rbi | 737 +++++++++--- .../models/moderation_create_params.rbi | 122 +- .../models/moderation_create_response.rbi | 22 +- .../models/moderation_image_url_input.rbi | 37 +- rbi/openai/models/moderation_model.rbi | 21 +- .../models/moderation_multi_modal_input.rbi | 12 +- rbi/openai/models/moderation_text_input.rbi | 11 +- .../other_file_chunking_strategy_object.rbi | 11 +- rbi/openai/models/reasoning.rbi | 77 +- rbi/openai/models/reasoning_effort.rbi | 13 +- .../models/response_format_json_object.rbi | 11 +- .../models/response_format_json_schema.rbi | 59 +- rbi/openai/models/response_format_text.rbi | 11 +- rbi/openai/models/responses/computer_tool.rbi | 80 +- .../models/responses/easy_input_message.rbi | 167 ++- .../models/responses/file_search_tool.rbi | 143 ++- rbi/openai/models/responses/function_tool.rbi | 31 +- .../responses/input_item_list_params.rbi | 92 +- rbi/openai/models/responses/response.rbi | 400 ++++--- .../responses/response_audio_delta_event.rbi | 11 +- .../responses/response_audio_done_event.rbi | 11 +- .../response_audio_transcript_delta_event.rbi | 11 +- .../response_audio_transcript_done_event.rbi | 11 +- ...code_interpreter_call_code_delta_event.rbi | 21 +- ..._code_interpreter_call_code_done_event.rbi | 21 +- ..._code_interpreter_call_completed_event.rbi | 39 +- ...ode_interpreter_call_in_progress_event.rbi | 39 +- ...de_interpreter_call_interpreting_event.rbi | 39 +- .../response_code_interpreter_tool_call.rbi | 193 ++- .../responses/response_completed_event.rbi | 25 +- .../responses/response_computer_tool_call.rbi | 477 +++++--- ...esponse_computer_tool_call_output_item.rbi | 148 ++- ...e_computer_tool_call_output_screenshot.rbi | 19 +- .../models/responses/response_content.rbi | 21 +- .../response_content_part_added_event.rbi | 68 +- .../response_content_part_done_event.rbi | 68 +- .../responses/response_create_params.rbi | 447 ++++--- .../responses/response_created_event.rbi | 25 +- .../responses/response_delete_params.rbi | 19 +- .../models/responses/response_error.rbi | 136 ++- .../models/responses/response_error_event.rbi | 26 +- .../responses/response_failed_event.rbi | 25 +- ...ponse_file_search_call_completed_event.rbi | 21 +- ...nse_file_search_call_in_progress_event.rbi | 21 +- ...ponse_file_search_call_searching_event.rbi | 21 +- .../response_file_search_tool_call.rbi | 162 ++- .../responses/response_format_text_config.rbi | 19 +- ...esponse_format_text_json_schema_config.rbi | 31 +- ...se_function_call_arguments_delta_event.rbi | 20 +- ...nse_function_call_arguments_done_event.rbi | 20 +- .../responses/response_function_tool_call.rbi | 83 +- .../response_function_tool_call_item.rbi | 11 +- ...esponse_function_tool_call_output_item.rbi | 82 +- .../response_function_web_search.rbi | 74 +- .../responses/response_in_progress_event.rbi | 25 +- .../models/responses/response_includable.rbi | 29 +- .../responses/response_incomplete_event.rbi | 25 +- .../models/responses/response_input.rbi | 4 +- .../models/responses/response_input_audio.rbi | 55 +- .../responses/response_input_content.rbi | 19 +- .../models/responses/response_input_file.rbi | 26 +- .../models/responses/response_input_image.rbi | 67 +- .../models/responses/response_input_item.rbi | 500 +++++--- .../response_input_message_content_list.rbi | 4 +- .../responses/response_input_message_item.rbi | 192 ++- .../models/responses/response_input_text.rbi | 11 +- rbi/openai/models/responses/response_item.rbi | 22 +- .../models/responses/response_item_list.rbi | 90 +- .../responses/response_output_audio.rbi | 19 +- .../models/responses/response_output_item.rbi | 22 +- .../response_output_item_added_event.rbi | 70 +- .../response_output_item_done_event.rbi | 70 +- .../responses/response_output_message.rbi | 117 +- .../responses/response_output_refusal.rbi | 11 +- .../models/responses/response_output_text.rbi | 140 ++- .../responses/response_reasoning_item.rbi | 103 +- ...nse_reasoning_summary_part_added_event.rbi | 59 +- ...onse_reasoning_summary_part_done_event.rbi | 59 +- ...nse_reasoning_summary_text_delta_event.rbi | 35 +- ...onse_reasoning_summary_text_done_event.rbi | 35 +- .../response_refusal_delta_event.rbi | 35 +- .../responses/response_refusal_done_event.rbi | 29 +- .../responses/response_retrieve_params.rbi | 42 +- .../models/responses/response_status.rbi | 23 +- .../responses/response_stream_event.rbi | 52 +- .../response_text_annotation_delta_event.rbi | 142 ++- .../models/responses/response_text_config.rbi | 63 +- .../responses/response_text_delta_event.rbi | 35 +- .../responses/response_text_done_event.rbi | 35 +- .../models/responses/response_usage.rbi | 79 +- ...sponse_web_search_call_completed_event.rbi | 21 +- ...onse_web_search_call_in_progress_event.rbi | 21 +- ...sponse_web_search_call_searching_event.rbi | 21 +- rbi/openai/models/responses/tool.rbi | 16 +- .../models/responses/tool_choice_function.rbi | 11 +- .../models/responses/tool_choice_options.rbi | 19 +- .../models/responses/tool_choice_types.rbi | 58 +- .../models/responses/web_search_tool.rbi | 153 ++- rbi/openai/models/responses_model.rbi | 49 +- .../models/static_file_chunking_strategy.rbi | 22 +- .../static_file_chunking_strategy_object.rbi | 25 +- ...ic_file_chunking_strategy_object_param.rbi | 25 +- rbi/openai/models/upload.rbi | 64 +- rbi/openai/models/upload_cancel_params.rbi | 19 +- rbi/openai/models/upload_complete_params.rbi | 22 +- rbi/openai/models/upload_create_params.rbi | 37 +- .../models/uploads/part_create_params.rbi | 25 +- rbi/openai/models/uploads/upload_part.rbi | 27 +- rbi/openai/models/vector_store.rbi | 118 +- .../models/vector_store_create_params.rbi | 87 +- .../models/vector_store_delete_params.rbi | 19 +- rbi/openai/models/vector_store_deleted.rbi | 18 +- .../models/vector_store_list_params.rbi | 55 +- .../models/vector_store_retrieve_params.rbi | 19 +- .../models/vector_store_search_params.rbi | 166 ++- .../models/vector_store_search_response.rbi | 118 +- .../models/vector_store_update_params.rbi | 54 +- .../file_batch_cancel_params.rbi | 19 +- .../file_batch_create_params.rbi | 84 +- .../file_batch_list_files_params.rbi | 144 ++- .../file_batch_retrieve_params.rbi | 19 +- .../vector_stores/file_content_params.rbi | 19 +- .../vector_stores/file_content_response.rbi | 11 +- .../vector_stores/file_create_params.rbi | 84 +- .../vector_stores/file_delete_params.rbi | 19 +- .../models/vector_stores/file_list_params.rbi | 131 ++- .../vector_stores/file_retrieve_params.rbi | 19 +- .../vector_stores/file_update_params.rbi | 50 +- .../vector_stores/vector_store_file.rbi | 224 +++- .../vector_stores/vector_store_file_batch.rbi | 124 +- .../vector_store_file_deleted.rbi | 18 +- rbi/openai/request_options.rbi | 18 +- rbi/openai/resources/audio.rbi | 3 +- rbi/openai/resources/audio/speech.rbi | 20 +- rbi/openai/resources/audio/transcriptions.rbi | 58 +- rbi/openai/resources/audio/translations.rbi | 17 +- rbi/openai/resources/batches.rbi | 50 +- rbi/openai/resources/beta.rbi | 3 +- rbi/openai/resources/beta/assistants.rbi | 141 ++- rbi/openai/resources/beta/threads.rbi | 257 ++-- .../resources/beta/threads/messages.rbi | 87 +- rbi/openai/resources/beta/threads/runs.rbi | 345 +++--- .../resources/beta/threads/runs/steps.rbi | 36 +- rbi/openai/resources/chat.rbi | 3 +- rbi/openai/resources/chat/completions.rbi | 233 ++-- .../resources/chat/completions/messages.rbi | 17 +- rbi/openai/resources/completions.rbi | 51 +- rbi/openai/resources/embeddings.rbi | 25 +- rbi/openai/resources/evals.rbi | 82 +- rbi/openai/resources/evals/runs.rbi | 70 +- .../resources/evals/runs/output_items.rbi | 28 +- rbi/openai/resources/files.rbi | 58 +- rbi/openai/resources/fine_tuning.rbi | 3 +- .../resources/fine_tuning/checkpoints.rbi | 3 +- .../fine_tuning/checkpoints/permissions.rbi | 35 +- rbi/openai/resources/fine_tuning/jobs.rbi | 70 +- .../fine_tuning/jobs/checkpoints.rbi | 14 +- rbi/openai/resources/images.rbi | 85 +- rbi/openai/resources/models.rbi | 34 +- rbi/openai/resources/moderations.rbi | 36 +- rbi/openai/resources/responses.rbi | 315 ++--- .../resources/responses/input_items.rbi | 40 +- rbi/openai/resources/uploads.rbi | 34 +- rbi/openai/resources/uploads/parts.rbi | 12 +- rbi/openai/resources/vector_stores.rbi | 86 +- .../resources/vector_stores/file_batches.rbi | 62 +- rbi/openai/resources/vector_stores/files.rbi | 87 +- .../internal/type/request_parameters.rbs | 4 +- sig/openai/models/all_models.rbs | 6 +- .../models/audio/speech_create_params.rbs | 16 +- sig/openai/models/audio/transcription.rbs | 14 +- .../audio/transcription_create_params.rbs | 16 +- .../audio/transcription_create_response.rbs | 5 +- .../models/audio/transcription_segment.rbs | 2 - .../audio/transcription_stream_event.rbs | 6 +- .../audio/transcription_text_delta_event.rbs | 14 +- .../audio/transcription_text_done_event.rbs | 14 +- .../models/audio/transcription_verbose.rbs | 22 +- .../models/audio/transcription_word.rbs | 2 - sig/openai/models/audio/translation.rbs | 2 - .../audio/translation_create_params.rbs | 4 +- .../audio/translation_create_response.rbs | 5 +- .../models/audio/translation_verbose.rbs | 12 +- .../auto_file_chunking_strategy_param.rbs | 2 - sig/openai/models/batch.rbs | 43 +- sig/openai/models/batch_cancel_params.rbs | 2 - sig/openai/models/batch_create_params.rbs | 2 - sig/openai/models/batch_error.rbs | 2 - sig/openai/models/batch_list_params.rbs | 2 - sig/openai/models/batch_request_counts.rbs | 2 - sig/openai/models/batch_retrieve_params.rbs | 2 - sig/openai/models/beta/assistant.rbs | 34 +- .../models/beta/assistant_create_params.rbs | 76 +- .../models/beta/assistant_delete_params.rbs | 2 - sig/openai/models/beta/assistant_deleted.rbs | 2 - .../models/beta/assistant_list_params.rbs | 2 - .../beta/assistant_response_format_option.rbs | 8 +- .../models/beta/assistant_retrieve_params.rbs | 2 - .../models/beta/assistant_stream_event.rbs | 272 ++--- sig/openai/models/beta/assistant_tool.rbs | 8 +- .../models/beta/assistant_tool_choice.rbs | 20 +- .../beta/assistant_tool_choice_function.rbs | 2 - .../beta/assistant_tool_choice_option.rbs | 8 +- .../models/beta/assistant_update_params.rbs | 71 +- .../models/beta/code_interpreter_tool.rbs | 2 - sig/openai/models/beta/file_search_tool.rbs | 38 +- sig/openai/models/beta/function_tool.rbs | 8 +- .../models/beta/message_stream_event.rbs | 52 +- .../models/beta/run_step_stream_event.rbs | 72 +- sig/openai/models/beta/run_stream_event.rbs | 129 +- sig/openai/models/beta/thread.rbs | 34 +- .../beta/thread_create_and_run_params.rbs | 190 ++- .../models/beta/thread_create_params.rbs | 128 +- .../models/beta/thread_delete_params.rbs | 2 - sig/openai/models/beta/thread_deleted.rbs | 2 - .../models/beta/thread_retrieve_params.rbs | 2 - .../models/beta/thread_stream_event.rbs | 12 +- .../models/beta/thread_update_params.rbs | 34 +- sig/openai/models/beta/threads/annotation.rbs | 6 +- .../models/beta/threads/annotation_delta.rbs | 6 +- .../beta/threads/file_citation_annotation.rbs | 10 +- .../file_citation_delta_annotation.rbs | 14 +- .../beta/threads/file_path_annotation.rbs | 10 +- .../threads/file_path_delta_annotation.rbs | 14 +- sig/openai/models/beta/threads/image_file.rbs | 17 +- .../beta/threads/image_file_content_block.rbs | 11 +- .../models/beta/threads/image_file_delta.rbs | 14 +- .../beta/threads/image_file_delta_block.rbs | 12 +- sig/openai/models/beta/threads/image_url.rbs | 17 +- .../beta/threads/image_url_content_block.rbs | 11 +- .../models/beta/threads/image_url_delta.rbs | 17 +- .../beta/threads/image_url_delta_block.rbs | 12 +- sig/openai/models/beta/threads/message.rbs | 60 +- .../models/beta/threads/message_content.rbs | 10 +- .../beta/threads/message_content_delta.rbs | 10 +- .../threads/message_content_part_param.rbs | 8 +- .../beta/threads/message_create_params.rbs | 30 +- .../beta/threads/message_delete_params.rbs | 2 - .../models/beta/threads/message_deleted.rbs | 2 - .../models/beta/threads/message_delta.rbs | 14 +- .../beta/threads/message_delta_event.rbs | 8 +- .../beta/threads/message_list_params.rbs | 2 - .../beta/threads/message_retrieve_params.rbs | 2 - .../beta/threads/message_update_params.rbs | 2 - .../beta/threads/refusal_content_block.rbs | 2 - .../beta/threads/refusal_delta_block.rbs | 2 - .../required_action_function_tool_call.rbs | 10 +- sig/openai/models/beta/threads/run.rbs | 86 +- .../models/beta/threads/run_cancel_params.rbs | 2 - .../models/beta/threads/run_create_params.rbs | 70 +- .../models/beta/threads/run_list_params.rbs | 2 - .../beta/threads/run_retrieve_params.rbs | 2 - .../run_submit_tool_outputs_params.rbs | 10 +- .../models/beta/threads/run_update_params.rbs | 2 - .../threads/runs/code_interpreter_logs.rbs | 2 - .../runs/code_interpreter_output_image.rbs | 14 +- .../runs/code_interpreter_tool_call.rbs | 34 +- .../runs/code_interpreter_tool_call_delta.rbs | 30 +- .../threads/runs/file_search_tool_call.rbs | 66 +- .../runs/file_search_tool_call_delta.rbs | 2 - .../beta/threads/runs/function_tool_call.rbs | 10 +- .../threads/runs/function_tool_call_delta.rbs | 14 +- .../runs/message_creation_step_details.rbs | 10 +- .../models/beta/threads/runs/run_step.rbs | 54 +- .../beta/threads/runs/run_step_delta.rbs | 18 +- .../threads/runs/run_step_delta_event.rbs | 8 +- .../runs/run_step_delta_message_delta.rbs | 14 +- .../beta/threads/runs/step_list_params.rbs | 2 - .../threads/runs/step_retrieve_params.rbs | 2 - .../models/beta/threads/runs/tool_call.rbs | 8 +- .../beta/threads/runs/tool_call_delta.rbs | 8 +- .../threads/runs/tool_call_delta_object.rbs | 2 - .../threads/runs/tool_calls_step_details.rbs | 2 - sig/openai/models/beta/threads/text.rbs | 2 - .../beta/threads/text_content_block.rbs | 8 +- .../beta/threads/text_content_block_param.rbs | 2 - sig/openai/models/beta/threads/text_delta.rbs | 2 - .../models/beta/threads/text_delta_block.rbs | 12 +- sig/openai/models/chat/chat_completion.rbs | 62 +- ...hat_completion_assistant_message_param.rbs | 44 +- .../models/chat/chat_completion_audio.rbs | 2 - .../chat/chat_completion_audio_param.rbs | 28 +- .../models/chat/chat_completion_chunk.rbs | 120 +- .../chat/chat_completion_content_part.rbs | 20 +- .../chat_completion_content_part_image.rbs | 22 +- ...at_completion_content_part_input_audio.rbs | 18 +- .../chat_completion_content_part_refusal.rbs | 2 - .../chat_completion_content_part_text.rbs | 2 - .../models/chat/chat_completion_deleted.rbs | 2 - ...hat_completion_developer_message_param.rbs | 12 +- .../chat_completion_function_call_option.rbs | 2 - ...chat_completion_function_message_param.rbs | 2 - .../models/chat/chat_completion_message.rbs | 50 +- .../chat/chat_completion_message_param.rbs | 14 +- .../chat_completion_message_tool_call.rbs | 10 +- .../chat_completion_named_tool_choice.rbs | 10 +- .../chat_completion_prediction_content.rbs | 12 +- .../chat/chat_completion_store_message.rbs | 2 - .../chat/chat_completion_stream_options.rbs | 2 - .../chat_completion_system_message_param.rbs | 12 +- .../chat/chat_completion_token_logprob.rbs | 10 +- .../models/chat/chat_completion_tool.rbs | 8 +- .../chat_completion_tool_choice_option.rbs | 8 +- .../chat_completion_tool_message_param.rbs | 12 +- .../chat_completion_user_message_param.rbs | 10 +- .../models/chat/completion_create_params.rbs | 110 +- .../models/chat/completion_delete_params.rbs | 2 - .../models/chat/completion_list_params.rbs | 2 - .../chat/completion_retrieve_params.rbs | 2 - .../models/chat/completion_update_params.rbs | 2 - .../chat/completions/message_list_params.rbs | 2 - sig/openai/models/comparison_filter.rbs | 18 +- sig/openai/models/completion.rbs | 18 +- sig/openai/models/completion_choice.rbs | 18 +- .../models/completion_create_params.rbs | 16 +- sig/openai/models/completion_usage.rbs | 26 +- sig/openai/models/compound_filter.rbs | 20 +- .../models/create_embedding_response.rbs | 16 +- sig/openai/models/embedding.rbs | 2 - sig/openai/models/embedding_create_params.rbs | 6 +- sig/openai/models/error_object.rbs | 2 - sig/openai/models/eval_create_params.rbs | 128 +- sig/openai/models/eval_create_response.rbs | 28 +- .../models/eval_custom_data_source_config.rbs | 2 - sig/openai/models/eval_delete_params.rbs | 2 - sig/openai/models/eval_delete_response.rbs | 2 - sig/openai/models/eval_label_model_grader.rbs | 44 +- sig/openai/models/eval_list_params.rbs | 2 - sig/openai/models/eval_list_response.rbs | 28 +- sig/openai/models/eval_retrieve_params.rbs | 2 - sig/openai/models/eval_retrieve_response.rbs | 28 +- ..._stored_completions_data_source_config.rbs | 2 - .../models/eval_string_check_grader.rbs | 10 +- .../models/eval_text_similarity_grader.rbs | 10 +- sig/openai/models/eval_update_params.rbs | 2 - sig/openai/models/eval_update_response.rbs | 28 +- ...reate_eval_completions_run_data_source.rbs | 118 +- .../create_eval_jsonl_run_data_source.rbs | 26 +- sig/openai/models/evals/eval_api_error.rbs | 2 - sig/openai/models/evals/run_cancel_params.rbs | 2 - .../models/evals/run_cancel_response.rbs | 52 +- sig/openai/models/evals/run_create_params.rbs | 130 +-- .../models/evals/run_create_response.rbs | 52 +- sig/openai/models/evals/run_delete_params.rbs | 2 - .../models/evals/run_delete_response.rbs | 2 - sig/openai/models/evals/run_list_params.rbs | 2 - sig/openai/models/evals/run_list_response.rbs | 52 +- .../models/evals/run_retrieve_params.rbs | 2 - .../models/evals/run_retrieve_response.rbs | 52 +- .../evals/runs/output_item_list_params.rbs | 2 - .../evals/runs/output_item_list_response.rbs | 16 +- .../runs/output_item_retrieve_params.rbs | 2 - .../runs/output_item_retrieve_response.rbs | 16 +- sig/openai/models/file_chunking_strategy.rbs | 6 +- .../models/file_chunking_strategy_param.rbs | 6 +- sig/openai/models/file_content_params.rbs | 2 - sig/openai/models/file_create_params.rbs | 2 - sig/openai/models/file_delete_params.rbs | 2 - sig/openai/models/file_deleted.rbs | 2 - sig/openai/models/file_list_params.rbs | 2 - sig/openai/models/file_object.rbs | 18 +- sig/openai/models/file_retrieve_params.rbs | 2 - .../checkpoints/permission_create_params.rbs | 2 - .../permission_create_response.rbs | 2 - .../checkpoints/permission_delete_params.rbs | 2 - .../permission_delete_response.rbs | 2 - .../permission_retrieve_params.rbs | 2 - .../permission_retrieve_response.rbs | 4 - .../models/fine_tuning/fine_tuning_job.rbs | 224 ++-- .../fine_tuning/fine_tuning_job_event.rbs | 22 +- .../fine_tuning_job_wandb_integration.rbs | 2 - ...ne_tuning_job_wandb_integration_object.rbs | 8 +- .../models/fine_tuning/job_cancel_params.rbs | 2 - .../models/fine_tuning/job_create_params.rbs | 227 ++-- .../fine_tuning/job_list_events_params.rbs | 2 - .../models/fine_tuning/job_list_params.rbs | 2 - .../fine_tuning/job_retrieve_params.rbs | 2 - .../jobs/checkpoint_list_params.rbs | 2 - .../jobs/fine_tuning_job_checkpoint.rbs | 10 +- sig/openai/models/function_definition.rbs | 2 - sig/openai/models/image.rbs | 2 - .../models/image_create_variation_params.rbs | 4 +- sig/openai/models/image_edit_params.rbs | 6 +- sig/openai/models/image_generate_params.rbs | 4 +- sig/openai/models/images_response.rbs | 32 +- sig/openai/models/model.rbs | 2 - sig/openai/models/model_delete_params.rbs | 2 - sig/openai/models/model_deleted.rbs | 2 - sig/openai/models/model_list_params.rbs | 2 - sig/openai/models/model_retrieve_params.rbs | 2 - sig/openai/models/moderation.rbs | 130 +-- .../models/moderation_create_params.rbs | 6 +- .../models/moderation_create_response.rbs | 12 +- .../models/moderation_image_url_input.rbs | 13 +- .../models/moderation_multi_modal_input.rbs | 5 +- sig/openai/models/moderation_text_input.rbs | 2 - .../other_file_chunking_strategy_object.rbs | 2 - sig/openai/models/reasoning.rbs | 18 +- .../models/response_format_json_object.rbs | 2 - .../models/response_format_json_schema.rbs | 10 +- sig/openai/models/response_format_text.rbs | 2 - sig/openai/models/responses/computer_tool.rbs | 10 +- .../models/responses/easy_input_message.rbs | 30 +- .../models/responses/file_search_tool.rbs | 37 +- sig/openai/models/responses/function_tool.rbs | 2 - .../responses/input_item_list_params.rbs | 2 - sig/openai/models/responses/response.rbs | 84 +- .../responses/response_audio_delta_event.rbs | 2 - .../responses/response_audio_done_event.rbs | 2 - .../response_audio_transcript_delta_event.rbs | 2 - .../response_audio_transcript_done_event.rbs | 2 - ...code_interpreter_call_code_delta_event.rbs | 2 - ..._code_interpreter_call_code_done_event.rbs | 2 - ..._code_interpreter_call_completed_event.rbs | 8 +- ...ode_interpreter_call_in_progress_event.rbs | 8 +- ...de_interpreter_call_interpreting_event.rbs | 8 +- .../response_code_interpreter_tool_call.rbs | 34 +- .../responses/response_completed_event.rbs | 11 +- .../responses/response_computer_tool_call.rbs | 86 +- ...esponse_computer_tool_call_output_item.rbs | 32 +- ...e_computer_tool_call_output_screenshot.rbs | 2 - .../models/responses/response_content.rbs | 12 +- .../response_content_part_added_event.rbs | 14 +- .../response_content_part_done_event.rbs | 14 +- .../responses/response_create_params.rbs | 26 +- .../responses/response_created_event.rbs | 11 +- .../responses/response_delete_params.rbs | 2 - .../models/responses/response_error.rbs | 13 +- .../models/responses/response_error_event.rbs | 2 - .../responses/response_failed_event.rbs | 11 +- ...ponse_file_search_call_completed_event.rbs | 2 - ...nse_file_search_call_in_progress_event.rbs | 2 - ...ponse_file_search_call_searching_event.rbs | 2 - .../response_file_search_tool_call.rbs | 26 +- .../responses/response_format_text_config.rbs | 8 +- ...esponse_format_text_json_schema_config.rbs | 2 - ...se_function_call_arguments_delta_event.rbs | 2 - ...nse_function_call_arguments_done_event.rbs | 2 - .../responses/response_function_tool_call.rbs | 14 +- .../response_function_tool_call_item.rbs | 2 - ...esponse_function_tool_call_output_item.rbs | 14 +- .../response_function_web_search.rbs | 10 +- .../responses/response_in_progress_event.rbs | 11 +- .../responses/response_incomplete_event.rbs | 11 +- .../models/responses/response_input_audio.rbs | 10 +- .../responses/response_input_content.rbs | 8 +- .../models/responses/response_input_file.rbs | 2 - .../models/responses/response_input_image.rbs | 10 +- .../models/responses/response_input_item.rbs | 102 +- .../responses/response_input_message_item.rbs | 34 +- .../models/responses/response_input_text.rbs | 2 - sig/openai/models/responses/response_item.rbs | 18 +- .../models/responses/response_item_list.rbs | 2 - .../responses/response_output_audio.rbs | 2 - .../models/responses/response_output_item.rbs | 14 +- .../response_output_item_added_event.rbs | 2 - .../response_output_item_done_event.rbs | 2 - .../responses/response_output_message.rbs | 22 +- .../responses/response_output_refusal.rbs | 2 - .../models/responses/response_output_text.rbs | 22 +- .../responses/response_reasoning_item.rbs | 22 +- ...nse_reasoning_summary_part_added_event.rbs | 10 +- ...onse_reasoning_summary_part_done_event.rbs | 10 +- ...nse_reasoning_summary_text_delta_event.rbs | 2 - ...onse_reasoning_summary_text_done_event.rbs | 2 - .../response_refusal_delta_event.rbs | 2 - .../responses/response_refusal_done_event.rbs | 2 - .../responses/response_retrieve_params.rbs | 2 - .../responses/response_stream_event.rbs | 74 +- .../response_text_annotation_delta_event.rbs | 22 +- .../models/responses/response_text_config.rbs | 2 - .../responses/response_text_delta_event.rbs | 2 - .../responses/response_text_done_event.rbs | 2 - .../models/responses/response_usage.rbs | 18 +- ...sponse_web_search_call_completed_event.rbs | 2 - ...onse_web_search_call_in_progress_event.rbs | 2 - ...sponse_web_search_call_searching_event.rbs | 2 - sig/openai/models/responses/tool.rbs | 10 +- .../models/responses/tool_choice_function.rbs | 2 - .../models/responses/tool_choice_types.rbs | 10 +- .../models/responses/web_search_tool.rbs | 30 +- sig/openai/models/responses_model.rbs | 6 +- .../models/static_file_chunking_strategy.rbs | 2 - .../static_file_chunking_strategy_object.rbs | 8 +- ...ic_file_chunking_strategy_object_param.rbs | 8 +- sig/openai/models/upload.rbs | 16 +- sig/openai/models/upload_cancel_params.rbs | 2 - sig/openai/models/upload_complete_params.rbs | 2 - sig/openai/models/upload_create_params.rbs | 2 - .../models/uploads/part_create_params.rbs | 2 - sig/openai/models/uploads/upload_part.rbs | 2 - sig/openai/models/vector_store.rbs | 30 +- .../models/vector_store_create_params.rbs | 14 +- .../models/vector_store_delete_params.rbs | 2 - sig/openai/models/vector_store_deleted.rbs | 2 - .../models/vector_store_list_params.rbs | 2 - .../models/vector_store_retrieve_params.rbs | 2 - .../models/vector_store_search_params.rbs | 33 +- .../models/vector_store_search_response.rbs | 6 +- .../models/vector_store_update_params.rbs | 10 +- .../file_batch_cancel_params.rbs | 2 - .../file_batch_create_params.rbs | 10 +- .../file_batch_list_files_params.rbs | 2 - .../file_batch_retrieve_params.rbs | 2 - .../vector_stores/file_content_params.rbs | 2 - .../vector_stores/file_content_response.rbs | 2 - .../vector_stores/file_create_params.rbs | 10 +- .../vector_stores/file_delete_params.rbs | 2 - .../models/vector_stores/file_list_params.rbs | 2 - .../vector_stores/file_retrieve_params.rbs | 2 - .../vector_stores/file_update_params.rbs | 10 +- .../vector_stores/vector_store_file.rbs | 34 +- .../vector_stores/vector_store_file_batch.rbs | 18 +- .../vector_store_file_deleted.rbs | 2 - sig/openai/request_options.rbs | 2 +- sig/openai/resources/audio/transcriptions.rbs | 4 +- sig/openai/resources/batches.rbs | 8 +- sig/openai/resources/beta/assistants.rbs | 14 +- sig/openai/resources/beta/threads.rbs | 28 +- .../resources/beta/threads/messages.rbs | 12 +- sig/openai/resources/beta/threads/runs.rbs | 24 +- .../resources/beta/threads/runs/steps.rbs | 4 +- sig/openai/resources/chat/completions.rbs | 40 +- .../resources/chat/completions/messages.rbs | 2 +- sig/openai/resources/completions.rbs | 8 +- sig/openai/resources/embeddings.rbs | 2 +- sig/openai/resources/evals.rbs | 2 +- sig/openai/resources/files.rbs | 8 +- sig/openai/resources/fine_tuning/jobs.rbs | 16 +- .../fine_tuning/jobs/checkpoints.rbs | 2 +- sig/openai/resources/images.rbs | 6 +- sig/openai/resources/models.rbs | 6 +- sig/openai/resources/responses.rbs | 12 +- sig/openai/resources/uploads.rbs | 6 +- sig/openai/resources/uploads/parts.rbs | 2 +- sig/openai/resources/vector_stores.rbs | 16 +- .../resources/vector_stores/file_batches.rbs | 10 +- sig/openai/resources/vector_stores/files.rbs | 14 +- .../resources/audio/transcriptions_test.rb | 4 +- .../resources/audio/translations_test.rb | 4 +- test/openai/resources/batches_test.rb | 32 +- test/openai/resources/beta/assistants_test.rb | 34 +- .../resources/beta/threads/messages_test.rb | 50 +- .../resources/beta/threads/runs/steps_test.rb | 24 +- .../resources/beta/threads/runs_test.rb | 120 +- test/openai/resources/beta/threads_test.rb | 34 +- .../chat/completions/messages_test.rb | 2 +- .../openai/resources/chat/completions_test.rb | 34 +- test/openai/resources/completions_test.rb | 6 +- test/openai/resources/embeddings_test.rb | 6 +- test/openai/resources/evals/runs_test.rb | 8 +- test/openai/resources/files_test.rb | 20 +- .../fine_tuning/jobs/checkpoints_test.rb | 4 +- .../openai/resources/fine_tuning/jobs_test.rb | 54 +- test/openai/resources/images_test.rb | 18 +- test/openai/resources/models_test.rb | 6 +- test/openai/resources/moderations_test.rb | 2 +- .../resources/responses/input_items_test.rb | 48 +- test/openai/resources/responses_test.rb | 52 +- test/openai/resources/uploads/parts_test.rb | 2 +- test/openai/resources/uploads_test.rb | 18 +- .../vector_stores/file_batches_test.rb | 28 +- .../resources/vector_stores/files_test.rb | 42 +- test/openai/resources/vector_stores_test.rb | 34 +- 1128 files changed, 33173 insertions(+), 21914 deletions(-) diff --git a/.rubocop.yml b/.rubocop.yml index 31cb6f26..788074d1 100644 --- a/.rubocop.yml +++ b/.rubocop.yml @@ -63,6 +63,8 @@ Layout/MultilineMethodParameterLineBreaks: # Prefer compact hash literals. Layout/SpaceInsideHashLiteralBraces: EnforcedStyle: no_space + Exclude: + - "**/*.rbi" Lint/BooleanSymbol: Enabled: false @@ -90,6 +92,10 @@ Lint/MissingSuper: Exclude: - "**/*.rbi" +Lint/SymbolConversion: + Exclude: + - "**/*.rbi" + # Disabled for safety reasons, this option changes code semantics. Lint/UnusedMethodArgument: AutoCorrect: false @@ -244,6 +250,10 @@ Style/RedundantInitialize: Exclude: - "**/*.rbi" +Style/RedundantParentheses: + Exclude: + - "**/*.rbi" + # Prefer slashes for regex literals. Style/RegexpLiteral: EnforcedStyle: slashes diff --git a/README.md b/README.md index 9a98df76..fd62b4fa 100644 --- a/README.md +++ b/README.md @@ -48,7 +48,7 @@ When using sorbet, it is recommended to use model classes as below. This provide ```ruby openai.chat.completions.create( - messages: [OpenAI::Models::Chat::ChatCompletionUserMessageParam.new(role: "user", content: "Say this is a test")], + messages: [OpenAI::Chat::ChatCompletionUserMessageParam.new(role: "user", content: "Say this is a test")], model: :"gpt-4.1" ) ``` @@ -189,7 +189,7 @@ In all places where a `BaseModel` type is specified, vanilla Ruby `Hash` can als ```ruby # This has tooling readability, for auto-completion, static analysis, and goto definition with supported language services params = OpenAI::Models::Chat::CompletionCreateParams.new( - messages: [OpenAI::Models::Chat::ChatCompletionUserMessageParam.new(role: "user", content: "Say this is a test")], + messages: [OpenAI::Chat::ChatCompletionUserMessageParam.new(role: "user", content: "Say this is a test")], model: :"gpt-4.1" ) @@ -245,9 +245,9 @@ Sorbet's typed enums require sub-classing of the [`T::Enum` class](https://sorbe Since this library does not depend on `sorbet-runtime`, it uses a [`T.all` intersection type](https://sorbet.org/docs/intersection-types) with a ruby primitive type to construct a "tagged alias" instead. ```ruby -module OpenAI::Models::ChatModel +module OpenAI::ChatModel # This alias aids language service driven navigation. - TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::ChatModel) } + TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::ChatModel) } end ``` @@ -257,7 +257,7 @@ It is possible to pass a compatible model / parameter class to a method that exp ```ruby params = OpenAI::Models::Chat::CompletionCreateParams.new( - messages: [OpenAI::Models::Chat::ChatCompletionUserMessageParam.new(role: "user", content: "Say this is a test")], + messages: [OpenAI::Chat::ChatCompletionUserMessageParam.new(role: "user", content: "Say this is a test")], model: :"gpt-4.1" ) openai.chat.completions.create(**params) diff --git a/Rakefile b/Rakefile index db2c83ed..8361a8b9 100644 --- a/Rakefile +++ b/Rakefile @@ -34,11 +34,13 @@ multitask(:test) do ruby(*%w[-w -e], rb, verbose: false) { fail unless _1 } end -rubo_find = %w[find ./lib ./test ./rbi -type f -and ( -name *.rb -or -name *.rbi ) -print0] xargs = %w[xargs --no-run-if-empty --null --max-procs=0 --max-args=300 --] +locale = {"LC_ALL" => "C.UTF-8"} desc("Lint `*.rb(i)`") multitask(:"lint:rubocop") do + find = %w[find ./lib ./test ./rbi -type f -and ( -name *.rb -or -name *.rbi ) -print0] + rubocop = %w[rubocop --fail-level E] rubocop += %w[--format github] if ENV.key?("CI") @@ -46,17 +48,26 @@ multitask(:"lint:rubocop") do rubocop += %w[--except Lint/RedundantCopDisableDirective,Layout/LineLength] lint = xargs + rubocop - sh("#{rubo_find.shelljoin} | #{lint.shelljoin}") + sh("#{find.shelljoin} | #{lint.shelljoin}") end -desc("Format `*.rb(i)`") -multitask(:"format:rubocop") do +desc("Format `*.rb`") +multitask(:"format:rb") do + # while `syntax_tree` is much faster than `rubocop`, `rubocop` is the only formatter with full syntax support + find = %w[find ./lib ./test -type f -and -name *.rb -print0] fmt = xargs + %w[rubocop --fail-level F --autocorrect --format simple --] - sh("#{rubo_find.shelljoin} | #{fmt.shelljoin}") + sh("#{find.shelljoin} | #{fmt.shelljoin}") +end + +desc("Format `*.rbi`") +multitask(:"format:rbi") do + find = %w[find ./rbi -type f -and -name *.rbi -print0] + fmt = xargs + %w[stree write --] + sh(locale, "#{find.shelljoin} | #{fmt.shelljoin}") end desc("Format `*.rbs`") -multitask(:"format:syntax_tree") do +multitask(:"format:rbs") do find = %w[find ./sig -type f -name *.rbs -print0] inplace = /darwin|bsd/ =~ RUBY_PLATFORM ? ["-i", ""] : %w[-i] uuid = SecureRandom.uuid @@ -88,7 +99,7 @@ multitask(:"format:syntax_tree") do # transform class aliases to type aliases, which syntax tree has no trouble with sh("#{find.shelljoin} | #{pre.shelljoin}") # run syntax tree to format `*.rbs` files - sh("#{find.shelljoin} | #{fmt.shelljoin}") do + sh(locale, "#{find.shelljoin} | #{fmt.shelljoin}") do success = _1 end # transform type aliases back to class aliases @@ -99,7 +110,7 @@ multitask(:"format:syntax_tree") do end desc("Format everything") -multitask(format: [:"format:rubocop", :"format:syntax_tree"]) +multitask(format: [:"format:rb", :"format:rbi", :"format:rbs"]) desc("Typecheck `*.rbs`") multitask(:"typecheck:steep") do diff --git a/lib/openai.rb b/lib/openai.rb index 4623a8dc..cbef9cd5 100644 --- a/lib/openai.rb +++ b/lib/openai.rb @@ -428,6 +428,7 @@ require_relative "openai/models/vector_store_search_params" require_relative "openai/models/vector_store_search_response" require_relative "openai/models/vector_store_update_params" +require_relative "openai/models" require_relative "openai/resources/audio" require_relative "openai/resources/audio/speech" require_relative "openai/resources/audio/transcriptions" diff --git a/lib/openai/file_part.rb b/lib/openai/file_part.rb index d2a3f6a5..f853ca4d 100644 --- a/lib/openai/file_part.rb +++ b/lib/openai/file_part.rb @@ -45,9 +45,9 @@ def initialize(content, filename: nil, content_type: nil) @filename = case content in Pathname - filename.nil? ? content.basename.to_path : File.basename(filename) + filename.nil? ? content.basename.to_path : ::File.basename(filename) else - filename.nil? ? nil : File.basename(filename) + filename.nil? ? nil : ::File.basename(filename) end @content_type = content_type end diff --git a/lib/openai/internal/type/enum.rb b/lib/openai/internal/type/enum.rb index 5ceef679..30c8e0c0 100644 --- a/lib/openai/internal/type/enum.rb +++ b/lib/openai/internal/type/enum.rb @@ -17,13 +17,13 @@ module Type # values safely. # # @example - # # `chat_model` is a `OpenAI::Models::ChatModel` + # # `chat_model` is a `OpenAI::ChatModel` # case chat_model - # when OpenAI::Models::ChatModel::GPT_4_1 + # when OpenAI::ChatModel::GPT_4_1 # # ... - # when OpenAI::Models::ChatModel::GPT_4_1_MINI + # when OpenAI::ChatModel::GPT_4_1_MINI # # ... - # when OpenAI::Models::ChatModel::GPT_4_1_NANO + # when OpenAI::ChatModel::GPT_4_1_NANO # # ... # else # puts(chat_model) diff --git a/lib/openai/internal/type/request_parameters.rb b/lib/openai/internal/type/request_parameters.rb index 0a362d38..d2546558 100644 --- a/lib/openai/internal/type/request_parameters.rb +++ b/lib/openai/internal/type/request_parameters.rb @@ -5,10 +5,10 @@ module Internal module Type # @api private module RequestParameters - # @!parse - # # Options to specify HTTP behaviour for this request. - # # @return [OpenAI::RequestOptions, Hash{Symbol=>Object}] - # attr_accessor :request_options + # @!attribute request_options + # Options to specify HTTP behaviour for this request. + # + # @return [OpenAI::RequestOptions, Hash{Symbol=>Object}] # @param mod [Module] def self.included(mod) diff --git a/lib/openai/internal/type/union.rb b/lib/openai/internal/type/union.rb index 3db41ef0..e653de47 100644 --- a/lib/openai/internal/type/union.rb +++ b/lib/openai/internal/type/union.rb @@ -6,13 +6,13 @@ module Type # @api private # # @example - # # `chat_completion_content_part` is a `OpenAI::Models::Chat::ChatCompletionContentPart` + # # `chat_completion_content_part` is a `OpenAI::Chat::ChatCompletionContentPart` # case chat_completion_content_part - # when OpenAI::Models::Chat::ChatCompletionContentPartText + # when OpenAI::Chat::ChatCompletionContentPartText # puts(chat_completion_content_part.text) - # when OpenAI::Models::Chat::ChatCompletionContentPartImage + # when OpenAI::Chat::ChatCompletionContentPartImage # puts(chat_completion_content_part.image_url) - # when OpenAI::Models::Chat::ChatCompletionContentPartInputAudio + # when OpenAI::Chat::ChatCompletionContentPartInputAudio # puts(chat_completion_content_part.input_audio) # else # puts(chat_completion_content_part) diff --git a/lib/openai/internal/util.rb b/lib/openai/internal/util.rb index 74239da5..32f9ae41 100644 --- a/lib/openai/internal/util.rb +++ b/lib/openai/internal/util.rb @@ -535,7 +535,7 @@ class << self filename = ERB::Util.url_encode(val.filename) y << "; filename=\"#{filename}\"" in Pathname | IO - filename = ERB::Util.url_encode(File.basename(val.to_path)) + filename = ERB::Util.url_encode(::File.basename(val.to_path)) y << "; filename=\"#{filename}\"" else end diff --git a/lib/openai/models/all_models.rb b/lib/openai/models/all_models.rb index d79c7182..dd458b9f 100644 --- a/lib/openai/models/all_models.rb +++ b/lib/openai/models/all_models.rb @@ -7,9 +7,9 @@ module AllModels variant String - variant enum: -> { OpenAI::Models::ChatModel } + variant enum: -> { OpenAI::ChatModel } - variant enum: -> { OpenAI::Models::AllModels::ResponsesOnlyModel } + variant enum: -> { OpenAI::AllModels::ResponsesOnlyModel } module ResponsesOnlyModel extend OpenAI::Internal::Type::Enum @@ -24,7 +24,7 @@ module ResponsesOnlyModel end # @!method self.variants - # @return [Array(String, Symbol, OpenAI::Models::ChatModel, Symbol, OpenAI::Models::AllModels::ResponsesOnlyModel)] + # @return [Array(String, Symbol, OpenAI::ChatModel, Symbol, OpenAI::AllModels::ResponsesOnlyModel)] end end end diff --git a/lib/openai/models/audio/speech_create_params.rb b/lib/openai/models/audio/speech_create_params.rb index e17d7ec9..9a2372af 100644 --- a/lib/openai/models/audio/speech_create_params.rb +++ b/lib/openai/models/audio/speech_create_params.rb @@ -18,8 +18,8 @@ class SpeechCreateParams < OpenAI::Internal::Type::BaseModel # One of the available [TTS models](https://platform.openai.com/docs/models#tts): # `tts-1`, `tts-1-hd` or `gpt-4o-mini-tts`. # - # @return [String, Symbol, OpenAI::Models::Audio::SpeechModel] - required :model, union: -> { OpenAI::Models::Audio::SpeechCreateParams::Model } + # @return [String, Symbol, OpenAI::Audio::SpeechModel] + required :model, union: -> { OpenAI::Audio::SpeechCreateParams::Model } # @!attribute voice # The voice to use when generating the audio. Supported voices are `alloy`, `ash`, @@ -27,8 +27,8 @@ class SpeechCreateParams < OpenAI::Internal::Type::BaseModel # `verse`. Previews of the voices are available in the # [Text to speech guide](https://platform.openai.com/docs/guides/text-to-speech#voice-options). # - # @return [String, Symbol, OpenAI::Models::Audio::SpeechCreateParams::Voice] - required :voice, union: -> { OpenAI::Models::Audio::SpeechCreateParams::Voice } + # @return [String, Symbol, OpenAI::Audio::SpeechCreateParams::Voice] + required :voice, union: -> { OpenAI::Audio::SpeechCreateParams::Voice } # @!attribute instructions # Control the voice of your generated audio with additional instructions. Does not @@ -41,8 +41,8 @@ class SpeechCreateParams < OpenAI::Internal::Type::BaseModel # The format to audio in. Supported formats are `mp3`, `opus`, `aac`, `flac`, # `wav`, and `pcm`. # - # @return [Symbol, OpenAI::Models::Audio::SpeechCreateParams::ResponseFormat, nil] - optional :response_format, enum: -> { OpenAI::Models::Audio::SpeechCreateParams::ResponseFormat } + # @return [Symbol, OpenAI::Audio::SpeechCreateParams::ResponseFormat, nil] + optional :response_format, enum: -> { OpenAI::Audio::SpeechCreateParams::ResponseFormat } # @!attribute speed # The speed of the generated audio. Select a value from `0.25` to `4.0`. `1.0` is @@ -57,20 +57,15 @@ class SpeechCreateParams < OpenAI::Internal::Type::BaseModel # # @param input [String] The text to generate audio for. The maximum length is 4096 characters. # - # @param model [String, Symbol, OpenAI::Models::Audio::SpeechModel] One of the available [TTS models](https://platform.openai.com/docs/models#tts): - # ... + # @param model [String, Symbol, OpenAI::Audio::SpeechModel] One of the available [TTS models](https://platform.openai.com/docs/models#tts): # - # @param voice [String, Symbol, OpenAI::Models::Audio::SpeechCreateParams::Voice] The voice to use when generating the audio. Supported voices are `alloy`, `ash`, - # ... + # @param voice [String, Symbol, OpenAI::Audio::SpeechCreateParams::Voice] The voice to use when generating the audio. Supported voices are `alloy`, `ash`, # # @param instructions [String] Control the voice of your generated audio with additional instructions. Does not - # ... # - # @param response_format [Symbol, OpenAI::Models::Audio::SpeechCreateParams::ResponseFormat] The format to audio in. Supported formats are `mp3`, `opus`, `aac`, `flac`, `wav - # ... + # @param response_format [Symbol, OpenAI::Audio::SpeechCreateParams::ResponseFormat] The format to audio in. Supported formats are `mp3`, `opus`, `aac`, `flac`, `wav # # @param speed [Float] The speed of the generated audio. Select a value from `0.25` to `4.0`. `1.0` is - # ... # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] @@ -82,10 +77,10 @@ module Model variant String # One of the available [TTS models](https://platform.openai.com/docs/models#tts): `tts-1`, `tts-1-hd` or `gpt-4o-mini-tts`. - variant enum: -> { OpenAI::Models::Audio::SpeechModel } + variant enum: -> { OpenAI::Audio::SpeechModel } # @!method self.variants - # @return [Array(String, Symbol, OpenAI::Models::Audio::SpeechModel)] + # @return [Array(String, Symbol, OpenAI::Audio::SpeechModel)] end # The voice to use when generating the audio. Supported voices are `alloy`, `ash`, @@ -97,27 +92,27 @@ module Voice variant String - variant const: -> { OpenAI::Models::Audio::SpeechCreateParams::Voice::ALLOY } + variant const: -> { OpenAI::Audio::SpeechCreateParams::Voice::ALLOY } - variant const: -> { OpenAI::Models::Audio::SpeechCreateParams::Voice::ASH } + variant const: -> { OpenAI::Audio::SpeechCreateParams::Voice::ASH } - variant const: -> { OpenAI::Models::Audio::SpeechCreateParams::Voice::BALLAD } + variant const: -> { OpenAI::Audio::SpeechCreateParams::Voice::BALLAD } - variant const: -> { OpenAI::Models::Audio::SpeechCreateParams::Voice::CORAL } + variant const: -> { OpenAI::Audio::SpeechCreateParams::Voice::CORAL } - variant const: -> { OpenAI::Models::Audio::SpeechCreateParams::Voice::ECHO } + variant const: -> { OpenAI::Audio::SpeechCreateParams::Voice::ECHO } - variant const: -> { OpenAI::Models::Audio::SpeechCreateParams::Voice::FABLE } + variant const: -> { OpenAI::Audio::SpeechCreateParams::Voice::FABLE } - variant const: -> { OpenAI::Models::Audio::SpeechCreateParams::Voice::ONYX } + variant const: -> { OpenAI::Audio::SpeechCreateParams::Voice::ONYX } - variant const: -> { OpenAI::Models::Audio::SpeechCreateParams::Voice::NOVA } + variant const: -> { OpenAI::Audio::SpeechCreateParams::Voice::NOVA } - variant const: -> { OpenAI::Models::Audio::SpeechCreateParams::Voice::SAGE } + variant const: -> { OpenAI::Audio::SpeechCreateParams::Voice::SAGE } - variant const: -> { OpenAI::Models::Audio::SpeechCreateParams::Voice::SHIMMER } + variant const: -> { OpenAI::Audio::SpeechCreateParams::Voice::SHIMMER } - variant const: -> { OpenAI::Models::Audio::SpeechCreateParams::Voice::VERSE } + variant const: -> { OpenAI::Audio::SpeechCreateParams::Voice::VERSE } # @!method self.variants # @return [Array(String, Symbol)] diff --git a/lib/openai/models/audio/transcription.rb b/lib/openai/models/audio/transcription.rb index 7f74deeb..cd9c0b2d 100644 --- a/lib/openai/models/audio/transcription.rb +++ b/lib/openai/models/audio/transcription.rb @@ -15,20 +15,19 @@ class Transcription < OpenAI::Internal::Type::BaseModel # models `gpt-4o-transcribe` and `gpt-4o-mini-transcribe` if `logprobs` is added # to the `include` array. # - # @return [Array, nil] - optional :logprobs, -> { OpenAI::Internal::Type::ArrayOf[OpenAI::Models::Audio::Transcription::Logprob] } + # @return [Array, nil] + optional :logprobs, -> { OpenAI::Internal::Type::ArrayOf[OpenAI::Audio::Transcription::Logprob] } # @!method initialize(text:, logprobs: nil) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Audio::Transcription} for more details. + # {OpenAI::Audio::Transcription} for more details. # # Represents a transcription response returned by model, based on the provided # input. # # @param text [String] The transcribed text. # - # @param logprobs [Array] The log probabilities of the tokens in the transcription. Only returned with the - # ... + # @param logprobs [Array] The log probabilities of the tokens in the transcription. Only returned with the class Logprob < OpenAI::Internal::Type::BaseModel # @!attribute token diff --git a/lib/openai/models/audio/transcription_create_params.rb b/lib/openai/models/audio/transcription_create_params.rb index c9efed38..8fabd4b2 100644 --- a/lib/openai/models/audio/transcription_create_params.rb +++ b/lib/openai/models/audio/transcription_create_params.rb @@ -22,8 +22,8 @@ class TranscriptionCreateParams < OpenAI::Internal::Type::BaseModel # `gpt-4o-mini-transcribe`, and `whisper-1` (which is powered by our open source # Whisper V2 model). # - # @return [String, Symbol, OpenAI::Models::AudioModel] - required :model, union: -> { OpenAI::Models::Audio::TranscriptionCreateParams::Model } + # @return [String, Symbol, OpenAI::AudioModel] + required :model, union: -> { OpenAI::Audio::TranscriptionCreateParams::Model } # @!attribute include # Additional information to include in the transcription response. `logprobs` will @@ -32,9 +32,8 @@ class TranscriptionCreateParams < OpenAI::Internal::Type::BaseModel # response_format set to `json` and only with the models `gpt-4o-transcribe` and # `gpt-4o-mini-transcribe`. # - # @return [Array, nil] - optional :include, - -> { OpenAI::Internal::Type::ArrayOf[enum: OpenAI::Models::Audio::TranscriptionInclude] } + # @return [Array, nil] + optional :include, -> { OpenAI::Internal::Type::ArrayOf[enum: OpenAI::Audio::TranscriptionInclude] } # @!attribute language # The language of the input audio. Supplying the input language in @@ -58,8 +57,8 @@ class TranscriptionCreateParams < OpenAI::Internal::Type::BaseModel # `verbose_json`, or `vtt`. For `gpt-4o-transcribe` and `gpt-4o-mini-transcribe`, # the only supported format is `json`. # - # @return [Symbol, OpenAI::Models::AudioResponseFormat, nil] - optional :response_format, enum: -> { OpenAI::Models::AudioResponseFormat } + # @return [Symbol, OpenAI::AudioResponseFormat, nil] + optional :response_format, enum: -> { OpenAI::AudioResponseFormat } # @!attribute temperature # The sampling temperature, between 0 and 1. Higher values like 0.8 will make the @@ -78,36 +77,31 @@ class TranscriptionCreateParams < OpenAI::Internal::Type::BaseModel # is no additional latency for segment timestamps, but generating word timestamps # incurs additional latency. # - # @return [Array, nil] + # @return [Array, nil] optional :timestamp_granularities, - -> { OpenAI::Internal::Type::ArrayOf[enum: OpenAI::Models::Audio::TranscriptionCreateParams::TimestampGranularity] } + -> { + OpenAI::Internal::Type::ArrayOf[enum: OpenAI::Audio::TranscriptionCreateParams::TimestampGranularity] + } # @!method initialize(file:, model:, include: nil, language: nil, prompt: nil, response_format: nil, temperature: nil, timestamp_granularities: nil, request_options: {}) # Some parameter documentations has been truncated, see # {OpenAI::Models::Audio::TranscriptionCreateParams} for more details. # # @param file [Pathname, StringIO, IO, OpenAI::FilePart] The audio file object (not file name) to transcribe, in one of these formats: fl - # ... # - # @param model [String, Symbol, OpenAI::Models::AudioModel] ID of the model to use. The options are `gpt-4o-transcribe`, `gpt-4o-mini-transc - # ... + # @param model [String, Symbol, OpenAI::AudioModel] ID of the model to use. The options are `gpt-4o-transcribe`, `gpt-4o-mini-transc # - # @param include [Array] Additional information to include in the transcription response. ... + # @param include [Array] Additional information to include in the transcription response. # # @param language [String] The language of the input audio. Supplying the input language in [ISO-639-1](htt - # ... # # @param prompt [String] An optional text to guide the model's style or continue a previous audio segment - # ... # - # @param response_format [Symbol, OpenAI::Models::AudioResponseFormat] The format of the output, in one of these options: `json`, `text`, `srt`, `verbo - # ... + # @param response_format [Symbol, OpenAI::AudioResponseFormat] The format of the output, in one of these options: `json`, `text`, `srt`, `verbo # # @param temperature [Float] The sampling temperature, between 0 and 1. Higher values like 0.8 will make the - # ... # - # @param timestamp_granularities [Array] The timestamp granularities to populate for this transcription. `response_format - # ... + # @param timestamp_granularities [Array] The timestamp granularities to populate for this transcription. `response_format # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] @@ -120,10 +114,10 @@ module Model variant String # ID of the model to use. The options are `gpt-4o-transcribe`, `gpt-4o-mini-transcribe`, and `whisper-1` (which is powered by our open source Whisper V2 model). - variant enum: -> { OpenAI::Models::AudioModel } + variant enum: -> { OpenAI::AudioModel } # @!method self.variants - # @return [Array(String, Symbol, OpenAI::Models::AudioModel)] + # @return [Array(String, Symbol, OpenAI::AudioModel)] end module TimestampGranularity diff --git a/lib/openai/models/audio/transcription_create_response.rb b/lib/openai/models/audio/transcription_create_response.rb index 52850e6a..ec74e17e 100644 --- a/lib/openai/models/audio/transcription_create_response.rb +++ b/lib/openai/models/audio/transcription_create_response.rb @@ -13,13 +13,13 @@ module TranscriptionCreateResponse extend OpenAI::Internal::Type::Union # Represents a transcription response returned by model, based on the provided input. - variant -> { OpenAI::Models::Audio::Transcription } + variant -> { OpenAI::Audio::Transcription } # Represents a verbose json transcription response returned by model, based on the provided input. - variant -> { OpenAI::Models::Audio::TranscriptionVerbose } + variant -> { OpenAI::Audio::TranscriptionVerbose } # @!method self.variants - # @return [Array(OpenAI::Models::Audio::Transcription, OpenAI::Models::Audio::TranscriptionVerbose)] + # @return [Array(OpenAI::Audio::Transcription, OpenAI::Audio::TranscriptionVerbose)] end end end diff --git a/lib/openai/models/audio/transcription_segment.rb b/lib/openai/models/audio/transcription_segment.rb index 26c61c14..8b7b4416 100644 --- a/lib/openai/models/audio/transcription_segment.rb +++ b/lib/openai/models/audio/transcription_segment.rb @@ -69,20 +69,17 @@ class TranscriptionSegment < OpenAI::Internal::Type::BaseModel # @!method initialize(id:, avg_logprob:, compression_ratio:, end_:, no_speech_prob:, seek:, start:, temperature:, text:, tokens:) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Audio::TranscriptionSegment} for more details. + # {OpenAI::Audio::TranscriptionSegment} for more details. # # @param id [Integer] Unique identifier of the segment. # # @param avg_logprob [Float] Average logprob of the segment. If the value is lower than -1, consider the logp - # ... # # @param compression_ratio [Float] Compression ratio of the segment. If the value is greater than 2.4, consider the - # ... # # @param end_ [Float] End time of the segment in seconds. # # @param no_speech_prob [Float] Probability of no speech in the segment. If the value is higher than 1.0 and the - # ... # # @param seek [Integer] Seek offset of the segment. # diff --git a/lib/openai/models/audio/transcription_stream_event.rb b/lib/openai/models/audio/transcription_stream_event.rb index d4a5f12e..9d386b9b 100644 --- a/lib/openai/models/audio/transcription_stream_event.rb +++ b/lib/openai/models/audio/transcription_stream_event.rb @@ -13,13 +13,13 @@ module TranscriptionStreamEvent discriminator :type # Emitted when there is an additional text delta. This is also the first event emitted when the transcription starts. Only emitted when you [create a transcription](https://platform.openai.com/docs/api-reference/audio/create-transcription) with the `Stream` parameter set to `true`. - variant :"transcript.text.delta", -> { OpenAI::Models::Audio::TranscriptionTextDeltaEvent } + variant :"transcript.text.delta", -> { OpenAI::Audio::TranscriptionTextDeltaEvent } # Emitted when the transcription is complete. Contains the complete transcription text. Only emitted when you [create a transcription](https://platform.openai.com/docs/api-reference/audio/create-transcription) with the `Stream` parameter set to `true`. - variant :"transcript.text.done", -> { OpenAI::Models::Audio::TranscriptionTextDoneEvent } + variant :"transcript.text.done", -> { OpenAI::Audio::TranscriptionTextDoneEvent } # @!method self.variants - # @return [Array(OpenAI::Models::Audio::TranscriptionTextDeltaEvent, OpenAI::Models::Audio::TranscriptionTextDoneEvent)] + # @return [Array(OpenAI::Audio::TranscriptionTextDeltaEvent, OpenAI::Audio::TranscriptionTextDoneEvent)] end end end diff --git a/lib/openai/models/audio/transcription_text_delta_event.rb b/lib/openai/models/audio/transcription_text_delta_event.rb index 774f99c8..58db67b8 100644 --- a/lib/openai/models/audio/transcription_text_delta_event.rb +++ b/lib/openai/models/audio/transcription_text_delta_event.rb @@ -21,25 +21,24 @@ class TranscriptionTextDeltaEvent < OpenAI::Internal::Type::BaseModel # [create a transcription](https://platform.openai.com/docs/api-reference/audio/create-transcription) # with the `include[]` parameter set to `logprobs`. # - # @return [Array, nil] + # @return [Array, nil] optional :logprobs, - -> { OpenAI::Internal::Type::ArrayOf[OpenAI::Models::Audio::TranscriptionTextDeltaEvent::Logprob] } + -> { OpenAI::Internal::Type::ArrayOf[OpenAI::Audio::TranscriptionTextDeltaEvent::Logprob] } # @!method initialize(delta:, logprobs: nil, type: :"transcript.text.delta") # Some parameter documentations has been truncated, see - # {OpenAI::Models::Audio::TranscriptionTextDeltaEvent} for more details. + # {OpenAI::Audio::TranscriptionTextDeltaEvent} for more details. # # Emitted when there is an additional text delta. This is also the first event # emitted when the transcription starts. Only emitted when you # [create a transcription](https://platform.openai.com/docs/api-reference/audio/create-transcription) # with the `Stream` parameter set to `true`. # - # @param delta [String] The text delta that was additionally transcribed. ... + # @param delta [String] The text delta that was additionally transcribed. # - # @param logprobs [Array] The log probabilities of the delta. Only included if you [create a transcription - # ... + # @param logprobs [Array] The log probabilities of the delta. Only included if you [create a transcription # - # @param type [Symbol, :"transcript.text.delta"] The type of the event. Always `transcript.text.delta`. ... + # @param type [Symbol, :"transcript.text.delta"] The type of the event. Always `transcript.text.delta`. class Logprob < OpenAI::Internal::Type::BaseModel # @!attribute token @@ -62,13 +61,13 @@ class Logprob < OpenAI::Internal::Type::BaseModel # @!method initialize(token: nil, bytes: nil, logprob: nil) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Audio::TranscriptionTextDeltaEvent::Logprob} for more details. + # {OpenAI::Audio::TranscriptionTextDeltaEvent::Logprob} for more details. # - # @param token [String] The token that was used to generate the log probability. ... + # @param token [String] The token that was used to generate the log probability. # - # @param bytes [Array] The bytes that were used to generate the log probability. ... + # @param bytes [Array] The bytes that were used to generate the log probability. # - # @param logprob [Float] The log probability of the token. ... + # @param logprob [Float] The log probability of the token. end end end diff --git a/lib/openai/models/audio/transcription_text_done_event.rb b/lib/openai/models/audio/transcription_text_done_event.rb index 99dd1045..2b2eb5b2 100644 --- a/lib/openai/models/audio/transcription_text_done_event.rb +++ b/lib/openai/models/audio/transcription_text_done_event.rb @@ -22,25 +22,24 @@ class TranscriptionTextDoneEvent < OpenAI::Internal::Type::BaseModel # [create a transcription](https://platform.openai.com/docs/api-reference/audio/create-transcription) # with the `include[]` parameter set to `logprobs`. # - # @return [Array, nil] + # @return [Array, nil] optional :logprobs, - -> { OpenAI::Internal::Type::ArrayOf[OpenAI::Models::Audio::TranscriptionTextDoneEvent::Logprob] } + -> { OpenAI::Internal::Type::ArrayOf[OpenAI::Audio::TranscriptionTextDoneEvent::Logprob] } # @!method initialize(text:, logprobs: nil, type: :"transcript.text.done") # Some parameter documentations has been truncated, see - # {OpenAI::Models::Audio::TranscriptionTextDoneEvent} for more details. + # {OpenAI::Audio::TranscriptionTextDoneEvent} for more details. # # Emitted when the transcription is complete. Contains the complete transcription # text. Only emitted when you # [create a transcription](https://platform.openai.com/docs/api-reference/audio/create-transcription) # with the `Stream` parameter set to `true`. # - # @param text [String] The text that was transcribed. ... + # @param text [String] The text that was transcribed. # - # @param logprobs [Array] The log probabilities of the individual tokens in the transcription. Only includ - # ... + # @param logprobs [Array] The log probabilities of the individual tokens in the transcription. Only includ # - # @param type [Symbol, :"transcript.text.done"] The type of the event. Always `transcript.text.done`. ... + # @param type [Symbol, :"transcript.text.done"] The type of the event. Always `transcript.text.done`. class Logprob < OpenAI::Internal::Type::BaseModel # @!attribute token @@ -63,13 +62,13 @@ class Logprob < OpenAI::Internal::Type::BaseModel # @!method initialize(token: nil, bytes: nil, logprob: nil) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Audio::TranscriptionTextDoneEvent::Logprob} for more details. + # {OpenAI::Audio::TranscriptionTextDoneEvent::Logprob} for more details. # - # @param token [String] The token that was used to generate the log probability. ... + # @param token [String] The token that was used to generate the log probability. # - # @param bytes [Array] The bytes that were used to generate the log probability. ... + # @param bytes [Array] The bytes that were used to generate the log probability. # - # @param logprob [Float] The log probability of the token. ... + # @param logprob [Float] The log probability of the token. end end end diff --git a/lib/openai/models/audio/transcription_verbose.rb b/lib/openai/models/audio/transcription_verbose.rb index 361a380c..00cf9ea0 100644 --- a/lib/openai/models/audio/transcription_verbose.rb +++ b/lib/openai/models/audio/transcription_verbose.rb @@ -25,14 +25,14 @@ class TranscriptionVerbose < OpenAI::Internal::Type::BaseModel # @!attribute segments # Segments of the transcribed text and their corresponding details. # - # @return [Array, nil] - optional :segments, -> { OpenAI::Internal::Type::ArrayOf[OpenAI::Models::Audio::TranscriptionSegment] } + # @return [Array, nil] + optional :segments, -> { OpenAI::Internal::Type::ArrayOf[OpenAI::Audio::TranscriptionSegment] } # @!attribute words # Extracted words and their corresponding timestamps. # - # @return [Array, nil] - optional :words, -> { OpenAI::Internal::Type::ArrayOf[OpenAI::Models::Audio::TranscriptionWord] } + # @return [Array, nil] + optional :words, -> { OpenAI::Internal::Type::ArrayOf[OpenAI::Audio::TranscriptionWord] } # @!method initialize(duration:, language:, text:, segments: nil, words: nil) # Represents a verbose json transcription response returned by model, based on the @@ -44,9 +44,9 @@ class TranscriptionVerbose < OpenAI::Internal::Type::BaseModel # # @param text [String] The transcribed text. # - # @param segments [Array] Segments of the transcribed text and their corresponding details. + # @param segments [Array] Segments of the transcribed text and their corresponding details. # - # @param words [Array] Extracted words and their corresponding timestamps. + # @param words [Array] Extracted words and their corresponding timestamps. end end end diff --git a/lib/openai/models/audio/translation_create_params.rb b/lib/openai/models/audio/translation_create_params.rb index d5ab1b8d..ed3107e2 100644 --- a/lib/openai/models/audio/translation_create_params.rb +++ b/lib/openai/models/audio/translation_create_params.rb @@ -19,8 +19,8 @@ class TranslationCreateParams < OpenAI::Internal::Type::BaseModel # ID of the model to use. Only `whisper-1` (which is powered by our open source # Whisper V2 model) is currently available. # - # @return [String, Symbol, OpenAI::Models::AudioModel] - required :model, union: -> { OpenAI::Models::Audio::TranslationCreateParams::Model } + # @return [String, Symbol, OpenAI::AudioModel] + required :model, union: -> { OpenAI::Audio::TranslationCreateParams::Model } # @!attribute prompt # An optional text to guide the model's style or continue a previous audio @@ -35,8 +35,8 @@ class TranslationCreateParams < OpenAI::Internal::Type::BaseModel # The format of the output, in one of these options: `json`, `text`, `srt`, # `verbose_json`, or `vtt`. # - # @return [Symbol, OpenAI::Models::Audio::TranslationCreateParams::ResponseFormat, nil] - optional :response_format, enum: -> { OpenAI::Models::Audio::TranslationCreateParams::ResponseFormat } + # @return [Symbol, OpenAI::Audio::TranslationCreateParams::ResponseFormat, nil] + optional :response_format, enum: -> { OpenAI::Audio::TranslationCreateParams::ResponseFormat } # @!attribute temperature # The sampling temperature, between 0 and 1. Higher values like 0.8 will make the @@ -53,19 +53,14 @@ class TranslationCreateParams < OpenAI::Internal::Type::BaseModel # {OpenAI::Models::Audio::TranslationCreateParams} for more details. # # @param file [Pathname, StringIO, IO, OpenAI::FilePart] The audio file object (not file name) translate, in one of these formats: flac, - # ... # - # @param model [String, Symbol, OpenAI::Models::AudioModel] ID of the model to use. Only `whisper-1` (which is powered by our open source Wh - # ... + # @param model [String, Symbol, OpenAI::AudioModel] ID of the model to use. Only `whisper-1` (which is powered by our open source Wh # # @param prompt [String] An optional text to guide the model's style or continue a previous audio segment - # ... # - # @param response_format [Symbol, OpenAI::Models::Audio::TranslationCreateParams::ResponseFormat] The format of the output, in one of these options: `json`, `text`, `srt`, `verbo - # ... + # @param response_format [Symbol, OpenAI::Audio::TranslationCreateParams::ResponseFormat] The format of the output, in one of these options: `json`, `text`, `srt`, `verbo # # @param temperature [Float] The sampling temperature, between 0 and 1. Higher values like 0.8 will make the - # ... # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] @@ -77,10 +72,10 @@ module Model variant String # ID of the model to use. Only `whisper-1` (which is powered by our open source Whisper V2 model) is currently available. - variant enum: -> { OpenAI::Models::AudioModel } + variant enum: -> { OpenAI::AudioModel } # @!method self.variants - # @return [Array(String, Symbol, OpenAI::Models::AudioModel)] + # @return [Array(String, Symbol, OpenAI::AudioModel)] end # The format of the output, in one of these options: `json`, `text`, `srt`, diff --git a/lib/openai/models/audio/translation_create_response.rb b/lib/openai/models/audio/translation_create_response.rb index 49d7cc9e..f24d4b2b 100644 --- a/lib/openai/models/audio/translation_create_response.rb +++ b/lib/openai/models/audio/translation_create_response.rb @@ -7,12 +7,12 @@ module Audio module TranslationCreateResponse extend OpenAI::Internal::Type::Union - variant -> { OpenAI::Models::Audio::Translation } + variant -> { OpenAI::Audio::Translation } - variant -> { OpenAI::Models::Audio::TranslationVerbose } + variant -> { OpenAI::Audio::TranslationVerbose } # @!method self.variants - # @return [Array(OpenAI::Models::Audio::Translation, OpenAI::Models::Audio::TranslationVerbose)] + # @return [Array(OpenAI::Audio::Translation, OpenAI::Audio::TranslationVerbose)] end end end diff --git a/lib/openai/models/audio/translation_verbose.rb b/lib/openai/models/audio/translation_verbose.rb index 8da3a73b..a237803c 100644 --- a/lib/openai/models/audio/translation_verbose.rb +++ b/lib/openai/models/audio/translation_verbose.rb @@ -25,8 +25,8 @@ class TranslationVerbose < OpenAI::Internal::Type::BaseModel # @!attribute segments # Segments of the translated text and their corresponding details. # - # @return [Array, nil] - optional :segments, -> { OpenAI::Internal::Type::ArrayOf[OpenAI::Models::Audio::TranscriptionSegment] } + # @return [Array, nil] + optional :segments, -> { OpenAI::Internal::Type::ArrayOf[OpenAI::Audio::TranscriptionSegment] } # @!method initialize(duration:, language:, text:, segments: nil) # @param duration [Float] The duration of the input audio. @@ -35,7 +35,7 @@ class TranslationVerbose < OpenAI::Internal::Type::BaseModel # # @param text [String] The translated text. # - # @param segments [Array] Segments of the translated text and their corresponding details. + # @param segments [Array] Segments of the translated text and their corresponding details. end end end diff --git a/lib/openai/models/batch.rb b/lib/openai/models/batch.rb index b2ceaa9b..84f42355 100644 --- a/lib/openai/models/batch.rb +++ b/lib/openai/models/batch.rb @@ -42,8 +42,8 @@ class Batch < OpenAI::Internal::Type::BaseModel # @!attribute status # The current status of the batch. # - # @return [Symbol, OpenAI::Models::Batch::Status] - required :status, enum: -> { OpenAI::Models::Batch::Status } + # @return [Symbol, OpenAI::Batch::Status] + required :status, enum: -> { OpenAI::Batch::Status } # @!attribute cancelled_at # The Unix timestamp (in seconds) for when the batch was cancelled. @@ -71,8 +71,8 @@ class Batch < OpenAI::Internal::Type::BaseModel # @!attribute errors # - # @return [OpenAI::Models::Batch::Errors, nil] - optional :errors, -> { OpenAI::Models::Batch::Errors } + # @return [OpenAI::Batch::Errors, nil] + optional :errors, -> { OpenAI::Batch::Errors } # @!attribute expired_at # The Unix timestamp (in seconds) for when the batch expired. @@ -124,12 +124,12 @@ class Batch < OpenAI::Internal::Type::BaseModel # @!attribute request_counts # The request counts for different statuses within the batch. # - # @return [OpenAI::Models::BatchRequestCounts, nil] - optional :request_counts, -> { OpenAI::Models::BatchRequestCounts } + # @return [OpenAI::BatchRequestCounts, nil] + optional :request_counts, -> { OpenAI::BatchRequestCounts } # @!method initialize(id:, completion_window:, created_at:, endpoint:, input_file_id:, status:, cancelled_at: nil, cancelling_at: nil, completed_at: nil, error_file_id: nil, errors: nil, expired_at: nil, expires_at: nil, failed_at: nil, finalizing_at: nil, in_progress_at: nil, metadata: nil, output_file_id: nil, request_counts: nil, object: :batch) - # Some parameter documentations has been truncated, see {OpenAI::Models::Batch} - # for more details. + # Some parameter documentations has been truncated, see {OpenAI::Batch} for more + # details. # # @param id [String] # @@ -141,7 +141,7 @@ class Batch < OpenAI::Internal::Type::BaseModel # # @param input_file_id [String] The ID of the input file for the batch. # - # @param status [Symbol, OpenAI::Models::Batch::Status] The current status of the batch. + # @param status [Symbol, OpenAI::Batch::Status] The current status of the batch. # # @param cancelled_at [Integer] The Unix timestamp (in seconds) for when the batch was cancelled. # @@ -151,7 +151,7 @@ class Batch < OpenAI::Internal::Type::BaseModel # # @param error_file_id [String] The ID of the file containing the outputs of requests with errors. # - # @param errors [OpenAI::Models::Batch::Errors] + # @param errors [OpenAI::Batch::Errors] # # @param expired_at [Integer] The Unix timestamp (in seconds) for when the batch expired. # @@ -163,17 +163,17 @@ class Batch < OpenAI::Internal::Type::BaseModel # # @param in_progress_at [Integer] The Unix timestamp (in seconds) for when the batch started processing. # - # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be # # @param output_file_id [String] The ID of the file containing the outputs of successfully executed requests. # - # @param request_counts [OpenAI::Models::BatchRequestCounts] The request counts for different statuses within the batch. + # @param request_counts [OpenAI::BatchRequestCounts] The request counts for different statuses within the batch. # # @param object [Symbol, :batch] The object type, which is always `batch`. # The current status of the batch. # - # @see OpenAI::Models::Batch#status + # @see OpenAI::Batch#status module Status extend OpenAI::Internal::Type::Enum @@ -190,12 +190,12 @@ module Status # @return [Array] end - # @see OpenAI::Models::Batch#errors + # @see OpenAI::Batch#errors class Errors < OpenAI::Internal::Type::BaseModel # @!attribute data # - # @return [Array, nil] - optional :data, -> { OpenAI::Internal::Type::ArrayOf[OpenAI::Models::BatchError] } + # @return [Array, nil] + optional :data, -> { OpenAI::Internal::Type::ArrayOf[OpenAI::BatchError] } # @!attribute object # The object type, which is always `list`. @@ -204,7 +204,7 @@ class Errors < OpenAI::Internal::Type::BaseModel optional :object, String # @!method initialize(data: nil, object: nil) - # @param data [Array] + # @param data [Array] # # @param object [String] The object type, which is always `list`. end diff --git a/lib/openai/models/batch_create_params.rb b/lib/openai/models/batch_create_params.rb index e72da75d..ce21fc86 100644 --- a/lib/openai/models/batch_create_params.rb +++ b/lib/openai/models/batch_create_params.rb @@ -11,8 +11,8 @@ class BatchCreateParams < OpenAI::Internal::Type::BaseModel # The time frame within which the batch should be processed. Currently only `24h` # is supported. # - # @return [Symbol, OpenAI::Models::BatchCreateParams::CompletionWindow] - required :completion_window, enum: -> { OpenAI::Models::BatchCreateParams::CompletionWindow } + # @return [Symbol, OpenAI::BatchCreateParams::CompletionWindow] + required :completion_window, enum: -> { OpenAI::BatchCreateParams::CompletionWindow } # @!attribute endpoint # The endpoint to be used for all requests in the batch. Currently @@ -20,8 +20,8 @@ class BatchCreateParams < OpenAI::Internal::Type::BaseModel # are supported. Note that `/v1/embeddings` batches are also restricted to a # maximum of 50,000 embedding inputs across all requests in the batch. # - # @return [Symbol, OpenAI::Models::BatchCreateParams::Endpoint] - required :endpoint, enum: -> { OpenAI::Models::BatchCreateParams::Endpoint } + # @return [Symbol, OpenAI::BatchCreateParams::Endpoint] + required :endpoint, enum: -> { OpenAI::BatchCreateParams::Endpoint } # @!attribute input_file_id # The ID of an uploaded file that contains requests for the new batch. @@ -52,15 +52,13 @@ class BatchCreateParams < OpenAI::Internal::Type::BaseModel # Some parameter documentations has been truncated, see # {OpenAI::Models::BatchCreateParams} for more details. # - # @param completion_window [Symbol, OpenAI::Models::BatchCreateParams::CompletionWindow] The time frame within which the batch should be processed. Currently only `24h` - # ... + # @param completion_window [Symbol, OpenAI::BatchCreateParams::CompletionWindow] The time frame within which the batch should be processed. Currently only `24h` # - # @param endpoint [Symbol, OpenAI::Models::BatchCreateParams::Endpoint] The endpoint to be used for all requests in the batch. Currently `/v1/responses` - # ... + # @param endpoint [Symbol, OpenAI::BatchCreateParams::Endpoint] The endpoint to be used for all requests in the batch. Currently `/v1/responses` # - # @param input_file_id [String] The ID of an uploaded file that contains requests for the new batch. ... + # @param input_file_id [String] The ID of an uploaded file that contains requests for the new batch. # - # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] diff --git a/lib/openai/models/batch_list_params.rb b/lib/openai/models/batch_list_params.rb index f4b386d2..1a01f061 100644 --- a/lib/openai/models/batch_list_params.rb +++ b/lib/openai/models/batch_list_params.rb @@ -28,10 +28,8 @@ class BatchListParams < OpenAI::Internal::Type::BaseModel # {OpenAI::Models::BatchListParams} for more details. # # @param after [String] A cursor for use in pagination. `after` is an object ID that defines your place - # ... # # @param limit [Integer] A limit on the number of objects to be returned. Limit can range between 1 and 1 - # ... # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] end diff --git a/lib/openai/models/beta/assistant.rb b/lib/openai/models/beta/assistant.rb index 1923fa0e..d6aa3ad5 100644 --- a/lib/openai/models/beta/assistant.rb +++ b/lib/openai/models/beta/assistant.rb @@ -68,8 +68,8 @@ class Assistant < OpenAI::Internal::Type::BaseModel # assistant. Tools can be of types `code_interpreter`, `file_search`, or # `function`. # - # @return [Array] - required :tools, -> { OpenAI::Internal::Type::ArrayOf[union: OpenAI::Models::Beta::AssistantTool] } + # @return [Array] + required :tools, -> { OpenAI::Internal::Type::ArrayOf[union: OpenAI::Beta::AssistantTool] } # @!attribute response_format # Specifies the format that the model must output. Compatible with @@ -93,8 +93,8 @@ class Assistant < OpenAI::Internal::Type::BaseModel # indicates the generation exceeded `max_tokens` or the conversation exceeded the # max context length. # - # @return [Symbol, :auto, OpenAI::Models::ResponseFormatText, OpenAI::Models::ResponseFormatJSONObject, OpenAI::Models::ResponseFormatJSONSchema, nil] - optional :response_format, union: -> { OpenAI::Models::Beta::AssistantResponseFormatOption }, nil?: true + # @return [Symbol, :auto, OpenAI::ResponseFormatText, OpenAI::ResponseFormatJSONObject, OpenAI::ResponseFormatJSONSchema, nil] + optional :response_format, union: -> { OpenAI::Beta::AssistantResponseFormatOption }, nil?: true # @!attribute temperature # What sampling temperature to use, between 0 and 2. Higher values like 0.8 will @@ -110,8 +110,8 @@ class Assistant < OpenAI::Internal::Type::BaseModel # a list of file IDs, while the `file_search` tool requires a list of vector store # IDs. # - # @return [OpenAI::Models::Beta::Assistant::ToolResources, nil] - optional :tool_resources, -> { OpenAI::Models::Beta::Assistant::ToolResources }, nil?: true + # @return [OpenAI::Beta::Assistant::ToolResources, nil] + optional :tool_resources, -> { OpenAI::Beta::Assistant::ToolResources }, nil?: true # @!attribute top_p # An alternative to sampling with temperature, called nucleus sampling, where the @@ -124,8 +124,8 @@ class Assistant < OpenAI::Internal::Type::BaseModel optional :top_p, Float, nil?: true # @!method initialize(id:, created_at:, description:, instructions:, metadata:, model:, name:, tools:, response_format: nil, temperature: nil, tool_resources: nil, top_p: nil, object: :assistant) - # Some parameter documentations has been truncated, see - # {OpenAI::Models::Beta::Assistant} for more details. + # Some parameter documentations has been truncated, see {OpenAI::Beta::Assistant} + # for more details. # # Represents an `assistant` that can call the model and use tools. # @@ -133,46 +133,39 @@ class Assistant < OpenAI::Internal::Type::BaseModel # # @param created_at [Integer] The Unix timestamp (in seconds) for when the assistant was created. # - # @param description [String, nil] The description of the assistant. The maximum length is 512 characters. ... + # @param description [String, nil] The description of the assistant. The maximum length is 512 characters. # # @param instructions [String, nil] The system instructions that the assistant uses. The maximum length is 256,000 c - # ... # - # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be # # @param model [String] ID of the model to use. You can use the [List models](https://platform.openai.co - # ... # - # @param name [String, nil] The name of the assistant. The maximum length is 256 characters. ... + # @param name [String, nil] The name of the assistant. The maximum length is 256 characters. # - # @param tools [Array] A list of tool enabled on the assistant. There can be a maximum of 128 tools per - # ... + # @param tools [Array] A list of tool enabled on the assistant. There can be a maximum of 128 tools per # - # @param response_format [Symbol, :auto, OpenAI::Models::ResponseFormatText, OpenAI::Models::ResponseFormatJSONObject, OpenAI::Models::ResponseFormatJSONSchema, nil] Specifies the format that the model must output. Compatible with [GPT-4o](https: - # ... + # @param response_format [Symbol, :auto, OpenAI::ResponseFormatText, OpenAI::ResponseFormatJSONObject, OpenAI::ResponseFormatJSONSchema, nil] Specifies the format that the model must output. Compatible with [GPT-4o](https: # # @param temperature [Float, nil] What sampling temperature to use, between 0 and 2. Higher values like 0.8 will m - # ... # - # @param tool_resources [OpenAI::Models::Beta::Assistant::ToolResources, nil] A set of resources that are used by the assistant's tools. The resources are spe - # ... + # @param tool_resources [OpenAI::Beta::Assistant::ToolResources, nil] A set of resources that are used by the assistant's tools. The resources are spe # # @param top_p [Float, nil] An alternative to sampling with temperature, called nucleus sampling, where the - # ... # # @param object [Symbol, :assistant] The object type, which is always `assistant`. - # @see OpenAI::Models::Beta::Assistant#tool_resources + # @see OpenAI::Beta::Assistant#tool_resources class ToolResources < OpenAI::Internal::Type::BaseModel # @!attribute code_interpreter # - # @return [OpenAI::Models::Beta::Assistant::ToolResources::CodeInterpreter, nil] - optional :code_interpreter, -> { OpenAI::Models::Beta::Assistant::ToolResources::CodeInterpreter } + # @return [OpenAI::Beta::Assistant::ToolResources::CodeInterpreter, nil] + optional :code_interpreter, -> { OpenAI::Beta::Assistant::ToolResources::CodeInterpreter } # @!attribute file_search # - # @return [OpenAI::Models::Beta::Assistant::ToolResources::FileSearch, nil] - optional :file_search, -> { OpenAI::Models::Beta::Assistant::ToolResources::FileSearch } + # @return [OpenAI::Beta::Assistant::ToolResources::FileSearch, nil] + optional :file_search, -> { OpenAI::Beta::Assistant::ToolResources::FileSearch } # @!method initialize(code_interpreter: nil, file_search: nil) # A set of resources that are used by the assistant's tools. The resources are @@ -180,10 +173,10 @@ class ToolResources < OpenAI::Internal::Type::BaseModel # a list of file IDs, while the `file_search` tool requires a list of vector store # IDs. # - # @param code_interpreter [OpenAI::Models::Beta::Assistant::ToolResources::CodeInterpreter] - # @param file_search [OpenAI::Models::Beta::Assistant::ToolResources::FileSearch] + # @param code_interpreter [OpenAI::Beta::Assistant::ToolResources::CodeInterpreter] + # @param file_search [OpenAI::Beta::Assistant::ToolResources::FileSearch] - # @see OpenAI::Models::Beta::Assistant::ToolResources#code_interpreter + # @see OpenAI::Beta::Assistant::ToolResources#code_interpreter class CodeInterpreter < OpenAI::Internal::Type::BaseModel # @!attribute file_ids # A list of [file](https://platform.openai.com/docs/api-reference/files) IDs made @@ -195,14 +188,12 @@ class CodeInterpreter < OpenAI::Internal::Type::BaseModel # @!method initialize(file_ids: nil) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Beta::Assistant::ToolResources::CodeInterpreter} for more - # details. + # {OpenAI::Beta::Assistant::ToolResources::CodeInterpreter} for more details. # # @param file_ids [Array] A list of [file](https://platform.openai.com/docs/api-reference/files) IDs made - # ... end - # @see OpenAI::Models::Beta::Assistant::ToolResources#file_search + # @see OpenAI::Beta::Assistant::ToolResources#file_search class FileSearch < OpenAI::Internal::Type::BaseModel # @!attribute vector_store_ids # The ID of the @@ -215,10 +206,9 @@ class FileSearch < OpenAI::Internal::Type::BaseModel # @!method initialize(vector_store_ids: nil) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Beta::Assistant::ToolResources::FileSearch} for more details. + # {OpenAI::Beta::Assistant::ToolResources::FileSearch} for more details. # # @param vector_store_ids [Array] The ID of the [vector store](https://platform.openai.com/docs/api-reference/vect - # ... end end end diff --git a/lib/openai/models/beta/assistant_create_params.rb b/lib/openai/models/beta/assistant_create_params.rb index 3870f034..f05d1764 100644 --- a/lib/openai/models/beta/assistant_create_params.rb +++ b/lib/openai/models/beta/assistant_create_params.rb @@ -15,8 +15,8 @@ class AssistantCreateParams < OpenAI::Internal::Type::BaseModel # [Model overview](https://platform.openai.com/docs/models) for descriptions of # them. # - # @return [String, Symbol, OpenAI::Models::ChatModel] - required :model, union: -> { OpenAI::Models::Beta::AssistantCreateParams::Model } + # @return [String, Symbol, OpenAI::ChatModel] + required :model, union: -> { OpenAI::Beta::AssistantCreateParams::Model } # @!attribute description # The description of the assistant. The maximum length is 512 characters. @@ -56,8 +56,8 @@ class AssistantCreateParams < OpenAI::Internal::Type::BaseModel # supported values are `low`, `medium`, and `high`. Reducing reasoning effort can # result in faster responses and fewer tokens used on reasoning in a response. # - # @return [Symbol, OpenAI::Models::ReasoningEffort, nil] - optional :reasoning_effort, enum: -> { OpenAI::Models::ReasoningEffort }, nil?: true + # @return [Symbol, OpenAI::ReasoningEffort, nil] + optional :reasoning_effort, enum: -> { OpenAI::ReasoningEffort }, nil?: true # @!attribute response_format # Specifies the format that the model must output. Compatible with @@ -81,8 +81,8 @@ class AssistantCreateParams < OpenAI::Internal::Type::BaseModel # indicates the generation exceeded `max_tokens` or the conversation exceeded the # max context length. # - # @return [Symbol, :auto, OpenAI::Models::ResponseFormatText, OpenAI::Models::ResponseFormatJSONObject, OpenAI::Models::ResponseFormatJSONSchema, nil] - optional :response_format, union: -> { OpenAI::Models::Beta::AssistantResponseFormatOption }, nil?: true + # @return [Symbol, :auto, OpenAI::ResponseFormatText, OpenAI::ResponseFormatJSONObject, OpenAI::ResponseFormatJSONSchema, nil] + optional :response_format, union: -> { OpenAI::Beta::AssistantResponseFormatOption }, nil?: true # @!attribute temperature # What sampling temperature to use, between 0 and 2. Higher values like 0.8 will @@ -98,16 +98,16 @@ class AssistantCreateParams < OpenAI::Internal::Type::BaseModel # a list of file IDs, while the `file_search` tool requires a list of vector store # IDs. # - # @return [OpenAI::Models::Beta::AssistantCreateParams::ToolResources, nil] - optional :tool_resources, -> { OpenAI::Models::Beta::AssistantCreateParams::ToolResources }, nil?: true + # @return [OpenAI::Beta::AssistantCreateParams::ToolResources, nil] + optional :tool_resources, -> { OpenAI::Beta::AssistantCreateParams::ToolResources }, nil?: true # @!attribute 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`, or # `function`. # - # @return [Array, nil] - optional :tools, -> { OpenAI::Internal::Type::ArrayOf[union: OpenAI::Models::Beta::AssistantTool] } + # @return [Array, nil] + optional :tools, -> { OpenAI::Internal::Type::ArrayOf[union: OpenAI::Beta::AssistantTool] } # @!attribute top_p # An alternative to sampling with temperature, called nucleus sampling, where the @@ -123,34 +123,27 @@ class AssistantCreateParams < OpenAI::Internal::Type::BaseModel # Some parameter documentations has been truncated, see # {OpenAI::Models::Beta::AssistantCreateParams} for more details. # - # @param model [String, Symbol, OpenAI::Models::ChatModel] ID of the model to use. You can use the [List models](https://platform.openai.co - # ... + # @param model [String, Symbol, OpenAI::ChatModel] ID of the model to use. You can use the [List models](https://platform.openai.co # - # @param description [String, nil] The description of the assistant. The maximum length is 512 characters. ... + # @param description [String, nil] The description of the assistant. The maximum length is 512 characters. # # @param instructions [String, nil] The system instructions that the assistant uses. The maximum length is 256,000 c - # ... # - # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be # - # @param name [String, nil] The name of the assistant. The maximum length is 256 characters. ... + # @param name [String, nil] The name of the assistant. The maximum length is 256 characters. # - # @param reasoning_effort [Symbol, OpenAI::Models::ReasoningEffort, nil] **o-series models only** ... + # @param reasoning_effort [Symbol, OpenAI::ReasoningEffort, nil] **o-series models only** # - # @param response_format [Symbol, :auto, OpenAI::Models::ResponseFormatText, OpenAI::Models::ResponseFormatJSONObject, OpenAI::Models::ResponseFormatJSONSchema, nil] Specifies the format that the model must output. Compatible with [GPT-4o](https: - # ... + # @param response_format [Symbol, :auto, OpenAI::ResponseFormatText, OpenAI::ResponseFormatJSONObject, OpenAI::ResponseFormatJSONSchema, nil] Specifies the format that the model must output. Compatible with [GPT-4o](https: # # @param temperature [Float, nil] What sampling temperature to use, between 0 and 2. Higher values like 0.8 will m - # ... # - # @param tool_resources [OpenAI::Models::Beta::AssistantCreateParams::ToolResources, nil] A set of resources that are used by the assistant's tools. The resources are spe - # ... + # @param tool_resources [OpenAI::Beta::AssistantCreateParams::ToolResources, nil] A set of resources that are used by the assistant's tools. The resources are spe # - # @param tools [Array] A list of tool enabled on the assistant. There can be a maximum of 128 tools per - # ... + # @param tools [Array] A list of tool enabled on the assistant. There can be a maximum of 128 tools per # # @param top_p [Float, nil] An alternative to sampling with temperature, called nucleus sampling, where the - # ... # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] @@ -165,23 +158,25 @@ module Model variant String # ID of the model to use. You can use the [List models](https://platform.openai.com/docs/api-reference/models/list) API to see all of your available models, or see our [Model overview](https://platform.openai.com/docs/models) for descriptions of them. - variant enum: -> { OpenAI::Models::ChatModel } + variant enum: -> { OpenAI::ChatModel } # @!method self.variants - # @return [Array(String, Symbol, OpenAI::Models::ChatModel)] + # @return [Array(String, Symbol, OpenAI::ChatModel)] end class ToolResources < OpenAI::Internal::Type::BaseModel # @!attribute code_interpreter # - # @return [OpenAI::Models::Beta::AssistantCreateParams::ToolResources::CodeInterpreter, nil] + # @return [OpenAI::Beta::AssistantCreateParams::ToolResources::CodeInterpreter, nil] optional :code_interpreter, - -> { OpenAI::Models::Beta::AssistantCreateParams::ToolResources::CodeInterpreter } + -> { + OpenAI::Beta::AssistantCreateParams::ToolResources::CodeInterpreter + } # @!attribute file_search # - # @return [OpenAI::Models::Beta::AssistantCreateParams::ToolResources::FileSearch, nil] - optional :file_search, -> { OpenAI::Models::Beta::AssistantCreateParams::ToolResources::FileSearch } + # @return [OpenAI::Beta::AssistantCreateParams::ToolResources::FileSearch, nil] + optional :file_search, -> { OpenAI::Beta::AssistantCreateParams::ToolResources::FileSearch } # @!method initialize(code_interpreter: nil, file_search: nil) # A set of resources that are used by the assistant's tools. The resources are @@ -189,10 +184,10 @@ class ToolResources < OpenAI::Internal::Type::BaseModel # a list of file IDs, while the `file_search` tool requires a list of vector store # IDs. # - # @param code_interpreter [OpenAI::Models::Beta::AssistantCreateParams::ToolResources::CodeInterpreter] - # @param file_search [OpenAI::Models::Beta::AssistantCreateParams::ToolResources::FileSearch] + # @param code_interpreter [OpenAI::Beta::AssistantCreateParams::ToolResources::CodeInterpreter] + # @param file_search [OpenAI::Beta::AssistantCreateParams::ToolResources::FileSearch] - # @see OpenAI::Models::Beta::AssistantCreateParams::ToolResources#code_interpreter + # @see OpenAI::Beta::AssistantCreateParams::ToolResources#code_interpreter class CodeInterpreter < OpenAI::Internal::Type::BaseModel # @!attribute file_ids # A list of [file](https://platform.openai.com/docs/api-reference/files) IDs made @@ -204,14 +199,13 @@ class CodeInterpreter < OpenAI::Internal::Type::BaseModel # @!method initialize(file_ids: nil) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Beta::AssistantCreateParams::ToolResources::CodeInterpreter} - # for more details. + # {OpenAI::Beta::AssistantCreateParams::ToolResources::CodeInterpreter} for more + # details. # # @param file_ids [Array] A list of [file](https://platform.openai.com/docs/api-reference/files) IDs made - # ... end - # @see OpenAI::Models::Beta::AssistantCreateParams::ToolResources#file_search + # @see OpenAI::Beta::AssistantCreateParams::ToolResources#file_search class FileSearch < OpenAI::Internal::Type::BaseModel # @!attribute vector_store_ids # The @@ -228,29 +222,31 @@ class FileSearch < OpenAI::Internal::Type::BaseModel # with file_ids and attach it to this assistant. There can be a maximum of 1 # vector store attached to the assistant. # - # @return [Array, nil] + # @return [Array, nil] optional :vector_stores, - -> { OpenAI::Internal::Type::ArrayOf[OpenAI::Models::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore] } + -> { + OpenAI::Internal::Type::ArrayOf[OpenAI::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore] + } # @!method initialize(vector_store_ids: nil, vector_stores: nil) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Beta::AssistantCreateParams::ToolResources::FileSearch} for - # more details. + # {OpenAI::Beta::AssistantCreateParams::ToolResources::FileSearch} for more + # details. # # @param vector_store_ids [Array] The [vector store](https://platform.openai.com/docs/api-reference/vector-stores/ - # ... # - # @param vector_stores [Array] A helper to create a [vector store](https://platform.openai.com/docs/api-referen - # ... + # @param vector_stores [Array] A helper to create a [vector store](https://platform.openai.com/docs/api-referen class VectorStore < OpenAI::Internal::Type::BaseModel # @!attribute chunking_strategy # The chunking strategy used to chunk the file(s). If not set, will use the `auto` # strategy. # - # @return [OpenAI::Models::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Auto, OpenAI::Models::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static, nil] + # @return [OpenAI::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Auto, OpenAI::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static, nil] optional :chunking_strategy, - union: -> { OpenAI::Models::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy } + union: -> { + OpenAI::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy + } # @!attribute file_ids # A list of [file](https://platform.openai.com/docs/api-reference/files) IDs to @@ -273,21 +269,19 @@ class VectorStore < OpenAI::Internal::Type::BaseModel # @!method initialize(chunking_strategy: nil, file_ids: nil, metadata: nil) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore} + # {OpenAI::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore} # for more details. # - # @param chunking_strategy [OpenAI::Models::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Auto, OpenAI::Models::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static] The chunking strategy used to chunk the file(s). If not set, will use the `auto` - # ... + # @param chunking_strategy [OpenAI::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Auto, OpenAI::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static] The chunking strategy used to chunk the file(s). If not set, will use the `auto` # # @param file_ids [Array] A list of [file](https://platform.openai.com/docs/api-reference/files) IDs to ad - # ... # - # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be # The chunking strategy used to chunk the file(s). If not set, will use the `auto` # strategy. # - # @see OpenAI::Models::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore#chunking_strategy + # @see OpenAI::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore#chunking_strategy module ChunkingStrategy extend OpenAI::Internal::Type::Union @@ -295,10 +289,14 @@ module ChunkingStrategy # The default strategy. This strategy currently uses a `max_chunk_size_tokens` of `800` and `chunk_overlap_tokens` of `400`. variant :auto, - -> { OpenAI::Models::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Auto } + -> { + OpenAI::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Auto + } variant :static, - -> { OpenAI::Models::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static } + -> { + OpenAI::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static + } class Auto < OpenAI::Internal::Type::BaseModel # @!attribute type @@ -317,9 +315,11 @@ class Auto < OpenAI::Internal::Type::BaseModel class Static < OpenAI::Internal::Type::BaseModel # @!attribute static # - # @return [OpenAI::Models::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static::Static] + # @return [OpenAI::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static::Static] required :static, - -> { OpenAI::Models::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static::Static } + -> { + OpenAI::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static::Static + } # @!attribute type # Always `static`. @@ -328,11 +328,11 @@ class Static < OpenAI::Internal::Type::BaseModel required :type, const: :static # @!method initialize(static:, type: :static) - # @param static [OpenAI::Models::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static::Static] + # @param static [OpenAI::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static::Static] # # @param type [Symbol, :static] Always `static`. - # @see OpenAI::Models::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static#static + # @see OpenAI::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static#static class Static < OpenAI::Internal::Type::BaseModel # @!attribute chunk_overlap_tokens # The number of tokens that overlap between chunks. The default value is `400`. @@ -351,19 +351,17 @@ class Static < OpenAI::Internal::Type::BaseModel # @!method initialize(chunk_overlap_tokens:, max_chunk_size_tokens:) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static::Static} + # {OpenAI::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static::Static} # for more details. # # @param chunk_overlap_tokens [Integer] The number of tokens that overlap between chunks. The default value is `400`. - # ... # # @param max_chunk_size_tokens [Integer] The maximum number of tokens in each chunk. The default value is `800`. The mini - # ... end end # @!method self.variants - # @return [Array(OpenAI::Models::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Auto, OpenAI::Models::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static)] + # @return [Array(OpenAI::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Auto, OpenAI::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static)] end end end diff --git a/lib/openai/models/beta/assistant_list_params.rb b/lib/openai/models/beta/assistant_list_params.rb index a3c95fe0..3c936a2a 100644 --- a/lib/openai/models/beta/assistant_list_params.rb +++ b/lib/openai/models/beta/assistant_list_params.rb @@ -37,24 +37,20 @@ class AssistantListParams < OpenAI::Internal::Type::BaseModel # Sort order by the `created_at` timestamp of the objects. `asc` for ascending # order and `desc` for descending order. # - # @return [Symbol, OpenAI::Models::Beta::AssistantListParams::Order, nil] - optional :order, enum: -> { OpenAI::Models::Beta::AssistantListParams::Order } + # @return [Symbol, OpenAI::Beta::AssistantListParams::Order, nil] + optional :order, enum: -> { OpenAI::Beta::AssistantListParams::Order } # @!method initialize(after: nil, before: nil, limit: nil, order: nil, request_options: {}) # Some parameter documentations has been truncated, see # {OpenAI::Models::Beta::AssistantListParams} for more details. # # @param after [String] A cursor for use in pagination. `after` is an object ID that defines your place - # ... # # @param before [String] A cursor for use in pagination. `before` is an object ID that defines your place - # ... # # @param limit [Integer] A limit on the number of objects to be returned. Limit can range between 1 and 1 - # ... # - # @param order [Symbol, OpenAI::Models::Beta::AssistantListParams::Order] Sort order by the `created_at` timestamp of the objects. `asc` for ascending ord - # ... + # @param order [Symbol, OpenAI::Beta::AssistantListParams::Order] Sort order by the `created_at` timestamp of the objects. `asc` for ascending ord # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] diff --git a/lib/openai/models/beta/assistant_response_format_option.rb b/lib/openai/models/beta/assistant_response_format_option.rb index 8c471773..411077cb 100644 --- a/lib/openai/models/beta/assistant_response_format_option.rb +++ b/lib/openai/models/beta/assistant_response_format_option.rb @@ -30,20 +30,20 @@ module AssistantResponseFormatOption variant const: :auto # Default response format. Used to generate text responses. - variant -> { OpenAI::Models::ResponseFormatText } + variant -> { OpenAI::ResponseFormatText } # JSON object response format. An older method of generating JSON responses. # Using `json_schema` is recommended for models that support it. Note that the # model will not generate JSON without a system or user message instructing it # to do so. - variant -> { OpenAI::Models::ResponseFormatJSONObject } + variant -> { OpenAI::ResponseFormatJSONObject } # JSON Schema response format. Used to generate structured JSON responses. # Learn more about [Structured Outputs](https://platform.openai.com/docs/guides/structured-outputs). - variant -> { OpenAI::Models::ResponseFormatJSONSchema } + variant -> { OpenAI::ResponseFormatJSONSchema } # @!method self.variants - # @return [Array(Symbol, :auto, OpenAI::Models::ResponseFormatText, OpenAI::Models::ResponseFormatJSONObject, OpenAI::Models::ResponseFormatJSONSchema)] + # @return [Array(Symbol, :auto, OpenAI::ResponseFormatText, OpenAI::ResponseFormatJSONObject, OpenAI::ResponseFormatJSONSchema)] end end end diff --git a/lib/openai/models/beta/assistant_stream_event.rb b/lib/openai/models/beta/assistant_stream_event.rb index b048ee92..74345189 100644 --- a/lib/openai/models/beta/assistant_stream_event.rb +++ b/lib/openai/models/beta/assistant_stream_event.rb @@ -29,93 +29,102 @@ module AssistantStreamEvent discriminator :event # Occurs when a new [thread](https://platform.openai.com/docs/api-reference/threads/object) is created. - variant :"thread.created", -> { OpenAI::Models::Beta::AssistantStreamEvent::ThreadCreated } + variant :"thread.created", -> { OpenAI::Beta::AssistantStreamEvent::ThreadCreated } # Occurs when a new [run](https://platform.openai.com/docs/api-reference/runs/object) is created. - variant :"thread.run.created", -> { OpenAI::Models::Beta::AssistantStreamEvent::ThreadRunCreated } + variant :"thread.run.created", -> { OpenAI::Beta::AssistantStreamEvent::ThreadRunCreated } # Occurs when a [run](https://platform.openai.com/docs/api-reference/runs/object) moves to a `queued` status. - variant :"thread.run.queued", -> { OpenAI::Models::Beta::AssistantStreamEvent::ThreadRunQueued } + variant :"thread.run.queued", -> { OpenAI::Beta::AssistantStreamEvent::ThreadRunQueued } # Occurs when a [run](https://platform.openai.com/docs/api-reference/runs/object) moves to an `in_progress` status. - variant :"thread.run.in_progress", -> { OpenAI::Models::Beta::AssistantStreamEvent::ThreadRunInProgress } + variant :"thread.run.in_progress", -> { OpenAI::Beta::AssistantStreamEvent::ThreadRunInProgress } # Occurs when a [run](https://platform.openai.com/docs/api-reference/runs/object) moves to a `requires_action` status. variant :"thread.run.requires_action", - -> { OpenAI::Models::Beta::AssistantStreamEvent::ThreadRunRequiresAction } + -> { + OpenAI::Beta::AssistantStreamEvent::ThreadRunRequiresAction + } # Occurs when a [run](https://platform.openai.com/docs/api-reference/runs/object) is completed. - variant :"thread.run.completed", -> { OpenAI::Models::Beta::AssistantStreamEvent::ThreadRunCompleted } + variant :"thread.run.completed", -> { OpenAI::Beta::AssistantStreamEvent::ThreadRunCompleted } # Occurs when a [run](https://platform.openai.com/docs/api-reference/runs/object) ends with status `incomplete`. - variant :"thread.run.incomplete", -> { OpenAI::Models::Beta::AssistantStreamEvent::ThreadRunIncomplete } + variant :"thread.run.incomplete", -> { OpenAI::Beta::AssistantStreamEvent::ThreadRunIncomplete } # Occurs when a [run](https://platform.openai.com/docs/api-reference/runs/object) fails. - variant :"thread.run.failed", -> { OpenAI::Models::Beta::AssistantStreamEvent::ThreadRunFailed } + variant :"thread.run.failed", -> { OpenAI::Beta::AssistantStreamEvent::ThreadRunFailed } # Occurs when a [run](https://platform.openai.com/docs/api-reference/runs/object) moves to a `cancelling` status. - variant :"thread.run.cancelling", -> { OpenAI::Models::Beta::AssistantStreamEvent::ThreadRunCancelling } + variant :"thread.run.cancelling", -> { OpenAI::Beta::AssistantStreamEvent::ThreadRunCancelling } # Occurs when a [run](https://platform.openai.com/docs/api-reference/runs/object) is cancelled. - variant :"thread.run.cancelled", -> { OpenAI::Models::Beta::AssistantStreamEvent::ThreadRunCancelled } + variant :"thread.run.cancelled", -> { OpenAI::Beta::AssistantStreamEvent::ThreadRunCancelled } # Occurs when a [run](https://platform.openai.com/docs/api-reference/runs/object) expires. - variant :"thread.run.expired", -> { OpenAI::Models::Beta::AssistantStreamEvent::ThreadRunExpired } + variant :"thread.run.expired", -> { OpenAI::Beta::AssistantStreamEvent::ThreadRunExpired } # Occurs when a [run step](https://platform.openai.com/docs/api-reference/run-steps/step-object) is created. - variant :"thread.run.step.created", - -> { OpenAI::Models::Beta::AssistantStreamEvent::ThreadRunStepCreated } + variant :"thread.run.step.created", -> { OpenAI::Beta::AssistantStreamEvent::ThreadRunStepCreated } # Occurs when a [run step](https://platform.openai.com/docs/api-reference/run-steps/step-object) moves to an `in_progress` state. variant :"thread.run.step.in_progress", - -> { OpenAI::Models::Beta::AssistantStreamEvent::ThreadRunStepInProgress } + -> { + OpenAI::Beta::AssistantStreamEvent::ThreadRunStepInProgress + } # Occurs when parts of a [run step](https://platform.openai.com/docs/api-reference/run-steps/step-object) are being streamed. - variant :"thread.run.step.delta", -> { OpenAI::Models::Beta::AssistantStreamEvent::ThreadRunStepDelta } + variant :"thread.run.step.delta", -> { OpenAI::Beta::AssistantStreamEvent::ThreadRunStepDelta } # Occurs when a [run step](https://platform.openai.com/docs/api-reference/run-steps/step-object) is completed. variant :"thread.run.step.completed", - -> { OpenAI::Models::Beta::AssistantStreamEvent::ThreadRunStepCompleted } + -> { + OpenAI::Beta::AssistantStreamEvent::ThreadRunStepCompleted + } # Occurs when a [run step](https://platform.openai.com/docs/api-reference/run-steps/step-object) fails. - variant :"thread.run.step.failed", -> { OpenAI::Models::Beta::AssistantStreamEvent::ThreadRunStepFailed } + variant :"thread.run.step.failed", -> { OpenAI::Beta::AssistantStreamEvent::ThreadRunStepFailed } # Occurs when a [run step](https://platform.openai.com/docs/api-reference/run-steps/step-object) is cancelled. variant :"thread.run.step.cancelled", - -> { OpenAI::Models::Beta::AssistantStreamEvent::ThreadRunStepCancelled } + -> { + OpenAI::Beta::AssistantStreamEvent::ThreadRunStepCancelled + } # Occurs when a [run step](https://platform.openai.com/docs/api-reference/run-steps/step-object) expires. - variant :"thread.run.step.expired", - -> { OpenAI::Models::Beta::AssistantStreamEvent::ThreadRunStepExpired } + variant :"thread.run.step.expired", -> { OpenAI::Beta::AssistantStreamEvent::ThreadRunStepExpired } # Occurs when a [message](https://platform.openai.com/docs/api-reference/messages/object) is created. - variant :"thread.message.created", -> { OpenAI::Models::Beta::AssistantStreamEvent::ThreadMessageCreated } + variant :"thread.message.created", -> { OpenAI::Beta::AssistantStreamEvent::ThreadMessageCreated } # Occurs when a [message](https://platform.openai.com/docs/api-reference/messages/object) moves to an `in_progress` state. variant :"thread.message.in_progress", - -> { OpenAI::Models::Beta::AssistantStreamEvent::ThreadMessageInProgress } + -> { + OpenAI::Beta::AssistantStreamEvent::ThreadMessageInProgress + } # Occurs when parts of a [Message](https://platform.openai.com/docs/api-reference/messages/object) are being streamed. - variant :"thread.message.delta", -> { OpenAI::Models::Beta::AssistantStreamEvent::ThreadMessageDelta } + variant :"thread.message.delta", -> { OpenAI::Beta::AssistantStreamEvent::ThreadMessageDelta } # Occurs when a [message](https://platform.openai.com/docs/api-reference/messages/object) is completed. - variant :"thread.message.completed", - -> { OpenAI::Models::Beta::AssistantStreamEvent::ThreadMessageCompleted } + variant :"thread.message.completed", -> { OpenAI::Beta::AssistantStreamEvent::ThreadMessageCompleted } # Occurs when a [message](https://platform.openai.com/docs/api-reference/messages/object) ends before it is completed. variant :"thread.message.incomplete", - -> { OpenAI::Models::Beta::AssistantStreamEvent::ThreadMessageIncomplete } + -> { + OpenAI::Beta::AssistantStreamEvent::ThreadMessageIncomplete + } # Occurs when an [error](https://platform.openai.com/docs/guides/error-codes#api-errors) occurs. This can happen due to an internal server error or a timeout. - variant :error, -> { OpenAI::Models::Beta::AssistantStreamEvent::ErrorEvent } + variant :error, -> { OpenAI::Beta::AssistantStreamEvent::ErrorEvent } class ThreadCreated < OpenAI::Internal::Type::BaseModel # @!attribute data # Represents a thread that contains # [messages](https://platform.openai.com/docs/api-reference/messages). # - # @return [OpenAI::Models::Beta::Thread] - required :data, -> { OpenAI::Models::Beta::Thread } + # @return [OpenAI::Beta::Thread] + required :data, -> { OpenAI::Beta::Thread } # @!attribute event # @@ -130,14 +139,13 @@ class ThreadCreated < OpenAI::Internal::Type::BaseModel # @!method initialize(data:, enabled: nil, event: :"thread.created") # Some parameter documentations has been truncated, see - # {OpenAI::Models::Beta::AssistantStreamEvent::ThreadCreated} for more details. + # {OpenAI::Beta::AssistantStreamEvent::ThreadCreated} for more details. # # Occurs when a new # [thread](https://platform.openai.com/docs/api-reference/threads/object) is # created. # - # @param data [OpenAI::Models::Beta::Thread] Represents a thread that contains [messages](https://platform.openai.com/docs/ap - # ... + # @param data [OpenAI::Beta::Thread] Represents a thread that contains [messages](https://platform.openai.com/docs/ap # # @param enabled [Boolean] Whether to enable input audio transcription. # @@ -149,8 +157,8 @@ class ThreadRunCreated < OpenAI::Internal::Type::BaseModel # Represents an execution run on a # [thread](https://platform.openai.com/docs/api-reference/threads). # - # @return [OpenAI::Models::Beta::Threads::Run] - required :data, -> { OpenAI::Models::Beta::Threads::Run } + # @return [OpenAI::Beta::Threads::Run] + required :data, -> { OpenAI::Beta::Threads::Run } # @!attribute event # @@ -159,13 +167,12 @@ class ThreadRunCreated < OpenAI::Internal::Type::BaseModel # @!method initialize(data:, event: :"thread.run.created") # Some parameter documentations has been truncated, see - # {OpenAI::Models::Beta::AssistantStreamEvent::ThreadRunCreated} for more details. + # {OpenAI::Beta::AssistantStreamEvent::ThreadRunCreated} for more details. # # Occurs when a new # [run](https://platform.openai.com/docs/api-reference/runs/object) is created. # - # @param data [OpenAI::Models::Beta::Threads::Run] Represents an execution run on a [thread](https://platform.openai.com/docs/api-r - # ... + # @param data [OpenAI::Beta::Threads::Run] Represents an execution run on a [thread](https://platform.openai.com/docs/api-r # # @param event [Symbol, :"thread.run.created"] end @@ -175,8 +182,8 @@ class ThreadRunQueued < OpenAI::Internal::Type::BaseModel # Represents an execution run on a # [thread](https://platform.openai.com/docs/api-reference/threads). # - # @return [OpenAI::Models::Beta::Threads::Run] - required :data, -> { OpenAI::Models::Beta::Threads::Run } + # @return [OpenAI::Beta::Threads::Run] + required :data, -> { OpenAI::Beta::Threads::Run } # @!attribute event # @@ -185,13 +192,12 @@ class ThreadRunQueued < OpenAI::Internal::Type::BaseModel # @!method initialize(data:, event: :"thread.run.queued") # Some parameter documentations has been truncated, see - # {OpenAI::Models::Beta::AssistantStreamEvent::ThreadRunQueued} for more details. + # {OpenAI::Beta::AssistantStreamEvent::ThreadRunQueued} for more details. # # Occurs when a [run](https://platform.openai.com/docs/api-reference/runs/object) # moves to a `queued` status. # - # @param data [OpenAI::Models::Beta::Threads::Run] Represents an execution run on a [thread](https://platform.openai.com/docs/api-r - # ... + # @param data [OpenAI::Beta::Threads::Run] Represents an execution run on a [thread](https://platform.openai.com/docs/api-r # # @param event [Symbol, :"thread.run.queued"] end @@ -201,8 +207,8 @@ class ThreadRunInProgress < OpenAI::Internal::Type::BaseModel # Represents an execution run on a # [thread](https://platform.openai.com/docs/api-reference/threads). # - # @return [OpenAI::Models::Beta::Threads::Run] - required :data, -> { OpenAI::Models::Beta::Threads::Run } + # @return [OpenAI::Beta::Threads::Run] + required :data, -> { OpenAI::Beta::Threads::Run } # @!attribute event # @@ -211,14 +217,12 @@ class ThreadRunInProgress < OpenAI::Internal::Type::BaseModel # @!method initialize(data:, event: :"thread.run.in_progress") # Some parameter documentations has been truncated, see - # {OpenAI::Models::Beta::AssistantStreamEvent::ThreadRunInProgress} for more - # details. + # {OpenAI::Beta::AssistantStreamEvent::ThreadRunInProgress} for more details. # # Occurs when a [run](https://platform.openai.com/docs/api-reference/runs/object) # moves to an `in_progress` status. # - # @param data [OpenAI::Models::Beta::Threads::Run] Represents an execution run on a [thread](https://platform.openai.com/docs/api-r - # ... + # @param data [OpenAI::Beta::Threads::Run] Represents an execution run on a [thread](https://platform.openai.com/docs/api-r # # @param event [Symbol, :"thread.run.in_progress"] end @@ -228,8 +232,8 @@ class ThreadRunRequiresAction < OpenAI::Internal::Type::BaseModel # Represents an execution run on a # [thread](https://platform.openai.com/docs/api-reference/threads). # - # @return [OpenAI::Models::Beta::Threads::Run] - required :data, -> { OpenAI::Models::Beta::Threads::Run } + # @return [OpenAI::Beta::Threads::Run] + required :data, -> { OpenAI::Beta::Threads::Run } # @!attribute event # @@ -238,14 +242,12 @@ class ThreadRunRequiresAction < OpenAI::Internal::Type::BaseModel # @!method initialize(data:, event: :"thread.run.requires_action") # Some parameter documentations has been truncated, see - # {OpenAI::Models::Beta::AssistantStreamEvent::ThreadRunRequiresAction} for more - # details. + # {OpenAI::Beta::AssistantStreamEvent::ThreadRunRequiresAction} for more details. # # Occurs when a [run](https://platform.openai.com/docs/api-reference/runs/object) # moves to a `requires_action` status. # - # @param data [OpenAI::Models::Beta::Threads::Run] Represents an execution run on a [thread](https://platform.openai.com/docs/api-r - # ... + # @param data [OpenAI::Beta::Threads::Run] Represents an execution run on a [thread](https://platform.openai.com/docs/api-r # # @param event [Symbol, :"thread.run.requires_action"] end @@ -255,8 +257,8 @@ class ThreadRunCompleted < OpenAI::Internal::Type::BaseModel # Represents an execution run on a # [thread](https://platform.openai.com/docs/api-reference/threads). # - # @return [OpenAI::Models::Beta::Threads::Run] - required :data, -> { OpenAI::Models::Beta::Threads::Run } + # @return [OpenAI::Beta::Threads::Run] + required :data, -> { OpenAI::Beta::Threads::Run } # @!attribute event # @@ -265,14 +267,12 @@ class ThreadRunCompleted < OpenAI::Internal::Type::BaseModel # @!method initialize(data:, event: :"thread.run.completed") # Some parameter documentations has been truncated, see - # {OpenAI::Models::Beta::AssistantStreamEvent::ThreadRunCompleted} for more - # details. + # {OpenAI::Beta::AssistantStreamEvent::ThreadRunCompleted} for more details. # # Occurs when a [run](https://platform.openai.com/docs/api-reference/runs/object) # is completed. # - # @param data [OpenAI::Models::Beta::Threads::Run] Represents an execution run on a [thread](https://platform.openai.com/docs/api-r - # ... + # @param data [OpenAI::Beta::Threads::Run] Represents an execution run on a [thread](https://platform.openai.com/docs/api-r # # @param event [Symbol, :"thread.run.completed"] end @@ -282,8 +282,8 @@ class ThreadRunIncomplete < OpenAI::Internal::Type::BaseModel # Represents an execution run on a # [thread](https://platform.openai.com/docs/api-reference/threads). # - # @return [OpenAI::Models::Beta::Threads::Run] - required :data, -> { OpenAI::Models::Beta::Threads::Run } + # @return [OpenAI::Beta::Threads::Run] + required :data, -> { OpenAI::Beta::Threads::Run } # @!attribute event # @@ -292,14 +292,12 @@ class ThreadRunIncomplete < OpenAI::Internal::Type::BaseModel # @!method initialize(data:, event: :"thread.run.incomplete") # Some parameter documentations has been truncated, see - # {OpenAI::Models::Beta::AssistantStreamEvent::ThreadRunIncomplete} for more - # details. + # {OpenAI::Beta::AssistantStreamEvent::ThreadRunIncomplete} for more details. # # Occurs when a [run](https://platform.openai.com/docs/api-reference/runs/object) # ends with status `incomplete`. # - # @param data [OpenAI::Models::Beta::Threads::Run] Represents an execution run on a [thread](https://platform.openai.com/docs/api-r - # ... + # @param data [OpenAI::Beta::Threads::Run] Represents an execution run on a [thread](https://platform.openai.com/docs/api-r # # @param event [Symbol, :"thread.run.incomplete"] end @@ -309,8 +307,8 @@ class ThreadRunFailed < OpenAI::Internal::Type::BaseModel # Represents an execution run on a # [thread](https://platform.openai.com/docs/api-reference/threads). # - # @return [OpenAI::Models::Beta::Threads::Run] - required :data, -> { OpenAI::Models::Beta::Threads::Run } + # @return [OpenAI::Beta::Threads::Run] + required :data, -> { OpenAI::Beta::Threads::Run } # @!attribute event # @@ -319,13 +317,12 @@ class ThreadRunFailed < OpenAI::Internal::Type::BaseModel # @!method initialize(data:, event: :"thread.run.failed") # Some parameter documentations has been truncated, see - # {OpenAI::Models::Beta::AssistantStreamEvent::ThreadRunFailed} for more details. + # {OpenAI::Beta::AssistantStreamEvent::ThreadRunFailed} for more details. # # Occurs when a [run](https://platform.openai.com/docs/api-reference/runs/object) # fails. # - # @param data [OpenAI::Models::Beta::Threads::Run] Represents an execution run on a [thread](https://platform.openai.com/docs/api-r - # ... + # @param data [OpenAI::Beta::Threads::Run] Represents an execution run on a [thread](https://platform.openai.com/docs/api-r # # @param event [Symbol, :"thread.run.failed"] end @@ -335,8 +332,8 @@ class ThreadRunCancelling < OpenAI::Internal::Type::BaseModel # Represents an execution run on a # [thread](https://platform.openai.com/docs/api-reference/threads). # - # @return [OpenAI::Models::Beta::Threads::Run] - required :data, -> { OpenAI::Models::Beta::Threads::Run } + # @return [OpenAI::Beta::Threads::Run] + required :data, -> { OpenAI::Beta::Threads::Run } # @!attribute event # @@ -345,14 +342,12 @@ class ThreadRunCancelling < OpenAI::Internal::Type::BaseModel # @!method initialize(data:, event: :"thread.run.cancelling") # Some parameter documentations has been truncated, see - # {OpenAI::Models::Beta::AssistantStreamEvent::ThreadRunCancelling} for more - # details. + # {OpenAI::Beta::AssistantStreamEvent::ThreadRunCancelling} for more details. # # Occurs when a [run](https://platform.openai.com/docs/api-reference/runs/object) # moves to a `cancelling` status. # - # @param data [OpenAI::Models::Beta::Threads::Run] Represents an execution run on a [thread](https://platform.openai.com/docs/api-r - # ... + # @param data [OpenAI::Beta::Threads::Run] Represents an execution run on a [thread](https://platform.openai.com/docs/api-r # # @param event [Symbol, :"thread.run.cancelling"] end @@ -362,8 +357,8 @@ class ThreadRunCancelled < OpenAI::Internal::Type::BaseModel # Represents an execution run on a # [thread](https://platform.openai.com/docs/api-reference/threads). # - # @return [OpenAI::Models::Beta::Threads::Run] - required :data, -> { OpenAI::Models::Beta::Threads::Run } + # @return [OpenAI::Beta::Threads::Run] + required :data, -> { OpenAI::Beta::Threads::Run } # @!attribute event # @@ -372,14 +367,12 @@ class ThreadRunCancelled < OpenAI::Internal::Type::BaseModel # @!method initialize(data:, event: :"thread.run.cancelled") # Some parameter documentations has been truncated, see - # {OpenAI::Models::Beta::AssistantStreamEvent::ThreadRunCancelled} for more - # details. + # {OpenAI::Beta::AssistantStreamEvent::ThreadRunCancelled} for more details. # # Occurs when a [run](https://platform.openai.com/docs/api-reference/runs/object) # is cancelled. # - # @param data [OpenAI::Models::Beta::Threads::Run] Represents an execution run on a [thread](https://platform.openai.com/docs/api-r - # ... + # @param data [OpenAI::Beta::Threads::Run] Represents an execution run on a [thread](https://platform.openai.com/docs/api-r # # @param event [Symbol, :"thread.run.cancelled"] end @@ -389,8 +382,8 @@ class ThreadRunExpired < OpenAI::Internal::Type::BaseModel # Represents an execution run on a # [thread](https://platform.openai.com/docs/api-reference/threads). # - # @return [OpenAI::Models::Beta::Threads::Run] - required :data, -> { OpenAI::Models::Beta::Threads::Run } + # @return [OpenAI::Beta::Threads::Run] + required :data, -> { OpenAI::Beta::Threads::Run } # @!attribute event # @@ -399,13 +392,12 @@ class ThreadRunExpired < OpenAI::Internal::Type::BaseModel # @!method initialize(data:, event: :"thread.run.expired") # Some parameter documentations has been truncated, see - # {OpenAI::Models::Beta::AssistantStreamEvent::ThreadRunExpired} for more details. + # {OpenAI::Beta::AssistantStreamEvent::ThreadRunExpired} for more details. # # Occurs when a [run](https://platform.openai.com/docs/api-reference/runs/object) # expires. # - # @param data [OpenAI::Models::Beta::Threads::Run] Represents an execution run on a [thread](https://platform.openai.com/docs/api-r - # ... + # @param data [OpenAI::Beta::Threads::Run] Represents an execution run on a [thread](https://platform.openai.com/docs/api-r # # @param event [Symbol, :"thread.run.expired"] end @@ -414,8 +406,8 @@ class ThreadRunStepCreated < OpenAI::Internal::Type::BaseModel # @!attribute data # Represents a step in execution of a run. # - # @return [OpenAI::Models::Beta::Threads::Runs::RunStep] - required :data, -> { OpenAI::Models::Beta::Threads::Runs::RunStep } + # @return [OpenAI::Beta::Threads::Runs::RunStep] + required :data, -> { OpenAI::Beta::Threads::Runs::RunStep } # @!attribute event # @@ -424,14 +416,13 @@ class ThreadRunStepCreated < OpenAI::Internal::Type::BaseModel # @!method initialize(data:, event: :"thread.run.step.created") # Some parameter documentations has been truncated, see - # {OpenAI::Models::Beta::AssistantStreamEvent::ThreadRunStepCreated} for more - # details. + # {OpenAI::Beta::AssistantStreamEvent::ThreadRunStepCreated} for more details. # # Occurs when a # [run step](https://platform.openai.com/docs/api-reference/run-steps/step-object) # is created. # - # @param data [OpenAI::Models::Beta::Threads::Runs::RunStep] Represents a step in execution of a run. ... + # @param data [OpenAI::Beta::Threads::Runs::RunStep] Represents a step in execution of a run. # # @param event [Symbol, :"thread.run.step.created"] end @@ -440,8 +431,8 @@ class ThreadRunStepInProgress < OpenAI::Internal::Type::BaseModel # @!attribute data # Represents a step in execution of a run. # - # @return [OpenAI::Models::Beta::Threads::Runs::RunStep] - required :data, -> { OpenAI::Models::Beta::Threads::Runs::RunStep } + # @return [OpenAI::Beta::Threads::Runs::RunStep] + required :data, -> { OpenAI::Beta::Threads::Runs::RunStep } # @!attribute event # @@ -450,14 +441,13 @@ class ThreadRunStepInProgress < OpenAI::Internal::Type::BaseModel # @!method initialize(data:, event: :"thread.run.step.in_progress") # Some parameter documentations has been truncated, see - # {OpenAI::Models::Beta::AssistantStreamEvent::ThreadRunStepInProgress} for more - # details. + # {OpenAI::Beta::AssistantStreamEvent::ThreadRunStepInProgress} for more details. # # Occurs when a # [run step](https://platform.openai.com/docs/api-reference/run-steps/step-object) # moves to an `in_progress` state. # - # @param data [OpenAI::Models::Beta::Threads::Runs::RunStep] Represents a step in execution of a run. ... + # @param data [OpenAI::Beta::Threads::Runs::RunStep] Represents a step in execution of a run. # # @param event [Symbol, :"thread.run.step.in_progress"] end @@ -467,8 +457,8 @@ class ThreadRunStepDelta < OpenAI::Internal::Type::BaseModel # Represents a run step delta i.e. any changed fields on a run step during # streaming. # - # @return [OpenAI::Models::Beta::Threads::Runs::RunStepDeltaEvent] - required :data, -> { OpenAI::Models::Beta::Threads::Runs::RunStepDeltaEvent } + # @return [OpenAI::Beta::Threads::Runs::RunStepDeltaEvent] + required :data, -> { OpenAI::Beta::Threads::Runs::RunStepDeltaEvent } # @!attribute event # @@ -477,15 +467,13 @@ class ThreadRunStepDelta < OpenAI::Internal::Type::BaseModel # @!method initialize(data:, event: :"thread.run.step.delta") # Some parameter documentations has been truncated, see - # {OpenAI::Models::Beta::AssistantStreamEvent::ThreadRunStepDelta} for more - # details. + # {OpenAI::Beta::AssistantStreamEvent::ThreadRunStepDelta} for more details. # # Occurs when parts of a # [run step](https://platform.openai.com/docs/api-reference/run-steps/step-object) # are being streamed. # - # @param data [OpenAI::Models::Beta::Threads::Runs::RunStepDeltaEvent] Represents a run step delta i.e. any changed fields on a run step during streami - # ... + # @param data [OpenAI::Beta::Threads::Runs::RunStepDeltaEvent] Represents a run step delta i.e. any changed fields on a run step during streami # # @param event [Symbol, :"thread.run.step.delta"] end @@ -494,8 +482,8 @@ class ThreadRunStepCompleted < OpenAI::Internal::Type::BaseModel # @!attribute data # Represents a step in execution of a run. # - # @return [OpenAI::Models::Beta::Threads::Runs::RunStep] - required :data, -> { OpenAI::Models::Beta::Threads::Runs::RunStep } + # @return [OpenAI::Beta::Threads::Runs::RunStep] + required :data, -> { OpenAI::Beta::Threads::Runs::RunStep } # @!attribute event # @@ -504,14 +492,13 @@ class ThreadRunStepCompleted < OpenAI::Internal::Type::BaseModel # @!method initialize(data:, event: :"thread.run.step.completed") # Some parameter documentations has been truncated, see - # {OpenAI::Models::Beta::AssistantStreamEvent::ThreadRunStepCompleted} for more - # details. + # {OpenAI::Beta::AssistantStreamEvent::ThreadRunStepCompleted} for more details. # # Occurs when a # [run step](https://platform.openai.com/docs/api-reference/run-steps/step-object) # is completed. # - # @param data [OpenAI::Models::Beta::Threads::Runs::RunStep] Represents a step in execution of a run. ... + # @param data [OpenAI::Beta::Threads::Runs::RunStep] Represents a step in execution of a run. # # @param event [Symbol, :"thread.run.step.completed"] end @@ -520,8 +507,8 @@ class ThreadRunStepFailed < OpenAI::Internal::Type::BaseModel # @!attribute data # Represents a step in execution of a run. # - # @return [OpenAI::Models::Beta::Threads::Runs::RunStep] - required :data, -> { OpenAI::Models::Beta::Threads::Runs::RunStep } + # @return [OpenAI::Beta::Threads::Runs::RunStep] + required :data, -> { OpenAI::Beta::Threads::Runs::RunStep } # @!attribute event # @@ -530,14 +517,13 @@ class ThreadRunStepFailed < OpenAI::Internal::Type::BaseModel # @!method initialize(data:, event: :"thread.run.step.failed") # Some parameter documentations has been truncated, see - # {OpenAI::Models::Beta::AssistantStreamEvent::ThreadRunStepFailed} for more - # details. + # {OpenAI::Beta::AssistantStreamEvent::ThreadRunStepFailed} for more details. # # Occurs when a # [run step](https://platform.openai.com/docs/api-reference/run-steps/step-object) # fails. # - # @param data [OpenAI::Models::Beta::Threads::Runs::RunStep] Represents a step in execution of a run. ... + # @param data [OpenAI::Beta::Threads::Runs::RunStep] Represents a step in execution of a run. # # @param event [Symbol, :"thread.run.step.failed"] end @@ -546,8 +532,8 @@ class ThreadRunStepCancelled < OpenAI::Internal::Type::BaseModel # @!attribute data # Represents a step in execution of a run. # - # @return [OpenAI::Models::Beta::Threads::Runs::RunStep] - required :data, -> { OpenAI::Models::Beta::Threads::Runs::RunStep } + # @return [OpenAI::Beta::Threads::Runs::RunStep] + required :data, -> { OpenAI::Beta::Threads::Runs::RunStep } # @!attribute event # @@ -556,14 +542,13 @@ class ThreadRunStepCancelled < OpenAI::Internal::Type::BaseModel # @!method initialize(data:, event: :"thread.run.step.cancelled") # Some parameter documentations has been truncated, see - # {OpenAI::Models::Beta::AssistantStreamEvent::ThreadRunStepCancelled} for more - # details. + # {OpenAI::Beta::AssistantStreamEvent::ThreadRunStepCancelled} for more details. # # Occurs when a # [run step](https://platform.openai.com/docs/api-reference/run-steps/step-object) # is cancelled. # - # @param data [OpenAI::Models::Beta::Threads::Runs::RunStep] Represents a step in execution of a run. ... + # @param data [OpenAI::Beta::Threads::Runs::RunStep] Represents a step in execution of a run. # # @param event [Symbol, :"thread.run.step.cancelled"] end @@ -572,8 +557,8 @@ class ThreadRunStepExpired < OpenAI::Internal::Type::BaseModel # @!attribute data # Represents a step in execution of a run. # - # @return [OpenAI::Models::Beta::Threads::Runs::RunStep] - required :data, -> { OpenAI::Models::Beta::Threads::Runs::RunStep } + # @return [OpenAI::Beta::Threads::Runs::RunStep] + required :data, -> { OpenAI::Beta::Threads::Runs::RunStep } # @!attribute event # @@ -582,14 +567,13 @@ class ThreadRunStepExpired < OpenAI::Internal::Type::BaseModel # @!method initialize(data:, event: :"thread.run.step.expired") # Some parameter documentations has been truncated, see - # {OpenAI::Models::Beta::AssistantStreamEvent::ThreadRunStepExpired} for more - # details. + # {OpenAI::Beta::AssistantStreamEvent::ThreadRunStepExpired} for more details. # # Occurs when a # [run step](https://platform.openai.com/docs/api-reference/run-steps/step-object) # expires. # - # @param data [OpenAI::Models::Beta::Threads::Runs::RunStep] Represents a step in execution of a run. ... + # @param data [OpenAI::Beta::Threads::Runs::RunStep] Represents a step in execution of a run. # # @param event [Symbol, :"thread.run.step.expired"] end @@ -599,8 +583,8 @@ class ThreadMessageCreated < OpenAI::Internal::Type::BaseModel # Represents a message within a # [thread](https://platform.openai.com/docs/api-reference/threads). # - # @return [OpenAI::Models::Beta::Threads::Message] - required :data, -> { OpenAI::Models::Beta::Threads::Message } + # @return [OpenAI::Beta::Threads::Message] + required :data, -> { OpenAI::Beta::Threads::Message } # @!attribute event # @@ -609,15 +593,13 @@ class ThreadMessageCreated < OpenAI::Internal::Type::BaseModel # @!method initialize(data:, event: :"thread.message.created") # Some parameter documentations has been truncated, see - # {OpenAI::Models::Beta::AssistantStreamEvent::ThreadMessageCreated} for more - # details. + # {OpenAI::Beta::AssistantStreamEvent::ThreadMessageCreated} for more details. # # Occurs when a # [message](https://platform.openai.com/docs/api-reference/messages/object) is # created. # - # @param data [OpenAI::Models::Beta::Threads::Message] Represents a message within a [thread](https://platform.openai.com/docs/api-refe - # ... + # @param data [OpenAI::Beta::Threads::Message] Represents a message within a [thread](https://platform.openai.com/docs/api-refe # # @param event [Symbol, :"thread.message.created"] end @@ -627,8 +609,8 @@ class ThreadMessageInProgress < OpenAI::Internal::Type::BaseModel # Represents a message within a # [thread](https://platform.openai.com/docs/api-reference/threads). # - # @return [OpenAI::Models::Beta::Threads::Message] - required :data, -> { OpenAI::Models::Beta::Threads::Message } + # @return [OpenAI::Beta::Threads::Message] + required :data, -> { OpenAI::Beta::Threads::Message } # @!attribute event # @@ -637,15 +619,13 @@ class ThreadMessageInProgress < OpenAI::Internal::Type::BaseModel # @!method initialize(data:, event: :"thread.message.in_progress") # Some parameter documentations has been truncated, see - # {OpenAI::Models::Beta::AssistantStreamEvent::ThreadMessageInProgress} for more - # details. + # {OpenAI::Beta::AssistantStreamEvent::ThreadMessageInProgress} for more details. # # Occurs when a # [message](https://platform.openai.com/docs/api-reference/messages/object) moves # to an `in_progress` state. # - # @param data [OpenAI::Models::Beta::Threads::Message] Represents a message within a [thread](https://platform.openai.com/docs/api-refe - # ... + # @param data [OpenAI::Beta::Threads::Message] Represents a message within a [thread](https://platform.openai.com/docs/api-refe # # @param event [Symbol, :"thread.message.in_progress"] end @@ -655,8 +635,8 @@ class ThreadMessageDelta < OpenAI::Internal::Type::BaseModel # Represents a message delta i.e. any changed fields on a message during # streaming. # - # @return [OpenAI::Models::Beta::Threads::MessageDeltaEvent] - required :data, -> { OpenAI::Models::Beta::Threads::MessageDeltaEvent } + # @return [OpenAI::Beta::Threads::MessageDeltaEvent] + required :data, -> { OpenAI::Beta::Threads::MessageDeltaEvent } # @!attribute event # @@ -665,15 +645,13 @@ class ThreadMessageDelta < OpenAI::Internal::Type::BaseModel # @!method initialize(data:, event: :"thread.message.delta") # Some parameter documentations has been truncated, see - # {OpenAI::Models::Beta::AssistantStreamEvent::ThreadMessageDelta} for more - # details. + # {OpenAI::Beta::AssistantStreamEvent::ThreadMessageDelta} for more details. # # Occurs when parts of a # [Message](https://platform.openai.com/docs/api-reference/messages/object) are # being streamed. # - # @param data [OpenAI::Models::Beta::Threads::MessageDeltaEvent] Represents a message delta i.e. any changed fields on a message during streaming - # ... + # @param data [OpenAI::Beta::Threads::MessageDeltaEvent] Represents a message delta i.e. any changed fields on a message during streaming # # @param event [Symbol, :"thread.message.delta"] end @@ -683,8 +661,8 @@ class ThreadMessageCompleted < OpenAI::Internal::Type::BaseModel # Represents a message within a # [thread](https://platform.openai.com/docs/api-reference/threads). # - # @return [OpenAI::Models::Beta::Threads::Message] - required :data, -> { OpenAI::Models::Beta::Threads::Message } + # @return [OpenAI::Beta::Threads::Message] + required :data, -> { OpenAI::Beta::Threads::Message } # @!attribute event # @@ -693,15 +671,13 @@ class ThreadMessageCompleted < OpenAI::Internal::Type::BaseModel # @!method initialize(data:, event: :"thread.message.completed") # Some parameter documentations has been truncated, see - # {OpenAI::Models::Beta::AssistantStreamEvent::ThreadMessageCompleted} for more - # details. + # {OpenAI::Beta::AssistantStreamEvent::ThreadMessageCompleted} for more details. # # Occurs when a # [message](https://platform.openai.com/docs/api-reference/messages/object) is # completed. # - # @param data [OpenAI::Models::Beta::Threads::Message] Represents a message within a [thread](https://platform.openai.com/docs/api-refe - # ... + # @param data [OpenAI::Beta::Threads::Message] Represents a message within a [thread](https://platform.openai.com/docs/api-refe # # @param event [Symbol, :"thread.message.completed"] end @@ -711,8 +687,8 @@ class ThreadMessageIncomplete < OpenAI::Internal::Type::BaseModel # Represents a message within a # [thread](https://platform.openai.com/docs/api-reference/threads). # - # @return [OpenAI::Models::Beta::Threads::Message] - required :data, -> { OpenAI::Models::Beta::Threads::Message } + # @return [OpenAI::Beta::Threads::Message] + required :data, -> { OpenAI::Beta::Threads::Message } # @!attribute event # @@ -721,15 +697,13 @@ class ThreadMessageIncomplete < OpenAI::Internal::Type::BaseModel # @!method initialize(data:, event: :"thread.message.incomplete") # Some parameter documentations has been truncated, see - # {OpenAI::Models::Beta::AssistantStreamEvent::ThreadMessageIncomplete} for more - # details. + # {OpenAI::Beta::AssistantStreamEvent::ThreadMessageIncomplete} for more details. # # Occurs when a # [message](https://platform.openai.com/docs/api-reference/messages/object) ends # before it is completed. # - # @param data [OpenAI::Models::Beta::Threads::Message] Represents a message within a [thread](https://platform.openai.com/docs/api-refe - # ... + # @param data [OpenAI::Beta::Threads::Message] Represents a message within a [thread](https://platform.openai.com/docs/api-refe # # @param event [Symbol, :"thread.message.incomplete"] end @@ -737,8 +711,8 @@ class ThreadMessageIncomplete < OpenAI::Internal::Type::BaseModel class ErrorEvent < OpenAI::Internal::Type::BaseModel # @!attribute data # - # @return [OpenAI::Models::ErrorObject] - required :data, -> { OpenAI::Models::ErrorObject } + # @return [OpenAI::ErrorObject] + required :data, -> { OpenAI::ErrorObject } # @!attribute event # @@ -750,12 +724,12 @@ class ErrorEvent < OpenAI::Internal::Type::BaseModel # [error](https://platform.openai.com/docs/guides/error-codes#api-errors) occurs. # This can happen due to an internal server error or a timeout. # - # @param data [OpenAI::Models::ErrorObject] + # @param data [OpenAI::ErrorObject] # @param event [Symbol, :error] end # @!method self.variants - # @return [Array(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)] + # @return [Array(OpenAI::Beta::AssistantStreamEvent::ThreadCreated, OpenAI::Beta::AssistantStreamEvent::ThreadRunCreated, OpenAI::Beta::AssistantStreamEvent::ThreadRunQueued, OpenAI::Beta::AssistantStreamEvent::ThreadRunInProgress, OpenAI::Beta::AssistantStreamEvent::ThreadRunRequiresAction, OpenAI::Beta::AssistantStreamEvent::ThreadRunCompleted, OpenAI::Beta::AssistantStreamEvent::ThreadRunIncomplete, OpenAI::Beta::AssistantStreamEvent::ThreadRunFailed, OpenAI::Beta::AssistantStreamEvent::ThreadRunCancelling, OpenAI::Beta::AssistantStreamEvent::ThreadRunCancelled, OpenAI::Beta::AssistantStreamEvent::ThreadRunExpired, OpenAI::Beta::AssistantStreamEvent::ThreadRunStepCreated, OpenAI::Beta::AssistantStreamEvent::ThreadRunStepInProgress, OpenAI::Beta::AssistantStreamEvent::ThreadRunStepDelta, OpenAI::Beta::AssistantStreamEvent::ThreadRunStepCompleted, OpenAI::Beta::AssistantStreamEvent::ThreadRunStepFailed, OpenAI::Beta::AssistantStreamEvent::ThreadRunStepCancelled, OpenAI::Beta::AssistantStreamEvent::ThreadRunStepExpired, OpenAI::Beta::AssistantStreamEvent::ThreadMessageCreated, OpenAI::Beta::AssistantStreamEvent::ThreadMessageInProgress, OpenAI::Beta::AssistantStreamEvent::ThreadMessageDelta, OpenAI::Beta::AssistantStreamEvent::ThreadMessageCompleted, OpenAI::Beta::AssistantStreamEvent::ThreadMessageIncomplete, OpenAI::Beta::AssistantStreamEvent::ErrorEvent)] end end end diff --git a/lib/openai/models/beta/assistant_tool.rb b/lib/openai/models/beta/assistant_tool.rb index 0272eb94..111defb9 100644 --- a/lib/openai/models/beta/assistant_tool.rb +++ b/lib/openai/models/beta/assistant_tool.rb @@ -8,14 +8,14 @@ module AssistantTool discriminator :type - variant :code_interpreter, -> { OpenAI::Models::Beta::CodeInterpreterTool } + variant :code_interpreter, -> { OpenAI::Beta::CodeInterpreterTool } - variant :file_search, -> { OpenAI::Models::Beta::FileSearchTool } + variant :file_search, -> { OpenAI::Beta::FileSearchTool } - variant :function, -> { OpenAI::Models::Beta::FunctionTool } + variant :function, -> { OpenAI::Beta::FunctionTool } # @!method self.variants - # @return [Array(OpenAI::Models::Beta::CodeInterpreterTool, OpenAI::Models::Beta::FileSearchTool, OpenAI::Models::Beta::FunctionTool)] + # @return [Array(OpenAI::Beta::CodeInterpreterTool, OpenAI::Beta::FileSearchTool, OpenAI::Beta::FunctionTool)] end end end diff --git a/lib/openai/models/beta/assistant_tool_choice.rb b/lib/openai/models/beta/assistant_tool_choice.rb index 43582de3..7f43fa4a 100644 --- a/lib/openai/models/beta/assistant_tool_choice.rb +++ b/lib/openai/models/beta/assistant_tool_choice.rb @@ -7,25 +7,25 @@ class AssistantToolChoice < OpenAI::Internal::Type::BaseModel # @!attribute type # The type of the tool. If type is `function`, the function name must be set # - # @return [Symbol, OpenAI::Models::Beta::AssistantToolChoice::Type] - required :type, enum: -> { OpenAI::Models::Beta::AssistantToolChoice::Type } + # @return [Symbol, OpenAI::Beta::AssistantToolChoice::Type] + required :type, enum: -> { OpenAI::Beta::AssistantToolChoice::Type } # @!attribute function # - # @return [OpenAI::Models::Beta::AssistantToolChoiceFunction, nil] - optional :function, -> { OpenAI::Models::Beta::AssistantToolChoiceFunction } + # @return [OpenAI::Beta::AssistantToolChoiceFunction, nil] + optional :function, -> { OpenAI::Beta::AssistantToolChoiceFunction } # @!method initialize(type:, function: nil) # Specifies a tool the model should use. Use to force the model to call a specific # tool. # - # @param type [Symbol, OpenAI::Models::Beta::AssistantToolChoice::Type] The type of the tool. If type is `function`, the function name must be set + # @param type [Symbol, OpenAI::Beta::AssistantToolChoice::Type] The type of the tool. If type is `function`, the function name must be set # - # @param function [OpenAI::Models::Beta::AssistantToolChoiceFunction] + # @param function [OpenAI::Beta::AssistantToolChoiceFunction] # The type of the tool. If type is `function`, the function name must be set # - # @see OpenAI::Models::Beta::AssistantToolChoice#type + # @see OpenAI::Beta::AssistantToolChoice#type module Type extend OpenAI::Internal::Type::Enum diff --git a/lib/openai/models/beta/assistant_tool_choice_option.rb b/lib/openai/models/beta/assistant_tool_choice_option.rb index f9d205e3..5a87d00a 100644 --- a/lib/openai/models/beta/assistant_tool_choice_option.rb +++ b/lib/openai/models/beta/assistant_tool_choice_option.rb @@ -14,10 +14,10 @@ module AssistantToolChoiceOption extend OpenAI::Internal::Type::Union # `none` means the model will not call any tools and instead generates a message. `auto` means the model can pick between generating a message or calling one or more tools. `required` means the model must call one or more tools before responding to the user. - variant enum: -> { OpenAI::Models::Beta::AssistantToolChoiceOption::Auto } + variant enum: -> { OpenAI::Beta::AssistantToolChoiceOption::Auto } # Specifies a tool the model should use. Use to force the model to call a specific tool. - variant -> { OpenAI::Models::Beta::AssistantToolChoice } + variant -> { OpenAI::Beta::AssistantToolChoice } # `none` means the model will not call any tools and instead generates a message. # `auto` means the model can pick between generating a message or calling one or @@ -35,7 +35,7 @@ module Auto end # @!method self.variants - # @return [Array(Symbol, OpenAI::Models::Beta::AssistantToolChoiceOption::Auto, OpenAI::Models::Beta::AssistantToolChoice)] + # @return [Array(Symbol, OpenAI::Beta::AssistantToolChoiceOption::Auto, OpenAI::Beta::AssistantToolChoice)] end end end diff --git a/lib/openai/models/beta/assistant_update_params.rb b/lib/openai/models/beta/assistant_update_params.rb index d507c550..3d9b9fbc 100644 --- a/lib/openai/models/beta/assistant_update_params.rb +++ b/lib/openai/models/beta/assistant_update_params.rb @@ -39,8 +39,8 @@ class AssistantUpdateParams < OpenAI::Internal::Type::BaseModel # [Model overview](https://platform.openai.com/docs/models) for descriptions of # them. # - # @return [String, Symbol, OpenAI::Models::Beta::AssistantUpdateParams::Model, nil] - optional :model, union: -> { OpenAI::Models::Beta::AssistantUpdateParams::Model } + # @return [String, Symbol, OpenAI::Beta::AssistantUpdateParams::Model, nil] + optional :model, union: -> { OpenAI::Beta::AssistantUpdateParams::Model } # @!attribute name # The name of the assistant. The maximum length is 256 characters. @@ -56,8 +56,8 @@ class AssistantUpdateParams < OpenAI::Internal::Type::BaseModel # supported values are `low`, `medium`, and `high`. Reducing reasoning effort can # result in faster responses and fewer tokens used on reasoning in a response. # - # @return [Symbol, OpenAI::Models::ReasoningEffort, nil] - optional :reasoning_effort, enum: -> { OpenAI::Models::ReasoningEffort }, nil?: true + # @return [Symbol, OpenAI::ReasoningEffort, nil] + optional :reasoning_effort, enum: -> { OpenAI::ReasoningEffort }, nil?: true # @!attribute response_format # Specifies the format that the model must output. Compatible with @@ -81,8 +81,8 @@ class AssistantUpdateParams < OpenAI::Internal::Type::BaseModel # indicates the generation exceeded `max_tokens` or the conversation exceeded the # max context length. # - # @return [Symbol, :auto, OpenAI::Models::ResponseFormatText, OpenAI::Models::ResponseFormatJSONObject, OpenAI::Models::ResponseFormatJSONSchema, nil] - optional :response_format, union: -> { OpenAI::Models::Beta::AssistantResponseFormatOption }, nil?: true + # @return [Symbol, :auto, OpenAI::ResponseFormatText, OpenAI::ResponseFormatJSONObject, OpenAI::ResponseFormatJSONSchema, nil] + optional :response_format, union: -> { OpenAI::Beta::AssistantResponseFormatOption }, nil?: true # @!attribute temperature # What sampling temperature to use, between 0 and 2. Higher values like 0.8 will @@ -98,16 +98,16 @@ class AssistantUpdateParams < OpenAI::Internal::Type::BaseModel # a list of file IDs, while the `file_search` tool requires a list of vector store # IDs. # - # @return [OpenAI::Models::Beta::AssistantUpdateParams::ToolResources, nil] - optional :tool_resources, -> { OpenAI::Models::Beta::AssistantUpdateParams::ToolResources }, nil?: true + # @return [OpenAI::Beta::AssistantUpdateParams::ToolResources, nil] + optional :tool_resources, -> { OpenAI::Beta::AssistantUpdateParams::ToolResources }, nil?: true # @!attribute 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`, or # `function`. # - # @return [Array, nil] - optional :tools, -> { OpenAI::Internal::Type::ArrayOf[union: OpenAI::Models::Beta::AssistantTool] } + # @return [Array, nil] + optional :tools, -> { OpenAI::Internal::Type::ArrayOf[union: OpenAI::Beta::AssistantTool] } # @!attribute top_p # An alternative to sampling with temperature, called nucleus sampling, where the @@ -123,34 +123,27 @@ class AssistantUpdateParams < OpenAI::Internal::Type::BaseModel # Some parameter documentations has been truncated, see # {OpenAI::Models::Beta::AssistantUpdateParams} for more details. # - # @param description [String, nil] The description of the assistant. The maximum length is 512 characters. ... + # @param description [String, nil] The description of the assistant. The maximum length is 512 characters. # # @param instructions [String, nil] The system instructions that the assistant uses. The maximum length is 256,000 c - # ... # - # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be # - # @param model [String, Symbol, OpenAI::Models::Beta::AssistantUpdateParams::Model] ID of the model to use. You can use the [List models](https://platform.openai.co - # ... + # @param model [String, Symbol, OpenAI::Beta::AssistantUpdateParams::Model] ID of the model to use. You can use the [List models](https://platform.openai.co # - # @param name [String, nil] The name of the assistant. The maximum length is 256 characters. ... + # @param name [String, nil] The name of the assistant. The maximum length is 256 characters. # - # @param reasoning_effort [Symbol, OpenAI::Models::ReasoningEffort, nil] **o-series models only** ... + # @param reasoning_effort [Symbol, OpenAI::ReasoningEffort, nil] **o-series models only** # - # @param response_format [Symbol, :auto, OpenAI::Models::ResponseFormatText, OpenAI::Models::ResponseFormatJSONObject, OpenAI::Models::ResponseFormatJSONSchema, nil] Specifies the format that the model must output. Compatible with [GPT-4o](https: - # ... + # @param response_format [Symbol, :auto, OpenAI::ResponseFormatText, OpenAI::ResponseFormatJSONObject, OpenAI::ResponseFormatJSONSchema, nil] Specifies the format that the model must output. Compatible with [GPT-4o](https: # # @param temperature [Float, nil] What sampling temperature to use, between 0 and 2. Higher values like 0.8 will m - # ... # - # @param tool_resources [OpenAI::Models::Beta::AssistantUpdateParams::ToolResources, nil] A set of resources that are used by the assistant's tools. The resources are spe - # ... + # @param tool_resources [OpenAI::Beta::AssistantUpdateParams::ToolResources, nil] A set of resources that are used by the assistant's tools. The resources are spe # - # @param tools [Array] A list of tool enabled on the assistant. There can be a maximum of 128 tools per - # ... + # @param tools [Array] A list of tool enabled on the assistant. There can be a maximum of 128 tools per # # @param top_p [Float, nil] An alternative to sampling with temperature, called nucleus sampling, where the - # ... # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] @@ -164,77 +157,77 @@ module Model variant String - variant const: -> { OpenAI::Models::Beta::AssistantUpdateParams::Model::GPT_4_1 } + variant const: -> { OpenAI::Beta::AssistantUpdateParams::Model::GPT_4_1 } - variant const: -> { OpenAI::Models::Beta::AssistantUpdateParams::Model::GPT_4_1_MINI } + variant const: -> { OpenAI::Beta::AssistantUpdateParams::Model::GPT_4_1_MINI } - variant const: -> { OpenAI::Models::Beta::AssistantUpdateParams::Model::GPT_4_1_NANO } + variant const: -> { OpenAI::Beta::AssistantUpdateParams::Model::GPT_4_1_NANO } - variant const: -> { OpenAI::Models::Beta::AssistantUpdateParams::Model::GPT_4_1_2025_04_14 } + variant const: -> { OpenAI::Beta::AssistantUpdateParams::Model::GPT_4_1_2025_04_14 } - variant const: -> { OpenAI::Models::Beta::AssistantUpdateParams::Model::GPT_4_1_MINI_2025_04_14 } + variant const: -> { OpenAI::Beta::AssistantUpdateParams::Model::GPT_4_1_MINI_2025_04_14 } - variant const: -> { OpenAI::Models::Beta::AssistantUpdateParams::Model::GPT_4_1_NANO_2025_04_14 } + variant const: -> { OpenAI::Beta::AssistantUpdateParams::Model::GPT_4_1_NANO_2025_04_14 } - variant const: -> { OpenAI::Models::Beta::AssistantUpdateParams::Model::O3_MINI } + variant const: -> { OpenAI::Beta::AssistantUpdateParams::Model::O3_MINI } - variant const: -> { OpenAI::Models::Beta::AssistantUpdateParams::Model::O3_MINI_2025_01_31 } + variant const: -> { OpenAI::Beta::AssistantUpdateParams::Model::O3_MINI_2025_01_31 } - variant const: -> { OpenAI::Models::Beta::AssistantUpdateParams::Model::O1 } + variant const: -> { OpenAI::Beta::AssistantUpdateParams::Model::O1 } - variant const: -> { OpenAI::Models::Beta::AssistantUpdateParams::Model::O1_2024_12_17 } + variant const: -> { OpenAI::Beta::AssistantUpdateParams::Model::O1_2024_12_17 } - variant const: -> { OpenAI::Models::Beta::AssistantUpdateParams::Model::GPT_4O } + variant const: -> { OpenAI::Beta::AssistantUpdateParams::Model::GPT_4O } - variant const: -> { OpenAI::Models::Beta::AssistantUpdateParams::Model::GPT_4O_2024_11_20 } + variant const: -> { OpenAI::Beta::AssistantUpdateParams::Model::GPT_4O_2024_11_20 } - variant const: -> { OpenAI::Models::Beta::AssistantUpdateParams::Model::GPT_4O_2024_08_06 } + variant const: -> { OpenAI::Beta::AssistantUpdateParams::Model::GPT_4O_2024_08_06 } - variant const: -> { OpenAI::Models::Beta::AssistantUpdateParams::Model::GPT_4O_2024_05_13 } + variant const: -> { OpenAI::Beta::AssistantUpdateParams::Model::GPT_4O_2024_05_13 } - variant const: -> { OpenAI::Models::Beta::AssistantUpdateParams::Model::GPT_4O_MINI } + variant const: -> { OpenAI::Beta::AssistantUpdateParams::Model::GPT_4O_MINI } - variant const: -> { OpenAI::Models::Beta::AssistantUpdateParams::Model::GPT_4O_MINI_2024_07_18 } + variant const: -> { OpenAI::Beta::AssistantUpdateParams::Model::GPT_4O_MINI_2024_07_18 } - variant const: -> { OpenAI::Models::Beta::AssistantUpdateParams::Model::GPT_4_5_PREVIEW } + variant const: -> { OpenAI::Beta::AssistantUpdateParams::Model::GPT_4_5_PREVIEW } - variant const: -> { OpenAI::Models::Beta::AssistantUpdateParams::Model::GPT_4_5_PREVIEW_2025_02_27 } + variant const: -> { OpenAI::Beta::AssistantUpdateParams::Model::GPT_4_5_PREVIEW_2025_02_27 } - variant const: -> { OpenAI::Models::Beta::AssistantUpdateParams::Model::GPT_4_TURBO } + variant const: -> { OpenAI::Beta::AssistantUpdateParams::Model::GPT_4_TURBO } - variant const: -> { OpenAI::Models::Beta::AssistantUpdateParams::Model::GPT_4_TURBO_2024_04_09 } + variant const: -> { OpenAI::Beta::AssistantUpdateParams::Model::GPT_4_TURBO_2024_04_09 } - variant const: -> { OpenAI::Models::Beta::AssistantUpdateParams::Model::GPT_4_0125_PREVIEW } + variant const: -> { OpenAI::Beta::AssistantUpdateParams::Model::GPT_4_0125_PREVIEW } - variant const: -> { OpenAI::Models::Beta::AssistantUpdateParams::Model::GPT_4_TURBO_PREVIEW } + variant const: -> { OpenAI::Beta::AssistantUpdateParams::Model::GPT_4_TURBO_PREVIEW } - variant const: -> { OpenAI::Models::Beta::AssistantUpdateParams::Model::GPT_4_1106_PREVIEW } + variant const: -> { OpenAI::Beta::AssistantUpdateParams::Model::GPT_4_1106_PREVIEW } - variant const: -> { OpenAI::Models::Beta::AssistantUpdateParams::Model::GPT_4_VISION_PREVIEW } + variant const: -> { OpenAI::Beta::AssistantUpdateParams::Model::GPT_4_VISION_PREVIEW } - variant const: -> { OpenAI::Models::Beta::AssistantUpdateParams::Model::GPT_4 } + variant const: -> { OpenAI::Beta::AssistantUpdateParams::Model::GPT_4 } - variant const: -> { OpenAI::Models::Beta::AssistantUpdateParams::Model::GPT_4_0314 } + variant const: -> { OpenAI::Beta::AssistantUpdateParams::Model::GPT_4_0314 } - variant const: -> { OpenAI::Models::Beta::AssistantUpdateParams::Model::GPT_4_0613 } + variant const: -> { OpenAI::Beta::AssistantUpdateParams::Model::GPT_4_0613 } - variant const: -> { OpenAI::Models::Beta::AssistantUpdateParams::Model::GPT_4_32K } + variant const: -> { OpenAI::Beta::AssistantUpdateParams::Model::GPT_4_32K } - variant const: -> { OpenAI::Models::Beta::AssistantUpdateParams::Model::GPT_4_32K_0314 } + variant const: -> { OpenAI::Beta::AssistantUpdateParams::Model::GPT_4_32K_0314 } - variant const: -> { OpenAI::Models::Beta::AssistantUpdateParams::Model::GPT_4_32K_0613 } + variant const: -> { OpenAI::Beta::AssistantUpdateParams::Model::GPT_4_32K_0613 } - variant const: -> { OpenAI::Models::Beta::AssistantUpdateParams::Model::GPT_3_5_TURBO } + variant const: -> { OpenAI::Beta::AssistantUpdateParams::Model::GPT_3_5_TURBO } - variant const: -> { OpenAI::Models::Beta::AssistantUpdateParams::Model::GPT_3_5_TURBO_16K } + variant const: -> { OpenAI::Beta::AssistantUpdateParams::Model::GPT_3_5_TURBO_16K } - variant const: -> { OpenAI::Models::Beta::AssistantUpdateParams::Model::GPT_3_5_TURBO_0613 } + variant const: -> { OpenAI::Beta::AssistantUpdateParams::Model::GPT_3_5_TURBO_0613 } - variant const: -> { OpenAI::Models::Beta::AssistantUpdateParams::Model::GPT_3_5_TURBO_1106 } + variant const: -> { OpenAI::Beta::AssistantUpdateParams::Model::GPT_3_5_TURBO_1106 } - variant const: -> { OpenAI::Models::Beta::AssistantUpdateParams::Model::GPT_3_5_TURBO_0125 } + variant const: -> { OpenAI::Beta::AssistantUpdateParams::Model::GPT_3_5_TURBO_0125 } - variant const: -> { OpenAI::Models::Beta::AssistantUpdateParams::Model::GPT_3_5_TURBO_16K_0613 } + variant const: -> { OpenAI::Beta::AssistantUpdateParams::Model::GPT_3_5_TURBO_16K_0613 } # @!method self.variants # @return [Array(String, Symbol)] @@ -284,14 +277,16 @@ module Model class ToolResources < OpenAI::Internal::Type::BaseModel # @!attribute code_interpreter # - # @return [OpenAI::Models::Beta::AssistantUpdateParams::ToolResources::CodeInterpreter, nil] + # @return [OpenAI::Beta::AssistantUpdateParams::ToolResources::CodeInterpreter, nil] optional :code_interpreter, - -> { OpenAI::Models::Beta::AssistantUpdateParams::ToolResources::CodeInterpreter } + -> { + OpenAI::Beta::AssistantUpdateParams::ToolResources::CodeInterpreter + } # @!attribute file_search # - # @return [OpenAI::Models::Beta::AssistantUpdateParams::ToolResources::FileSearch, nil] - optional :file_search, -> { OpenAI::Models::Beta::AssistantUpdateParams::ToolResources::FileSearch } + # @return [OpenAI::Beta::AssistantUpdateParams::ToolResources::FileSearch, nil] + optional :file_search, -> { OpenAI::Beta::AssistantUpdateParams::ToolResources::FileSearch } # @!method initialize(code_interpreter: nil, file_search: nil) # A set of resources that are used by the assistant's tools. The resources are @@ -299,10 +294,10 @@ class ToolResources < OpenAI::Internal::Type::BaseModel # a list of file IDs, while the `file_search` tool requires a list of vector store # IDs. # - # @param code_interpreter [OpenAI::Models::Beta::AssistantUpdateParams::ToolResources::CodeInterpreter] - # @param file_search [OpenAI::Models::Beta::AssistantUpdateParams::ToolResources::FileSearch] + # @param code_interpreter [OpenAI::Beta::AssistantUpdateParams::ToolResources::CodeInterpreter] + # @param file_search [OpenAI::Beta::AssistantUpdateParams::ToolResources::FileSearch] - # @see OpenAI::Models::Beta::AssistantUpdateParams::ToolResources#code_interpreter + # @see OpenAI::Beta::AssistantUpdateParams::ToolResources#code_interpreter class CodeInterpreter < OpenAI::Internal::Type::BaseModel # @!attribute file_ids # Overrides the list of @@ -315,14 +310,13 @@ class CodeInterpreter < OpenAI::Internal::Type::BaseModel # @!method initialize(file_ids: nil) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Beta::AssistantUpdateParams::ToolResources::CodeInterpreter} - # for more details. + # {OpenAI::Beta::AssistantUpdateParams::ToolResources::CodeInterpreter} for more + # details. # # @param file_ids [Array] Overrides the list of [file](https://platform.openai.com/docs/api-reference/file - # ... end - # @see OpenAI::Models::Beta::AssistantUpdateParams::ToolResources#file_search + # @see OpenAI::Beta::AssistantUpdateParams::ToolResources#file_search class FileSearch < OpenAI::Internal::Type::BaseModel # @!attribute vector_store_ids # Overrides the @@ -335,11 +329,10 @@ class FileSearch < OpenAI::Internal::Type::BaseModel # @!method initialize(vector_store_ids: nil) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Beta::AssistantUpdateParams::ToolResources::FileSearch} for - # more details. + # {OpenAI::Beta::AssistantUpdateParams::ToolResources::FileSearch} for more + # details. # # @param vector_store_ids [Array] Overrides the [vector store](https://platform.openai.com/docs/api-reference/vect - # ... end end end diff --git a/lib/openai/models/beta/file_search_tool.rb b/lib/openai/models/beta/file_search_tool.rb index 2dbd7d7a..c521e6a6 100644 --- a/lib/openai/models/beta/file_search_tool.rb +++ b/lib/openai/models/beta/file_search_tool.rb @@ -13,15 +13,15 @@ class FileSearchTool < OpenAI::Internal::Type::BaseModel # @!attribute file_search # Overrides for the file search tool. # - # @return [OpenAI::Models::Beta::FileSearchTool::FileSearch, nil] - optional :file_search, -> { OpenAI::Models::Beta::FileSearchTool::FileSearch } + # @return [OpenAI::Beta::FileSearchTool::FileSearch, nil] + optional :file_search, -> { OpenAI::Beta::FileSearchTool::FileSearch } # @!method initialize(file_search: nil, type: :file_search) - # @param file_search [OpenAI::Models::Beta::FileSearchTool::FileSearch] Overrides for the file search tool. + # @param file_search [OpenAI::Beta::FileSearchTool::FileSearch] Overrides for the file search tool. # # @param type [Symbol, :file_search] The type of tool being defined: `file_search` - # @see OpenAI::Models::Beta::FileSearchTool#file_search + # @see OpenAI::Beta::FileSearchTool#file_search class FileSearch < OpenAI::Internal::Type::BaseModel # @!attribute max_num_results # The maximum number of results the file search tool should output. The default is @@ -44,22 +44,20 @@ class FileSearch < OpenAI::Internal::Type::BaseModel # [file search tool documentation](https://platform.openai.com/docs/assistants/tools/file-search#customizing-file-search-settings) # for more information. # - # @return [OpenAI::Models::Beta::FileSearchTool::FileSearch::RankingOptions, nil] - optional :ranking_options, -> { OpenAI::Models::Beta::FileSearchTool::FileSearch::RankingOptions } + # @return [OpenAI::Beta::FileSearchTool::FileSearch::RankingOptions, nil] + optional :ranking_options, -> { OpenAI::Beta::FileSearchTool::FileSearch::RankingOptions } # @!method initialize(max_num_results: nil, ranking_options: nil) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Beta::FileSearchTool::FileSearch} for more details. + # {OpenAI::Beta::FileSearchTool::FileSearch} for more details. # # Overrides for the file search tool. # # @param max_num_results [Integer] The maximum number of results the file search tool should output. The default is - # ... # - # @param ranking_options [OpenAI::Models::Beta::FileSearchTool::FileSearch::RankingOptions] The ranking options for the file search. If not specified, the file search tool - # ... + # @param ranking_options [OpenAI::Beta::FileSearchTool::FileSearch::RankingOptions] The ranking options for the file search. If not specified, the file search tool - # @see OpenAI::Models::Beta::FileSearchTool::FileSearch#ranking_options + # @see OpenAI::Beta::FileSearchTool::FileSearch#ranking_options class RankingOptions < OpenAI::Internal::Type::BaseModel # @!attribute score_threshold # The score threshold for the file search. All values must be a floating point @@ -72,13 +70,12 @@ class RankingOptions < OpenAI::Internal::Type::BaseModel # The ranker to use for the file search. If not specified will use the `auto` # ranker. # - # @return [Symbol, OpenAI::Models::Beta::FileSearchTool::FileSearch::RankingOptions::Ranker, nil] - optional :ranker, enum: -> { OpenAI::Models::Beta::FileSearchTool::FileSearch::RankingOptions::Ranker } + # @return [Symbol, OpenAI::Beta::FileSearchTool::FileSearch::RankingOptions::Ranker, nil] + optional :ranker, enum: -> { OpenAI::Beta::FileSearchTool::FileSearch::RankingOptions::Ranker } # @!method initialize(score_threshold:, ranker: nil) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Beta::FileSearchTool::FileSearch::RankingOptions} for more - # details. + # {OpenAI::Beta::FileSearchTool::FileSearch::RankingOptions} for more details. # # The ranking options for the file search. If not specified, the file search tool # will use the `auto` ranker and a score_threshold of 0. @@ -88,15 +85,13 @@ class RankingOptions < OpenAI::Internal::Type::BaseModel # for more information. # # @param score_threshold [Float] The score threshold for the file search. All values must be a floating point num - # ... # - # @param ranker [Symbol, OpenAI::Models::Beta::FileSearchTool::FileSearch::RankingOptions::Ranker] The ranker to use for the file search. If not specified will use the `auto` rank - # ... + # @param ranker [Symbol, OpenAI::Beta::FileSearchTool::FileSearch::RankingOptions::Ranker] The ranker to use for the file search. If not specified will use the `auto` rank # The ranker to use for the file search. If not specified will use the `auto` # ranker. # - # @see OpenAI::Models::Beta::FileSearchTool::FileSearch::RankingOptions#ranker + # @see OpenAI::Beta::FileSearchTool::FileSearch::RankingOptions#ranker module Ranker extend OpenAI::Internal::Type::Enum diff --git a/lib/openai/models/beta/function_tool.rb b/lib/openai/models/beta/function_tool.rb index 4a76a200..512eb078 100644 --- a/lib/openai/models/beta/function_tool.rb +++ b/lib/openai/models/beta/function_tool.rb @@ -6,8 +6,8 @@ module Beta class FunctionTool < OpenAI::Internal::Type::BaseModel # @!attribute function # - # @return [OpenAI::Models::FunctionDefinition] - required :function, -> { OpenAI::Models::FunctionDefinition } + # @return [OpenAI::FunctionDefinition] + required :function, -> { OpenAI::FunctionDefinition } # @!attribute type # The type of tool being defined: `function` @@ -16,7 +16,7 @@ class FunctionTool < OpenAI::Internal::Type::BaseModel required :type, const: :function # @!method initialize(function:, type: :function) - # @param function [OpenAI::Models::FunctionDefinition] + # @param function [OpenAI::FunctionDefinition] # # @param type [Symbol, :function] The type of tool being defined: `function` end diff --git a/lib/openai/models/beta/message_stream_event.rb b/lib/openai/models/beta/message_stream_event.rb index 77a99a07..ce394898 100644 --- a/lib/openai/models/beta/message_stream_event.rb +++ b/lib/openai/models/beta/message_stream_event.rb @@ -12,30 +12,30 @@ module MessageStreamEvent discriminator :event # Occurs when a [message](https://platform.openai.com/docs/api-reference/messages/object) is created. - variant :"thread.message.created", -> { OpenAI::Models::Beta::MessageStreamEvent::ThreadMessageCreated } + variant :"thread.message.created", -> { OpenAI::Beta::MessageStreamEvent::ThreadMessageCreated } # Occurs when a [message](https://platform.openai.com/docs/api-reference/messages/object) moves to an `in_progress` state. variant :"thread.message.in_progress", - -> { OpenAI::Models::Beta::MessageStreamEvent::ThreadMessageInProgress } + -> { + OpenAI::Beta::MessageStreamEvent::ThreadMessageInProgress + } # Occurs when parts of a [Message](https://platform.openai.com/docs/api-reference/messages/object) are being streamed. - variant :"thread.message.delta", -> { OpenAI::Models::Beta::MessageStreamEvent::ThreadMessageDelta } + variant :"thread.message.delta", -> { OpenAI::Beta::MessageStreamEvent::ThreadMessageDelta } # Occurs when a [message](https://platform.openai.com/docs/api-reference/messages/object) is completed. - variant :"thread.message.completed", - -> { OpenAI::Models::Beta::MessageStreamEvent::ThreadMessageCompleted } + variant :"thread.message.completed", -> { OpenAI::Beta::MessageStreamEvent::ThreadMessageCompleted } # Occurs when a [message](https://platform.openai.com/docs/api-reference/messages/object) ends before it is completed. - variant :"thread.message.incomplete", - -> { OpenAI::Models::Beta::MessageStreamEvent::ThreadMessageIncomplete } + variant :"thread.message.incomplete", -> { OpenAI::Beta::MessageStreamEvent::ThreadMessageIncomplete } class ThreadMessageCreated < OpenAI::Internal::Type::BaseModel # @!attribute data # Represents a message within a # [thread](https://platform.openai.com/docs/api-reference/threads). # - # @return [OpenAI::Models::Beta::Threads::Message] - required :data, -> { OpenAI::Models::Beta::Threads::Message } + # @return [OpenAI::Beta::Threads::Message] + required :data, -> { OpenAI::Beta::Threads::Message } # @!attribute event # @@ -44,15 +44,13 @@ class ThreadMessageCreated < OpenAI::Internal::Type::BaseModel # @!method initialize(data:, event: :"thread.message.created") # Some parameter documentations has been truncated, see - # {OpenAI::Models::Beta::MessageStreamEvent::ThreadMessageCreated} for more - # details. + # {OpenAI::Beta::MessageStreamEvent::ThreadMessageCreated} for more details. # # Occurs when a # [message](https://platform.openai.com/docs/api-reference/messages/object) is # created. # - # @param data [OpenAI::Models::Beta::Threads::Message] Represents a message within a [thread](https://platform.openai.com/docs/api-refe - # ... + # @param data [OpenAI::Beta::Threads::Message] Represents a message within a [thread](https://platform.openai.com/docs/api-refe # # @param event [Symbol, :"thread.message.created"] end @@ -62,8 +60,8 @@ class ThreadMessageInProgress < OpenAI::Internal::Type::BaseModel # Represents a message within a # [thread](https://platform.openai.com/docs/api-reference/threads). # - # @return [OpenAI::Models::Beta::Threads::Message] - required :data, -> { OpenAI::Models::Beta::Threads::Message } + # @return [OpenAI::Beta::Threads::Message] + required :data, -> { OpenAI::Beta::Threads::Message } # @!attribute event # @@ -72,15 +70,13 @@ class ThreadMessageInProgress < OpenAI::Internal::Type::BaseModel # @!method initialize(data:, event: :"thread.message.in_progress") # Some parameter documentations has been truncated, see - # {OpenAI::Models::Beta::MessageStreamEvent::ThreadMessageInProgress} for more - # details. + # {OpenAI::Beta::MessageStreamEvent::ThreadMessageInProgress} for more details. # # Occurs when a # [message](https://platform.openai.com/docs/api-reference/messages/object) moves # to an `in_progress` state. # - # @param data [OpenAI::Models::Beta::Threads::Message] Represents a message within a [thread](https://platform.openai.com/docs/api-refe - # ... + # @param data [OpenAI::Beta::Threads::Message] Represents a message within a [thread](https://platform.openai.com/docs/api-refe # # @param event [Symbol, :"thread.message.in_progress"] end @@ -90,8 +86,8 @@ class ThreadMessageDelta < OpenAI::Internal::Type::BaseModel # Represents a message delta i.e. any changed fields on a message during # streaming. # - # @return [OpenAI::Models::Beta::Threads::MessageDeltaEvent] - required :data, -> { OpenAI::Models::Beta::Threads::MessageDeltaEvent } + # @return [OpenAI::Beta::Threads::MessageDeltaEvent] + required :data, -> { OpenAI::Beta::Threads::MessageDeltaEvent } # @!attribute event # @@ -100,14 +96,13 @@ class ThreadMessageDelta < OpenAI::Internal::Type::BaseModel # @!method initialize(data:, event: :"thread.message.delta") # Some parameter documentations has been truncated, see - # {OpenAI::Models::Beta::MessageStreamEvent::ThreadMessageDelta} for more details. + # {OpenAI::Beta::MessageStreamEvent::ThreadMessageDelta} for more details. # # Occurs when parts of a # [Message](https://platform.openai.com/docs/api-reference/messages/object) are # being streamed. # - # @param data [OpenAI::Models::Beta::Threads::MessageDeltaEvent] Represents a message delta i.e. any changed fields on a message during streaming - # ... + # @param data [OpenAI::Beta::Threads::MessageDeltaEvent] Represents a message delta i.e. any changed fields on a message during streaming # # @param event [Symbol, :"thread.message.delta"] end @@ -117,8 +112,8 @@ class ThreadMessageCompleted < OpenAI::Internal::Type::BaseModel # Represents a message within a # [thread](https://platform.openai.com/docs/api-reference/threads). # - # @return [OpenAI::Models::Beta::Threads::Message] - required :data, -> { OpenAI::Models::Beta::Threads::Message } + # @return [OpenAI::Beta::Threads::Message] + required :data, -> { OpenAI::Beta::Threads::Message } # @!attribute event # @@ -127,15 +122,13 @@ class ThreadMessageCompleted < OpenAI::Internal::Type::BaseModel # @!method initialize(data:, event: :"thread.message.completed") # Some parameter documentations has been truncated, see - # {OpenAI::Models::Beta::MessageStreamEvent::ThreadMessageCompleted} for more - # details. + # {OpenAI::Beta::MessageStreamEvent::ThreadMessageCompleted} for more details. # # Occurs when a # [message](https://platform.openai.com/docs/api-reference/messages/object) is # completed. # - # @param data [OpenAI::Models::Beta::Threads::Message] Represents a message within a [thread](https://platform.openai.com/docs/api-refe - # ... + # @param data [OpenAI::Beta::Threads::Message] Represents a message within a [thread](https://platform.openai.com/docs/api-refe # # @param event [Symbol, :"thread.message.completed"] end @@ -145,8 +138,8 @@ class ThreadMessageIncomplete < OpenAI::Internal::Type::BaseModel # Represents a message within a # [thread](https://platform.openai.com/docs/api-reference/threads). # - # @return [OpenAI::Models::Beta::Threads::Message] - required :data, -> { OpenAI::Models::Beta::Threads::Message } + # @return [OpenAI::Beta::Threads::Message] + required :data, -> { OpenAI::Beta::Threads::Message } # @!attribute event # @@ -155,21 +148,19 @@ class ThreadMessageIncomplete < OpenAI::Internal::Type::BaseModel # @!method initialize(data:, event: :"thread.message.incomplete") # Some parameter documentations has been truncated, see - # {OpenAI::Models::Beta::MessageStreamEvent::ThreadMessageIncomplete} for more - # details. + # {OpenAI::Beta::MessageStreamEvent::ThreadMessageIncomplete} for more details. # # Occurs when a # [message](https://platform.openai.com/docs/api-reference/messages/object) ends # before it is completed. # - # @param data [OpenAI::Models::Beta::Threads::Message] Represents a message within a [thread](https://platform.openai.com/docs/api-refe - # ... + # @param data [OpenAI::Beta::Threads::Message] Represents a message within a [thread](https://platform.openai.com/docs/api-refe # # @param event [Symbol, :"thread.message.incomplete"] end # @!method self.variants - # @return [Array(OpenAI::Models::Beta::MessageStreamEvent::ThreadMessageCreated, OpenAI::Models::Beta::MessageStreamEvent::ThreadMessageInProgress, OpenAI::Models::Beta::MessageStreamEvent::ThreadMessageDelta, OpenAI::Models::Beta::MessageStreamEvent::ThreadMessageCompleted, OpenAI::Models::Beta::MessageStreamEvent::ThreadMessageIncomplete)] + # @return [Array(OpenAI::Beta::MessageStreamEvent::ThreadMessageCreated, OpenAI::Beta::MessageStreamEvent::ThreadMessageInProgress, OpenAI::Beta::MessageStreamEvent::ThreadMessageDelta, OpenAI::Beta::MessageStreamEvent::ThreadMessageCompleted, OpenAI::Beta::MessageStreamEvent::ThreadMessageIncomplete)] end end end diff --git a/lib/openai/models/beta/run_step_stream_event.rb b/lib/openai/models/beta/run_step_stream_event.rb index f876f01e..40fef09f 100644 --- a/lib/openai/models/beta/run_step_stream_event.rb +++ b/lib/openai/models/beta/run_step_stream_event.rb @@ -12,35 +12,35 @@ module RunStepStreamEvent discriminator :event # Occurs when a [run step](https://platform.openai.com/docs/api-reference/run-steps/step-object) is created. - variant :"thread.run.step.created", -> { OpenAI::Models::Beta::RunStepStreamEvent::ThreadRunStepCreated } + variant :"thread.run.step.created", -> { OpenAI::Beta::RunStepStreamEvent::ThreadRunStepCreated } # Occurs when a [run step](https://platform.openai.com/docs/api-reference/run-steps/step-object) moves to an `in_progress` state. variant :"thread.run.step.in_progress", - -> { OpenAI::Models::Beta::RunStepStreamEvent::ThreadRunStepInProgress } + -> { + OpenAI::Beta::RunStepStreamEvent::ThreadRunStepInProgress + } # Occurs when parts of a [run step](https://platform.openai.com/docs/api-reference/run-steps/step-object) are being streamed. - variant :"thread.run.step.delta", -> { OpenAI::Models::Beta::RunStepStreamEvent::ThreadRunStepDelta } + variant :"thread.run.step.delta", -> { OpenAI::Beta::RunStepStreamEvent::ThreadRunStepDelta } # Occurs when a [run step](https://platform.openai.com/docs/api-reference/run-steps/step-object) is completed. - variant :"thread.run.step.completed", - -> { OpenAI::Models::Beta::RunStepStreamEvent::ThreadRunStepCompleted } + variant :"thread.run.step.completed", -> { OpenAI::Beta::RunStepStreamEvent::ThreadRunStepCompleted } # Occurs when a [run step](https://platform.openai.com/docs/api-reference/run-steps/step-object) fails. - variant :"thread.run.step.failed", -> { OpenAI::Models::Beta::RunStepStreamEvent::ThreadRunStepFailed } + variant :"thread.run.step.failed", -> { OpenAI::Beta::RunStepStreamEvent::ThreadRunStepFailed } # Occurs when a [run step](https://platform.openai.com/docs/api-reference/run-steps/step-object) is cancelled. - variant :"thread.run.step.cancelled", - -> { OpenAI::Models::Beta::RunStepStreamEvent::ThreadRunStepCancelled } + variant :"thread.run.step.cancelled", -> { OpenAI::Beta::RunStepStreamEvent::ThreadRunStepCancelled } # Occurs when a [run step](https://platform.openai.com/docs/api-reference/run-steps/step-object) expires. - variant :"thread.run.step.expired", -> { OpenAI::Models::Beta::RunStepStreamEvent::ThreadRunStepExpired } + variant :"thread.run.step.expired", -> { OpenAI::Beta::RunStepStreamEvent::ThreadRunStepExpired } class ThreadRunStepCreated < OpenAI::Internal::Type::BaseModel # @!attribute data # Represents a step in execution of a run. # - # @return [OpenAI::Models::Beta::Threads::Runs::RunStep] - required :data, -> { OpenAI::Models::Beta::Threads::Runs::RunStep } + # @return [OpenAI::Beta::Threads::Runs::RunStep] + required :data, -> { OpenAI::Beta::Threads::Runs::RunStep } # @!attribute event # @@ -49,14 +49,13 @@ class ThreadRunStepCreated < OpenAI::Internal::Type::BaseModel # @!method initialize(data:, event: :"thread.run.step.created") # Some parameter documentations has been truncated, see - # {OpenAI::Models::Beta::RunStepStreamEvent::ThreadRunStepCreated} for more - # details. + # {OpenAI::Beta::RunStepStreamEvent::ThreadRunStepCreated} for more details. # # Occurs when a # [run step](https://platform.openai.com/docs/api-reference/run-steps/step-object) # is created. # - # @param data [OpenAI::Models::Beta::Threads::Runs::RunStep] Represents a step in execution of a run. ... + # @param data [OpenAI::Beta::Threads::Runs::RunStep] Represents a step in execution of a run. # # @param event [Symbol, :"thread.run.step.created"] end @@ -65,8 +64,8 @@ class ThreadRunStepInProgress < OpenAI::Internal::Type::BaseModel # @!attribute data # Represents a step in execution of a run. # - # @return [OpenAI::Models::Beta::Threads::Runs::RunStep] - required :data, -> { OpenAI::Models::Beta::Threads::Runs::RunStep } + # @return [OpenAI::Beta::Threads::Runs::RunStep] + required :data, -> { OpenAI::Beta::Threads::Runs::RunStep } # @!attribute event # @@ -75,14 +74,13 @@ class ThreadRunStepInProgress < OpenAI::Internal::Type::BaseModel # @!method initialize(data:, event: :"thread.run.step.in_progress") # Some parameter documentations has been truncated, see - # {OpenAI::Models::Beta::RunStepStreamEvent::ThreadRunStepInProgress} for more - # details. + # {OpenAI::Beta::RunStepStreamEvent::ThreadRunStepInProgress} for more details. # # Occurs when a # [run step](https://platform.openai.com/docs/api-reference/run-steps/step-object) # moves to an `in_progress` state. # - # @param data [OpenAI::Models::Beta::Threads::Runs::RunStep] Represents a step in execution of a run. ... + # @param data [OpenAI::Beta::Threads::Runs::RunStep] Represents a step in execution of a run. # # @param event [Symbol, :"thread.run.step.in_progress"] end @@ -92,8 +90,8 @@ class ThreadRunStepDelta < OpenAI::Internal::Type::BaseModel # Represents a run step delta i.e. any changed fields on a run step during # streaming. # - # @return [OpenAI::Models::Beta::Threads::Runs::RunStepDeltaEvent] - required :data, -> { OpenAI::Models::Beta::Threads::Runs::RunStepDeltaEvent } + # @return [OpenAI::Beta::Threads::Runs::RunStepDeltaEvent] + required :data, -> { OpenAI::Beta::Threads::Runs::RunStepDeltaEvent } # @!attribute event # @@ -102,14 +100,13 @@ class ThreadRunStepDelta < OpenAI::Internal::Type::BaseModel # @!method initialize(data:, event: :"thread.run.step.delta") # Some parameter documentations has been truncated, see - # {OpenAI::Models::Beta::RunStepStreamEvent::ThreadRunStepDelta} for more details. + # {OpenAI::Beta::RunStepStreamEvent::ThreadRunStepDelta} for more details. # # Occurs when parts of a # [run step](https://platform.openai.com/docs/api-reference/run-steps/step-object) # are being streamed. # - # @param data [OpenAI::Models::Beta::Threads::Runs::RunStepDeltaEvent] Represents a run step delta i.e. any changed fields on a run step during streami - # ... + # @param data [OpenAI::Beta::Threads::Runs::RunStepDeltaEvent] Represents a run step delta i.e. any changed fields on a run step during streami # # @param event [Symbol, :"thread.run.step.delta"] end @@ -118,8 +115,8 @@ class ThreadRunStepCompleted < OpenAI::Internal::Type::BaseModel # @!attribute data # Represents a step in execution of a run. # - # @return [OpenAI::Models::Beta::Threads::Runs::RunStep] - required :data, -> { OpenAI::Models::Beta::Threads::Runs::RunStep } + # @return [OpenAI::Beta::Threads::Runs::RunStep] + required :data, -> { OpenAI::Beta::Threads::Runs::RunStep } # @!attribute event # @@ -128,14 +125,13 @@ class ThreadRunStepCompleted < OpenAI::Internal::Type::BaseModel # @!method initialize(data:, event: :"thread.run.step.completed") # Some parameter documentations has been truncated, see - # {OpenAI::Models::Beta::RunStepStreamEvent::ThreadRunStepCompleted} for more - # details. + # {OpenAI::Beta::RunStepStreamEvent::ThreadRunStepCompleted} for more details. # # Occurs when a # [run step](https://platform.openai.com/docs/api-reference/run-steps/step-object) # is completed. # - # @param data [OpenAI::Models::Beta::Threads::Runs::RunStep] Represents a step in execution of a run. ... + # @param data [OpenAI::Beta::Threads::Runs::RunStep] Represents a step in execution of a run. # # @param event [Symbol, :"thread.run.step.completed"] end @@ -144,8 +140,8 @@ class ThreadRunStepFailed < OpenAI::Internal::Type::BaseModel # @!attribute data # Represents a step in execution of a run. # - # @return [OpenAI::Models::Beta::Threads::Runs::RunStep] - required :data, -> { OpenAI::Models::Beta::Threads::Runs::RunStep } + # @return [OpenAI::Beta::Threads::Runs::RunStep] + required :data, -> { OpenAI::Beta::Threads::Runs::RunStep } # @!attribute event # @@ -154,14 +150,13 @@ class ThreadRunStepFailed < OpenAI::Internal::Type::BaseModel # @!method initialize(data:, event: :"thread.run.step.failed") # Some parameter documentations has been truncated, see - # {OpenAI::Models::Beta::RunStepStreamEvent::ThreadRunStepFailed} for more - # details. + # {OpenAI::Beta::RunStepStreamEvent::ThreadRunStepFailed} for more details. # # Occurs when a # [run step](https://platform.openai.com/docs/api-reference/run-steps/step-object) # fails. # - # @param data [OpenAI::Models::Beta::Threads::Runs::RunStep] Represents a step in execution of a run. ... + # @param data [OpenAI::Beta::Threads::Runs::RunStep] Represents a step in execution of a run. # # @param event [Symbol, :"thread.run.step.failed"] end @@ -170,8 +165,8 @@ class ThreadRunStepCancelled < OpenAI::Internal::Type::BaseModel # @!attribute data # Represents a step in execution of a run. # - # @return [OpenAI::Models::Beta::Threads::Runs::RunStep] - required :data, -> { OpenAI::Models::Beta::Threads::Runs::RunStep } + # @return [OpenAI::Beta::Threads::Runs::RunStep] + required :data, -> { OpenAI::Beta::Threads::Runs::RunStep } # @!attribute event # @@ -180,14 +175,13 @@ class ThreadRunStepCancelled < OpenAI::Internal::Type::BaseModel # @!method initialize(data:, event: :"thread.run.step.cancelled") # Some parameter documentations has been truncated, see - # {OpenAI::Models::Beta::RunStepStreamEvent::ThreadRunStepCancelled} for more - # details. + # {OpenAI::Beta::RunStepStreamEvent::ThreadRunStepCancelled} for more details. # # Occurs when a # [run step](https://platform.openai.com/docs/api-reference/run-steps/step-object) # is cancelled. # - # @param data [OpenAI::Models::Beta::Threads::Runs::RunStep] Represents a step in execution of a run. ... + # @param data [OpenAI::Beta::Threads::Runs::RunStep] Represents a step in execution of a run. # # @param event [Symbol, :"thread.run.step.cancelled"] end @@ -196,8 +190,8 @@ class ThreadRunStepExpired < OpenAI::Internal::Type::BaseModel # @!attribute data # Represents a step in execution of a run. # - # @return [OpenAI::Models::Beta::Threads::Runs::RunStep] - required :data, -> { OpenAI::Models::Beta::Threads::Runs::RunStep } + # @return [OpenAI::Beta::Threads::Runs::RunStep] + required :data, -> { OpenAI::Beta::Threads::Runs::RunStep } # @!attribute event # @@ -206,20 +200,19 @@ class ThreadRunStepExpired < OpenAI::Internal::Type::BaseModel # @!method initialize(data:, event: :"thread.run.step.expired") # Some parameter documentations has been truncated, see - # {OpenAI::Models::Beta::RunStepStreamEvent::ThreadRunStepExpired} for more - # details. + # {OpenAI::Beta::RunStepStreamEvent::ThreadRunStepExpired} for more details. # # Occurs when a # [run step](https://platform.openai.com/docs/api-reference/run-steps/step-object) # expires. # - # @param data [OpenAI::Models::Beta::Threads::Runs::RunStep] Represents a step in execution of a run. ... + # @param data [OpenAI::Beta::Threads::Runs::RunStep] Represents a step in execution of a run. # # @param event [Symbol, :"thread.run.step.expired"] end # @!method self.variants - # @return [Array(OpenAI::Models::Beta::RunStepStreamEvent::ThreadRunStepCreated, OpenAI::Models::Beta::RunStepStreamEvent::ThreadRunStepInProgress, OpenAI::Models::Beta::RunStepStreamEvent::ThreadRunStepDelta, OpenAI::Models::Beta::RunStepStreamEvent::ThreadRunStepCompleted, OpenAI::Models::Beta::RunStepStreamEvent::ThreadRunStepFailed, OpenAI::Models::Beta::RunStepStreamEvent::ThreadRunStepCancelled, OpenAI::Models::Beta::RunStepStreamEvent::ThreadRunStepExpired)] + # @return [Array(OpenAI::Beta::RunStepStreamEvent::ThreadRunStepCreated, OpenAI::Beta::RunStepStreamEvent::ThreadRunStepInProgress, OpenAI::Beta::RunStepStreamEvent::ThreadRunStepDelta, OpenAI::Beta::RunStepStreamEvent::ThreadRunStepCompleted, OpenAI::Beta::RunStepStreamEvent::ThreadRunStepFailed, OpenAI::Beta::RunStepStreamEvent::ThreadRunStepCancelled, OpenAI::Beta::RunStepStreamEvent::ThreadRunStepExpired)] end end end diff --git a/lib/openai/models/beta/run_stream_event.rb b/lib/openai/models/beta/run_stream_event.rb index 19bda475..ca41f968 100644 --- a/lib/openai/models/beta/run_stream_event.rb +++ b/lib/openai/models/beta/run_stream_event.rb @@ -11,43 +11,42 @@ module RunStreamEvent discriminator :event # Occurs when a new [run](https://platform.openai.com/docs/api-reference/runs/object) is created. - variant :"thread.run.created", -> { OpenAI::Models::Beta::RunStreamEvent::ThreadRunCreated } + variant :"thread.run.created", -> { OpenAI::Beta::RunStreamEvent::ThreadRunCreated } # Occurs when a [run](https://platform.openai.com/docs/api-reference/runs/object) moves to a `queued` status. - variant :"thread.run.queued", -> { OpenAI::Models::Beta::RunStreamEvent::ThreadRunQueued } + variant :"thread.run.queued", -> { OpenAI::Beta::RunStreamEvent::ThreadRunQueued } # Occurs when a [run](https://platform.openai.com/docs/api-reference/runs/object) moves to an `in_progress` status. - variant :"thread.run.in_progress", -> { OpenAI::Models::Beta::RunStreamEvent::ThreadRunInProgress } + variant :"thread.run.in_progress", -> { OpenAI::Beta::RunStreamEvent::ThreadRunInProgress } # Occurs when a [run](https://platform.openai.com/docs/api-reference/runs/object) moves to a `requires_action` status. - variant :"thread.run.requires_action", - -> { OpenAI::Models::Beta::RunStreamEvent::ThreadRunRequiresAction } + variant :"thread.run.requires_action", -> { OpenAI::Beta::RunStreamEvent::ThreadRunRequiresAction } # Occurs when a [run](https://platform.openai.com/docs/api-reference/runs/object) is completed. - variant :"thread.run.completed", -> { OpenAI::Models::Beta::RunStreamEvent::ThreadRunCompleted } + variant :"thread.run.completed", -> { OpenAI::Beta::RunStreamEvent::ThreadRunCompleted } # Occurs when a [run](https://platform.openai.com/docs/api-reference/runs/object) ends with status `incomplete`. - variant :"thread.run.incomplete", -> { OpenAI::Models::Beta::RunStreamEvent::ThreadRunIncomplete } + variant :"thread.run.incomplete", -> { OpenAI::Beta::RunStreamEvent::ThreadRunIncomplete } # Occurs when a [run](https://platform.openai.com/docs/api-reference/runs/object) fails. - variant :"thread.run.failed", -> { OpenAI::Models::Beta::RunStreamEvent::ThreadRunFailed } + variant :"thread.run.failed", -> { OpenAI::Beta::RunStreamEvent::ThreadRunFailed } # Occurs when a [run](https://platform.openai.com/docs/api-reference/runs/object) moves to a `cancelling` status. - variant :"thread.run.cancelling", -> { OpenAI::Models::Beta::RunStreamEvent::ThreadRunCancelling } + variant :"thread.run.cancelling", -> { OpenAI::Beta::RunStreamEvent::ThreadRunCancelling } # Occurs when a [run](https://platform.openai.com/docs/api-reference/runs/object) is cancelled. - variant :"thread.run.cancelled", -> { OpenAI::Models::Beta::RunStreamEvent::ThreadRunCancelled } + variant :"thread.run.cancelled", -> { OpenAI::Beta::RunStreamEvent::ThreadRunCancelled } # Occurs when a [run](https://platform.openai.com/docs/api-reference/runs/object) expires. - variant :"thread.run.expired", -> { OpenAI::Models::Beta::RunStreamEvent::ThreadRunExpired } + variant :"thread.run.expired", -> { OpenAI::Beta::RunStreamEvent::ThreadRunExpired } class ThreadRunCreated < OpenAI::Internal::Type::BaseModel # @!attribute data # Represents an execution run on a # [thread](https://platform.openai.com/docs/api-reference/threads). # - # @return [OpenAI::Models::Beta::Threads::Run] - required :data, -> { OpenAI::Models::Beta::Threads::Run } + # @return [OpenAI::Beta::Threads::Run] + required :data, -> { OpenAI::Beta::Threads::Run } # @!attribute event # @@ -56,13 +55,12 @@ class ThreadRunCreated < OpenAI::Internal::Type::BaseModel # @!method initialize(data:, event: :"thread.run.created") # Some parameter documentations has been truncated, see - # {OpenAI::Models::Beta::RunStreamEvent::ThreadRunCreated} for more details. + # {OpenAI::Beta::RunStreamEvent::ThreadRunCreated} for more details. # # Occurs when a new # [run](https://platform.openai.com/docs/api-reference/runs/object) is created. # - # @param data [OpenAI::Models::Beta::Threads::Run] Represents an execution run on a [thread](https://platform.openai.com/docs/api-r - # ... + # @param data [OpenAI::Beta::Threads::Run] Represents an execution run on a [thread](https://platform.openai.com/docs/api-r # # @param event [Symbol, :"thread.run.created"] end @@ -72,8 +70,8 @@ class ThreadRunQueued < OpenAI::Internal::Type::BaseModel # Represents an execution run on a # [thread](https://platform.openai.com/docs/api-reference/threads). # - # @return [OpenAI::Models::Beta::Threads::Run] - required :data, -> { OpenAI::Models::Beta::Threads::Run } + # @return [OpenAI::Beta::Threads::Run] + required :data, -> { OpenAI::Beta::Threads::Run } # @!attribute event # @@ -82,13 +80,12 @@ class ThreadRunQueued < OpenAI::Internal::Type::BaseModel # @!method initialize(data:, event: :"thread.run.queued") # Some parameter documentations has been truncated, see - # {OpenAI::Models::Beta::RunStreamEvent::ThreadRunQueued} for more details. + # {OpenAI::Beta::RunStreamEvent::ThreadRunQueued} for more details. # # Occurs when a [run](https://platform.openai.com/docs/api-reference/runs/object) # moves to a `queued` status. # - # @param data [OpenAI::Models::Beta::Threads::Run] Represents an execution run on a [thread](https://platform.openai.com/docs/api-r - # ... + # @param data [OpenAI::Beta::Threads::Run] Represents an execution run on a [thread](https://platform.openai.com/docs/api-r # # @param event [Symbol, :"thread.run.queued"] end @@ -98,8 +95,8 @@ class ThreadRunInProgress < OpenAI::Internal::Type::BaseModel # Represents an execution run on a # [thread](https://platform.openai.com/docs/api-reference/threads). # - # @return [OpenAI::Models::Beta::Threads::Run] - required :data, -> { OpenAI::Models::Beta::Threads::Run } + # @return [OpenAI::Beta::Threads::Run] + required :data, -> { OpenAI::Beta::Threads::Run } # @!attribute event # @@ -108,13 +105,12 @@ class ThreadRunInProgress < OpenAI::Internal::Type::BaseModel # @!method initialize(data:, event: :"thread.run.in_progress") # Some parameter documentations has been truncated, see - # {OpenAI::Models::Beta::RunStreamEvent::ThreadRunInProgress} for more details. + # {OpenAI::Beta::RunStreamEvent::ThreadRunInProgress} for more details. # # Occurs when a [run](https://platform.openai.com/docs/api-reference/runs/object) # moves to an `in_progress` status. # - # @param data [OpenAI::Models::Beta::Threads::Run] Represents an execution run on a [thread](https://platform.openai.com/docs/api-r - # ... + # @param data [OpenAI::Beta::Threads::Run] Represents an execution run on a [thread](https://platform.openai.com/docs/api-r # # @param event [Symbol, :"thread.run.in_progress"] end @@ -124,8 +120,8 @@ class ThreadRunRequiresAction < OpenAI::Internal::Type::BaseModel # Represents an execution run on a # [thread](https://platform.openai.com/docs/api-reference/threads). # - # @return [OpenAI::Models::Beta::Threads::Run] - required :data, -> { OpenAI::Models::Beta::Threads::Run } + # @return [OpenAI::Beta::Threads::Run] + required :data, -> { OpenAI::Beta::Threads::Run } # @!attribute event # @@ -134,14 +130,12 @@ class ThreadRunRequiresAction < OpenAI::Internal::Type::BaseModel # @!method initialize(data:, event: :"thread.run.requires_action") # Some parameter documentations has been truncated, see - # {OpenAI::Models::Beta::RunStreamEvent::ThreadRunRequiresAction} for more - # details. + # {OpenAI::Beta::RunStreamEvent::ThreadRunRequiresAction} for more details. # # Occurs when a [run](https://platform.openai.com/docs/api-reference/runs/object) # moves to a `requires_action` status. # - # @param data [OpenAI::Models::Beta::Threads::Run] Represents an execution run on a [thread](https://platform.openai.com/docs/api-r - # ... + # @param data [OpenAI::Beta::Threads::Run] Represents an execution run on a [thread](https://platform.openai.com/docs/api-r # # @param event [Symbol, :"thread.run.requires_action"] end @@ -151,8 +145,8 @@ class ThreadRunCompleted < OpenAI::Internal::Type::BaseModel # Represents an execution run on a # [thread](https://platform.openai.com/docs/api-reference/threads). # - # @return [OpenAI::Models::Beta::Threads::Run] - required :data, -> { OpenAI::Models::Beta::Threads::Run } + # @return [OpenAI::Beta::Threads::Run] + required :data, -> { OpenAI::Beta::Threads::Run } # @!attribute event # @@ -161,13 +155,12 @@ class ThreadRunCompleted < OpenAI::Internal::Type::BaseModel # @!method initialize(data:, event: :"thread.run.completed") # Some parameter documentations has been truncated, see - # {OpenAI::Models::Beta::RunStreamEvent::ThreadRunCompleted} for more details. + # {OpenAI::Beta::RunStreamEvent::ThreadRunCompleted} for more details. # # Occurs when a [run](https://platform.openai.com/docs/api-reference/runs/object) # is completed. # - # @param data [OpenAI::Models::Beta::Threads::Run] Represents an execution run on a [thread](https://platform.openai.com/docs/api-r - # ... + # @param data [OpenAI::Beta::Threads::Run] Represents an execution run on a [thread](https://platform.openai.com/docs/api-r # # @param event [Symbol, :"thread.run.completed"] end @@ -177,8 +170,8 @@ class ThreadRunIncomplete < OpenAI::Internal::Type::BaseModel # Represents an execution run on a # [thread](https://platform.openai.com/docs/api-reference/threads). # - # @return [OpenAI::Models::Beta::Threads::Run] - required :data, -> { OpenAI::Models::Beta::Threads::Run } + # @return [OpenAI::Beta::Threads::Run] + required :data, -> { OpenAI::Beta::Threads::Run } # @!attribute event # @@ -187,13 +180,12 @@ class ThreadRunIncomplete < OpenAI::Internal::Type::BaseModel # @!method initialize(data:, event: :"thread.run.incomplete") # Some parameter documentations has been truncated, see - # {OpenAI::Models::Beta::RunStreamEvent::ThreadRunIncomplete} for more details. + # {OpenAI::Beta::RunStreamEvent::ThreadRunIncomplete} for more details. # # Occurs when a [run](https://platform.openai.com/docs/api-reference/runs/object) # ends with status `incomplete`. # - # @param data [OpenAI::Models::Beta::Threads::Run] Represents an execution run on a [thread](https://platform.openai.com/docs/api-r - # ... + # @param data [OpenAI::Beta::Threads::Run] Represents an execution run on a [thread](https://platform.openai.com/docs/api-r # # @param event [Symbol, :"thread.run.incomplete"] end @@ -203,8 +195,8 @@ class ThreadRunFailed < OpenAI::Internal::Type::BaseModel # Represents an execution run on a # [thread](https://platform.openai.com/docs/api-reference/threads). # - # @return [OpenAI::Models::Beta::Threads::Run] - required :data, -> { OpenAI::Models::Beta::Threads::Run } + # @return [OpenAI::Beta::Threads::Run] + required :data, -> { OpenAI::Beta::Threads::Run } # @!attribute event # @@ -213,13 +205,12 @@ class ThreadRunFailed < OpenAI::Internal::Type::BaseModel # @!method initialize(data:, event: :"thread.run.failed") # Some parameter documentations has been truncated, see - # {OpenAI::Models::Beta::RunStreamEvent::ThreadRunFailed} for more details. + # {OpenAI::Beta::RunStreamEvent::ThreadRunFailed} for more details. # # Occurs when a [run](https://platform.openai.com/docs/api-reference/runs/object) # fails. # - # @param data [OpenAI::Models::Beta::Threads::Run] Represents an execution run on a [thread](https://platform.openai.com/docs/api-r - # ... + # @param data [OpenAI::Beta::Threads::Run] Represents an execution run on a [thread](https://platform.openai.com/docs/api-r # # @param event [Symbol, :"thread.run.failed"] end @@ -229,8 +220,8 @@ class ThreadRunCancelling < OpenAI::Internal::Type::BaseModel # Represents an execution run on a # [thread](https://platform.openai.com/docs/api-reference/threads). # - # @return [OpenAI::Models::Beta::Threads::Run] - required :data, -> { OpenAI::Models::Beta::Threads::Run } + # @return [OpenAI::Beta::Threads::Run] + required :data, -> { OpenAI::Beta::Threads::Run } # @!attribute event # @@ -239,13 +230,12 @@ class ThreadRunCancelling < OpenAI::Internal::Type::BaseModel # @!method initialize(data:, event: :"thread.run.cancelling") # Some parameter documentations has been truncated, see - # {OpenAI::Models::Beta::RunStreamEvent::ThreadRunCancelling} for more details. + # {OpenAI::Beta::RunStreamEvent::ThreadRunCancelling} for more details. # # Occurs when a [run](https://platform.openai.com/docs/api-reference/runs/object) # moves to a `cancelling` status. # - # @param data [OpenAI::Models::Beta::Threads::Run] Represents an execution run on a [thread](https://platform.openai.com/docs/api-r - # ... + # @param data [OpenAI::Beta::Threads::Run] Represents an execution run on a [thread](https://platform.openai.com/docs/api-r # # @param event [Symbol, :"thread.run.cancelling"] end @@ -255,8 +245,8 @@ class ThreadRunCancelled < OpenAI::Internal::Type::BaseModel # Represents an execution run on a # [thread](https://platform.openai.com/docs/api-reference/threads). # - # @return [OpenAI::Models::Beta::Threads::Run] - required :data, -> { OpenAI::Models::Beta::Threads::Run } + # @return [OpenAI::Beta::Threads::Run] + required :data, -> { OpenAI::Beta::Threads::Run } # @!attribute event # @@ -265,13 +255,12 @@ class ThreadRunCancelled < OpenAI::Internal::Type::BaseModel # @!method initialize(data:, event: :"thread.run.cancelled") # Some parameter documentations has been truncated, see - # {OpenAI::Models::Beta::RunStreamEvent::ThreadRunCancelled} for more details. + # {OpenAI::Beta::RunStreamEvent::ThreadRunCancelled} for more details. # # Occurs when a [run](https://platform.openai.com/docs/api-reference/runs/object) # is cancelled. # - # @param data [OpenAI::Models::Beta::Threads::Run] Represents an execution run on a [thread](https://platform.openai.com/docs/api-r - # ... + # @param data [OpenAI::Beta::Threads::Run] Represents an execution run on a [thread](https://platform.openai.com/docs/api-r # # @param event [Symbol, :"thread.run.cancelled"] end @@ -281,8 +270,8 @@ class ThreadRunExpired < OpenAI::Internal::Type::BaseModel # Represents an execution run on a # [thread](https://platform.openai.com/docs/api-reference/threads). # - # @return [OpenAI::Models::Beta::Threads::Run] - required :data, -> { OpenAI::Models::Beta::Threads::Run } + # @return [OpenAI::Beta::Threads::Run] + required :data, -> { OpenAI::Beta::Threads::Run } # @!attribute event # @@ -291,19 +280,18 @@ class ThreadRunExpired < OpenAI::Internal::Type::BaseModel # @!method initialize(data:, event: :"thread.run.expired") # Some parameter documentations has been truncated, see - # {OpenAI::Models::Beta::RunStreamEvent::ThreadRunExpired} for more details. + # {OpenAI::Beta::RunStreamEvent::ThreadRunExpired} for more details. # # Occurs when a [run](https://platform.openai.com/docs/api-reference/runs/object) # expires. # - # @param data [OpenAI::Models::Beta::Threads::Run] Represents an execution run on a [thread](https://platform.openai.com/docs/api-r - # ... + # @param data [OpenAI::Beta::Threads::Run] Represents an execution run on a [thread](https://platform.openai.com/docs/api-r # # @param event [Symbol, :"thread.run.expired"] end # @!method self.variants - # @return [Array(OpenAI::Models::Beta::RunStreamEvent::ThreadRunCreated, OpenAI::Models::Beta::RunStreamEvent::ThreadRunQueued, OpenAI::Models::Beta::RunStreamEvent::ThreadRunInProgress, OpenAI::Models::Beta::RunStreamEvent::ThreadRunRequiresAction, OpenAI::Models::Beta::RunStreamEvent::ThreadRunCompleted, OpenAI::Models::Beta::RunStreamEvent::ThreadRunIncomplete, OpenAI::Models::Beta::RunStreamEvent::ThreadRunFailed, OpenAI::Models::Beta::RunStreamEvent::ThreadRunCancelling, OpenAI::Models::Beta::RunStreamEvent::ThreadRunCancelled, OpenAI::Models::Beta::RunStreamEvent::ThreadRunExpired)] + # @return [Array(OpenAI::Beta::RunStreamEvent::ThreadRunCreated, OpenAI::Beta::RunStreamEvent::ThreadRunQueued, OpenAI::Beta::RunStreamEvent::ThreadRunInProgress, OpenAI::Beta::RunStreamEvent::ThreadRunRequiresAction, OpenAI::Beta::RunStreamEvent::ThreadRunCompleted, OpenAI::Beta::RunStreamEvent::ThreadRunIncomplete, OpenAI::Beta::RunStreamEvent::ThreadRunFailed, OpenAI::Beta::RunStreamEvent::ThreadRunCancelling, OpenAI::Beta::RunStreamEvent::ThreadRunCancelled, OpenAI::Beta::RunStreamEvent::ThreadRunExpired)] end end end diff --git a/lib/openai/models/beta/thread.rb b/lib/openai/models/beta/thread.rb index cad2cd8d..11d37b69 100644 --- a/lib/openai/models/beta/thread.rb +++ b/lib/openai/models/beta/thread.rb @@ -40,12 +40,12 @@ class Thread < OpenAI::Internal::Type::BaseModel # `code_interpreter` tool requires a list of file IDs, while the `file_search` # tool requires a list of vector store IDs. # - # @return [OpenAI::Models::Beta::Thread::ToolResources, nil] - required :tool_resources, -> { OpenAI::Models::Beta::Thread::ToolResources }, nil?: true + # @return [OpenAI::Beta::Thread::ToolResources, nil] + required :tool_resources, -> { OpenAI::Beta::Thread::ToolResources }, nil?: true # @!method initialize(id:, created_at:, metadata:, tool_resources:, object: :thread) - # Some parameter documentations has been truncated, see - # {OpenAI::Models::Beta::Thread} for more details. + # Some parameter documentations has been truncated, see {OpenAI::Beta::Thread} for + # more details. # # Represents a thread that contains # [messages](https://platform.openai.com/docs/api-reference/messages). @@ -54,24 +54,23 @@ class Thread < OpenAI::Internal::Type::BaseModel # # @param created_at [Integer] The Unix timestamp (in seconds) for when the thread was created. # - # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be # - # @param tool_resources [OpenAI::Models::Beta::Thread::ToolResources, nil] A set of resources that are made available to the assistant's tools in this thre - # ... + # @param tool_resources [OpenAI::Beta::Thread::ToolResources, nil] A set of resources that are made available to the assistant's tools in this thre # # @param object [Symbol, :thread] The object type, which is always `thread`. - # @see OpenAI::Models::Beta::Thread#tool_resources + # @see OpenAI::Beta::Thread#tool_resources class ToolResources < OpenAI::Internal::Type::BaseModel # @!attribute code_interpreter # - # @return [OpenAI::Models::Beta::Thread::ToolResources::CodeInterpreter, nil] - optional :code_interpreter, -> { OpenAI::Models::Beta::Thread::ToolResources::CodeInterpreter } + # @return [OpenAI::Beta::Thread::ToolResources::CodeInterpreter, nil] + optional :code_interpreter, -> { OpenAI::Beta::Thread::ToolResources::CodeInterpreter } # @!attribute file_search # - # @return [OpenAI::Models::Beta::Thread::ToolResources::FileSearch, nil] - optional :file_search, -> { OpenAI::Models::Beta::Thread::ToolResources::FileSearch } + # @return [OpenAI::Beta::Thread::ToolResources::FileSearch, nil] + optional :file_search, -> { OpenAI::Beta::Thread::ToolResources::FileSearch } # @!method initialize(code_interpreter: nil, file_search: nil) # A set of resources that are made available to the assistant's tools in this @@ -79,10 +78,10 @@ class ToolResources < OpenAI::Internal::Type::BaseModel # `code_interpreter` tool requires a list of file IDs, while the `file_search` # tool requires a list of vector store IDs. # - # @param code_interpreter [OpenAI::Models::Beta::Thread::ToolResources::CodeInterpreter] - # @param file_search [OpenAI::Models::Beta::Thread::ToolResources::FileSearch] + # @param code_interpreter [OpenAI::Beta::Thread::ToolResources::CodeInterpreter] + # @param file_search [OpenAI::Beta::Thread::ToolResources::FileSearch] - # @see OpenAI::Models::Beta::Thread::ToolResources#code_interpreter + # @see OpenAI::Beta::Thread::ToolResources#code_interpreter class CodeInterpreter < OpenAI::Internal::Type::BaseModel # @!attribute file_ids # A list of [file](https://platform.openai.com/docs/api-reference/files) IDs made @@ -94,13 +93,12 @@ class CodeInterpreter < OpenAI::Internal::Type::BaseModel # @!method initialize(file_ids: nil) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Beta::Thread::ToolResources::CodeInterpreter} for more details. + # {OpenAI::Beta::Thread::ToolResources::CodeInterpreter} for more details. # # @param file_ids [Array] A list of [file](https://platform.openai.com/docs/api-reference/files) IDs made - # ... end - # @see OpenAI::Models::Beta::Thread::ToolResources#file_search + # @see OpenAI::Beta::Thread::ToolResources#file_search class FileSearch < OpenAI::Internal::Type::BaseModel # @!attribute vector_store_ids # The @@ -113,10 +111,9 @@ class FileSearch < OpenAI::Internal::Type::BaseModel # @!method initialize(vector_store_ids: nil) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Beta::Thread::ToolResources::FileSearch} for more details. + # {OpenAI::Beta::Thread::ToolResources::FileSearch} for more details. # # @param vector_store_ids [Array] The [vector store](https://platform.openai.com/docs/api-reference/vector-stores/ - # ... end end end diff --git a/lib/openai/models/beta/thread_create_and_run_params.rb b/lib/openai/models/beta/thread_create_and_run_params.rb index 4199cc52..5d4533ef 100644 --- a/lib/openai/models/beta/thread_create_and_run_params.rb +++ b/lib/openai/models/beta/thread_create_and_run_params.rb @@ -62,8 +62,8 @@ class ThreadCreateAndRunParams < OpenAI::Internal::Type::BaseModel # model associated with the assistant. If not, the model associated with the # assistant will be used. # - # @return [String, Symbol, OpenAI::Models::ChatModel, nil] - optional :model, union: -> { OpenAI::Models::Beta::ThreadCreateAndRunParams::Model }, nil?: true + # @return [String, Symbol, OpenAI::ChatModel, nil] + optional :model, union: -> { OpenAI::Beta::ThreadCreateAndRunParams::Model }, nil?: true # @!attribute parallel_tool_calls # Whether to enable @@ -95,8 +95,8 @@ class ThreadCreateAndRunParams < OpenAI::Internal::Type::BaseModel # indicates the generation exceeded `max_tokens` or the conversation exceeded the # max context length. # - # @return [Symbol, :auto, OpenAI::Models::ResponseFormatText, OpenAI::Models::ResponseFormatJSONObject, OpenAI::Models::ResponseFormatJSONSchema, nil] - optional :response_format, union: -> { OpenAI::Models::Beta::AssistantResponseFormatOption }, nil?: true + # @return [Symbol, :auto, OpenAI::ResponseFormatText, OpenAI::ResponseFormatJSONObject, OpenAI::ResponseFormatJSONSchema, nil] + optional :response_format, union: -> { OpenAI::Beta::AssistantResponseFormatOption }, nil?: true # @!attribute temperature # What sampling temperature to use, between 0 and 2. Higher values like 0.8 will @@ -110,8 +110,8 @@ class ThreadCreateAndRunParams < OpenAI::Internal::Type::BaseModel # Options to create a new thread. If no thread is provided when running a request, # an empty thread will be created. # - # @return [OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread, nil] - optional :thread, -> { OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread } + # @return [OpenAI::Beta::ThreadCreateAndRunParams::Thread, nil] + optional :thread, -> { OpenAI::Beta::ThreadCreateAndRunParams::Thread } # @!attribute tool_choice # Controls which (if any) tool is called by the model. `none` means the model will @@ -122,8 +122,8 @@ class ThreadCreateAndRunParams < OpenAI::Internal::Type::BaseModel # `{"type": "function", "function": {"name": "my_function"}}` forces the model to # call that tool. # - # @return [Symbol, OpenAI::Models::Beta::AssistantToolChoiceOption::Auto, OpenAI::Models::Beta::AssistantToolChoice, nil] - optional :tool_choice, union: -> { OpenAI::Models::Beta::AssistantToolChoiceOption }, nil?: true + # @return [Symbol, OpenAI::Beta::AssistantToolChoiceOption::Auto, OpenAI::Beta::AssistantToolChoice, nil] + optional :tool_choice, union: -> { OpenAI::Beta::AssistantToolChoiceOption }, nil?: true # @!attribute tool_resources # A set of resources that are used by the assistant's tools. The resources are @@ -131,16 +131,18 @@ class ThreadCreateAndRunParams < OpenAI::Internal::Type::BaseModel # a list of file IDs, while the `file_search` tool requires a list of vector store # IDs. # - # @return [OpenAI::Models::Beta::ThreadCreateAndRunParams::ToolResources, nil] - optional :tool_resources, -> { OpenAI::Models::Beta::ThreadCreateAndRunParams::ToolResources }, nil?: true + # @return [OpenAI::Beta::ThreadCreateAndRunParams::ToolResources, nil] + optional :tool_resources, -> { OpenAI::Beta::ThreadCreateAndRunParams::ToolResources }, nil?: true # @!attribute tools # Override the tools the assistant can use for this run. This is useful for # modifying the behavior on a per-run basis. # - # @return [Array, nil] + # @return [Array, nil] optional :tools, - -> { OpenAI::Internal::Type::ArrayOf[union: OpenAI::Models::Beta::AssistantTool] }, + -> { + OpenAI::Internal::Type::ArrayOf[union: OpenAI::Beta::AssistantTool] + }, nil?: true # @!attribute top_p @@ -157,9 +159,9 @@ class ThreadCreateAndRunParams < OpenAI::Internal::Type::BaseModel # Controls for how a thread will be truncated prior to the run. Use this to # control the intial context window of the run. # - # @return [OpenAI::Models::Beta::ThreadCreateAndRunParams::TruncationStrategy, nil] + # @return [OpenAI::Beta::ThreadCreateAndRunParams::TruncationStrategy, nil] optional :truncation_strategy, - -> { OpenAI::Models::Beta::ThreadCreateAndRunParams::TruncationStrategy }, + -> { OpenAI::Beta::ThreadCreateAndRunParams::TruncationStrategy }, nil?: true # @!method initialize(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: {}) @@ -167,46 +169,34 @@ class ThreadCreateAndRunParams < OpenAI::Internal::Type::BaseModel # {OpenAI::Models::Beta::ThreadCreateAndRunParams} for more details. # # @param assistant_id [String] The ID of the [assistant](https://platform.openai.com/docs/api-reference/assista - # ... # # @param instructions [String, nil] Override the default system message of the assistant. This is useful for modifyi - # ... # # @param max_completion_tokens [Integer, nil] The maximum number of completion tokens that may be used over the course of the - # ... # # @param max_prompt_tokens [Integer, nil] The maximum number of prompt tokens that may be used over the course of the run. - # ... # - # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be # - # @param model [String, Symbol, OpenAI::Models::ChatModel, nil] The ID of the [Model](https://platform.openai.com/docs/api-reference/models) to - # ... + # @param model [String, Symbol, OpenAI::ChatModel, nil] The ID of the [Model](https://platform.openai.com/docs/api-reference/models) to # # @param parallel_tool_calls [Boolean] Whether to enable [parallel function calling](https://platform.openai.com/docs/g - # ... # - # @param response_format [Symbol, :auto, OpenAI::Models::ResponseFormatText, OpenAI::Models::ResponseFormatJSONObject, OpenAI::Models::ResponseFormatJSONSchema, nil] Specifies the format that the model must output. Compatible with [GPT-4o](https: - # ... + # @param response_format [Symbol, :auto, OpenAI::ResponseFormatText, OpenAI::ResponseFormatJSONObject, OpenAI::ResponseFormatJSONSchema, nil] Specifies the format that the model must output. Compatible with [GPT-4o](https: # # @param temperature [Float, nil] What sampling temperature to use, between 0 and 2. Higher values like 0.8 will m - # ... # - # @param thread [OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread] Options to create a new thread. If no thread is provided when running a ... + # @param thread [OpenAI::Beta::ThreadCreateAndRunParams::Thread] Options to create a new thread. If no thread is provided when running a # - # @param tool_choice [Symbol, OpenAI::Models::Beta::AssistantToolChoiceOption::Auto, OpenAI::Models::Beta::AssistantToolChoice, nil] Controls which (if any) tool is called by the model. ... + # @param tool_choice [Symbol, OpenAI::Beta::AssistantToolChoiceOption::Auto, OpenAI::Beta::AssistantToolChoice, nil] Controls which (if any) tool is called by the model. # - # @param tool_resources [OpenAI::Models::Beta::ThreadCreateAndRunParams::ToolResources, nil] A set of resources that are used by the assistant's tools. The resources are spe - # ... + # @param tool_resources [OpenAI::Beta::ThreadCreateAndRunParams::ToolResources, nil] A set of resources that are used by the assistant's tools. The resources are spe # - # @param tools [Array, nil] Override the tools the assistant can use for this run. This is useful for modify - # ... + # @param tools [Array, nil] Override the tools the assistant can use for this run. This is useful for modify # # @param top_p [Float, nil] An alternative to sampling with temperature, called nucleus sampling, where the - # ... # - # @param truncation_strategy [OpenAI::Models::Beta::ThreadCreateAndRunParams::TruncationStrategy, nil] Controls for how a thread will be truncated prior to the run. Use this to contro - # ... + # @param truncation_strategy [OpenAI::Beta::ThreadCreateAndRunParams::TruncationStrategy, nil] Controls for how a thread will be truncated prior to the run. Use this to contro # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] @@ -220,10 +210,10 @@ module Model variant String # The ID of the [Model](https://platform.openai.com/docs/api-reference/models) to be used to execute this run. If a value is provided here, it will override the model associated with the assistant. If not, the model associated with the assistant will be used. - variant enum: -> { OpenAI::Models::ChatModel } + variant enum: -> { OpenAI::ChatModel } # @!method self.variants - # @return [Array(String, Symbol, OpenAI::Models::ChatModel)] + # @return [Array(String, Symbol, OpenAI::ChatModel)] end class Thread < OpenAI::Internal::Type::BaseModel @@ -231,9 +221,11 @@ class Thread < OpenAI::Internal::Type::BaseModel # A list of [messages](https://platform.openai.com/docs/api-reference/messages) to # start the thread with. # - # @return [Array, nil] + # @return [Array, nil] optional :messages, - -> { OpenAI::Internal::Type::ArrayOf[OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::Message] } + -> { + OpenAI::Internal::Type::ArrayOf[OpenAI::Beta::ThreadCreateAndRunParams::Thread::Message] + } # @!attribute metadata # Set of 16 key-value pairs that can be attached to an object. This can be useful @@ -252,32 +244,32 @@ class Thread < OpenAI::Internal::Type::BaseModel # `code_interpreter` tool requires a list of file IDs, while the `file_search` # tool requires a list of vector store IDs. # - # @return [OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::ToolResources, nil] + # @return [OpenAI::Beta::ThreadCreateAndRunParams::Thread::ToolResources, nil] optional :tool_resources, - -> { OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::ToolResources }, + -> { + OpenAI::Beta::ThreadCreateAndRunParams::Thread::ToolResources + }, nil?: true # @!method initialize(messages: nil, metadata: nil, tool_resources: nil) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread} for more details. + # {OpenAI::Beta::ThreadCreateAndRunParams::Thread} for more details. # # Options to create a new thread. If no thread is provided when running a request, # an empty thread will be created. # - # @param messages [Array] A list of [messages](https://platform.openai.com/docs/api-reference/messages) to - # ... + # @param messages [Array] A list of [messages](https://platform.openai.com/docs/api-reference/messages) to # - # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be # - # @param tool_resources [OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::ToolResources, nil] A set of resources that are made available to the assistant's tools in this thre - # ... + # @param tool_resources [OpenAI::Beta::ThreadCreateAndRunParams::Thread::ToolResources, nil] A set of resources that are made available to the assistant's tools in this thre class Message < OpenAI::Internal::Type::BaseModel # @!attribute content # The text contents of the message. # - # @return [String, Array] - required :content, union: -> { OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::Message::Content } + # @return [String, Array] + required :content, union: -> { OpenAI::Beta::ThreadCreateAndRunParams::Thread::Message::Content } # @!attribute role # The role of the entity that is creating the message. Allowed values include: @@ -287,15 +279,17 @@ class Message < OpenAI::Internal::Type::BaseModel # - `assistant`: Indicates the message is generated by the assistant. Use this # value to insert messages from the assistant into the conversation. # - # @return [Symbol, OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::Message::Role] - required :role, enum: -> { OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::Message::Role } + # @return [Symbol, OpenAI::Beta::ThreadCreateAndRunParams::Thread::Message::Role] + required :role, enum: -> { OpenAI::Beta::ThreadCreateAndRunParams::Thread::Message::Role } # @!attribute attachments # A list of files attached to the message, and the tools they should be added to. # - # @return [Array, nil] + # @return [Array, nil] optional :attachments, - -> { OpenAI::Internal::Type::ArrayOf[OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::Message::Attachment] }, + -> { + OpenAI::Internal::Type::ArrayOf[OpenAI::Beta::ThreadCreateAndRunParams::Thread::Message::Attachment] + }, nil?: true # @!attribute metadata @@ -311,20 +305,19 @@ class Message < OpenAI::Internal::Type::BaseModel # @!method initialize(content:, role:, attachments: nil, metadata: nil) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::Message} for more - # details. + # {OpenAI::Beta::ThreadCreateAndRunParams::Thread::Message} for more details. # - # @param content [String, Array] The text contents of the message. + # @param content [String, Array] The text contents of the message. # - # @param role [Symbol, OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::Message::Role] The role of the entity that is creating the message. Allowed values include: ... + # @param role [Symbol, OpenAI::Beta::ThreadCreateAndRunParams::Thread::Message::Role] The role of the entity that is creating the message. Allowed values include: # - # @param attachments [Array, nil] A list of files attached to the message, and the tools they should be added to. + # @param attachments [Array, nil] A list of files attached to the message, and the tools they should be added to. # - # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be # The text contents of the message. # - # @see OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::Message#content + # @see OpenAI::Beta::ThreadCreateAndRunParams::Thread::Message#content module Content extend OpenAI::Internal::Type::Union @@ -332,14 +325,16 @@ module Content variant String # An array of content parts with a defined type, each can be of type `text` or images can be passed with `image_url` or `image_file`. Image types are only supported on [Vision-compatible models](https://platform.openai.com/docs/models). - variant -> { OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::Message::Content::MessageContentPartParamArray } + variant -> { + OpenAI::Beta::ThreadCreateAndRunParams::Thread::Message::Content::MessageContentPartParamArray + } # @!method self.variants - # @return [Array(String, Array)] + # @return [Array(String, Array)] # @type [OpenAI::Internal::Type::Converter] MessageContentPartParamArray = - OpenAI::Internal::Type::ArrayOf[union: -> { OpenAI::Models::Beta::Threads::MessageContentPartParam }] + OpenAI::Internal::Type::ArrayOf[union: -> { OpenAI::Beta::Threads::MessageContentPartParam }] end # The role of the entity that is creating the message. Allowed values include: @@ -349,7 +344,7 @@ module Content # - `assistant`: Indicates the message is generated by the assistant. Use this # value to insert messages from the assistant into the conversation. # - # @see OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::Message#role + # @see OpenAI::Beta::ThreadCreateAndRunParams::Thread::Message#role module Role extend OpenAI::Internal::Type::Enum @@ -370,24 +365,28 @@ class Attachment < OpenAI::Internal::Type::BaseModel # @!attribute tools # The tools to add this file to. # - # @return [Array, nil] + # @return [Array, nil] optional :tools, - -> { OpenAI::Internal::Type::ArrayOf[union: OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::Message::Attachment::Tool] } + -> { + OpenAI::Internal::Type::ArrayOf[union: OpenAI::Beta::ThreadCreateAndRunParams::Thread::Message::Attachment::Tool] + } # @!method initialize(file_id: nil, tools: nil) # @param file_id [String] The ID of the file to attach to the message. # - # @param tools [Array] The tools to add this file to. + # @param tools [Array] The tools to add this file to. module Tool extend OpenAI::Internal::Type::Union discriminator :type - variant :code_interpreter, -> { OpenAI::Models::Beta::CodeInterpreterTool } + variant :code_interpreter, -> { OpenAI::Beta::CodeInterpreterTool } variant :file_search, - -> { OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::Message::Attachment::Tool::FileSearch } + -> { + OpenAI::Beta::ThreadCreateAndRunParams::Thread::Message::Attachment::Tool::FileSearch + } class FileSearch < OpenAI::Internal::Type::BaseModel # @!attribute type @@ -401,24 +400,26 @@ class FileSearch < OpenAI::Internal::Type::BaseModel end # @!method self.variants - # @return [Array(OpenAI::Models::Beta::CodeInterpreterTool, OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::Message::Attachment::Tool::FileSearch)] + # @return [Array(OpenAI::Beta::CodeInterpreterTool, OpenAI::Beta::ThreadCreateAndRunParams::Thread::Message::Attachment::Tool::FileSearch)] end end end - # @see OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread#tool_resources + # @see OpenAI::Beta::ThreadCreateAndRunParams::Thread#tool_resources class ToolResources < OpenAI::Internal::Type::BaseModel # @!attribute code_interpreter # - # @return [OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::ToolResources::CodeInterpreter, nil] + # @return [OpenAI::Beta::ThreadCreateAndRunParams::Thread::ToolResources::CodeInterpreter, nil] optional :code_interpreter, - -> { OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::ToolResources::CodeInterpreter } + -> { OpenAI::Beta::ThreadCreateAndRunParams::Thread::ToolResources::CodeInterpreter } # @!attribute file_search # - # @return [OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch, nil] + # @return [OpenAI::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch, nil] optional :file_search, - -> { OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch } + -> { + OpenAI::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch + } # @!method initialize(code_interpreter: nil, file_search: nil) # A set of resources that are made available to the assistant's tools in this @@ -426,10 +427,10 @@ class ToolResources < OpenAI::Internal::Type::BaseModel # `code_interpreter` tool requires a list of file IDs, while the `file_search` # tool requires a list of vector store IDs. # - # @param code_interpreter [OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::ToolResources::CodeInterpreter] - # @param file_search [OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch] + # @param code_interpreter [OpenAI::Beta::ThreadCreateAndRunParams::Thread::ToolResources::CodeInterpreter] + # @param file_search [OpenAI::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch] - # @see OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::ToolResources#code_interpreter + # @see OpenAI::Beta::ThreadCreateAndRunParams::Thread::ToolResources#code_interpreter class CodeInterpreter < OpenAI::Internal::Type::BaseModel # @!attribute file_ids # A list of [file](https://platform.openai.com/docs/api-reference/files) IDs made @@ -441,14 +442,13 @@ class CodeInterpreter < OpenAI::Internal::Type::BaseModel # @!method initialize(file_ids: nil) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::ToolResources::CodeInterpreter} + # {OpenAI::Beta::ThreadCreateAndRunParams::Thread::ToolResources::CodeInterpreter} # for more details. # # @param file_ids [Array] A list of [file](https://platform.openai.com/docs/api-reference/files) IDs made - # ... end - # @see OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::ToolResources#file_search + # @see OpenAI::Beta::ThreadCreateAndRunParams::Thread::ToolResources#file_search class FileSearch < OpenAI::Internal::Type::BaseModel # @!attribute vector_store_ids # The @@ -465,29 +465,31 @@ class FileSearch < OpenAI::Internal::Type::BaseModel # with file_ids and attach it to this thread. There can be a maximum of 1 vector # store attached to the thread. # - # @return [Array, nil] + # @return [Array, nil] optional :vector_stores, - -> { OpenAI::Internal::Type::ArrayOf[OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore] } + -> { + OpenAI::Internal::Type::ArrayOf[OpenAI::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore] + } # @!method initialize(vector_store_ids: nil, vector_stores: nil) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch} - # for more details. + # {OpenAI::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch} for + # more details. # # @param vector_store_ids [Array] The [vector store](https://platform.openai.com/docs/api-reference/vector-stores/ - # ... # - # @param vector_stores [Array] A helper to create a [vector store](https://platform.openai.com/docs/api-referen - # ... + # @param vector_stores [Array] A helper to create a [vector store](https://platform.openai.com/docs/api-referen class VectorStore < OpenAI::Internal::Type::BaseModel # @!attribute chunking_strategy # The chunking strategy used to chunk the file(s). If not set, will use the `auto` # strategy. # - # @return [OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Auto, OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static, nil] + # @return [OpenAI::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Auto, OpenAI::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static, nil] optional :chunking_strategy, - union: -> { OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore::ChunkingStrategy } + union: -> { + OpenAI::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore::ChunkingStrategy + } # @!attribute file_ids # A list of [file](https://platform.openai.com/docs/api-reference/files) IDs to @@ -510,21 +512,19 @@ class VectorStore < OpenAI::Internal::Type::BaseModel # @!method initialize(chunking_strategy: nil, file_ids: nil, metadata: nil) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore} + # {OpenAI::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore} # for more details. # - # @param chunking_strategy [OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Auto, OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static] The chunking strategy used to chunk the file(s). If not set, will use the `auto` - # ... + # @param chunking_strategy [OpenAI::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Auto, OpenAI::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static] The chunking strategy used to chunk the file(s). If not set, will use the `auto` # # @param file_ids [Array] A list of [file](https://platform.openai.com/docs/api-reference/files) IDs to ad - # ... # - # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be # The chunking strategy used to chunk the file(s). If not set, will use the `auto` # strategy. # - # @see OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore#chunking_strategy + # @see OpenAI::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore#chunking_strategy module ChunkingStrategy extend OpenAI::Internal::Type::Union @@ -532,10 +532,14 @@ module ChunkingStrategy # The default strategy. This strategy currently uses a `max_chunk_size_tokens` of `800` and `chunk_overlap_tokens` of `400`. variant :auto, - -> { OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Auto } + -> { + OpenAI::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Auto + } variant :static, - -> { OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static } + -> { + OpenAI::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static + } class Auto < OpenAI::Internal::Type::BaseModel # @!attribute type @@ -554,9 +558,11 @@ class Auto < OpenAI::Internal::Type::BaseModel class Static < OpenAI::Internal::Type::BaseModel # @!attribute static # - # @return [OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static::Static] + # @return [OpenAI::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static::Static] required :static, - -> { OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static::Static } + -> { + OpenAI::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static::Static + } # @!attribute type # Always `static`. @@ -565,11 +571,11 @@ class Static < OpenAI::Internal::Type::BaseModel required :type, const: :static # @!method initialize(static:, type: :static) - # @param static [OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static::Static] + # @param static [OpenAI::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static::Static] # # @param type [Symbol, :static] Always `static`. - # @see OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static#static + # @see OpenAI::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static#static class Static < OpenAI::Internal::Type::BaseModel # @!attribute chunk_overlap_tokens # The number of tokens that overlap between chunks. The default value is `400`. @@ -588,19 +594,17 @@ class Static < OpenAI::Internal::Type::BaseModel # @!method initialize(chunk_overlap_tokens:, max_chunk_size_tokens:) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static::Static} + # {OpenAI::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static::Static} # for more details. # # @param chunk_overlap_tokens [Integer] The number of tokens that overlap between chunks. The default value is `400`. - # ... # # @param max_chunk_size_tokens [Integer] The maximum number of tokens in each chunk. The default value is `800`. The mini - # ... end end # @!method self.variants - # @return [Array(OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Auto, OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static)] + # @return [Array(OpenAI::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Auto, OpenAI::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static)] end end end @@ -610,14 +614,16 @@ class Static < OpenAI::Internal::Type::BaseModel class ToolResources < OpenAI::Internal::Type::BaseModel # @!attribute code_interpreter # - # @return [OpenAI::Models::Beta::ThreadCreateAndRunParams::ToolResources::CodeInterpreter, nil] + # @return [OpenAI::Beta::ThreadCreateAndRunParams::ToolResources::CodeInterpreter, nil] optional :code_interpreter, - -> { OpenAI::Models::Beta::ThreadCreateAndRunParams::ToolResources::CodeInterpreter } + -> { + OpenAI::Beta::ThreadCreateAndRunParams::ToolResources::CodeInterpreter + } # @!attribute file_search # - # @return [OpenAI::Models::Beta::ThreadCreateAndRunParams::ToolResources::FileSearch, nil] - optional :file_search, -> { OpenAI::Models::Beta::ThreadCreateAndRunParams::ToolResources::FileSearch } + # @return [OpenAI::Beta::ThreadCreateAndRunParams::ToolResources::FileSearch, nil] + optional :file_search, -> { OpenAI::Beta::ThreadCreateAndRunParams::ToolResources::FileSearch } # @!method initialize(code_interpreter: nil, file_search: nil) # A set of resources that are used by the assistant's tools. The resources are @@ -625,10 +631,10 @@ class ToolResources < OpenAI::Internal::Type::BaseModel # a list of file IDs, while the `file_search` tool requires a list of vector store # IDs. # - # @param code_interpreter [OpenAI::Models::Beta::ThreadCreateAndRunParams::ToolResources::CodeInterpreter] - # @param file_search [OpenAI::Models::Beta::ThreadCreateAndRunParams::ToolResources::FileSearch] + # @param code_interpreter [OpenAI::Beta::ThreadCreateAndRunParams::ToolResources::CodeInterpreter] + # @param file_search [OpenAI::Beta::ThreadCreateAndRunParams::ToolResources::FileSearch] - # @see OpenAI::Models::Beta::ThreadCreateAndRunParams::ToolResources#code_interpreter + # @see OpenAI::Beta::ThreadCreateAndRunParams::ToolResources#code_interpreter class CodeInterpreter < OpenAI::Internal::Type::BaseModel # @!attribute file_ids # A list of [file](https://platform.openai.com/docs/api-reference/files) IDs made @@ -640,14 +646,13 @@ class CodeInterpreter < OpenAI::Internal::Type::BaseModel # @!method initialize(file_ids: nil) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Beta::ThreadCreateAndRunParams::ToolResources::CodeInterpreter} - # for more details. + # {OpenAI::Beta::ThreadCreateAndRunParams::ToolResources::CodeInterpreter} for + # more details. # # @param file_ids [Array] A list of [file](https://platform.openai.com/docs/api-reference/files) IDs made - # ... end - # @see OpenAI::Models::Beta::ThreadCreateAndRunParams::ToolResources#file_search + # @see OpenAI::Beta::ThreadCreateAndRunParams::ToolResources#file_search class FileSearch < OpenAI::Internal::Type::BaseModel # @!attribute vector_store_ids # The ID of the @@ -660,11 +665,10 @@ class FileSearch < OpenAI::Internal::Type::BaseModel # @!method initialize(vector_store_ids: nil) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Beta::ThreadCreateAndRunParams::ToolResources::FileSearch} for - # more details. + # {OpenAI::Beta::ThreadCreateAndRunParams::ToolResources::FileSearch} for more + # details. # # @param vector_store_ids [Array] The ID of the [vector store](https://platform.openai.com/docs/api-reference/vect - # ... end end @@ -675,8 +679,8 @@ class TruncationStrategy < OpenAI::Internal::Type::BaseModel # the thread. When set to `auto`, messages in the middle of the thread will be # dropped to fit the context length of the model, `max_prompt_tokens`. # - # @return [Symbol, OpenAI::Models::Beta::ThreadCreateAndRunParams::TruncationStrategy::Type] - required :type, enum: -> { OpenAI::Models::Beta::ThreadCreateAndRunParams::TruncationStrategy::Type } + # @return [Symbol, OpenAI::Beta::ThreadCreateAndRunParams::TruncationStrategy::Type] + required :type, enum: -> { OpenAI::Beta::ThreadCreateAndRunParams::TruncationStrategy::Type } # @!attribute last_messages # The number of most recent messages from the thread when constructing the context @@ -687,24 +691,21 @@ class TruncationStrategy < OpenAI::Internal::Type::BaseModel # @!method initialize(type:, last_messages: nil) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Beta::ThreadCreateAndRunParams::TruncationStrategy} for more - # details. + # {OpenAI::Beta::ThreadCreateAndRunParams::TruncationStrategy} for more details. # # Controls for how a thread will be truncated prior to the run. Use this to # control the intial context window of the run. # - # @param type [Symbol, OpenAI::Models::Beta::ThreadCreateAndRunParams::TruncationStrategy::Type] The truncation strategy to use for the thread. The default is `auto`. If set to - # ... + # @param type [Symbol, OpenAI::Beta::ThreadCreateAndRunParams::TruncationStrategy::Type] The truncation strategy to use for the thread. The default is `auto`. If set to # # @param last_messages [Integer, nil] The number of most recent messages from the thread when constructing the context - # ... # The truncation strategy to use for the thread. The default is `auto`. If set to # `last_messages`, the thread will be truncated to the n most recent messages in # the thread. When set to `auto`, messages in the middle of the thread will be # dropped to fit the context length of the model, `max_prompt_tokens`. # - # @see OpenAI::Models::Beta::ThreadCreateAndRunParams::TruncationStrategy#type + # @see OpenAI::Beta::ThreadCreateAndRunParams::TruncationStrategy#type module Type extend OpenAI::Internal::Type::Enum diff --git a/lib/openai/models/beta/thread_create_params.rb b/lib/openai/models/beta/thread_create_params.rb index 50ef5aca..c4d1c025 100644 --- a/lib/openai/models/beta/thread_create_params.rb +++ b/lib/openai/models/beta/thread_create_params.rb @@ -12,9 +12,8 @@ class ThreadCreateParams < OpenAI::Internal::Type::BaseModel # A list of [messages](https://platform.openai.com/docs/api-reference/messages) to # start the thread with. # - # @return [Array, nil] - optional :messages, - -> { OpenAI::Internal::Type::ArrayOf[OpenAI::Models::Beta::ThreadCreateParams::Message] } + # @return [Array, nil] + optional :messages, -> { OpenAI::Internal::Type::ArrayOf[OpenAI::Beta::ThreadCreateParams::Message] } # @!attribute metadata # Set of 16 key-value pairs that can be attached to an object. This can be useful @@ -33,20 +32,18 @@ class ThreadCreateParams < OpenAI::Internal::Type::BaseModel # `code_interpreter` tool requires a list of file IDs, while the `file_search` # tool requires a list of vector store IDs. # - # @return [OpenAI::Models::Beta::ThreadCreateParams::ToolResources, nil] - optional :tool_resources, -> { OpenAI::Models::Beta::ThreadCreateParams::ToolResources }, nil?: true + # @return [OpenAI::Beta::ThreadCreateParams::ToolResources, nil] + optional :tool_resources, -> { OpenAI::Beta::ThreadCreateParams::ToolResources }, nil?: true # @!method initialize(messages: nil, metadata: nil, tool_resources: nil, request_options: {}) # Some parameter documentations has been truncated, see # {OpenAI::Models::Beta::ThreadCreateParams} for more details. # - # @param messages [Array] A list of [messages](https://platform.openai.com/docs/api-reference/messages) to - # ... + # @param messages [Array] A list of [messages](https://platform.openai.com/docs/api-reference/messages) to # - # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be # - # @param tool_resources [OpenAI::Models::Beta::ThreadCreateParams::ToolResources, nil] A set of resources that are made available to the assistant's tools in this thre - # ... + # @param tool_resources [OpenAI::Beta::ThreadCreateParams::ToolResources, nil] A set of resources that are made available to the assistant's tools in this thre # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] @@ -54,8 +51,8 @@ class Message < OpenAI::Internal::Type::BaseModel # @!attribute content # The text contents of the message. # - # @return [String, Array] - required :content, union: -> { OpenAI::Models::Beta::ThreadCreateParams::Message::Content } + # @return [String, Array] + required :content, union: -> { OpenAI::Beta::ThreadCreateParams::Message::Content } # @!attribute role # The role of the entity that is creating the message. Allowed values include: @@ -65,15 +62,17 @@ class Message < OpenAI::Internal::Type::BaseModel # - `assistant`: Indicates the message is generated by the assistant. Use this # value to insert messages from the assistant into the conversation. # - # @return [Symbol, OpenAI::Models::Beta::ThreadCreateParams::Message::Role] - required :role, enum: -> { OpenAI::Models::Beta::ThreadCreateParams::Message::Role } + # @return [Symbol, OpenAI::Beta::ThreadCreateParams::Message::Role] + required :role, enum: -> { OpenAI::Beta::ThreadCreateParams::Message::Role } # @!attribute attachments # A list of files attached to the message, and the tools they should be added to. # - # @return [Array, nil] + # @return [Array, nil] optional :attachments, - -> { OpenAI::Internal::Type::ArrayOf[OpenAI::Models::Beta::ThreadCreateParams::Message::Attachment] }, + -> { + OpenAI::Internal::Type::ArrayOf[OpenAI::Beta::ThreadCreateParams::Message::Attachment] + }, nil?: true # @!attribute metadata @@ -89,19 +88,19 @@ class Message < OpenAI::Internal::Type::BaseModel # @!method initialize(content:, role:, attachments: nil, metadata: nil) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Beta::ThreadCreateParams::Message} for more details. + # {OpenAI::Beta::ThreadCreateParams::Message} for more details. # - # @param content [String, Array] The text contents of the message. + # @param content [String, Array] The text contents of the message. # - # @param role [Symbol, OpenAI::Models::Beta::ThreadCreateParams::Message::Role] The role of the entity that is creating the message. Allowed values include: ... + # @param role [Symbol, OpenAI::Beta::ThreadCreateParams::Message::Role] The role of the entity that is creating the message. Allowed values include: # - # @param attachments [Array, nil] A list of files attached to the message, and the tools they should be added to. + # @param attachments [Array, nil] A list of files attached to the message, and the tools they should be added to. # - # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be # The text contents of the message. # - # @see OpenAI::Models::Beta::ThreadCreateParams::Message#content + # @see OpenAI::Beta::ThreadCreateParams::Message#content module Content extend OpenAI::Internal::Type::Union @@ -109,14 +108,14 @@ module Content variant String # An array of content parts with a defined type, each can be of type `text` or images can be passed with `image_url` or `image_file`. Image types are only supported on [Vision-compatible models](https://platform.openai.com/docs/models). - variant -> { OpenAI::Models::Beta::ThreadCreateParams::Message::Content::MessageContentPartParamArray } + variant -> { OpenAI::Beta::ThreadCreateParams::Message::Content::MessageContentPartParamArray } # @!method self.variants - # @return [Array(String, Array)] + # @return [Array(String, Array)] # @type [OpenAI::Internal::Type::Converter] MessageContentPartParamArray = - OpenAI::Internal::Type::ArrayOf[union: -> { OpenAI::Models::Beta::Threads::MessageContentPartParam }] + OpenAI::Internal::Type::ArrayOf[union: -> { OpenAI::Beta::Threads::MessageContentPartParam }] end # The role of the entity that is creating the message. Allowed values include: @@ -126,7 +125,7 @@ module Content # - `assistant`: Indicates the message is generated by the assistant. Use this # value to insert messages from the assistant into the conversation. # - # @see OpenAI::Models::Beta::ThreadCreateParams::Message#role + # @see OpenAI::Beta::ThreadCreateParams::Message#role module Role extend OpenAI::Internal::Type::Enum @@ -147,24 +146,28 @@ class Attachment < OpenAI::Internal::Type::BaseModel # @!attribute tools # The tools to add this file to. # - # @return [Array, nil] + # @return [Array, nil] optional :tools, - -> { OpenAI::Internal::Type::ArrayOf[union: OpenAI::Models::Beta::ThreadCreateParams::Message::Attachment::Tool] } + -> { + OpenAI::Internal::Type::ArrayOf[union: OpenAI::Beta::ThreadCreateParams::Message::Attachment::Tool] + } # @!method initialize(file_id: nil, tools: nil) # @param file_id [String] The ID of the file to attach to the message. # - # @param tools [Array] The tools to add this file to. + # @param tools [Array] The tools to add this file to. module Tool extend OpenAI::Internal::Type::Union discriminator :type - variant :code_interpreter, -> { OpenAI::Models::Beta::CodeInterpreterTool } + variant :code_interpreter, -> { OpenAI::Beta::CodeInterpreterTool } variant :file_search, - -> { OpenAI::Models::Beta::ThreadCreateParams::Message::Attachment::Tool::FileSearch } + -> { + OpenAI::Beta::ThreadCreateParams::Message::Attachment::Tool::FileSearch + } class FileSearch < OpenAI::Internal::Type::BaseModel # @!attribute type @@ -178,7 +181,7 @@ class FileSearch < OpenAI::Internal::Type::BaseModel end # @!method self.variants - # @return [Array(OpenAI::Models::Beta::CodeInterpreterTool, OpenAI::Models::Beta::ThreadCreateParams::Message::Attachment::Tool::FileSearch)] + # @return [Array(OpenAI::Beta::CodeInterpreterTool, OpenAI::Beta::ThreadCreateParams::Message::Attachment::Tool::FileSearch)] end end end @@ -186,14 +189,13 @@ class FileSearch < OpenAI::Internal::Type::BaseModel class ToolResources < OpenAI::Internal::Type::BaseModel # @!attribute code_interpreter # - # @return [OpenAI::Models::Beta::ThreadCreateParams::ToolResources::CodeInterpreter, nil] - optional :code_interpreter, - -> { OpenAI::Models::Beta::ThreadCreateParams::ToolResources::CodeInterpreter } + # @return [OpenAI::Beta::ThreadCreateParams::ToolResources::CodeInterpreter, nil] + optional :code_interpreter, -> { OpenAI::Beta::ThreadCreateParams::ToolResources::CodeInterpreter } # @!attribute file_search # - # @return [OpenAI::Models::Beta::ThreadCreateParams::ToolResources::FileSearch, nil] - optional :file_search, -> { OpenAI::Models::Beta::ThreadCreateParams::ToolResources::FileSearch } + # @return [OpenAI::Beta::ThreadCreateParams::ToolResources::FileSearch, nil] + optional :file_search, -> { OpenAI::Beta::ThreadCreateParams::ToolResources::FileSearch } # @!method initialize(code_interpreter: nil, file_search: nil) # A set of resources that are made available to the assistant's tools in this @@ -201,10 +203,10 @@ class ToolResources < OpenAI::Internal::Type::BaseModel # `code_interpreter` tool requires a list of file IDs, while the `file_search` # tool requires a list of vector store IDs. # - # @param code_interpreter [OpenAI::Models::Beta::ThreadCreateParams::ToolResources::CodeInterpreter] - # @param file_search [OpenAI::Models::Beta::ThreadCreateParams::ToolResources::FileSearch] + # @param code_interpreter [OpenAI::Beta::ThreadCreateParams::ToolResources::CodeInterpreter] + # @param file_search [OpenAI::Beta::ThreadCreateParams::ToolResources::FileSearch] - # @see OpenAI::Models::Beta::ThreadCreateParams::ToolResources#code_interpreter + # @see OpenAI::Beta::ThreadCreateParams::ToolResources#code_interpreter class CodeInterpreter < OpenAI::Internal::Type::BaseModel # @!attribute file_ids # A list of [file](https://platform.openai.com/docs/api-reference/files) IDs made @@ -216,14 +218,13 @@ class CodeInterpreter < OpenAI::Internal::Type::BaseModel # @!method initialize(file_ids: nil) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Beta::ThreadCreateParams::ToolResources::CodeInterpreter} for - # more details. + # {OpenAI::Beta::ThreadCreateParams::ToolResources::CodeInterpreter} for more + # details. # # @param file_ids [Array] A list of [file](https://platform.openai.com/docs/api-reference/files) IDs made - # ... end - # @see OpenAI::Models::Beta::ThreadCreateParams::ToolResources#file_search + # @see OpenAI::Beta::ThreadCreateParams::ToolResources#file_search class FileSearch < OpenAI::Internal::Type::BaseModel # @!attribute vector_store_ids # The @@ -240,29 +241,30 @@ class FileSearch < OpenAI::Internal::Type::BaseModel # with file_ids and attach it to this thread. There can be a maximum of 1 vector # store attached to the thread. # - # @return [Array, nil] + # @return [Array, nil] optional :vector_stores, - -> { OpenAI::Internal::Type::ArrayOf[OpenAI::Models::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore] } + -> { + OpenAI::Internal::Type::ArrayOf[OpenAI::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore] + } # @!method initialize(vector_store_ids: nil, vector_stores: nil) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Beta::ThreadCreateParams::ToolResources::FileSearch} for more - # details. + # {OpenAI::Beta::ThreadCreateParams::ToolResources::FileSearch} for more details. # # @param vector_store_ids [Array] The [vector store](https://platform.openai.com/docs/api-reference/vector-stores/ - # ... # - # @param vector_stores [Array] A helper to create a [vector store](https://platform.openai.com/docs/api-referen - # ... + # @param vector_stores [Array] A helper to create a [vector store](https://platform.openai.com/docs/api-referen class VectorStore < OpenAI::Internal::Type::BaseModel # @!attribute chunking_strategy # The chunking strategy used to chunk the file(s). If not set, will use the `auto` # strategy. # - # @return [OpenAI::Models::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Auto, OpenAI::Models::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static, nil] + # @return [OpenAI::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Auto, OpenAI::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static, nil] optional :chunking_strategy, - union: -> { OpenAI::Models::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy } + union: -> { + OpenAI::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy + } # @!attribute file_ids # A list of [file](https://platform.openai.com/docs/api-reference/files) IDs to @@ -285,21 +287,19 @@ class VectorStore < OpenAI::Internal::Type::BaseModel # @!method initialize(chunking_strategy: nil, file_ids: nil, metadata: nil) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore} - # for more details. + # {OpenAI::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore} for + # more details. # - # @param chunking_strategy [OpenAI::Models::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Auto, OpenAI::Models::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static] The chunking strategy used to chunk the file(s). If not set, will use the `auto` - # ... + # @param chunking_strategy [OpenAI::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Auto, OpenAI::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static] The chunking strategy used to chunk the file(s). If not set, will use the `auto` # # @param file_ids [Array] A list of [file](https://platform.openai.com/docs/api-reference/files) IDs to ad - # ... # - # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be # The chunking strategy used to chunk the file(s). If not set, will use the `auto` # strategy. # - # @see OpenAI::Models::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore#chunking_strategy + # @see OpenAI::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore#chunking_strategy module ChunkingStrategy extend OpenAI::Internal::Type::Union @@ -307,10 +307,14 @@ module ChunkingStrategy # The default strategy. This strategy currently uses a `max_chunk_size_tokens` of `800` and `chunk_overlap_tokens` of `400`. variant :auto, - -> { OpenAI::Models::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Auto } + -> { + OpenAI::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Auto + } variant :static, - -> { OpenAI::Models::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static } + -> { + OpenAI::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static + } class Auto < OpenAI::Internal::Type::BaseModel # @!attribute type @@ -329,9 +333,11 @@ class Auto < OpenAI::Internal::Type::BaseModel class Static < OpenAI::Internal::Type::BaseModel # @!attribute static # - # @return [OpenAI::Models::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static::Static] + # @return [OpenAI::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static::Static] required :static, - -> { OpenAI::Models::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static::Static } + -> { + OpenAI::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static::Static + } # @!attribute type # Always `static`. @@ -340,11 +346,11 @@ class Static < OpenAI::Internal::Type::BaseModel required :type, const: :static # @!method initialize(static:, type: :static) - # @param static [OpenAI::Models::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static::Static] + # @param static [OpenAI::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static::Static] # # @param type [Symbol, :static] Always `static`. - # @see OpenAI::Models::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static#static + # @see OpenAI::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static#static class Static < OpenAI::Internal::Type::BaseModel # @!attribute chunk_overlap_tokens # The number of tokens that overlap between chunks. The default value is `400`. @@ -363,19 +369,17 @@ class Static < OpenAI::Internal::Type::BaseModel # @!method initialize(chunk_overlap_tokens:, max_chunk_size_tokens:) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static::Static} + # {OpenAI::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static::Static} # for more details. # # @param chunk_overlap_tokens [Integer] The number of tokens that overlap between chunks. The default value is `400`. - # ... # # @param max_chunk_size_tokens [Integer] The maximum number of tokens in each chunk. The default value is `800`. The mini - # ... end end # @!method self.variants - # @return [Array(OpenAI::Models::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Auto, OpenAI::Models::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static)] + # @return [Array(OpenAI::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Auto, OpenAI::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static)] end end end diff --git a/lib/openai/models/beta/thread_stream_event.rb b/lib/openai/models/beta/thread_stream_event.rb index d3279538..1dbc9873 100644 --- a/lib/openai/models/beta/thread_stream_event.rb +++ b/lib/openai/models/beta/thread_stream_event.rb @@ -8,8 +8,8 @@ class ThreadStreamEvent < OpenAI::Internal::Type::BaseModel # Represents a thread that contains # [messages](https://platform.openai.com/docs/api-reference/messages). # - # @return [OpenAI::Models::Beta::Thread] - required :data, -> { OpenAI::Models::Beta::Thread } + # @return [OpenAI::Beta::Thread] + required :data, -> { OpenAI::Beta::Thread } # @!attribute event # @@ -24,14 +24,13 @@ class ThreadStreamEvent < OpenAI::Internal::Type::BaseModel # @!method initialize(data:, enabled: nil, event: :"thread.created") # Some parameter documentations has been truncated, see - # {OpenAI::Models::Beta::ThreadStreamEvent} for more details. + # {OpenAI::Beta::ThreadStreamEvent} for more details. # # Occurs when a new # [thread](https://platform.openai.com/docs/api-reference/threads/object) is # created. # - # @param data [OpenAI::Models::Beta::Thread] Represents a thread that contains [messages](https://platform.openai.com/docs/ap - # ... + # @param data [OpenAI::Beta::Thread] Represents a thread that contains [messages](https://platform.openai.com/docs/ap # # @param enabled [Boolean] Whether to enable input audio transcription. # diff --git a/lib/openai/models/beta/thread_update_params.rb b/lib/openai/models/beta/thread_update_params.rb index a96d0bc8..742aeb19 100644 --- a/lib/openai/models/beta/thread_update_params.rb +++ b/lib/openai/models/beta/thread_update_params.rb @@ -25,31 +25,29 @@ class ThreadUpdateParams < OpenAI::Internal::Type::BaseModel # `code_interpreter` tool requires a list of file IDs, while the `file_search` # tool requires a list of vector store IDs. # - # @return [OpenAI::Models::Beta::ThreadUpdateParams::ToolResources, nil] - optional :tool_resources, -> { OpenAI::Models::Beta::ThreadUpdateParams::ToolResources }, nil?: true + # @return [OpenAI::Beta::ThreadUpdateParams::ToolResources, nil] + optional :tool_resources, -> { OpenAI::Beta::ThreadUpdateParams::ToolResources }, nil?: true # @!method initialize(metadata: nil, tool_resources: nil, request_options: {}) # Some parameter documentations has been truncated, see # {OpenAI::Models::Beta::ThreadUpdateParams} for more details. # - # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be # - # @param tool_resources [OpenAI::Models::Beta::ThreadUpdateParams::ToolResources, nil] A set of resources that are made available to the assistant's tools in this thre - # ... + # @param tool_resources [OpenAI::Beta::ThreadUpdateParams::ToolResources, nil] A set of resources that are made available to the assistant's tools in this thre # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] class ToolResources < OpenAI::Internal::Type::BaseModel # @!attribute code_interpreter # - # @return [OpenAI::Models::Beta::ThreadUpdateParams::ToolResources::CodeInterpreter, nil] - optional :code_interpreter, - -> { OpenAI::Models::Beta::ThreadUpdateParams::ToolResources::CodeInterpreter } + # @return [OpenAI::Beta::ThreadUpdateParams::ToolResources::CodeInterpreter, nil] + optional :code_interpreter, -> { OpenAI::Beta::ThreadUpdateParams::ToolResources::CodeInterpreter } # @!attribute file_search # - # @return [OpenAI::Models::Beta::ThreadUpdateParams::ToolResources::FileSearch, nil] - optional :file_search, -> { OpenAI::Models::Beta::ThreadUpdateParams::ToolResources::FileSearch } + # @return [OpenAI::Beta::ThreadUpdateParams::ToolResources::FileSearch, nil] + optional :file_search, -> { OpenAI::Beta::ThreadUpdateParams::ToolResources::FileSearch } # @!method initialize(code_interpreter: nil, file_search: nil) # A set of resources that are made available to the assistant's tools in this @@ -57,10 +55,10 @@ class ToolResources < OpenAI::Internal::Type::BaseModel # `code_interpreter` tool requires a list of file IDs, while the `file_search` # tool requires a list of vector store IDs. # - # @param code_interpreter [OpenAI::Models::Beta::ThreadUpdateParams::ToolResources::CodeInterpreter] - # @param file_search [OpenAI::Models::Beta::ThreadUpdateParams::ToolResources::FileSearch] + # @param code_interpreter [OpenAI::Beta::ThreadUpdateParams::ToolResources::CodeInterpreter] + # @param file_search [OpenAI::Beta::ThreadUpdateParams::ToolResources::FileSearch] - # @see OpenAI::Models::Beta::ThreadUpdateParams::ToolResources#code_interpreter + # @see OpenAI::Beta::ThreadUpdateParams::ToolResources#code_interpreter class CodeInterpreter < OpenAI::Internal::Type::BaseModel # @!attribute file_ids # A list of [file](https://platform.openai.com/docs/api-reference/files) IDs made @@ -72,14 +70,13 @@ class CodeInterpreter < OpenAI::Internal::Type::BaseModel # @!method initialize(file_ids: nil) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Beta::ThreadUpdateParams::ToolResources::CodeInterpreter} for - # more details. + # {OpenAI::Beta::ThreadUpdateParams::ToolResources::CodeInterpreter} for more + # details. # # @param file_ids [Array] A list of [file](https://platform.openai.com/docs/api-reference/files) IDs made - # ... end - # @see OpenAI::Models::Beta::ThreadUpdateParams::ToolResources#file_search + # @see OpenAI::Beta::ThreadUpdateParams::ToolResources#file_search class FileSearch < OpenAI::Internal::Type::BaseModel # @!attribute vector_store_ids # The @@ -92,11 +89,9 @@ class FileSearch < OpenAI::Internal::Type::BaseModel # @!method initialize(vector_store_ids: nil) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Beta::ThreadUpdateParams::ToolResources::FileSearch} for more - # details. + # {OpenAI::Beta::ThreadUpdateParams::ToolResources::FileSearch} for more details. # # @param vector_store_ids [Array] The [vector store](https://platform.openai.com/docs/api-reference/vector-stores/ - # ... end end end diff --git a/lib/openai/models/beta/threads/annotation.rb b/lib/openai/models/beta/threads/annotation.rb index b5adaf6d..c110cbbd 100644 --- a/lib/openai/models/beta/threads/annotation.rb +++ b/lib/openai/models/beta/threads/annotation.rb @@ -13,13 +13,13 @@ module Annotation discriminator :type # A citation within the message that points to a specific quote from a specific File associated with the assistant or the message. Generated when the assistant uses the "file_search" tool to search files. - variant :file_citation, -> { OpenAI::Models::Beta::Threads::FileCitationAnnotation } + variant :file_citation, -> { OpenAI::Beta::Threads::FileCitationAnnotation } # A URL for the file that's generated when the assistant used the `code_interpreter` tool to generate a file. - variant :file_path, -> { OpenAI::Models::Beta::Threads::FilePathAnnotation } + variant :file_path, -> { OpenAI::Beta::Threads::FilePathAnnotation } # @!method self.variants - # @return [Array(OpenAI::Models::Beta::Threads::FileCitationAnnotation, OpenAI::Models::Beta::Threads::FilePathAnnotation)] + # @return [Array(OpenAI::Beta::Threads::FileCitationAnnotation, OpenAI::Beta::Threads::FilePathAnnotation)] end end end diff --git a/lib/openai/models/beta/threads/annotation_delta.rb b/lib/openai/models/beta/threads/annotation_delta.rb index c6ed7bc1..e5b290d5 100644 --- a/lib/openai/models/beta/threads/annotation_delta.rb +++ b/lib/openai/models/beta/threads/annotation_delta.rb @@ -13,13 +13,13 @@ module AnnotationDelta discriminator :type # A citation within the message that points to a specific quote from a specific File associated with the assistant or the message. Generated when the assistant uses the "file_search" tool to search files. - variant :file_citation, -> { OpenAI::Models::Beta::Threads::FileCitationDeltaAnnotation } + variant :file_citation, -> { OpenAI::Beta::Threads::FileCitationDeltaAnnotation } # A URL for the file that's generated when the assistant used the `code_interpreter` tool to generate a file. - variant :file_path, -> { OpenAI::Models::Beta::Threads::FilePathDeltaAnnotation } + variant :file_path, -> { OpenAI::Beta::Threads::FilePathDeltaAnnotation } # @!method self.variants - # @return [Array(OpenAI::Models::Beta::Threads::FileCitationDeltaAnnotation, OpenAI::Models::Beta::Threads::FilePathDeltaAnnotation)] + # @return [Array(OpenAI::Beta::Threads::FileCitationDeltaAnnotation, OpenAI::Beta::Threads::FilePathDeltaAnnotation)] end end end diff --git a/lib/openai/models/beta/threads/file_citation_annotation.rb b/lib/openai/models/beta/threads/file_citation_annotation.rb index 4ccc33d1..bb8a4050 100644 --- a/lib/openai/models/beta/threads/file_citation_annotation.rb +++ b/lib/openai/models/beta/threads/file_citation_annotation.rb @@ -12,8 +12,8 @@ class FileCitationAnnotation < OpenAI::Internal::Type::BaseModel # @!attribute file_citation # - # @return [OpenAI::Models::Beta::Threads::FileCitationAnnotation::FileCitation] - required :file_citation, -> { OpenAI::Models::Beta::Threads::FileCitationAnnotation::FileCitation } + # @return [OpenAI::Beta::Threads::FileCitationAnnotation::FileCitation] + required :file_citation, -> { OpenAI::Beta::Threads::FileCitationAnnotation::FileCitation } # @!attribute start_index # @@ -39,7 +39,7 @@ class FileCitationAnnotation < OpenAI::Internal::Type::BaseModel # # @param end_index [Integer] # - # @param file_citation [OpenAI::Models::Beta::Threads::FileCitationAnnotation::FileCitation] + # @param file_citation [OpenAI::Beta::Threads::FileCitationAnnotation::FileCitation] # # @param start_index [Integer] # @@ -47,7 +47,7 @@ class FileCitationAnnotation < OpenAI::Internal::Type::BaseModel # # @param type [Symbol, :file_citation] Always `file_citation`. - # @see OpenAI::Models::Beta::Threads::FileCitationAnnotation#file_citation + # @see OpenAI::Beta::Threads::FileCitationAnnotation#file_citation class FileCitation < OpenAI::Internal::Type::BaseModel # @!attribute file_id # The ID of the specific File the citation is from. diff --git a/lib/openai/models/beta/threads/file_citation_delta_annotation.rb b/lib/openai/models/beta/threads/file_citation_delta_annotation.rb index 7a676989..4449922e 100644 --- a/lib/openai/models/beta/threads/file_citation_delta_annotation.rb +++ b/lib/openai/models/beta/threads/file_citation_delta_annotation.rb @@ -24,8 +24,8 @@ class FileCitationDeltaAnnotation < OpenAI::Internal::Type::BaseModel # @!attribute file_citation # - # @return [OpenAI::Models::Beta::Threads::FileCitationDeltaAnnotation::FileCitation, nil] - optional :file_citation, -> { OpenAI::Models::Beta::Threads::FileCitationDeltaAnnotation::FileCitation } + # @return [OpenAI::Beta::Threads::FileCitationDeltaAnnotation::FileCitation, nil] + optional :file_citation, -> { OpenAI::Beta::Threads::FileCitationDeltaAnnotation::FileCitation } # @!attribute start_index # @@ -47,7 +47,7 @@ class FileCitationDeltaAnnotation < OpenAI::Internal::Type::BaseModel # # @param end_index [Integer] # - # @param file_citation [OpenAI::Models::Beta::Threads::FileCitationDeltaAnnotation::FileCitation] + # @param file_citation [OpenAI::Beta::Threads::FileCitationDeltaAnnotation::FileCitation] # # @param start_index [Integer] # @@ -55,7 +55,7 @@ class FileCitationDeltaAnnotation < OpenAI::Internal::Type::BaseModel # # @param type [Symbol, :file_citation] Always `file_citation`. - # @see OpenAI::Models::Beta::Threads::FileCitationDeltaAnnotation#file_citation + # @see OpenAI::Beta::Threads::FileCitationDeltaAnnotation#file_citation class FileCitation < OpenAI::Internal::Type::BaseModel # @!attribute file_id # The ID of the specific File the citation is from. diff --git a/lib/openai/models/beta/threads/file_path_annotation.rb b/lib/openai/models/beta/threads/file_path_annotation.rb index 516a7249..90055353 100644 --- a/lib/openai/models/beta/threads/file_path_annotation.rb +++ b/lib/openai/models/beta/threads/file_path_annotation.rb @@ -12,8 +12,8 @@ class FilePathAnnotation < OpenAI::Internal::Type::BaseModel # @!attribute file_path # - # @return [OpenAI::Models::Beta::Threads::FilePathAnnotation::FilePath] - required :file_path, -> { OpenAI::Models::Beta::Threads::FilePathAnnotation::FilePath } + # @return [OpenAI::Beta::Threads::FilePathAnnotation::FilePath] + required :file_path, -> { OpenAI::Beta::Threads::FilePathAnnotation::FilePath } # @!attribute start_index # @@ -38,7 +38,7 @@ class FilePathAnnotation < OpenAI::Internal::Type::BaseModel # # @param end_index [Integer] # - # @param file_path [OpenAI::Models::Beta::Threads::FilePathAnnotation::FilePath] + # @param file_path [OpenAI::Beta::Threads::FilePathAnnotation::FilePath] # # @param start_index [Integer] # @@ -46,7 +46,7 @@ class FilePathAnnotation < OpenAI::Internal::Type::BaseModel # # @param type [Symbol, :file_path] Always `file_path`. - # @see OpenAI::Models::Beta::Threads::FilePathAnnotation#file_path + # @see OpenAI::Beta::Threads::FilePathAnnotation#file_path class FilePath < OpenAI::Internal::Type::BaseModel # @!attribute file_id # The ID of the file that was generated. diff --git a/lib/openai/models/beta/threads/file_path_delta_annotation.rb b/lib/openai/models/beta/threads/file_path_delta_annotation.rb index b67e6401..659b9518 100644 --- a/lib/openai/models/beta/threads/file_path_delta_annotation.rb +++ b/lib/openai/models/beta/threads/file_path_delta_annotation.rb @@ -24,8 +24,8 @@ class FilePathDeltaAnnotation < OpenAI::Internal::Type::BaseModel # @!attribute file_path # - # @return [OpenAI::Models::Beta::Threads::FilePathDeltaAnnotation::FilePath, nil] - optional :file_path, -> { OpenAI::Models::Beta::Threads::FilePathDeltaAnnotation::FilePath } + # @return [OpenAI::Beta::Threads::FilePathDeltaAnnotation::FilePath, nil] + optional :file_path, -> { OpenAI::Beta::Threads::FilePathDeltaAnnotation::FilePath } # @!attribute start_index # @@ -46,7 +46,7 @@ class FilePathDeltaAnnotation < OpenAI::Internal::Type::BaseModel # # @param end_index [Integer] # - # @param file_path [OpenAI::Models::Beta::Threads::FilePathDeltaAnnotation::FilePath] + # @param file_path [OpenAI::Beta::Threads::FilePathDeltaAnnotation::FilePath] # # @param start_index [Integer] # @@ -54,7 +54,7 @@ class FilePathDeltaAnnotation < OpenAI::Internal::Type::BaseModel # # @param type [Symbol, :file_path] Always `file_path`. - # @see OpenAI::Models::Beta::Threads::FilePathDeltaAnnotation#file_path + # @see OpenAI::Beta::Threads::FilePathDeltaAnnotation#file_path class FilePath < OpenAI::Internal::Type::BaseModel # @!attribute file_id # The ID of the file that was generated. diff --git a/lib/openai/models/beta/threads/image_file.rb b/lib/openai/models/beta/threads/image_file.rb index f99387f6..b71b6a5a 100644 --- a/lib/openai/models/beta/threads/image_file.rb +++ b/lib/openai/models/beta/threads/image_file.rb @@ -17,23 +17,21 @@ class ImageFile < OpenAI::Internal::Type::BaseModel # Specifies the detail level of the image if specified by the user. `low` uses # fewer tokens, you can opt in to high resolution using `high`. # - # @return [Symbol, OpenAI::Models::Beta::Threads::ImageFile::Detail, nil] - optional :detail, enum: -> { OpenAI::Models::Beta::Threads::ImageFile::Detail } + # @return [Symbol, OpenAI::Beta::Threads::ImageFile::Detail, nil] + optional :detail, enum: -> { OpenAI::Beta::Threads::ImageFile::Detail } # @!method initialize(file_id:, detail: nil) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Beta::Threads::ImageFile} for more details. + # {OpenAI::Beta::Threads::ImageFile} for more details. # # @param file_id [String] The [File](https://platform.openai.com/docs/api-reference/files) ID of the image - # ... # - # @param detail [Symbol, OpenAI::Models::Beta::Threads::ImageFile::Detail] Specifies the detail level of the image if specified by the user. `low` uses few - # ... + # @param detail [Symbol, OpenAI::Beta::Threads::ImageFile::Detail] Specifies the detail level of the image if specified by the user. `low` uses few # Specifies the detail level of the image if specified by the user. `low` uses # fewer tokens, you can opt in to high resolution using `high`. # - # @see OpenAI::Models::Beta::Threads::ImageFile#detail + # @see OpenAI::Beta::Threads::ImageFile#detail module Detail extend OpenAI::Internal::Type::Enum diff --git a/lib/openai/models/beta/threads/image_file_content_block.rb b/lib/openai/models/beta/threads/image_file_content_block.rb index 99aeca4e..09da28f8 100644 --- a/lib/openai/models/beta/threads/image_file_content_block.rb +++ b/lib/openai/models/beta/threads/image_file_content_block.rb @@ -7,8 +7,8 @@ module Threads class ImageFileContentBlock < OpenAI::Internal::Type::BaseModel # @!attribute image_file # - # @return [OpenAI::Models::Beta::Threads::ImageFile] - required :image_file, -> { OpenAI::Models::Beta::Threads::ImageFile } + # @return [OpenAI::Beta::Threads::ImageFile] + required :image_file, -> { OpenAI::Beta::Threads::ImageFile } # @!attribute type # Always `image_file`. @@ -20,7 +20,7 @@ class ImageFileContentBlock < OpenAI::Internal::Type::BaseModel # References an image [File](https://platform.openai.com/docs/api-reference/files) # in the content of a message. # - # @param image_file [OpenAI::Models::Beta::Threads::ImageFile] + # @param image_file [OpenAI::Beta::Threads::ImageFile] # # @param type [Symbol, :image_file] Always `image_file`. end diff --git a/lib/openai/models/beta/threads/image_file_delta.rb b/lib/openai/models/beta/threads/image_file_delta.rb index 69c0f595..886ed307 100644 --- a/lib/openai/models/beta/threads/image_file_delta.rb +++ b/lib/openai/models/beta/threads/image_file_delta.rb @@ -9,8 +9,8 @@ class ImageFileDelta < OpenAI::Internal::Type::BaseModel # Specifies the detail level of the image if specified by the user. `low` uses # fewer tokens, you can opt in to high resolution using `high`. # - # @return [Symbol, OpenAI::Models::Beta::Threads::ImageFileDelta::Detail, nil] - optional :detail, enum: -> { OpenAI::Models::Beta::Threads::ImageFileDelta::Detail } + # @return [Symbol, OpenAI::Beta::Threads::ImageFileDelta::Detail, nil] + optional :detail, enum: -> { OpenAI::Beta::Threads::ImageFileDelta::Detail } # @!attribute file_id # The [File](https://platform.openai.com/docs/api-reference/files) ID of the image @@ -22,18 +22,16 @@ class ImageFileDelta < OpenAI::Internal::Type::BaseModel # @!method initialize(detail: nil, file_id: nil) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Beta::Threads::ImageFileDelta} for more details. + # {OpenAI::Beta::Threads::ImageFileDelta} for more details. # - # @param detail [Symbol, OpenAI::Models::Beta::Threads::ImageFileDelta::Detail] Specifies the detail level of the image if specified by the user. `low` uses few - # ... + # @param detail [Symbol, OpenAI::Beta::Threads::ImageFileDelta::Detail] Specifies the detail level of the image if specified by the user. `low` uses few # # @param file_id [String] The [File](https://platform.openai.com/docs/api-reference/files) ID of the image - # ... # Specifies the detail level of the image if specified by the user. `low` uses # fewer tokens, you can opt in to high resolution using `high`. # - # @see OpenAI::Models::Beta::Threads::ImageFileDelta#detail + # @see OpenAI::Beta::Threads::ImageFileDelta#detail module Detail extend OpenAI::Internal::Type::Enum diff --git a/lib/openai/models/beta/threads/image_file_delta_block.rb b/lib/openai/models/beta/threads/image_file_delta_block.rb index 8831e0c3..206e36dd 100644 --- a/lib/openai/models/beta/threads/image_file_delta_block.rb +++ b/lib/openai/models/beta/threads/image_file_delta_block.rb @@ -19,8 +19,8 @@ class ImageFileDeltaBlock < OpenAI::Internal::Type::BaseModel # @!attribute image_file # - # @return [OpenAI::Models::Beta::Threads::ImageFileDelta, nil] - optional :image_file, -> { OpenAI::Models::Beta::Threads::ImageFileDelta } + # @return [OpenAI::Beta::Threads::ImageFileDelta, nil] + optional :image_file, -> { OpenAI::Beta::Threads::ImageFileDelta } # @!method initialize(index:, image_file: nil, type: :image_file) # References an image [File](https://platform.openai.com/docs/api-reference/files) @@ -28,7 +28,7 @@ class ImageFileDeltaBlock < OpenAI::Internal::Type::BaseModel # # @param index [Integer] The index of the content part in the message. # - # @param image_file [OpenAI::Models::Beta::Threads::ImageFileDelta] + # @param image_file [OpenAI::Beta::Threads::ImageFileDelta] # # @param type [Symbol, :image_file] Always `image_file`. end diff --git a/lib/openai/models/beta/threads/image_url.rb b/lib/openai/models/beta/threads/image_url.rb index 02ed1378..c932079d 100644 --- a/lib/openai/models/beta/threads/image_url.rb +++ b/lib/openai/models/beta/threads/image_url.rb @@ -16,23 +16,21 @@ class ImageURL < OpenAI::Internal::Type::BaseModel # Specifies the detail level of the image. `low` uses fewer tokens, you can opt in # to high resolution using `high`. Default value is `auto` # - # @return [Symbol, OpenAI::Models::Beta::Threads::ImageURL::Detail, nil] - optional :detail, enum: -> { OpenAI::Models::Beta::Threads::ImageURL::Detail } + # @return [Symbol, OpenAI::Beta::Threads::ImageURL::Detail, nil] + optional :detail, enum: -> { OpenAI::Beta::Threads::ImageURL::Detail } # @!method initialize(url:, detail: nil) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Beta::Threads::ImageURL} for more details. + # {OpenAI::Beta::Threads::ImageURL} for more details. # # @param url [String] The external URL of the image, must be a supported image types: jpeg, jpg, png, - # ... # - # @param detail [Symbol, OpenAI::Models::Beta::Threads::ImageURL::Detail] Specifies the detail level of the image. `low` uses fewer tokens, you can opt in - # ... + # @param detail [Symbol, OpenAI::Beta::Threads::ImageURL::Detail] Specifies the detail level of the image. `low` uses fewer tokens, you can opt in # Specifies the detail level of the image. `low` uses fewer tokens, you can opt in # to high resolution using `high`. Default value is `auto` # - # @see OpenAI::Models::Beta::Threads::ImageURL#detail + # @see OpenAI::Beta::Threads::ImageURL#detail module Detail extend OpenAI::Internal::Type::Enum diff --git a/lib/openai/models/beta/threads/image_url_content_block.rb b/lib/openai/models/beta/threads/image_url_content_block.rb index f9b5edc9..52d35a06 100644 --- a/lib/openai/models/beta/threads/image_url_content_block.rb +++ b/lib/openai/models/beta/threads/image_url_content_block.rb @@ -7,8 +7,8 @@ module Threads class ImageURLContentBlock < OpenAI::Internal::Type::BaseModel # @!attribute image_url # - # @return [OpenAI::Models::Beta::Threads::ImageURL] - required :image_url, -> { OpenAI::Models::Beta::Threads::ImageURL } + # @return [OpenAI::Beta::Threads::ImageURL] + required :image_url, -> { OpenAI::Beta::Threads::ImageURL } # @!attribute type # The type of the content part. @@ -19,7 +19,7 @@ class ImageURLContentBlock < OpenAI::Internal::Type::BaseModel # @!method initialize(image_url:, type: :image_url) # References an image URL in the content of a message. # - # @param image_url [OpenAI::Models::Beta::Threads::ImageURL] + # @param image_url [OpenAI::Beta::Threads::ImageURL] # # @param type [Symbol, :image_url] The type of the content part. end diff --git a/lib/openai/models/beta/threads/image_url_delta.rb b/lib/openai/models/beta/threads/image_url_delta.rb index 1f1d98ef..c8b10e43 100644 --- a/lib/openai/models/beta/threads/image_url_delta.rb +++ b/lib/openai/models/beta/threads/image_url_delta.rb @@ -9,8 +9,8 @@ class ImageURLDelta < OpenAI::Internal::Type::BaseModel # Specifies the detail level of the image. `low` uses fewer tokens, you can opt in # to high resolution using `high`. # - # @return [Symbol, OpenAI::Models::Beta::Threads::ImageURLDelta::Detail, nil] - optional :detail, enum: -> { OpenAI::Models::Beta::Threads::ImageURLDelta::Detail } + # @return [Symbol, OpenAI::Beta::Threads::ImageURLDelta::Detail, nil] + optional :detail, enum: -> { OpenAI::Beta::Threads::ImageURLDelta::Detail } # @!attribute url # The URL of the image, must be a supported image types: jpeg, jpg, png, gif, @@ -21,18 +21,16 @@ class ImageURLDelta < OpenAI::Internal::Type::BaseModel # @!method initialize(detail: nil, url: nil) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Beta::Threads::ImageURLDelta} for more details. + # {OpenAI::Beta::Threads::ImageURLDelta} for more details. # - # @param detail [Symbol, OpenAI::Models::Beta::Threads::ImageURLDelta::Detail] Specifies the detail level of the image. `low` uses fewer tokens, you can opt in - # ... + # @param detail [Symbol, OpenAI::Beta::Threads::ImageURLDelta::Detail] Specifies the detail level of the image. `low` uses fewer tokens, you can opt in # # @param url [String] The URL of the image, must be a supported image types: jpeg, jpg, png, gif, webp - # ... # Specifies the detail level of the image. `low` uses fewer tokens, you can opt in # to high resolution using `high`. # - # @see OpenAI::Models::Beta::Threads::ImageURLDelta#detail + # @see OpenAI::Beta::Threads::ImageURLDelta#detail module Detail extend OpenAI::Internal::Type::Enum diff --git a/lib/openai/models/beta/threads/image_url_delta_block.rb b/lib/openai/models/beta/threads/image_url_delta_block.rb index f2a01238..efe44526 100644 --- a/lib/openai/models/beta/threads/image_url_delta_block.rb +++ b/lib/openai/models/beta/threads/image_url_delta_block.rb @@ -19,15 +19,15 @@ class ImageURLDeltaBlock < OpenAI::Internal::Type::BaseModel # @!attribute image_url # - # @return [OpenAI::Models::Beta::Threads::ImageURLDelta, nil] - optional :image_url, -> { OpenAI::Models::Beta::Threads::ImageURLDelta } + # @return [OpenAI::Beta::Threads::ImageURLDelta, nil] + optional :image_url, -> { OpenAI::Beta::Threads::ImageURLDelta } # @!method initialize(index:, image_url: nil, type: :image_url) # References an image URL in the content of a message. # # @param index [Integer] The index of the content part in the message. # - # @param image_url [OpenAI::Models::Beta::Threads::ImageURLDelta] + # @param image_url [OpenAI::Beta::Threads::ImageURLDelta] # # @param type [Symbol, :image_url] Always `image_url`. end diff --git a/lib/openai/models/beta/threads/message.rb b/lib/openai/models/beta/threads/message.rb index b98b3ca0..19af32cc 100644 --- a/lib/openai/models/beta/threads/message.rb +++ b/lib/openai/models/beta/threads/message.rb @@ -23,9 +23,9 @@ class Message < OpenAI::Internal::Type::BaseModel # @!attribute attachments # A list of files attached to the message, and the tools they were added to. # - # @return [Array, nil] + # @return [Array, nil] required :attachments, - -> { OpenAI::Internal::Type::ArrayOf[OpenAI::Models::Beta::Threads::Message::Attachment] }, + -> { OpenAI::Internal::Type::ArrayOf[OpenAI::Beta::Threads::Message::Attachment] }, nil?: true # @!attribute completed_at @@ -37,9 +37,11 @@ class Message < OpenAI::Internal::Type::BaseModel # @!attribute content # The content of the message in array of text and/or images. # - # @return [Array] + # @return [Array] required :content, - -> { OpenAI::Internal::Type::ArrayOf[union: OpenAI::Models::Beta::Threads::MessageContent] } + -> { + OpenAI::Internal::Type::ArrayOf[union: OpenAI::Beta::Threads::MessageContent] + } # @!attribute created_at # The Unix timestamp (in seconds) for when the message was created. @@ -56,8 +58,8 @@ class Message < OpenAI::Internal::Type::BaseModel # @!attribute incomplete_details # On an incomplete message, details about why the message is incomplete. # - # @return [OpenAI::Models::Beta::Threads::Message::IncompleteDetails, nil] - required :incomplete_details, -> { OpenAI::Models::Beta::Threads::Message::IncompleteDetails }, nil?: true + # @return [OpenAI::Beta::Threads::Message::IncompleteDetails, nil] + required :incomplete_details, -> { OpenAI::Beta::Threads::Message::IncompleteDetails }, nil?: true # @!attribute metadata # Set of 16 key-value pairs that can be attached to an object. This can be useful @@ -79,8 +81,8 @@ class Message < OpenAI::Internal::Type::BaseModel # @!attribute role # The entity that produced the message. One of `user` or `assistant`. # - # @return [Symbol, OpenAI::Models::Beta::Threads::Message::Role] - required :role, enum: -> { OpenAI::Models::Beta::Threads::Message::Role } + # @return [Symbol, OpenAI::Beta::Threads::Message::Role] + required :role, enum: -> { OpenAI::Beta::Threads::Message::Role } # @!attribute run_id # The ID of the [run](https://platform.openai.com/docs/api-reference/runs) @@ -94,8 +96,8 @@ class Message < OpenAI::Internal::Type::BaseModel # The status of the message, which can be either `in_progress`, `incomplete`, or # `completed`. # - # @return [Symbol, OpenAI::Models::Beta::Threads::Message::Status] - required :status, enum: -> { OpenAI::Models::Beta::Threads::Message::Status } + # @return [Symbol, OpenAI::Beta::Threads::Message::Status] + required :status, enum: -> { OpenAI::Beta::Threads::Message::Status } # @!attribute thread_id # The [thread](https://platform.openai.com/docs/api-reference/threads) ID that @@ -106,7 +108,7 @@ class Message < OpenAI::Internal::Type::BaseModel # @!method initialize(id:, assistant_id:, attachments:, completed_at:, content:, created_at:, incomplete_at:, incomplete_details:, metadata:, role:, run_id:, status:, thread_id:, object: :"thread.message") # Some parameter documentations has been truncated, see - # {OpenAI::Models::Beta::Threads::Message} for more details. + # {OpenAI::Beta::Threads::Message} for more details. # # Represents a message within a # [thread](https://platform.openai.com/docs/api-reference/threads). @@ -114,32 +116,28 @@ class Message < OpenAI::Internal::Type::BaseModel # @param id [String] The identifier, which can be referenced in API endpoints. # # @param assistant_id [String, nil] If applicable, the ID of the [assistant](https://platform.openai.com/docs/api-re - # ... # - # @param attachments [Array, nil] A list of files attached to the message, and the tools they were added to. + # @param attachments [Array, nil] A list of files attached to the message, and the tools they were added to. # # @param completed_at [Integer, nil] The Unix timestamp (in seconds) for when the message was completed. # - # @param content [Array] The content of the message in array of text and/or images. + # @param content [Array] The content of the message in array of text and/or images. # # @param created_at [Integer] The Unix timestamp (in seconds) for when the message was created. # # @param incomplete_at [Integer, nil] The Unix timestamp (in seconds) for when the message was marked as incomplete. # - # @param incomplete_details [OpenAI::Models::Beta::Threads::Message::IncompleteDetails, nil] On an incomplete message, details about why the message is incomplete. + # @param incomplete_details [OpenAI::Beta::Threads::Message::IncompleteDetails, nil] On an incomplete message, details about why the message is incomplete. # - # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be # - # @param role [Symbol, OpenAI::Models::Beta::Threads::Message::Role] The entity that produced the message. One of `user` or `assistant`. + # @param role [Symbol, OpenAI::Beta::Threads::Message::Role] The entity that produced the message. One of `user` or `assistant`. # # @param run_id [String, nil] The ID of the [run](https://platform.openai.com/docs/api-reference/runs) associa - # ... # - # @param status [Symbol, OpenAI::Models::Beta::Threads::Message::Status] The status of the message, which can be either `in_progress`, `incomplete`, or ` - # ... + # @param status [Symbol, OpenAI::Beta::Threads::Message::Status] The status of the message, which can be either `in_progress`, `incomplete`, or ` # # @param thread_id [String] The [thread](https://platform.openai.com/docs/api-reference/threads) ID that thi - # ... # # @param object [Symbol, :"thread.message"] The object type, which is always `thread.message`. @@ -153,21 +151,25 @@ class Attachment < OpenAI::Internal::Type::BaseModel # @!attribute tools # The tools to add this file to. # - # @return [Array, nil] + # @return [Array, nil] optional :tools, - -> { OpenAI::Internal::Type::ArrayOf[union: OpenAI::Models::Beta::Threads::Message::Attachment::Tool] } + -> { + OpenAI::Internal::Type::ArrayOf[union: OpenAI::Beta::Threads::Message::Attachment::Tool] + } # @!method initialize(file_id: nil, tools: nil) # @param file_id [String] The ID of the file to attach to the message. # - # @param tools [Array] The tools to add this file to. + # @param tools [Array] The tools to add this file to. module Tool extend OpenAI::Internal::Type::Union - variant -> { OpenAI::Models::Beta::CodeInterpreterTool } + variant -> { OpenAI::Beta::CodeInterpreterTool } - variant -> { OpenAI::Models::Beta::Threads::Message::Attachment::Tool::AssistantToolsFileSearchTypeOnly } + variant -> { + OpenAI::Beta::Threads::Message::Attachment::Tool::AssistantToolsFileSearchTypeOnly + } class AssistantToolsFileSearchTypeOnly < OpenAI::Internal::Type::BaseModel # @!attribute type @@ -181,26 +183,26 @@ class AssistantToolsFileSearchTypeOnly < OpenAI::Internal::Type::BaseModel end # @!method self.variants - # @return [Array(OpenAI::Models::Beta::CodeInterpreterTool, OpenAI::Models::Beta::Threads::Message::Attachment::Tool::AssistantToolsFileSearchTypeOnly)] + # @return [Array(OpenAI::Beta::CodeInterpreterTool, OpenAI::Beta::Threads::Message::Attachment::Tool::AssistantToolsFileSearchTypeOnly)] end end - # @see OpenAI::Models::Beta::Threads::Message#incomplete_details + # @see OpenAI::Beta::Threads::Message#incomplete_details class IncompleteDetails < OpenAI::Internal::Type::BaseModel # @!attribute reason # The reason the message is incomplete. # - # @return [Symbol, OpenAI::Models::Beta::Threads::Message::IncompleteDetails::Reason] - required :reason, enum: -> { OpenAI::Models::Beta::Threads::Message::IncompleteDetails::Reason } + # @return [Symbol, OpenAI::Beta::Threads::Message::IncompleteDetails::Reason] + required :reason, enum: -> { OpenAI::Beta::Threads::Message::IncompleteDetails::Reason } # @!method initialize(reason:) # On an incomplete message, details about why the message is incomplete. # - # @param reason [Symbol, OpenAI::Models::Beta::Threads::Message::IncompleteDetails::Reason] The reason the message is incomplete. + # @param reason [Symbol, OpenAI::Beta::Threads::Message::IncompleteDetails::Reason] The reason the message is incomplete. # The reason the message is incomplete. # - # @see OpenAI::Models::Beta::Threads::Message::IncompleteDetails#reason + # @see OpenAI::Beta::Threads::Message::IncompleteDetails#reason module Reason extend OpenAI::Internal::Type::Enum @@ -217,7 +219,7 @@ module Reason # The entity that produced the message. One of `user` or `assistant`. # - # @see OpenAI::Models::Beta::Threads::Message#role + # @see OpenAI::Beta::Threads::Message#role module Role extend OpenAI::Internal::Type::Enum @@ -231,7 +233,7 @@ module Role # The status of the message, which can be either `in_progress`, `incomplete`, or # `completed`. # - # @see OpenAI::Models::Beta::Threads::Message#status + # @see OpenAI::Beta::Threads::Message#status module Status extend OpenAI::Internal::Type::Enum diff --git a/lib/openai/models/beta/threads/message_content.rb b/lib/openai/models/beta/threads/message_content.rb index dbc60f62..295d6858 100644 --- a/lib/openai/models/beta/threads/message_content.rb +++ b/lib/openai/models/beta/threads/message_content.rb @@ -12,19 +12,19 @@ module MessageContent discriminator :type # References an image [File](https://platform.openai.com/docs/api-reference/files) in the content of a message. - variant :image_file, -> { OpenAI::Models::Beta::Threads::ImageFileContentBlock } + variant :image_file, -> { OpenAI::Beta::Threads::ImageFileContentBlock } # References an image URL in the content of a message. - variant :image_url, -> { OpenAI::Models::Beta::Threads::ImageURLContentBlock } + variant :image_url, -> { OpenAI::Beta::Threads::ImageURLContentBlock } # The text content that is part of a message. - variant :text, -> { OpenAI::Models::Beta::Threads::TextContentBlock } + variant :text, -> { OpenAI::Beta::Threads::TextContentBlock } # The refusal content generated by the assistant. - variant :refusal, -> { OpenAI::Models::Beta::Threads::RefusalContentBlock } + variant :refusal, -> { OpenAI::Beta::Threads::RefusalContentBlock } # @!method self.variants - # @return [Array(OpenAI::Models::Beta::Threads::ImageFileContentBlock, OpenAI::Models::Beta::Threads::ImageURLContentBlock, OpenAI::Models::Beta::Threads::TextContentBlock, OpenAI::Models::Beta::Threads::RefusalContentBlock)] + # @return [Array(OpenAI::Beta::Threads::ImageFileContentBlock, OpenAI::Beta::Threads::ImageURLContentBlock, OpenAI::Beta::Threads::TextContentBlock, OpenAI::Beta::Threads::RefusalContentBlock)] end end end diff --git a/lib/openai/models/beta/threads/message_content_delta.rb b/lib/openai/models/beta/threads/message_content_delta.rb index 744d6ed2..a6b04dc3 100644 --- a/lib/openai/models/beta/threads/message_content_delta.rb +++ b/lib/openai/models/beta/threads/message_content_delta.rb @@ -12,19 +12,19 @@ module MessageContentDelta discriminator :type # References an image [File](https://platform.openai.com/docs/api-reference/files) in the content of a message. - variant :image_file, -> { OpenAI::Models::Beta::Threads::ImageFileDeltaBlock } + variant :image_file, -> { OpenAI::Beta::Threads::ImageFileDeltaBlock } # The text content that is part of a message. - variant :text, -> { OpenAI::Models::Beta::Threads::TextDeltaBlock } + variant :text, -> { OpenAI::Beta::Threads::TextDeltaBlock } # The refusal content that is part of a message. - variant :refusal, -> { OpenAI::Models::Beta::Threads::RefusalDeltaBlock } + variant :refusal, -> { OpenAI::Beta::Threads::RefusalDeltaBlock } # References an image URL in the content of a message. - variant :image_url, -> { OpenAI::Models::Beta::Threads::ImageURLDeltaBlock } + variant :image_url, -> { OpenAI::Beta::Threads::ImageURLDeltaBlock } # @!method self.variants - # @return [Array(OpenAI::Models::Beta::Threads::ImageFileDeltaBlock, OpenAI::Models::Beta::Threads::TextDeltaBlock, OpenAI::Models::Beta::Threads::RefusalDeltaBlock, OpenAI::Models::Beta::Threads::ImageURLDeltaBlock)] + # @return [Array(OpenAI::Beta::Threads::ImageFileDeltaBlock, OpenAI::Beta::Threads::TextDeltaBlock, OpenAI::Beta::Threads::RefusalDeltaBlock, OpenAI::Beta::Threads::ImageURLDeltaBlock)] end end end diff --git a/lib/openai/models/beta/threads/message_content_part_param.rb b/lib/openai/models/beta/threads/message_content_part_param.rb index 9310f8bb..93fd228a 100644 --- a/lib/openai/models/beta/threads/message_content_part_param.rb +++ b/lib/openai/models/beta/threads/message_content_part_param.rb @@ -12,16 +12,16 @@ module MessageContentPartParam discriminator :type # References an image [File](https://platform.openai.com/docs/api-reference/files) in the content of a message. - variant :image_file, -> { OpenAI::Models::Beta::Threads::ImageFileContentBlock } + variant :image_file, -> { OpenAI::Beta::Threads::ImageFileContentBlock } # References an image URL in the content of a message. - variant :image_url, -> { OpenAI::Models::Beta::Threads::ImageURLContentBlock } + variant :image_url, -> { OpenAI::Beta::Threads::ImageURLContentBlock } # The text content that is part of a message. - variant :text, -> { OpenAI::Models::Beta::Threads::TextContentBlockParam } + variant :text, -> { OpenAI::Beta::Threads::TextContentBlockParam } # @!method self.variants - # @return [Array(OpenAI::Models::Beta::Threads::ImageFileContentBlock, OpenAI::Models::Beta::Threads::ImageURLContentBlock, OpenAI::Models::Beta::Threads::TextContentBlockParam)] + # @return [Array(OpenAI::Beta::Threads::ImageFileContentBlock, OpenAI::Beta::Threads::ImageURLContentBlock, OpenAI::Beta::Threads::TextContentBlockParam)] end end end diff --git a/lib/openai/models/beta/threads/message_create_params.rb b/lib/openai/models/beta/threads/message_create_params.rb index e6a5e155..223feced 100644 --- a/lib/openai/models/beta/threads/message_create_params.rb +++ b/lib/openai/models/beta/threads/message_create_params.rb @@ -12,8 +12,8 @@ class MessageCreateParams < OpenAI::Internal::Type::BaseModel # @!attribute content # The text contents of the message. # - # @return [String, Array] - required :content, union: -> { OpenAI::Models::Beta::Threads::MessageCreateParams::Content } + # @return [String, Array] + required :content, union: -> { OpenAI::Beta::Threads::MessageCreateParams::Content } # @!attribute role # The role of the entity that is creating the message. Allowed values include: @@ -23,15 +23,17 @@ class MessageCreateParams < OpenAI::Internal::Type::BaseModel # - `assistant`: Indicates the message is generated by the assistant. Use this # value to insert messages from the assistant into the conversation. # - # @return [Symbol, OpenAI::Models::Beta::Threads::MessageCreateParams::Role] - required :role, enum: -> { OpenAI::Models::Beta::Threads::MessageCreateParams::Role } + # @return [Symbol, OpenAI::Beta::Threads::MessageCreateParams::Role] + required :role, enum: -> { OpenAI::Beta::Threads::MessageCreateParams::Role } # @!attribute attachments # A list of files attached to the message, and the tools they should be added to. # - # @return [Array, nil] + # @return [Array, nil] optional :attachments, - -> { OpenAI::Internal::Type::ArrayOf[OpenAI::Models::Beta::Threads::MessageCreateParams::Attachment] }, + -> { + OpenAI::Internal::Type::ArrayOf[OpenAI::Beta::Threads::MessageCreateParams::Attachment] + }, nil?: true # @!attribute metadata @@ -49,13 +51,13 @@ class MessageCreateParams < OpenAI::Internal::Type::BaseModel # Some parameter documentations has been truncated, see # {OpenAI::Models::Beta::Threads::MessageCreateParams} for more details. # - # @param content [String, Array] The text contents of the message. + # @param content [String, Array] The text contents of the message. # - # @param role [Symbol, OpenAI::Models::Beta::Threads::MessageCreateParams::Role] The role of the entity that is creating the message. Allowed values include: ... + # @param role [Symbol, OpenAI::Beta::Threads::MessageCreateParams::Role] The role of the entity that is creating the message. Allowed values include: # - # @param attachments [Array, nil] A list of files attached to the message, and the tools they should be added to. + # @param attachments [Array, nil] A list of files attached to the message, and the tools they should be added to. # - # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] @@ -67,14 +69,14 @@ module Content variant String # An array of content parts with a defined type, each can be of type `text` or images can be passed with `image_url` or `image_file`. Image types are only supported on [Vision-compatible models](https://platform.openai.com/docs/models). - variant -> { OpenAI::Models::Beta::Threads::MessageCreateParams::Content::MessageContentPartParamArray } + variant -> { OpenAI::Beta::Threads::MessageCreateParams::Content::MessageContentPartParamArray } # @!method self.variants - # @return [Array(String, Array)] + # @return [Array(String, Array)] # @type [OpenAI::Internal::Type::Converter] MessageContentPartParamArray = - OpenAI::Internal::Type::ArrayOf[union: -> { OpenAI::Models::Beta::Threads::MessageContentPartParam }] + OpenAI::Internal::Type::ArrayOf[union: -> { OpenAI::Beta::Threads::MessageContentPartParam }] end # The role of the entity that is creating the message. Allowed values include: @@ -103,24 +105,28 @@ class Attachment < OpenAI::Internal::Type::BaseModel # @!attribute tools # The tools to add this file to. # - # @return [Array, nil] + # @return [Array, nil] optional :tools, - -> { OpenAI::Internal::Type::ArrayOf[union: OpenAI::Models::Beta::Threads::MessageCreateParams::Attachment::Tool] } + -> { + OpenAI::Internal::Type::ArrayOf[union: OpenAI::Beta::Threads::MessageCreateParams::Attachment::Tool] + } # @!method initialize(file_id: nil, tools: nil) # @param file_id [String] The ID of the file to attach to the message. # - # @param tools [Array] The tools to add this file to. + # @param tools [Array] The tools to add this file to. module Tool extend OpenAI::Internal::Type::Union discriminator :type - variant :code_interpreter, -> { OpenAI::Models::Beta::CodeInterpreterTool } + variant :code_interpreter, -> { OpenAI::Beta::CodeInterpreterTool } variant :file_search, - -> { OpenAI::Models::Beta::Threads::MessageCreateParams::Attachment::Tool::FileSearch } + -> { + OpenAI::Beta::Threads::MessageCreateParams::Attachment::Tool::FileSearch + } class FileSearch < OpenAI::Internal::Type::BaseModel # @!attribute type @@ -134,7 +140,7 @@ class FileSearch < OpenAI::Internal::Type::BaseModel end # @!method self.variants - # @return [Array(OpenAI::Models::Beta::CodeInterpreterTool, OpenAI::Models::Beta::Threads::MessageCreateParams::Attachment::Tool::FileSearch)] + # @return [Array(OpenAI::Beta::CodeInterpreterTool, OpenAI::Beta::Threads::MessageCreateParams::Attachment::Tool::FileSearch)] end end end diff --git a/lib/openai/models/beta/threads/message_delta.rb b/lib/openai/models/beta/threads/message_delta.rb index a845cecd..831356c3 100644 --- a/lib/openai/models/beta/threads/message_delta.rb +++ b/lib/openai/models/beta/threads/message_delta.rb @@ -8,26 +8,26 @@ class MessageDelta < OpenAI::Internal::Type::BaseModel # @!attribute content # The content of the message in array of text and/or images. # - # @return [Array, nil] + # @return [Array, nil] optional :content, - -> { OpenAI::Internal::Type::ArrayOf[union: OpenAI::Models::Beta::Threads::MessageContentDelta] } + -> { OpenAI::Internal::Type::ArrayOf[union: OpenAI::Beta::Threads::MessageContentDelta] } # @!attribute role # The entity that produced the message. One of `user` or `assistant`. # - # @return [Symbol, OpenAI::Models::Beta::Threads::MessageDelta::Role, nil] - optional :role, enum: -> { OpenAI::Models::Beta::Threads::MessageDelta::Role } + # @return [Symbol, OpenAI::Beta::Threads::MessageDelta::Role, nil] + optional :role, enum: -> { OpenAI::Beta::Threads::MessageDelta::Role } # @!method initialize(content: nil, role: nil) # The delta containing the fields that have changed on the Message. # - # @param content [Array] The content of the message in array of text and/or images. + # @param content [Array] The content of the message in array of text and/or images. # - # @param role [Symbol, OpenAI::Models::Beta::Threads::MessageDelta::Role] The entity that produced the message. One of `user` or `assistant`. + # @param role [Symbol, OpenAI::Beta::Threads::MessageDelta::Role] The entity that produced the message. One of `user` or `assistant`. # The entity that produced the message. One of `user` or `assistant`. # - # @see OpenAI::Models::Beta::Threads::MessageDelta#role + # @see OpenAI::Beta::Threads::MessageDelta#role module Role extend OpenAI::Internal::Type::Enum diff --git a/lib/openai/models/beta/threads/message_delta_event.rb b/lib/openai/models/beta/threads/message_delta_event.rb index 96c689fb..510cd5cf 100644 --- a/lib/openai/models/beta/threads/message_delta_event.rb +++ b/lib/openai/models/beta/threads/message_delta_event.rb @@ -14,8 +14,8 @@ class MessageDeltaEvent < OpenAI::Internal::Type::BaseModel # @!attribute delta # The delta containing the fields that have changed on the Message. # - # @return [OpenAI::Models::Beta::Threads::MessageDelta] - required :delta, -> { OpenAI::Models::Beta::Threads::MessageDelta } + # @return [OpenAI::Beta::Threads::MessageDelta] + required :delta, -> { OpenAI::Beta::Threads::MessageDelta } # @!attribute object # The object type, which is always `thread.message.delta`. @@ -29,7 +29,7 @@ class MessageDeltaEvent < OpenAI::Internal::Type::BaseModel # # @param id [String] The identifier of the message, which can be referenced in API endpoints. # - # @param delta [OpenAI::Models::Beta::Threads::MessageDelta] The delta containing the fields that have changed on the Message. + # @param delta [OpenAI::Beta::Threads::MessageDelta] The delta containing the fields that have changed on the Message. # # @param object [Symbol, :"thread.message.delta"] The object type, which is always `thread.message.delta`. end diff --git a/lib/openai/models/beta/threads/message_list_params.rb b/lib/openai/models/beta/threads/message_list_params.rb index 911b6f57..6ffe6655 100644 --- a/lib/openai/models/beta/threads/message_list_params.rb +++ b/lib/openai/models/beta/threads/message_list_params.rb @@ -38,8 +38,8 @@ class MessageListParams < OpenAI::Internal::Type::BaseModel # Sort order by the `created_at` timestamp of the objects. `asc` for ascending # order and `desc` for descending order. # - # @return [Symbol, OpenAI::Models::Beta::Threads::MessageListParams::Order, nil] - optional :order, enum: -> { OpenAI::Models::Beta::Threads::MessageListParams::Order } + # @return [Symbol, OpenAI::Beta::Threads::MessageListParams::Order, nil] + optional :order, enum: -> { OpenAI::Beta::Threads::MessageListParams::Order } # @!attribute run_id # Filter messages by the run ID that generated them. @@ -52,18 +52,14 @@ class MessageListParams < OpenAI::Internal::Type::BaseModel # {OpenAI::Models::Beta::Threads::MessageListParams} for more details. # # @param after [String] A cursor for use in pagination. `after` is an object ID that defines your place - # ... # # @param before [String] A cursor for use in pagination. `before` is an object ID that defines your place - # ... # # @param limit [Integer] A limit on the number of objects to be returned. Limit can range between 1 and 1 - # ... # - # @param order [Symbol, OpenAI::Models::Beta::Threads::MessageListParams::Order] Sort order by the `created_at` timestamp of the objects. `asc` for ascending ord - # ... + # @param order [Symbol, OpenAI::Beta::Threads::MessageListParams::Order] Sort order by the `created_at` timestamp of the objects. `asc` for ascending ord # - # @param run_id [String] Filter messages by the run ID that generated them. ... + # @param run_id [String] Filter messages by the run ID that generated them. # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] diff --git a/lib/openai/models/beta/threads/message_update_params.rb b/lib/openai/models/beta/threads/message_update_params.rb index ab23d244..43bbab67 100644 --- a/lib/openai/models/beta/threads/message_update_params.rb +++ b/lib/openai/models/beta/threads/message_update_params.rb @@ -31,7 +31,7 @@ class MessageUpdateParams < OpenAI::Internal::Type::BaseModel # # @param thread_id [String] # - # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] end diff --git a/lib/openai/models/beta/threads/required_action_function_tool_call.rb b/lib/openai/models/beta/threads/required_action_function_tool_call.rb index f7a4a2b0..66fbe931 100644 --- a/lib/openai/models/beta/threads/required_action_function_tool_call.rb +++ b/lib/openai/models/beta/threads/required_action_function_tool_call.rb @@ -17,8 +17,8 @@ class RequiredActionFunctionToolCall < OpenAI::Internal::Type::BaseModel # @!attribute function # The function definition. # - # @return [OpenAI::Models::Beta::Threads::RequiredActionFunctionToolCall::Function] - required :function, -> { OpenAI::Models::Beta::Threads::RequiredActionFunctionToolCall::Function } + # @return [OpenAI::Beta::Threads::RequiredActionFunctionToolCall::Function] + required :function, -> { OpenAI::Beta::Threads::RequiredActionFunctionToolCall::Function } # @!attribute type # The type of tool call the output is required for. For now, this is always @@ -29,20 +29,17 @@ class RequiredActionFunctionToolCall < OpenAI::Internal::Type::BaseModel # @!method initialize(id:, function:, type: :function) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Beta::Threads::RequiredActionFunctionToolCall} for more - # details. + # {OpenAI::Beta::Threads::RequiredActionFunctionToolCall} for more details. # # Tool call objects # # @param id [String] The ID of the tool call. This ID must be referenced when you submit the tool out - # ... # - # @param function [OpenAI::Models::Beta::Threads::RequiredActionFunctionToolCall::Function] The function definition. + # @param function [OpenAI::Beta::Threads::RequiredActionFunctionToolCall::Function] The function definition. # # @param type [Symbol, :function] The type of tool call the output is required for. For now, this is always `funct - # ... - # @see OpenAI::Models::Beta::Threads::RequiredActionFunctionToolCall#function + # @see OpenAI::Beta::Threads::RequiredActionFunctionToolCall#function class Function < OpenAI::Internal::Type::BaseModel # @!attribute arguments # The arguments that the model expects you to pass to the function. diff --git a/lib/openai/models/beta/threads/run.rb b/lib/openai/models/beta/threads/run.rb index 51b736e9..a4c6345e 100644 --- a/lib/openai/models/beta/threads/run.rb +++ b/lib/openai/models/beta/threads/run.rb @@ -56,8 +56,8 @@ class Run < OpenAI::Internal::Type::BaseModel # Details on why the run is incomplete. Will be `null` if the run is not # incomplete. # - # @return [OpenAI::Models::Beta::Threads::Run::IncompleteDetails, nil] - required :incomplete_details, -> { OpenAI::Models::Beta::Threads::Run::IncompleteDetails }, nil?: true + # @return [OpenAI::Beta::Threads::Run::IncompleteDetails, nil] + required :incomplete_details, -> { OpenAI::Beta::Threads::Run::IncompleteDetails }, nil?: true # @!attribute instructions # The instructions that the @@ -70,8 +70,8 @@ class Run < OpenAI::Internal::Type::BaseModel # @!attribute last_error # The last error associated with this run. Will be `null` if there are no errors. # - # @return [OpenAI::Models::Beta::Threads::Run::LastError, nil] - required :last_error, -> { OpenAI::Models::Beta::Threads::Run::LastError }, nil?: true + # @return [OpenAI::Beta::Threads::Run::LastError, nil] + required :last_error, -> { OpenAI::Beta::Threads::Run::LastError }, nil?: true # @!attribute max_completion_tokens # The maximum number of completion tokens specified to have been used over the @@ -124,8 +124,8 @@ class Run < OpenAI::Internal::Type::BaseModel # Details on the action required to continue the run. Will be `null` if no action # is required. # - # @return [OpenAI::Models::Beta::Threads::Run::RequiredAction, nil] - required :required_action, -> { OpenAI::Models::Beta::Threads::Run::RequiredAction }, nil?: true + # @return [OpenAI::Beta::Threads::Run::RequiredAction, nil] + required :required_action, -> { OpenAI::Beta::Threads::Run::RequiredAction }, nil?: true # @!attribute response_format # Specifies the format that the model must output. Compatible with @@ -149,8 +149,8 @@ class Run < OpenAI::Internal::Type::BaseModel # indicates the generation exceeded `max_tokens` or the conversation exceeded the # max context length. # - # @return [Symbol, :auto, OpenAI::Models::ResponseFormatText, OpenAI::Models::ResponseFormatJSONObject, OpenAI::Models::ResponseFormatJSONSchema, nil] - required :response_format, union: -> { OpenAI::Models::Beta::AssistantResponseFormatOption }, nil?: true + # @return [Symbol, :auto, OpenAI::ResponseFormatText, OpenAI::ResponseFormatJSONObject, OpenAI::ResponseFormatJSONSchema, nil] + required :response_format, union: -> { OpenAI::Beta::AssistantResponseFormatOption }, nil?: true # @!attribute started_at # The Unix timestamp (in seconds) for when the run was started. @@ -163,8 +163,8 @@ class Run < OpenAI::Internal::Type::BaseModel # `requires_action`, `cancelling`, `cancelled`, `failed`, `completed`, # `incomplete`, or `expired`. # - # @return [Symbol, OpenAI::Models::Beta::Threads::RunStatus] - required :status, enum: -> { OpenAI::Models::Beta::Threads::RunStatus } + # @return [Symbol, OpenAI::Beta::Threads::RunStatus] + required :status, enum: -> { OpenAI::Beta::Threads::RunStatus } # @!attribute thread_id # The ID of the [thread](https://platform.openai.com/docs/api-reference/threads) @@ -182,30 +182,30 @@ class Run < OpenAI::Internal::Type::BaseModel # `{"type": "function", "function": {"name": "my_function"}}` forces the model to # call that tool. # - # @return [Symbol, OpenAI::Models::Beta::AssistantToolChoiceOption::Auto, OpenAI::Models::Beta::AssistantToolChoice, nil] - required :tool_choice, union: -> { OpenAI::Models::Beta::AssistantToolChoiceOption }, nil?: true + # @return [Symbol, OpenAI::Beta::AssistantToolChoiceOption::Auto, OpenAI::Beta::AssistantToolChoice, nil] + required :tool_choice, union: -> { OpenAI::Beta::AssistantToolChoiceOption }, nil?: true # @!attribute tools # The list of tools that the # [assistant](https://platform.openai.com/docs/api-reference/assistants) used for # this run. # - # @return [Array] - required :tools, -> { OpenAI::Internal::Type::ArrayOf[union: OpenAI::Models::Beta::AssistantTool] } + # @return [Array] + required :tools, -> { OpenAI::Internal::Type::ArrayOf[union: OpenAI::Beta::AssistantTool] } # @!attribute truncation_strategy # Controls for how a thread will be truncated prior to the run. Use this to # control the intial context window of the run. # - # @return [OpenAI::Models::Beta::Threads::Run::TruncationStrategy, nil] - required :truncation_strategy, -> { OpenAI::Models::Beta::Threads::Run::TruncationStrategy }, nil?: true + # @return [OpenAI::Beta::Threads::Run::TruncationStrategy, nil] + required :truncation_strategy, -> { OpenAI::Beta::Threads::Run::TruncationStrategy }, nil?: true # @!attribute usage # Usage statistics related to the run. This value will be `null` if the run is not # in a terminal state (i.e. `in_progress`, `queued`, etc.). # - # @return [OpenAI::Models::Beta::Threads::Run::Usage, nil] - required :usage, -> { OpenAI::Models::Beta::Threads::Run::Usage }, nil?: true + # @return [OpenAI::Beta::Threads::Run::Usage, nil] + required :usage, -> { OpenAI::Beta::Threads::Run::Usage }, nil?: true # @!attribute temperature # The sampling temperature used for this run. If not set, defaults to 1. @@ -221,7 +221,7 @@ class Run < OpenAI::Internal::Type::BaseModel # @!method initialize(id:, assistant_id:, cancelled_at:, completed_at:, created_at:, expires_at:, failed_at:, incomplete_details:, instructions:, last_error:, max_completion_tokens:, max_prompt_tokens:, metadata:, model:, parallel_tool_calls:, required_action:, response_format:, started_at:, status:, thread_id:, tool_choice:, tools:, truncation_strategy:, usage:, temperature: nil, top_p: nil, object: :"thread.run") # Some parameter documentations has been truncated, see - # {OpenAI::Models::Beta::Threads::Run} for more details. + # {OpenAI::Beta::Threads::Run} for more details. # # Represents an execution run on a # [thread](https://platform.openai.com/docs/api-reference/threads). @@ -229,7 +229,6 @@ class Run < OpenAI::Internal::Type::BaseModel # @param id [String] The identifier, which can be referenced in API endpoints. # # @param assistant_id [String] The ID of the [assistant](https://platform.openai.com/docs/api-reference/assista - # ... # # @param cancelled_at [Integer, nil] The Unix timestamp (in seconds) for when the run was cancelled. # @@ -241,52 +240,39 @@ class Run < OpenAI::Internal::Type::BaseModel # # @param failed_at [Integer, nil] The Unix timestamp (in seconds) for when the run failed. # - # @param incomplete_details [OpenAI::Models::Beta::Threads::Run::IncompleteDetails, nil] Details on why the run is incomplete. Will be `null` if the run is not incomplet - # ... + # @param incomplete_details [OpenAI::Beta::Threads::Run::IncompleteDetails, nil] Details on why the run is incomplete. Will be `null` if the run is not incomplet # # @param instructions [String] The instructions that the [assistant](https://platform.openai.com/docs/api-refer - # ... # - # @param last_error [OpenAI::Models::Beta::Threads::Run::LastError, nil] The last error associated with this run. Will be `null` if there are no errors. + # @param last_error [OpenAI::Beta::Threads::Run::LastError, nil] The last error associated with this run. Will be `null` if there are no errors. # # @param max_completion_tokens [Integer, nil] The maximum number of completion tokens specified to have been used over the cou - # ... # # @param max_prompt_tokens [Integer, nil] The maximum number of prompt tokens specified to have been used over the course - # ... # - # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be # # @param model [String] The model that the [assistant](https://platform.openai.com/docs/api-reference/as - # ... # # @param parallel_tool_calls [Boolean] Whether to enable [parallel function calling](https://platform.openai.com/docs/g - # ... # - # @param required_action [OpenAI::Models::Beta::Threads::Run::RequiredAction, nil] Details on the action required to continue the run. Will be `null` if no action - # ... + # @param required_action [OpenAI::Beta::Threads::Run::RequiredAction, nil] Details on the action required to continue the run. Will be `null` if no action # - # @param response_format [Symbol, :auto, OpenAI::Models::ResponseFormatText, OpenAI::Models::ResponseFormatJSONObject, OpenAI::Models::ResponseFormatJSONSchema, nil] Specifies the format that the model must output. Compatible with [GPT-4o](https: - # ... + # @param response_format [Symbol, :auto, OpenAI::ResponseFormatText, OpenAI::ResponseFormatJSONObject, OpenAI::ResponseFormatJSONSchema, nil] Specifies the format that the model must output. Compatible with [GPT-4o](https: # # @param started_at [Integer, nil] The Unix timestamp (in seconds) for when the run was started. # - # @param status [Symbol, OpenAI::Models::Beta::Threads::RunStatus] The status of the run, which can be either `queued`, `in_progress`, `requires_ac - # ... + # @param status [Symbol, OpenAI::Beta::Threads::RunStatus] The status of the run, which can be either `queued`, `in_progress`, `requires_ac # # @param thread_id [String] The ID of the [thread](https://platform.openai.com/docs/api-reference/threads) t - # ... # - # @param tool_choice [Symbol, OpenAI::Models::Beta::AssistantToolChoiceOption::Auto, OpenAI::Models::Beta::AssistantToolChoice, nil] Controls which (if any) tool is called by the model. ... + # @param tool_choice [Symbol, OpenAI::Beta::AssistantToolChoiceOption::Auto, OpenAI::Beta::AssistantToolChoice, nil] Controls which (if any) tool is called by the model. # - # @param tools [Array] The list of tools that the [assistant](https://platform.openai.com/docs/api-refe - # ... + # @param tools [Array] The list of tools that the [assistant](https://platform.openai.com/docs/api-refe # - # @param truncation_strategy [OpenAI::Models::Beta::Threads::Run::TruncationStrategy, nil] Controls for how a thread will be truncated prior to the run. Use this to contro - # ... + # @param truncation_strategy [OpenAI::Beta::Threads::Run::TruncationStrategy, nil] Controls for how a thread will be truncated prior to the run. Use this to contro # - # @param usage [OpenAI::Models::Beta::Threads::Run::Usage, nil] Usage statistics related to the run. This value will be `null` if the run is not - # ... + # @param usage [OpenAI::Beta::Threads::Run::Usage, nil] Usage statistics related to the run. This value will be `null` if the run is not # # @param temperature [Float, nil] The sampling temperature used for this run. If not set, defaults to 1. # @@ -294,29 +280,28 @@ class Run < OpenAI::Internal::Type::BaseModel # # @param object [Symbol, :"thread.run"] The object type, which is always `thread.run`. - # @see OpenAI::Models::Beta::Threads::Run#incomplete_details + # @see OpenAI::Beta::Threads::Run#incomplete_details class IncompleteDetails < OpenAI::Internal::Type::BaseModel # @!attribute reason # The reason why the run is incomplete. This will point to which specific token # limit was reached over the course of the run. # - # @return [Symbol, OpenAI::Models::Beta::Threads::Run::IncompleteDetails::Reason, nil] - optional :reason, enum: -> { OpenAI::Models::Beta::Threads::Run::IncompleteDetails::Reason } + # @return [Symbol, OpenAI::Beta::Threads::Run::IncompleteDetails::Reason, nil] + optional :reason, enum: -> { OpenAI::Beta::Threads::Run::IncompleteDetails::Reason } # @!method initialize(reason: nil) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Beta::Threads::Run::IncompleteDetails} for more details. + # {OpenAI::Beta::Threads::Run::IncompleteDetails} for more details. # # Details on why the run is incomplete. Will be `null` if the run is not # incomplete. # - # @param reason [Symbol, OpenAI::Models::Beta::Threads::Run::IncompleteDetails::Reason] The reason why the run is incomplete. This will point to which specific token li - # ... + # @param reason [Symbol, OpenAI::Beta::Threads::Run::IncompleteDetails::Reason] The reason why the run is incomplete. This will point to which specific token li # The reason why the run is incomplete. This will point to which specific token # limit was reached over the course of the run. # - # @see OpenAI::Models::Beta::Threads::Run::IncompleteDetails#reason + # @see OpenAI::Beta::Threads::Run::IncompleteDetails#reason module Reason extend OpenAI::Internal::Type::Enum @@ -328,13 +313,13 @@ module Reason end end - # @see OpenAI::Models::Beta::Threads::Run#last_error + # @see OpenAI::Beta::Threads::Run#last_error class LastError < OpenAI::Internal::Type::BaseModel # @!attribute code # One of `server_error`, `rate_limit_exceeded`, or `invalid_prompt`. # - # @return [Symbol, OpenAI::Models::Beta::Threads::Run::LastError::Code] - required :code, enum: -> { OpenAI::Models::Beta::Threads::Run::LastError::Code } + # @return [Symbol, OpenAI::Beta::Threads::Run::LastError::Code] + required :code, enum: -> { OpenAI::Beta::Threads::Run::LastError::Code } # @!attribute message # A human-readable description of the error. @@ -345,13 +330,13 @@ class LastError < OpenAI::Internal::Type::BaseModel # @!method initialize(code:, message:) # The last error associated with this run. Will be `null` if there are no errors. # - # @param code [Symbol, OpenAI::Models::Beta::Threads::Run::LastError::Code] One of `server_error`, `rate_limit_exceeded`, or `invalid_prompt`. + # @param code [Symbol, OpenAI::Beta::Threads::Run::LastError::Code] One of `server_error`, `rate_limit_exceeded`, or `invalid_prompt`. # # @param message [String] A human-readable description of the error. # One of `server_error`, `rate_limit_exceeded`, or `invalid_prompt`. # - # @see OpenAI::Models::Beta::Threads::Run::LastError#code + # @see OpenAI::Beta::Threads::Run::LastError#code module Code extend OpenAI::Internal::Type::Enum @@ -364,14 +349,16 @@ module Code end end - # @see OpenAI::Models::Beta::Threads::Run#required_action + # @see OpenAI::Beta::Threads::Run#required_action class RequiredAction < OpenAI::Internal::Type::BaseModel # @!attribute submit_tool_outputs # Details on the tool outputs needed for this run to continue. # - # @return [OpenAI::Models::Beta::Threads::Run::RequiredAction::SubmitToolOutputs] + # @return [OpenAI::Beta::Threads::Run::RequiredAction::SubmitToolOutputs] required :submit_tool_outputs, - -> { OpenAI::Models::Beta::Threads::Run::RequiredAction::SubmitToolOutputs } + -> { + OpenAI::Beta::Threads::Run::RequiredAction::SubmitToolOutputs + } # @!attribute type # For now, this is always `submit_tool_outputs`. @@ -383,27 +370,29 @@ class RequiredAction < OpenAI::Internal::Type::BaseModel # Details on the action required to continue the run. Will be `null` if no action # is required. # - # @param submit_tool_outputs [OpenAI::Models::Beta::Threads::Run::RequiredAction::SubmitToolOutputs] Details on the tool outputs needed for this run to continue. + # @param submit_tool_outputs [OpenAI::Beta::Threads::Run::RequiredAction::SubmitToolOutputs] Details on the tool outputs needed for this run to continue. # # @param type [Symbol, :submit_tool_outputs] For now, this is always `submit_tool_outputs`. - # @see OpenAI::Models::Beta::Threads::Run::RequiredAction#submit_tool_outputs + # @see OpenAI::Beta::Threads::Run::RequiredAction#submit_tool_outputs class SubmitToolOutputs < OpenAI::Internal::Type::BaseModel # @!attribute tool_calls # A list of the relevant tool calls. # - # @return [Array] + # @return [Array] required :tool_calls, - -> { OpenAI::Internal::Type::ArrayOf[OpenAI::Models::Beta::Threads::RequiredActionFunctionToolCall] } + -> { + OpenAI::Internal::Type::ArrayOf[OpenAI::Beta::Threads::RequiredActionFunctionToolCall] + } # @!method initialize(tool_calls:) # Details on the tool outputs needed for this run to continue. # - # @param tool_calls [Array] A list of the relevant tool calls. + # @param tool_calls [Array] A list of the relevant tool calls. end end - # @see OpenAI::Models::Beta::Threads::Run#truncation_strategy + # @see OpenAI::Beta::Threads::Run#truncation_strategy class TruncationStrategy < OpenAI::Internal::Type::BaseModel # @!attribute type # The truncation strategy to use for the thread. The default is `auto`. If set to @@ -411,8 +400,8 @@ class TruncationStrategy < OpenAI::Internal::Type::BaseModel # the thread. When set to `auto`, messages in the middle of the thread will be # dropped to fit the context length of the model, `max_prompt_tokens`. # - # @return [Symbol, OpenAI::Models::Beta::Threads::Run::TruncationStrategy::Type] - required :type, enum: -> { OpenAI::Models::Beta::Threads::Run::TruncationStrategy::Type } + # @return [Symbol, OpenAI::Beta::Threads::Run::TruncationStrategy::Type] + required :type, enum: -> { OpenAI::Beta::Threads::Run::TruncationStrategy::Type } # @!attribute last_messages # The number of most recent messages from the thread when constructing the context @@ -423,23 +412,21 @@ class TruncationStrategy < OpenAI::Internal::Type::BaseModel # @!method initialize(type:, last_messages: nil) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Beta::Threads::Run::TruncationStrategy} for more details. + # {OpenAI::Beta::Threads::Run::TruncationStrategy} for more details. # # Controls for how a thread will be truncated prior to the run. Use this to # control the intial context window of the run. # - # @param type [Symbol, OpenAI::Models::Beta::Threads::Run::TruncationStrategy::Type] The truncation strategy to use for the thread. The default is `auto`. If set to - # ... + # @param type [Symbol, OpenAI::Beta::Threads::Run::TruncationStrategy::Type] The truncation strategy to use for the thread. The default is `auto`. If set to # # @param last_messages [Integer, nil] The number of most recent messages from the thread when constructing the context - # ... # The truncation strategy to use for the thread. The default is `auto`. If set to # `last_messages`, the thread will be truncated to the n most recent messages in # the thread. When set to `auto`, messages in the middle of the thread will be # dropped to fit the context length of the model, `max_prompt_tokens`. # - # @see OpenAI::Models::Beta::Threads::Run::TruncationStrategy#type + # @see OpenAI::Beta::Threads::Run::TruncationStrategy#type module Type extend OpenAI::Internal::Type::Enum @@ -451,7 +438,7 @@ module Type end end - # @see OpenAI::Models::Beta::Threads::Run#usage + # @see OpenAI::Beta::Threads::Run#usage class Usage < OpenAI::Internal::Type::BaseModel # @!attribute completion_tokens # Number of completion tokens used over the course of the run. diff --git a/lib/openai/models/beta/threads/run_create_params.rb b/lib/openai/models/beta/threads/run_create_params.rb index 8ced1f05..773bbb7b 100644 --- a/lib/openai/models/beta/threads/run_create_params.rb +++ b/lib/openai/models/beta/threads/run_create_params.rb @@ -28,9 +28,9 @@ class RunCreateParams < OpenAI::Internal::Type::BaseModel # [file search tool documentation](https://platform.openai.com/docs/assistants/tools/file-search#customizing-file-search-settings) # for more information. # - # @return [Array, nil] + # @return [Array, nil] optional :include, - -> { OpenAI::Internal::Type::ArrayOf[enum: OpenAI::Models::Beta::Threads::Runs::RunStepInclude] } + -> { OpenAI::Internal::Type::ArrayOf[enum: OpenAI::Beta::Threads::Runs::RunStepInclude] } # @!attribute additional_instructions # Appends additional instructions at the end of the instructions for the run. This @@ -43,9 +43,11 @@ class RunCreateParams < OpenAI::Internal::Type::BaseModel # @!attribute additional_messages # Adds additional messages to the thread before creating the run. # - # @return [Array, nil] + # @return [Array, nil] optional :additional_messages, - -> { OpenAI::Internal::Type::ArrayOf[OpenAI::Models::Beta::Threads::RunCreateParams::AdditionalMessage] }, + -> { + OpenAI::Internal::Type::ArrayOf[OpenAI::Beta::Threads::RunCreateParams::AdditionalMessage] + }, nil?: true # @!attribute instructions @@ -93,8 +95,8 @@ class RunCreateParams < OpenAI::Internal::Type::BaseModel # model associated with the assistant. If not, the model associated with the # assistant will be used. # - # @return [String, Symbol, OpenAI::Models::ChatModel, nil] - optional :model, union: -> { OpenAI::Models::Beta::Threads::RunCreateParams::Model }, nil?: true + # @return [String, Symbol, OpenAI::ChatModel, nil] + optional :model, union: -> { OpenAI::Beta::Threads::RunCreateParams::Model }, nil?: true # @!attribute parallel_tool_calls # Whether to enable @@ -112,8 +114,8 @@ class RunCreateParams < OpenAI::Internal::Type::BaseModel # supported values are `low`, `medium`, and `high`. Reducing reasoning effort can # result in faster responses and fewer tokens used on reasoning in a response. # - # @return [Symbol, OpenAI::Models::ReasoningEffort, nil] - optional :reasoning_effort, enum: -> { OpenAI::Models::ReasoningEffort }, nil?: true + # @return [Symbol, OpenAI::ReasoningEffort, nil] + optional :reasoning_effort, enum: -> { OpenAI::ReasoningEffort }, nil?: true # @!attribute response_format # Specifies the format that the model must output. Compatible with @@ -137,8 +139,8 @@ class RunCreateParams < OpenAI::Internal::Type::BaseModel # indicates the generation exceeded `max_tokens` or the conversation exceeded the # max context length. # - # @return [Symbol, :auto, OpenAI::Models::ResponseFormatText, OpenAI::Models::ResponseFormatJSONObject, OpenAI::Models::ResponseFormatJSONSchema, nil] - optional :response_format, union: -> { OpenAI::Models::Beta::AssistantResponseFormatOption }, nil?: true + # @return [Symbol, :auto, OpenAI::ResponseFormatText, OpenAI::ResponseFormatJSONObject, OpenAI::ResponseFormatJSONSchema, nil] + optional :response_format, union: -> { OpenAI::Beta::AssistantResponseFormatOption }, nil?: true # @!attribute temperature # What sampling temperature to use, between 0 and 2. Higher values like 0.8 will @@ -157,16 +159,18 @@ class RunCreateParams < OpenAI::Internal::Type::BaseModel # `{"type": "function", "function": {"name": "my_function"}}` forces the model to # call that tool. # - # @return [Symbol, OpenAI::Models::Beta::AssistantToolChoiceOption::Auto, OpenAI::Models::Beta::AssistantToolChoice, nil] - optional :tool_choice, union: -> { OpenAI::Models::Beta::AssistantToolChoiceOption }, nil?: true + # @return [Symbol, OpenAI::Beta::AssistantToolChoiceOption::Auto, OpenAI::Beta::AssistantToolChoice, nil] + optional :tool_choice, union: -> { OpenAI::Beta::AssistantToolChoiceOption }, nil?: true # @!attribute tools # Override the tools the assistant can use for this run. This is useful for # modifying the behavior on a per-run basis. # - # @return [Array, nil] + # @return [Array, nil] optional :tools, - -> { OpenAI::Internal::Type::ArrayOf[union: OpenAI::Models::Beta::AssistantTool] }, + -> { + OpenAI::Internal::Type::ArrayOf[union: OpenAI::Beta::AssistantTool] + }, nil?: true # @!attribute top_p @@ -183,9 +187,9 @@ class RunCreateParams < OpenAI::Internal::Type::BaseModel # Controls for how a thread will be truncated prior to the run. Use this to # control the intial context window of the run. # - # @return [OpenAI::Models::Beta::Threads::RunCreateParams::TruncationStrategy, nil] + # @return [OpenAI::Beta::Threads::RunCreateParams::TruncationStrategy, nil] optional :truncation_strategy, - -> { OpenAI::Models::Beta::Threads::RunCreateParams::TruncationStrategy }, + -> { OpenAI::Beta::Threads::RunCreateParams::TruncationStrategy }, nil?: true # @!method initialize(assistant_id:, include: nil, additional_instructions: nil, additional_messages: nil, instructions: nil, max_completion_tokens: nil, max_prompt_tokens: nil, metadata: nil, model: nil, parallel_tool_calls: nil, reasoning_effort: nil, response_format: nil, temperature: nil, tool_choice: nil, tools: nil, top_p: nil, truncation_strategy: nil, request_options: {}) @@ -193,51 +197,38 @@ class RunCreateParams < OpenAI::Internal::Type::BaseModel # {OpenAI::Models::Beta::Threads::RunCreateParams} for more details. # # @param assistant_id [String] The ID of the [assistant](https://platform.openai.com/docs/api-reference/assista - # ... # - # @param include [Array] A list of additional fields to include in the response. Currently the only suppo - # ... + # @param include [Array] A list of additional fields to include in the response. Currently the only suppo # # @param additional_instructions [String, nil] Appends additional instructions at the end of the instructions for the run. This - # ... # - # @param additional_messages [Array, nil] Adds additional messages to the thread before creating the run. + # @param additional_messages [Array, nil] Adds additional messages to the thread before creating the run. # # @param instructions [String, nil] Overrides the [instructions](https://platform.openai.com/docs/api-reference/assi - # ... # # @param max_completion_tokens [Integer, nil] The maximum number of completion tokens that may be used over the course of the - # ... # # @param max_prompt_tokens [Integer, nil] The maximum number of prompt tokens that may be used over the course of the run. - # ... # - # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be # - # @param model [String, Symbol, OpenAI::Models::ChatModel, nil] The ID of the [Model](https://platform.openai.com/docs/api-reference/models) to - # ... + # @param model [String, Symbol, OpenAI::ChatModel, nil] The ID of the [Model](https://platform.openai.com/docs/api-reference/models) to # # @param parallel_tool_calls [Boolean] Whether to enable [parallel function calling](https://platform.openai.com/docs/g - # ... # - # @param reasoning_effort [Symbol, OpenAI::Models::ReasoningEffort, nil] **o-series models only** ... + # @param reasoning_effort [Symbol, OpenAI::ReasoningEffort, nil] **o-series models only** # - # @param response_format [Symbol, :auto, OpenAI::Models::ResponseFormatText, OpenAI::Models::ResponseFormatJSONObject, OpenAI::Models::ResponseFormatJSONSchema, nil] Specifies the format that the model must output. Compatible with [GPT-4o](https: - # ... + # @param response_format [Symbol, :auto, OpenAI::ResponseFormatText, OpenAI::ResponseFormatJSONObject, OpenAI::ResponseFormatJSONSchema, nil] Specifies the format that the model must output. Compatible with [GPT-4o](https: # # @param temperature [Float, nil] What sampling temperature to use, between 0 and 2. Higher values like 0.8 will m - # ... # - # @param tool_choice [Symbol, OpenAI::Models::Beta::AssistantToolChoiceOption::Auto, OpenAI::Models::Beta::AssistantToolChoice, nil] Controls which (if any) tool is called by the model. ... + # @param tool_choice [Symbol, OpenAI::Beta::AssistantToolChoiceOption::Auto, OpenAI::Beta::AssistantToolChoice, nil] Controls which (if any) tool is called by the model. # - # @param tools [Array, nil] Override the tools the assistant can use for this run. This is useful for modify - # ... + # @param tools [Array, nil] Override the tools the assistant can use for this run. This is useful for modify # # @param top_p [Float, nil] An alternative to sampling with temperature, called nucleus sampling, where the - # ... # - # @param truncation_strategy [OpenAI::Models::Beta::Threads::RunCreateParams::TruncationStrategy, nil] Controls for how a thread will be truncated prior to the run. Use this to contro - # ... + # @param truncation_strategy [OpenAI::Beta::Threads::RunCreateParams::TruncationStrategy, nil] Controls for how a thread will be truncated prior to the run. Use this to contro # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] @@ -245,9 +236,11 @@ class AdditionalMessage < OpenAI::Internal::Type::BaseModel # @!attribute content # The text contents of the message. # - # @return [String, Array] + # @return [String, Array] required :content, - union: -> { OpenAI::Models::Beta::Threads::RunCreateParams::AdditionalMessage::Content } + union: -> { + OpenAI::Beta::Threads::RunCreateParams::AdditionalMessage::Content + } # @!attribute role # The role of the entity that is creating the message. Allowed values include: @@ -257,15 +250,17 @@ class AdditionalMessage < OpenAI::Internal::Type::BaseModel # - `assistant`: Indicates the message is generated by the assistant. Use this # value to insert messages from the assistant into the conversation. # - # @return [Symbol, OpenAI::Models::Beta::Threads::RunCreateParams::AdditionalMessage::Role] - required :role, enum: -> { OpenAI::Models::Beta::Threads::RunCreateParams::AdditionalMessage::Role } + # @return [Symbol, OpenAI::Beta::Threads::RunCreateParams::AdditionalMessage::Role] + required :role, enum: -> { OpenAI::Beta::Threads::RunCreateParams::AdditionalMessage::Role } # @!attribute attachments # A list of files attached to the message, and the tools they should be added to. # - # @return [Array, nil] + # @return [Array, nil] optional :attachments, - -> { OpenAI::Internal::Type::ArrayOf[OpenAI::Models::Beta::Threads::RunCreateParams::AdditionalMessage::Attachment] }, + -> { + OpenAI::Internal::Type::ArrayOf[OpenAI::Beta::Threads::RunCreateParams::AdditionalMessage::Attachment] + }, nil?: true # @!attribute metadata @@ -281,20 +276,19 @@ class AdditionalMessage < OpenAI::Internal::Type::BaseModel # @!method initialize(content:, role:, attachments: nil, metadata: nil) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Beta::Threads::RunCreateParams::AdditionalMessage} for more - # details. + # {OpenAI::Beta::Threads::RunCreateParams::AdditionalMessage} for more details. # - # @param content [String, Array] The text contents of the message. + # @param content [String, Array] The text contents of the message. # - # @param role [Symbol, OpenAI::Models::Beta::Threads::RunCreateParams::AdditionalMessage::Role] The role of the entity that is creating the message. Allowed values include: ... + # @param role [Symbol, OpenAI::Beta::Threads::RunCreateParams::AdditionalMessage::Role] The role of the entity that is creating the message. Allowed values include: # - # @param attachments [Array, nil] A list of files attached to the message, and the tools they should be added to. + # @param attachments [Array, nil] A list of files attached to the message, and the tools they should be added to. # - # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be # The text contents of the message. # - # @see OpenAI::Models::Beta::Threads::RunCreateParams::AdditionalMessage#content + # @see OpenAI::Beta::Threads::RunCreateParams::AdditionalMessage#content module Content extend OpenAI::Internal::Type::Union @@ -302,14 +296,16 @@ module Content variant String # An array of content parts with a defined type, each can be of type `text` or images can be passed with `image_url` or `image_file`. Image types are only supported on [Vision-compatible models](https://platform.openai.com/docs/models). - variant -> { OpenAI::Models::Beta::Threads::RunCreateParams::AdditionalMessage::Content::MessageContentPartParamArray } + variant -> { + OpenAI::Beta::Threads::RunCreateParams::AdditionalMessage::Content::MessageContentPartParamArray + } # @!method self.variants - # @return [Array(String, Array)] + # @return [Array(String, Array)] # @type [OpenAI::Internal::Type::Converter] MessageContentPartParamArray = - OpenAI::Internal::Type::ArrayOf[union: -> { OpenAI::Models::Beta::Threads::MessageContentPartParam }] + OpenAI::Internal::Type::ArrayOf[union: -> { OpenAI::Beta::Threads::MessageContentPartParam }] end # The role of the entity that is creating the message. Allowed values include: @@ -319,7 +315,7 @@ module Content # - `assistant`: Indicates the message is generated by the assistant. Use this # value to insert messages from the assistant into the conversation. # - # @see OpenAI::Models::Beta::Threads::RunCreateParams::AdditionalMessage#role + # @see OpenAI::Beta::Threads::RunCreateParams::AdditionalMessage#role module Role extend OpenAI::Internal::Type::Enum @@ -340,24 +336,28 @@ class Attachment < OpenAI::Internal::Type::BaseModel # @!attribute tools # The tools to add this file to. # - # @return [Array, nil] + # @return [Array, nil] optional :tools, - -> { OpenAI::Internal::Type::ArrayOf[union: OpenAI::Models::Beta::Threads::RunCreateParams::AdditionalMessage::Attachment::Tool] } + -> { + OpenAI::Internal::Type::ArrayOf[union: OpenAI::Beta::Threads::RunCreateParams::AdditionalMessage::Attachment::Tool] + } # @!method initialize(file_id: nil, tools: nil) # @param file_id [String] The ID of the file to attach to the message. # - # @param tools [Array] The tools to add this file to. + # @param tools [Array] The tools to add this file to. module Tool extend OpenAI::Internal::Type::Union discriminator :type - variant :code_interpreter, -> { OpenAI::Models::Beta::CodeInterpreterTool } + variant :code_interpreter, -> { OpenAI::Beta::CodeInterpreterTool } variant :file_search, - -> { OpenAI::Models::Beta::Threads::RunCreateParams::AdditionalMessage::Attachment::Tool::FileSearch } + -> { + OpenAI::Beta::Threads::RunCreateParams::AdditionalMessage::Attachment::Tool::FileSearch + } class FileSearch < OpenAI::Internal::Type::BaseModel # @!attribute type @@ -371,7 +371,7 @@ class FileSearch < OpenAI::Internal::Type::BaseModel end # @!method self.variants - # @return [Array(OpenAI::Models::Beta::CodeInterpreterTool, OpenAI::Models::Beta::Threads::RunCreateParams::AdditionalMessage::Attachment::Tool::FileSearch)] + # @return [Array(OpenAI::Beta::CodeInterpreterTool, OpenAI::Beta::Threads::RunCreateParams::AdditionalMessage::Attachment::Tool::FileSearch)] end end end @@ -386,10 +386,10 @@ module Model variant String # The ID of the [Model](https://platform.openai.com/docs/api-reference/models) to be used to execute this run. If a value is provided here, it will override the model associated with the assistant. If not, the model associated with the assistant will be used. - variant enum: -> { OpenAI::Models::ChatModel } + variant enum: -> { OpenAI::ChatModel } # @!method self.variants - # @return [Array(String, Symbol, OpenAI::Models::ChatModel)] + # @return [Array(String, Symbol, OpenAI::ChatModel)] end class TruncationStrategy < OpenAI::Internal::Type::BaseModel @@ -399,8 +399,8 @@ class TruncationStrategy < OpenAI::Internal::Type::BaseModel # the thread. When set to `auto`, messages in the middle of the thread will be # dropped to fit the context length of the model, `max_prompt_tokens`. # - # @return [Symbol, OpenAI::Models::Beta::Threads::RunCreateParams::TruncationStrategy::Type] - required :type, enum: -> { OpenAI::Models::Beta::Threads::RunCreateParams::TruncationStrategy::Type } + # @return [Symbol, OpenAI::Beta::Threads::RunCreateParams::TruncationStrategy::Type] + required :type, enum: -> { OpenAI::Beta::Threads::RunCreateParams::TruncationStrategy::Type } # @!attribute last_messages # The number of most recent messages from the thread when constructing the context @@ -411,24 +411,21 @@ class TruncationStrategy < OpenAI::Internal::Type::BaseModel # @!method initialize(type:, last_messages: nil) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Beta::Threads::RunCreateParams::TruncationStrategy} for more - # details. + # {OpenAI::Beta::Threads::RunCreateParams::TruncationStrategy} for more details. # # Controls for how a thread will be truncated prior to the run. Use this to # control the intial context window of the run. # - # @param type [Symbol, OpenAI::Models::Beta::Threads::RunCreateParams::TruncationStrategy::Type] The truncation strategy to use for the thread. The default is `auto`. If set to - # ... + # @param type [Symbol, OpenAI::Beta::Threads::RunCreateParams::TruncationStrategy::Type] The truncation strategy to use for the thread. The default is `auto`. If set to # # @param last_messages [Integer, nil] The number of most recent messages from the thread when constructing the context - # ... # The truncation strategy to use for the thread. The default is `auto`. If set to # `last_messages`, the thread will be truncated to the n most recent messages in # the thread. When set to `auto`, messages in the middle of the thread will be # dropped to fit the context length of the model, `max_prompt_tokens`. # - # @see OpenAI::Models::Beta::Threads::RunCreateParams::TruncationStrategy#type + # @see OpenAI::Beta::Threads::RunCreateParams::TruncationStrategy#type module Type extend OpenAI::Internal::Type::Enum diff --git a/lib/openai/models/beta/threads/run_list_params.rb b/lib/openai/models/beta/threads/run_list_params.rb index 1ef700a7..0399613f 100644 --- a/lib/openai/models/beta/threads/run_list_params.rb +++ b/lib/openai/models/beta/threads/run_list_params.rb @@ -38,24 +38,20 @@ class RunListParams < OpenAI::Internal::Type::BaseModel # Sort order by the `created_at` timestamp of the objects. `asc` for ascending # order and `desc` for descending order. # - # @return [Symbol, OpenAI::Models::Beta::Threads::RunListParams::Order, nil] - optional :order, enum: -> { OpenAI::Models::Beta::Threads::RunListParams::Order } + # @return [Symbol, OpenAI::Beta::Threads::RunListParams::Order, nil] + optional :order, enum: -> { OpenAI::Beta::Threads::RunListParams::Order } # @!method initialize(after: nil, before: nil, limit: nil, order: nil, request_options: {}) # Some parameter documentations has been truncated, see # {OpenAI::Models::Beta::Threads::RunListParams} for more details. # # @param after [String] A cursor for use in pagination. `after` is an object ID that defines your place - # ... # # @param before [String] A cursor for use in pagination. `before` is an object ID that defines your place - # ... # # @param limit [Integer] A limit on the number of objects to be returned. Limit can range between 1 and 1 - # ... # - # @param order [Symbol, OpenAI::Models::Beta::Threads::RunListParams::Order] Sort order by the `created_at` timestamp of the objects. `asc` for ascending ord - # ... + # @param order [Symbol, OpenAI::Beta::Threads::RunListParams::Order] Sort order by the `created_at` timestamp of the objects. `asc` for ascending ord # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] diff --git a/lib/openai/models/beta/threads/run_submit_tool_outputs_params.rb b/lib/openai/models/beta/threads/run_submit_tool_outputs_params.rb index 3ac75a5c..85f8acff 100644 --- a/lib/openai/models/beta/threads/run_submit_tool_outputs_params.rb +++ b/lib/openai/models/beta/threads/run_submit_tool_outputs_params.rb @@ -19,14 +19,16 @@ class RunSubmitToolOutputsParams < OpenAI::Internal::Type::BaseModel # @!attribute tool_outputs # A list of tools for which the outputs are being submitted. # - # @return [Array] + # @return [Array] required :tool_outputs, - -> { OpenAI::Internal::Type::ArrayOf[OpenAI::Models::Beta::Threads::RunSubmitToolOutputsParams::ToolOutput] } + -> { + OpenAI::Internal::Type::ArrayOf[OpenAI::Beta::Threads::RunSubmitToolOutputsParams::ToolOutput] + } # @!method initialize(thread_id:, tool_outputs:, request_options: {}) # @param thread_id [String] # - # @param tool_outputs [Array] A list of tools for which the outputs are being submitted. + # @param tool_outputs [Array] A list of tools for which the outputs are being submitted. # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] @@ -46,13 +48,12 @@ class ToolOutput < OpenAI::Internal::Type::BaseModel # @!method initialize(output: nil, tool_call_id: nil) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Beta::Threads::RunSubmitToolOutputsParams::ToolOutput} for more + # {OpenAI::Beta::Threads::RunSubmitToolOutputsParams::ToolOutput} for more # details. # # @param output [String] The output of the tool call to be submitted to continue the run. # # @param tool_call_id [String] The ID of the tool call in the `required_action` object within the run object th - # ... end end end diff --git a/lib/openai/models/beta/threads/run_update_params.rb b/lib/openai/models/beta/threads/run_update_params.rb index 6210136c..0033640d 100644 --- a/lib/openai/models/beta/threads/run_update_params.rb +++ b/lib/openai/models/beta/threads/run_update_params.rb @@ -31,7 +31,7 @@ class RunUpdateParams < OpenAI::Internal::Type::BaseModel # # @param thread_id [String] # - # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] end diff --git a/lib/openai/models/beta/threads/runs/code_interpreter_output_image.rb b/lib/openai/models/beta/threads/runs/code_interpreter_output_image.rb index b4458c9c..8ef2e615 100644 --- a/lib/openai/models/beta/threads/runs/code_interpreter_output_image.rb +++ b/lib/openai/models/beta/threads/runs/code_interpreter_output_image.rb @@ -20,17 +20,17 @@ class CodeInterpreterOutputImage < OpenAI::Internal::Type::BaseModel # @!attribute image # - # @return [OpenAI::Models::Beta::Threads::Runs::CodeInterpreterOutputImage::Image, nil] - optional :image, -> { OpenAI::Models::Beta::Threads::Runs::CodeInterpreterOutputImage::Image } + # @return [OpenAI::Beta::Threads::Runs::CodeInterpreterOutputImage::Image, nil] + optional :image, -> { OpenAI::Beta::Threads::Runs::CodeInterpreterOutputImage::Image } # @!method initialize(index:, image: nil, type: :image) # @param index [Integer] The index of the output in the outputs array. # - # @param image [OpenAI::Models::Beta::Threads::Runs::CodeInterpreterOutputImage::Image] + # @param image [OpenAI::Beta::Threads::Runs::CodeInterpreterOutputImage::Image] # # @param type [Symbol, :image] Always `image`. - # @see OpenAI::Models::Beta::Threads::Runs::CodeInterpreterOutputImage#image + # @see OpenAI::Beta::Threads::Runs::CodeInterpreterOutputImage#image class Image < OpenAI::Internal::Type::BaseModel # @!attribute file_id # The [file](https://platform.openai.com/docs/api-reference/files) ID of the @@ -41,11 +41,10 @@ class Image < OpenAI::Internal::Type::BaseModel # @!method initialize(file_id: nil) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Beta::Threads::Runs::CodeInterpreterOutputImage::Image} for - # more details. + # {OpenAI::Beta::Threads::Runs::CodeInterpreterOutputImage::Image} for more + # details. # # @param file_id [String] The [file](https://platform.openai.com/docs/api-reference/files) ID of the image - # ... end end end diff --git a/lib/openai/models/beta/threads/runs/code_interpreter_tool_call.rb b/lib/openai/models/beta/threads/runs/code_interpreter_tool_call.rb index 88f00a99..4c7b9f6a 100644 --- a/lib/openai/models/beta/threads/runs/code_interpreter_tool_call.rb +++ b/lib/openai/models/beta/threads/runs/code_interpreter_tool_call.rb @@ -15,9 +15,11 @@ class CodeInterpreterToolCall < OpenAI::Internal::Type::BaseModel # @!attribute code_interpreter # The Code Interpreter tool call definition. # - # @return [OpenAI::Models::Beta::Threads::Runs::CodeInterpreterToolCall::CodeInterpreter] + # @return [OpenAI::Beta::Threads::Runs::CodeInterpreterToolCall::CodeInterpreter] required :code_interpreter, - -> { OpenAI::Models::Beta::Threads::Runs::CodeInterpreterToolCall::CodeInterpreter } + -> { + OpenAI::Beta::Threads::Runs::CodeInterpreterToolCall::CodeInterpreter + } # @!attribute type # The type of tool call. This is always going to be `code_interpreter` for this @@ -28,18 +30,17 @@ class CodeInterpreterToolCall < OpenAI::Internal::Type::BaseModel # @!method initialize(id:, code_interpreter:, type: :code_interpreter) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Beta::Threads::Runs::CodeInterpreterToolCall} for more details. + # {OpenAI::Beta::Threads::Runs::CodeInterpreterToolCall} for more details. # # Details of the Code Interpreter tool call the run step was involved in. # # @param id [String] The ID of the tool call. # - # @param code_interpreter [OpenAI::Models::Beta::Threads::Runs::CodeInterpreterToolCall::CodeInterpreter] The Code Interpreter tool call definition. + # @param code_interpreter [OpenAI::Beta::Threads::Runs::CodeInterpreterToolCall::CodeInterpreter] The Code Interpreter tool call definition. # # @param type [Symbol, :code_interpreter] The type of tool call. This is always going to be `code_interpreter` for this ty - # ... - # @see OpenAI::Models::Beta::Threads::Runs::CodeInterpreterToolCall#code_interpreter + # @see OpenAI::Beta::Threads::Runs::CodeInterpreterToolCall#code_interpreter class CodeInterpreter < OpenAI::Internal::Type::BaseModel # @!attribute input # The input to the Code Interpreter tool call. @@ -52,21 +53,22 @@ class CodeInterpreter < OpenAI::Internal::Type::BaseModel # or more items, including text (`logs`) or images (`image`). Each of these are # represented by a different object type. # - # @return [Array] + # @return [Array] required :outputs, - -> { OpenAI::Internal::Type::ArrayOf[union: OpenAI::Models::Beta::Threads::Runs::CodeInterpreterToolCall::CodeInterpreter::Output] } + -> { + OpenAI::Internal::Type::ArrayOf[union: OpenAI::Beta::Threads::Runs::CodeInterpreterToolCall::CodeInterpreter::Output] + } # @!method initialize(input:, outputs:) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Beta::Threads::Runs::CodeInterpreterToolCall::CodeInterpreter} - # for more details. + # {OpenAI::Beta::Threads::Runs::CodeInterpreterToolCall::CodeInterpreter} for more + # details. # # The Code Interpreter tool call definition. # # @param input [String] The input to the Code Interpreter tool call. # - # @param outputs [Array] The outputs from the Code Interpreter tool call. Code Interpreter can output one - # ... + # @param outputs [Array] The outputs from the Code Interpreter tool call. Code Interpreter can output one # Text output from the Code Interpreter tool call as part of a run step. module Output @@ -76,10 +78,14 @@ module Output # Text output from the Code Interpreter tool call as part of a run step. variant :logs, - -> { OpenAI::Models::Beta::Threads::Runs::CodeInterpreterToolCall::CodeInterpreter::Output::Logs } + -> { + OpenAI::Beta::Threads::Runs::CodeInterpreterToolCall::CodeInterpreter::Output::Logs + } variant :image, - -> { OpenAI::Models::Beta::Threads::Runs::CodeInterpreterToolCall::CodeInterpreter::Output::Image } + -> { + OpenAI::Beta::Threads::Runs::CodeInterpreterToolCall::CodeInterpreter::Output::Image + } class Logs < OpenAI::Internal::Type::BaseModel # @!attribute logs @@ -105,9 +111,11 @@ class Logs < OpenAI::Internal::Type::BaseModel class Image < OpenAI::Internal::Type::BaseModel # @!attribute image # - # @return [OpenAI::Models::Beta::Threads::Runs::CodeInterpreterToolCall::CodeInterpreter::Output::Image::Image] + # @return [OpenAI::Beta::Threads::Runs::CodeInterpreterToolCall::CodeInterpreter::Output::Image::Image] required :image, - -> { OpenAI::Models::Beta::Threads::Runs::CodeInterpreterToolCall::CodeInterpreter::Output::Image::Image } + -> { + OpenAI::Beta::Threads::Runs::CodeInterpreterToolCall::CodeInterpreter::Output::Image::Image + } # @!attribute type # Always `image`. @@ -116,11 +124,11 @@ class Image < OpenAI::Internal::Type::BaseModel required :type, const: :image # @!method initialize(image:, type: :image) - # @param image [OpenAI::Models::Beta::Threads::Runs::CodeInterpreterToolCall::CodeInterpreter::Output::Image::Image] + # @param image [OpenAI::Beta::Threads::Runs::CodeInterpreterToolCall::CodeInterpreter::Output::Image::Image] # # @param type [Symbol, :image] Always `image`. - # @see OpenAI::Models::Beta::Threads::Runs::CodeInterpreterToolCall::CodeInterpreter::Output::Image#image + # @see OpenAI::Beta::Threads::Runs::CodeInterpreterToolCall::CodeInterpreter::Output::Image#image class Image < OpenAI::Internal::Type::BaseModel # @!attribute file_id # The [file](https://platform.openai.com/docs/api-reference/files) ID of the @@ -131,16 +139,15 @@ class Image < OpenAI::Internal::Type::BaseModel # @!method initialize(file_id:) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Beta::Threads::Runs::CodeInterpreterToolCall::CodeInterpreter::Output::Image::Image} + # {OpenAI::Beta::Threads::Runs::CodeInterpreterToolCall::CodeInterpreter::Output::Image::Image} # for more details. # # @param file_id [String] The [file](https://platform.openai.com/docs/api-reference/files) ID of the image - # ... end end # @!method self.variants - # @return [Array(OpenAI::Models::Beta::Threads::Runs::CodeInterpreterToolCall::CodeInterpreter::Output::Logs, OpenAI::Models::Beta::Threads::Runs::CodeInterpreterToolCall::CodeInterpreter::Output::Image)] + # @return [Array(OpenAI::Beta::Threads::Runs::CodeInterpreterToolCall::CodeInterpreter::Output::Logs, OpenAI::Beta::Threads::Runs::CodeInterpreterToolCall::CodeInterpreter::Output::Image)] end end end diff --git a/lib/openai/models/beta/threads/runs/code_interpreter_tool_call_delta.rb b/lib/openai/models/beta/threads/runs/code_interpreter_tool_call_delta.rb index 204d059b..98ceaa6b 100644 --- a/lib/openai/models/beta/threads/runs/code_interpreter_tool_call_delta.rb +++ b/lib/openai/models/beta/threads/runs/code_interpreter_tool_call_delta.rb @@ -28,14 +28,13 @@ class CodeInterpreterToolCallDelta < OpenAI::Internal::Type::BaseModel # @!attribute code_interpreter # The Code Interpreter tool call definition. # - # @return [OpenAI::Models::Beta::Threads::Runs::CodeInterpreterToolCallDelta::CodeInterpreter, nil] + # @return [OpenAI::Beta::Threads::Runs::CodeInterpreterToolCallDelta::CodeInterpreter, nil] optional :code_interpreter, - -> { OpenAI::Models::Beta::Threads::Runs::CodeInterpreterToolCallDelta::CodeInterpreter } + -> { OpenAI::Beta::Threads::Runs::CodeInterpreterToolCallDelta::CodeInterpreter } # @!method initialize(index:, id: nil, code_interpreter: nil, type: :code_interpreter) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Beta::Threads::Runs::CodeInterpreterToolCallDelta} for more - # details. + # {OpenAI::Beta::Threads::Runs::CodeInterpreterToolCallDelta} for more details. # # Details of the Code Interpreter tool call the run step was involved in. # @@ -43,12 +42,11 @@ class CodeInterpreterToolCallDelta < OpenAI::Internal::Type::BaseModel # # @param id [String] The ID of the tool call. # - # @param code_interpreter [OpenAI::Models::Beta::Threads::Runs::CodeInterpreterToolCallDelta::CodeInterpreter] The Code Interpreter tool call definition. + # @param code_interpreter [OpenAI::Beta::Threads::Runs::CodeInterpreterToolCallDelta::CodeInterpreter] The Code Interpreter tool call definition. # # @param type [Symbol, :code_interpreter] The type of tool call. This is always going to be `code_interpreter` for this ty - # ... - # @see OpenAI::Models::Beta::Threads::Runs::CodeInterpreterToolCallDelta#code_interpreter + # @see OpenAI::Beta::Threads::Runs::CodeInterpreterToolCallDelta#code_interpreter class CodeInterpreter < OpenAI::Internal::Type::BaseModel # @!attribute input # The input to the Code Interpreter tool call. @@ -61,21 +59,22 @@ class CodeInterpreter < OpenAI::Internal::Type::BaseModel # or more items, including text (`logs`) or images (`image`). Each of these are # represented by a different object type. # - # @return [Array, nil] + # @return [Array, nil] optional :outputs, - -> { OpenAI::Internal::Type::ArrayOf[union: OpenAI::Models::Beta::Threads::Runs::CodeInterpreterToolCallDelta::CodeInterpreter::Output] } + -> { + OpenAI::Internal::Type::ArrayOf[union: OpenAI::Beta::Threads::Runs::CodeInterpreterToolCallDelta::CodeInterpreter::Output] + } # @!method initialize(input: nil, outputs: nil) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Beta::Threads::Runs::CodeInterpreterToolCallDelta::CodeInterpreter} - # for more details. + # {OpenAI::Beta::Threads::Runs::CodeInterpreterToolCallDelta::CodeInterpreter} for + # more details. # # The Code Interpreter tool call definition. # # @param input [String] The input to the Code Interpreter tool call. # - # @param outputs [Array] The outputs from the Code Interpreter tool call. Code Interpreter can output one - # ... + # @param outputs [Array] The outputs from the Code Interpreter tool call. Code Interpreter can output one # Text output from the Code Interpreter tool call as part of a run step. module Output @@ -84,12 +83,12 @@ module Output discriminator :type # Text output from the Code Interpreter tool call as part of a run step. - variant :logs, -> { OpenAI::Models::Beta::Threads::Runs::CodeInterpreterLogs } + variant :logs, -> { OpenAI::Beta::Threads::Runs::CodeInterpreterLogs } - variant :image, -> { OpenAI::Models::Beta::Threads::Runs::CodeInterpreterOutputImage } + variant :image, -> { OpenAI::Beta::Threads::Runs::CodeInterpreterOutputImage } # @!method self.variants - # @return [Array(OpenAI::Models::Beta::Threads::Runs::CodeInterpreterLogs, OpenAI::Models::Beta::Threads::Runs::CodeInterpreterOutputImage)] + # @return [Array(OpenAI::Beta::Threads::Runs::CodeInterpreterLogs, OpenAI::Beta::Threads::Runs::CodeInterpreterOutputImage)] end end end diff --git a/lib/openai/models/beta/threads/runs/file_search_tool_call.rb b/lib/openai/models/beta/threads/runs/file_search_tool_call.rb index d6149f24..b8d0d149 100644 --- a/lib/openai/models/beta/threads/runs/file_search_tool_call.rb +++ b/lib/openai/models/beta/threads/runs/file_search_tool_call.rb @@ -15,8 +15,8 @@ class FileSearchToolCall < OpenAI::Internal::Type::BaseModel # @!attribute file_search # For now, this is always going to be an empty object. # - # @return [OpenAI::Models::Beta::Threads::Runs::FileSearchToolCall::FileSearch] - required :file_search, -> { OpenAI::Models::Beta::Threads::Runs::FileSearchToolCall::FileSearch } + # @return [OpenAI::Beta::Threads::Runs::FileSearchToolCall::FileSearch] + required :file_search, -> { OpenAI::Beta::Threads::Runs::FileSearchToolCall::FileSearch } # @!attribute type # The type of tool call. This is always going to be `file_search` for this type of @@ -27,47 +27,50 @@ class FileSearchToolCall < OpenAI::Internal::Type::BaseModel # @!method initialize(id:, file_search:, type: :file_search) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Beta::Threads::Runs::FileSearchToolCall} for more details. + # {OpenAI::Beta::Threads::Runs::FileSearchToolCall} for more details. # # @param id [String] The ID of the tool call object. # - # @param file_search [OpenAI::Models::Beta::Threads::Runs::FileSearchToolCall::FileSearch] For now, this is always going to be an empty object. + # @param file_search [OpenAI::Beta::Threads::Runs::FileSearchToolCall::FileSearch] For now, this is always going to be an empty object. # # @param type [Symbol, :file_search] The type of tool call. This is always going to be `file_search` for this type of - # ... - # @see OpenAI::Models::Beta::Threads::Runs::FileSearchToolCall#file_search + # @see OpenAI::Beta::Threads::Runs::FileSearchToolCall#file_search class FileSearch < OpenAI::Internal::Type::BaseModel # @!attribute ranking_options # The ranking options for the file search. # - # @return [OpenAI::Models::Beta::Threads::Runs::FileSearchToolCall::FileSearch::RankingOptions, nil] + # @return [OpenAI::Beta::Threads::Runs::FileSearchToolCall::FileSearch::RankingOptions, nil] optional :ranking_options, - -> { OpenAI::Models::Beta::Threads::Runs::FileSearchToolCall::FileSearch::RankingOptions } + -> { OpenAI::Beta::Threads::Runs::FileSearchToolCall::FileSearch::RankingOptions } # @!attribute results # The results of the file search. # - # @return [Array, nil] + # @return [Array, nil] optional :results, - -> { OpenAI::Internal::Type::ArrayOf[OpenAI::Models::Beta::Threads::Runs::FileSearchToolCall::FileSearch::Result] } + -> { + OpenAI::Internal::Type::ArrayOf[OpenAI::Beta::Threads::Runs::FileSearchToolCall::FileSearch::Result] + } # @!method initialize(ranking_options: nil, results: nil) # For now, this is always going to be an empty object. # - # @param ranking_options [OpenAI::Models::Beta::Threads::Runs::FileSearchToolCall::FileSearch::RankingOptions] The ranking options for the file search. + # @param ranking_options [OpenAI::Beta::Threads::Runs::FileSearchToolCall::FileSearch::RankingOptions] The ranking options for the file search. # - # @param results [Array] The results of the file search. + # @param results [Array] The results of the file search. - # @see OpenAI::Models::Beta::Threads::Runs::FileSearchToolCall::FileSearch#ranking_options + # @see OpenAI::Beta::Threads::Runs::FileSearchToolCall::FileSearch#ranking_options class RankingOptions < OpenAI::Internal::Type::BaseModel # @!attribute ranker # The ranker to use for the file search. If not specified will use the `auto` # ranker. # - # @return [Symbol, OpenAI::Models::Beta::Threads::Runs::FileSearchToolCall::FileSearch::RankingOptions::Ranker] + # @return [Symbol, OpenAI::Beta::Threads::Runs::FileSearchToolCall::FileSearch::RankingOptions::Ranker] required :ranker, - enum: -> { OpenAI::Models::Beta::Threads::Runs::FileSearchToolCall::FileSearch::RankingOptions::Ranker } + enum: -> { + OpenAI::Beta::Threads::Runs::FileSearchToolCall::FileSearch::RankingOptions::Ranker + } # @!attribute score_threshold # The score threshold for the file search. All values must be a floating point @@ -78,21 +81,19 @@ class RankingOptions < OpenAI::Internal::Type::BaseModel # @!method initialize(ranker:, score_threshold:) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Beta::Threads::Runs::FileSearchToolCall::FileSearch::RankingOptions} + # {OpenAI::Beta::Threads::Runs::FileSearchToolCall::FileSearch::RankingOptions} # for more details. # # The ranking options for the file search. # - # @param ranker [Symbol, OpenAI::Models::Beta::Threads::Runs::FileSearchToolCall::FileSearch::RankingOptions::Ranker] The ranker to use for the file search. If not specified will use the `auto` rank - # ... + # @param ranker [Symbol, OpenAI::Beta::Threads::Runs::FileSearchToolCall::FileSearch::RankingOptions::Ranker] The ranker to use for the file search. If not specified will use the `auto` rank # # @param score_threshold [Float] The score threshold for the file search. All values must be a floating point num - # ... # The ranker to use for the file search. If not specified will use the `auto` # ranker. # - # @see OpenAI::Models::Beta::Threads::Runs::FileSearchToolCall::FileSearch::RankingOptions#ranker + # @see OpenAI::Beta::Threads::Runs::FileSearchToolCall::FileSearch::RankingOptions#ranker module Ranker extend OpenAI::Internal::Type::Enum @@ -128,14 +129,16 @@ class Result < OpenAI::Internal::Type::BaseModel # The content of the result that was found. The content is only included if # requested via the include query parameter. # - # @return [Array, nil] + # @return [Array, nil] optional :content, - -> { OpenAI::Internal::Type::ArrayOf[OpenAI::Models::Beta::Threads::Runs::FileSearchToolCall::FileSearch::Result::Content] } + -> { + OpenAI::Internal::Type::ArrayOf[OpenAI::Beta::Threads::Runs::FileSearchToolCall::FileSearch::Result::Content] + } # @!method initialize(file_id:, file_name:, score:, content: nil) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Beta::Threads::Runs::FileSearchToolCall::FileSearch::Result} - # for more details. + # {OpenAI::Beta::Threads::Runs::FileSearchToolCall::FileSearch::Result} for more + # details. # # A result instance of the file search. # @@ -144,10 +147,8 @@ class Result < OpenAI::Internal::Type::BaseModel # @param file_name [String] The name of the file that result was found in. # # @param score [Float] The score of the result. All values must be a floating point number between 0 an - # ... # - # @param content [Array] The content of the result that was found. The content is only included if reques - # ... + # @param content [Array] The content of the result that was found. The content is only included if reques class Content < OpenAI::Internal::Type::BaseModel # @!attribute text @@ -159,18 +160,20 @@ class Content < OpenAI::Internal::Type::BaseModel # @!attribute type # The type of the content. # - # @return [Symbol, OpenAI::Models::Beta::Threads::Runs::FileSearchToolCall::FileSearch::Result::Content::Type, nil] + # @return [Symbol, OpenAI::Beta::Threads::Runs::FileSearchToolCall::FileSearch::Result::Content::Type, nil] optional :type, - enum: -> { OpenAI::Models::Beta::Threads::Runs::FileSearchToolCall::FileSearch::Result::Content::Type } + enum: -> { + OpenAI::Beta::Threads::Runs::FileSearchToolCall::FileSearch::Result::Content::Type + } # @!method initialize(text: nil, type: nil) # @param text [String] The text content of the file. # - # @param type [Symbol, OpenAI::Models::Beta::Threads::Runs::FileSearchToolCall::FileSearch::Result::Content::Type] The type of the content. + # @param type [Symbol, OpenAI::Beta::Threads::Runs::FileSearchToolCall::FileSearch::Result::Content::Type] The type of the content. # The type of the content. # - # @see OpenAI::Models::Beta::Threads::Runs::FileSearchToolCall::FileSearch::Result::Content#type + # @see OpenAI::Beta::Threads::Runs::FileSearchToolCall::FileSearch::Result::Content#type module Type extend OpenAI::Internal::Type::Enum diff --git a/lib/openai/models/beta/threads/runs/file_search_tool_call_delta.rb b/lib/openai/models/beta/threads/runs/file_search_tool_call_delta.rb index de1c0704..a0896ee1 100644 --- a/lib/openai/models/beta/threads/runs/file_search_tool_call_delta.rb +++ b/lib/openai/models/beta/threads/runs/file_search_tool_call_delta.rb @@ -33,7 +33,7 @@ class FileSearchToolCallDelta < OpenAI::Internal::Type::BaseModel # @!method initialize(file_search:, index:, id: nil, type: :file_search) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Beta::Threads::Runs::FileSearchToolCallDelta} for more details. + # {OpenAI::Beta::Threads::Runs::FileSearchToolCallDelta} for more details. # # @param file_search [Object] For now, this is always going to be an empty object. # @@ -42,7 +42,6 @@ class FileSearchToolCallDelta < OpenAI::Internal::Type::BaseModel # @param id [String] The ID of the tool call object. # # @param type [Symbol, :file_search] The type of tool call. This is always going to be `file_search` for this type of - # ... end end end diff --git a/lib/openai/models/beta/threads/runs/function_tool_call.rb b/lib/openai/models/beta/threads/runs/function_tool_call.rb index bb0655e2..ce1e3ad3 100644 --- a/lib/openai/models/beta/threads/runs/function_tool_call.rb +++ b/lib/openai/models/beta/threads/runs/function_tool_call.rb @@ -15,8 +15,8 @@ class FunctionToolCall < OpenAI::Internal::Type::BaseModel # @!attribute function # The definition of the function that was called. # - # @return [OpenAI::Models::Beta::Threads::Runs::FunctionToolCall::Function] - required :function, -> { OpenAI::Models::Beta::Threads::Runs::FunctionToolCall::Function } + # @return [OpenAI::Beta::Threads::Runs::FunctionToolCall::Function] + required :function, -> { OpenAI::Beta::Threads::Runs::FunctionToolCall::Function } # @!attribute type # The type of tool call. This is always going to be `function` for this type of @@ -27,16 +27,15 @@ class FunctionToolCall < OpenAI::Internal::Type::BaseModel # @!method initialize(id:, function:, type: :function) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Beta::Threads::Runs::FunctionToolCall} for more details. + # {OpenAI::Beta::Threads::Runs::FunctionToolCall} for more details. # # @param id [String] The ID of the tool call object. # - # @param function [OpenAI::Models::Beta::Threads::Runs::FunctionToolCall::Function] The definition of the function that was called. + # @param function [OpenAI::Beta::Threads::Runs::FunctionToolCall::Function] The definition of the function that was called. # # @param type [Symbol, :function] The type of tool call. This is always going to be `function` for this type of to - # ... - # @see OpenAI::Models::Beta::Threads::Runs::FunctionToolCall#function + # @see OpenAI::Beta::Threads::Runs::FunctionToolCall#function class Function < OpenAI::Internal::Type::BaseModel # @!attribute arguments # The arguments passed to the function. @@ -60,8 +59,7 @@ class Function < OpenAI::Internal::Type::BaseModel # @!method initialize(arguments:, name:, output:) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Beta::Threads::Runs::FunctionToolCall::Function} for more - # details. + # {OpenAI::Beta::Threads::Runs::FunctionToolCall::Function} for more details. # # The definition of the function that was called. # @@ -70,7 +68,6 @@ class Function < OpenAI::Internal::Type::BaseModel # @param name [String] The name of the function. # # @param output [String, nil] The output of the function. This will be `null` if the outputs have not been [su - # ... end end end diff --git a/lib/openai/models/beta/threads/runs/function_tool_call_delta.rb b/lib/openai/models/beta/threads/runs/function_tool_call_delta.rb index 62f29656..9dc353ce 100644 --- a/lib/openai/models/beta/threads/runs/function_tool_call_delta.rb +++ b/lib/openai/models/beta/threads/runs/function_tool_call_delta.rb @@ -28,23 +28,22 @@ class FunctionToolCallDelta < OpenAI::Internal::Type::BaseModel # @!attribute function # The definition of the function that was called. # - # @return [OpenAI::Models::Beta::Threads::Runs::FunctionToolCallDelta::Function, nil] - optional :function, -> { OpenAI::Models::Beta::Threads::Runs::FunctionToolCallDelta::Function } + # @return [OpenAI::Beta::Threads::Runs::FunctionToolCallDelta::Function, nil] + optional :function, -> { OpenAI::Beta::Threads::Runs::FunctionToolCallDelta::Function } # @!method initialize(index:, id: nil, function: nil, type: :function) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Beta::Threads::Runs::FunctionToolCallDelta} for more details. + # {OpenAI::Beta::Threads::Runs::FunctionToolCallDelta} for more details. # # @param index [Integer] The index of the tool call in the tool calls array. # # @param id [String] The ID of the tool call object. # - # @param function [OpenAI::Models::Beta::Threads::Runs::FunctionToolCallDelta::Function] The definition of the function that was called. + # @param function [OpenAI::Beta::Threads::Runs::FunctionToolCallDelta::Function] The definition of the function that was called. # # @param type [Symbol, :function] The type of tool call. This is always going to be `function` for this type of to - # ... - # @see OpenAI::Models::Beta::Threads::Runs::FunctionToolCallDelta#function + # @see OpenAI::Beta::Threads::Runs::FunctionToolCallDelta#function class Function < OpenAI::Internal::Type::BaseModel # @!attribute arguments # The arguments passed to the function. @@ -68,8 +67,7 @@ class Function < OpenAI::Internal::Type::BaseModel # @!method initialize(arguments: nil, name: nil, output: nil) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Beta::Threads::Runs::FunctionToolCallDelta::Function} for more - # details. + # {OpenAI::Beta::Threads::Runs::FunctionToolCallDelta::Function} for more details. # # The definition of the function that was called. # @@ -78,7 +76,6 @@ class Function < OpenAI::Internal::Type::BaseModel # @param name [String] The name of the function. # # @param output [String, nil] The output of the function. This will be `null` if the outputs have not been [su - # ... end end end diff --git a/lib/openai/models/beta/threads/runs/message_creation_step_details.rb b/lib/openai/models/beta/threads/runs/message_creation_step_details.rb index 727d980b..f39e253b 100644 --- a/lib/openai/models/beta/threads/runs/message_creation_step_details.rb +++ b/lib/openai/models/beta/threads/runs/message_creation_step_details.rb @@ -8,9 +8,9 @@ module Runs class MessageCreationStepDetails < OpenAI::Internal::Type::BaseModel # @!attribute message_creation # - # @return [OpenAI::Models::Beta::Threads::Runs::MessageCreationStepDetails::MessageCreation] + # @return [OpenAI::Beta::Threads::Runs::MessageCreationStepDetails::MessageCreation] required :message_creation, - -> { OpenAI::Models::Beta::Threads::Runs::MessageCreationStepDetails::MessageCreation } + -> { OpenAI::Beta::Threads::Runs::MessageCreationStepDetails::MessageCreation } # @!attribute type # Always `message_creation`. @@ -21,11 +21,11 @@ class MessageCreationStepDetails < OpenAI::Internal::Type::BaseModel # @!method initialize(message_creation:, type: :message_creation) # Details of the message creation by the run step. # - # @param message_creation [OpenAI::Models::Beta::Threads::Runs::MessageCreationStepDetails::MessageCreation] + # @param message_creation [OpenAI::Beta::Threads::Runs::MessageCreationStepDetails::MessageCreation] # # @param type [Symbol, :message_creation] Always `message_creation`. - # @see OpenAI::Models::Beta::Threads::Runs::MessageCreationStepDetails#message_creation + # @see OpenAI::Beta::Threads::Runs::MessageCreationStepDetails#message_creation class MessageCreation < OpenAI::Internal::Type::BaseModel # @!attribute message_id # The ID of the message that was created by this run step. diff --git a/lib/openai/models/beta/threads/runs/run_step.rb b/lib/openai/models/beta/threads/runs/run_step.rb index c5076851..2dc26909 100644 --- a/lib/openai/models/beta/threads/runs/run_step.rb +++ b/lib/openai/models/beta/threads/runs/run_step.rb @@ -56,8 +56,8 @@ class RunStep < OpenAI::Internal::Type::BaseModel # The last error associated with this run step. Will be `null` if there are no # errors. # - # @return [OpenAI::Models::Beta::Threads::Runs::RunStep::LastError, nil] - required :last_error, -> { OpenAI::Models::Beta::Threads::Runs::RunStep::LastError }, nil?: true + # @return [OpenAI::Beta::Threads::Runs::RunStep::LastError, nil] + required :last_error, -> { OpenAI::Beta::Threads::Runs::RunStep::LastError }, nil?: true # @!attribute metadata # Set of 16 key-value pairs that can be attached to an object. This can be useful @@ -87,14 +87,14 @@ class RunStep < OpenAI::Internal::Type::BaseModel # The status of the run step, which can be either `in_progress`, `cancelled`, # `failed`, `completed`, or `expired`. # - # @return [Symbol, OpenAI::Models::Beta::Threads::Runs::RunStep::Status] - required :status, enum: -> { OpenAI::Models::Beta::Threads::Runs::RunStep::Status } + # @return [Symbol, OpenAI::Beta::Threads::Runs::RunStep::Status] + required :status, enum: -> { OpenAI::Beta::Threads::Runs::RunStep::Status } # @!attribute step_details # The details of the run step. # - # @return [OpenAI::Models::Beta::Threads::Runs::MessageCreationStepDetails, OpenAI::Models::Beta::Threads::Runs::ToolCallsStepDetails] - required :step_details, union: -> { OpenAI::Models::Beta::Threads::Runs::RunStep::StepDetails } + # @return [OpenAI::Beta::Threads::Runs::MessageCreationStepDetails, OpenAI::Beta::Threads::Runs::ToolCallsStepDetails] + required :step_details, union: -> { OpenAI::Beta::Threads::Runs::RunStep::StepDetails } # @!attribute thread_id # The ID of the [thread](https://platform.openai.com/docs/api-reference/threads) @@ -106,26 +106,25 @@ class RunStep < OpenAI::Internal::Type::BaseModel # @!attribute type # The type of run step, which can be either `message_creation` or `tool_calls`. # - # @return [Symbol, OpenAI::Models::Beta::Threads::Runs::RunStep::Type] - required :type, enum: -> { OpenAI::Models::Beta::Threads::Runs::RunStep::Type } + # @return [Symbol, OpenAI::Beta::Threads::Runs::RunStep::Type] + required :type, enum: -> { OpenAI::Beta::Threads::Runs::RunStep::Type } # @!attribute usage # Usage statistics related to the run step. This value will be `null` while the # run step's status is `in_progress`. # - # @return [OpenAI::Models::Beta::Threads::Runs::RunStep::Usage, nil] - required :usage, -> { OpenAI::Models::Beta::Threads::Runs::RunStep::Usage }, nil?: true + # @return [OpenAI::Beta::Threads::Runs::RunStep::Usage, nil] + required :usage, -> { OpenAI::Beta::Threads::Runs::RunStep::Usage }, nil?: true # @!method initialize(id:, assistant_id:, cancelled_at:, completed_at:, created_at:, expired_at:, failed_at:, last_error:, metadata:, run_id:, status:, step_details:, thread_id:, type:, usage:, object: :"thread.run.step") # Some parameter documentations has been truncated, see - # {OpenAI::Models::Beta::Threads::Runs::RunStep} for more details. + # {OpenAI::Beta::Threads::Runs::RunStep} for more details. # # Represents a step in execution of a run. # # @param id [String] The identifier of the run step, which can be referenced in API endpoints. # # @param assistant_id [String] The ID of the [assistant](https://platform.openai.com/docs/api-reference/assista - # ... # # @param cancelled_at [Integer, nil] The Unix timestamp (in seconds) for when the run step was cancelled. # @@ -134,40 +133,34 @@ class RunStep < OpenAI::Internal::Type::BaseModel # @param created_at [Integer] The Unix timestamp (in seconds) for when the run step was created. # # @param expired_at [Integer, nil] The Unix timestamp (in seconds) for when the run step expired. A step is conside - # ... # # @param failed_at [Integer, nil] The Unix timestamp (in seconds) for when the run step failed. # - # @param last_error [OpenAI::Models::Beta::Threads::Runs::RunStep::LastError, nil] The last error associated with this run step. Will be `null` if there are no err - # ... + # @param last_error [OpenAI::Beta::Threads::Runs::RunStep::LastError, nil] The last error associated with this run step. Will be `null` if there are no err # - # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be # # @param run_id [String] The ID of the [run](https://platform.openai.com/docs/api-reference/runs) that th - # ... # - # @param status [Symbol, OpenAI::Models::Beta::Threads::Runs::RunStep::Status] The status of the run step, which can be either `in_progress`, `cancelled`, `fai - # ... + # @param status [Symbol, OpenAI::Beta::Threads::Runs::RunStep::Status] The status of the run step, which can be either `in_progress`, `cancelled`, `fai # - # @param step_details [OpenAI::Models::Beta::Threads::Runs::MessageCreationStepDetails, OpenAI::Models::Beta::Threads::Runs::ToolCallsStepDetails] The details of the run step. + # @param step_details [OpenAI::Beta::Threads::Runs::MessageCreationStepDetails, OpenAI::Beta::Threads::Runs::ToolCallsStepDetails] The details of the run step. # # @param thread_id [String] The ID of the [thread](https://platform.openai.com/docs/api-reference/threads) t - # ... # - # @param type [Symbol, OpenAI::Models::Beta::Threads::Runs::RunStep::Type] The type of run step, which can be either `message_creation` or `tool_calls`. + # @param type [Symbol, OpenAI::Beta::Threads::Runs::RunStep::Type] The type of run step, which can be either `message_creation` or `tool_calls`. # - # @param usage [OpenAI::Models::Beta::Threads::Runs::RunStep::Usage, nil] Usage statistics related to the run step. This value will be `null` while the ru - # ... + # @param usage [OpenAI::Beta::Threads::Runs::RunStep::Usage, nil] Usage statistics related to the run step. This value will be `null` while the ru # # @param object [Symbol, :"thread.run.step"] The object type, which is always `thread.run.step`. - # @see OpenAI::Models::Beta::Threads::Runs::RunStep#last_error + # @see OpenAI::Beta::Threads::Runs::RunStep#last_error class LastError < OpenAI::Internal::Type::BaseModel # @!attribute code # One of `server_error` or `rate_limit_exceeded`. # - # @return [Symbol, OpenAI::Models::Beta::Threads::Runs::RunStep::LastError::Code] - required :code, enum: -> { OpenAI::Models::Beta::Threads::Runs::RunStep::LastError::Code } + # @return [Symbol, OpenAI::Beta::Threads::Runs::RunStep::LastError::Code] + required :code, enum: -> { OpenAI::Beta::Threads::Runs::RunStep::LastError::Code } # @!attribute message # A human-readable description of the error. @@ -179,13 +172,13 @@ class LastError < OpenAI::Internal::Type::BaseModel # The last error associated with this run step. Will be `null` if there are no # errors. # - # @param code [Symbol, OpenAI::Models::Beta::Threads::Runs::RunStep::LastError::Code] One of `server_error` or `rate_limit_exceeded`. + # @param code [Symbol, OpenAI::Beta::Threads::Runs::RunStep::LastError::Code] One of `server_error` or `rate_limit_exceeded`. # # @param message [String] A human-readable description of the error. # One of `server_error` or `rate_limit_exceeded`. # - # @see OpenAI::Models::Beta::Threads::Runs::RunStep::LastError#code + # @see OpenAI::Beta::Threads::Runs::RunStep::LastError#code module Code extend OpenAI::Internal::Type::Enum @@ -200,7 +193,7 @@ module Code # The status of the run step, which can be either `in_progress`, `cancelled`, # `failed`, `completed`, or `expired`. # - # @see OpenAI::Models::Beta::Threads::Runs::RunStep#status + # @see OpenAI::Beta::Threads::Runs::RunStep#status module Status extend OpenAI::Internal::Type::Enum @@ -216,25 +209,25 @@ module Status # The details of the run step. # - # @see OpenAI::Models::Beta::Threads::Runs::RunStep#step_details + # @see OpenAI::Beta::Threads::Runs::RunStep#step_details module StepDetails extend OpenAI::Internal::Type::Union discriminator :type # Details of the message creation by the run step. - variant :message_creation, -> { OpenAI::Models::Beta::Threads::Runs::MessageCreationStepDetails } + variant :message_creation, -> { OpenAI::Beta::Threads::Runs::MessageCreationStepDetails } # Details of the tool call. - variant :tool_calls, -> { OpenAI::Models::Beta::Threads::Runs::ToolCallsStepDetails } + variant :tool_calls, -> { OpenAI::Beta::Threads::Runs::ToolCallsStepDetails } # @!method self.variants - # @return [Array(OpenAI::Models::Beta::Threads::Runs::MessageCreationStepDetails, OpenAI::Models::Beta::Threads::Runs::ToolCallsStepDetails)] + # @return [Array(OpenAI::Beta::Threads::Runs::MessageCreationStepDetails, OpenAI::Beta::Threads::Runs::ToolCallsStepDetails)] end # The type of run step, which can be either `message_creation` or `tool_calls`. # - # @see OpenAI::Models::Beta::Threads::Runs::RunStep#type + # @see OpenAI::Beta::Threads::Runs::RunStep#type module Type extend OpenAI::Internal::Type::Enum @@ -245,7 +238,7 @@ module Type # @return [Array] end - # @see OpenAI::Models::Beta::Threads::Runs::RunStep#usage + # @see OpenAI::Beta::Threads::Runs::RunStep#usage class Usage < OpenAI::Internal::Type::BaseModel # @!attribute completion_tokens # Number of completion tokens used over the course of the run step. diff --git a/lib/openai/models/beta/threads/runs/run_step_delta.rb b/lib/openai/models/beta/threads/runs/run_step_delta.rb index 2a53c523..4666af0b 100644 --- a/lib/openai/models/beta/threads/runs/run_step_delta.rb +++ b/lib/openai/models/beta/threads/runs/run_step_delta.rb @@ -9,30 +9,30 @@ class RunStepDelta < OpenAI::Internal::Type::BaseModel # @!attribute step_details # The details of the run step. # - # @return [OpenAI::Models::Beta::Threads::Runs::RunStepDeltaMessageDelta, OpenAI::Models::Beta::Threads::Runs::ToolCallDeltaObject, nil] - optional :step_details, union: -> { OpenAI::Models::Beta::Threads::Runs::RunStepDelta::StepDetails } + # @return [OpenAI::Beta::Threads::Runs::RunStepDeltaMessageDelta, OpenAI::Beta::Threads::Runs::ToolCallDeltaObject, nil] + optional :step_details, union: -> { OpenAI::Beta::Threads::Runs::RunStepDelta::StepDetails } # @!method initialize(step_details: nil) # The delta containing the fields that have changed on the run step. # - # @param step_details [OpenAI::Models::Beta::Threads::Runs::RunStepDeltaMessageDelta, OpenAI::Models::Beta::Threads::Runs::ToolCallDeltaObject] The details of the run step. + # @param step_details [OpenAI::Beta::Threads::Runs::RunStepDeltaMessageDelta, OpenAI::Beta::Threads::Runs::ToolCallDeltaObject] The details of the run step. # The details of the run step. # - # @see OpenAI::Models::Beta::Threads::Runs::RunStepDelta#step_details + # @see OpenAI::Beta::Threads::Runs::RunStepDelta#step_details module StepDetails extend OpenAI::Internal::Type::Union discriminator :type # Details of the message creation by the run step. - variant :message_creation, -> { OpenAI::Models::Beta::Threads::Runs::RunStepDeltaMessageDelta } + variant :message_creation, -> { OpenAI::Beta::Threads::Runs::RunStepDeltaMessageDelta } # Details of the tool call. - variant :tool_calls, -> { OpenAI::Models::Beta::Threads::Runs::ToolCallDeltaObject } + variant :tool_calls, -> { OpenAI::Beta::Threads::Runs::ToolCallDeltaObject } # @!method self.variants - # @return [Array(OpenAI::Models::Beta::Threads::Runs::RunStepDeltaMessageDelta, OpenAI::Models::Beta::Threads::Runs::ToolCallDeltaObject)] + # @return [Array(OpenAI::Beta::Threads::Runs::RunStepDeltaMessageDelta, OpenAI::Beta::Threads::Runs::ToolCallDeltaObject)] end end end diff --git a/lib/openai/models/beta/threads/runs/run_step_delta_event.rb b/lib/openai/models/beta/threads/runs/run_step_delta_event.rb index f5c81ffe..19c633c5 100644 --- a/lib/openai/models/beta/threads/runs/run_step_delta_event.rb +++ b/lib/openai/models/beta/threads/runs/run_step_delta_event.rb @@ -15,8 +15,8 @@ class RunStepDeltaEvent < OpenAI::Internal::Type::BaseModel # @!attribute delta # The delta containing the fields that have changed on the run step. # - # @return [OpenAI::Models::Beta::Threads::Runs::RunStepDelta] - required :delta, -> { OpenAI::Models::Beta::Threads::Runs::RunStepDelta } + # @return [OpenAI::Beta::Threads::Runs::RunStepDelta] + required :delta, -> { OpenAI::Beta::Threads::Runs::RunStepDelta } # @!attribute object # The object type, which is always `thread.run.step.delta`. @@ -30,7 +30,7 @@ class RunStepDeltaEvent < OpenAI::Internal::Type::BaseModel # # @param id [String] The identifier of the run step, which can be referenced in API endpoints. # - # @param delta [OpenAI::Models::Beta::Threads::Runs::RunStepDelta] The delta containing the fields that have changed on the run step. + # @param delta [OpenAI::Beta::Threads::Runs::RunStepDelta] The delta containing the fields that have changed on the run step. # # @param object [Symbol, :"thread.run.step.delta"] The object type, which is always `thread.run.step.delta`. end diff --git a/lib/openai/models/beta/threads/runs/run_step_delta_message_delta.rb b/lib/openai/models/beta/threads/runs/run_step_delta_message_delta.rb index 85fdad6f..1c617d09 100644 --- a/lib/openai/models/beta/threads/runs/run_step_delta_message_delta.rb +++ b/lib/openai/models/beta/threads/runs/run_step_delta_message_delta.rb @@ -14,18 +14,20 @@ class RunStepDeltaMessageDelta < OpenAI::Internal::Type::BaseModel # @!attribute message_creation # - # @return [OpenAI::Models::Beta::Threads::Runs::RunStepDeltaMessageDelta::MessageCreation, nil] + # @return [OpenAI::Beta::Threads::Runs::RunStepDeltaMessageDelta::MessageCreation, nil] optional :message_creation, - -> { OpenAI::Models::Beta::Threads::Runs::RunStepDeltaMessageDelta::MessageCreation } + -> { + OpenAI::Beta::Threads::Runs::RunStepDeltaMessageDelta::MessageCreation + } # @!method initialize(message_creation: nil, type: :message_creation) # Details of the message creation by the run step. # - # @param message_creation [OpenAI::Models::Beta::Threads::Runs::RunStepDeltaMessageDelta::MessageCreation] + # @param message_creation [OpenAI::Beta::Threads::Runs::RunStepDeltaMessageDelta::MessageCreation] # # @param type [Symbol, :message_creation] Always `message_creation`. - # @see OpenAI::Models::Beta::Threads::Runs::RunStepDeltaMessageDelta#message_creation + # @see OpenAI::Beta::Threads::Runs::RunStepDeltaMessageDelta#message_creation class MessageCreation < OpenAI::Internal::Type::BaseModel # @!attribute message_id # The ID of the message that was created by this run step. diff --git a/lib/openai/models/beta/threads/runs/step_list_params.rb b/lib/openai/models/beta/threads/runs/step_list_params.rb index 2bcb9cb5..e5251302 100644 --- a/lib/openai/models/beta/threads/runs/step_list_params.rb +++ b/lib/openai/models/beta/threads/runs/step_list_params.rb @@ -42,9 +42,9 @@ class StepListParams < OpenAI::Internal::Type::BaseModel # [file search tool documentation](https://platform.openai.com/docs/assistants/tools/file-search#customizing-file-search-settings) # for more information. # - # @return [Array, nil] + # @return [Array, nil] optional :include, - -> { OpenAI::Internal::Type::ArrayOf[enum: OpenAI::Models::Beta::Threads::Runs::RunStepInclude] } + -> { OpenAI::Internal::Type::ArrayOf[enum: OpenAI::Beta::Threads::Runs::RunStepInclude] } # @!attribute limit # A limit on the number of objects to be returned. Limit can range between 1 and @@ -57,8 +57,8 @@ class StepListParams < OpenAI::Internal::Type::BaseModel # Sort order by the `created_at` timestamp of the objects. `asc` for ascending # order and `desc` for descending order. # - # @return [Symbol, OpenAI::Models::Beta::Threads::Runs::StepListParams::Order, nil] - optional :order, enum: -> { OpenAI::Models::Beta::Threads::Runs::StepListParams::Order } + # @return [Symbol, OpenAI::Beta::Threads::Runs::StepListParams::Order, nil] + optional :order, enum: -> { OpenAI::Beta::Threads::Runs::StepListParams::Order } # @!method initialize(thread_id:, after: nil, before: nil, include: nil, limit: nil, order: nil, request_options: {}) # Some parameter documentations has been truncated, see @@ -67,19 +67,14 @@ class StepListParams < OpenAI::Internal::Type::BaseModel # @param thread_id [String] # # @param after [String] A cursor for use in pagination. `after` is an object ID that defines your place - # ... # # @param before [String] A cursor for use in pagination. `before` is an object ID that defines your place - # ... # - # @param include [Array] A list of additional fields to include in the response. Currently the only suppo - # ... + # @param include [Array] A list of additional fields to include in the response. Currently the only suppo # # @param limit [Integer] A limit on the number of objects to be returned. Limit can range between 1 and 1 - # ... # - # @param order [Symbol, OpenAI::Models::Beta::Threads::Runs::StepListParams::Order] Sort order by the `created_at` timestamp of the objects. `asc` for ascending ord - # ... + # @param order [Symbol, OpenAI::Beta::Threads::Runs::StepListParams::Order] Sort order by the `created_at` timestamp of the objects. `asc` for ascending ord # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] diff --git a/lib/openai/models/beta/threads/runs/step_retrieve_params.rb b/lib/openai/models/beta/threads/runs/step_retrieve_params.rb index 4a2c095e..f6238fd8 100644 --- a/lib/openai/models/beta/threads/runs/step_retrieve_params.rb +++ b/lib/openai/models/beta/threads/runs/step_retrieve_params.rb @@ -29,9 +29,9 @@ class StepRetrieveParams < OpenAI::Internal::Type::BaseModel # [file search tool documentation](https://platform.openai.com/docs/assistants/tools/file-search#customizing-file-search-settings) # for more information. # - # @return [Array, nil] + # @return [Array, nil] optional :include, - -> { OpenAI::Internal::Type::ArrayOf[enum: OpenAI::Models::Beta::Threads::Runs::RunStepInclude] } + -> { OpenAI::Internal::Type::ArrayOf[enum: OpenAI::Beta::Threads::Runs::RunStepInclude] } # @!method initialize(thread_id:, run_id:, include: nil, request_options: {}) # Some parameter documentations has been truncated, see @@ -41,8 +41,7 @@ class StepRetrieveParams < OpenAI::Internal::Type::BaseModel # # @param run_id [String] # - # @param include [Array] A list of additional fields to include in the response. Currently the only suppo - # ... + # @param include [Array] A list of additional fields to include in the response. Currently the only suppo # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] end diff --git a/lib/openai/models/beta/threads/runs/tool_call.rb b/lib/openai/models/beta/threads/runs/tool_call.rb index 5e18fa3b..4140ec79 100644 --- a/lib/openai/models/beta/threads/runs/tool_call.rb +++ b/lib/openai/models/beta/threads/runs/tool_call.rb @@ -12,14 +12,14 @@ module ToolCall discriminator :type # Details of the Code Interpreter tool call the run step was involved in. - variant :code_interpreter, -> { OpenAI::Models::Beta::Threads::Runs::CodeInterpreterToolCall } + variant :code_interpreter, -> { OpenAI::Beta::Threads::Runs::CodeInterpreterToolCall } - variant :file_search, -> { OpenAI::Models::Beta::Threads::Runs::FileSearchToolCall } + variant :file_search, -> { OpenAI::Beta::Threads::Runs::FileSearchToolCall } - variant :function, -> { OpenAI::Models::Beta::Threads::Runs::FunctionToolCall } + variant :function, -> { OpenAI::Beta::Threads::Runs::FunctionToolCall } # @!method self.variants - # @return [Array(OpenAI::Models::Beta::Threads::Runs::CodeInterpreterToolCall, OpenAI::Models::Beta::Threads::Runs::FileSearchToolCall, OpenAI::Models::Beta::Threads::Runs::FunctionToolCall)] + # @return [Array(OpenAI::Beta::Threads::Runs::CodeInterpreterToolCall, OpenAI::Beta::Threads::Runs::FileSearchToolCall, OpenAI::Beta::Threads::Runs::FunctionToolCall)] end end end diff --git a/lib/openai/models/beta/threads/runs/tool_call_delta.rb b/lib/openai/models/beta/threads/runs/tool_call_delta.rb index e5cd0aff..ab51e0a3 100644 --- a/lib/openai/models/beta/threads/runs/tool_call_delta.rb +++ b/lib/openai/models/beta/threads/runs/tool_call_delta.rb @@ -12,14 +12,14 @@ module ToolCallDelta discriminator :type # Details of the Code Interpreter tool call the run step was involved in. - variant :code_interpreter, -> { OpenAI::Models::Beta::Threads::Runs::CodeInterpreterToolCallDelta } + variant :code_interpreter, -> { OpenAI::Beta::Threads::Runs::CodeInterpreterToolCallDelta } - variant :file_search, -> { OpenAI::Models::Beta::Threads::Runs::FileSearchToolCallDelta } + variant :file_search, -> { OpenAI::Beta::Threads::Runs::FileSearchToolCallDelta } - variant :function, -> { OpenAI::Models::Beta::Threads::Runs::FunctionToolCallDelta } + variant :function, -> { OpenAI::Beta::Threads::Runs::FunctionToolCallDelta } # @!method self.variants - # @return [Array(OpenAI::Models::Beta::Threads::Runs::CodeInterpreterToolCallDelta, OpenAI::Models::Beta::Threads::Runs::FileSearchToolCallDelta, OpenAI::Models::Beta::Threads::Runs::FunctionToolCallDelta)] + # @return [Array(OpenAI::Beta::Threads::Runs::CodeInterpreterToolCallDelta, OpenAI::Beta::Threads::Runs::FileSearchToolCallDelta, OpenAI::Beta::Threads::Runs::FunctionToolCallDelta)] end end end diff --git a/lib/openai/models/beta/threads/runs/tool_call_delta_object.rb b/lib/openai/models/beta/threads/runs/tool_call_delta_object.rb index 51c5d074..668b9ec8 100644 --- a/lib/openai/models/beta/threads/runs/tool_call_delta_object.rb +++ b/lib/openai/models/beta/threads/runs/tool_call_delta_object.rb @@ -17,18 +17,17 @@ class ToolCallDeltaObject < OpenAI::Internal::Type::BaseModel # with one of three types of tools: `code_interpreter`, `file_search`, or # `function`. # - # @return [Array, nil] + # @return [Array, nil] optional :tool_calls, - -> { OpenAI::Internal::Type::ArrayOf[union: OpenAI::Models::Beta::Threads::Runs::ToolCallDelta] } + -> { OpenAI::Internal::Type::ArrayOf[union: OpenAI::Beta::Threads::Runs::ToolCallDelta] } # @!method initialize(tool_calls: nil, type: :tool_calls) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Beta::Threads::Runs::ToolCallDeltaObject} for more details. + # {OpenAI::Beta::Threads::Runs::ToolCallDeltaObject} for more details. # # Details of the tool call. # - # @param tool_calls [Array] An array of tool calls the run step was involved in. These can be associated wit - # ... + # @param tool_calls [Array] An array of tool calls the run step was involved in. These can be associated wit # # @param type [Symbol, :tool_calls] Always `tool_calls`. end diff --git a/lib/openai/models/beta/threads/runs/tool_calls_step_details.rb b/lib/openai/models/beta/threads/runs/tool_calls_step_details.rb index 3a8800d6..368ce9b5 100644 --- a/lib/openai/models/beta/threads/runs/tool_calls_step_details.rb +++ b/lib/openai/models/beta/threads/runs/tool_calls_step_details.rb @@ -11,9 +11,11 @@ class ToolCallsStepDetails < OpenAI::Internal::Type::BaseModel # with one of three types of tools: `code_interpreter`, `file_search`, or # `function`. # - # @return [Array] + # @return [Array] required :tool_calls, - -> { OpenAI::Internal::Type::ArrayOf[union: OpenAI::Models::Beta::Threads::Runs::ToolCall] } + -> { + OpenAI::Internal::Type::ArrayOf[union: OpenAI::Beta::Threads::Runs::ToolCall] + } # @!attribute type # Always `tool_calls`. @@ -23,12 +25,11 @@ class ToolCallsStepDetails < OpenAI::Internal::Type::BaseModel # @!method initialize(tool_calls:, type: :tool_calls) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Beta::Threads::Runs::ToolCallsStepDetails} for more details. + # {OpenAI::Beta::Threads::Runs::ToolCallsStepDetails} for more details. # # Details of the tool call. # - # @param tool_calls [Array] An array of tool calls the run step was involved in. These can be associated wit - # ... + # @param tool_calls [Array] An array of tool calls the run step was involved in. These can be associated wit # # @param type [Symbol, :tool_calls] Always `tool_calls`. end diff --git a/lib/openai/models/beta/threads/text.rb b/lib/openai/models/beta/threads/text.rb index 8c5eb9f0..180b3abb 100644 --- a/lib/openai/models/beta/threads/text.rb +++ b/lib/openai/models/beta/threads/text.rb @@ -7,9 +7,11 @@ module Threads class Text < OpenAI::Internal::Type::BaseModel # @!attribute annotations # - # @return [Array] + # @return [Array] required :annotations, - -> { OpenAI::Internal::Type::ArrayOf[union: OpenAI::Models::Beta::Threads::Annotation] } + -> { + OpenAI::Internal::Type::ArrayOf[union: OpenAI::Beta::Threads::Annotation] + } # @!attribute value # The data that makes up the text. @@ -18,7 +20,7 @@ class Text < OpenAI::Internal::Type::BaseModel required :value, String # @!method initialize(annotations:, value:) - # @param annotations [Array] + # @param annotations [Array] # # @param value [String] The data that makes up the text. end diff --git a/lib/openai/models/beta/threads/text_content_block.rb b/lib/openai/models/beta/threads/text_content_block.rb index 9f61e404..73b0bd54 100644 --- a/lib/openai/models/beta/threads/text_content_block.rb +++ b/lib/openai/models/beta/threads/text_content_block.rb @@ -7,8 +7,8 @@ module Threads class TextContentBlock < OpenAI::Internal::Type::BaseModel # @!attribute text # - # @return [OpenAI::Models::Beta::Threads::Text] - required :text, -> { OpenAI::Models::Beta::Threads::Text } + # @return [OpenAI::Beta::Threads::Text] + required :text, -> { OpenAI::Beta::Threads::Text } # @!attribute type # Always `text`. @@ -19,7 +19,7 @@ class TextContentBlock < OpenAI::Internal::Type::BaseModel # @!method initialize(text:, type: :text) # The text content that is part of a message. # - # @param text [OpenAI::Models::Beta::Threads::Text] + # @param text [OpenAI::Beta::Threads::Text] # # @param type [Symbol, :text] Always `text`. end diff --git a/lib/openai/models/beta/threads/text_delta.rb b/lib/openai/models/beta/threads/text_delta.rb index 20b88879..63ad3975 100644 --- a/lib/openai/models/beta/threads/text_delta.rb +++ b/lib/openai/models/beta/threads/text_delta.rb @@ -7,9 +7,9 @@ module Threads class TextDelta < OpenAI::Internal::Type::BaseModel # @!attribute annotations # - # @return [Array, nil] + # @return [Array, nil] optional :annotations, - -> { OpenAI::Internal::Type::ArrayOf[union: OpenAI::Models::Beta::Threads::AnnotationDelta] } + -> { OpenAI::Internal::Type::ArrayOf[union: OpenAI::Beta::Threads::AnnotationDelta] } # @!attribute value # The data that makes up the text. @@ -18,7 +18,7 @@ class TextDelta < OpenAI::Internal::Type::BaseModel optional :value, String # @!method initialize(annotations: nil, value: nil) - # @param annotations [Array] + # @param annotations [Array] # # @param value [String] The data that makes up the text. end diff --git a/lib/openai/models/beta/threads/text_delta_block.rb b/lib/openai/models/beta/threads/text_delta_block.rb index c0172733..126aefbd 100644 --- a/lib/openai/models/beta/threads/text_delta_block.rb +++ b/lib/openai/models/beta/threads/text_delta_block.rb @@ -19,15 +19,15 @@ class TextDeltaBlock < OpenAI::Internal::Type::BaseModel # @!attribute text # - # @return [OpenAI::Models::Beta::Threads::TextDelta, nil] - optional :text, -> { OpenAI::Models::Beta::Threads::TextDelta } + # @return [OpenAI::Beta::Threads::TextDelta, nil] + optional :text, -> { OpenAI::Beta::Threads::TextDelta } # @!method initialize(index:, text: nil, type: :text) # The text content that is part of a message. # # @param index [Integer] The index of the content part in the message. # - # @param text [OpenAI::Models::Beta::Threads::TextDelta] + # @param text [OpenAI::Beta::Threads::TextDelta] # # @param type [Symbol, :text] Always `text`. end diff --git a/lib/openai/models/chat/chat_completion.rb b/lib/openai/models/chat/chat_completion.rb index 15613a18..8fb216ee 100644 --- a/lib/openai/models/chat/chat_completion.rb +++ b/lib/openai/models/chat/chat_completion.rb @@ -17,8 +17,8 @@ class ChatCompletion < OpenAI::Internal::Type::BaseModel # A list of chat completion choices. Can be more than one if `n` is greater # than 1. # - # @return [Array] - required :choices, -> { OpenAI::Internal::Type::ArrayOf[OpenAI::Models::Chat::ChatCompletion::Choice] } + # @return [Array] + required :choices, -> { OpenAI::Internal::Type::ArrayOf[OpenAI::Chat::ChatCompletion::Choice] } # @!attribute created # The Unix timestamp (in seconds) of when the chat completion was created. @@ -57,8 +57,8 @@ class ChatCompletion < OpenAI::Internal::Type::BaseModel # When this parameter is set, the response body will include the `service_tier` # utilized. # - # @return [Symbol, OpenAI::Models::Chat::ChatCompletion::ServiceTier, nil] - optional :service_tier, enum: -> { OpenAI::Models::Chat::ChatCompletion::ServiceTier }, nil?: true + # @return [Symbol, OpenAI::Chat::ChatCompletion::ServiceTier, nil] + optional :service_tier, enum: -> { OpenAI::Chat::ChatCompletion::ServiceTier }, nil?: true # @!attribute system_fingerprint # This fingerprint represents the backend configuration that the model runs with. @@ -72,32 +72,29 @@ class ChatCompletion < OpenAI::Internal::Type::BaseModel # @!attribute usage # Usage statistics for the completion request. # - # @return [OpenAI::Models::CompletionUsage, nil] - optional :usage, -> { OpenAI::Models::CompletionUsage } + # @return [OpenAI::CompletionUsage, nil] + optional :usage, -> { OpenAI::CompletionUsage } # @!method initialize(id:, choices:, created:, model:, service_tier: nil, system_fingerprint: nil, usage: nil, object: :"chat.completion") # Some parameter documentations has been truncated, see - # {OpenAI::Models::Chat::ChatCompletion} for more details. + # {OpenAI::Chat::ChatCompletion} for more details. # # Represents a chat completion response returned by model, based on the provided # input. # # @param id [String] A unique identifier for the chat completion. # - # @param choices [Array] A list of chat completion choices. Can be more than one if `n` is greater than 1 - # ... + # @param choices [Array] A list of chat completion choices. Can be more than one if `n` is greater than 1 # # @param created [Integer] The Unix timestamp (in seconds) of when the chat completion was created. # # @param model [String] The model used for the chat completion. # - # @param service_tier [Symbol, OpenAI::Models::Chat::ChatCompletion::ServiceTier, nil] Specifies the latency tier to use for processing the request. This parameter is - # ... + # @param service_tier [Symbol, OpenAI::Chat::ChatCompletion::ServiceTier, nil] Specifies the latency tier to use for processing the request. This parameter is # # @param system_fingerprint [String] This fingerprint represents the backend configuration that the model runs with. - # ... # - # @param usage [OpenAI::Models::CompletionUsage] Usage statistics for the completion request. + # @param usage [OpenAI::CompletionUsage] Usage statistics for the completion request. # # @param object [Symbol, :"chat.completion"] The object type, which is always `chat.completion`. @@ -110,8 +107,8 @@ class Choice < OpenAI::Internal::Type::BaseModel # model called a tool, or `function_call` (deprecated) if the model called a # function. # - # @return [Symbol, OpenAI::Models::Chat::ChatCompletion::Choice::FinishReason] - required :finish_reason, enum: -> { OpenAI::Models::Chat::ChatCompletion::Choice::FinishReason } + # @return [Symbol, OpenAI::Chat::ChatCompletion::Choice::FinishReason] + required :finish_reason, enum: -> { OpenAI::Chat::ChatCompletion::Choice::FinishReason } # @!attribute index # The index of the choice in the list of choices. @@ -122,27 +119,26 @@ class Choice < OpenAI::Internal::Type::BaseModel # @!attribute logprobs # Log probability information for the choice. # - # @return [OpenAI::Models::Chat::ChatCompletion::Choice::Logprobs, nil] - required :logprobs, -> { OpenAI::Models::Chat::ChatCompletion::Choice::Logprobs }, nil?: true + # @return [OpenAI::Chat::ChatCompletion::Choice::Logprobs, nil] + required :logprobs, -> { OpenAI::Chat::ChatCompletion::Choice::Logprobs }, nil?: true # @!attribute message # A chat completion message generated by the model. # - # @return [OpenAI::Models::Chat::ChatCompletionMessage] - required :message, -> { OpenAI::Models::Chat::ChatCompletionMessage } + # @return [OpenAI::Chat::ChatCompletionMessage] + required :message, -> { OpenAI::Chat::ChatCompletionMessage } # @!method initialize(finish_reason:, index:, logprobs:, message:) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Chat::ChatCompletion::Choice} for more details. + # {OpenAI::Chat::ChatCompletion::Choice} for more details. # - # @param finish_reason [Symbol, OpenAI::Models::Chat::ChatCompletion::Choice::FinishReason] The reason the model stopped generating tokens. This will be `stop` if the model - # ... + # @param finish_reason [Symbol, OpenAI::Chat::ChatCompletion::Choice::FinishReason] The reason the model stopped generating tokens. This will be `stop` if the model # # @param index [Integer] The index of the choice in the list of choices. # - # @param logprobs [OpenAI::Models::Chat::ChatCompletion::Choice::Logprobs, nil] Log probability information for the choice. + # @param logprobs [OpenAI::Chat::ChatCompletion::Choice::Logprobs, nil] Log probability information for the choice. # - # @param message [OpenAI::Models::Chat::ChatCompletionMessage] A chat completion message generated by the model. + # @param message [OpenAI::Chat::ChatCompletionMessage] A chat completion message generated by the model. # The reason the model stopped generating tokens. This will be `stop` if the model # hit a natural stop point or a provided stop sequence, `length` if the maximum @@ -151,7 +147,7 @@ class Choice < OpenAI::Internal::Type::BaseModel # model called a tool, or `function_call` (deprecated) if the model called a # function. # - # @see OpenAI::Models::Chat::ChatCompletion::Choice#finish_reason + # @see OpenAI::Chat::ChatCompletion::Choice#finish_reason module FinishReason extend OpenAI::Internal::Type::Enum @@ -165,30 +161,30 @@ module FinishReason # @return [Array] end - # @see OpenAI::Models::Chat::ChatCompletion::Choice#logprobs + # @see OpenAI::Chat::ChatCompletion::Choice#logprobs class Logprobs < OpenAI::Internal::Type::BaseModel # @!attribute content # A list of message content tokens with log probability information. # - # @return [Array, nil] + # @return [Array, nil] required :content, - -> { OpenAI::Internal::Type::ArrayOf[OpenAI::Models::Chat::ChatCompletionTokenLogprob] }, + -> { OpenAI::Internal::Type::ArrayOf[OpenAI::Chat::ChatCompletionTokenLogprob] }, nil?: true # @!attribute refusal # A list of message refusal tokens with log probability information. # - # @return [Array, nil] + # @return [Array, nil] required :refusal, - -> { OpenAI::Internal::Type::ArrayOf[OpenAI::Models::Chat::ChatCompletionTokenLogprob] }, + -> { OpenAI::Internal::Type::ArrayOf[OpenAI::Chat::ChatCompletionTokenLogprob] }, nil?: true # @!method initialize(content:, refusal:) # Log probability information for the choice. # - # @param content [Array, nil] A list of message content tokens with log probability information. + # @param content [Array, nil] A list of message content tokens with log probability information. # - # @param refusal [Array, nil] A list of message refusal tokens with log probability information. + # @param refusal [Array, nil] A list of message refusal tokens with log probability information. end end @@ -210,7 +206,7 @@ class Logprobs < OpenAI::Internal::Type::BaseModel # When this parameter is set, the response body will include the `service_tier` # utilized. # - # @see OpenAI::Models::Chat::ChatCompletion#service_tier + # @see OpenAI::Chat::ChatCompletion#service_tier module ServiceTier extend OpenAI::Internal::Type::Enum diff --git a/lib/openai/models/chat/chat_completion_assistant_message_param.rb b/lib/openai/models/chat/chat_completion_assistant_message_param.rb index ab8b934b..2f9fbe2b 100644 --- a/lib/openai/models/chat/chat_completion_assistant_message_param.rb +++ b/lib/openai/models/chat/chat_completion_assistant_message_param.rb @@ -14,16 +14,18 @@ class ChatCompletionAssistantMessageParam < OpenAI::Internal::Type::BaseModel # Data about a previous audio response from the model. # [Learn more](https://platform.openai.com/docs/guides/audio). # - # @return [OpenAI::Models::Chat::ChatCompletionAssistantMessageParam::Audio, nil] - optional :audio, -> { OpenAI::Models::Chat::ChatCompletionAssistantMessageParam::Audio }, nil?: true + # @return [OpenAI::Chat::ChatCompletionAssistantMessageParam::Audio, nil] + optional :audio, -> { OpenAI::Chat::ChatCompletionAssistantMessageParam::Audio }, nil?: true # @!attribute content # The contents of the assistant message. Required unless `tool_calls` or # `function_call` is specified. # - # @return [String, Array, nil] + # @return [String, Array, nil] optional :content, - union: -> { OpenAI::Models::Chat::ChatCompletionAssistantMessageParam::Content }, + union: -> { + OpenAI::Chat::ChatCompletionAssistantMessageParam::Content + }, nil?: true # @!attribute function_call @@ -32,9 +34,9 @@ class ChatCompletionAssistantMessageParam < OpenAI::Internal::Type::BaseModel # Deprecated and replaced by `tool_calls`. The name and arguments of a function # that should be called, as generated by the model. # - # @return [OpenAI::Models::Chat::ChatCompletionAssistantMessageParam::FunctionCall, nil] + # @return [OpenAI::Chat::ChatCompletionAssistantMessageParam::FunctionCall, nil] optional :function_call, - -> { OpenAI::Models::Chat::ChatCompletionAssistantMessageParam::FunctionCall }, + -> { OpenAI::Chat::ChatCompletionAssistantMessageParam::FunctionCall }, nil?: true # @!attribute name @@ -53,34 +55,33 @@ class ChatCompletionAssistantMessageParam < OpenAI::Internal::Type::BaseModel # @!attribute tool_calls # The tool calls generated by the model, such as function calls. # - # @return [Array, nil] + # @return [Array, nil] optional :tool_calls, - -> { OpenAI::Internal::Type::ArrayOf[OpenAI::Models::Chat::ChatCompletionMessageToolCall] } + -> { + OpenAI::Internal::Type::ArrayOf[OpenAI::Chat::ChatCompletionMessageToolCall] + } # @!method initialize(audio: nil, content: nil, function_call: nil, name: nil, refusal: nil, tool_calls: nil, role: :assistant) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Chat::ChatCompletionAssistantMessageParam} for more details. + # {OpenAI::Chat::ChatCompletionAssistantMessageParam} for more details. # # Messages sent by the model in response to user messages. # - # @param audio [OpenAI::Models::Chat::ChatCompletionAssistantMessageParam::Audio, nil] Data about a previous audio response from the model. ... + # @param audio [OpenAI::Chat::ChatCompletionAssistantMessageParam::Audio, nil] Data about a previous audio response from the model. # - # @param content [String, Array, nil] The contents of the assistant message. Required unless `tool_calls` or `function - # ... + # @param content [String, Array, nil] The contents of the assistant message. Required unless `tool_calls` or `function # - # @param function_call [OpenAI::Models::Chat::ChatCompletionAssistantMessageParam::FunctionCall, nil] Deprecated and replaced by `tool_calls`. The name and arguments of a function th - # ... + # @param function_call [OpenAI::Chat::ChatCompletionAssistantMessageParam::FunctionCall, nil] Deprecated and replaced by `tool_calls`. The name and arguments of a function th # # @param name [String] An optional name for the participant. Provides the model information to differen - # ... # # @param refusal [String, nil] The refusal message by the assistant. # - # @param tool_calls [Array] The tool calls generated by the model, such as function calls. + # @param tool_calls [Array] The tool calls generated by the model, such as function calls. # # @param role [Symbol, :assistant] The role of the messages author, in this case `assistant`. - # @see OpenAI::Models::Chat::ChatCompletionAssistantMessageParam#audio + # @see OpenAI::Chat::ChatCompletionAssistantMessageParam#audio class Audio < OpenAI::Internal::Type::BaseModel # @!attribute id # Unique identifier for a previous audio response from the model. @@ -90,19 +91,18 @@ class Audio < OpenAI::Internal::Type::BaseModel # @!method initialize(id:) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Chat::ChatCompletionAssistantMessageParam::Audio} for more - # details. + # {OpenAI::Chat::ChatCompletionAssistantMessageParam::Audio} for more details. # # Data about a previous audio response from the model. # [Learn more](https://platform.openai.com/docs/guides/audio). # - # @param id [String] Unique identifier for a previous audio response from the model. ... + # @param id [String] Unique identifier for a previous audio response from the model. end # The contents of the assistant message. Required unless `tool_calls` or # `function_call` is specified. # - # @see OpenAI::Models::Chat::ChatCompletionAssistantMessageParam#content + # @see OpenAI::Chat::ChatCompletionAssistantMessageParam#content module Content extend OpenAI::Internal::Type::Union @@ -110,7 +110,7 @@ module Content variant String # An array of content parts with a defined type. Can be one or more of type `text`, or exactly one of type `refusal`. - variant -> { OpenAI::Models::Chat::ChatCompletionAssistantMessageParam::Content::ArrayOfContentPartArray } + variant -> { OpenAI::Chat::ChatCompletionAssistantMessageParam::Content::ArrayOfContentPartArray } # Learn about # [text inputs](https://platform.openai.com/docs/guides/text-generation). @@ -120,25 +120,27 @@ module ArrayOfContentPart discriminator :type # Learn about [text inputs](https://platform.openai.com/docs/guides/text-generation). - variant :text, -> { OpenAI::Models::Chat::ChatCompletionContentPartText } + variant :text, -> { OpenAI::Chat::ChatCompletionContentPartText } - variant :refusal, -> { OpenAI::Models::Chat::ChatCompletionContentPartRefusal } + variant :refusal, -> { OpenAI::Chat::ChatCompletionContentPartRefusal } # @!method self.variants - # @return [Array(OpenAI::Models::Chat::ChatCompletionContentPartText, OpenAI::Models::Chat::ChatCompletionContentPartRefusal)] + # @return [Array(OpenAI::Chat::ChatCompletionContentPartText, OpenAI::Chat::ChatCompletionContentPartRefusal)] end # @!method self.variants - # @return [Array(String, Array)] + # @return [Array(String, Array)] # @type [OpenAI::Internal::Type::Converter] ArrayOfContentPartArray = - OpenAI::Internal::Type::ArrayOf[union: -> { OpenAI::Models::Chat::ChatCompletionAssistantMessageParam::Content::ArrayOfContentPart }] + OpenAI::Internal::Type::ArrayOf[union: -> { + OpenAI::Chat::ChatCompletionAssistantMessageParam::Content::ArrayOfContentPart + }] end # @deprecated # - # @see OpenAI::Models::Chat::ChatCompletionAssistantMessageParam#function_call + # @see OpenAI::Chat::ChatCompletionAssistantMessageParam#function_call class FunctionCall < OpenAI::Internal::Type::BaseModel # @!attribute arguments # The arguments to call the function with, as generated by the model in JSON @@ -157,14 +159,13 @@ class FunctionCall < OpenAI::Internal::Type::BaseModel # @!method initialize(arguments:, name:) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Chat::ChatCompletionAssistantMessageParam::FunctionCall} for - # more details. + # {OpenAI::Chat::ChatCompletionAssistantMessageParam::FunctionCall} for more + # details. # # Deprecated and replaced by `tool_calls`. The name and arguments of a function # that should be called, as generated by the model. # # @param arguments [String] The arguments to call the function with, as generated by the model in JSON forma - # ... # # @param name [String] The name of the function to call. end diff --git a/lib/openai/models/chat/chat_completion_audio.rb b/lib/openai/models/chat/chat_completion_audio.rb index 4ade12b4..861309b5 100644 --- a/lib/openai/models/chat/chat_completion_audio.rb +++ b/lib/openai/models/chat/chat_completion_audio.rb @@ -32,7 +32,7 @@ class ChatCompletionAudio < OpenAI::Internal::Type::BaseModel # @!method initialize(id:, data:, expires_at:, transcript:) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Chat::ChatCompletionAudio} for more details. + # {OpenAI::Chat::ChatCompletionAudio} for more details. # # If the audio output modality is requested, this object contains data about the # audio response from the model. @@ -40,9 +40,9 @@ class ChatCompletionAudio < OpenAI::Internal::Type::BaseModel # # @param id [String] Unique identifier for this audio response. # - # @param data [String] Base64 encoded audio bytes generated by the model, in the format ... + # @param data [String] Base64 encoded audio bytes generated by the model, in the format # - # @param expires_at [Integer] The Unix timestamp (in seconds) for when this audio response will ... + # @param expires_at [Integer] The Unix timestamp (in seconds) for when this audio response will # # @param transcript [String] Transcript of the audio generated by the model. end diff --git a/lib/openai/models/chat/chat_completion_audio_param.rb b/lib/openai/models/chat/chat_completion_audio_param.rb index faff16ff..e9901c92 100644 --- a/lib/openai/models/chat/chat_completion_audio_param.rb +++ b/lib/openai/models/chat/chat_completion_audio_param.rb @@ -8,32 +8,32 @@ class ChatCompletionAudioParam < OpenAI::Internal::Type::BaseModel # Specifies the output audio format. Must be one of `wav`, `mp3`, `flac`, `opus`, # or `pcm16`. # - # @return [Symbol, OpenAI::Models::Chat::ChatCompletionAudioParam::Format] - required :format_, enum: -> { OpenAI::Models::Chat::ChatCompletionAudioParam::Format }, api_name: :format + # @return [Symbol, OpenAI::Chat::ChatCompletionAudioParam::Format] + required :format_, enum: -> { OpenAI::Chat::ChatCompletionAudioParam::Format }, api_name: :format # @!attribute voice # The voice the model uses to respond. Supported voices are `alloy`, `ash`, # `ballad`, `coral`, `echo`, `fable`, `nova`, `onyx`, `sage`, and `shimmer`. # - # @return [String, Symbol, OpenAI::Models::Chat::ChatCompletionAudioParam::Voice] - required :voice, union: -> { OpenAI::Models::Chat::ChatCompletionAudioParam::Voice } + # @return [String, Symbol, OpenAI::Chat::ChatCompletionAudioParam::Voice] + required :voice, union: -> { OpenAI::Chat::ChatCompletionAudioParam::Voice } # @!method initialize(format_:, voice:) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Chat::ChatCompletionAudioParam} for more details. + # {OpenAI::Chat::ChatCompletionAudioParam} for more details. # # Parameters for audio output. Required when audio output is requested with # `modalities: ["audio"]`. # [Learn more](https://platform.openai.com/docs/guides/audio). # - # @param format_ [Symbol, OpenAI::Models::Chat::ChatCompletionAudioParam::Format] Specifies the output audio format. Must be one of `wav`, `mp3`, `flac`, ... + # @param format_ [Symbol, OpenAI::Chat::ChatCompletionAudioParam::Format] Specifies the output audio format. Must be one of `wav`, `mp3`, `flac`, # - # @param voice [String, Symbol, OpenAI::Models::Chat::ChatCompletionAudioParam::Voice] The voice the model uses to respond. Supported voices are ... + # @param voice [String, Symbol, OpenAI::Chat::ChatCompletionAudioParam::Voice] The voice the model uses to respond. Supported voices are # Specifies the output audio format. Must be one of `wav`, `mp3`, `flac`, `opus`, # or `pcm16`. # - # @see OpenAI::Models::Chat::ChatCompletionAudioParam#format_ + # @see OpenAI::Chat::ChatCompletionAudioParam#format_ module Format extend OpenAI::Internal::Type::Enum @@ -51,33 +51,33 @@ module Format # The voice the model uses to respond. Supported voices are `alloy`, `ash`, # `ballad`, `coral`, `echo`, `fable`, `nova`, `onyx`, `sage`, and `shimmer`. # - # @see OpenAI::Models::Chat::ChatCompletionAudioParam#voice + # @see OpenAI::Chat::ChatCompletionAudioParam#voice module Voice extend OpenAI::Internal::Type::Union variant String - variant const: -> { OpenAI::Models::Chat::ChatCompletionAudioParam::Voice::ALLOY } + variant const: -> { OpenAI::Chat::ChatCompletionAudioParam::Voice::ALLOY } - variant const: -> { OpenAI::Models::Chat::ChatCompletionAudioParam::Voice::ASH } + variant const: -> { OpenAI::Chat::ChatCompletionAudioParam::Voice::ASH } - variant const: -> { OpenAI::Models::Chat::ChatCompletionAudioParam::Voice::BALLAD } + variant const: -> { OpenAI::Chat::ChatCompletionAudioParam::Voice::BALLAD } - variant const: -> { OpenAI::Models::Chat::ChatCompletionAudioParam::Voice::CORAL } + variant const: -> { OpenAI::Chat::ChatCompletionAudioParam::Voice::CORAL } - variant const: -> { OpenAI::Models::Chat::ChatCompletionAudioParam::Voice::ECHO } + variant const: -> { OpenAI::Chat::ChatCompletionAudioParam::Voice::ECHO } - variant const: -> { OpenAI::Models::Chat::ChatCompletionAudioParam::Voice::FABLE } + variant const: -> { OpenAI::Chat::ChatCompletionAudioParam::Voice::FABLE } - variant const: -> { OpenAI::Models::Chat::ChatCompletionAudioParam::Voice::ONYX } + variant const: -> { OpenAI::Chat::ChatCompletionAudioParam::Voice::ONYX } - variant const: -> { OpenAI::Models::Chat::ChatCompletionAudioParam::Voice::NOVA } + variant const: -> { OpenAI::Chat::ChatCompletionAudioParam::Voice::NOVA } - variant const: -> { OpenAI::Models::Chat::ChatCompletionAudioParam::Voice::SAGE } + variant const: -> { OpenAI::Chat::ChatCompletionAudioParam::Voice::SAGE } - variant const: -> { OpenAI::Models::Chat::ChatCompletionAudioParam::Voice::SHIMMER } + variant const: -> { OpenAI::Chat::ChatCompletionAudioParam::Voice::SHIMMER } - variant const: -> { OpenAI::Models::Chat::ChatCompletionAudioParam::Voice::VERSE } + variant const: -> { OpenAI::Chat::ChatCompletionAudioParam::Voice::VERSE } # @!method self.variants # @return [Array(String, Symbol)] diff --git a/lib/openai/models/chat/chat_completion_chunk.rb b/lib/openai/models/chat/chat_completion_chunk.rb index e663c989..8f94cd1e 100644 --- a/lib/openai/models/chat/chat_completion_chunk.rb +++ b/lib/openai/models/chat/chat_completion_chunk.rb @@ -15,9 +15,8 @@ class ChatCompletionChunk < OpenAI::Internal::Type::BaseModel # greater than 1. Can also be empty for the last chunk if you set # `stream_options: {"include_usage": true}`. # - # @return [Array] - required :choices, - -> { OpenAI::Internal::Type::ArrayOf[OpenAI::Models::Chat::ChatCompletionChunk::Choice] } + # @return [Array] + required :choices, -> { OpenAI::Internal::Type::ArrayOf[OpenAI::Chat::ChatCompletionChunk::Choice] } # @!attribute created # The Unix timestamp (in seconds) of when the chat completion was created. Each @@ -57,8 +56,8 @@ class ChatCompletionChunk < OpenAI::Internal::Type::BaseModel # When this parameter is set, the response body will include the `service_tier` # utilized. # - # @return [Symbol, OpenAI::Models::Chat::ChatCompletionChunk::ServiceTier, nil] - optional :service_tier, enum: -> { OpenAI::Models::Chat::ChatCompletionChunk::ServiceTier }, nil?: true + # @return [Symbol, OpenAI::Chat::ChatCompletionChunk::ServiceTier, nil] + optional :service_tier, enum: -> { OpenAI::Chat::ChatCompletionChunk::ServiceTier }, nil?: true # @!attribute system_fingerprint # This fingerprint represents the backend configuration that the model runs with. @@ -77,12 +76,12 @@ class ChatCompletionChunk < OpenAI::Internal::Type::BaseModel # **NOTE:** If the stream is interrupted or cancelled, you may not receive the # final usage chunk which contains the total token usage for the request. # - # @return [OpenAI::Models::CompletionUsage, nil] - optional :usage, -> { OpenAI::Models::CompletionUsage }, nil?: true + # @return [OpenAI::CompletionUsage, nil] + optional :usage, -> { OpenAI::CompletionUsage }, nil?: true # @!method initialize(id:, choices:, created:, model:, service_tier: nil, system_fingerprint: nil, usage: nil, object: :"chat.completion.chunk") # Some parameter documentations has been truncated, see - # {OpenAI::Models::Chat::ChatCompletionChunk} for more details. + # {OpenAI::Chat::ChatCompletionChunk} for more details. # # Represents a streamed chunk of a chat completion response returned by the model, # based on the provided input. @@ -90,21 +89,17 @@ class ChatCompletionChunk < OpenAI::Internal::Type::BaseModel # # @param id [String] A unique identifier for the chat completion. Each chunk has the same ID. # - # @param choices [Array] A list of chat completion choices. Can contain more than one elements if `n` is - # ... + # @param choices [Array] A list of chat completion choices. Can contain more than one elements if `n` is # # @param created [Integer] The Unix timestamp (in seconds) of when the chat completion was created. Each ch - # ... # # @param model [String] The model to generate the completion. # - # @param service_tier [Symbol, OpenAI::Models::Chat::ChatCompletionChunk::ServiceTier, nil] Specifies the latency tier to use for processing the request. This parameter is - # ... + # @param service_tier [Symbol, OpenAI::Chat::ChatCompletionChunk::ServiceTier, nil] Specifies the latency tier to use for processing the request. This parameter is # # @param system_fingerprint [String] This fingerprint represents the backend configuration that the model runs with. - # ... # - # @param usage [OpenAI::Models::CompletionUsage, nil] An optional field that will only be present when you set ... + # @param usage [OpenAI::CompletionUsage, nil] An optional field that will only be present when you set # # @param object [Symbol, :"chat.completion.chunk"] The object type, which is always `chat.completion.chunk`. @@ -112,8 +107,8 @@ class Choice < OpenAI::Internal::Type::BaseModel # @!attribute delta # A chat completion delta generated by streamed model responses. # - # @return [OpenAI::Models::Chat::ChatCompletionChunk::Choice::Delta] - required :delta, -> { OpenAI::Models::Chat::ChatCompletionChunk::Choice::Delta } + # @return [OpenAI::Chat::ChatCompletionChunk::Choice::Delta] + required :delta, -> { OpenAI::Chat::ChatCompletionChunk::Choice::Delta } # @!attribute finish_reason # The reason the model stopped generating tokens. This will be `stop` if the model @@ -123,9 +118,11 @@ class Choice < OpenAI::Internal::Type::BaseModel # model called a tool, or `function_call` (deprecated) if the model called a # function. # - # @return [Symbol, OpenAI::Models::Chat::ChatCompletionChunk::Choice::FinishReason, nil] + # @return [Symbol, OpenAI::Chat::ChatCompletionChunk::Choice::FinishReason, nil] required :finish_reason, - enum: -> { OpenAI::Models::Chat::ChatCompletionChunk::Choice::FinishReason }, + enum: -> { + OpenAI::Chat::ChatCompletionChunk::Choice::FinishReason + }, nil?: true # @!attribute index @@ -137,23 +134,22 @@ class Choice < OpenAI::Internal::Type::BaseModel # @!attribute logprobs # Log probability information for the choice. # - # @return [OpenAI::Models::Chat::ChatCompletionChunk::Choice::Logprobs, nil] - optional :logprobs, -> { OpenAI::Models::Chat::ChatCompletionChunk::Choice::Logprobs }, nil?: true + # @return [OpenAI::Chat::ChatCompletionChunk::Choice::Logprobs, nil] + optional :logprobs, -> { OpenAI::Chat::ChatCompletionChunk::Choice::Logprobs }, nil?: true # @!method initialize(delta:, finish_reason:, index:, logprobs: nil) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Chat::ChatCompletionChunk::Choice} for more details. + # {OpenAI::Chat::ChatCompletionChunk::Choice} for more details. # - # @param delta [OpenAI::Models::Chat::ChatCompletionChunk::Choice::Delta] A chat completion delta generated by streamed model responses. + # @param delta [OpenAI::Chat::ChatCompletionChunk::Choice::Delta] A chat completion delta generated by streamed model responses. # - # @param finish_reason [Symbol, OpenAI::Models::Chat::ChatCompletionChunk::Choice::FinishReason, nil] The reason the model stopped generating tokens. This will be `stop` if the model - # ... + # @param finish_reason [Symbol, OpenAI::Chat::ChatCompletionChunk::Choice::FinishReason, nil] The reason the model stopped generating tokens. This will be `stop` if the model # # @param index [Integer] The index of the choice in the list of choices. # - # @param logprobs [OpenAI::Models::Chat::ChatCompletionChunk::Choice::Logprobs, nil] Log probability information for the choice. + # @param logprobs [OpenAI::Chat::ChatCompletionChunk::Choice::Logprobs, nil] Log probability information for the choice. - # @see OpenAI::Models::Chat::ChatCompletionChunk::Choice#delta + # @see OpenAI::Chat::ChatCompletionChunk::Choice#delta class Delta < OpenAI::Internal::Type::BaseModel # @!attribute content # The contents of the chunk message. @@ -167,8 +163,8 @@ class Delta < OpenAI::Internal::Type::BaseModel # Deprecated and replaced by `tool_calls`. The name and arguments of a function # that should be called, as generated by the model. # - # @return [OpenAI::Models::Chat::ChatCompletionChunk::Choice::Delta::FunctionCall, nil] - optional :function_call, -> { OpenAI::Models::Chat::ChatCompletionChunk::Choice::Delta::FunctionCall } + # @return [OpenAI::Chat::ChatCompletionChunk::Choice::Delta::FunctionCall, nil] + optional :function_call, -> { OpenAI::Chat::ChatCompletionChunk::Choice::Delta::FunctionCall } # @!attribute refusal # The refusal message generated by the model. @@ -179,35 +175,36 @@ class Delta < OpenAI::Internal::Type::BaseModel # @!attribute role # The role of the author of this message. # - # @return [Symbol, OpenAI::Models::Chat::ChatCompletionChunk::Choice::Delta::Role, nil] - optional :role, enum: -> { OpenAI::Models::Chat::ChatCompletionChunk::Choice::Delta::Role } + # @return [Symbol, OpenAI::Chat::ChatCompletionChunk::Choice::Delta::Role, nil] + optional :role, enum: -> { OpenAI::Chat::ChatCompletionChunk::Choice::Delta::Role } # @!attribute tool_calls # - # @return [Array, nil] + # @return [Array, nil] optional :tool_calls, - -> { OpenAI::Internal::Type::ArrayOf[OpenAI::Models::Chat::ChatCompletionChunk::Choice::Delta::ToolCall] } + -> { + OpenAI::Internal::Type::ArrayOf[OpenAI::Chat::ChatCompletionChunk::Choice::Delta::ToolCall] + } # @!method initialize(content: nil, function_call: nil, refusal: nil, role: nil, tool_calls: nil) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Chat::ChatCompletionChunk::Choice::Delta} for more details. + # {OpenAI::Chat::ChatCompletionChunk::Choice::Delta} for more details. # # A chat completion delta generated by streamed model responses. # # @param content [String, nil] The contents of the chunk message. # - # @param function_call [OpenAI::Models::Chat::ChatCompletionChunk::Choice::Delta::FunctionCall] Deprecated and replaced by `tool_calls`. The name and arguments of a function th - # ... + # @param function_call [OpenAI::Chat::ChatCompletionChunk::Choice::Delta::FunctionCall] Deprecated and replaced by `tool_calls`. The name and arguments of a function th # # @param refusal [String, nil] The refusal message generated by the model. # - # @param role [Symbol, OpenAI::Models::Chat::ChatCompletionChunk::Choice::Delta::Role] The role of the author of this message. + # @param role [Symbol, OpenAI::Chat::ChatCompletionChunk::Choice::Delta::Role] The role of the author of this message. # - # @param tool_calls [Array] + # @param tool_calls [Array] # @deprecated # - # @see OpenAI::Models::Chat::ChatCompletionChunk::Choice::Delta#function_call + # @see OpenAI::Chat::ChatCompletionChunk::Choice::Delta#function_call class FunctionCall < OpenAI::Internal::Type::BaseModel # @!attribute arguments # The arguments to call the function with, as generated by the model in JSON @@ -226,21 +223,20 @@ class FunctionCall < OpenAI::Internal::Type::BaseModel # @!method initialize(arguments: nil, name: nil) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Chat::ChatCompletionChunk::Choice::Delta::FunctionCall} for - # more details. + # {OpenAI::Chat::ChatCompletionChunk::Choice::Delta::FunctionCall} for more + # details. # # Deprecated and replaced by `tool_calls`. The name and arguments of a function # that should be called, as generated by the model. # # @param arguments [String] The arguments to call the function with, as generated by the model in JSON forma - # ... # # @param name [String] The name of the function to call. end # The role of the author of this message. # - # @see OpenAI::Models::Chat::ChatCompletionChunk::Choice::Delta#role + # @see OpenAI::Chat::ChatCompletionChunk::Choice::Delta#role module Role extend OpenAI::Internal::Type::Enum @@ -268,25 +264,25 @@ class ToolCall < OpenAI::Internal::Type::BaseModel # @!attribute function # - # @return [OpenAI::Models::Chat::ChatCompletionChunk::Choice::Delta::ToolCall::Function, nil] - optional :function, -> { OpenAI::Models::Chat::ChatCompletionChunk::Choice::Delta::ToolCall::Function } + # @return [OpenAI::Chat::ChatCompletionChunk::Choice::Delta::ToolCall::Function, nil] + optional :function, -> { OpenAI::Chat::ChatCompletionChunk::Choice::Delta::ToolCall::Function } # @!attribute type # The type of the tool. Currently, only `function` is supported. # - # @return [Symbol, OpenAI::Models::Chat::ChatCompletionChunk::Choice::Delta::ToolCall::Type, nil] - optional :type, enum: -> { OpenAI::Models::Chat::ChatCompletionChunk::Choice::Delta::ToolCall::Type } + # @return [Symbol, OpenAI::Chat::ChatCompletionChunk::Choice::Delta::ToolCall::Type, nil] + optional :type, enum: -> { OpenAI::Chat::ChatCompletionChunk::Choice::Delta::ToolCall::Type } # @!method initialize(index:, id: nil, function: nil, type: nil) # @param index [Integer] # # @param id [String] The ID of the tool call. # - # @param function [OpenAI::Models::Chat::ChatCompletionChunk::Choice::Delta::ToolCall::Function] + # @param function [OpenAI::Chat::ChatCompletionChunk::Choice::Delta::ToolCall::Function] # - # @param type [Symbol, OpenAI::Models::Chat::ChatCompletionChunk::Choice::Delta::ToolCall::Type] The type of the tool. Currently, only `function` is supported. + # @param type [Symbol, OpenAI::Chat::ChatCompletionChunk::Choice::Delta::ToolCall::Type] The type of the tool. Currently, only `function` is supported. - # @see OpenAI::Models::Chat::ChatCompletionChunk::Choice::Delta::ToolCall#function + # @see OpenAI::Chat::ChatCompletionChunk::Choice::Delta::ToolCall#function class Function < OpenAI::Internal::Type::BaseModel # @!attribute arguments # The arguments to call the function with, as generated by the model in JSON @@ -305,18 +301,17 @@ class Function < OpenAI::Internal::Type::BaseModel # @!method initialize(arguments: nil, name: nil) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Chat::ChatCompletionChunk::Choice::Delta::ToolCall::Function} - # for more details. + # {OpenAI::Chat::ChatCompletionChunk::Choice::Delta::ToolCall::Function} for more + # details. # # @param arguments [String] The arguments to call the function with, as generated by the model in JSON forma - # ... # # @param name [String] The name of the function to call. end # The type of the tool. Currently, only `function` is supported. # - # @see OpenAI::Models::Chat::ChatCompletionChunk::Choice::Delta::ToolCall#type + # @see OpenAI::Chat::ChatCompletionChunk::Choice::Delta::ToolCall#type module Type extend OpenAI::Internal::Type::Enum @@ -335,7 +330,7 @@ module Type # model called a tool, or `function_call` (deprecated) if the model called a # function. # - # @see OpenAI::Models::Chat::ChatCompletionChunk::Choice#finish_reason + # @see OpenAI::Chat::ChatCompletionChunk::Choice#finish_reason module FinishReason extend OpenAI::Internal::Type::Enum @@ -349,30 +344,30 @@ module FinishReason # @return [Array] end - # @see OpenAI::Models::Chat::ChatCompletionChunk::Choice#logprobs + # @see OpenAI::Chat::ChatCompletionChunk::Choice#logprobs class Logprobs < OpenAI::Internal::Type::BaseModel # @!attribute content # A list of message content tokens with log probability information. # - # @return [Array, nil] + # @return [Array, nil] required :content, - -> { OpenAI::Internal::Type::ArrayOf[OpenAI::Models::Chat::ChatCompletionTokenLogprob] }, + -> { OpenAI::Internal::Type::ArrayOf[OpenAI::Chat::ChatCompletionTokenLogprob] }, nil?: true # @!attribute refusal # A list of message refusal tokens with log probability information. # - # @return [Array, nil] + # @return [Array, nil] required :refusal, - -> { OpenAI::Internal::Type::ArrayOf[OpenAI::Models::Chat::ChatCompletionTokenLogprob] }, + -> { OpenAI::Internal::Type::ArrayOf[OpenAI::Chat::ChatCompletionTokenLogprob] }, nil?: true # @!method initialize(content:, refusal:) # Log probability information for the choice. # - # @param content [Array, nil] A list of message content tokens with log probability information. + # @param content [Array, nil] A list of message content tokens with log probability information. # - # @param refusal [Array, nil] A list of message refusal tokens with log probability information. + # @param refusal [Array, nil] A list of message refusal tokens with log probability information. end end @@ -394,7 +389,7 @@ class Logprobs < OpenAI::Internal::Type::BaseModel # When this parameter is set, the response body will include the `service_tier` # utilized. # - # @see OpenAI::Models::Chat::ChatCompletionChunk#service_tier + # @see OpenAI::Chat::ChatCompletionChunk#service_tier module ServiceTier extend OpenAI::Internal::Type::Enum diff --git a/lib/openai/models/chat/chat_completion_content_part.rb b/lib/openai/models/chat/chat_completion_content_part.rb index b00878ec..64a02cf0 100644 --- a/lib/openai/models/chat/chat_completion_content_part.rb +++ b/lib/openai/models/chat/chat_completion_content_part.rb @@ -11,22 +11,22 @@ module ChatCompletionContentPart discriminator :type # Learn about [text inputs](https://platform.openai.com/docs/guides/text-generation). - variant :text, -> { OpenAI::Models::Chat::ChatCompletionContentPartText } + variant :text, -> { OpenAI::Chat::ChatCompletionContentPartText } # Learn about [image inputs](https://platform.openai.com/docs/guides/vision). - variant :image_url, -> { OpenAI::Models::Chat::ChatCompletionContentPartImage } + variant :image_url, -> { OpenAI::Chat::ChatCompletionContentPartImage } # Learn about [audio inputs](https://platform.openai.com/docs/guides/audio). - variant :input_audio, -> { OpenAI::Models::Chat::ChatCompletionContentPartInputAudio } + variant :input_audio, -> { OpenAI::Chat::ChatCompletionContentPartInputAudio } # Learn about [file inputs](https://platform.openai.com/docs/guides/text) for text generation. - variant :file, -> { OpenAI::Models::Chat::ChatCompletionContentPart::File } + variant :file, -> { OpenAI::Chat::ChatCompletionContentPart::File } class File < OpenAI::Internal::Type::BaseModel # @!attribute file # - # @return [OpenAI::Models::Chat::ChatCompletionContentPart::File::File] - required :file, -> { OpenAI::Models::Chat::ChatCompletionContentPart::File::File } + # @return [OpenAI::Chat::ChatCompletionContentPart::File::File] + required :file, -> { OpenAI::Chat::ChatCompletionContentPart::File::File } # @!attribute type # The type of the content part. Always `file`. @@ -38,11 +38,11 @@ class File < OpenAI::Internal::Type::BaseModel # Learn about [file inputs](https://platform.openai.com/docs/guides/text) for text # generation. # - # @param file [OpenAI::Models::Chat::ChatCompletionContentPart::File::File] + # @param file [OpenAI::Chat::ChatCompletionContentPart::File::File] # # @param type [Symbol, :file] The type of the content part. Always `file`. - # @see OpenAI::Models::Chat::ChatCompletionContentPart::File#file + # @see OpenAI::Chat::ChatCompletionContentPart::File#file class File < OpenAI::Internal::Type::BaseModel # @!attribute file_data # The base64 encoded file data, used when passing the file to the model as a @@ -65,18 +65,18 @@ class File < OpenAI::Internal::Type::BaseModel # @!method initialize(file_data: nil, file_id: nil, filename: nil) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Chat::ChatCompletionContentPart::File::File} for more details. + # {OpenAI::Chat::ChatCompletionContentPart::File::File} for more details. # - # @param file_data [String] The base64 encoded file data, used when passing the file to the model ... + # @param file_data [String] The base64 encoded file data, used when passing the file to the model # - # @param file_id [String] The ID of an uploaded file to use as input. ... + # @param file_id [String] The ID of an uploaded file to use as input. # - # @param filename [String] The name of the file, used when passing the file to the model as a ... + # @param filename [String] The name of the file, used when passing the file to the model as a end end # @!method self.variants - # @return [Array(OpenAI::Models::Chat::ChatCompletionContentPartText, OpenAI::Models::Chat::ChatCompletionContentPartImage, OpenAI::Models::Chat::ChatCompletionContentPartInputAudio, OpenAI::Models::Chat::ChatCompletionContentPart::File)] + # @return [Array(OpenAI::Chat::ChatCompletionContentPartText, OpenAI::Chat::ChatCompletionContentPartImage, OpenAI::Chat::ChatCompletionContentPartInputAudio, OpenAI::Chat::ChatCompletionContentPart::File)] end end diff --git a/lib/openai/models/chat/chat_completion_content_part_image.rb b/lib/openai/models/chat/chat_completion_content_part_image.rb index 69462ff7..9288c5d4 100644 --- a/lib/openai/models/chat/chat_completion_content_part_image.rb +++ b/lib/openai/models/chat/chat_completion_content_part_image.rb @@ -6,8 +6,8 @@ module Chat class ChatCompletionContentPartImage < OpenAI::Internal::Type::BaseModel # @!attribute image_url # - # @return [OpenAI::Models::Chat::ChatCompletionContentPartImage::ImageURL] - required :image_url, -> { OpenAI::Models::Chat::ChatCompletionContentPartImage::ImageURL } + # @return [OpenAI::Chat::ChatCompletionContentPartImage::ImageURL] + required :image_url, -> { OpenAI::Chat::ChatCompletionContentPartImage::ImageURL } # @!attribute type # The type of the content part. @@ -18,11 +18,11 @@ class ChatCompletionContentPartImage < OpenAI::Internal::Type::BaseModel # @!method initialize(image_url:, type: :image_url) # Learn about [image inputs](https://platform.openai.com/docs/guides/vision). # - # @param image_url [OpenAI::Models::Chat::ChatCompletionContentPartImage::ImageURL] + # @param image_url [OpenAI::Chat::ChatCompletionContentPartImage::ImageURL] # # @param type [Symbol, :image_url] The type of the content part. - # @see OpenAI::Models::Chat::ChatCompletionContentPartImage#image_url + # @see OpenAI::Chat::ChatCompletionContentPartImage#image_url class ImageURL < OpenAI::Internal::Type::BaseModel # @!attribute url # Either a URL of the image or the base64 encoded image data. @@ -34,23 +34,21 @@ class ImageURL < OpenAI::Internal::Type::BaseModel # Specifies the detail level of the image. Learn more in the # [Vision guide](https://platform.openai.com/docs/guides/vision#low-or-high-fidelity-image-understanding). # - # @return [Symbol, OpenAI::Models::Chat::ChatCompletionContentPartImage::ImageURL::Detail, nil] - optional :detail, enum: -> { OpenAI::Models::Chat::ChatCompletionContentPartImage::ImageURL::Detail } + # @return [Symbol, OpenAI::Chat::ChatCompletionContentPartImage::ImageURL::Detail, nil] + optional :detail, enum: -> { OpenAI::Chat::ChatCompletionContentPartImage::ImageURL::Detail } # @!method initialize(url:, detail: nil) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Chat::ChatCompletionContentPartImage::ImageURL} for more - # details. + # {OpenAI::Chat::ChatCompletionContentPartImage::ImageURL} for more details. # # @param url [String] Either a URL of the image or the base64 encoded image data. # - # @param detail [Symbol, OpenAI::Models::Chat::ChatCompletionContentPartImage::ImageURL::Detail] Specifies the detail level of the image. Learn more in the [Vision guide](https: - # ... + # @param detail [Symbol, OpenAI::Chat::ChatCompletionContentPartImage::ImageURL::Detail] Specifies the detail level of the image. Learn more in the [Vision guide](https: # Specifies the detail level of the image. Learn more in the # [Vision guide](https://platform.openai.com/docs/guides/vision#low-or-high-fidelity-image-understanding). # - # @see OpenAI::Models::Chat::ChatCompletionContentPartImage::ImageURL#detail + # @see OpenAI::Chat::ChatCompletionContentPartImage::ImageURL#detail module Detail extend OpenAI::Internal::Type::Enum diff --git a/lib/openai/models/chat/chat_completion_content_part_input_audio.rb b/lib/openai/models/chat/chat_completion_content_part_input_audio.rb index 155990b0..86a9a7d5 100644 --- a/lib/openai/models/chat/chat_completion_content_part_input_audio.rb +++ b/lib/openai/models/chat/chat_completion_content_part_input_audio.rb @@ -6,8 +6,8 @@ module Chat class ChatCompletionContentPartInputAudio < OpenAI::Internal::Type::BaseModel # @!attribute input_audio # - # @return [OpenAI::Models::Chat::ChatCompletionContentPartInputAudio::InputAudio] - required :input_audio, -> { OpenAI::Models::Chat::ChatCompletionContentPartInputAudio::InputAudio } + # @return [OpenAI::Chat::ChatCompletionContentPartInputAudio::InputAudio] + required :input_audio, -> { OpenAI::Chat::ChatCompletionContentPartInputAudio::InputAudio } # @!attribute type # The type of the content part. Always `input_audio`. @@ -18,11 +18,11 @@ class ChatCompletionContentPartInputAudio < OpenAI::Internal::Type::BaseModel # @!method initialize(input_audio:, type: :input_audio) # Learn about [audio inputs](https://platform.openai.com/docs/guides/audio). # - # @param input_audio [OpenAI::Models::Chat::ChatCompletionContentPartInputAudio::InputAudio] + # @param input_audio [OpenAI::Chat::ChatCompletionContentPartInputAudio::InputAudio] # # @param type [Symbol, :input_audio] The type of the content part. Always `input_audio`. - # @see OpenAI::Models::Chat::ChatCompletionContentPartInputAudio#input_audio + # @see OpenAI::Chat::ChatCompletionContentPartInputAudio#input_audio class InputAudio < OpenAI::Internal::Type::BaseModel # @!attribute data # Base64 encoded audio data. @@ -33,23 +33,23 @@ class InputAudio < OpenAI::Internal::Type::BaseModel # @!attribute format_ # The format of the encoded audio data. Currently supports "wav" and "mp3". # - # @return [Symbol, OpenAI::Models::Chat::ChatCompletionContentPartInputAudio::InputAudio::Format] + # @return [Symbol, OpenAI::Chat::ChatCompletionContentPartInputAudio::InputAudio::Format] required :format_, - enum: -> { OpenAI::Models::Chat::ChatCompletionContentPartInputAudio::InputAudio::Format }, + enum: -> { OpenAI::Chat::ChatCompletionContentPartInputAudio::InputAudio::Format }, api_name: :format # @!method initialize(data:, format_:) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Chat::ChatCompletionContentPartInputAudio::InputAudio} for more + # {OpenAI::Chat::ChatCompletionContentPartInputAudio::InputAudio} for more # details. # # @param data [String] Base64 encoded audio data. # - # @param format_ [Symbol, OpenAI::Models::Chat::ChatCompletionContentPartInputAudio::InputAudio::Format] The format of the encoded audio data. Currently supports "wav" and "mp3". ... + # @param format_ [Symbol, OpenAI::Chat::ChatCompletionContentPartInputAudio::InputAudio::Format] The format of the encoded audio data. Currently supports "wav" and "mp3". # The format of the encoded audio data. Currently supports "wav" and "mp3". # - # @see OpenAI::Models::Chat::ChatCompletionContentPartInputAudio::InputAudio#format_ + # @see OpenAI::Chat::ChatCompletionContentPartInputAudio::InputAudio#format_ module Format extend OpenAI::Internal::Type::Enum diff --git a/lib/openai/models/chat/chat_completion_developer_message_param.rb b/lib/openai/models/chat/chat_completion_developer_message_param.rb index 412741c9..31fafa47 100644 --- a/lib/openai/models/chat/chat_completion_developer_message_param.rb +++ b/lib/openai/models/chat/chat_completion_developer_message_param.rb @@ -7,8 +7,8 @@ class ChatCompletionDeveloperMessageParam < OpenAI::Internal::Type::BaseModel # @!attribute content # The contents of the developer message. # - # @return [String, Array] - required :content, union: -> { OpenAI::Models::Chat::ChatCompletionDeveloperMessageParam::Content } + # @return [String, Array] + required :content, union: -> { OpenAI::Chat::ChatCompletionDeveloperMessageParam::Content } # @!attribute role # The role of the messages author, in this case `developer`. @@ -25,22 +25,21 @@ class ChatCompletionDeveloperMessageParam < OpenAI::Internal::Type::BaseModel # @!method initialize(content:, name: nil, role: :developer) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Chat::ChatCompletionDeveloperMessageParam} for more details. + # {OpenAI::Chat::ChatCompletionDeveloperMessageParam} for more details. # # Developer-provided instructions that the model should follow, regardless of # messages sent by the user. With o1 models and newer, `developer` messages # replace the previous `system` messages. # - # @param content [String, Array] The contents of the developer message. + # @param content [String, Array] The contents of the developer message. # # @param name [String] An optional name for the participant. Provides the model information to differen - # ... # # @param role [Symbol, :developer] The role of the messages author, in this case `developer`. # The contents of the developer message. # - # @see OpenAI::Models::Chat::ChatCompletionDeveloperMessageParam#content + # @see OpenAI::Chat::ChatCompletionDeveloperMessageParam#content module Content extend OpenAI::Internal::Type::Union @@ -48,14 +47,16 @@ module Content variant String # An array of content parts with a defined type. For developer messages, only type `text` is supported. - variant -> { OpenAI::Models::Chat::ChatCompletionDeveloperMessageParam::Content::ChatCompletionContentPartTextArray } + variant -> { + OpenAI::Chat::ChatCompletionDeveloperMessageParam::Content::ChatCompletionContentPartTextArray + } # @!method self.variants - # @return [Array(String, Array)] + # @return [Array(String, Array)] # @type [OpenAI::Internal::Type::Converter] ChatCompletionContentPartTextArray = - OpenAI::Internal::Type::ArrayOf[-> { OpenAI::Models::Chat::ChatCompletionContentPartText }] + OpenAI::Internal::Type::ArrayOf[-> { OpenAI::Chat::ChatCompletionContentPartText }] end end end diff --git a/lib/openai/models/chat/chat_completion_message.rb b/lib/openai/models/chat/chat_completion_message.rb index b6f083cd..bb6f6924 100644 --- a/lib/openai/models/chat/chat_completion_message.rb +++ b/lib/openai/models/chat/chat_completion_message.rb @@ -32,17 +32,17 @@ class ChatCompletionMessage < OpenAI::Internal::Type::BaseModel # Annotations for the message, when applicable, as when using the # [web search tool](https://platform.openai.com/docs/guides/tools-web-search?api-mode=chat). # - # @return [Array, nil] + # @return [Array, nil] optional :annotations, - -> { OpenAI::Internal::Type::ArrayOf[OpenAI::Models::Chat::ChatCompletionMessage::Annotation] } + -> { OpenAI::Internal::Type::ArrayOf[OpenAI::Chat::ChatCompletionMessage::Annotation] } # @!attribute audio # If the audio output modality is requested, this object contains data about the # audio response from the model. # [Learn more](https://platform.openai.com/docs/guides/audio). # - # @return [OpenAI::Models::Chat::ChatCompletionAudio, nil] - optional :audio, -> { OpenAI::Models::Chat::ChatCompletionAudio }, nil?: true + # @return [OpenAI::Chat::ChatCompletionAudio, nil] + optional :audio, -> { OpenAI::Chat::ChatCompletionAudio }, nil?: true # @!attribute function_call # @deprecated @@ -50,19 +50,21 @@ class ChatCompletionMessage < OpenAI::Internal::Type::BaseModel # Deprecated and replaced by `tool_calls`. The name and arguments of a function # that should be called, as generated by the model. # - # @return [OpenAI::Models::Chat::ChatCompletionMessage::FunctionCall, nil] - optional :function_call, -> { OpenAI::Models::Chat::ChatCompletionMessage::FunctionCall } + # @return [OpenAI::Chat::ChatCompletionMessage::FunctionCall, nil] + optional :function_call, -> { OpenAI::Chat::ChatCompletionMessage::FunctionCall } # @!attribute tool_calls # The tool calls generated by the model, such as function calls. # - # @return [Array, nil] + # @return [Array, nil] optional :tool_calls, - -> { OpenAI::Internal::Type::ArrayOf[OpenAI::Models::Chat::ChatCompletionMessageToolCall] } + -> { + OpenAI::Internal::Type::ArrayOf[OpenAI::Chat::ChatCompletionMessageToolCall] + } # @!method initialize(content:, refusal:, annotations: nil, audio: nil, function_call: nil, tool_calls: nil, role: :assistant) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Chat::ChatCompletionMessage} for more details. + # {OpenAI::Chat::ChatCompletionMessage} for more details. # # A chat completion message generated by the model. # @@ -70,14 +72,13 @@ class ChatCompletionMessage < OpenAI::Internal::Type::BaseModel # # @param refusal [String, nil] The refusal message generated by the model. # - # @param annotations [Array] Annotations for the message, when applicable, as when using the ... + # @param annotations [Array] Annotations for the message, when applicable, as when using the # - # @param audio [OpenAI::Models::Chat::ChatCompletionAudio, nil] If the audio output modality is requested, this object contains data ... + # @param audio [OpenAI::Chat::ChatCompletionAudio, nil] If the audio output modality is requested, this object contains data # - # @param function_call [OpenAI::Models::Chat::ChatCompletionMessage::FunctionCall] Deprecated and replaced by `tool_calls`. The name and arguments of a function th - # ... + # @param function_call [OpenAI::Chat::ChatCompletionMessage::FunctionCall] Deprecated and replaced by `tool_calls`. The name and arguments of a function th # - # @param tool_calls [Array] The tool calls generated by the model, such as function calls. + # @param tool_calls [Array] The tool calls generated by the model, such as function calls. # # @param role [Symbol, :assistant] The role of the author of this message. @@ -91,17 +92,17 @@ class Annotation < OpenAI::Internal::Type::BaseModel # @!attribute url_citation # A URL citation when using web search. # - # @return [OpenAI::Models::Chat::ChatCompletionMessage::Annotation::URLCitation] - required :url_citation, -> { OpenAI::Models::Chat::ChatCompletionMessage::Annotation::URLCitation } + # @return [OpenAI::Chat::ChatCompletionMessage::Annotation::URLCitation] + required :url_citation, -> { OpenAI::Chat::ChatCompletionMessage::Annotation::URLCitation } # @!method initialize(url_citation:, type: :url_citation) # A URL citation when using web search. # - # @param url_citation [OpenAI::Models::Chat::ChatCompletionMessage::Annotation::URLCitation] A URL citation when using web search. + # @param url_citation [OpenAI::Chat::ChatCompletionMessage::Annotation::URLCitation] A URL citation when using web search. # # @param type [Symbol, :url_citation] The type of the URL citation. Always `url_citation`. - # @see OpenAI::Models::Chat::ChatCompletionMessage::Annotation#url_citation + # @see OpenAI::Chat::ChatCompletionMessage::Annotation#url_citation class URLCitation < OpenAI::Internal::Type::BaseModel # @!attribute end_index # The index of the last character of the URL citation in the message. @@ -142,7 +143,7 @@ class URLCitation < OpenAI::Internal::Type::BaseModel # @deprecated # - # @see OpenAI::Models::Chat::ChatCompletionMessage#function_call + # @see OpenAI::Chat::ChatCompletionMessage#function_call class FunctionCall < OpenAI::Internal::Type::BaseModel # @!attribute arguments # The arguments to call the function with, as generated by the model in JSON @@ -161,13 +162,12 @@ class FunctionCall < OpenAI::Internal::Type::BaseModel # @!method initialize(arguments:, name:) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Chat::ChatCompletionMessage::FunctionCall} for more details. + # {OpenAI::Chat::ChatCompletionMessage::FunctionCall} for more details. # # Deprecated and replaced by `tool_calls`. The name and arguments of a function # that should be called, as generated by the model. # # @param arguments [String] The arguments to call the function with, as generated by the model in JSON forma - # ... # # @param name [String] The name of the function to call. end diff --git a/lib/openai/models/chat/chat_completion_message_param.rb b/lib/openai/models/chat/chat_completion_message_param.rb index 16e5d625..6710bee4 100644 --- a/lib/openai/models/chat/chat_completion_message_param.rb +++ b/lib/openai/models/chat/chat_completion_message_param.rb @@ -14,26 +14,26 @@ module ChatCompletionMessageParam # Developer-provided instructions that the model should follow, regardless of # messages sent by the user. With o1 models and newer, `developer` messages # replace the previous `system` messages. - variant :developer, -> { OpenAI::Models::Chat::ChatCompletionDeveloperMessageParam } + variant :developer, -> { OpenAI::Chat::ChatCompletionDeveloperMessageParam } # Developer-provided instructions that the model should follow, regardless of # messages sent by the user. With o1 models and newer, use `developer` messages # for this purpose instead. - variant :system, -> { OpenAI::Models::Chat::ChatCompletionSystemMessageParam } + variant :system, -> { OpenAI::Chat::ChatCompletionSystemMessageParam } # Messages sent by an end user, containing prompts or additional context # information. - variant :user, -> { OpenAI::Models::Chat::ChatCompletionUserMessageParam } + variant :user, -> { OpenAI::Chat::ChatCompletionUserMessageParam } # Messages sent by the model in response to user messages. - variant :assistant, -> { OpenAI::Models::Chat::ChatCompletionAssistantMessageParam } + variant :assistant, -> { OpenAI::Chat::ChatCompletionAssistantMessageParam } - variant :tool, -> { OpenAI::Models::Chat::ChatCompletionToolMessageParam } + variant :tool, -> { OpenAI::Chat::ChatCompletionToolMessageParam } - variant :function, -> { OpenAI::Models::Chat::ChatCompletionFunctionMessageParam } + variant :function, -> { OpenAI::Chat::ChatCompletionFunctionMessageParam } # @!method self.variants - # @return [Array(OpenAI::Models::Chat::ChatCompletionDeveloperMessageParam, OpenAI::Models::Chat::ChatCompletionSystemMessageParam, OpenAI::Models::Chat::ChatCompletionUserMessageParam, OpenAI::Models::Chat::ChatCompletionAssistantMessageParam, OpenAI::Models::Chat::ChatCompletionToolMessageParam, OpenAI::Models::Chat::ChatCompletionFunctionMessageParam)] + # @return [Array(OpenAI::Chat::ChatCompletionDeveloperMessageParam, OpenAI::Chat::ChatCompletionSystemMessageParam, OpenAI::Chat::ChatCompletionUserMessageParam, OpenAI::Chat::ChatCompletionAssistantMessageParam, OpenAI::Chat::ChatCompletionToolMessageParam, OpenAI::Chat::ChatCompletionFunctionMessageParam)] end end diff --git a/lib/openai/models/chat/chat_completion_message_tool_call.rb b/lib/openai/models/chat/chat_completion_message_tool_call.rb index 11320fb7..f64981ce 100644 --- a/lib/openai/models/chat/chat_completion_message_tool_call.rb +++ b/lib/openai/models/chat/chat_completion_message_tool_call.rb @@ -13,8 +13,8 @@ class ChatCompletionMessageToolCall < OpenAI::Internal::Type::BaseModel # @!attribute function # The function that the model called. # - # @return [OpenAI::Models::Chat::ChatCompletionMessageToolCall::Function] - required :function, -> { OpenAI::Models::Chat::ChatCompletionMessageToolCall::Function } + # @return [OpenAI::Chat::ChatCompletionMessageToolCall::Function] + required :function, -> { OpenAI::Chat::ChatCompletionMessageToolCall::Function } # @!attribute type # The type of the tool. Currently, only `function` is supported. @@ -25,11 +25,11 @@ class ChatCompletionMessageToolCall < OpenAI::Internal::Type::BaseModel # @!method initialize(id:, function:, type: :function) # @param id [String] The ID of the tool call. # - # @param function [OpenAI::Models::Chat::ChatCompletionMessageToolCall::Function] The function that the model called. + # @param function [OpenAI::Chat::ChatCompletionMessageToolCall::Function] The function that the model called. # # @param type [Symbol, :function] The type of the tool. Currently, only `function` is supported. - # @see OpenAI::Models::Chat::ChatCompletionMessageToolCall#function + # @see OpenAI::Chat::ChatCompletionMessageToolCall#function class Function < OpenAI::Internal::Type::BaseModel # @!attribute arguments # The arguments to call the function with, as generated by the model in JSON @@ -54,13 +54,11 @@ class Function < OpenAI::Internal::Type::BaseModel # @!method initialize(arguments:, name:) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Chat::ChatCompletionMessageToolCall::Function} for more - # details. + # {OpenAI::Chat::ChatCompletionMessageToolCall::Function} for more details. # # The function that the model called. # # @param arguments [String] The arguments to call the function with, as generated by the model in JSON forma - # ... # # @param name [String] The name of the function to call. end diff --git a/lib/openai/models/chat/chat_completion_named_tool_choice.rb b/lib/openai/models/chat/chat_completion_named_tool_choice.rb index 245af016..afab8ee0 100644 --- a/lib/openai/models/chat/chat_completion_named_tool_choice.rb +++ b/lib/openai/models/chat/chat_completion_named_tool_choice.rb @@ -6,8 +6,8 @@ module Chat class ChatCompletionNamedToolChoice < OpenAI::Internal::Type::BaseModel # @!attribute function # - # @return [OpenAI::Models::Chat::ChatCompletionNamedToolChoice::Function] - required :function, -> { OpenAI::Models::Chat::ChatCompletionNamedToolChoice::Function } + # @return [OpenAI::Chat::ChatCompletionNamedToolChoice::Function] + required :function, -> { OpenAI::Chat::ChatCompletionNamedToolChoice::Function } # @!attribute type # The type of the tool. Currently, only `function` is supported. @@ -19,11 +19,11 @@ class ChatCompletionNamedToolChoice < OpenAI::Internal::Type::BaseModel # Specifies a tool the model should use. Use to force the model to call a specific # function. # - # @param function [OpenAI::Models::Chat::ChatCompletionNamedToolChoice::Function] + # @param function [OpenAI::Chat::ChatCompletionNamedToolChoice::Function] # # @param type [Symbol, :function] The type of the tool. Currently, only `function` is supported. - # @see OpenAI::Models::Chat::ChatCompletionNamedToolChoice#function + # @see OpenAI::Chat::ChatCompletionNamedToolChoice#function class Function < OpenAI::Internal::Type::BaseModel # @!attribute name # The name of the function to call. diff --git a/lib/openai/models/chat/chat_completion_prediction_content.rb b/lib/openai/models/chat/chat_completion_prediction_content.rb index df3dbe30..eeccd9df 100644 --- a/lib/openai/models/chat/chat_completion_prediction_content.rb +++ b/lib/openai/models/chat/chat_completion_prediction_content.rb @@ -9,8 +9,8 @@ class ChatCompletionPredictionContent < OpenAI::Internal::Type::BaseModel # generated tokens would match this content, the entire model response can be # returned much more quickly. # - # @return [String, Array] - required :content, union: -> { OpenAI::Models::Chat::ChatCompletionPredictionContent::Content } + # @return [String, Array] + required :content, union: -> { OpenAI::Chat::ChatCompletionPredictionContent::Content } # @!attribute type # The type of the predicted content you want to provide. This type is currently @@ -21,20 +21,20 @@ class ChatCompletionPredictionContent < OpenAI::Internal::Type::BaseModel # @!method initialize(content:, type: :content) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Chat::ChatCompletionPredictionContent} for more details. + # {OpenAI::Chat::ChatCompletionPredictionContent} for more details. # # Static predicted output content, such as the content of a text file that is # being regenerated. # - # @param content [String, Array] The content that should be matched when generating a model response. ... + # @param content [String, Array] The content that should be matched when generating a model response. # - # @param type [Symbol, :content] The type of the predicted content you want to provide. This type is ... + # @param type [Symbol, :content] The type of the predicted content you want to provide. This type is # The content that should be matched when generating a model response. If # generated tokens would match this content, the entire model response can be # returned much more quickly. # - # @see OpenAI::Models::Chat::ChatCompletionPredictionContent#content + # @see OpenAI::Chat::ChatCompletionPredictionContent#content module Content extend OpenAI::Internal::Type::Union @@ -43,14 +43,16 @@ module Content variant String # An array of content parts with a defined type. Supported options differ based on the [model](https://platform.openai.com/docs/models) being used to generate the response. Can contain text inputs. - variant -> { OpenAI::Models::Chat::ChatCompletionPredictionContent::Content::ChatCompletionContentPartTextArray } + variant -> { + OpenAI::Chat::ChatCompletionPredictionContent::Content::ChatCompletionContentPartTextArray + } # @!method self.variants - # @return [Array(String, Array)] + # @return [Array(String, Array)] # @type [OpenAI::Internal::Type::Converter] ChatCompletionContentPartTextArray = - OpenAI::Internal::Type::ArrayOf[-> { OpenAI::Models::Chat::ChatCompletionContentPartText }] + OpenAI::Internal::Type::ArrayOf[-> { OpenAI::Chat::ChatCompletionContentPartText }] end end end diff --git a/lib/openai/models/chat/chat_completion_stream_options.rb b/lib/openai/models/chat/chat_completion_stream_options.rb index de346443..ffbaa513 100644 --- a/lib/openai/models/chat/chat_completion_stream_options.rb +++ b/lib/openai/models/chat/chat_completion_stream_options.rb @@ -18,11 +18,11 @@ class ChatCompletionStreamOptions < OpenAI::Internal::Type::BaseModel # @!method initialize(include_usage: nil) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Chat::ChatCompletionStreamOptions} for more details. + # {OpenAI::Chat::ChatCompletionStreamOptions} for more details. # # Options for streaming response. Only set this when you set `stream: true`. # - # @param include_usage [Boolean] If set, an additional chunk will be streamed before the `data: [DONE]` ... + # @param include_usage [Boolean] If set, an additional chunk will be streamed before the `data: [DONE]` end end diff --git a/lib/openai/models/chat/chat_completion_system_message_param.rb b/lib/openai/models/chat/chat_completion_system_message_param.rb index 7ef7fbfd..43b7a5c4 100644 --- a/lib/openai/models/chat/chat_completion_system_message_param.rb +++ b/lib/openai/models/chat/chat_completion_system_message_param.rb @@ -7,8 +7,8 @@ class ChatCompletionSystemMessageParam < OpenAI::Internal::Type::BaseModel # @!attribute content # The contents of the system message. # - # @return [String, Array] - required :content, union: -> { OpenAI::Models::Chat::ChatCompletionSystemMessageParam::Content } + # @return [String, Array] + required :content, union: -> { OpenAI::Chat::ChatCompletionSystemMessageParam::Content } # @!attribute role # The role of the messages author, in this case `system`. @@ -25,22 +25,21 @@ class ChatCompletionSystemMessageParam < OpenAI::Internal::Type::BaseModel # @!method initialize(content:, name: nil, role: :system) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Chat::ChatCompletionSystemMessageParam} for more details. + # {OpenAI::Chat::ChatCompletionSystemMessageParam} for more details. # # Developer-provided instructions that the model should follow, regardless of # messages sent by the user. With o1 models and newer, use `developer` messages # for this purpose instead. # - # @param content [String, Array] The contents of the system message. + # @param content [String, Array] The contents of the system message. # # @param name [String] An optional name for the participant. Provides the model information to differen - # ... # # @param role [Symbol, :system] The role of the messages author, in this case `system`. # The contents of the system message. # - # @see OpenAI::Models::Chat::ChatCompletionSystemMessageParam#content + # @see OpenAI::Chat::ChatCompletionSystemMessageParam#content module Content extend OpenAI::Internal::Type::Union @@ -48,14 +47,16 @@ module Content variant String # An array of content parts with a defined type. For system messages, only type `text` is supported. - variant -> { OpenAI::Models::Chat::ChatCompletionSystemMessageParam::Content::ChatCompletionContentPartTextArray } + variant -> { + OpenAI::Chat::ChatCompletionSystemMessageParam::Content::ChatCompletionContentPartTextArray + } # @!method self.variants - # @return [Array(String, Array)] + # @return [Array(String, Array)] # @type [OpenAI::Internal::Type::Converter] ChatCompletionContentPartTextArray = - OpenAI::Internal::Type::ArrayOf[-> { OpenAI::Models::Chat::ChatCompletionContentPartText }] + OpenAI::Internal::Type::ArrayOf[-> { OpenAI::Chat::ChatCompletionContentPartText }] end end end diff --git a/lib/openai/models/chat/chat_completion_token_logprob.rb b/lib/openai/models/chat/chat_completion_token_logprob.rb index 2dfadc88..c45fcee7 100644 --- a/lib/openai/models/chat/chat_completion_token_logprob.rb +++ b/lib/openai/models/chat/chat_completion_token_logprob.rb @@ -32,24 +32,21 @@ class ChatCompletionTokenLogprob < OpenAI::Internal::Type::BaseModel # position. In rare cases, there may be fewer than the number of requested # `top_logprobs` returned. # - # @return [Array] + # @return [Array] required :top_logprobs, - -> { OpenAI::Internal::Type::ArrayOf[OpenAI::Models::Chat::ChatCompletionTokenLogprob::TopLogprob] } + -> { OpenAI::Internal::Type::ArrayOf[OpenAI::Chat::ChatCompletionTokenLogprob::TopLogprob] } # @!method initialize(token:, bytes:, logprob:, top_logprobs:) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Chat::ChatCompletionTokenLogprob} for more details. + # {OpenAI::Chat::ChatCompletionTokenLogprob} for more details. # # @param token [String] The token. # # @param bytes [Array, nil] A list of integers representing the UTF-8 bytes representation of the token. Use - # ... # # @param logprob [Float] The log probability of this token, if it is within the top 20 most likely tokens - # ... # - # @param top_logprobs [Array] List of the most likely tokens and their log probability, at this token position - # ... + # @param top_logprobs [Array] List of the most likely tokens and their log probability, at this token position class TopLogprob < OpenAI::Internal::Type::BaseModel # @!attribute token @@ -77,15 +74,13 @@ class TopLogprob < OpenAI::Internal::Type::BaseModel # @!method initialize(token:, bytes:, logprob:) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Chat::ChatCompletionTokenLogprob::TopLogprob} for more details. + # {OpenAI::Chat::ChatCompletionTokenLogprob::TopLogprob} for more details. # # @param token [String] The token. # # @param bytes [Array, nil] A list of integers representing the UTF-8 bytes representation of the token. Use - # ... # # @param logprob [Float] The log probability of this token, if it is within the top 20 most likely tokens - # ... end end end diff --git a/lib/openai/models/chat/chat_completion_tool.rb b/lib/openai/models/chat/chat_completion_tool.rb index c06b28d0..21a86040 100644 --- a/lib/openai/models/chat/chat_completion_tool.rb +++ b/lib/openai/models/chat/chat_completion_tool.rb @@ -6,8 +6,8 @@ module Chat class ChatCompletionTool < OpenAI::Internal::Type::BaseModel # @!attribute function # - # @return [OpenAI::Models::FunctionDefinition] - required :function, -> { OpenAI::Models::FunctionDefinition } + # @return [OpenAI::FunctionDefinition] + required :function, -> { OpenAI::FunctionDefinition } # @!attribute type # The type of the tool. Currently, only `function` is supported. @@ -16,7 +16,7 @@ class ChatCompletionTool < OpenAI::Internal::Type::BaseModel required :type, const: :function # @!method initialize(function:, type: :function) - # @param function [OpenAI::Models::FunctionDefinition] + # @param function [OpenAI::FunctionDefinition] # # @param type [Symbol, :function] The type of the tool. Currently, only `function` is supported. end diff --git a/lib/openai/models/chat/chat_completion_tool_choice_option.rb b/lib/openai/models/chat/chat_completion_tool_choice_option.rb index 5fdd5796..4b8a6fe3 100644 --- a/lib/openai/models/chat/chat_completion_tool_choice_option.rb +++ b/lib/openai/models/chat/chat_completion_tool_choice_option.rb @@ -16,10 +16,10 @@ module ChatCompletionToolChoiceOption extend OpenAI::Internal::Type::Union # `none` means the model will not call any tool and instead generates a message. `auto` means the model can pick between generating a message or calling one or more tools. `required` means the model must call one or more tools. - variant enum: -> { OpenAI::Models::Chat::ChatCompletionToolChoiceOption::Auto } + variant enum: -> { OpenAI::Chat::ChatCompletionToolChoiceOption::Auto } # Specifies a tool the model should use. Use to force the model to call a specific function. - variant -> { OpenAI::Models::Chat::ChatCompletionNamedToolChoice } + variant -> { OpenAI::Chat::ChatCompletionNamedToolChoice } # `none` means the model will not call any tool and instead generates a message. # `auto` means the model can pick between generating a message or calling one or @@ -36,7 +36,7 @@ module Auto end # @!method self.variants - # @return [Array(Symbol, OpenAI::Models::Chat::ChatCompletionToolChoiceOption::Auto, OpenAI::Models::Chat::ChatCompletionNamedToolChoice)] + # @return [Array(Symbol, OpenAI::Chat::ChatCompletionToolChoiceOption::Auto, OpenAI::Chat::ChatCompletionNamedToolChoice)] end end diff --git a/lib/openai/models/chat/chat_completion_tool_message_param.rb b/lib/openai/models/chat/chat_completion_tool_message_param.rb index 2ff0bf3b..c88bb51c 100644 --- a/lib/openai/models/chat/chat_completion_tool_message_param.rb +++ b/lib/openai/models/chat/chat_completion_tool_message_param.rb @@ -7,8 +7,8 @@ class ChatCompletionToolMessageParam < OpenAI::Internal::Type::BaseModel # @!attribute content # The contents of the tool message. # - # @return [String, Array] - required :content, union: -> { OpenAI::Models::Chat::ChatCompletionToolMessageParam::Content } + # @return [String, Array] + required :content, union: -> { OpenAI::Chat::ChatCompletionToolMessageParam::Content } # @!attribute role # The role of the messages author, in this case `tool`. @@ -23,7 +23,7 @@ class ChatCompletionToolMessageParam < OpenAI::Internal::Type::BaseModel required :tool_call_id, String # @!method initialize(content:, tool_call_id:, role: :tool) - # @param content [String, Array] The contents of the tool message. + # @param content [String, Array] The contents of the tool message. # # @param tool_call_id [String] Tool call that this message is responding to. # @@ -31,7 +31,7 @@ class ChatCompletionToolMessageParam < OpenAI::Internal::Type::BaseModel # The contents of the tool message. # - # @see OpenAI::Models::Chat::ChatCompletionToolMessageParam#content + # @see OpenAI::Chat::ChatCompletionToolMessageParam#content module Content extend OpenAI::Internal::Type::Union @@ -39,14 +39,16 @@ module Content variant String # An array of content parts with a defined type. For tool messages, only type `text` is supported. - variant -> { OpenAI::Models::Chat::ChatCompletionToolMessageParam::Content::ChatCompletionContentPartTextArray } + variant -> { + OpenAI::Chat::ChatCompletionToolMessageParam::Content::ChatCompletionContentPartTextArray + } # @!method self.variants - # @return [Array(String, Array)] + # @return [Array(String, Array)] # @type [OpenAI::Internal::Type::Converter] ChatCompletionContentPartTextArray = - OpenAI::Internal::Type::ArrayOf[-> { OpenAI::Models::Chat::ChatCompletionContentPartText }] + OpenAI::Internal::Type::ArrayOf[-> { OpenAI::Chat::ChatCompletionContentPartText }] end end end diff --git a/lib/openai/models/chat/chat_completion_user_message_param.rb b/lib/openai/models/chat/chat_completion_user_message_param.rb index b412e5c9..ffd7b68a 100644 --- a/lib/openai/models/chat/chat_completion_user_message_param.rb +++ b/lib/openai/models/chat/chat_completion_user_message_param.rb @@ -7,8 +7,8 @@ class ChatCompletionUserMessageParam < OpenAI::Internal::Type::BaseModel # @!attribute content # The contents of the user message. # - # @return [String, Array] - required :content, union: -> { OpenAI::Models::Chat::ChatCompletionUserMessageParam::Content } + # @return [String, Array] + required :content, union: -> { OpenAI::Chat::ChatCompletionUserMessageParam::Content } # @!attribute role # The role of the messages author, in this case `user`. @@ -25,21 +25,20 @@ class ChatCompletionUserMessageParam < OpenAI::Internal::Type::BaseModel # @!method initialize(content:, name: nil, role: :user) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Chat::ChatCompletionUserMessageParam} for more details. + # {OpenAI::Chat::ChatCompletionUserMessageParam} for more details. # # Messages sent by an end user, containing prompts or additional context # information. # - # @param content [String, Array] The contents of the user message. ... + # @param content [String, Array] The contents of the user message. # # @param name [String] An optional name for the participant. Provides the model information to differen - # ... # # @param role [Symbol, :user] The role of the messages author, in this case `user`. # The contents of the user message. # - # @see OpenAI::Models::Chat::ChatCompletionUserMessageParam#content + # @see OpenAI::Chat::ChatCompletionUserMessageParam#content module Content extend OpenAI::Internal::Type::Union @@ -47,14 +46,14 @@ module Content variant String # An array of content parts with a defined type. Supported options differ based on the [model](https://platform.openai.com/docs/models) being used to generate the response. Can contain text, image, or audio inputs. - variant -> { OpenAI::Models::Chat::ChatCompletionUserMessageParam::Content::ChatCompletionContentPartArray } + variant -> { OpenAI::Chat::ChatCompletionUserMessageParam::Content::ChatCompletionContentPartArray } # @!method self.variants - # @return [Array(String, Array)] + # @return [Array(String, Array)] # @type [OpenAI::Internal::Type::Converter] ChatCompletionContentPartArray = - OpenAI::Internal::Type::ArrayOf[union: -> { OpenAI::Models::Chat::ChatCompletionContentPart }] + OpenAI::Internal::Type::ArrayOf[union: -> { OpenAI::Chat::ChatCompletionContentPart }] end end end diff --git a/lib/openai/models/chat/completion_create_params.rb b/lib/openai/models/chat/completion_create_params.rb index ed12261d..3a3a3c23 100644 --- a/lib/openai/models/chat/completion_create_params.rb +++ b/lib/openai/models/chat/completion_create_params.rb @@ -18,9 +18,9 @@ class CompletionCreateParams < OpenAI::Internal::Type::BaseModel # [images](https://platform.openai.com/docs/guides/vision), and # [audio](https://platform.openai.com/docs/guides/audio). # - # @return [Array] + # @return [Array] required :messages, - -> { OpenAI::Internal::Type::ArrayOf[union: OpenAI::Models::Chat::ChatCompletionMessageParam] } + -> { OpenAI::Internal::Type::ArrayOf[union: OpenAI::Chat::ChatCompletionMessageParam] } # @!attribute model # Model ID used to generate the response, like `gpt-4o` or `o3`. OpenAI offers a @@ -29,16 +29,16 @@ class CompletionCreateParams < OpenAI::Internal::Type::BaseModel # [model guide](https://platform.openai.com/docs/models) to browse and compare # available models. # - # @return [String, Symbol, OpenAI::Models::ChatModel] - required :model, union: -> { OpenAI::Models::Chat::CompletionCreateParams::Model } + # @return [String, Symbol, OpenAI::ChatModel] + required :model, union: -> { OpenAI::Chat::CompletionCreateParams::Model } # @!attribute audio # Parameters for audio output. Required when audio output is requested with # `modalities: ["audio"]`. # [Learn more](https://platform.openai.com/docs/guides/audio). # - # @return [OpenAI::Models::Chat::ChatCompletionAudioParam, nil] - optional :audio, -> { OpenAI::Models::Chat::ChatCompletionAudioParam }, nil?: true + # @return [OpenAI::Chat::ChatCompletionAudioParam, nil] + optional :audio, -> { OpenAI::Chat::ChatCompletionAudioParam }, nil?: true # @!attribute frequency_penalty # Number between -2.0 and 2.0. Positive values penalize new tokens based on their @@ -66,8 +66,8 @@ class CompletionCreateParams < OpenAI::Internal::Type::BaseModel # `none` is the default when no functions are present. `auto` is the default if # functions are present. # - # @return [Symbol, OpenAI::Models::Chat::CompletionCreateParams::FunctionCall::FunctionCallMode, OpenAI::Models::Chat::ChatCompletionFunctionCallOption, nil] - optional :function_call, union: -> { OpenAI::Models::Chat::CompletionCreateParams::FunctionCall } + # @return [Symbol, OpenAI::Chat::CompletionCreateParams::FunctionCall::FunctionCallMode, OpenAI::Chat::ChatCompletionFunctionCallOption, nil] + optional :function_call, union: -> { OpenAI::Chat::CompletionCreateParams::FunctionCall } # @!attribute functions # @deprecated @@ -76,9 +76,9 @@ class CompletionCreateParams < OpenAI::Internal::Type::BaseModel # # A list of functions the model may generate JSON inputs for. # - # @return [Array, nil] + # @return [Array, nil] optional :functions, - -> { OpenAI::Internal::Type::ArrayOf[OpenAI::Models::Chat::CompletionCreateParams::Function] } + -> { OpenAI::Internal::Type::ArrayOf[OpenAI::Chat::CompletionCreateParams::Function] } # @!attribute logit_bias # Modify the likelihood of specified tokens appearing in the completion. @@ -146,9 +146,9 @@ class CompletionCreateParams < OpenAI::Internal::Type::BaseModel # # `["text", "audio"]` # - # @return [Array, nil] + # @return [Array, nil] optional :modalities, - -> { OpenAI::Internal::Type::ArrayOf[enum: OpenAI::Models::Chat::CompletionCreateParams::Modality] }, + -> { OpenAI::Internal::Type::ArrayOf[enum: OpenAI::Chat::CompletionCreateParams::Modality] }, nil?: true # @!attribute n @@ -171,8 +171,8 @@ class CompletionCreateParams < OpenAI::Internal::Type::BaseModel # Static predicted output content, such as the content of a text file that is # being regenerated. # - # @return [OpenAI::Models::Chat::ChatCompletionPredictionContent, nil] - optional :prediction, -> { OpenAI::Models::Chat::ChatCompletionPredictionContent }, nil?: true + # @return [OpenAI::Chat::ChatCompletionPredictionContent, nil] + optional :prediction, -> { OpenAI::Chat::ChatCompletionPredictionContent }, nil?: true # @!attribute presence_penalty # Number between -2.0 and 2.0. Positive values penalize new tokens based on @@ -190,8 +190,8 @@ class CompletionCreateParams < OpenAI::Internal::Type::BaseModel # supported values are `low`, `medium`, and `high`. Reducing reasoning effort can # result in faster responses and fewer tokens used on reasoning in a response. # - # @return [Symbol, OpenAI::Models::ReasoningEffort, nil] - optional :reasoning_effort, enum: -> { OpenAI::Models::ReasoningEffort }, nil?: true + # @return [Symbol, OpenAI::ReasoningEffort, nil] + optional :reasoning_effort, enum: -> { OpenAI::ReasoningEffort }, nil?: true # @!attribute response_format # An object specifying the format that the model must output. @@ -205,8 +205,8 @@ class CompletionCreateParams < OpenAI::Internal::Type::BaseModel # ensures the message the model generates is valid JSON. Using `json_schema` is # preferred for models that support it. # - # @return [OpenAI::Models::ResponseFormatText, OpenAI::Models::ResponseFormatJSONSchema, OpenAI::Models::ResponseFormatJSONObject, nil] - optional :response_format, union: -> { OpenAI::Models::Chat::CompletionCreateParams::ResponseFormat } + # @return [OpenAI::ResponseFormatText, OpenAI::ResponseFormatJSONSchema, OpenAI::ResponseFormatJSONObject, nil] + optional :response_format, union: -> { OpenAI::Chat::CompletionCreateParams::ResponseFormat } # @!attribute seed # This feature is in Beta. If specified, our system will make a best effort to @@ -237,8 +237,8 @@ class CompletionCreateParams < OpenAI::Internal::Type::BaseModel # When this parameter is set, the response body will include the `service_tier` # utilized. # - # @return [Symbol, OpenAI::Models::Chat::CompletionCreateParams::ServiceTier, nil] - optional :service_tier, enum: -> { OpenAI::Models::Chat::CompletionCreateParams::ServiceTier }, nil?: true + # @return [Symbol, OpenAI::Chat::CompletionCreateParams::ServiceTier, nil] + optional :service_tier, enum: -> { OpenAI::Chat::CompletionCreateParams::ServiceTier }, nil?: true # @!attribute stop # Not supported with latest reasoning models `o3` and `o4-mini`. @@ -247,7 +247,7 @@ class CompletionCreateParams < OpenAI::Internal::Type::BaseModel # returned text will not contain the stop sequence. # # @return [String, Array, nil] - optional :stop, union: -> { OpenAI::Models::Chat::CompletionCreateParams::Stop }, nil?: true + optional :stop, union: -> { OpenAI::Chat::CompletionCreateParams::Stop }, nil?: true # @!attribute store # Whether or not to store the output of this chat completion request for use in @@ -260,8 +260,8 @@ class CompletionCreateParams < OpenAI::Internal::Type::BaseModel # @!attribute stream_options # Options for streaming response. Only set this when you set `stream: true`. # - # @return [OpenAI::Models::Chat::ChatCompletionStreamOptions, nil] - optional :stream_options, -> { OpenAI::Models::Chat::ChatCompletionStreamOptions }, nil?: true + # @return [OpenAI::Chat::ChatCompletionStreamOptions, nil] + optional :stream_options, -> { OpenAI::Chat::ChatCompletionStreamOptions }, nil?: true # @!attribute temperature # What sampling temperature to use, between 0 and 2. Higher values like 0.8 will @@ -283,16 +283,16 @@ class CompletionCreateParams < OpenAI::Internal::Type::BaseModel # `none` is the default when no tools are present. `auto` is the default if tools # are present. # - # @return [Symbol, OpenAI::Models::Chat::ChatCompletionToolChoiceOption::Auto, OpenAI::Models::Chat::ChatCompletionNamedToolChoice, nil] - optional :tool_choice, union: -> { OpenAI::Models::Chat::ChatCompletionToolChoiceOption } + # @return [Symbol, OpenAI::Chat::ChatCompletionToolChoiceOption::Auto, OpenAI::Chat::ChatCompletionNamedToolChoice, nil] + optional :tool_choice, union: -> { OpenAI::Chat::ChatCompletionToolChoiceOption } # @!attribute tools # A list of tools the model may call. Currently, only functions are supported as a # tool. Use this to provide a list of functions the model may generate JSON inputs # for. A max of 128 functions are supported. # - # @return [Array, nil] - optional :tools, -> { OpenAI::Internal::Type::ArrayOf[OpenAI::Models::Chat::ChatCompletionTool] } + # @return [Array, nil] + optional :tools, -> { OpenAI::Internal::Type::ArrayOf[OpenAI::Chat::ChatCompletionTool] } # @!attribute top_logprobs # An integer between 0 and 20 specifying the number of most likely tokens to @@ -325,79 +325,72 @@ class CompletionCreateParams < OpenAI::Internal::Type::BaseModel # about the # [web search tool](https://platform.openai.com/docs/guides/tools-web-search?api-mode=chat). # - # @return [OpenAI::Models::Chat::CompletionCreateParams::WebSearchOptions, nil] - optional :web_search_options, -> { OpenAI::Models::Chat::CompletionCreateParams::WebSearchOptions } + # @return [OpenAI::Chat::CompletionCreateParams::WebSearchOptions, nil] + optional :web_search_options, -> { OpenAI::Chat::CompletionCreateParams::WebSearchOptions } # @!method initialize(messages:, model:, audio: nil, frequency_penalty: nil, function_call: nil, functions: nil, logit_bias: nil, logprobs: nil, max_completion_tokens: nil, max_tokens: nil, metadata: nil, modalities: nil, n: nil, parallel_tool_calls: nil, prediction: nil, presence_penalty: nil, reasoning_effort: nil, response_format: nil, seed: nil, service_tier: nil, stop: nil, store: nil, stream_options: nil, temperature: nil, tool_choice: nil, tools: nil, top_logprobs: nil, top_p: nil, user: nil, web_search_options: nil, request_options: {}) # Some parameter documentations has been truncated, see # {OpenAI::Models::Chat::CompletionCreateParams} for more details. # - # @param messages [Array] A list of messages comprising the conversation so far. Depending on the ... + # @param messages [Array] A list of messages comprising the conversation so far. Depending on the # - # @param model [String, Symbol, OpenAI::Models::ChatModel] Model ID used to generate the response, like `gpt-4o` or `o3`. OpenAI ... + # @param model [String, Symbol, OpenAI::ChatModel] Model ID used to generate the response, like `gpt-4o` or `o3`. OpenAI # - # @param audio [OpenAI::Models::Chat::ChatCompletionAudioParam, nil] Parameters for audio output. Required when audio output is requested with ... + # @param audio [OpenAI::Chat::ChatCompletionAudioParam, nil] Parameters for audio output. Required when audio output is requested with # - # @param frequency_penalty [Float, nil] Number between -2.0 and 2.0. Positive values penalize new tokens based on ... + # @param frequency_penalty [Float, nil] Number between -2.0 and 2.0. Positive values penalize new tokens based on # - # @param function_call [Symbol, OpenAI::Models::Chat::CompletionCreateParams::FunctionCall::FunctionCallMode, OpenAI::Models::Chat::ChatCompletionFunctionCallOption] Deprecated in favor of `tool_choice`. ... + # @param function_call [Symbol, OpenAI::Chat::CompletionCreateParams::FunctionCall::FunctionCallMode, OpenAI::Chat::ChatCompletionFunctionCallOption] Deprecated in favor of `tool_choice`. # - # @param functions [Array] Deprecated in favor of `tools`. ... + # @param functions [Array] Deprecated in favor of `tools`. # - # @param logit_bias [Hash{Symbol=>Integer}, nil] Modify the likelihood of specified tokens appearing in the completion. ... + # @param logit_bias [Hash{Symbol=>Integer}, nil] Modify the likelihood of specified tokens appearing in the completion. # - # @param logprobs [Boolean, nil] Whether to return log probabilities of the output tokens or not. If true, ... + # @param logprobs [Boolean, nil] Whether to return log probabilities of the output tokens or not. If true, # # @param max_completion_tokens [Integer, nil] An upper bound for the number of tokens that can be generated for a completion, - # ... # - # @param max_tokens [Integer, nil] The maximum number of [tokens](/tokenizer) that can be generated in the ... + # @param max_tokens [Integer, nil] The maximum number of [tokens](/tokenizer) that can be generated in the # - # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be # - # @param modalities [Array, nil] Output types that you would like the model to generate. ... + # @param modalities [Array, nil] Output types that you would like the model to generate. # # @param n [Integer, nil] How many chat completion choices to generate for each input message. Note that y - # ... # # @param parallel_tool_calls [Boolean] Whether to enable [parallel function calling](https://platform.openai.com/docs/g - # ... # - # @param prediction [OpenAI::Models::Chat::ChatCompletionPredictionContent, nil] Static predicted output content, such as the content of a text file that is ... + # @param prediction [OpenAI::Chat::ChatCompletionPredictionContent, nil] Static predicted output content, such as the content of a text file that is # - # @param presence_penalty [Float, nil] Number between -2.0 and 2.0. Positive values penalize new tokens based on ... + # @param presence_penalty [Float, nil] Number between -2.0 and 2.0. Positive values penalize new tokens based on # - # @param reasoning_effort [Symbol, OpenAI::Models::ReasoningEffort, nil] **o-series models only** ... + # @param reasoning_effort [Symbol, OpenAI::ReasoningEffort, nil] **o-series models only** # - # @param response_format [OpenAI::Models::ResponseFormatText, OpenAI::Models::ResponseFormatJSONSchema, OpenAI::Models::ResponseFormatJSONObject] An object specifying the format that the model must output. ... + # @param response_format [OpenAI::ResponseFormatText, OpenAI::ResponseFormatJSONSchema, OpenAI::ResponseFormatJSONObject] An object specifying the format that the model must output. # - # @param seed [Integer, nil] This feature is in Beta. ... + # @param seed [Integer, nil] This feature is in Beta. # - # @param service_tier [Symbol, OpenAI::Models::Chat::CompletionCreateParams::ServiceTier, nil] Specifies the latency tier to use for processing the request. This parameter is - # ... + # @param service_tier [Symbol, OpenAI::Chat::CompletionCreateParams::ServiceTier, nil] Specifies the latency tier to use for processing the request. This parameter is # - # @param stop [String, Array, nil] Not supported with latest reasoning models `o3` and `o4-mini`. ... + # @param stop [String, Array, nil] Not supported with latest reasoning models `o3` and `o4-mini`. # - # @param store [Boolean, nil] Whether or not to store the output of this chat completion request for ... + # @param store [Boolean, nil] Whether or not to store the output of this chat completion request for # - # @param stream_options [OpenAI::Models::Chat::ChatCompletionStreamOptions, nil] Options for streaming response. Only set this when you set `stream: true`. ... + # @param stream_options [OpenAI::Chat::ChatCompletionStreamOptions, nil] Options for streaming response. Only set this when you set `stream: true`. # # @param temperature [Float, nil] What sampling temperature to use, between 0 and 2. Higher values like 0.8 will m - # ... # - # @param tool_choice [Symbol, OpenAI::Models::Chat::ChatCompletionToolChoiceOption::Auto, OpenAI::Models::Chat::ChatCompletionNamedToolChoice] Controls which (if any) tool is called by the model. ... + # @param tool_choice [Symbol, OpenAI::Chat::ChatCompletionToolChoiceOption::Auto, OpenAI::Chat::ChatCompletionNamedToolChoice] Controls which (if any) tool is called by the model. # - # @param tools [Array] A list of tools the model may call. Currently, only functions are supported as a - # ... + # @param tools [Array] A list of tools the model may call. Currently, only functions are supported as a # - # @param top_logprobs [Integer, nil] An integer between 0 and 20 specifying the number of most likely tokens to ... + # @param top_logprobs [Integer, nil] An integer between 0 and 20 specifying the number of most likely tokens to # - # @param top_p [Float, nil] An alternative to sampling with temperature, called nucleus sampling, ... + # @param top_p [Float, nil] An alternative to sampling with temperature, called nucleus sampling, # # @param user [String] A unique identifier representing your end-user, which can help OpenAI to monitor - # ... # - # @param web_search_options [OpenAI::Models::Chat::CompletionCreateParams::WebSearchOptions] This tool searches the web for relevant results to use in a response. ... + # @param web_search_options [OpenAI::Chat::CompletionCreateParams::WebSearchOptions] This tool searches the web for relevant results to use in a response. # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] @@ -415,10 +408,10 @@ module Model # offers a wide range of models with different capabilities, performance # characteristics, and price points. Refer to the [model guide](https://platform.openai.com/docs/models) # to browse and compare available models. - variant enum: -> { OpenAI::Models::ChatModel } + variant enum: -> { OpenAI::ChatModel } # @!method self.variants - # @return [Array(String, Symbol, OpenAI::Models::ChatModel)] + # @return [Array(String, Symbol, OpenAI::ChatModel)] end # @deprecated @@ -441,10 +434,10 @@ module FunctionCall extend OpenAI::Internal::Type::Union # `none` means the model will not call a function and instead generates a message. `auto` means the model can pick between generating a message or calling a function. - variant enum: -> { OpenAI::Models::Chat::CompletionCreateParams::FunctionCall::FunctionCallMode } + variant enum: -> { OpenAI::Chat::CompletionCreateParams::FunctionCall::FunctionCallMode } # Specifying a particular function via `{"name": "my_function"}` forces the model to call that function. - variant -> { OpenAI::Models::Chat::ChatCompletionFunctionCallOption } + variant -> { OpenAI::Chat::ChatCompletionFunctionCallOption } # `none` means the model will not call a function and instead generates a message. # `auto` means the model can pick between generating a message or calling a @@ -460,7 +453,7 @@ module FunctionCallMode end # @!method self.variants - # @return [Array(Symbol, OpenAI::Models::Chat::CompletionCreateParams::FunctionCall::FunctionCallMode, OpenAI::Models::Chat::ChatCompletionFunctionCallOption)] + # @return [Array(Symbol, OpenAI::Chat::CompletionCreateParams::FunctionCall::FunctionCallMode, OpenAI::Chat::ChatCompletionFunctionCallOption)] end # @deprecated @@ -493,16 +486,13 @@ class Function < OpenAI::Internal::Type::BaseModel # @!method initialize(name:, description: nil, parameters: nil) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Chat::CompletionCreateParams::Function} for more details. + # {OpenAI::Chat::CompletionCreateParams::Function} for more details. # # @param name [String] The name of the function to be called. Must be a-z, A-Z, 0-9, or contain undersc - # ... # # @param description [String] A description of what the function does, used by the model to choose when and ho - # ... # # @param parameters [Hash{Symbol=>Object}] The parameters the functions accepts, described as a JSON Schema object. See the - # ... end module Modality @@ -529,20 +519,20 @@ module ResponseFormat extend OpenAI::Internal::Type::Union # Default response format. Used to generate text responses. - variant -> { OpenAI::Models::ResponseFormatText } + variant -> { OpenAI::ResponseFormatText } # JSON Schema response format. Used to generate structured JSON responses. # Learn more about [Structured Outputs](https://platform.openai.com/docs/guides/structured-outputs). - variant -> { OpenAI::Models::ResponseFormatJSONSchema } + variant -> { OpenAI::ResponseFormatJSONSchema } # JSON object response format. An older method of generating JSON responses. # Using `json_schema` is recommended for models that support it. Note that the # model will not generate JSON without a system or user message instructing it # to do so. - variant -> { OpenAI::Models::ResponseFormatJSONObject } + variant -> { OpenAI::ResponseFormatJSONObject } # @!method self.variants - # @return [Array(OpenAI::Models::ResponseFormatText, OpenAI::Models::ResponseFormatJSONSchema, OpenAI::Models::ResponseFormatJSONObject)] + # @return [Array(OpenAI::ResponseFormatText, OpenAI::ResponseFormatJSONSchema, OpenAI::ResponseFormatJSONObject)] end # Specifies the latency tier to use for processing the request. This parameter is @@ -582,7 +572,7 @@ module Stop variant String - variant -> { OpenAI::Models::Chat::CompletionCreateParams::Stop::StringArray } + variant -> { OpenAI::Chat::CompletionCreateParams::Stop::StringArray } # @!method self.variants # @return [Array(String, Array)] @@ -596,35 +586,34 @@ class WebSearchOptions < OpenAI::Internal::Type::BaseModel # High level guidance for the amount of context window space to use for the # search. One of `low`, `medium`, or `high`. `medium` is the default. # - # @return [Symbol, OpenAI::Models::Chat::CompletionCreateParams::WebSearchOptions::SearchContextSize, nil] + # @return [Symbol, OpenAI::Chat::CompletionCreateParams::WebSearchOptions::SearchContextSize, nil] optional :search_context_size, - enum: -> { OpenAI::Models::Chat::CompletionCreateParams::WebSearchOptions::SearchContextSize } + enum: -> { OpenAI::Chat::CompletionCreateParams::WebSearchOptions::SearchContextSize } # @!attribute user_location # Approximate location parameters for the search. # - # @return [OpenAI::Models::Chat::CompletionCreateParams::WebSearchOptions::UserLocation, nil] + # @return [OpenAI::Chat::CompletionCreateParams::WebSearchOptions::UserLocation, nil] optional :user_location, - -> { OpenAI::Models::Chat::CompletionCreateParams::WebSearchOptions::UserLocation }, + -> { OpenAI::Chat::CompletionCreateParams::WebSearchOptions::UserLocation }, nil?: true # @!method initialize(search_context_size: nil, user_location: nil) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Chat::CompletionCreateParams::WebSearchOptions} for more - # details. + # {OpenAI::Chat::CompletionCreateParams::WebSearchOptions} for more details. # # This tool searches the web for relevant results to use in a response. Learn more # about the # [web search tool](https://platform.openai.com/docs/guides/tools-web-search?api-mode=chat). # - # @param search_context_size [Symbol, OpenAI::Models::Chat::CompletionCreateParams::WebSearchOptions::SearchContextSize] High level guidance for the amount of context window space to use for the ... + # @param search_context_size [Symbol, OpenAI::Chat::CompletionCreateParams::WebSearchOptions::SearchContextSize] High level guidance for the amount of context window space to use for the # - # @param user_location [OpenAI::Models::Chat::CompletionCreateParams::WebSearchOptions::UserLocation, nil] Approximate location parameters for the search. ... + # @param user_location [OpenAI::Chat::CompletionCreateParams::WebSearchOptions::UserLocation, nil] Approximate location parameters for the search. # High level guidance for the amount of context window space to use for the # search. One of `low`, `medium`, or `high`. `medium` is the default. # - # @see OpenAI::Models::Chat::CompletionCreateParams::WebSearchOptions#search_context_size + # @see OpenAI::Chat::CompletionCreateParams::WebSearchOptions#search_context_size module SearchContextSize extend OpenAI::Internal::Type::Enum @@ -636,14 +625,14 @@ module SearchContextSize # @return [Array] end - # @see OpenAI::Models::Chat::CompletionCreateParams::WebSearchOptions#user_location + # @see OpenAI::Chat::CompletionCreateParams::WebSearchOptions#user_location class UserLocation < OpenAI::Internal::Type::BaseModel # @!attribute approximate # Approximate location parameters for the search. # - # @return [OpenAI::Models::Chat::CompletionCreateParams::WebSearchOptions::UserLocation::Approximate] + # @return [OpenAI::Chat::CompletionCreateParams::WebSearchOptions::UserLocation::Approximate] required :approximate, - -> { OpenAI::Models::Chat::CompletionCreateParams::WebSearchOptions::UserLocation::Approximate } + -> { OpenAI::Chat::CompletionCreateParams::WebSearchOptions::UserLocation::Approximate } # @!attribute type # The type of location approximation. Always `approximate`. @@ -653,16 +642,16 @@ class UserLocation < OpenAI::Internal::Type::BaseModel # @!method initialize(approximate:, type: :approximate) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Chat::CompletionCreateParams::WebSearchOptions::UserLocation} - # for more details. + # {OpenAI::Chat::CompletionCreateParams::WebSearchOptions::UserLocation} for more + # details. # # Approximate location parameters for the search. # - # @param approximate [OpenAI::Models::Chat::CompletionCreateParams::WebSearchOptions::UserLocation::Approximate] Approximate location parameters for the search. + # @param approximate [OpenAI::Chat::CompletionCreateParams::WebSearchOptions::UserLocation::Approximate] Approximate location parameters for the search. # - # @param type [Symbol, :approximate] The type of location approximation. Always `approximate`. ... + # @param type [Symbol, :approximate] The type of location approximation. Always `approximate`. - # @see OpenAI::Models::Chat::CompletionCreateParams::WebSearchOptions::UserLocation#approximate + # @see OpenAI::Chat::CompletionCreateParams::WebSearchOptions::UserLocation#approximate class Approximate < OpenAI::Internal::Type::BaseModel # @!attribute city # Free text input for the city of the user, e.g. `San Francisco`. @@ -692,18 +681,18 @@ class Approximate < OpenAI::Internal::Type::BaseModel # @!method initialize(city: nil, country: nil, region: nil, timezone: nil) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Chat::CompletionCreateParams::WebSearchOptions::UserLocation::Approximate} + # {OpenAI::Chat::CompletionCreateParams::WebSearchOptions::UserLocation::Approximate} # for more details. # # Approximate location parameters for the search. # - # @param city [String] Free text input for the city of the user, e.g. `San Francisco`. ... + # @param city [String] Free text input for the city of the user, e.g. `San Francisco`. # - # @param country [String] The two-letter ... + # @param country [String] The two-letter # - # @param region [String] Free text input for the region of the user, e.g. `California`. ... + # @param region [String] Free text input for the region of the user, e.g. `California`. # - # @param timezone [String] The [IANA timezone](https://timeapi.io/documentation/iana-timezones) ... + # @param timezone [String] The [IANA timezone](https://timeapi.io/documentation/iana-timezones) end end end diff --git a/lib/openai/models/chat/completion_list_params.rb b/lib/openai/models/chat/completion_list_params.rb index ea9cb4c5..b1f9e734 100644 --- a/lib/openai/models/chat/completion_list_params.rb +++ b/lib/openai/models/chat/completion_list_params.rb @@ -38,8 +38,8 @@ class CompletionListParams < OpenAI::Internal::Type::BaseModel # Sort order for Chat Completions by timestamp. Use `asc` for ascending order or # `desc` for descending order. Defaults to `asc`. # - # @return [Symbol, OpenAI::Models::Chat::CompletionListParams::Order, nil] - optional :order, enum: -> { OpenAI::Models::Chat::CompletionListParams::Order } + # @return [Symbol, OpenAI::Chat::CompletionListParams::Order, nil] + optional :order, enum: -> { OpenAI::Chat::CompletionListParams::Order } # @!method initialize(after: nil, limit: nil, metadata: nil, model: nil, order: nil, request_options: {}) # Some parameter documentations has been truncated, see @@ -49,12 +49,11 @@ class CompletionListParams < OpenAI::Internal::Type::BaseModel # # @param limit [Integer] Number of Chat Completions to retrieve. # - # @param metadata [Hash{Symbol=>String}, nil] A list of metadata keys to filter the Chat Completions by. Example: ... + # @param metadata [Hash{Symbol=>String}, nil] A list of metadata keys to filter the Chat Completions by. Example: # # @param model [String] The model used to generate the Chat Completions. # - # @param order [Symbol, OpenAI::Models::Chat::CompletionListParams::Order] Sort order for Chat Completions by timestamp. Use `asc` for ascending order or ` - # ... + # @param order [Symbol, OpenAI::Chat::CompletionListParams::Order] Sort order for Chat Completions by timestamp. Use `asc` for ascending order or ` # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] diff --git a/lib/openai/models/chat/completion_update_params.rb b/lib/openai/models/chat/completion_update_params.rb index 3c2e662d..c30b1a6b 100644 --- a/lib/openai/models/chat/completion_update_params.rb +++ b/lib/openai/models/chat/completion_update_params.rb @@ -23,7 +23,7 @@ class CompletionUpdateParams < OpenAI::Internal::Type::BaseModel # Some parameter documentations has been truncated, see # {OpenAI::Models::Chat::CompletionUpdateParams} for more details. # - # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] end diff --git a/lib/openai/models/chat/completions/message_list_params.rb b/lib/openai/models/chat/completions/message_list_params.rb index 775be46e..8292066a 100644 --- a/lib/openai/models/chat/completions/message_list_params.rb +++ b/lib/openai/models/chat/completions/message_list_params.rb @@ -25,8 +25,8 @@ class MessageListParams < OpenAI::Internal::Type::BaseModel # Sort order for messages by timestamp. Use `asc` for ascending order or `desc` # for descending order. Defaults to `asc`. # - # @return [Symbol, OpenAI::Models::Chat::Completions::MessageListParams::Order, nil] - optional :order, enum: -> { OpenAI::Models::Chat::Completions::MessageListParams::Order } + # @return [Symbol, OpenAI::Chat::Completions::MessageListParams::Order, nil] + optional :order, enum: -> { OpenAI::Chat::Completions::MessageListParams::Order } # @!method initialize(after: nil, limit: nil, order: nil, request_options: {}) # Some parameter documentations has been truncated, see @@ -36,8 +36,7 @@ class MessageListParams < OpenAI::Internal::Type::BaseModel # # @param limit [Integer] Number of messages to retrieve. # - # @param order [Symbol, OpenAI::Models::Chat::Completions::MessageListParams::Order] Sort order for messages by timestamp. Use `asc` for ascending order or `desc` fo - # ... + # @param order [Symbol, OpenAI::Chat::Completions::MessageListParams::Order] Sort order for messages by timestamp. Use `asc` for ascending order or `desc` fo # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] diff --git a/lib/openai/models/comparison_filter.rb b/lib/openai/models/comparison_filter.rb index 2969dedd..582e2f5a 100644 --- a/lib/openai/models/comparison_filter.rb +++ b/lib/openai/models/comparison_filter.rb @@ -19,29 +19,28 @@ class ComparisonFilter < OpenAI::Internal::Type::BaseModel # - `lt`: less than # - `lte`: less than or equal # - # @return [Symbol, OpenAI::Models::ComparisonFilter::Type] - required :type, enum: -> { OpenAI::Models::ComparisonFilter::Type } + # @return [Symbol, OpenAI::ComparisonFilter::Type] + required :type, enum: -> { OpenAI::ComparisonFilter::Type } # @!attribute value # The value to compare against the attribute key; supports string, number, or # boolean types. # # @return [String, Float, Boolean] - required :value, union: -> { OpenAI::Models::ComparisonFilter::Value } + required :value, union: -> { OpenAI::ComparisonFilter::Value } # @!method initialize(key:, type:, value:) - # Some parameter documentations has been truncated, see - # {OpenAI::Models::ComparisonFilter} for more details. + # Some parameter documentations has been truncated, see {OpenAI::ComparisonFilter} + # for more details. # # A filter used to compare a specified attribute key to a given value using a # defined comparison operation. # # @param key [String] The key to compare against the value. # - # @param type [Symbol, OpenAI::Models::ComparisonFilter::Type] Specifies the comparison operator: `eq`, `ne`, `gt`, `gte`, `lt`, `lte`. ... + # @param type [Symbol, OpenAI::ComparisonFilter::Type] Specifies the comparison operator: `eq`, `ne`, `gt`, `gte`, `lt`, `lte`. # # @param value [String, Float, Boolean] The value to compare against the attribute key; supports string, number, or bool - # ... # Specifies the comparison operator: `eq`, `ne`, `gt`, `gte`, `lt`, `lte`. # @@ -52,7 +51,7 @@ class ComparisonFilter < OpenAI::Internal::Type::BaseModel # - `lt`: less than # - `lte`: less than or equal # - # @see OpenAI::Models::ComparisonFilter#type + # @see OpenAI::ComparisonFilter#type module Type extend OpenAI::Internal::Type::Enum @@ -70,7 +69,7 @@ module Type # The value to compare against the attribute key; supports string, number, or # boolean types. # - # @see OpenAI::Models::ComparisonFilter#value + # @see OpenAI::ComparisonFilter#value module Value extend OpenAI::Internal::Type::Union diff --git a/lib/openai/models/completion.rb b/lib/openai/models/completion.rb index c493a5c5..8d33e0b0 100644 --- a/lib/openai/models/completion.rb +++ b/lib/openai/models/completion.rb @@ -15,8 +15,8 @@ class Completion < OpenAI::Internal::Type::BaseModel # @!attribute choices # The list of completion choices the model generated for the input prompt. # - # @return [Array] - required :choices, -> { OpenAI::Internal::Type::ArrayOf[OpenAI::Models::CompletionChoice] } + # @return [Array] + required :choices, -> { OpenAI::Internal::Type::ArrayOf[OpenAI::CompletionChoice] } # @!attribute created # The Unix timestamp (in seconds) of when the completion was created. @@ -48,28 +48,27 @@ class Completion < OpenAI::Internal::Type::BaseModel # @!attribute usage # Usage statistics for the completion request. # - # @return [OpenAI::Models::CompletionUsage, nil] - optional :usage, -> { OpenAI::Models::CompletionUsage } + # @return [OpenAI::CompletionUsage, nil] + optional :usage, -> { OpenAI::CompletionUsage } # @!method initialize(id:, choices:, created:, model:, system_fingerprint: nil, usage: nil, object: :text_completion) - # Some parameter documentations has been truncated, see - # {OpenAI::Models::Completion} for more details. + # Some parameter documentations has been truncated, see {OpenAI::Completion} for + # more details. # # Represents a completion response from the API. Note: both the streamed and # non-streamed response objects share the same shape (unlike the chat endpoint). # # @param id [String] A unique identifier for the completion. # - # @param choices [Array] The list of completion choices the model generated for the input prompt. + # @param choices [Array] The list of completion choices the model generated for the input prompt. # # @param created [Integer] The Unix timestamp (in seconds) of when the completion was created. # # @param model [String] The model used for completion. # # @param system_fingerprint [String] This fingerprint represents the backend configuration that the model runs with. - # ... # - # @param usage [OpenAI::Models::CompletionUsage] Usage statistics for the completion request. + # @param usage [OpenAI::CompletionUsage] Usage statistics for the completion request. # # @param object [Symbol, :text_completion] The object type, which is always "text_completion" end diff --git a/lib/openai/models/completion_choice.rb b/lib/openai/models/completion_choice.rb index 5bca4663..c2a91320 100644 --- a/lib/openai/models/completion_choice.rb +++ b/lib/openai/models/completion_choice.rb @@ -9,8 +9,8 @@ class CompletionChoice < OpenAI::Internal::Type::BaseModel # number of tokens specified in the request was reached, or `content_filter` if # content was omitted due to a flag from our content filters. # - # @return [Symbol, OpenAI::Models::CompletionChoice::FinishReason] - required :finish_reason, enum: -> { OpenAI::Models::CompletionChoice::FinishReason } + # @return [Symbol, OpenAI::CompletionChoice::FinishReason] + required :finish_reason, enum: -> { OpenAI::CompletionChoice::FinishReason } # @!attribute index # @@ -19,8 +19,8 @@ class CompletionChoice < OpenAI::Internal::Type::BaseModel # @!attribute logprobs # - # @return [OpenAI::Models::CompletionChoice::Logprobs, nil] - required :logprobs, -> { OpenAI::Models::CompletionChoice::Logprobs }, nil?: true + # @return [OpenAI::CompletionChoice::Logprobs, nil] + required :logprobs, -> { OpenAI::CompletionChoice::Logprobs }, nil?: true # @!attribute text # @@ -28,15 +28,14 @@ class CompletionChoice < OpenAI::Internal::Type::BaseModel required :text, String # @!method initialize(finish_reason:, index:, logprobs:, text:) - # Some parameter documentations has been truncated, see - # {OpenAI::Models::CompletionChoice} for more details. + # Some parameter documentations has been truncated, see {OpenAI::CompletionChoice} + # for more details. # - # @param finish_reason [Symbol, OpenAI::Models::CompletionChoice::FinishReason] The reason the model stopped generating tokens. This will be `stop` if the model - # ... + # @param finish_reason [Symbol, OpenAI::CompletionChoice::FinishReason] The reason the model stopped generating tokens. This will be `stop` if the model # # @param index [Integer] # - # @param logprobs [OpenAI::Models::CompletionChoice::Logprobs, nil] + # @param logprobs [OpenAI::CompletionChoice::Logprobs, nil] # # @param text [String] @@ -45,7 +44,7 @@ class CompletionChoice < OpenAI::Internal::Type::BaseModel # number of tokens specified in the request was reached, or `content_filter` if # content was omitted due to a flag from our content filters. # - # @see OpenAI::Models::CompletionChoice#finish_reason + # @see OpenAI::CompletionChoice#finish_reason module FinishReason extend OpenAI::Internal::Type::Enum @@ -57,7 +56,7 @@ module FinishReason # @return [Array] end - # @see OpenAI::Models::CompletionChoice#logprobs + # @see OpenAI::CompletionChoice#logprobs class Logprobs < OpenAI::Internal::Type::BaseModel # @!attribute text_offset # diff --git a/lib/openai/models/completion_create_params.rb b/lib/openai/models/completion_create_params.rb index d397fba1..075f9d95 100644 --- a/lib/openai/models/completion_create_params.rb +++ b/lib/openai/models/completion_create_params.rb @@ -16,8 +16,8 @@ class CompletionCreateParams < OpenAI::Internal::Type::BaseModel # [Model overview](https://platform.openai.com/docs/models) for descriptions of # them. # - # @return [String, Symbol, OpenAI::Models::CompletionCreateParams::Model] - required :model, union: -> { OpenAI::Models::CompletionCreateParams::Model } + # @return [String, Symbol, OpenAI::CompletionCreateParams::Model] + required :model, union: -> { OpenAI::CompletionCreateParams::Model } # @!attribute prompt # The prompt(s) to generate completions for, encoded as a string, array of @@ -28,7 +28,7 @@ class CompletionCreateParams < OpenAI::Internal::Type::BaseModel # beginning of a new document. # # @return [String, Array, Array, Array>, nil] - required :prompt, union: -> { OpenAI::Models::CompletionCreateParams::Prompt }, nil?: true + required :prompt, union: -> { OpenAI::CompletionCreateParams::Prompt }, nil?: true # @!attribute best_of # Generates `best_of` completions server-side and returns the "best" (the one with @@ -138,13 +138,13 @@ class CompletionCreateParams < OpenAI::Internal::Type::BaseModel # returned text will not contain the stop sequence. # # @return [String, Array, nil] - optional :stop, union: -> { OpenAI::Models::CompletionCreateParams::Stop }, nil?: true + optional :stop, union: -> { OpenAI::CompletionCreateParams::Stop }, nil?: true # @!attribute stream_options # Options for streaming response. Only set this when you set `stream: true`. # - # @return [OpenAI::Models::Chat::ChatCompletionStreamOptions, nil] - optional :stream_options, -> { OpenAI::Models::Chat::ChatCompletionStreamOptions }, nil?: true + # @return [OpenAI::Chat::ChatCompletionStreamOptions, nil] + optional :stream_options, -> { OpenAI::Chat::ChatCompletionStreamOptions }, nil?: true # @!attribute suffix # The suffix that comes after a completion of inserted text. @@ -186,50 +186,39 @@ class CompletionCreateParams < OpenAI::Internal::Type::BaseModel # Some parameter documentations has been truncated, see # {OpenAI::Models::CompletionCreateParams} for more details. # - # @param model [String, Symbol, OpenAI::Models::CompletionCreateParams::Model] ID of the model to use. You can use the [List models](https://platform.openai.co - # ... + # @param model [String, Symbol, OpenAI::CompletionCreateParams::Model] ID of the model to use. You can use the [List models](https://platform.openai.co # # @param prompt [String, Array, Array, Array>, nil] The prompt(s) to generate completions for, encoded as a string, array of strings - # ... # # @param best_of [Integer, nil] Generates `best_of` completions server-side and returns the "best" (the one with - # ... # - # @param echo [Boolean, nil] Echo back the prompt in addition to the completion ... + # @param echo [Boolean, nil] Echo back the prompt in addition to the completion # # @param frequency_penalty [Float, nil] Number between -2.0 and 2.0. Positive values penalize new tokens based on their - # ... # - # @param logit_bias [Hash{Symbol=>Integer}, nil] Modify the likelihood of specified tokens appearing in the completion. ... + # @param logit_bias [Hash{Symbol=>Integer}, nil] Modify the likelihood of specified tokens appearing in the completion. # # @param logprobs [Integer, nil] Include the log probabilities on the `logprobs` most likely output tokens, as we - # ... # # @param max_tokens [Integer, nil] The maximum number of [tokens](/tokenizer) that can be generated in the completi - # ... # - # @param n [Integer, nil] How many completions to generate for each prompt. ... + # @param n [Integer, nil] How many completions to generate for each prompt. # # @param presence_penalty [Float, nil] Number between -2.0 and 2.0. Positive values penalize new tokens based on whethe - # ... # # @param seed [Integer, nil] If specified, our system will make a best effort to sample deterministically, su - # ... # - # @param stop [String, Array, nil] Not supported with latest reasoning models `o3` and `o4-mini`. ... + # @param stop [String, Array, nil] Not supported with latest reasoning models `o3` and `o4-mini`. # - # @param stream_options [OpenAI::Models::Chat::ChatCompletionStreamOptions, nil] Options for streaming response. Only set this when you set `stream: true`. ... + # @param stream_options [OpenAI::Chat::ChatCompletionStreamOptions, nil] Options for streaming response. Only set this when you set `stream: true`. # - # @param suffix [String, nil] The suffix that comes after a completion of inserted text. ... + # @param suffix [String, nil] The suffix that comes after a completion of inserted text. # # @param temperature [Float, nil] What sampling temperature to use, between 0 and 2. Higher values like 0.8 will m - # ... # # @param top_p [Float, nil] An alternative to sampling with temperature, called nucleus sampling, where the - # ... # # @param user [String] A unique identifier representing your end-user, which can help OpenAI to monitor - # ... # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] @@ -243,11 +232,11 @@ module Model variant String - variant const: -> { OpenAI::Models::CompletionCreateParams::Model::GPT_3_5_TURBO_INSTRUCT } + variant const: -> { OpenAI::CompletionCreateParams::Model::GPT_3_5_TURBO_INSTRUCT } - variant const: -> { OpenAI::Models::CompletionCreateParams::Model::DAVINCI_002 } + variant const: -> { OpenAI::CompletionCreateParams::Model::DAVINCI_002 } - variant const: -> { OpenAI::Models::CompletionCreateParams::Model::BABBAGE_002 } + variant const: -> { OpenAI::CompletionCreateParams::Model::BABBAGE_002 } # @!method self.variants # @return [Array(String, Symbol)] @@ -272,11 +261,11 @@ module Prompt variant String - variant -> { OpenAI::Models::CompletionCreateParams::Prompt::StringArray } + variant -> { OpenAI::CompletionCreateParams::Prompt::StringArray } - variant -> { OpenAI::Models::CompletionCreateParams::Prompt::IntegerArray } + variant -> { OpenAI::CompletionCreateParams::Prompt::IntegerArray } - variant -> { OpenAI::Models::CompletionCreateParams::Prompt::ArrayOfToken2DArray } + variant -> { OpenAI::CompletionCreateParams::Prompt::ArrayOfToken2DArray } # @!method self.variants # @return [Array(String, Array, Array, Array>)] @@ -300,7 +289,7 @@ module Stop variant String - variant -> { OpenAI::Models::CompletionCreateParams::Stop::StringArray } + variant -> { OpenAI::CompletionCreateParams::Stop::StringArray } # @!method self.variants # @return [Array(String, Array)] diff --git a/lib/openai/models/completion_usage.rb b/lib/openai/models/completion_usage.rb index defd2f03..202f9218 100644 --- a/lib/openai/models/completion_usage.rb +++ b/lib/openai/models/completion_usage.rb @@ -24,14 +24,14 @@ class CompletionUsage < OpenAI::Internal::Type::BaseModel # @!attribute completion_tokens_details # Breakdown of tokens used in a completion. # - # @return [OpenAI::Models::CompletionUsage::CompletionTokensDetails, nil] - optional :completion_tokens_details, -> { OpenAI::Models::CompletionUsage::CompletionTokensDetails } + # @return [OpenAI::CompletionUsage::CompletionTokensDetails, nil] + optional :completion_tokens_details, -> { OpenAI::CompletionUsage::CompletionTokensDetails } # @!attribute prompt_tokens_details # Breakdown of tokens used in the prompt. # - # @return [OpenAI::Models::CompletionUsage::PromptTokensDetails, nil] - optional :prompt_tokens_details, -> { OpenAI::Models::CompletionUsage::PromptTokensDetails } + # @return [OpenAI::CompletionUsage::PromptTokensDetails, nil] + optional :prompt_tokens_details, -> { OpenAI::CompletionUsage::PromptTokensDetails } # @!method initialize(completion_tokens:, prompt_tokens:, total_tokens:, completion_tokens_details: nil, prompt_tokens_details: nil) # Usage statistics for the completion request. @@ -42,11 +42,11 @@ class CompletionUsage < OpenAI::Internal::Type::BaseModel # # @param total_tokens [Integer] Total number of tokens used in the request (prompt + completion). # - # @param completion_tokens_details [OpenAI::Models::CompletionUsage::CompletionTokensDetails] Breakdown of tokens used in a completion. + # @param completion_tokens_details [OpenAI::CompletionUsage::CompletionTokensDetails] Breakdown of tokens used in a completion. # - # @param prompt_tokens_details [OpenAI::Models::CompletionUsage::PromptTokensDetails] Breakdown of tokens used in the prompt. + # @param prompt_tokens_details [OpenAI::CompletionUsage::PromptTokensDetails] Breakdown of tokens used in the prompt. - # @see OpenAI::Models::CompletionUsage#completion_tokens_details + # @see OpenAI::CompletionUsage#completion_tokens_details class CompletionTokensDetails < OpenAI::Internal::Type::BaseModel # @!attribute accepted_prediction_tokens # When using Predicted Outputs, the number of tokens in the prediction that @@ -78,20 +78,20 @@ class CompletionTokensDetails < OpenAI::Internal::Type::BaseModel # @!method initialize(accepted_prediction_tokens: nil, audio_tokens: nil, reasoning_tokens: nil, rejected_prediction_tokens: nil) # Some parameter documentations has been truncated, see - # {OpenAI::Models::CompletionUsage::CompletionTokensDetails} for more details. + # {OpenAI::CompletionUsage::CompletionTokensDetails} for more details. # # Breakdown of tokens used in a completion. # - # @param accepted_prediction_tokens [Integer] When using Predicted Outputs, the number of tokens in the ... + # @param accepted_prediction_tokens [Integer] When using Predicted Outputs, the number of tokens in the # # @param audio_tokens [Integer] Audio input tokens generated by the model. # # @param reasoning_tokens [Integer] Tokens generated by the model for reasoning. # - # @param rejected_prediction_tokens [Integer] When using Predicted Outputs, the number of tokens in the ... + # @param rejected_prediction_tokens [Integer] When using Predicted Outputs, the number of tokens in the end - # @see OpenAI::Models::CompletionUsage#prompt_tokens_details + # @see OpenAI::CompletionUsage#prompt_tokens_details class PromptTokensDetails < OpenAI::Internal::Type::BaseModel # @!attribute audio_tokens # Audio input tokens present in the prompt. diff --git a/lib/openai/models/compound_filter.rb b/lib/openai/models/compound_filter.rb index 9dc2a93d..8bfaf4d2 100644 --- a/lib/openai/models/compound_filter.rb +++ b/lib/openai/models/compound_filter.rb @@ -7,25 +7,24 @@ class CompoundFilter < OpenAI::Internal::Type::BaseModel # Array of filters to combine. Items can be `ComparisonFilter` or # `CompoundFilter`. # - # @return [Array] - required :filters, -> { OpenAI::Internal::Type::ArrayOf[union: OpenAI::Models::CompoundFilter::Filter] } + # @return [Array] + required :filters, -> { OpenAI::Internal::Type::ArrayOf[union: OpenAI::CompoundFilter::Filter] } # @!attribute type # Type of operation: `and` or `or`. # - # @return [Symbol, OpenAI::Models::CompoundFilter::Type] - required :type, enum: -> { OpenAI::Models::CompoundFilter::Type } + # @return [Symbol, OpenAI::CompoundFilter::Type] + required :type, enum: -> { OpenAI::CompoundFilter::Type } # @!method initialize(filters:, type:) - # Some parameter documentations has been truncated, see - # {OpenAI::Models::CompoundFilter} for more details. + # Some parameter documentations has been truncated, see {OpenAI::CompoundFilter} + # for more details. # # Combine multiple filters using `and` or `or`. # - # @param filters [Array] Array of filters to combine. Items can be `ComparisonFilter` or `CompoundFilter` - # ... + # @param filters [Array] Array of filters to combine. Items can be `ComparisonFilter` or `CompoundFilter` # - # @param type [Symbol, OpenAI::Models::CompoundFilter::Type] Type of operation: `and` or `or`. + # @param type [Symbol, OpenAI::CompoundFilter::Type] Type of operation: `and` or `or`. # A filter used to compare a specified attribute key to a given value using a # defined comparison operation. @@ -33,17 +32,17 @@ module Filter extend OpenAI::Internal::Type::Union # A filter used to compare a specified attribute key to a given value using a defined comparison operation. - variant -> { OpenAI::Models::ComparisonFilter } + variant -> { OpenAI::ComparisonFilter } variant OpenAI::Internal::Type::Unknown # @!method self.variants - # @return [Array(OpenAI::Models::ComparisonFilter, Object)] + # @return [Array(OpenAI::ComparisonFilter, Object)] end # Type of operation: `and` or `or`. # - # @see OpenAI::Models::CompoundFilter#type + # @see OpenAI::CompoundFilter#type module Type extend OpenAI::Internal::Type::Enum diff --git a/lib/openai/models/create_embedding_response.rb b/lib/openai/models/create_embedding_response.rb index e1030791..ec420899 100644 --- a/lib/openai/models/create_embedding_response.rb +++ b/lib/openai/models/create_embedding_response.rb @@ -7,8 +7,8 @@ class CreateEmbeddingResponse < OpenAI::Internal::Type::BaseModel # @!attribute data # The list of embeddings generated by the model. # - # @return [Array] - required :data, -> { OpenAI::Internal::Type::ArrayOf[OpenAI::Models::Embedding] } + # @return [Array] + required :data, -> { OpenAI::Internal::Type::ArrayOf[OpenAI::Embedding] } # @!attribute model # The name of the model used to generate the embedding. @@ -25,19 +25,19 @@ class CreateEmbeddingResponse < OpenAI::Internal::Type::BaseModel # @!attribute usage # The usage information for the request. # - # @return [OpenAI::Models::CreateEmbeddingResponse::Usage] - required :usage, -> { OpenAI::Models::CreateEmbeddingResponse::Usage } + # @return [OpenAI::CreateEmbeddingResponse::Usage] + required :usage, -> { OpenAI::CreateEmbeddingResponse::Usage } # @!method initialize(data:, model:, usage:, object: :list) - # @param data [Array] The list of embeddings generated by the model. + # @param data [Array] The list of embeddings generated by the model. # # @param model [String] The name of the model used to generate the embedding. # - # @param usage [OpenAI::Models::CreateEmbeddingResponse::Usage] The usage information for the request. + # @param usage [OpenAI::CreateEmbeddingResponse::Usage] The usage information for the request. # # @param object [Symbol, :list] The object type, which is always "list". - # @see OpenAI::Models::CreateEmbeddingResponse#usage + # @see OpenAI::CreateEmbeddingResponse#usage class Usage < OpenAI::Internal::Type::BaseModel # @!attribute prompt_tokens # The number of tokens used by the prompt. diff --git a/lib/openai/models/embedding.rb b/lib/openai/models/embedding.rb index 41792b3d..6f8e6de3 100644 --- a/lib/openai/models/embedding.rb +++ b/lib/openai/models/embedding.rb @@ -24,13 +24,12 @@ class Embedding < OpenAI::Internal::Type::BaseModel required :object, const: :embedding # @!method initialize(embedding:, index:, object: :embedding) - # Some parameter documentations has been truncated, see - # {OpenAI::Models::Embedding} for more details. + # Some parameter documentations has been truncated, see {OpenAI::Embedding} for + # more details. # # Represents an embedding vector returned by embedding endpoint. # # @param embedding [Array] The embedding vector, which is a list of floats. The length of vector depends on - # ... # # @param index [Integer] The index of the embedding in the list of embeddings. # diff --git a/lib/openai/models/embedding_create_params.rb b/lib/openai/models/embedding_create_params.rb index bff4d83f..48890276 100644 --- a/lib/openai/models/embedding_create_params.rb +++ b/lib/openai/models/embedding_create_params.rb @@ -18,7 +18,7 @@ class EmbeddingCreateParams < OpenAI::Internal::Type::BaseModel # tokens summed across inputs. # # @return [String, Array, Array, Array>] - required :input, union: -> { OpenAI::Models::EmbeddingCreateParams::Input } + required :input, union: -> { OpenAI::EmbeddingCreateParams::Input } # @!attribute model # ID of the model to use. You can use the @@ -27,8 +27,8 @@ class EmbeddingCreateParams < OpenAI::Internal::Type::BaseModel # [Model overview](https://platform.openai.com/docs/models) for descriptions of # them. # - # @return [String, Symbol, OpenAI::Models::EmbeddingModel] - required :model, union: -> { OpenAI::Models::EmbeddingCreateParams::Model } + # @return [String, Symbol, OpenAI::EmbeddingModel] + required :model, union: -> { OpenAI::EmbeddingCreateParams::Model } # @!attribute dimensions # The number of dimensions the resulting output embeddings should have. Only @@ -41,8 +41,8 @@ class EmbeddingCreateParams < OpenAI::Internal::Type::BaseModel # The format to return the embeddings in. Can be either `float` or # [`base64`](https://pypi.org/project/pybase64/). # - # @return [Symbol, OpenAI::Models::EmbeddingCreateParams::EncodingFormat, nil] - optional :encoding_format, enum: -> { OpenAI::Models::EmbeddingCreateParams::EncodingFormat } + # @return [Symbol, OpenAI::EmbeddingCreateParams::EncodingFormat, nil] + optional :encoding_format, enum: -> { OpenAI::EmbeddingCreateParams::EncodingFormat } # @!attribute user # A unique identifier representing your end-user, which can help OpenAI to monitor @@ -57,19 +57,14 @@ class EmbeddingCreateParams < OpenAI::Internal::Type::BaseModel # {OpenAI::Models::EmbeddingCreateParams} for more details. # # @param input [String, Array, Array, Array>] Input text to embed, encoded as a string or array of tokens. To embed multiple i - # ... # - # @param model [String, Symbol, OpenAI::Models::EmbeddingModel] ID of the model to use. You can use the [List models](https://platform.openai.co - # ... + # @param model [String, Symbol, OpenAI::EmbeddingModel] ID of the model to use. You can use the [List models](https://platform.openai.co # # @param dimensions [Integer] The number of dimensions the resulting output embeddings should have. Only suppo - # ... # - # @param encoding_format [Symbol, OpenAI::Models::EmbeddingCreateParams::EncodingFormat] The format to return the embeddings in. Can be either `float` or [`base64`](http - # ... + # @param encoding_format [Symbol, OpenAI::EmbeddingCreateParams::EncodingFormat] The format to return the embeddings in. Can be either `float` or [`base64`](http # # @param user [String] A unique identifier representing your end-user, which can help OpenAI to monitor - # ... # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] @@ -88,13 +83,13 @@ module Input variant String # The array of strings that will be turned into an embedding. - variant -> { OpenAI::Models::EmbeddingCreateParams::Input::StringArray } + variant -> { OpenAI::EmbeddingCreateParams::Input::StringArray } # The array of integers that will be turned into an embedding. - variant -> { OpenAI::Models::EmbeddingCreateParams::Input::IntegerArray } + variant -> { OpenAI::EmbeddingCreateParams::Input::IntegerArray } # The array of arrays containing integers that will be turned into an embedding. - variant -> { OpenAI::Models::EmbeddingCreateParams::Input::ArrayOfToken2DArray } + variant -> { OpenAI::EmbeddingCreateParams::Input::ArrayOfToken2DArray } # @!method self.variants # @return [Array(String, Array, Array, Array>)] @@ -120,10 +115,10 @@ module Model variant String # ID of the model to use. You can use the [List models](https://platform.openai.com/docs/api-reference/models/list) API to see all of your available models, or see our [Model overview](https://platform.openai.com/docs/models) for descriptions of them. - variant enum: -> { OpenAI::Models::EmbeddingModel } + variant enum: -> { OpenAI::EmbeddingModel } # @!method self.variants - # @return [Array(String, Symbol, OpenAI::Models::EmbeddingModel)] + # @return [Array(String, Symbol, OpenAI::EmbeddingModel)] end # The format to return the embeddings in. Can be either `float` or diff --git a/lib/openai/models/eval_create_params.rb b/lib/openai/models/eval_create_params.rb index 8f14b19f..91a2a00f 100644 --- a/lib/openai/models/eval_create_params.rb +++ b/lib/openai/models/eval_create_params.rb @@ -10,15 +10,15 @@ class EvalCreateParams < OpenAI::Internal::Type::BaseModel # @!attribute data_source_config # The configuration for the data source used for the evaluation runs. # - # @return [OpenAI::Models::EvalCreateParams::DataSourceConfig::Custom, OpenAI::Models::EvalCreateParams::DataSourceConfig::Logs] - required :data_source_config, union: -> { OpenAI::Models::EvalCreateParams::DataSourceConfig } + # @return [OpenAI::EvalCreateParams::DataSourceConfig::Custom, OpenAI::EvalCreateParams::DataSourceConfig::Logs] + required :data_source_config, union: -> { OpenAI::EvalCreateParams::DataSourceConfig } # @!attribute testing_criteria # A list of graders for all eval runs in this group. # - # @return [Array] + # @return [Array] required :testing_criteria, - -> { OpenAI::Internal::Type::ArrayOf[union: OpenAI::Models::EvalCreateParams::TestingCriterion] } + -> { OpenAI::Internal::Type::ArrayOf[union: OpenAI::EvalCreateParams::TestingCriterion] } # @!attribute metadata # Set of 16 key-value pairs that can be attached to an object. This can be useful @@ -41,11 +41,11 @@ class EvalCreateParams < OpenAI::Internal::Type::BaseModel # Some parameter documentations has been truncated, see # {OpenAI::Models::EvalCreateParams} for more details. # - # @param data_source_config [OpenAI::Models::EvalCreateParams::DataSourceConfig::Custom, OpenAI::Models::EvalCreateParams::DataSourceConfig::Logs] The configuration for the data source used for the evaluation runs. + # @param data_source_config [OpenAI::EvalCreateParams::DataSourceConfig::Custom, OpenAI::EvalCreateParams::DataSourceConfig::Logs] The configuration for the data source used for the evaluation runs. # - # @param testing_criteria [Array] A list of graders for all eval runs in this group. + # @param testing_criteria [Array] A list of graders for all eval runs in this group. # - # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be # # @param name [String] The name of the evaluation. # @@ -61,11 +61,11 @@ module DataSourceConfig # This schema is used to define the shape of the data that will be: # - Used to define your testing criteria and # - What data is required when creating a run - variant :custom, -> { OpenAI::Models::EvalCreateParams::DataSourceConfig::Custom } + variant :custom, -> { OpenAI::EvalCreateParams::DataSourceConfig::Custom } # A data source config which specifies the metadata property of your stored completions query. # This is usually metadata like `usecase=chatbot` or `prompt-version=v2`, etc. - variant :logs, -> { OpenAI::Models::EvalCreateParams::DataSourceConfig::Logs } + variant :logs, -> { OpenAI::EvalCreateParams::DataSourceConfig::Logs } class Custom < OpenAI::Internal::Type::BaseModel # @!attribute item_schema @@ -89,7 +89,7 @@ class Custom < OpenAI::Internal::Type::BaseModel # @!method initialize(item_schema:, include_sample_schema: nil, type: :custom) # Some parameter documentations has been truncated, see - # {OpenAI::Models::EvalCreateParams::DataSourceConfig::Custom} for more details. + # {OpenAI::EvalCreateParams::DataSourceConfig::Custom} for more details. # # A CustomDataSourceConfig object that defines the schema for the data source used # for the evaluation runs. This schema is used to define the shape of the data @@ -101,7 +101,6 @@ class Custom < OpenAI::Internal::Type::BaseModel # @param item_schema [Hash{Symbol=>Object}] The json schema for each row in the data source. # # @param include_sample_schema [Boolean] Whether the eval should expect you to populate the sample namespace (ie, by gene - # ... # # @param type [Symbol, :custom] The type of data source. Always `custom`. end @@ -130,7 +129,7 @@ class Logs < OpenAI::Internal::Type::BaseModel end # @!method self.variants - # @return [Array(OpenAI::Models::EvalCreateParams::DataSourceConfig::Custom, OpenAI::Models::EvalCreateParams::DataSourceConfig::Logs)] + # @return [Array(OpenAI::EvalCreateParams::DataSourceConfig::Custom, OpenAI::EvalCreateParams::DataSourceConfig::Logs)] end # A LabelModelGrader object which uses a model to assign labels to each item in @@ -142,28 +141,30 @@ module TestingCriterion # A LabelModelGrader object which uses a model to assign labels to each item # in the evaluation. - variant :label_model, -> { OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel } + variant :label_model, -> { OpenAI::EvalCreateParams::TestingCriterion::LabelModel } # A StringCheckGrader object that performs a string comparison between input and reference using a specified operation. - variant :string_check, -> { OpenAI::Models::EvalStringCheckGrader } + variant :string_check, -> { OpenAI::EvalStringCheckGrader } # A TextSimilarityGrader object which grades text based on similarity metrics. - variant :text_similarity, -> { OpenAI::Models::EvalTextSimilarityGrader } + variant :text_similarity, -> { OpenAI::EvalTextSimilarityGrader } # A PythonGrader object that runs a python script on the input. - variant :python, -> { OpenAI::Models::EvalCreateParams::TestingCriterion::Python } + variant :python, -> { OpenAI::EvalCreateParams::TestingCriterion::Python } # A ScoreModelGrader object that uses a model to assign a score to the input. - variant :score_model, -> { OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel } + variant :score_model, -> { OpenAI::EvalCreateParams::TestingCriterion::ScoreModel } class LabelModel < OpenAI::Internal::Type::BaseModel # @!attribute input # A list of chat messages forming the prompt or context. May include variable # references to the "item" namespace, ie {{item.name}}. # - # @return [Array] + # @return [Array] required :input, - -> { OpenAI::Internal::Type::ArrayOf[union: OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input] } + -> { + OpenAI::Internal::Type::ArrayOf[union: OpenAI::EvalCreateParams::TestingCriterion::LabelModel::Input] + } # @!attribute labels # The labels to classify to each item in the evaluation. @@ -197,14 +198,12 @@ class LabelModel < OpenAI::Internal::Type::BaseModel # @!method initialize(input:, labels:, model:, name:, passing_labels:, type: :label_model) # Some parameter documentations has been truncated, see - # {OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel} for more - # details. + # {OpenAI::EvalCreateParams::TestingCriterion::LabelModel} for more details. # # A LabelModelGrader object which uses a model to assign labels to each item in # the evaluation. # - # @param input [Array] A list of chat messages forming the prompt or context. May include variable refe - # ... + # @param input [Array] A list of chat messages forming the prompt or context. May include variable refe # # @param labels [Array] The labels to classify to each item in the evaluation. # @@ -221,14 +220,14 @@ class LabelModel < OpenAI::Internal::Type::BaseModel module Input extend OpenAI::Internal::Type::Union - variant -> { OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::SimpleInputMessage } + variant -> { OpenAI::EvalCreateParams::TestingCriterion::LabelModel::Input::SimpleInputMessage } # A message input to the model with a role indicating instruction following # hierarchy. Instructions given with the `developer` or `system` role take # precedence over instructions given with the `user` role. Messages with the # `assistant` role are presumed to have been generated by the model in previous # interactions. - variant -> { OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem } + variant -> { OpenAI::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem } class SimpleInputMessage < OpenAI::Internal::Type::BaseModel # @!attribute content @@ -253,29 +252,35 @@ class EvalItem < OpenAI::Internal::Type::BaseModel # @!attribute content # Text inputs to the model - can contain template strings. # - # @return [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::Content::OutputText] + # @return [String, OpenAI::Responses::ResponseInputText, OpenAI::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::Content::OutputText] required :content, - union: -> { OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::Content } + union: -> { + OpenAI::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::Content + } # @!attribute role # The role of the message input. One of `user`, `assistant`, `system`, or # `developer`. # - # @return [Symbol, OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::Role] + # @return [Symbol, OpenAI::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::Role] required :role, - enum: -> { OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::Role } + enum: -> { + OpenAI::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::Role + } # @!attribute type # The type of the message input. Always `message`. # - # @return [Symbol, OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::Type, nil] + # @return [Symbol, OpenAI::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::Type, nil] optional :type, - enum: -> { OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::Type } + enum: -> { + OpenAI::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::Type + } # @!method initialize(content:, role:, type: nil) # Some parameter documentations has been truncated, see - # {OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem} - # for more details. + # {OpenAI::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem} for + # more details. # # A message input to the model with a role indicating instruction following # hierarchy. Instructions given with the `developer` or `system` role take @@ -283,15 +288,15 @@ class EvalItem < OpenAI::Internal::Type::BaseModel # `assistant` role are presumed to have been generated by the model in previous # interactions. # - # @param content [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::Content::OutputText] Text inputs to the model - can contain template strings. ... + # @param content [String, OpenAI::Responses::ResponseInputText, OpenAI::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::Content::OutputText] Text inputs to the model - can contain template strings. # - # @param role [Symbol, OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::Role] The role of the message input. One of `user`, `assistant`, `system`, or ... + # @param role [Symbol, OpenAI::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::Role] The role of the message input. One of `user`, `assistant`, `system`, or # - # @param type [Symbol, OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::Type] The type of the message input. Always `message`. ... + # @param type [Symbol, OpenAI::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::Type] The type of the message input. Always `message`. # Text inputs to the model - can contain template strings. # - # @see OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem#content + # @see OpenAI::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem#content module Content extend OpenAI::Internal::Type::Union @@ -299,10 +304,12 @@ module Content variant String # A text input to the model. - variant -> { OpenAI::Models::Responses::ResponseInputText } + variant -> { OpenAI::Responses::ResponseInputText } # A text output from the model. - variant -> { OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::Content::OutputText } + variant -> { + OpenAI::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::Content::OutputText + } class OutputText < OpenAI::Internal::Type::BaseModel # @!attribute text @@ -319,24 +326,24 @@ class OutputText < OpenAI::Internal::Type::BaseModel # @!method initialize(text:, type: :output_text) # Some parameter documentations has been truncated, see - # {OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::Content::OutputText} + # {OpenAI::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::Content::OutputText} # for more details. # # A text output from the model. # - # @param text [String] The text output from the model. ... + # @param text [String] The text output from the model. # - # @param type [Symbol, :output_text] The type of the output text. Always `output_text`. ... + # @param type [Symbol, :output_text] The type of the output text. Always `output_text`. end # @!method self.variants - # @return [Array(String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::Content::OutputText)] + # @return [Array(String, OpenAI::Responses::ResponseInputText, OpenAI::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::Content::OutputText)] end # The role of the message input. One of `user`, `assistant`, `system`, or # `developer`. # - # @see OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem#role + # @see OpenAI::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem#role module Role extend OpenAI::Internal::Type::Enum @@ -351,7 +358,7 @@ module Role # The type of the message input. Always `message`. # - # @see OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem#type + # @see OpenAI::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem#type module Type extend OpenAI::Internal::Type::Enum @@ -363,7 +370,7 @@ module Type end # @!method self.variants - # @return [Array(OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::SimpleInputMessage, OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem)] + # @return [Array(OpenAI::EvalCreateParams::TestingCriterion::LabelModel::Input::SimpleInputMessage, OpenAI::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem)] end end @@ -416,9 +423,11 @@ class ScoreModel < OpenAI::Internal::Type::BaseModel # @!attribute input # The input text. This may include template strings. # - # @return [Array] + # @return [Array] required :input, - -> { OpenAI::Internal::Type::ArrayOf[OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input] } + -> { + OpenAI::Internal::Type::ArrayOf[OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input] + } # @!attribute model # The model to use for the evaluation. @@ -459,7 +468,7 @@ class ScoreModel < OpenAI::Internal::Type::BaseModel # @!method initialize(input:, model:, name:, pass_threshold: nil, range: nil, sampling_params: nil, type: :score_model) # A ScoreModelGrader object that uses a model to assign a score to the input. # - # @param input [Array] The input text. This may include template strings. + # @param input [Array] The input text. This may include template strings. # # @param model [String] The model to use for the evaluation. # @@ -477,26 +486,28 @@ class Input < OpenAI::Internal::Type::BaseModel # @!attribute content # Text inputs to the model - can contain template strings. # - # @return [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input::Content::OutputText] + # @return [String, OpenAI::Responses::ResponseInputText, OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input::Content::OutputText] required :content, - union: -> { OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input::Content } + union: -> { + OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input::Content + } # @!attribute role # The role of the message input. One of `user`, `assistant`, `system`, or # `developer`. # - # @return [Symbol, OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input::Role] - required :role, enum: -> { OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input::Role } + # @return [Symbol, OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input::Role] + required :role, enum: -> { OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input::Role } # @!attribute type # The type of the message input. Always `message`. # - # @return [Symbol, OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input::Type, nil] - optional :type, enum: -> { OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input::Type } + # @return [Symbol, OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input::Type, nil] + optional :type, enum: -> { OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input::Type } # @!method initialize(content:, role:, type: nil) # Some parameter documentations has been truncated, see - # {OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input} for more + # {OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input} for more # details. # # A message input to the model with a role indicating instruction following @@ -505,15 +516,15 @@ class Input < OpenAI::Internal::Type::BaseModel # `assistant` role are presumed to have been generated by the model in previous # interactions. # - # @param content [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input::Content::OutputText] Text inputs to the model - can contain template strings. ... + # @param content [String, OpenAI::Responses::ResponseInputText, OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input::Content::OutputText] Text inputs to the model - can contain template strings. # - # @param role [Symbol, OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input::Role] The role of the message input. One of `user`, `assistant`, `system`, or ... + # @param role [Symbol, OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input::Role] The role of the message input. One of `user`, `assistant`, `system`, or # - # @param type [Symbol, OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input::Type] The type of the message input. Always `message`. ... + # @param type [Symbol, OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input::Type] The type of the message input. Always `message`. # Text inputs to the model - can contain template strings. # - # @see OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input#content + # @see OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input#content module Content extend OpenAI::Internal::Type::Union @@ -521,10 +532,12 @@ module Content variant String # A text input to the model. - variant -> { OpenAI::Models::Responses::ResponseInputText } + variant -> { OpenAI::Responses::ResponseInputText } # A text output from the model. - variant -> { OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input::Content::OutputText } + variant -> { + OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input::Content::OutputText + } class OutputText < OpenAI::Internal::Type::BaseModel # @!attribute text @@ -541,24 +554,24 @@ class OutputText < OpenAI::Internal::Type::BaseModel # @!method initialize(text:, type: :output_text) # Some parameter documentations has been truncated, see - # {OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input::Content::OutputText} + # {OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input::Content::OutputText} # for more details. # # A text output from the model. # - # @param text [String] The text output from the model. ... + # @param text [String] The text output from the model. # - # @param type [Symbol, :output_text] The type of the output text. Always `output_text`. ... + # @param type [Symbol, :output_text] The type of the output text. Always `output_text`. end # @!method self.variants - # @return [Array(String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input::Content::OutputText)] + # @return [Array(String, OpenAI::Responses::ResponseInputText, OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input::Content::OutputText)] end # The role of the message input. One of `user`, `assistant`, `system`, or # `developer`. # - # @see OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input#role + # @see OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input#role module Role extend OpenAI::Internal::Type::Enum @@ -573,7 +586,7 @@ module Role # The type of the message input. Always `message`. # - # @see OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input#type + # @see OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input#type module Type extend OpenAI::Internal::Type::Enum @@ -586,7 +599,7 @@ module Type end # @!method self.variants - # @return [Array(OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel, OpenAI::Models::EvalStringCheckGrader, OpenAI::Models::EvalTextSimilarityGrader, OpenAI::Models::EvalCreateParams::TestingCriterion::Python, OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel)] + # @return [Array(OpenAI::EvalCreateParams::TestingCriterion::LabelModel, OpenAI::EvalStringCheckGrader, OpenAI::EvalTextSimilarityGrader, OpenAI::EvalCreateParams::TestingCriterion::Python, OpenAI::EvalCreateParams::TestingCriterion::ScoreModel)] end end end diff --git a/lib/openai/models/eval_create_response.rb b/lib/openai/models/eval_create_response.rb index cd141022..db8e08f0 100644 --- a/lib/openai/models/eval_create_response.rb +++ b/lib/openai/models/eval_create_response.rb @@ -19,7 +19,7 @@ class EvalCreateResponse < OpenAI::Internal::Type::BaseModel # @!attribute data_source_config # Configuration of data sources used in runs of the evaluation. # - # @return [OpenAI::Models::EvalCustomDataSourceConfig, OpenAI::Models::EvalStoredCompletionsDataSourceConfig] + # @return [OpenAI::EvalCustomDataSourceConfig, OpenAI::EvalStoredCompletionsDataSourceConfig] required :data_source_config, union: -> { OpenAI::Models::EvalCreateResponse::DataSourceConfig } # @!attribute metadata @@ -48,7 +48,7 @@ class EvalCreateResponse < OpenAI::Internal::Type::BaseModel # @!attribute testing_criteria # A list of testing criteria. # - # @return [Array] + # @return [Array] required :testing_criteria, -> { OpenAI::Internal::Type::ArrayOf[union: OpenAI::Models::EvalCreateResponse::TestingCriterion] } @@ -67,13 +67,13 @@ class EvalCreateResponse < OpenAI::Internal::Type::BaseModel # # @param created_at [Integer] The Unix timestamp (in seconds) for when the eval was created. # - # @param data_source_config [OpenAI::Models::EvalCustomDataSourceConfig, OpenAI::Models::EvalStoredCompletionsDataSourceConfig] Configuration of data sources used in runs of the evaluation. + # @param data_source_config [OpenAI::EvalCustomDataSourceConfig, OpenAI::EvalStoredCompletionsDataSourceConfig] Configuration of data sources used in runs of the evaluation. # - # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be # # @param name [String] The name of the evaluation. # - # @param testing_criteria [Array] A list of testing criteria. + # @param testing_criteria [Array] A list of testing criteria. # # @param object [Symbol, :eval] The object type. @@ -89,16 +89,16 @@ module DataSourceConfig # The response schema defines the shape of the data that will be: # - Used to define your testing criteria and # - What data is required when creating a run - variant :custom, -> { OpenAI::Models::EvalCustomDataSourceConfig } + variant :custom, -> { OpenAI::EvalCustomDataSourceConfig } # A StoredCompletionsDataSourceConfig which specifies the metadata property of your stored completions query. # This is usually metadata like `usecase=chatbot` or `prompt-version=v2`, etc. # The schema returned by this data source config is used to defined what variables are available in your evals. # `item` and `sample` are both defined when using this data source config. - variant :stored_completions, -> { OpenAI::Models::EvalStoredCompletionsDataSourceConfig } + variant :stored_completions, -> { OpenAI::EvalStoredCompletionsDataSourceConfig } # @!method self.variants - # @return [Array(OpenAI::Models::EvalCustomDataSourceConfig, OpenAI::Models::EvalStoredCompletionsDataSourceConfig)] + # @return [Array(OpenAI::EvalCustomDataSourceConfig, OpenAI::EvalStoredCompletionsDataSourceConfig)] end # A LabelModelGrader object which uses a model to assign labels to each item in @@ -110,13 +110,13 @@ module TestingCriterion # A LabelModelGrader object which uses a model to assign labels to each item # in the evaluation. - variant :label_model, -> { OpenAI::Models::EvalLabelModelGrader } + variant :label_model, -> { OpenAI::EvalLabelModelGrader } # A StringCheckGrader object that performs a string comparison between input and reference using a specified operation. - variant :string_check, -> { OpenAI::Models::EvalStringCheckGrader } + variant :string_check, -> { OpenAI::EvalStringCheckGrader } # A TextSimilarityGrader object which grades text based on similarity metrics. - variant :text_similarity, -> { OpenAI::Models::EvalTextSimilarityGrader } + variant :text_similarity, -> { OpenAI::EvalTextSimilarityGrader } # A PythonGrader object that runs a python script on the input. variant :python, -> { OpenAI::Models::EvalCreateResponse::TestingCriterion::Python } @@ -234,7 +234,7 @@ class Input < OpenAI::Internal::Type::BaseModel # @!attribute content # Text inputs to the model - can contain template strings. # - # @return [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Content::OutputText] + # @return [String, OpenAI::Responses::ResponseInputText, OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Content::OutputText] required :content, union: -> { OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Content } @@ -262,11 +262,11 @@ class Input < OpenAI::Internal::Type::BaseModel # `assistant` role are presumed to have been generated by the model in previous # interactions. # - # @param content [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Content::OutputText] Text inputs to the model - can contain template strings. ... + # @param content [String, OpenAI::Responses::ResponseInputText, OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Content::OutputText] Text inputs to the model - can contain template strings. # - # @param role [Symbol, OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Role] The role of the message input. One of `user`, `assistant`, `system`, or ... + # @param role [Symbol, OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Role] The role of the message input. One of `user`, `assistant`, `system`, or # - # @param type [Symbol, OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Type] The type of the message input. Always `message`. ... + # @param type [Symbol, OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Type] The type of the message input. Always `message`. # Text inputs to the model - can contain template strings. # @@ -278,7 +278,7 @@ module Content variant String # A text input to the model. - variant -> { OpenAI::Models::Responses::ResponseInputText } + variant -> { OpenAI::Responses::ResponseInputText } # A text output from the model. variant -> { OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Content::OutputText } @@ -303,13 +303,13 @@ class OutputText < OpenAI::Internal::Type::BaseModel # # A text output from the model. # - # @param text [String] The text output from the model. ... + # @param text [String] The text output from the model. # - # @param type [Symbol, :output_text] The type of the output text. Always `output_text`. ... + # @param type [Symbol, :output_text] The type of the output text. Always `output_text`. end # @!method self.variants - # @return [Array(String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Content::OutputText)] + # @return [Array(String, OpenAI::Responses::ResponseInputText, OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Content::OutputText)] end # The role of the message input. One of `user`, `assistant`, `system`, or @@ -343,7 +343,7 @@ module Type end # @!method self.variants - # @return [Array(OpenAI::Models::EvalLabelModelGrader, OpenAI::Models::EvalStringCheckGrader, OpenAI::Models::EvalTextSimilarityGrader, OpenAI::Models::EvalCreateResponse::TestingCriterion::Python, OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel)] + # @return [Array(OpenAI::EvalLabelModelGrader, OpenAI::EvalStringCheckGrader, OpenAI::EvalTextSimilarityGrader, OpenAI::Models::EvalCreateResponse::TestingCriterion::Python, OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel)] end end end diff --git a/lib/openai/models/eval_custom_data_source_config.rb b/lib/openai/models/eval_custom_data_source_config.rb index 84577b43..38c0e0ec 100644 --- a/lib/openai/models/eval_custom_data_source_config.rb +++ b/lib/openai/models/eval_custom_data_source_config.rb @@ -18,7 +18,7 @@ class EvalCustomDataSourceConfig < OpenAI::Internal::Type::BaseModel # @!method initialize(schema:, type: :custom) # Some parameter documentations has been truncated, see - # {OpenAI::Models::EvalCustomDataSourceConfig} for more details. + # {OpenAI::EvalCustomDataSourceConfig} for more details. # # A CustomDataSourceConfig which specifies the schema of your `item` and # optionally `sample` namespaces. The response schema defines the shape of the @@ -27,7 +27,7 @@ class EvalCustomDataSourceConfig < OpenAI::Internal::Type::BaseModel # - Used to define your testing criteria and # - What data is required when creating a run # - # @param schema [Hash{Symbol=>Object}] The json schema for the run data source items. ... + # @param schema [Hash{Symbol=>Object}] The json schema for the run data source items. # # @param type [Symbol, :custom] The type of data source. Always `custom`. end diff --git a/lib/openai/models/eval_label_model_grader.rb b/lib/openai/models/eval_label_model_grader.rb index 32db2840..271e8884 100644 --- a/lib/openai/models/eval_label_model_grader.rb +++ b/lib/openai/models/eval_label_model_grader.rb @@ -5,8 +5,8 @@ module Models class EvalLabelModelGrader < OpenAI::Internal::Type::BaseModel # @!attribute input # - # @return [Array] - required :input, -> { OpenAI::Internal::Type::ArrayOf[OpenAI::Models::EvalLabelModelGrader::Input] } + # @return [Array] + required :input, -> { OpenAI::Internal::Type::ArrayOf[OpenAI::EvalLabelModelGrader::Input] } # @!attribute labels # The labels to assign to each item in the evaluation. @@ -42,7 +42,7 @@ class EvalLabelModelGrader < OpenAI::Internal::Type::BaseModel # A LabelModelGrader object which uses a model to assign labels to each item in # the evaluation. # - # @param input [Array] + # @param input [Array] # # @param labels [Array] The labels to assign to each item in the evaluation. # @@ -58,25 +58,25 @@ class Input < OpenAI::Internal::Type::BaseModel # @!attribute content # Text inputs to the model - can contain template strings. # - # @return [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::EvalLabelModelGrader::Input::Content::OutputText] - required :content, union: -> { OpenAI::Models::EvalLabelModelGrader::Input::Content } + # @return [String, OpenAI::Responses::ResponseInputText, OpenAI::EvalLabelModelGrader::Input::Content::OutputText] + required :content, union: -> { OpenAI::EvalLabelModelGrader::Input::Content } # @!attribute role # The role of the message input. One of `user`, `assistant`, `system`, or # `developer`. # - # @return [Symbol, OpenAI::Models::EvalLabelModelGrader::Input::Role] - required :role, enum: -> { OpenAI::Models::EvalLabelModelGrader::Input::Role } + # @return [Symbol, OpenAI::EvalLabelModelGrader::Input::Role] + required :role, enum: -> { OpenAI::EvalLabelModelGrader::Input::Role } # @!attribute type # The type of the message input. Always `message`. # - # @return [Symbol, OpenAI::Models::EvalLabelModelGrader::Input::Type, nil] - optional :type, enum: -> { OpenAI::Models::EvalLabelModelGrader::Input::Type } + # @return [Symbol, OpenAI::EvalLabelModelGrader::Input::Type, nil] + optional :type, enum: -> { OpenAI::EvalLabelModelGrader::Input::Type } # @!method initialize(content:, role:, type: nil) # Some parameter documentations has been truncated, see - # {OpenAI::Models::EvalLabelModelGrader::Input} for more details. + # {OpenAI::EvalLabelModelGrader::Input} for more details. # # A message input to the model with a role indicating instruction following # hierarchy. Instructions given with the `developer` or `system` role take @@ -84,15 +84,15 @@ class Input < OpenAI::Internal::Type::BaseModel # `assistant` role are presumed to have been generated by the model in previous # interactions. # - # @param content [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::EvalLabelModelGrader::Input::Content::OutputText] Text inputs to the model - can contain template strings. ... + # @param content [String, OpenAI::Responses::ResponseInputText, OpenAI::EvalLabelModelGrader::Input::Content::OutputText] Text inputs to the model - can contain template strings. # - # @param role [Symbol, OpenAI::Models::EvalLabelModelGrader::Input::Role] The role of the message input. One of `user`, `assistant`, `system`, or ... + # @param role [Symbol, OpenAI::EvalLabelModelGrader::Input::Role] The role of the message input. One of `user`, `assistant`, `system`, or # - # @param type [Symbol, OpenAI::Models::EvalLabelModelGrader::Input::Type] The type of the message input. Always `message`. ... + # @param type [Symbol, OpenAI::EvalLabelModelGrader::Input::Type] The type of the message input. Always `message`. # Text inputs to the model - can contain template strings. # - # @see OpenAI::Models::EvalLabelModelGrader::Input#content + # @see OpenAI::EvalLabelModelGrader::Input#content module Content extend OpenAI::Internal::Type::Union @@ -100,10 +100,10 @@ module Content variant String # A text input to the model. - variant -> { OpenAI::Models::Responses::ResponseInputText } + variant -> { OpenAI::Responses::ResponseInputText } # A text output from the model. - variant -> { OpenAI::Models::EvalLabelModelGrader::Input::Content::OutputText } + variant -> { OpenAI::EvalLabelModelGrader::Input::Content::OutputText } class OutputText < OpenAI::Internal::Type::BaseModel # @!attribute text @@ -120,24 +120,23 @@ class OutputText < OpenAI::Internal::Type::BaseModel # @!method initialize(text:, type: :output_text) # Some parameter documentations has been truncated, see - # {OpenAI::Models::EvalLabelModelGrader::Input::Content::OutputText} for more - # details. + # {OpenAI::EvalLabelModelGrader::Input::Content::OutputText} for more details. # # A text output from the model. # - # @param text [String] The text output from the model. ... + # @param text [String] The text output from the model. # - # @param type [Symbol, :output_text] The type of the output text. Always `output_text`. ... + # @param type [Symbol, :output_text] The type of the output text. Always `output_text`. end # @!method self.variants - # @return [Array(String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::EvalLabelModelGrader::Input::Content::OutputText)] + # @return [Array(String, OpenAI::Responses::ResponseInputText, OpenAI::EvalLabelModelGrader::Input::Content::OutputText)] end # The role of the message input. One of `user`, `assistant`, `system`, or # `developer`. # - # @see OpenAI::Models::EvalLabelModelGrader::Input#role + # @see OpenAI::EvalLabelModelGrader::Input#role module Role extend OpenAI::Internal::Type::Enum @@ -152,7 +151,7 @@ module Role # The type of the message input. Always `message`. # - # @see OpenAI::Models::EvalLabelModelGrader::Input#type + # @see OpenAI::EvalLabelModelGrader::Input#type module Type extend OpenAI::Internal::Type::Enum diff --git a/lib/openai/models/eval_list_params.rb b/lib/openai/models/eval_list_params.rb index 7fa913a0..c772f07f 100644 --- a/lib/openai/models/eval_list_params.rb +++ b/lib/openai/models/eval_list_params.rb @@ -23,15 +23,15 @@ class EvalListParams < OpenAI::Internal::Type::BaseModel # Sort order for evals by timestamp. Use `asc` for ascending order or `desc` for # descending order. # - # @return [Symbol, OpenAI::Models::EvalListParams::Order, nil] - optional :order, enum: -> { OpenAI::Models::EvalListParams::Order } + # @return [Symbol, OpenAI::EvalListParams::Order, nil] + optional :order, enum: -> { OpenAI::EvalListParams::Order } # @!attribute order_by # Evals can be ordered by creation time or last updated time. Use `created_at` for # creation time or `updated_at` for last updated time. # - # @return [Symbol, OpenAI::Models::EvalListParams::OrderBy, nil] - optional :order_by, enum: -> { OpenAI::Models::EvalListParams::OrderBy } + # @return [Symbol, OpenAI::EvalListParams::OrderBy, nil] + optional :order_by, enum: -> { OpenAI::EvalListParams::OrderBy } # @!method initialize(after: nil, limit: nil, order: nil, order_by: nil, request_options: {}) # Some parameter documentations has been truncated, see @@ -41,10 +41,9 @@ class EvalListParams < OpenAI::Internal::Type::BaseModel # # @param limit [Integer] Number of evals to retrieve. # - # @param order [Symbol, OpenAI::Models::EvalListParams::Order] Sort order for evals by timestamp. Use `asc` for ascending order or `desc` for d - # ... + # @param order [Symbol, OpenAI::EvalListParams::Order] Sort order for evals by timestamp. Use `asc` for ascending order or `desc` for d # - # @param order_by [Symbol, OpenAI::Models::EvalListParams::OrderBy] Evals can be ordered by creation time or last updated time. Use ... + # @param order_by [Symbol, OpenAI::EvalListParams::OrderBy] Evals can be ordered by creation time or last updated time. Use # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] diff --git a/lib/openai/models/eval_list_response.rb b/lib/openai/models/eval_list_response.rb index b7bf7898..7ff9c586 100644 --- a/lib/openai/models/eval_list_response.rb +++ b/lib/openai/models/eval_list_response.rb @@ -19,7 +19,7 @@ class EvalListResponse < OpenAI::Internal::Type::BaseModel # @!attribute data_source_config # Configuration of data sources used in runs of the evaluation. # - # @return [OpenAI::Models::EvalCustomDataSourceConfig, OpenAI::Models::EvalStoredCompletionsDataSourceConfig] + # @return [OpenAI::EvalCustomDataSourceConfig, OpenAI::EvalStoredCompletionsDataSourceConfig] required :data_source_config, union: -> { OpenAI::Models::EvalListResponse::DataSourceConfig } # @!attribute metadata @@ -48,7 +48,7 @@ class EvalListResponse < OpenAI::Internal::Type::BaseModel # @!attribute testing_criteria # A list of testing criteria. # - # @return [Array] + # @return [Array] required :testing_criteria, -> { OpenAI::Internal::Type::ArrayOf[union: OpenAI::Models::EvalListResponse::TestingCriterion] } @@ -67,13 +67,13 @@ class EvalListResponse < OpenAI::Internal::Type::BaseModel # # @param created_at [Integer] The Unix timestamp (in seconds) for when the eval was created. # - # @param data_source_config [OpenAI::Models::EvalCustomDataSourceConfig, OpenAI::Models::EvalStoredCompletionsDataSourceConfig] Configuration of data sources used in runs of the evaluation. + # @param data_source_config [OpenAI::EvalCustomDataSourceConfig, OpenAI::EvalStoredCompletionsDataSourceConfig] Configuration of data sources used in runs of the evaluation. # - # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be # # @param name [String] The name of the evaluation. # - # @param testing_criteria [Array] A list of testing criteria. + # @param testing_criteria [Array] A list of testing criteria. # # @param object [Symbol, :eval] The object type. @@ -89,16 +89,16 @@ module DataSourceConfig # The response schema defines the shape of the data that will be: # - Used to define your testing criteria and # - What data is required when creating a run - variant :custom, -> { OpenAI::Models::EvalCustomDataSourceConfig } + variant :custom, -> { OpenAI::EvalCustomDataSourceConfig } # A StoredCompletionsDataSourceConfig which specifies the metadata property of your stored completions query. # This is usually metadata like `usecase=chatbot` or `prompt-version=v2`, etc. # The schema returned by this data source config is used to defined what variables are available in your evals. # `item` and `sample` are both defined when using this data source config. - variant :stored_completions, -> { OpenAI::Models::EvalStoredCompletionsDataSourceConfig } + variant :stored_completions, -> { OpenAI::EvalStoredCompletionsDataSourceConfig } # @!method self.variants - # @return [Array(OpenAI::Models::EvalCustomDataSourceConfig, OpenAI::Models::EvalStoredCompletionsDataSourceConfig)] + # @return [Array(OpenAI::EvalCustomDataSourceConfig, OpenAI::EvalStoredCompletionsDataSourceConfig)] end # A LabelModelGrader object which uses a model to assign labels to each item in @@ -110,13 +110,13 @@ module TestingCriterion # A LabelModelGrader object which uses a model to assign labels to each item # in the evaluation. - variant :label_model, -> { OpenAI::Models::EvalLabelModelGrader } + variant :label_model, -> { OpenAI::EvalLabelModelGrader } # A StringCheckGrader object that performs a string comparison between input and reference using a specified operation. - variant :string_check, -> { OpenAI::Models::EvalStringCheckGrader } + variant :string_check, -> { OpenAI::EvalStringCheckGrader } # A TextSimilarityGrader object which grades text based on similarity metrics. - variant :text_similarity, -> { OpenAI::Models::EvalTextSimilarityGrader } + variant :text_similarity, -> { OpenAI::EvalTextSimilarityGrader } # A PythonGrader object that runs a python script on the input. variant :python, -> { OpenAI::Models::EvalListResponse::TestingCriterion::Python } @@ -234,7 +234,7 @@ class Input < OpenAI::Internal::Type::BaseModel # @!attribute content # Text inputs to the model - can contain template strings. # - # @return [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Content::OutputText] + # @return [String, OpenAI::Responses::ResponseInputText, OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Content::OutputText] required :content, union: -> { OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Content } @@ -262,11 +262,11 @@ class Input < OpenAI::Internal::Type::BaseModel # `assistant` role are presumed to have been generated by the model in previous # interactions. # - # @param content [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Content::OutputText] Text inputs to the model - can contain template strings. ... + # @param content [String, OpenAI::Responses::ResponseInputText, OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Content::OutputText] Text inputs to the model - can contain template strings. # - # @param role [Symbol, OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Role] The role of the message input. One of `user`, `assistant`, `system`, or ... + # @param role [Symbol, OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Role] The role of the message input. One of `user`, `assistant`, `system`, or # - # @param type [Symbol, OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Type] The type of the message input. Always `message`. ... + # @param type [Symbol, OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Type] The type of the message input. Always `message`. # Text inputs to the model - can contain template strings. # @@ -278,7 +278,7 @@ module Content variant String # A text input to the model. - variant -> { OpenAI::Models::Responses::ResponseInputText } + variant -> { OpenAI::Responses::ResponseInputText } # A text output from the model. variant -> { OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Content::OutputText } @@ -303,13 +303,13 @@ class OutputText < OpenAI::Internal::Type::BaseModel # # A text output from the model. # - # @param text [String] The text output from the model. ... + # @param text [String] The text output from the model. # - # @param type [Symbol, :output_text] The type of the output text. Always `output_text`. ... + # @param type [Symbol, :output_text] The type of the output text. Always `output_text`. end # @!method self.variants - # @return [Array(String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Content::OutputText)] + # @return [Array(String, OpenAI::Responses::ResponseInputText, OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Content::OutputText)] end # The role of the message input. One of `user`, `assistant`, `system`, or @@ -343,7 +343,7 @@ module Type end # @!method self.variants - # @return [Array(OpenAI::Models::EvalLabelModelGrader, OpenAI::Models::EvalStringCheckGrader, OpenAI::Models::EvalTextSimilarityGrader, OpenAI::Models::EvalListResponse::TestingCriterion::Python, OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel)] + # @return [Array(OpenAI::EvalLabelModelGrader, OpenAI::EvalStringCheckGrader, OpenAI::EvalTextSimilarityGrader, OpenAI::Models::EvalListResponse::TestingCriterion::Python, OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel)] end end end diff --git a/lib/openai/models/eval_retrieve_response.rb b/lib/openai/models/eval_retrieve_response.rb index f6f13166..51f2d27c 100644 --- a/lib/openai/models/eval_retrieve_response.rb +++ b/lib/openai/models/eval_retrieve_response.rb @@ -19,7 +19,7 @@ class EvalRetrieveResponse < OpenAI::Internal::Type::BaseModel # @!attribute data_source_config # Configuration of data sources used in runs of the evaluation. # - # @return [OpenAI::Models::EvalCustomDataSourceConfig, OpenAI::Models::EvalStoredCompletionsDataSourceConfig] + # @return [OpenAI::EvalCustomDataSourceConfig, OpenAI::EvalStoredCompletionsDataSourceConfig] required :data_source_config, union: -> { OpenAI::Models::EvalRetrieveResponse::DataSourceConfig } # @!attribute metadata @@ -48,7 +48,7 @@ class EvalRetrieveResponse < OpenAI::Internal::Type::BaseModel # @!attribute testing_criteria # A list of testing criteria. # - # @return [Array] + # @return [Array] required :testing_criteria, -> { OpenAI::Internal::Type::ArrayOf[union: OpenAI::Models::EvalRetrieveResponse::TestingCriterion] } @@ -67,13 +67,13 @@ class EvalRetrieveResponse < OpenAI::Internal::Type::BaseModel # # @param created_at [Integer] The Unix timestamp (in seconds) for when the eval was created. # - # @param data_source_config [OpenAI::Models::EvalCustomDataSourceConfig, OpenAI::Models::EvalStoredCompletionsDataSourceConfig] Configuration of data sources used in runs of the evaluation. + # @param data_source_config [OpenAI::EvalCustomDataSourceConfig, OpenAI::EvalStoredCompletionsDataSourceConfig] Configuration of data sources used in runs of the evaluation. # - # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be # # @param name [String] The name of the evaluation. # - # @param testing_criteria [Array] A list of testing criteria. + # @param testing_criteria [Array] A list of testing criteria. # # @param object [Symbol, :eval] The object type. @@ -89,16 +89,16 @@ module DataSourceConfig # The response schema defines the shape of the data that will be: # - Used to define your testing criteria and # - What data is required when creating a run - variant :custom, -> { OpenAI::Models::EvalCustomDataSourceConfig } + variant :custom, -> { OpenAI::EvalCustomDataSourceConfig } # A StoredCompletionsDataSourceConfig which specifies the metadata property of your stored completions query. # This is usually metadata like `usecase=chatbot` or `prompt-version=v2`, etc. # The schema returned by this data source config is used to defined what variables are available in your evals. # `item` and `sample` are both defined when using this data source config. - variant :stored_completions, -> { OpenAI::Models::EvalStoredCompletionsDataSourceConfig } + variant :stored_completions, -> { OpenAI::EvalStoredCompletionsDataSourceConfig } # @!method self.variants - # @return [Array(OpenAI::Models::EvalCustomDataSourceConfig, OpenAI::Models::EvalStoredCompletionsDataSourceConfig)] + # @return [Array(OpenAI::EvalCustomDataSourceConfig, OpenAI::EvalStoredCompletionsDataSourceConfig)] end # A LabelModelGrader object which uses a model to assign labels to each item in @@ -110,13 +110,13 @@ module TestingCriterion # A LabelModelGrader object which uses a model to assign labels to each item # in the evaluation. - variant :label_model, -> { OpenAI::Models::EvalLabelModelGrader } + variant :label_model, -> { OpenAI::EvalLabelModelGrader } # A StringCheckGrader object that performs a string comparison between input and reference using a specified operation. - variant :string_check, -> { OpenAI::Models::EvalStringCheckGrader } + variant :string_check, -> { OpenAI::EvalStringCheckGrader } # A TextSimilarityGrader object which grades text based on similarity metrics. - variant :text_similarity, -> { OpenAI::Models::EvalTextSimilarityGrader } + variant :text_similarity, -> { OpenAI::EvalTextSimilarityGrader } # A PythonGrader object that runs a python script on the input. variant :python, -> { OpenAI::Models::EvalRetrieveResponse::TestingCriterion::Python } @@ -234,7 +234,7 @@ class Input < OpenAI::Internal::Type::BaseModel # @!attribute content # Text inputs to the model - can contain template strings. # - # @return [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Content::OutputText] + # @return [String, OpenAI::Responses::ResponseInputText, OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Content::OutputText] required :content, union: -> { OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Content } @@ -264,11 +264,11 @@ class Input < OpenAI::Internal::Type::BaseModel # `assistant` role are presumed to have been generated by the model in previous # interactions. # - # @param content [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Content::OutputText] Text inputs to the model - can contain template strings. ... + # @param content [String, OpenAI::Responses::ResponseInputText, OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Content::OutputText] Text inputs to the model - can contain template strings. # - # @param role [Symbol, OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Role] The role of the message input. One of `user`, `assistant`, `system`, or ... + # @param role [Symbol, OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Role] The role of the message input. One of `user`, `assistant`, `system`, or # - # @param type [Symbol, OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Type] The type of the message input. Always `message`. ... + # @param type [Symbol, OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Type] The type of the message input. Always `message`. # Text inputs to the model - can contain template strings. # @@ -280,7 +280,7 @@ module Content variant String # A text input to the model. - variant -> { OpenAI::Models::Responses::ResponseInputText } + variant -> { OpenAI::Responses::ResponseInputText } # A text output from the model. variant -> { OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Content::OutputText } @@ -305,13 +305,13 @@ class OutputText < OpenAI::Internal::Type::BaseModel # # A text output from the model. # - # @param text [String] The text output from the model. ... + # @param text [String] The text output from the model. # - # @param type [Symbol, :output_text] The type of the output text. Always `output_text`. ... + # @param type [Symbol, :output_text] The type of the output text. Always `output_text`. end # @!method self.variants - # @return [Array(String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Content::OutputText)] + # @return [Array(String, OpenAI::Responses::ResponseInputText, OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Content::OutputText)] end # The role of the message input. One of `user`, `assistant`, `system`, or @@ -345,7 +345,7 @@ module Type end # @!method self.variants - # @return [Array(OpenAI::Models::EvalLabelModelGrader, OpenAI::Models::EvalStringCheckGrader, OpenAI::Models::EvalTextSimilarityGrader, OpenAI::Models::EvalRetrieveResponse::TestingCriterion::Python, OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel)] + # @return [Array(OpenAI::EvalLabelModelGrader, OpenAI::EvalStringCheckGrader, OpenAI::EvalTextSimilarityGrader, OpenAI::Models::EvalRetrieveResponse::TestingCriterion::Python, OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel)] end end end diff --git a/lib/openai/models/eval_stored_completions_data_source_config.rb b/lib/openai/models/eval_stored_completions_data_source_config.rb index 0055f9bc..6bb63bf6 100644 --- a/lib/openai/models/eval_stored_completions_data_source_config.rb +++ b/lib/openai/models/eval_stored_completions_data_source_config.rb @@ -29,7 +29,7 @@ class EvalStoredCompletionsDataSourceConfig < OpenAI::Internal::Type::BaseModel # @!method initialize(schema:, metadata: nil, type: :stored_completions) # Some parameter documentations has been truncated, see - # {OpenAI::Models::EvalStoredCompletionsDataSourceConfig} for more details. + # {OpenAI::EvalStoredCompletionsDataSourceConfig} for more details. # # A StoredCompletionsDataSourceConfig which specifies the metadata property of # your stored completions query. This is usually metadata like `usecase=chatbot` @@ -37,9 +37,9 @@ class EvalStoredCompletionsDataSourceConfig < OpenAI::Internal::Type::BaseModel # used to defined what variables are available in your evals. `item` and `sample` # are both defined when using this data source config. # - # @param schema [Hash{Symbol=>Object}] The json schema for the run data source items. ... + # @param schema [Hash{Symbol=>Object}] The json schema for the run data source items. # - # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be # # @param type [Symbol, :stored_completions] The type of data source. Always `stored_completions`. end diff --git a/lib/openai/models/eval_string_check_grader.rb b/lib/openai/models/eval_string_check_grader.rb index 8563a345..494f8199 100644 --- a/lib/openai/models/eval_string_check_grader.rb +++ b/lib/openai/models/eval_string_check_grader.rb @@ -18,8 +18,8 @@ class EvalStringCheckGrader < OpenAI::Internal::Type::BaseModel # @!attribute operation # The string check operation to perform. One of `eq`, `ne`, `like`, or `ilike`. # - # @return [Symbol, OpenAI::Models::EvalStringCheckGrader::Operation] - required :operation, enum: -> { OpenAI::Models::EvalStringCheckGrader::Operation } + # @return [Symbol, OpenAI::EvalStringCheckGrader::Operation] + required :operation, enum: -> { OpenAI::EvalStringCheckGrader::Operation } # @!attribute reference # The reference text. This may include template strings. @@ -41,7 +41,7 @@ class EvalStringCheckGrader < OpenAI::Internal::Type::BaseModel # # @param name [String] The name of the grader. # - # @param operation [Symbol, OpenAI::Models::EvalStringCheckGrader::Operation] The string check operation to perform. One of `eq`, `ne`, `like`, or `ilike`. + # @param operation [Symbol, OpenAI::EvalStringCheckGrader::Operation] The string check operation to perform. One of `eq`, `ne`, `like`, or `ilike`. # # @param reference [String] The reference text. This may include template strings. # @@ -49,7 +49,7 @@ class EvalStringCheckGrader < OpenAI::Internal::Type::BaseModel # The string check operation to perform. One of `eq`, `ne`, `like`, or `ilike`. # - # @see OpenAI::Models::EvalStringCheckGrader#operation + # @see OpenAI::EvalStringCheckGrader#operation module Operation extend OpenAI::Internal::Type::Enum diff --git a/lib/openai/models/eval_text_similarity_grader.rb b/lib/openai/models/eval_text_similarity_grader.rb index 4118b58b..765bb9c6 100644 --- a/lib/openai/models/eval_text_similarity_grader.rb +++ b/lib/openai/models/eval_text_similarity_grader.rb @@ -7,8 +7,8 @@ class EvalTextSimilarityGrader < OpenAI::Internal::Type::BaseModel # The evaluation metric to use. One of `fuzzy_match`, `bleu`, `gleu`, `meteor`, # `rouge_1`, `rouge_2`, `rouge_3`, `rouge_4`, `rouge_5`, or `rouge_l`. # - # @return [Symbol, OpenAI::Models::EvalTextSimilarityGrader::EvaluationMetric] - required :evaluation_metric, enum: -> { OpenAI::Models::EvalTextSimilarityGrader::EvaluationMetric } + # @return [Symbol, OpenAI::EvalTextSimilarityGrader::EvaluationMetric] + required :evaluation_metric, enum: -> { OpenAI::EvalTextSimilarityGrader::EvaluationMetric } # @!attribute input # The text being graded. @@ -42,12 +42,11 @@ class EvalTextSimilarityGrader < OpenAI::Internal::Type::BaseModel # @!method initialize(evaluation_metric:, input:, pass_threshold:, reference:, name: nil, type: :text_similarity) # Some parameter documentations has been truncated, see - # {OpenAI::Models::EvalTextSimilarityGrader} for more details. + # {OpenAI::EvalTextSimilarityGrader} for more details. # # A TextSimilarityGrader object which grades text based on similarity metrics. # - # @param evaluation_metric [Symbol, OpenAI::Models::EvalTextSimilarityGrader::EvaluationMetric] The evaluation metric to use. One of `fuzzy_match`, `bleu`, `gleu`, `meteor`, `r - # ... + # @param evaluation_metric [Symbol, OpenAI::EvalTextSimilarityGrader::EvaluationMetric] The evaluation metric to use. One of `fuzzy_match`, `bleu`, `gleu`, `meteor`, `r # # @param input [String] The text being graded. # @@ -62,7 +61,7 @@ class EvalTextSimilarityGrader < OpenAI::Internal::Type::BaseModel # The evaluation metric to use. One of `fuzzy_match`, `bleu`, `gleu`, `meteor`, # `rouge_1`, `rouge_2`, `rouge_3`, `rouge_4`, `rouge_5`, or `rouge_l`. # - # @see OpenAI::Models::EvalTextSimilarityGrader#evaluation_metric + # @see OpenAI::EvalTextSimilarityGrader#evaluation_metric module EvaluationMetric extend OpenAI::Internal::Type::Enum diff --git a/lib/openai/models/eval_update_params.rb b/lib/openai/models/eval_update_params.rb index baad5c63..2b7d40b3 100644 --- a/lib/openai/models/eval_update_params.rb +++ b/lib/openai/models/eval_update_params.rb @@ -28,7 +28,7 @@ class EvalUpdateParams < OpenAI::Internal::Type::BaseModel # Some parameter documentations has been truncated, see # {OpenAI::Models::EvalUpdateParams} for more details. # - # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be # # @param name [String] Rename the evaluation. # diff --git a/lib/openai/models/eval_update_response.rb b/lib/openai/models/eval_update_response.rb index 2bc0b524..12986ff3 100644 --- a/lib/openai/models/eval_update_response.rb +++ b/lib/openai/models/eval_update_response.rb @@ -19,7 +19,7 @@ class EvalUpdateResponse < OpenAI::Internal::Type::BaseModel # @!attribute data_source_config # Configuration of data sources used in runs of the evaluation. # - # @return [OpenAI::Models::EvalCustomDataSourceConfig, OpenAI::Models::EvalStoredCompletionsDataSourceConfig] + # @return [OpenAI::EvalCustomDataSourceConfig, OpenAI::EvalStoredCompletionsDataSourceConfig] required :data_source_config, union: -> { OpenAI::Models::EvalUpdateResponse::DataSourceConfig } # @!attribute metadata @@ -48,7 +48,7 @@ class EvalUpdateResponse < OpenAI::Internal::Type::BaseModel # @!attribute testing_criteria # A list of testing criteria. # - # @return [Array] + # @return [Array] required :testing_criteria, -> { OpenAI::Internal::Type::ArrayOf[union: OpenAI::Models::EvalUpdateResponse::TestingCriterion] } @@ -67,13 +67,13 @@ class EvalUpdateResponse < OpenAI::Internal::Type::BaseModel # # @param created_at [Integer] The Unix timestamp (in seconds) for when the eval was created. # - # @param data_source_config [OpenAI::Models::EvalCustomDataSourceConfig, OpenAI::Models::EvalStoredCompletionsDataSourceConfig] Configuration of data sources used in runs of the evaluation. + # @param data_source_config [OpenAI::EvalCustomDataSourceConfig, OpenAI::EvalStoredCompletionsDataSourceConfig] Configuration of data sources used in runs of the evaluation. # - # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be # # @param name [String] The name of the evaluation. # - # @param testing_criteria [Array] A list of testing criteria. + # @param testing_criteria [Array] A list of testing criteria. # # @param object [Symbol, :eval] The object type. @@ -89,16 +89,16 @@ module DataSourceConfig # The response schema defines the shape of the data that will be: # - Used to define your testing criteria and # - What data is required when creating a run - variant :custom, -> { OpenAI::Models::EvalCustomDataSourceConfig } + variant :custom, -> { OpenAI::EvalCustomDataSourceConfig } # A StoredCompletionsDataSourceConfig which specifies the metadata property of your stored completions query. # This is usually metadata like `usecase=chatbot` or `prompt-version=v2`, etc. # The schema returned by this data source config is used to defined what variables are available in your evals. # `item` and `sample` are both defined when using this data source config. - variant :stored_completions, -> { OpenAI::Models::EvalStoredCompletionsDataSourceConfig } + variant :stored_completions, -> { OpenAI::EvalStoredCompletionsDataSourceConfig } # @!method self.variants - # @return [Array(OpenAI::Models::EvalCustomDataSourceConfig, OpenAI::Models::EvalStoredCompletionsDataSourceConfig)] + # @return [Array(OpenAI::EvalCustomDataSourceConfig, OpenAI::EvalStoredCompletionsDataSourceConfig)] end # A LabelModelGrader object which uses a model to assign labels to each item in @@ -110,13 +110,13 @@ module TestingCriterion # A LabelModelGrader object which uses a model to assign labels to each item # in the evaluation. - variant :label_model, -> { OpenAI::Models::EvalLabelModelGrader } + variant :label_model, -> { OpenAI::EvalLabelModelGrader } # A StringCheckGrader object that performs a string comparison between input and reference using a specified operation. - variant :string_check, -> { OpenAI::Models::EvalStringCheckGrader } + variant :string_check, -> { OpenAI::EvalStringCheckGrader } # A TextSimilarityGrader object which grades text based on similarity metrics. - variant :text_similarity, -> { OpenAI::Models::EvalTextSimilarityGrader } + variant :text_similarity, -> { OpenAI::EvalTextSimilarityGrader } # A PythonGrader object that runs a python script on the input. variant :python, -> { OpenAI::Models::EvalUpdateResponse::TestingCriterion::Python } @@ -234,7 +234,7 @@ class Input < OpenAI::Internal::Type::BaseModel # @!attribute content # Text inputs to the model - can contain template strings. # - # @return [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Content::OutputText] + # @return [String, OpenAI::Responses::ResponseInputText, OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Content::OutputText] required :content, union: -> { OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Content } @@ -262,11 +262,11 @@ class Input < OpenAI::Internal::Type::BaseModel # `assistant` role are presumed to have been generated by the model in previous # interactions. # - # @param content [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Content::OutputText] Text inputs to the model - can contain template strings. ... + # @param content [String, OpenAI::Responses::ResponseInputText, OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Content::OutputText] Text inputs to the model - can contain template strings. # - # @param role [Symbol, OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Role] The role of the message input. One of `user`, `assistant`, `system`, or ... + # @param role [Symbol, OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Role] The role of the message input. One of `user`, `assistant`, `system`, or # - # @param type [Symbol, OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Type] The type of the message input. Always `message`. ... + # @param type [Symbol, OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Type] The type of the message input. Always `message`. # Text inputs to the model - can contain template strings. # @@ -278,7 +278,7 @@ module Content variant String # A text input to the model. - variant -> { OpenAI::Models::Responses::ResponseInputText } + variant -> { OpenAI::Responses::ResponseInputText } # A text output from the model. variant -> { OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Content::OutputText } @@ -303,13 +303,13 @@ class OutputText < OpenAI::Internal::Type::BaseModel # # A text output from the model. # - # @param text [String] The text output from the model. ... + # @param text [String] The text output from the model. # - # @param type [Symbol, :output_text] The type of the output text. Always `output_text`. ... + # @param type [Symbol, :output_text] The type of the output text. Always `output_text`. end # @!method self.variants - # @return [Array(String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Content::OutputText)] + # @return [Array(String, OpenAI::Responses::ResponseInputText, OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Content::OutputText)] end # The role of the message input. One of `user`, `assistant`, `system`, or @@ -343,7 +343,7 @@ module Type end # @!method self.variants - # @return [Array(OpenAI::Models::EvalLabelModelGrader, OpenAI::Models::EvalStringCheckGrader, OpenAI::Models::EvalTextSimilarityGrader, OpenAI::Models::EvalUpdateResponse::TestingCriterion::Python, OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel)] + # @return [Array(OpenAI::EvalLabelModelGrader, OpenAI::EvalStringCheckGrader, OpenAI::EvalTextSimilarityGrader, OpenAI::Models::EvalUpdateResponse::TestingCriterion::Python, OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel)] end end end diff --git a/lib/openai/models/evals/create_eval_completions_run_data_source.rb b/lib/openai/models/evals/create_eval_completions_run_data_source.rb index eaa0f6e4..f31118d7 100644 --- a/lib/openai/models/evals/create_eval_completions_run_data_source.rb +++ b/lib/openai/models/evals/create_eval_completions_run_data_source.rb @@ -7,20 +7,22 @@ class CreateEvalCompletionsRunDataSource < OpenAI::Internal::Type::BaseModel # @!attribute source # A StoredCompletionsRunDataSource configuration describing a set of filters # - # @return [OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Source::FileContent, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Source::FileID, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Source::StoredCompletions] - required :source, union: -> { OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Source } + # @return [OpenAI::Evals::CreateEvalCompletionsRunDataSource::Source::FileContent, OpenAI::Evals::CreateEvalCompletionsRunDataSource::Source::FileID, OpenAI::Evals::CreateEvalCompletionsRunDataSource::Source::StoredCompletions] + required :source, union: -> { OpenAI::Evals::CreateEvalCompletionsRunDataSource::Source } # @!attribute type # The type of run data source. Always `completions`. # - # @return [Symbol, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Type] - required :type, enum: -> { OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Type } + # @return [Symbol, OpenAI::Evals::CreateEvalCompletionsRunDataSource::Type] + required :type, enum: -> { OpenAI::Evals::CreateEvalCompletionsRunDataSource::Type } # @!attribute input_messages # - # @return [OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::ItemReference, nil] + # @return [OpenAI::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template, OpenAI::Evals::CreateEvalCompletionsRunDataSource::InputMessages::ItemReference, nil] optional :input_messages, - union: -> { OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages } + union: -> { + OpenAI::Evals::CreateEvalCompletionsRunDataSource::InputMessages + } # @!attribute model # The name of the model to use for generating completions (e.g. "o3-mini"). @@ -30,50 +32,50 @@ class CreateEvalCompletionsRunDataSource < OpenAI::Internal::Type::BaseModel # @!attribute sampling_params # - # @return [OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::SamplingParams, nil] - optional :sampling_params, - -> { OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::SamplingParams } + # @return [OpenAI::Evals::CreateEvalCompletionsRunDataSource::SamplingParams, nil] + optional :sampling_params, -> { OpenAI::Evals::CreateEvalCompletionsRunDataSource::SamplingParams } # @!method initialize(source:, type:, input_messages: nil, model: nil, sampling_params: nil) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource} for more details. + # {OpenAI::Evals::CreateEvalCompletionsRunDataSource} for more details. # # A CompletionsRunDataSource object describing a model sampling configuration. # - # @param source [OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Source::FileContent, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Source::FileID, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Source::StoredCompletions] A StoredCompletionsRunDataSource configuration describing a set of filters ... + # @param source [OpenAI::Evals::CreateEvalCompletionsRunDataSource::Source::FileContent, OpenAI::Evals::CreateEvalCompletionsRunDataSource::Source::FileID, OpenAI::Evals::CreateEvalCompletionsRunDataSource::Source::StoredCompletions] A StoredCompletionsRunDataSource configuration describing a set of filters # - # @param type [Symbol, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Type] The type of run data source. Always `completions`. + # @param type [Symbol, OpenAI::Evals::CreateEvalCompletionsRunDataSource::Type] The type of run data source. Always `completions`. # - # @param input_messages [OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::ItemReference] + # @param input_messages [OpenAI::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template, OpenAI::Evals::CreateEvalCompletionsRunDataSource::InputMessages::ItemReference] # # @param model [String] The name of the model to use for generating completions (e.g. "o3-mini"). # - # @param sampling_params [OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::SamplingParams] + # @param sampling_params [OpenAI::Evals::CreateEvalCompletionsRunDataSource::SamplingParams] # A StoredCompletionsRunDataSource configuration describing a set of filters # - # @see OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource#source + # @see OpenAI::Evals::CreateEvalCompletionsRunDataSource#source module Source extend OpenAI::Internal::Type::Union discriminator :type - variant :file_content, - -> { OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Source::FileContent } + variant :file_content, -> { OpenAI::Evals::CreateEvalCompletionsRunDataSource::Source::FileContent } - variant :file_id, -> { OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Source::FileID } + variant :file_id, -> { OpenAI::Evals::CreateEvalCompletionsRunDataSource::Source::FileID } # A StoredCompletionsRunDataSource configuration describing a set of filters variant :stored_completions, - -> { OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Source::StoredCompletions } + -> { OpenAI::Evals::CreateEvalCompletionsRunDataSource::Source::StoredCompletions } class FileContent < OpenAI::Internal::Type::BaseModel # @!attribute content # The content of the jsonl file. # - # @return [Array] + # @return [Array] required :content, - -> { OpenAI::Internal::Type::ArrayOf[OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Source::FileContent::Content] } + -> { + OpenAI::Internal::Type::ArrayOf[OpenAI::Evals::CreateEvalCompletionsRunDataSource::Source::FileContent::Content] + } # @!attribute type # The type of jsonl source. Always `file_content`. @@ -82,7 +84,7 @@ class FileContent < OpenAI::Internal::Type::BaseModel required :type, const: :file_content # @!method initialize(content:, type: :file_content) - # @param content [Array] The content of the jsonl file. + # @param content [Array] The content of the jsonl file. # # @param type [Symbol, :file_content] The type of jsonl source. Always `file_content`. @@ -166,7 +168,7 @@ class StoredCompletions < OpenAI::Internal::Type::BaseModel # @!method initialize(created_after: nil, created_before: nil, limit: nil, metadata: nil, model: nil, type: :stored_completions) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Source::StoredCompletions} + # {OpenAI::Evals::CreateEvalCompletionsRunDataSource::Source::StoredCompletions} # for more details. # # A StoredCompletionsRunDataSource configuration describing a set of filters @@ -177,7 +179,7 @@ class StoredCompletions < OpenAI::Internal::Type::BaseModel # # @param limit [Integer, nil] An optional maximum number of items to return. # - # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be # # @param model [String, nil] An optional model to filter by (e.g., 'gpt-4o'). # @@ -185,12 +187,12 @@ class StoredCompletions < OpenAI::Internal::Type::BaseModel end # @!method self.variants - # @return [Array(OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Source::FileContent, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Source::FileID, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Source::StoredCompletions)] + # @return [Array(OpenAI::Evals::CreateEvalCompletionsRunDataSource::Source::FileContent, OpenAI::Evals::CreateEvalCompletionsRunDataSource::Source::FileID, OpenAI::Evals::CreateEvalCompletionsRunDataSource::Source::StoredCompletions)] end # The type of run data source. Always `completions`. # - # @see OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource#type + # @see OpenAI::Evals::CreateEvalCompletionsRunDataSource#type module Type extend OpenAI::Internal::Type::Enum @@ -200,26 +202,27 @@ module Type # @return [Array] end - # @see OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource#input_messages + # @see OpenAI::Evals::CreateEvalCompletionsRunDataSource#input_messages module InputMessages extend OpenAI::Internal::Type::Union discriminator :type - variant :template, - -> { OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template } + variant :template, -> { OpenAI::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template } variant :item_reference, - -> { OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::ItemReference } + -> { OpenAI::Evals::CreateEvalCompletionsRunDataSource::InputMessages::ItemReference } class Template < OpenAI::Internal::Type::BaseModel # @!attribute template # A list of chat messages forming the prompt or context. May include variable # references to the "item" namespace, ie {{item.name}}. # - # @return [Array] + # @return [Array] required :template, - -> { OpenAI::Internal::Type::ArrayOf[union: OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template] } + -> { + OpenAI::Internal::Type::ArrayOf[union: OpenAI::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template] + } # @!attribute type # The type of input messages. Always `template`. @@ -229,11 +232,10 @@ class Template < OpenAI::Internal::Type::BaseModel # @!method initialize(template:, type: :template) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template} - # for more details. + # {OpenAI::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template} for + # more details. # - # @param template [Array] A list of chat messages forming the prompt or context. May include variable refe - # ... + # @param template [Array] A list of chat messages forming the prompt or context. May include variable refe # # @param type [Symbol, :template] The type of input messages. Always `template`. @@ -252,7 +254,7 @@ module Template # precedence over instructions given with the `user` role. Messages with the # `assistant` role are presumed to have been generated by the model in previous # interactions. - variant :message, -> { OpenAI::Models::Responses::EasyInputMessage } + variant :message, -> { OpenAI::Responses::EasyInputMessage } # A message input to the model with a role indicating instruction following # hierarchy. Instructions given with the `developer` or `system` role take @@ -260,34 +262,42 @@ module Template # `assistant` role are presumed to have been generated by the model in previous # interactions. variant :message, - -> { OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message } + -> { + OpenAI::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message + } class Message < OpenAI::Internal::Type::BaseModel # @!attribute content # Text inputs to the model - can contain template strings. # - # @return [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::Content::OutputText] + # @return [String, OpenAI::Responses::ResponseInputText, OpenAI::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::Content::OutputText] required :content, - union: -> { OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::Content } + union: -> { + OpenAI::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::Content + } # @!attribute role # The role of the message input. One of `user`, `assistant`, `system`, or # `developer`. # - # @return [Symbol, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::Role] + # @return [Symbol, OpenAI::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::Role] required :role, - enum: -> { OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::Role } + enum: -> { + OpenAI::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::Role + } # @!attribute type # The type of the message input. Always `message`. # - # @return [Symbol, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::Type, nil] + # @return [Symbol, OpenAI::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::Type, nil] optional :type, - enum: -> { OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::Type } + enum: -> { + OpenAI::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::Type + } # @!method initialize(content:, role:, type: nil) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message} + # {OpenAI::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message} # for more details. # # A message input to the model with a role indicating instruction following @@ -296,15 +306,15 @@ class Message < OpenAI::Internal::Type::BaseModel # `assistant` role are presumed to have been generated by the model in previous # interactions. # - # @param content [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::Content::OutputText] Text inputs to the model - can contain template strings. ... + # @param content [String, OpenAI::Responses::ResponseInputText, OpenAI::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::Content::OutputText] Text inputs to the model - can contain template strings. # - # @param role [Symbol, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::Role] The role of the message input. One of `user`, `assistant`, `system`, or ... + # @param role [Symbol, OpenAI::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::Role] The role of the message input. One of `user`, `assistant`, `system`, or # - # @param type [Symbol, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::Type] The type of the message input. Always `message`. ... + # @param type [Symbol, OpenAI::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::Type] The type of the message input. Always `message`. # Text inputs to the model - can contain template strings. # - # @see OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message#content + # @see OpenAI::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message#content module Content extend OpenAI::Internal::Type::Union @@ -312,10 +322,12 @@ module Content variant String # A text input to the model. - variant -> { OpenAI::Models::Responses::ResponseInputText } + variant -> { OpenAI::Responses::ResponseInputText } # A text output from the model. - variant -> { OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::Content::OutputText } + variant -> { + OpenAI::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::Content::OutputText + } class OutputText < OpenAI::Internal::Type::BaseModel # @!attribute text @@ -332,24 +344,24 @@ class OutputText < OpenAI::Internal::Type::BaseModel # @!method initialize(text:, type: :output_text) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::Content::OutputText} + # {OpenAI::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::Content::OutputText} # for more details. # # A text output from the model. # - # @param text [String] The text output from the model. ... + # @param text [String] The text output from the model. # - # @param type [Symbol, :output_text] The type of the output text. Always `output_text`. ... + # @param type [Symbol, :output_text] The type of the output text. Always `output_text`. end # @!method self.variants - # @return [Array(String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::Content::OutputText)] + # @return [Array(String, OpenAI::Responses::ResponseInputText, OpenAI::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::Content::OutputText)] end # The role of the message input. One of `user`, `assistant`, `system`, or # `developer`. # - # @see OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message#role + # @see OpenAI::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message#role module Role extend OpenAI::Internal::Type::Enum @@ -364,7 +376,7 @@ module Role # The type of the message input. Always `message`. # - # @see OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message#type + # @see OpenAI::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message#type module Type extend OpenAI::Internal::Type::Enum @@ -376,7 +388,7 @@ module Type end # @!method self.variants - # @return [Array(OpenAI::Models::Responses::EasyInputMessage, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message)] + # @return [Array(OpenAI::Responses::EasyInputMessage, OpenAI::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message)] end end @@ -400,10 +412,10 @@ class ItemReference < OpenAI::Internal::Type::BaseModel end # @!method self.variants - # @return [Array(OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::ItemReference)] + # @return [Array(OpenAI::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template, OpenAI::Evals::CreateEvalCompletionsRunDataSource::InputMessages::ItemReference)] end - # @see OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource#sampling_params + # @see OpenAI::Evals::CreateEvalCompletionsRunDataSource#sampling_params class SamplingParams < OpenAI::Internal::Type::BaseModel # @!attribute max_completion_tokens # The maximum number of tokens in the generated output. diff --git a/lib/openai/models/evals/create_eval_jsonl_run_data_source.rb b/lib/openai/models/evals/create_eval_jsonl_run_data_source.rb index ae1cedae..514f2494 100644 --- a/lib/openai/models/evals/create_eval_jsonl_run_data_source.rb +++ b/lib/openai/models/evals/create_eval_jsonl_run_data_source.rb @@ -6,8 +6,8 @@ module Evals class CreateEvalJSONLRunDataSource < OpenAI::Internal::Type::BaseModel # @!attribute source # - # @return [OpenAI::Models::Evals::CreateEvalJSONLRunDataSource::Source::FileContent, OpenAI::Models::Evals::CreateEvalJSONLRunDataSource::Source::FileID] - required :source, union: -> { OpenAI::Models::Evals::CreateEvalJSONLRunDataSource::Source } + # @return [OpenAI::Evals::CreateEvalJSONLRunDataSource::Source::FileContent, OpenAI::Evals::CreateEvalJSONLRunDataSource::Source::FileID] + required :source, union: -> { OpenAI::Evals::CreateEvalJSONLRunDataSource::Source } # @!attribute type # The type of data source. Always `jsonl`. @@ -19,27 +19,29 @@ class CreateEvalJSONLRunDataSource < OpenAI::Internal::Type::BaseModel # A JsonlRunDataSource object with that specifies a JSONL file that matches the # eval # - # @param source [OpenAI::Models::Evals::CreateEvalJSONLRunDataSource::Source::FileContent, OpenAI::Models::Evals::CreateEvalJSONLRunDataSource::Source::FileID] + # @param source [OpenAI::Evals::CreateEvalJSONLRunDataSource::Source::FileContent, OpenAI::Evals::CreateEvalJSONLRunDataSource::Source::FileID] # # @param type [Symbol, :jsonl] The type of data source. Always `jsonl`. - # @see OpenAI::Models::Evals::CreateEvalJSONLRunDataSource#source + # @see OpenAI::Evals::CreateEvalJSONLRunDataSource#source module Source extend OpenAI::Internal::Type::Union discriminator :type - variant :file_content, -> { OpenAI::Models::Evals::CreateEvalJSONLRunDataSource::Source::FileContent } + variant :file_content, -> { OpenAI::Evals::CreateEvalJSONLRunDataSource::Source::FileContent } - variant :file_id, -> { OpenAI::Models::Evals::CreateEvalJSONLRunDataSource::Source::FileID } + variant :file_id, -> { OpenAI::Evals::CreateEvalJSONLRunDataSource::Source::FileID } class FileContent < OpenAI::Internal::Type::BaseModel # @!attribute content # The content of the jsonl file. # - # @return [Array] + # @return [Array] required :content, - -> { OpenAI::Internal::Type::ArrayOf[OpenAI::Models::Evals::CreateEvalJSONLRunDataSource::Source::FileContent::Content] } + -> { + OpenAI::Internal::Type::ArrayOf[OpenAI::Evals::CreateEvalJSONLRunDataSource::Source::FileContent::Content] + } # @!attribute type # The type of jsonl source. Always `file_content`. @@ -48,7 +50,7 @@ class FileContent < OpenAI::Internal::Type::BaseModel required :type, const: :file_content # @!method initialize(content:, type: :file_content) - # @param content [Array] The content of the jsonl file. + # @param content [Array] The content of the jsonl file. # # @param type [Symbol, :file_content] The type of jsonl source. Always `file_content`. @@ -89,7 +91,7 @@ class FileID < OpenAI::Internal::Type::BaseModel end # @!method self.variants - # @return [Array(OpenAI::Models::Evals::CreateEvalJSONLRunDataSource::Source::FileContent, OpenAI::Models::Evals::CreateEvalJSONLRunDataSource::Source::FileID)] + # @return [Array(OpenAI::Evals::CreateEvalJSONLRunDataSource::Source::FileContent, OpenAI::Evals::CreateEvalJSONLRunDataSource::Source::FileID)] end end end diff --git a/lib/openai/models/evals/run_cancel_response.rb b/lib/openai/models/evals/run_cancel_response.rb index da5f330b..1a5d2402 100644 --- a/lib/openai/models/evals/run_cancel_response.rb +++ b/lib/openai/models/evals/run_cancel_response.rb @@ -20,14 +20,14 @@ class RunCancelResponse < OpenAI::Internal::Type::BaseModel # @!attribute data_source # Information about the run's data source. # - # @return [OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource, OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions] + # @return [OpenAI::Evals::CreateEvalJSONLRunDataSource, OpenAI::Evals::CreateEvalCompletionsRunDataSource, OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions] required :data_source, union: -> { OpenAI::Models::Evals::RunCancelResponse::DataSource } # @!attribute error # An object representing an error response from the Eval API. # - # @return [OpenAI::Models::Evals::EvalAPIError] - required :error, -> { OpenAI::Models::Evals::EvalAPIError } + # @return [OpenAI::Evals::EvalAPIError] + required :error, -> { OpenAI::Evals::EvalAPIError } # @!attribute eval_id # The identifier of the associated evaluation. @@ -106,13 +106,13 @@ class RunCancelResponse < OpenAI::Internal::Type::BaseModel # # @param created_at [Integer] Unix timestamp (in seconds) when the evaluation run was created. # - # @param data_source [OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource, OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions] Information about the run's data source. + # @param data_source [OpenAI::Evals::CreateEvalJSONLRunDataSource, OpenAI::Evals::CreateEvalCompletionsRunDataSource, OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions] Information about the run's data source. # - # @param error [OpenAI::Models::Evals::EvalAPIError] An object representing an error response from the Eval API. ... + # @param error [OpenAI::Evals::EvalAPIError] An object representing an error response from the Eval API. # # @param eval_id [String] The identifier of the associated evaluation. # - # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be # # @param model [String] The model that is evaluated, if applicable. # @@ -139,10 +139,10 @@ module DataSource discriminator :type # A JsonlRunDataSource object with that specifies a JSONL file that matches the eval - variant :jsonl, -> { OpenAI::Models::Evals::CreateEvalJSONLRunDataSource } + variant :jsonl, -> { OpenAI::Evals::CreateEvalJSONLRunDataSource } # A CompletionsRunDataSource object describing a model sampling configuration. - variant :completions, -> { OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource } + variant :completions, -> { OpenAI::Evals::CreateEvalCompletionsRunDataSource } # A ResponsesRunDataSource object describing a model sampling configuration. variant :completions, -> { OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions } @@ -185,7 +185,7 @@ class Completions < OpenAI::Internal::Type::BaseModel # # A ResponsesRunDataSource object describing a model sampling configuration. # - # @param source [OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::Source::FileContent, OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::Source::FileID, OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::Source::Responses] A EvalResponsesSource object describing a run data source configuration. ... + # @param source [OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::Source::FileContent, OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::Source::FileID, OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::Source::Responses] A EvalResponsesSource object describing a run data source configuration. # # @param input_messages [OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template, OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::ItemReference] # @@ -327,8 +327,8 @@ class Responses < OpenAI::Internal::Type::BaseModel # Optional reasoning effort parameter. This is a query parameter used to select # responses. # - # @return [Symbol, OpenAI::Models::ReasoningEffort, nil] - optional :reasoning_effort, enum: -> { OpenAI::Models::ReasoningEffort }, nil?: true + # @return [Symbol, OpenAI::ReasoningEffort, nil] + optional :reasoning_effort, enum: -> { OpenAI::ReasoningEffort }, nil?: true # @!attribute temperature # Sampling temperature. This is a query parameter used to select responses. @@ -356,28 +356,20 @@ class Responses < OpenAI::Internal::Type::BaseModel # A EvalResponsesSource object describing a run data source configuration. # # @param allow_parallel_tool_calls [Boolean, nil] Whether to allow parallel tool calls. This is a query parameter used to select r - # ... # # @param created_after [Integer, nil] Only include items created after this timestamp (inclusive). This is a query par - # ... # # @param created_before [Integer, nil] Only include items created before this timestamp (inclusive). This is a query pa - # ... # # @param has_tool_calls [Boolean, nil] Whether the response has tool calls. This is a query parameter used to select re - # ... # # @param instructions_search [String, nil] Optional search string for instructions. This is a query parameter used to selec - # ... # # @param metadata [Object, nil] Metadata filter for the responses. This is a query parameter used to select resp - # ... # # @param model [String, nil] The name of the model to find responses for. This is a query parameter used to s - # ... # - # @param reasoning_effort [Symbol, OpenAI::Models::ReasoningEffort, nil] Optional reasoning effort parameter. This is a query parameter used to select re - # ... + # @param reasoning_effort [Symbol, OpenAI::ReasoningEffort, nil] Optional reasoning effort parameter. This is a query parameter used to select re # # @param temperature [Float, nil] Sampling temperature. This is a query parameter used to select responses. # @@ -429,7 +421,6 @@ class Template < OpenAI::Internal::Type::BaseModel # for more details. # # @param template [Array] A list of chat messages forming the prompt or context. May include variable refe - # ... # # @param type [Symbol, :template] The type of input messages. Always `template`. @@ -473,7 +464,7 @@ class EvalItem < OpenAI::Internal::Type::BaseModel # @!attribute content # Text inputs to the model - can contain template strings. # - # @return [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText] + # @return [String, OpenAI::Responses::ResponseInputText, OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText] required :content, union: -> { OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content } @@ -503,11 +494,11 @@ class EvalItem < OpenAI::Internal::Type::BaseModel # `assistant` role are presumed to have been generated by the model in previous # interactions. # - # @param content [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText] Text inputs to the model - can contain template strings. ... + # @param content [String, OpenAI::Responses::ResponseInputText, OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText] Text inputs to the model - can contain template strings. # - # @param role [Symbol, OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Role] The role of the message input. One of `user`, `assistant`, `system`, or ... + # @param role [Symbol, OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Role] The role of the message input. One of `user`, `assistant`, `system`, or # - # @param type [Symbol, OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Type] The type of the message input. Always `message`. ... + # @param type [Symbol, OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Type] The type of the message input. Always `message`. # Text inputs to the model - can contain template strings. # @@ -519,7 +510,7 @@ module Content variant String # A text input to the model. - variant -> { OpenAI::Models::Responses::ResponseInputText } + variant -> { OpenAI::Responses::ResponseInputText } # A text output from the model. variant -> { OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText } @@ -544,13 +535,13 @@ class OutputText < OpenAI::Internal::Type::BaseModel # # A text output from the model. # - # @param text [String] The text output from the model. ... + # @param text [String] The text output from the model. # - # @param type [Symbol, :output_text] The type of the output text. Always `output_text`. ... + # @param type [Symbol, :output_text] The type of the output text. Always `output_text`. end # @!method self.variants - # @return [Array(String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText)] + # @return [Array(String, OpenAI::Responses::ResponseInputText, OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText)] end # The role of the message input. One of `user`, `assistant`, `system`, or @@ -648,7 +639,7 @@ class SamplingParams < OpenAI::Internal::Type::BaseModel end # @!method self.variants - # @return [Array(OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource, OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions)] + # @return [Array(OpenAI::Evals::CreateEvalJSONLRunDataSource, OpenAI::Evals::CreateEvalCompletionsRunDataSource, OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions)] end class PerModelUsage < OpenAI::Internal::Type::BaseModel diff --git a/lib/openai/models/evals/run_create_params.rb b/lib/openai/models/evals/run_create_params.rb index 73ceb87e..46e49a3d 100644 --- a/lib/openai/models/evals/run_create_params.rb +++ b/lib/openai/models/evals/run_create_params.rb @@ -11,8 +11,8 @@ class RunCreateParams < OpenAI::Internal::Type::BaseModel # @!attribute data_source # Details about the run's data source. # - # @return [OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource, OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource] - required :data_source, union: -> { OpenAI::Models::Evals::RunCreateParams::DataSource } + # @return [OpenAI::Evals::CreateEvalJSONLRunDataSource, OpenAI::Evals::CreateEvalCompletionsRunDataSource, OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource] + required :data_source, union: -> { OpenAI::Evals::RunCreateParams::DataSource } # @!attribute metadata # Set of 16 key-value pairs that can be attached to an object. This can be useful @@ -35,9 +35,9 @@ class RunCreateParams < OpenAI::Internal::Type::BaseModel # Some parameter documentations has been truncated, see # {OpenAI::Models::Evals::RunCreateParams} for more details. # - # @param data_source [OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource, OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource] Details about the run's data source. + # @param data_source [OpenAI::Evals::CreateEvalJSONLRunDataSource, OpenAI::Evals::CreateEvalCompletionsRunDataSource, OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource] Details about the run's data source. # - # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be # # @param name [String] The name of the run. # @@ -48,34 +48,40 @@ module DataSource extend OpenAI::Internal::Type::Union # A JsonlRunDataSource object with that specifies a JSONL file that matches the eval - variant -> { OpenAI::Models::Evals::CreateEvalJSONLRunDataSource } + variant -> { OpenAI::Evals::CreateEvalJSONLRunDataSource } # A CompletionsRunDataSource object describing a model sampling configuration. - variant -> { OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource } + variant -> { OpenAI::Evals::CreateEvalCompletionsRunDataSource } # A ResponsesRunDataSource object describing a model sampling configuration. - variant -> { OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource } + variant -> { OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource } class CreateEvalResponsesRunDataSource < OpenAI::Internal::Type::BaseModel # @!attribute source # A EvalResponsesSource object describing a run data source configuration. # - # @return [OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::FileContent, OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::FileID, OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::Responses] + # @return [OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::FileContent, OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::FileID, OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::Responses] required :source, - union: -> { OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source } + union: -> { + OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source + } # @!attribute type # The type of run data source. Always `completions`. # - # @return [Symbol, OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Type] + # @return [Symbol, OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Type] required :type, - enum: -> { OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Type } + enum: -> { + OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Type + } # @!attribute input_messages # - # @return [OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template, OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::ItemReference, nil] + # @return [OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template, OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::ItemReference, nil] optional :input_messages, - union: -> { OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages } + union: -> { + OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages + } # @!attribute model # The name of the model to use for generating completions (e.g. "o3-mini"). @@ -85,56 +91,62 @@ class CreateEvalResponsesRunDataSource < OpenAI::Internal::Type::BaseModel # @!attribute sampling_params # - # @return [OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::SamplingParams, nil] + # @return [OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::SamplingParams, nil] optional :sampling_params, - -> { OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::SamplingParams } + -> { + OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::SamplingParams + } # @!method initialize(source:, type:, input_messages: nil, model: nil, sampling_params: nil) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource} + # {OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource} # for more details. # # A ResponsesRunDataSource object describing a model sampling configuration. # - # @param source [OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::FileContent, OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::FileID, OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::Responses] A EvalResponsesSource object describing a run data source configuration. ... + # @param source [OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::FileContent, OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::FileID, OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::Responses] A EvalResponsesSource object describing a run data source configuration. # - # @param type [Symbol, OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Type] The type of run data source. Always `completions`. + # @param type [Symbol, OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Type] The type of run data source. Always `completions`. # - # @param input_messages [OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template, OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::ItemReference] + # @param input_messages [OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template, OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::ItemReference] # # @param model [String] The name of the model to use for generating completions (e.g. "o3-mini"). # - # @param sampling_params [OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::SamplingParams] + # @param sampling_params [OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::SamplingParams] # A EvalResponsesSource object describing a run data source configuration. # - # @see OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource#source + # @see OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource#source module Source extend OpenAI::Internal::Type::Union discriminator :type variant :file_content, - -> { OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::FileContent } + -> { + OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::FileContent + } variant :file_id, - -> { OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::FileID } + -> { + OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::FileID + } # A EvalResponsesSource object describing a run data source configuration. variant :responses, - -> { OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::Responses } + -> { + OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::Responses + } class FileContent < OpenAI::Internal::Type::BaseModel # @!attribute content # The content of the jsonl file. # - # @return [Array] + # @return [Array] required :content, - -> do - OpenAI::Internal::Type::ArrayOf[ - OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::FileContent::Content - ] - end + -> { + OpenAI::Internal::Type::ArrayOf[OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::FileContent::Content] + } # @!attribute type # The type of jsonl source. Always `file_content`. @@ -143,7 +155,7 @@ class FileContent < OpenAI::Internal::Type::BaseModel required :type, const: :file_content # @!method initialize(content:, type: :file_content) - # @param content [Array] The content of the jsonl file. + # @param content [Array] The content of the jsonl file. # # @param type [Symbol, :file_content] The type of jsonl source. Always `file_content`. @@ -243,8 +255,8 @@ class Responses < OpenAI::Internal::Type::BaseModel # Optional reasoning effort parameter. This is a query parameter used to select # responses. # - # @return [Symbol, OpenAI::Models::ReasoningEffort, nil] - optional :reasoning_effort, enum: -> { OpenAI::Models::ReasoningEffort }, nil?: true + # @return [Symbol, OpenAI::ReasoningEffort, nil] + optional :reasoning_effort, enum: -> { OpenAI::ReasoningEffort }, nil?: true # @!attribute temperature # Sampling temperature. This is a query parameter used to select responses. @@ -266,34 +278,26 @@ class Responses < OpenAI::Internal::Type::BaseModel # @!method initialize(allow_parallel_tool_calls: nil, created_after: nil, created_before: nil, has_tool_calls: nil, instructions_search: nil, metadata: nil, model: nil, reasoning_effort: nil, temperature: nil, top_p: nil, users: nil, type: :responses) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::Responses} + # {OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::Responses} # for more details. # # A EvalResponsesSource object describing a run data source configuration. # # @param allow_parallel_tool_calls [Boolean, nil] Whether to allow parallel tool calls. This is a query parameter used to select r - # ... # # @param created_after [Integer, nil] Only include items created after this timestamp (inclusive). This is a query par - # ... # # @param created_before [Integer, nil] Only include items created before this timestamp (inclusive). This is a query pa - # ... # # @param has_tool_calls [Boolean, nil] Whether the response has tool calls. This is a query parameter used to select re - # ... # # @param instructions_search [String, nil] Optional search string for instructions. This is a query parameter used to selec - # ... # # @param metadata [Object, nil] Metadata filter for the responses. This is a query parameter used to select resp - # ... # # @param model [String, nil] The name of the model to find responses for. This is a query parameter used to s - # ... # - # @param reasoning_effort [Symbol, OpenAI::Models::ReasoningEffort, nil] Optional reasoning effort parameter. This is a query parameter used to select re - # ... + # @param reasoning_effort [Symbol, OpenAI::ReasoningEffort, nil] Optional reasoning effort parameter. This is a query parameter used to select re # # @param temperature [Float, nil] Sampling temperature. This is a query parameter used to select responses. # @@ -305,12 +309,12 @@ class Responses < OpenAI::Internal::Type::BaseModel end # @!method self.variants - # @return [Array(OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::FileContent, OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::FileID, OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::Responses)] + # @return [Array(OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::FileContent, OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::FileID, OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::Responses)] end # The type of run data source. Always `completions`. # - # @see OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource#type + # @see OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource#type module Type extend OpenAI::Internal::Type::Enum @@ -320,28 +324,32 @@ module Type # @return [Array] end - # @see OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource#input_messages + # @see OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource#input_messages module InputMessages extend OpenAI::Internal::Type::Union discriminator :type variant :template, - -> { OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template } + -> { + OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template + } variant :item_reference, - -> { OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::ItemReference } + -> { + OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::ItemReference + } class Template < OpenAI::Internal::Type::BaseModel # @!attribute template # A list of chat messages forming the prompt or context. May include variable # references to the "item" namespace, ie {{item.name}}. # - # @return [Array] + # @return [Array] required :template, -> do OpenAI::Internal::Type::ArrayOf[ - union: OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template + union: OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template ] end @@ -353,11 +361,10 @@ class Template < OpenAI::Internal::Type::BaseModel # @!method initialize(template:, type: :template) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template} + # {OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template} # for more details. # - # @param template [Array] A list of chat messages forming the prompt or context. May include variable refe - # ... + # @param template [Array] A list of chat messages forming the prompt or context. May include variable refe # # @param type [Symbol, :template] The type of input messages. Always `template`. @@ -369,14 +376,18 @@ class Template < OpenAI::Internal::Type::BaseModel module Template extend OpenAI::Internal::Type::Union - variant -> { OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::ChatMessage } + variant -> { + OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::ChatMessage + } # A message input to the model with a role indicating instruction following # hierarchy. Instructions given with the `developer` or `system` role take # precedence over instructions given with the `user` role. Messages with the # `assistant` role are presumed to have been generated by the model in previous # interactions. - variant -> { OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem } + variant -> { + OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem + } class ChatMessage < OpenAI::Internal::Type::BaseModel # @!attribute content @@ -401,28 +412,34 @@ class EvalItem < OpenAI::Internal::Type::BaseModel # @!attribute content # Text inputs to the model - can contain template strings. # - # @return [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::Content::OutputText] + # @return [String, OpenAI::Responses::ResponseInputText, OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::Content::OutputText] required :content, - union: -> { OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::Content } + union: -> { + OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::Content + } # @!attribute role # The role of the message input. One of `user`, `assistant`, `system`, or # `developer`. # - # @return [Symbol, OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::Role] + # @return [Symbol, OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::Role] required :role, - enum: -> { OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::Role } + enum: -> { + OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::Role + } # @!attribute type # The type of the message input. Always `message`. # - # @return [Symbol, OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::Type, nil] + # @return [Symbol, OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::Type, nil] optional :type, - enum: -> { OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::Type } + enum: -> { + OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::Type + } # @!method initialize(content:, role:, type: nil) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem} + # {OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem} # for more details. # # A message input to the model with a role indicating instruction following @@ -431,15 +448,15 @@ class EvalItem < OpenAI::Internal::Type::BaseModel # `assistant` role are presumed to have been generated by the model in previous # interactions. # - # @param content [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::Content::OutputText] Text inputs to the model - can contain template strings. ... + # @param content [String, OpenAI::Responses::ResponseInputText, OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::Content::OutputText] Text inputs to the model - can contain template strings. # - # @param role [Symbol, OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::Role] The role of the message input. One of `user`, `assistant`, `system`, or ... + # @param role [Symbol, OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::Role] The role of the message input. One of `user`, `assistant`, `system`, or # - # @param type [Symbol, OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::Type] The type of the message input. Always `message`. ... + # @param type [Symbol, OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::Type] The type of the message input. Always `message`. # Text inputs to the model - can contain template strings. # - # @see OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem#content + # @see OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem#content module Content extend OpenAI::Internal::Type::Union @@ -447,10 +464,12 @@ module Content variant String # A text input to the model. - variant -> { OpenAI::Models::Responses::ResponseInputText } + variant -> { OpenAI::Responses::ResponseInputText } # A text output from the model. - variant -> { OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::Content::OutputText } + variant -> { + OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::Content::OutputText + } class OutputText < OpenAI::Internal::Type::BaseModel # @!attribute text @@ -467,24 +486,24 @@ class OutputText < OpenAI::Internal::Type::BaseModel # @!method initialize(text:, type: :output_text) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::Content::OutputText} + # {OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::Content::OutputText} # for more details. # # A text output from the model. # - # @param text [String] The text output from the model. ... + # @param text [String] The text output from the model. # - # @param type [Symbol, :output_text] The type of the output text. Always `output_text`. ... + # @param type [Symbol, :output_text] The type of the output text. Always `output_text`. end # @!method self.variants - # @return [Array(String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::Content::OutputText)] + # @return [Array(String, OpenAI::Responses::ResponseInputText, OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::Content::OutputText)] end # The role of the message input. One of `user`, `assistant`, `system`, or # `developer`. # - # @see OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem#role + # @see OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem#role module Role extend OpenAI::Internal::Type::Enum @@ -499,7 +518,7 @@ module Role # The type of the message input. Always `message`. # - # @see OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem#type + # @see OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem#type module Type extend OpenAI::Internal::Type::Enum @@ -511,7 +530,7 @@ module Type end # @!method self.variants - # @return [Array(OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::ChatMessage, OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem)] + # @return [Array(OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::ChatMessage, OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem)] end end @@ -535,10 +554,10 @@ class ItemReference < OpenAI::Internal::Type::BaseModel end # @!method self.variants - # @return [Array(OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template, OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::ItemReference)] + # @return [Array(OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template, OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::ItemReference)] end - # @see OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource#sampling_params + # @see OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource#sampling_params class SamplingParams < OpenAI::Internal::Type::BaseModel # @!attribute max_completion_tokens # The maximum number of tokens in the generated output. @@ -576,7 +595,7 @@ class SamplingParams < OpenAI::Internal::Type::BaseModel end # @!method self.variants - # @return [Array(OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource, OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource)] + # @return [Array(OpenAI::Evals::CreateEvalJSONLRunDataSource, OpenAI::Evals::CreateEvalCompletionsRunDataSource, OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource)] end end end diff --git a/lib/openai/models/evals/run_create_response.rb b/lib/openai/models/evals/run_create_response.rb index 2326f6f0..d8870c35 100644 --- a/lib/openai/models/evals/run_create_response.rb +++ b/lib/openai/models/evals/run_create_response.rb @@ -20,14 +20,14 @@ class RunCreateResponse < OpenAI::Internal::Type::BaseModel # @!attribute data_source # Information about the run's data source. # - # @return [OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource, OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions] + # @return [OpenAI::Evals::CreateEvalJSONLRunDataSource, OpenAI::Evals::CreateEvalCompletionsRunDataSource, OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions] required :data_source, union: -> { OpenAI::Models::Evals::RunCreateResponse::DataSource } # @!attribute error # An object representing an error response from the Eval API. # - # @return [OpenAI::Models::Evals::EvalAPIError] - required :error, -> { OpenAI::Models::Evals::EvalAPIError } + # @return [OpenAI::Evals::EvalAPIError] + required :error, -> { OpenAI::Evals::EvalAPIError } # @!attribute eval_id # The identifier of the associated evaluation. @@ -106,13 +106,13 @@ class RunCreateResponse < OpenAI::Internal::Type::BaseModel # # @param created_at [Integer] Unix timestamp (in seconds) when the evaluation run was created. # - # @param data_source [OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource, OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions] Information about the run's data source. + # @param data_source [OpenAI::Evals::CreateEvalJSONLRunDataSource, OpenAI::Evals::CreateEvalCompletionsRunDataSource, OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions] Information about the run's data source. # - # @param error [OpenAI::Models::Evals::EvalAPIError] An object representing an error response from the Eval API. ... + # @param error [OpenAI::Evals::EvalAPIError] An object representing an error response from the Eval API. # # @param eval_id [String] The identifier of the associated evaluation. # - # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be # # @param model [String] The model that is evaluated, if applicable. # @@ -139,10 +139,10 @@ module DataSource discriminator :type # A JsonlRunDataSource object with that specifies a JSONL file that matches the eval - variant :jsonl, -> { OpenAI::Models::Evals::CreateEvalJSONLRunDataSource } + variant :jsonl, -> { OpenAI::Evals::CreateEvalJSONLRunDataSource } # A CompletionsRunDataSource object describing a model sampling configuration. - variant :completions, -> { OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource } + variant :completions, -> { OpenAI::Evals::CreateEvalCompletionsRunDataSource } # A ResponsesRunDataSource object describing a model sampling configuration. variant :completions, -> { OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions } @@ -185,7 +185,7 @@ class Completions < OpenAI::Internal::Type::BaseModel # # A ResponsesRunDataSource object describing a model sampling configuration. # - # @param source [OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::Source::FileContent, OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::Source::FileID, OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::Source::Responses] A EvalResponsesSource object describing a run data source configuration. ... + # @param source [OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::Source::FileContent, OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::Source::FileID, OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::Source::Responses] A EvalResponsesSource object describing a run data source configuration. # # @param input_messages [OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template, OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::ItemReference] # @@ -327,8 +327,8 @@ class Responses < OpenAI::Internal::Type::BaseModel # Optional reasoning effort parameter. This is a query parameter used to select # responses. # - # @return [Symbol, OpenAI::Models::ReasoningEffort, nil] - optional :reasoning_effort, enum: -> { OpenAI::Models::ReasoningEffort }, nil?: true + # @return [Symbol, OpenAI::ReasoningEffort, nil] + optional :reasoning_effort, enum: -> { OpenAI::ReasoningEffort }, nil?: true # @!attribute temperature # Sampling temperature. This is a query parameter used to select responses. @@ -356,28 +356,20 @@ class Responses < OpenAI::Internal::Type::BaseModel # A EvalResponsesSource object describing a run data source configuration. # # @param allow_parallel_tool_calls [Boolean, nil] Whether to allow parallel tool calls. This is a query parameter used to select r - # ... # # @param created_after [Integer, nil] Only include items created after this timestamp (inclusive). This is a query par - # ... # # @param created_before [Integer, nil] Only include items created before this timestamp (inclusive). This is a query pa - # ... # # @param has_tool_calls [Boolean, nil] Whether the response has tool calls. This is a query parameter used to select re - # ... # # @param instructions_search [String, nil] Optional search string for instructions. This is a query parameter used to selec - # ... # # @param metadata [Object, nil] Metadata filter for the responses. This is a query parameter used to select resp - # ... # # @param model [String, nil] The name of the model to find responses for. This is a query parameter used to s - # ... # - # @param reasoning_effort [Symbol, OpenAI::Models::ReasoningEffort, nil] Optional reasoning effort parameter. This is a query parameter used to select re - # ... + # @param reasoning_effort [Symbol, OpenAI::ReasoningEffort, nil] Optional reasoning effort parameter. This is a query parameter used to select re # # @param temperature [Float, nil] Sampling temperature. This is a query parameter used to select responses. # @@ -429,7 +421,6 @@ class Template < OpenAI::Internal::Type::BaseModel # for more details. # # @param template [Array] A list of chat messages forming the prompt or context. May include variable refe - # ... # # @param type [Symbol, :template] The type of input messages. Always `template`. @@ -473,7 +464,7 @@ class EvalItem < OpenAI::Internal::Type::BaseModel # @!attribute content # Text inputs to the model - can contain template strings. # - # @return [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText] + # @return [String, OpenAI::Responses::ResponseInputText, OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText] required :content, union: -> { OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content } @@ -503,11 +494,11 @@ class EvalItem < OpenAI::Internal::Type::BaseModel # `assistant` role are presumed to have been generated by the model in previous # interactions. # - # @param content [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText] Text inputs to the model - can contain template strings. ... + # @param content [String, OpenAI::Responses::ResponseInputText, OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText] Text inputs to the model - can contain template strings. # - # @param role [Symbol, OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Role] The role of the message input. One of `user`, `assistant`, `system`, or ... + # @param role [Symbol, OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Role] The role of the message input. One of `user`, `assistant`, `system`, or # - # @param type [Symbol, OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Type] The type of the message input. Always `message`. ... + # @param type [Symbol, OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Type] The type of the message input. Always `message`. # Text inputs to the model - can contain template strings. # @@ -519,7 +510,7 @@ module Content variant String # A text input to the model. - variant -> { OpenAI::Models::Responses::ResponseInputText } + variant -> { OpenAI::Responses::ResponseInputText } # A text output from the model. variant -> { OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText } @@ -544,13 +535,13 @@ class OutputText < OpenAI::Internal::Type::BaseModel # # A text output from the model. # - # @param text [String] The text output from the model. ... + # @param text [String] The text output from the model. # - # @param type [Symbol, :output_text] The type of the output text. Always `output_text`. ... + # @param type [Symbol, :output_text] The type of the output text. Always `output_text`. end # @!method self.variants - # @return [Array(String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText)] + # @return [Array(String, OpenAI::Responses::ResponseInputText, OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText)] end # The role of the message input. One of `user`, `assistant`, `system`, or @@ -648,7 +639,7 @@ class SamplingParams < OpenAI::Internal::Type::BaseModel end # @!method self.variants - # @return [Array(OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource, OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions)] + # @return [Array(OpenAI::Evals::CreateEvalJSONLRunDataSource, OpenAI::Evals::CreateEvalCompletionsRunDataSource, OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions)] end class PerModelUsage < OpenAI::Internal::Type::BaseModel diff --git a/lib/openai/models/evals/run_list_params.rb b/lib/openai/models/evals/run_list_params.rb index d828e118..bfb9d83f 100644 --- a/lib/openai/models/evals/run_list_params.rb +++ b/lib/openai/models/evals/run_list_params.rb @@ -24,15 +24,15 @@ class RunListParams < OpenAI::Internal::Type::BaseModel # Sort order for runs by timestamp. Use `asc` for ascending order or `desc` for # descending order. Defaults to `asc`. # - # @return [Symbol, OpenAI::Models::Evals::RunListParams::Order, nil] - optional :order, enum: -> { OpenAI::Models::Evals::RunListParams::Order } + # @return [Symbol, OpenAI::Evals::RunListParams::Order, nil] + optional :order, enum: -> { OpenAI::Evals::RunListParams::Order } # @!attribute status # Filter runs by status. One of `queued` | `in_progress` | `failed` | `completed` # | `canceled`. # - # @return [Symbol, OpenAI::Models::Evals::RunListParams::Status, nil] - optional :status, enum: -> { OpenAI::Models::Evals::RunListParams::Status } + # @return [Symbol, OpenAI::Evals::RunListParams::Status, nil] + optional :status, enum: -> { OpenAI::Evals::RunListParams::Status } # @!method initialize(after: nil, limit: nil, order: nil, status: nil, request_options: {}) # Some parameter documentations has been truncated, see @@ -42,11 +42,9 @@ class RunListParams < OpenAI::Internal::Type::BaseModel # # @param limit [Integer] Number of runs to retrieve. # - # @param order [Symbol, OpenAI::Models::Evals::RunListParams::Order] Sort order for runs by timestamp. Use `asc` for ascending order or `desc` for de - # ... + # @param order [Symbol, OpenAI::Evals::RunListParams::Order] Sort order for runs by timestamp. Use `asc` for ascending order or `desc` for de # - # @param status [Symbol, OpenAI::Models::Evals::RunListParams::Status] Filter runs by status. One of `queued` | `in_progress` | `failed` | `completed` - # ... + # @param status [Symbol, OpenAI::Evals::RunListParams::Status] Filter runs by status. One of `queued` | `in_progress` | `failed` | `completed` # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] diff --git a/lib/openai/models/evals/run_list_response.rb b/lib/openai/models/evals/run_list_response.rb index 3e2e0deb..6f7a7637 100644 --- a/lib/openai/models/evals/run_list_response.rb +++ b/lib/openai/models/evals/run_list_response.rb @@ -20,14 +20,14 @@ class RunListResponse < OpenAI::Internal::Type::BaseModel # @!attribute data_source # Information about the run's data source. # - # @return [OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource, OpenAI::Models::Evals::RunListResponse::DataSource::Completions] + # @return [OpenAI::Evals::CreateEvalJSONLRunDataSource, OpenAI::Evals::CreateEvalCompletionsRunDataSource, OpenAI::Models::Evals::RunListResponse::DataSource::Completions] required :data_source, union: -> { OpenAI::Models::Evals::RunListResponse::DataSource } # @!attribute error # An object representing an error response from the Eval API. # - # @return [OpenAI::Models::Evals::EvalAPIError] - required :error, -> { OpenAI::Models::Evals::EvalAPIError } + # @return [OpenAI::Evals::EvalAPIError] + required :error, -> { OpenAI::Evals::EvalAPIError } # @!attribute eval_id # The identifier of the associated evaluation. @@ -106,13 +106,13 @@ class RunListResponse < OpenAI::Internal::Type::BaseModel # # @param created_at [Integer] Unix timestamp (in seconds) when the evaluation run was created. # - # @param data_source [OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource, OpenAI::Models::Evals::RunListResponse::DataSource::Completions] Information about the run's data source. + # @param data_source [OpenAI::Evals::CreateEvalJSONLRunDataSource, OpenAI::Evals::CreateEvalCompletionsRunDataSource, OpenAI::Models::Evals::RunListResponse::DataSource::Completions] Information about the run's data source. # - # @param error [OpenAI::Models::Evals::EvalAPIError] An object representing an error response from the Eval API. ... + # @param error [OpenAI::Evals::EvalAPIError] An object representing an error response from the Eval API. # # @param eval_id [String] The identifier of the associated evaluation. # - # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be # # @param model [String] The model that is evaluated, if applicable. # @@ -139,10 +139,10 @@ module DataSource discriminator :type # A JsonlRunDataSource object with that specifies a JSONL file that matches the eval - variant :jsonl, -> { OpenAI::Models::Evals::CreateEvalJSONLRunDataSource } + variant :jsonl, -> { OpenAI::Evals::CreateEvalJSONLRunDataSource } # A CompletionsRunDataSource object describing a model sampling configuration. - variant :completions, -> { OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource } + variant :completions, -> { OpenAI::Evals::CreateEvalCompletionsRunDataSource } # A ResponsesRunDataSource object describing a model sampling configuration. variant :completions, -> { OpenAI::Models::Evals::RunListResponse::DataSource::Completions } @@ -185,7 +185,7 @@ class Completions < OpenAI::Internal::Type::BaseModel # # A ResponsesRunDataSource object describing a model sampling configuration. # - # @param source [OpenAI::Models::Evals::RunListResponse::DataSource::Completions::Source::FileContent, OpenAI::Models::Evals::RunListResponse::DataSource::Completions::Source::FileID, OpenAI::Models::Evals::RunListResponse::DataSource::Completions::Source::Responses] A EvalResponsesSource object describing a run data source configuration. ... + # @param source [OpenAI::Models::Evals::RunListResponse::DataSource::Completions::Source::FileContent, OpenAI::Models::Evals::RunListResponse::DataSource::Completions::Source::FileID, OpenAI::Models::Evals::RunListResponse::DataSource::Completions::Source::Responses] A EvalResponsesSource object describing a run data source configuration. # # @param input_messages [OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template, OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::ItemReference] # @@ -327,8 +327,8 @@ class Responses < OpenAI::Internal::Type::BaseModel # Optional reasoning effort parameter. This is a query parameter used to select # responses. # - # @return [Symbol, OpenAI::Models::ReasoningEffort, nil] - optional :reasoning_effort, enum: -> { OpenAI::Models::ReasoningEffort }, nil?: true + # @return [Symbol, OpenAI::ReasoningEffort, nil] + optional :reasoning_effort, enum: -> { OpenAI::ReasoningEffort }, nil?: true # @!attribute temperature # Sampling temperature. This is a query parameter used to select responses. @@ -356,28 +356,20 @@ class Responses < OpenAI::Internal::Type::BaseModel # A EvalResponsesSource object describing a run data source configuration. # # @param allow_parallel_tool_calls [Boolean, nil] Whether to allow parallel tool calls. This is a query parameter used to select r - # ... # # @param created_after [Integer, nil] Only include items created after this timestamp (inclusive). This is a query par - # ... # # @param created_before [Integer, nil] Only include items created before this timestamp (inclusive). This is a query pa - # ... # # @param has_tool_calls [Boolean, nil] Whether the response has tool calls. This is a query parameter used to select re - # ... # # @param instructions_search [String, nil] Optional search string for instructions. This is a query parameter used to selec - # ... # # @param metadata [Object, nil] Metadata filter for the responses. This is a query parameter used to select resp - # ... # # @param model [String, nil] The name of the model to find responses for. This is a query parameter used to s - # ... # - # @param reasoning_effort [Symbol, OpenAI::Models::ReasoningEffort, nil] Optional reasoning effort parameter. This is a query parameter used to select re - # ... + # @param reasoning_effort [Symbol, OpenAI::ReasoningEffort, nil] Optional reasoning effort parameter. This is a query parameter used to select re # # @param temperature [Float, nil] Sampling temperature. This is a query parameter used to select responses. # @@ -425,7 +417,6 @@ class Template < OpenAI::Internal::Type::BaseModel # for more details. # # @param template [Array] A list of chat messages forming the prompt or context. May include variable refe - # ... # # @param type [Symbol, :template] The type of input messages. Always `template`. @@ -469,7 +460,7 @@ class EvalItem < OpenAI::Internal::Type::BaseModel # @!attribute content # Text inputs to the model - can contain template strings. # - # @return [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText] + # @return [String, OpenAI::Responses::ResponseInputText, OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText] required :content, union: -> { OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content } @@ -499,11 +490,11 @@ class EvalItem < OpenAI::Internal::Type::BaseModel # `assistant` role are presumed to have been generated by the model in previous # interactions. # - # @param content [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText] Text inputs to the model - can contain template strings. ... + # @param content [String, OpenAI::Responses::ResponseInputText, OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText] Text inputs to the model - can contain template strings. # - # @param role [Symbol, OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Role] The role of the message input. One of `user`, `assistant`, `system`, or ... + # @param role [Symbol, OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Role] The role of the message input. One of `user`, `assistant`, `system`, or # - # @param type [Symbol, OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Type] The type of the message input. Always `message`. ... + # @param type [Symbol, OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Type] The type of the message input. Always `message`. # Text inputs to the model - can contain template strings. # @@ -515,7 +506,7 @@ module Content variant String # A text input to the model. - variant -> { OpenAI::Models::Responses::ResponseInputText } + variant -> { OpenAI::Responses::ResponseInputText } # A text output from the model. variant -> { OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText } @@ -540,13 +531,13 @@ class OutputText < OpenAI::Internal::Type::BaseModel # # A text output from the model. # - # @param text [String] The text output from the model. ... + # @param text [String] The text output from the model. # - # @param type [Symbol, :output_text] The type of the output text. Always `output_text`. ... + # @param type [Symbol, :output_text] The type of the output text. Always `output_text`. end # @!method self.variants - # @return [Array(String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText)] + # @return [Array(String, OpenAI::Responses::ResponseInputText, OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText)] end # The role of the message input. One of `user`, `assistant`, `system`, or @@ -644,7 +635,7 @@ class SamplingParams < OpenAI::Internal::Type::BaseModel end # @!method self.variants - # @return [Array(OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource, OpenAI::Models::Evals::RunListResponse::DataSource::Completions)] + # @return [Array(OpenAI::Evals::CreateEvalJSONLRunDataSource, OpenAI::Evals::CreateEvalCompletionsRunDataSource, OpenAI::Models::Evals::RunListResponse::DataSource::Completions)] end class PerModelUsage < OpenAI::Internal::Type::BaseModel diff --git a/lib/openai/models/evals/run_retrieve_response.rb b/lib/openai/models/evals/run_retrieve_response.rb index 1118a6ba..84c210e8 100644 --- a/lib/openai/models/evals/run_retrieve_response.rb +++ b/lib/openai/models/evals/run_retrieve_response.rb @@ -20,14 +20,14 @@ class RunRetrieveResponse < OpenAI::Internal::Type::BaseModel # @!attribute data_source # Information about the run's data source. # - # @return [OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource, OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions] + # @return [OpenAI::Evals::CreateEvalJSONLRunDataSource, OpenAI::Evals::CreateEvalCompletionsRunDataSource, OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions] required :data_source, union: -> { OpenAI::Models::Evals::RunRetrieveResponse::DataSource } # @!attribute error # An object representing an error response from the Eval API. # - # @return [OpenAI::Models::Evals::EvalAPIError] - required :error, -> { OpenAI::Models::Evals::EvalAPIError } + # @return [OpenAI::Evals::EvalAPIError] + required :error, -> { OpenAI::Evals::EvalAPIError } # @!attribute eval_id # The identifier of the associated evaluation. @@ -106,13 +106,13 @@ class RunRetrieveResponse < OpenAI::Internal::Type::BaseModel # # @param created_at [Integer] Unix timestamp (in seconds) when the evaluation run was created. # - # @param data_source [OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource, OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions] Information about the run's data source. + # @param data_source [OpenAI::Evals::CreateEvalJSONLRunDataSource, OpenAI::Evals::CreateEvalCompletionsRunDataSource, OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions] Information about the run's data source. # - # @param error [OpenAI::Models::Evals::EvalAPIError] An object representing an error response from the Eval API. ... + # @param error [OpenAI::Evals::EvalAPIError] An object representing an error response from the Eval API. # # @param eval_id [String] The identifier of the associated evaluation. # - # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be # # @param model [String] The model that is evaluated, if applicable. # @@ -139,10 +139,10 @@ module DataSource discriminator :type # A JsonlRunDataSource object with that specifies a JSONL file that matches the eval - variant :jsonl, -> { OpenAI::Models::Evals::CreateEvalJSONLRunDataSource } + variant :jsonl, -> { OpenAI::Evals::CreateEvalJSONLRunDataSource } # A CompletionsRunDataSource object describing a model sampling configuration. - variant :completions, -> { OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource } + variant :completions, -> { OpenAI::Evals::CreateEvalCompletionsRunDataSource } # A ResponsesRunDataSource object describing a model sampling configuration. variant :completions, -> { OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions } @@ -186,7 +186,7 @@ class Completions < OpenAI::Internal::Type::BaseModel # # A ResponsesRunDataSource object describing a model sampling configuration. # - # @param source [OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::Source::FileContent, OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::Source::FileID, OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::Source::Responses] A EvalResponsesSource object describing a run data source configuration. ... + # @param source [OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::Source::FileContent, OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::Source::FileID, OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::Source::Responses] A EvalResponsesSource object describing a run data source configuration. # # @param input_messages [OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template, OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::ItemReference] # @@ -329,8 +329,8 @@ class Responses < OpenAI::Internal::Type::BaseModel # Optional reasoning effort parameter. This is a query parameter used to select # responses. # - # @return [Symbol, OpenAI::Models::ReasoningEffort, nil] - optional :reasoning_effort, enum: -> { OpenAI::Models::ReasoningEffort }, nil?: true + # @return [Symbol, OpenAI::ReasoningEffort, nil] + optional :reasoning_effort, enum: -> { OpenAI::ReasoningEffort }, nil?: true # @!attribute temperature # Sampling temperature. This is a query parameter used to select responses. @@ -358,28 +358,20 @@ class Responses < OpenAI::Internal::Type::BaseModel # A EvalResponsesSource object describing a run data source configuration. # # @param allow_parallel_tool_calls [Boolean, nil] Whether to allow parallel tool calls. This is a query parameter used to select r - # ... # # @param created_after [Integer, nil] Only include items created after this timestamp (inclusive). This is a query par - # ... # # @param created_before [Integer, nil] Only include items created before this timestamp (inclusive). This is a query pa - # ... # # @param has_tool_calls [Boolean, nil] Whether the response has tool calls. This is a query parameter used to select re - # ... # # @param instructions_search [String, nil] Optional search string for instructions. This is a query parameter used to selec - # ... # # @param metadata [Object, nil] Metadata filter for the responses. This is a query parameter used to select resp - # ... # # @param model [String, nil] The name of the model to find responses for. This is a query parameter used to s - # ... # - # @param reasoning_effort [Symbol, OpenAI::Models::ReasoningEffort, nil] Optional reasoning effort parameter. This is a query parameter used to select re - # ... + # @param reasoning_effort [Symbol, OpenAI::ReasoningEffort, nil] Optional reasoning effort parameter. This is a query parameter used to select re # # @param temperature [Float, nil] Sampling temperature. This is a query parameter used to select responses. # @@ -431,7 +423,6 @@ class Template < OpenAI::Internal::Type::BaseModel # for more details. # # @param template [Array] A list of chat messages forming the prompt or context. May include variable refe - # ... # # @param type [Symbol, :template] The type of input messages. Always `template`. @@ -475,7 +466,7 @@ class EvalItem < OpenAI::Internal::Type::BaseModel # @!attribute content # Text inputs to the model - can contain template strings. # - # @return [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText] + # @return [String, OpenAI::Responses::ResponseInputText, OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText] required :content, union: -> { OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content } @@ -505,11 +496,11 @@ class EvalItem < OpenAI::Internal::Type::BaseModel # `assistant` role are presumed to have been generated by the model in previous # interactions. # - # @param content [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText] Text inputs to the model - can contain template strings. ... + # @param content [String, OpenAI::Responses::ResponseInputText, OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText] Text inputs to the model - can contain template strings. # - # @param role [Symbol, OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Role] The role of the message input. One of `user`, `assistant`, `system`, or ... + # @param role [Symbol, OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Role] The role of the message input. One of `user`, `assistant`, `system`, or # - # @param type [Symbol, OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Type] The type of the message input. Always `message`. ... + # @param type [Symbol, OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Type] The type of the message input. Always `message`. # Text inputs to the model - can contain template strings. # @@ -521,7 +512,7 @@ module Content variant String # A text input to the model. - variant -> { OpenAI::Models::Responses::ResponseInputText } + variant -> { OpenAI::Responses::ResponseInputText } # A text output from the model. variant -> { OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText } @@ -546,13 +537,13 @@ class OutputText < OpenAI::Internal::Type::BaseModel # # A text output from the model. # - # @param text [String] The text output from the model. ... + # @param text [String] The text output from the model. # - # @param type [Symbol, :output_text] The type of the output text. Always `output_text`. ... + # @param type [Symbol, :output_text] The type of the output text. Always `output_text`. end # @!method self.variants - # @return [Array(String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText)] + # @return [Array(String, OpenAI::Responses::ResponseInputText, OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText)] end # The role of the message input. One of `user`, `assistant`, `system`, or @@ -650,7 +641,7 @@ class SamplingParams < OpenAI::Internal::Type::BaseModel end # @!method self.variants - # @return [Array(OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource, OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions)] + # @return [Array(OpenAI::Evals::CreateEvalJSONLRunDataSource, OpenAI::Evals::CreateEvalCompletionsRunDataSource, OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions)] end class PerModelUsage < OpenAI::Internal::Type::BaseModel diff --git a/lib/openai/models/evals/runs/output_item_list_params.rb b/lib/openai/models/evals/runs/output_item_list_params.rb index 6eadd7fb..0d0e6406 100644 --- a/lib/openai/models/evals/runs/output_item_list_params.rb +++ b/lib/openai/models/evals/runs/output_item_list_params.rb @@ -30,15 +30,15 @@ class OutputItemListParams < OpenAI::Internal::Type::BaseModel # Sort order for output items by timestamp. Use `asc` for ascending order or # `desc` for descending order. Defaults to `asc`. # - # @return [Symbol, OpenAI::Models::Evals::Runs::OutputItemListParams::Order, nil] - optional :order, enum: -> { OpenAI::Models::Evals::Runs::OutputItemListParams::Order } + # @return [Symbol, OpenAI::Evals::Runs::OutputItemListParams::Order, nil] + optional :order, enum: -> { OpenAI::Evals::Runs::OutputItemListParams::Order } # @!attribute status # Filter output items by status. Use `failed` to filter by failed output items or # `pass` to filter by passed output items. # - # @return [Symbol, OpenAI::Models::Evals::Runs::OutputItemListParams::Status, nil] - optional :status, enum: -> { OpenAI::Models::Evals::Runs::OutputItemListParams::Status } + # @return [Symbol, OpenAI::Evals::Runs::OutputItemListParams::Status, nil] + optional :status, enum: -> { OpenAI::Evals::Runs::OutputItemListParams::Status } # @!method initialize(eval_id:, after: nil, limit: nil, order: nil, status: nil, request_options: {}) # Some parameter documentations has been truncated, see @@ -50,10 +50,9 @@ class OutputItemListParams < OpenAI::Internal::Type::BaseModel # # @param limit [Integer] Number of output items to retrieve. # - # @param order [Symbol, OpenAI::Models::Evals::Runs::OutputItemListParams::Order] Sort order for output items by timestamp. Use `asc` for ascending order or `desc - # ... + # @param order [Symbol, OpenAI::Evals::Runs::OutputItemListParams::Order] Sort order for output items by timestamp. Use `asc` for ascending order or `desc # - # @param status [Symbol, OpenAI::Models::Evals::Runs::OutputItemListParams::Status] Filter output items by status. Use `failed` to filter by failed output ... + # @param status [Symbol, OpenAI::Evals::Runs::OutputItemListParams::Status] Filter output items by status. Use `failed` to filter by failed output # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] diff --git a/lib/openai/models/evals/runs/output_item_list_response.rb b/lib/openai/models/evals/runs/output_item_list_response.rb index e5c369c9..85505173 100644 --- a/lib/openai/models/evals/runs/output_item_list_response.rb +++ b/lib/openai/models/evals/runs/output_item_list_response.rb @@ -95,8 +95,8 @@ class Sample < OpenAI::Internal::Type::BaseModel # @!attribute error # An object representing an error response from the Eval API. # - # @return [OpenAI::Models::Evals::EvalAPIError] - required :error, -> { OpenAI::Models::Evals::EvalAPIError } + # @return [OpenAI::Evals::EvalAPIError] + required :error, -> { OpenAI::Evals::EvalAPIError } # @!attribute finish_reason # The reason why the sample generation was finished. @@ -160,7 +160,7 @@ class Sample < OpenAI::Internal::Type::BaseModel # # A sample containing the input and output of the evaluation run. # - # @param error [OpenAI::Models::Evals::EvalAPIError] An object representing an error response from the Eval API. ... + # @param error [OpenAI::Evals::EvalAPIError] An object representing an error response from the Eval API. # # @param finish_reason [String] The reason why the sample generation was finished. # diff --git a/lib/openai/models/evals/runs/output_item_retrieve_response.rb b/lib/openai/models/evals/runs/output_item_retrieve_response.rb index 70b4c3ab..5a75e4a0 100644 --- a/lib/openai/models/evals/runs/output_item_retrieve_response.rb +++ b/lib/openai/models/evals/runs/output_item_retrieve_response.rb @@ -95,8 +95,8 @@ class Sample < OpenAI::Internal::Type::BaseModel # @!attribute error # An object representing an error response from the Eval API. # - # @return [OpenAI::Models::Evals::EvalAPIError] - required :error, -> { OpenAI::Models::Evals::EvalAPIError } + # @return [OpenAI::Evals::EvalAPIError] + required :error, -> { OpenAI::Evals::EvalAPIError } # @!attribute finish_reason # The reason why the sample generation was finished. @@ -161,7 +161,7 @@ class Sample < OpenAI::Internal::Type::BaseModel # # A sample containing the input and output of the evaluation run. # - # @param error [OpenAI::Models::Evals::EvalAPIError] An object representing an error response from the Eval API. ... + # @param error [OpenAI::Evals::EvalAPIError] An object representing an error response from the Eval API. # # @param finish_reason [String] The reason why the sample generation was finished. # diff --git a/lib/openai/models/file_chunking_strategy.rb b/lib/openai/models/file_chunking_strategy.rb index a7354de0..5ee317be 100644 --- a/lib/openai/models/file_chunking_strategy.rb +++ b/lib/openai/models/file_chunking_strategy.rb @@ -8,13 +8,13 @@ module FileChunkingStrategy discriminator :type - variant :static, -> { OpenAI::Models::StaticFileChunkingStrategyObject } + variant :static, -> { OpenAI::StaticFileChunkingStrategyObject } # This is returned when the chunking strategy is unknown. Typically, this is because the file was indexed before the `chunking_strategy` concept was introduced in the API. - variant :other, -> { OpenAI::Models::OtherFileChunkingStrategyObject } + variant :other, -> { OpenAI::OtherFileChunkingStrategyObject } # @!method self.variants - # @return [Array(OpenAI::Models::StaticFileChunkingStrategyObject, OpenAI::Models::OtherFileChunkingStrategyObject)] + # @return [Array(OpenAI::StaticFileChunkingStrategyObject, OpenAI::OtherFileChunkingStrategyObject)] end end end diff --git a/lib/openai/models/file_chunking_strategy_param.rb b/lib/openai/models/file_chunking_strategy_param.rb index 7f5a2487..6a46bdfc 100644 --- a/lib/openai/models/file_chunking_strategy_param.rb +++ b/lib/openai/models/file_chunking_strategy_param.rb @@ -10,13 +10,13 @@ module FileChunkingStrategyParam discriminator :type # The default strategy. This strategy currently uses a `max_chunk_size_tokens` of `800` and `chunk_overlap_tokens` of `400`. - variant :auto, -> { OpenAI::Models::AutoFileChunkingStrategyParam } + variant :auto, -> { OpenAI::AutoFileChunkingStrategyParam } # Customize your own chunking strategy by setting chunk size and chunk overlap. - variant :static, -> { OpenAI::Models::StaticFileChunkingStrategyObjectParam } + variant :static, -> { OpenAI::StaticFileChunkingStrategyObjectParam } # @!method self.variants - # @return [Array(OpenAI::Models::AutoFileChunkingStrategyParam, OpenAI::Models::StaticFileChunkingStrategyObjectParam)] + # @return [Array(OpenAI::AutoFileChunkingStrategyParam, OpenAI::StaticFileChunkingStrategyObjectParam)] end end end diff --git a/lib/openai/models/file_create_params.rb b/lib/openai/models/file_create_params.rb index d5062f4d..c88d1052 100644 --- a/lib/openai/models/file_create_params.rb +++ b/lib/openai/models/file_create_params.rb @@ -19,17 +19,16 @@ class FileCreateParams < OpenAI::Internal::Type::BaseModel # fine-tuning - `vision`: Images used for vision fine-tuning - `user_data`: # Flexible file type for any purpose - `evals`: Used for eval data sets # - # @return [Symbol, OpenAI::Models::FilePurpose] - required :purpose, enum: -> { OpenAI::Models::FilePurpose } + # @return [Symbol, OpenAI::FilePurpose] + required :purpose, enum: -> { OpenAI::FilePurpose } # @!method initialize(file:, purpose:, request_options: {}) # Some parameter documentations has been truncated, see # {OpenAI::Models::FileCreateParams} for more details. # - # @param file [Pathname, StringIO, IO, OpenAI::FilePart] The File object (not file name) to be uploaded. ... + # @param file [Pathname, StringIO, IO, OpenAI::FilePart] The File object (not file name) to be uploaded. # - # @param purpose [Symbol, OpenAI::Models::FilePurpose] The intended purpose of the uploaded file. One of: - `assistants`: Used in the A - # ... + # @param purpose [Symbol, OpenAI::FilePurpose] The intended purpose of the uploaded file. One of: - `assistants`: Used in the A # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] end diff --git a/lib/openai/models/file_list_params.rb b/lib/openai/models/file_list_params.rb index 423236ed..82ca75f1 100644 --- a/lib/openai/models/file_list_params.rb +++ b/lib/openai/models/file_list_params.rb @@ -27,8 +27,8 @@ class FileListParams < OpenAI::Internal::Type::BaseModel # Sort order by the `created_at` timestamp of the objects. `asc` for ascending # order and `desc` for descending order. # - # @return [Symbol, OpenAI::Models::FileListParams::Order, nil] - optional :order, enum: -> { OpenAI::Models::FileListParams::Order } + # @return [Symbol, OpenAI::FileListParams::Order, nil] + optional :order, enum: -> { OpenAI::FileListParams::Order } # @!attribute purpose # Only return files with the given purpose. @@ -41,13 +41,10 @@ class FileListParams < OpenAI::Internal::Type::BaseModel # {OpenAI::Models::FileListParams} for more details. # # @param after [String] A cursor for use in pagination. `after` is an object ID that defines your place - # ... # # @param limit [Integer] A limit on the number of objects to be returned. Limit can range between 1 and 1 - # ... # - # @param order [Symbol, OpenAI::Models::FileListParams::Order] Sort order by the `created_at` timestamp of the objects. `asc` for ascending ord - # ... + # @param order [Symbol, OpenAI::FileListParams::Order] Sort order by the `created_at` timestamp of the objects. `asc` for ascending ord # # @param purpose [String] Only return files with the given purpose. # diff --git a/lib/openai/models/file_object.rb b/lib/openai/models/file_object.rb index 942e2361..ec5c9839 100644 --- a/lib/openai/models/file_object.rb +++ b/lib/openai/models/file_object.rb @@ -39,8 +39,8 @@ class FileObject < OpenAI::Internal::Type::BaseModel # `assistants_output`, `batch`, `batch_output`, `fine-tune`, `fine-tune-results` # and `vision`. # - # @return [Symbol, OpenAI::Models::FileObject::Purpose] - required :purpose, enum: -> { OpenAI::Models::FileObject::Purpose } + # @return [Symbol, OpenAI::FileObject::Purpose] + required :purpose, enum: -> { OpenAI::FileObject::Purpose } # @!attribute status # @deprecated @@ -48,8 +48,8 @@ class FileObject < OpenAI::Internal::Type::BaseModel # Deprecated. The current status of the file, which can be either `uploaded`, # `processed`, or `error`. # - # @return [Symbol, OpenAI::Models::FileObject::Status] - required :status, enum: -> { OpenAI::Models::FileObject::Status } + # @return [Symbol, OpenAI::FileObject::Status] + required :status, enum: -> { OpenAI::FileObject::Status } # @!attribute expires_at # The Unix timestamp (in seconds) for when the file will expire. @@ -67,8 +67,8 @@ class FileObject < OpenAI::Internal::Type::BaseModel optional :status_details, String # @!method initialize(id:, bytes:, created_at:, filename:, purpose:, status:, expires_at: nil, status_details: nil, object: :file) - # Some parameter documentations has been truncated, see - # {OpenAI::Models::FileObject} for more details. + # Some parameter documentations has been truncated, see {OpenAI::FileObject} for + # more details. # # The `File` object represents a document that has been uploaded to OpenAI. # @@ -80,16 +80,13 @@ class FileObject < OpenAI::Internal::Type::BaseModel # # @param filename [String] The name of the file. # - # @param purpose [Symbol, OpenAI::Models::FileObject::Purpose] The intended purpose of the file. Supported values are `assistants`, `assistants - # ... + # @param purpose [Symbol, OpenAI::FileObject::Purpose] The intended purpose of the file. Supported values are `assistants`, `assistants # - # @param status [Symbol, OpenAI::Models::FileObject::Status] Deprecated. The current status of the file, which can be either `uploaded`, `pro - # ... + # @param status [Symbol, OpenAI::FileObject::Status] Deprecated. The current status of the file, which can be either `uploaded`, `pro # # @param expires_at [Integer] The Unix timestamp (in seconds) for when the file will expire. # # @param status_details [String] Deprecated. For details on why a fine-tuning training file failed validation, se - # ... # # @param object [Symbol, :file] The object type, which is always `file`. @@ -97,7 +94,7 @@ class FileObject < OpenAI::Internal::Type::BaseModel # `assistants_output`, `batch`, `batch_output`, `fine-tune`, `fine-tune-results` # and `vision`. # - # @see OpenAI::Models::FileObject#purpose + # @see OpenAI::FileObject#purpose module Purpose extend OpenAI::Internal::Type::Enum @@ -118,7 +115,7 @@ module Purpose # Deprecated. The current status of the file, which can be either `uploaded`, # `processed`, or `error`. # - # @see OpenAI::Models::FileObject#status + # @see OpenAI::FileObject#status module Status extend OpenAI::Internal::Type::Enum diff --git a/lib/openai/models/fine_tuning/checkpoints/permission_retrieve_params.rb b/lib/openai/models/fine_tuning/checkpoints/permission_retrieve_params.rb index cddf06b9..9bdaffeb 100644 --- a/lib/openai/models/fine_tuning/checkpoints/permission_retrieve_params.rb +++ b/lib/openai/models/fine_tuning/checkpoints/permission_retrieve_params.rb @@ -24,8 +24,8 @@ class PermissionRetrieveParams < OpenAI::Internal::Type::BaseModel # @!attribute order # The order in which to retrieve permissions. # - # @return [Symbol, OpenAI::Models::FineTuning::Checkpoints::PermissionRetrieveParams::Order, nil] - optional :order, enum: -> { OpenAI::Models::FineTuning::Checkpoints::PermissionRetrieveParams::Order } + # @return [Symbol, OpenAI::FineTuning::Checkpoints::PermissionRetrieveParams::Order, nil] + optional :order, enum: -> { OpenAI::FineTuning::Checkpoints::PermissionRetrieveParams::Order } # @!attribute project_id # The ID of the project to get permissions for. @@ -38,7 +38,7 @@ class PermissionRetrieveParams < OpenAI::Internal::Type::BaseModel # # @param limit [Integer] Number of permissions to retrieve. # - # @param order [Symbol, OpenAI::Models::FineTuning::Checkpoints::PermissionRetrieveParams::Order] The order in which to retrieve permissions. + # @param order [Symbol, OpenAI::FineTuning::Checkpoints::PermissionRetrieveParams::Order] The order in which to retrieve permissions. # # @param project_id [String] The ID of the project to get permissions for. # diff --git a/lib/openai/models/fine_tuning/fine_tuning_job.rb b/lib/openai/models/fine_tuning/fine_tuning_job.rb index 36cc8d69..aafd3b38 100644 --- a/lib/openai/models/fine_tuning/fine_tuning_job.rb +++ b/lib/openai/models/fine_tuning/fine_tuning_job.rb @@ -21,8 +21,8 @@ class FineTuningJob < OpenAI::Internal::Type::BaseModel # For fine-tuning jobs that have `failed`, this will contain more information on # the cause of the failure. # - # @return [OpenAI::Models::FineTuning::FineTuningJob::Error, nil] - required :error, -> { OpenAI::Models::FineTuning::FineTuningJob::Error }, nil?: true + # @return [OpenAI::FineTuning::FineTuningJob::Error, nil] + required :error, -> { OpenAI::FineTuning::FineTuningJob::Error }, nil?: true # @!attribute fine_tuned_model # The name of the fine-tuned model that is being created. The value will be null @@ -42,8 +42,8 @@ class FineTuningJob < OpenAI::Internal::Type::BaseModel # The hyperparameters used for the fine-tuning job. This value will only be # returned when running `supervised` jobs. # - # @return [OpenAI::Models::FineTuning::FineTuningJob::Hyperparameters] - required :hyperparameters, -> { OpenAI::Models::FineTuning::FineTuningJob::Hyperparameters } + # @return [OpenAI::FineTuning::FineTuningJob::Hyperparameters] + required :hyperparameters, -> { OpenAI::FineTuning::FineTuningJob::Hyperparameters } # @!attribute model # The base model that is being fine-tuned. @@ -81,8 +81,8 @@ class FineTuningJob < OpenAI::Internal::Type::BaseModel # The current status of the fine-tuning job, which can be either # `validating_files`, `queued`, `running`, `succeeded`, `failed`, or `cancelled`. # - # @return [Symbol, OpenAI::Models::FineTuning::FineTuningJob::Status] - required :status, enum: -> { OpenAI::Models::FineTuning::FineTuningJob::Status } + # @return [Symbol, OpenAI::FineTuning::FineTuningJob::Status] + required :status, enum: -> { OpenAI::FineTuning::FineTuningJob::Status } # @!attribute trained_tokens # The total number of billable tokens processed by this fine-tuning job. The value @@ -116,9 +116,11 @@ class FineTuningJob < OpenAI::Internal::Type::BaseModel # @!attribute integrations # A list of integrations to enable for this fine-tuning job. # - # @return [Array, nil] + # @return [Array, nil] optional :integrations, - -> { OpenAI::Internal::Type::ArrayOf[OpenAI::Models::FineTuning::FineTuningJobWandbIntegrationObject] }, + -> { + OpenAI::Internal::Type::ArrayOf[OpenAI::FineTuning::FineTuningJobWandbIntegrationObject] + }, nil?: true # @!attribute metadata @@ -135,12 +137,12 @@ class FineTuningJob < OpenAI::Internal::Type::BaseModel # @!attribute method_ # The method used for fine-tuning. # - # @return [OpenAI::Models::FineTuning::FineTuningJob::Method, nil] - optional :method_, -> { OpenAI::Models::FineTuning::FineTuningJob::Method }, api_name: :method + # @return [OpenAI::FineTuning::FineTuningJob::Method, nil] + optional :method_, -> { OpenAI::FineTuning::FineTuningJob::Method }, api_name: :method # @!method initialize(id:, created_at:, error:, fine_tuned_model:, finished_at:, hyperparameters:, model:, organization_id:, result_files:, seed:, status:, trained_tokens:, training_file:, validation_file:, estimated_finish: nil, integrations: nil, metadata: nil, method_: nil, object: :"fine_tuning.job") # Some parameter documentations has been truncated, see - # {OpenAI::Models::FineTuning::FineTuningJob} for more details. + # {OpenAI::FineTuning::FineTuningJob} for more details. # # The `fine_tuning.job` object represents a fine-tuning job that has been created # through the API. @@ -149,51 +151,41 @@ class FineTuningJob < OpenAI::Internal::Type::BaseModel # # @param created_at [Integer] The Unix timestamp (in seconds) for when the fine-tuning job was created. # - # @param error [OpenAI::Models::FineTuning::FineTuningJob::Error, nil] For fine-tuning jobs that have `failed`, this will contain more information on t - # ... + # @param error [OpenAI::FineTuning::FineTuningJob::Error, nil] For fine-tuning jobs that have `failed`, this will contain more information on t # # @param fine_tuned_model [String, nil] The name of the fine-tuned model that is being created. The value will be null i - # ... # # @param finished_at [Integer, nil] The Unix timestamp (in seconds) for when the fine-tuning job was finished. The v - # ... # - # @param hyperparameters [OpenAI::Models::FineTuning::FineTuningJob::Hyperparameters] The hyperparameters used for the fine-tuning job. This value will only be return - # ... + # @param hyperparameters [OpenAI::FineTuning::FineTuningJob::Hyperparameters] The hyperparameters used for the fine-tuning job. This value will only be return # # @param model [String] The base model that is being fine-tuned. # # @param organization_id [String] The organization that owns the fine-tuning job. # # @param result_files [Array] The compiled results file ID(s) for the fine-tuning job. You can retrieve the re - # ... # # @param seed [Integer] The seed used for the fine-tuning job. # - # @param status [Symbol, OpenAI::Models::FineTuning::FineTuningJob::Status] The current status of the fine-tuning job, which can be either `validating_files - # ... + # @param status [Symbol, OpenAI::FineTuning::FineTuningJob::Status] The current status of the fine-tuning job, which can be either `validating_files # # @param trained_tokens [Integer, nil] The total number of billable tokens processed by this fine-tuning job. The value - # ... # # @param training_file [String] The file ID used for training. You can retrieve the training data with the [File - # ... # # @param validation_file [String, nil] The file ID used for validation. You can retrieve the validation results with th - # ... # # @param estimated_finish [Integer, nil] The Unix timestamp (in seconds) for when the fine-tuning job is estimated to fin - # ... # - # @param integrations [Array, nil] A list of integrations to enable for this fine-tuning job. + # @param integrations [Array, nil] A list of integrations to enable for this fine-tuning job. # - # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be # - # @param method_ [OpenAI::Models::FineTuning::FineTuningJob::Method] The method used for fine-tuning. + # @param method_ [OpenAI::FineTuning::FineTuningJob::Method] The method used for fine-tuning. # # @param object [Symbol, :"fine_tuning.job"] The object type, which is always "fine_tuning.job". - # @see OpenAI::Models::FineTuning::FineTuningJob#error + # @see OpenAI::FineTuning::FineTuningJob#error class Error < OpenAI::Internal::Type::BaseModel # @!attribute code # A machine-readable error code. @@ -216,7 +208,7 @@ class Error < OpenAI::Internal::Type::BaseModel # @!method initialize(code:, message:, param:) # Some parameter documentations has been truncated, see - # {OpenAI::Models::FineTuning::FineTuningJob::Error} for more details. + # {OpenAI::FineTuning::FineTuningJob::Error} for more details. # # For fine-tuning jobs that have `failed`, this will contain more information on # the cause of the failure. @@ -226,17 +218,16 @@ class Error < OpenAI::Internal::Type::BaseModel # @param message [String] A human-readable error message. # # @param param [String, nil] The parameter that was invalid, usually `training_file` or `validation_file`. Th - # ... end - # @see OpenAI::Models::FineTuning::FineTuningJob#hyperparameters + # @see OpenAI::FineTuning::FineTuningJob#hyperparameters class Hyperparameters < OpenAI::Internal::Type::BaseModel # @!attribute batch_size # Number of examples in each batch. A larger batch size means that model # parameters are updated less frequently, but with lower variance. # # @return [Symbol, :auto, Integer, nil] - optional :batch_size, union: -> { OpenAI::Models::FineTuning::FineTuningJob::Hyperparameters::BatchSize } + optional :batch_size, union: -> { OpenAI::FineTuning::FineTuningJob::Hyperparameters::BatchSize } # @!attribute learning_rate_multiplier # Scaling factor for the learning rate. A smaller learning rate may be useful to @@ -244,35 +235,32 @@ class Hyperparameters < OpenAI::Internal::Type::BaseModel # # @return [Symbol, :auto, Float, nil] optional :learning_rate_multiplier, - union: -> { OpenAI::Models::FineTuning::FineTuningJob::Hyperparameters::LearningRateMultiplier } + union: -> { OpenAI::FineTuning::FineTuningJob::Hyperparameters::LearningRateMultiplier } # @!attribute n_epochs # The number of epochs to train the model for. An epoch refers to one full cycle # through the training dataset. # # @return [Symbol, :auto, Integer, nil] - optional :n_epochs, union: -> { OpenAI::Models::FineTuning::FineTuningJob::Hyperparameters::NEpochs } + optional :n_epochs, union: -> { OpenAI::FineTuning::FineTuningJob::Hyperparameters::NEpochs } # @!method initialize(batch_size: nil, learning_rate_multiplier: nil, n_epochs: nil) # Some parameter documentations has been truncated, see - # {OpenAI::Models::FineTuning::FineTuningJob::Hyperparameters} for more details. + # {OpenAI::FineTuning::FineTuningJob::Hyperparameters} for more details. # # The hyperparameters used for the fine-tuning job. This value will only be # returned when running `supervised` jobs. # # @param batch_size [Symbol, :auto, Integer] Number of examples in each batch. A larger batch size means that model parameter - # ... # # @param learning_rate_multiplier [Symbol, :auto, Float] Scaling factor for the learning rate. A smaller learning rate may be useful to a - # ... # # @param n_epochs [Symbol, :auto, Integer] The number of epochs to train the model for. An epoch refers to one full cycle - # ... # Number of examples in each batch. A larger batch size means that model # parameters are updated less frequently, but with lower variance. # - # @see OpenAI::Models::FineTuning::FineTuningJob::Hyperparameters#batch_size + # @see OpenAI::FineTuning::FineTuningJob::Hyperparameters#batch_size module BatchSize extend OpenAI::Internal::Type::Union @@ -287,7 +275,7 @@ module BatchSize # Scaling factor for the learning rate. A smaller learning rate may be useful to # avoid overfitting. # - # @see OpenAI::Models::FineTuning::FineTuningJob::Hyperparameters#learning_rate_multiplier + # @see OpenAI::FineTuning::FineTuningJob::Hyperparameters#learning_rate_multiplier module LearningRateMultiplier extend OpenAI::Internal::Type::Union @@ -302,7 +290,7 @@ module LearningRateMultiplier # The number of epochs to train the model for. An epoch refers to one full cycle # through the training dataset. # - # @see OpenAI::Models::FineTuning::FineTuningJob::Hyperparameters#n_epochs + # @see OpenAI::FineTuning::FineTuningJob::Hyperparameters#n_epochs module NEpochs extend OpenAI::Internal::Type::Union @@ -318,7 +306,7 @@ module NEpochs # The current status of the fine-tuning job, which can be either # `validating_files`, `queued`, `running`, `succeeded`, `failed`, or `cancelled`. # - # @see OpenAI::Models::FineTuning::FineTuningJob#status + # @see OpenAI::FineTuning::FineTuningJob#status module Status extend OpenAI::Internal::Type::Enum @@ -333,49 +321,49 @@ module Status # @return [Array] end - # @see OpenAI::Models::FineTuning::FineTuningJob#method_ + # @see OpenAI::FineTuning::FineTuningJob#method_ class Method < OpenAI::Internal::Type::BaseModel # @!attribute dpo # Configuration for the DPO fine-tuning method. # - # @return [OpenAI::Models::FineTuning::FineTuningJob::Method::Dpo, nil] - optional :dpo, -> { OpenAI::Models::FineTuning::FineTuningJob::Method::Dpo } + # @return [OpenAI::FineTuning::FineTuningJob::Method::Dpo, nil] + optional :dpo, -> { OpenAI::FineTuning::FineTuningJob::Method::Dpo } # @!attribute supervised # Configuration for the supervised fine-tuning method. # - # @return [OpenAI::Models::FineTuning::FineTuningJob::Method::Supervised, nil] - optional :supervised, -> { OpenAI::Models::FineTuning::FineTuningJob::Method::Supervised } + # @return [OpenAI::FineTuning::FineTuningJob::Method::Supervised, nil] + optional :supervised, -> { OpenAI::FineTuning::FineTuningJob::Method::Supervised } # @!attribute type # The type of method. Is either `supervised` or `dpo`. # - # @return [Symbol, OpenAI::Models::FineTuning::FineTuningJob::Method::Type, nil] - optional :type, enum: -> { OpenAI::Models::FineTuning::FineTuningJob::Method::Type } + # @return [Symbol, OpenAI::FineTuning::FineTuningJob::Method::Type, nil] + optional :type, enum: -> { OpenAI::FineTuning::FineTuningJob::Method::Type } # @!method initialize(dpo: nil, supervised: nil, type: nil) # The method used for fine-tuning. # - # @param dpo [OpenAI::Models::FineTuning::FineTuningJob::Method::Dpo] Configuration for the DPO fine-tuning method. + # @param dpo [OpenAI::FineTuning::FineTuningJob::Method::Dpo] Configuration for the DPO fine-tuning method. # - # @param supervised [OpenAI::Models::FineTuning::FineTuningJob::Method::Supervised] Configuration for the supervised fine-tuning method. + # @param supervised [OpenAI::FineTuning::FineTuningJob::Method::Supervised] Configuration for the supervised fine-tuning method. # - # @param type [Symbol, OpenAI::Models::FineTuning::FineTuningJob::Method::Type] The type of method. Is either `supervised` or `dpo`. + # @param type [Symbol, OpenAI::FineTuning::FineTuningJob::Method::Type] The type of method. Is either `supervised` or `dpo`. - # @see OpenAI::Models::FineTuning::FineTuningJob::Method#dpo + # @see OpenAI::FineTuning::FineTuningJob::Method#dpo class Dpo < OpenAI::Internal::Type::BaseModel # @!attribute hyperparameters # The hyperparameters used for the fine-tuning job. # - # @return [OpenAI::Models::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters, nil] - optional :hyperparameters, -> { OpenAI::Models::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters } + # @return [OpenAI::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters, nil] + optional :hyperparameters, -> { OpenAI::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters } # @!method initialize(hyperparameters: nil) # Configuration for the DPO fine-tuning method. # - # @param hyperparameters [OpenAI::Models::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters] The hyperparameters used for the fine-tuning job. + # @param hyperparameters [OpenAI::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters] The hyperparameters used for the fine-tuning job. - # @see OpenAI::Models::FineTuning::FineTuningJob::Method::Dpo#hyperparameters + # @see OpenAI::FineTuning::FineTuningJob::Method::Dpo#hyperparameters class Hyperparameters < OpenAI::Internal::Type::BaseModel # @!attribute batch_size # Number of examples in each batch. A larger batch size means that model @@ -383,7 +371,9 @@ class Hyperparameters < OpenAI::Internal::Type::BaseModel # # @return [Symbol, :auto, Integer, nil] optional :batch_size, - union: -> { OpenAI::Models::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters::BatchSize } + union: -> { + OpenAI::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters::BatchSize + } # @!attribute beta # The beta value for the DPO method. A higher beta value will increase the weight @@ -391,7 +381,9 @@ class Hyperparameters < OpenAI::Internal::Type::BaseModel # # @return [Symbol, :auto, Float, nil] optional :beta, - union: -> { OpenAI::Models::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters::Beta } + union: -> { + OpenAI::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters::Beta + } # @!attribute learning_rate_multiplier # Scaling factor for the learning rate. A smaller learning rate may be useful to @@ -399,7 +391,9 @@ class Hyperparameters < OpenAI::Internal::Type::BaseModel # # @return [Symbol, :auto, Float, nil] optional :learning_rate_multiplier, - union: -> { OpenAI::Models::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters::LearningRateMultiplier } + union: -> { + OpenAI::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters::LearningRateMultiplier + } # @!attribute n_epochs # The number of epochs to train the model for. An epoch refers to one full cycle @@ -407,31 +401,29 @@ class Hyperparameters < OpenAI::Internal::Type::BaseModel # # @return [Symbol, :auto, Integer, nil] optional :n_epochs, - union: -> { OpenAI::Models::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters::NEpochs } + union: -> { + OpenAI::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters::NEpochs + } # @!method initialize(batch_size: nil, beta: nil, learning_rate_multiplier: nil, n_epochs: nil) # Some parameter documentations has been truncated, see - # {OpenAI::Models::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters} for - # more details. + # {OpenAI::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters} for more + # details. # # The hyperparameters used for the fine-tuning job. # # @param batch_size [Symbol, :auto, Integer] Number of examples in each batch. A larger batch size means that model parameter - # ... # # @param beta [Symbol, :auto, Float] The beta value for the DPO method. A higher beta value will increase the weight - # ... # # @param learning_rate_multiplier [Symbol, :auto, Float] Scaling factor for the learning rate. A smaller learning rate may be useful to a - # ... # # @param n_epochs [Symbol, :auto, Integer] The number of epochs to train the model for. An epoch refers to one full cycle t - # ... # Number of examples in each batch. A larger batch size means that model # parameters are updated less frequently, but with lower variance. # - # @see OpenAI::Models::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters#batch_size + # @see OpenAI::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters#batch_size module BatchSize extend OpenAI::Internal::Type::Union @@ -446,7 +438,7 @@ module BatchSize # The beta value for the DPO method. A higher beta value will increase the weight # of the penalty between the policy and reference model. # - # @see OpenAI::Models::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters#beta + # @see OpenAI::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters#beta module Beta extend OpenAI::Internal::Type::Union @@ -461,7 +453,7 @@ module Beta # Scaling factor for the learning rate. A smaller learning rate may be useful to # avoid overfitting. # - # @see OpenAI::Models::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters#learning_rate_multiplier + # @see OpenAI::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters#learning_rate_multiplier module LearningRateMultiplier extend OpenAI::Internal::Type::Union @@ -476,7 +468,7 @@ module LearningRateMultiplier # The number of epochs to train the model for. An epoch refers to one full cycle # through the training dataset. # - # @see OpenAI::Models::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters#n_epochs + # @see OpenAI::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters#n_epochs module NEpochs extend OpenAI::Internal::Type::Union @@ -490,21 +482,23 @@ module NEpochs end end - # @see OpenAI::Models::FineTuning::FineTuningJob::Method#supervised + # @see OpenAI::FineTuning::FineTuningJob::Method#supervised class Supervised < OpenAI::Internal::Type::BaseModel # @!attribute hyperparameters # The hyperparameters used for the fine-tuning job. # - # @return [OpenAI::Models::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters, nil] + # @return [OpenAI::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters, nil] optional :hyperparameters, - -> { OpenAI::Models::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters } + -> { + OpenAI::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters + } # @!method initialize(hyperparameters: nil) # Configuration for the supervised fine-tuning method. # - # @param hyperparameters [OpenAI::Models::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters] The hyperparameters used for the fine-tuning job. + # @param hyperparameters [OpenAI::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters] The hyperparameters used for the fine-tuning job. - # @see OpenAI::Models::FineTuning::FineTuningJob::Method::Supervised#hyperparameters + # @see OpenAI::FineTuning::FineTuningJob::Method::Supervised#hyperparameters class Hyperparameters < OpenAI::Internal::Type::BaseModel # @!attribute batch_size # Number of examples in each batch. A larger batch size means that model @@ -512,7 +506,9 @@ class Hyperparameters < OpenAI::Internal::Type::BaseModel # # @return [Symbol, :auto, Integer, nil] optional :batch_size, - union: -> { OpenAI::Models::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters::BatchSize } + union: -> { + OpenAI::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters::BatchSize + } # @!attribute learning_rate_multiplier # Scaling factor for the learning rate. A smaller learning rate may be useful to @@ -520,7 +516,9 @@ class Hyperparameters < OpenAI::Internal::Type::BaseModel # # @return [Symbol, :auto, Float, nil] optional :learning_rate_multiplier, - union: -> { OpenAI::Models::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters::LearningRateMultiplier } + union: -> { + OpenAI::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters::LearningRateMultiplier + } # @!attribute n_epochs # The number of epochs to train the model for. An epoch refers to one full cycle @@ -528,28 +526,27 @@ class Hyperparameters < OpenAI::Internal::Type::BaseModel # # @return [Symbol, :auto, Integer, nil] optional :n_epochs, - union: -> { OpenAI::Models::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters::NEpochs } + union: -> { + OpenAI::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters::NEpochs + } # @!method initialize(batch_size: nil, learning_rate_multiplier: nil, n_epochs: nil) # Some parameter documentations has been truncated, see - # {OpenAI::Models::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters} - # for more details. + # {OpenAI::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters} for + # more details. # # The hyperparameters used for the fine-tuning job. # # @param batch_size [Symbol, :auto, Integer] Number of examples in each batch. A larger batch size means that model parameter - # ... # # @param learning_rate_multiplier [Symbol, :auto, Float] Scaling factor for the learning rate. A smaller learning rate may be useful to a - # ... # # @param n_epochs [Symbol, :auto, Integer] The number of epochs to train the model for. An epoch refers to one full cycle t - # ... # Number of examples in each batch. A larger batch size means that model # parameters are updated less frequently, but with lower variance. # - # @see OpenAI::Models::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters#batch_size + # @see OpenAI::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters#batch_size module BatchSize extend OpenAI::Internal::Type::Union @@ -564,7 +561,7 @@ module BatchSize # Scaling factor for the learning rate. A smaller learning rate may be useful to # avoid overfitting. # - # @see OpenAI::Models::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters#learning_rate_multiplier + # @see OpenAI::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters#learning_rate_multiplier module LearningRateMultiplier extend OpenAI::Internal::Type::Union @@ -579,7 +576,7 @@ module LearningRateMultiplier # The number of epochs to train the model for. An epoch refers to one full cycle # through the training dataset. # - # @see OpenAI::Models::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters#n_epochs + # @see OpenAI::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters#n_epochs module NEpochs extend OpenAI::Internal::Type::Union @@ -595,7 +592,7 @@ module NEpochs # The type of method. Is either `supervised` or `dpo`. # - # @see OpenAI::Models::FineTuning::FineTuningJob::Method#type + # @see OpenAI::FineTuning::FineTuningJob::Method#type module Type extend OpenAI::Internal::Type::Enum diff --git a/lib/openai/models/fine_tuning/fine_tuning_job_event.rb b/lib/openai/models/fine_tuning/fine_tuning_job_event.rb index 5d1a7f6b..743df8cc 100644 --- a/lib/openai/models/fine_tuning/fine_tuning_job_event.rb +++ b/lib/openai/models/fine_tuning/fine_tuning_job_event.rb @@ -20,8 +20,8 @@ class FineTuningJobEvent < OpenAI::Internal::Type::BaseModel # @!attribute level # The log level of the event. # - # @return [Symbol, OpenAI::Models::FineTuning::FineTuningJobEvent::Level] - required :level, enum: -> { OpenAI::Models::FineTuning::FineTuningJobEvent::Level } + # @return [Symbol, OpenAI::FineTuning::FineTuningJobEvent::Level] + required :level, enum: -> { OpenAI::FineTuning::FineTuningJobEvent::Level } # @!attribute message # The message of the event. @@ -44,8 +44,8 @@ class FineTuningJobEvent < OpenAI::Internal::Type::BaseModel # @!attribute type # The type of event. # - # @return [Symbol, OpenAI::Models::FineTuning::FineTuningJobEvent::Type, nil] - optional :type, enum: -> { OpenAI::Models::FineTuning::FineTuningJobEvent::Type } + # @return [Symbol, OpenAI::FineTuning::FineTuningJobEvent::Type, nil] + optional :type, enum: -> { OpenAI::FineTuning::FineTuningJobEvent::Type } # @!method initialize(id:, created_at:, level:, message:, data: nil, type: nil, object: :"fine_tuning.job.event") # Fine-tuning job event object @@ -54,19 +54,19 @@ class FineTuningJobEvent < OpenAI::Internal::Type::BaseModel # # @param created_at [Integer] The Unix timestamp (in seconds) for when the fine-tuning job was created. # - # @param level [Symbol, OpenAI::Models::FineTuning::FineTuningJobEvent::Level] The log level of the event. + # @param level [Symbol, OpenAI::FineTuning::FineTuningJobEvent::Level] The log level of the event. # # @param message [String] The message of the event. # # @param data [Object] The data associated with the event. # - # @param type [Symbol, OpenAI::Models::FineTuning::FineTuningJobEvent::Type] The type of event. + # @param type [Symbol, OpenAI::FineTuning::FineTuningJobEvent::Type] The type of event. # # @param object [Symbol, :"fine_tuning.job.event"] The object type, which is always "fine_tuning.job.event". # The log level of the event. # - # @see OpenAI::Models::FineTuning::FineTuningJobEvent#level + # @see OpenAI::FineTuning::FineTuningJobEvent#level module Level extend OpenAI::Internal::Type::Enum @@ -80,7 +80,7 @@ module Level # The type of event. # - # @see OpenAI::Models::FineTuning::FineTuningJobEvent#type + # @see OpenAI::FineTuning::FineTuningJobEvent#type module Type extend OpenAI::Internal::Type::Enum diff --git a/lib/openai/models/fine_tuning/fine_tuning_job_wandb_integration.rb b/lib/openai/models/fine_tuning/fine_tuning_job_wandb_integration.rb index c32fef0e..07b43842 100644 --- a/lib/openai/models/fine_tuning/fine_tuning_job_wandb_integration.rb +++ b/lib/openai/models/fine_tuning/fine_tuning_job_wandb_integration.rb @@ -35,23 +35,20 @@ class FineTuningJobWandbIntegration < OpenAI::Internal::Type::BaseModel # @!method initialize(project:, entity: nil, name: nil, tags: nil) # Some parameter documentations has been truncated, see - # {OpenAI::Models::FineTuning::FineTuningJobWandbIntegration} for more details. + # {OpenAI::FineTuning::FineTuningJobWandbIntegration} for more details. # # The settings for your integration with Weights and Biases. This payload # specifies the project that metrics will be sent to. Optionally, you can set an # explicit display name for your run, add tags to your run, and set a default # entity (team, username, etc) to be associated with your run. # - # @param project [String] The name of the project that the new run will be created under. ... + # @param project [String] The name of the project that the new run will be created under. # # @param entity [String, nil] The entity to use for the run. This allows you to set the team or username of th - # ... # # @param name [String, nil] A display name to set for the run. If not set, we will use the Job ID as the nam - # ... # # @param tags [Array] A list of tags to be attached to the newly created run. These tags are passed th - # ... end end diff --git a/lib/openai/models/fine_tuning/fine_tuning_job_wandb_integration_object.rb b/lib/openai/models/fine_tuning/fine_tuning_job_wandb_integration_object.rb index 147302a1..4b691bd6 100644 --- a/lib/openai/models/fine_tuning/fine_tuning_job_wandb_integration_object.rb +++ b/lib/openai/models/fine_tuning/fine_tuning_job_wandb_integration_object.rb @@ -16,16 +16,14 @@ class FineTuningJobWandbIntegrationObject < OpenAI::Internal::Type::BaseModel # explicit display name for your run, add tags to your run, and set a default # entity (team, username, etc) to be associated with your run. # - # @return [OpenAI::Models::FineTuning::FineTuningJobWandbIntegration] - required :wandb, -> { OpenAI::Models::FineTuning::FineTuningJobWandbIntegration } + # @return [OpenAI::FineTuning::FineTuningJobWandbIntegration] + required :wandb, -> { OpenAI::FineTuning::FineTuningJobWandbIntegration } # @!method initialize(wandb:, type: :wandb) # Some parameter documentations has been truncated, see - # {OpenAI::Models::FineTuning::FineTuningJobWandbIntegrationObject} for more - # details. + # {OpenAI::FineTuning::FineTuningJobWandbIntegrationObject} for more details. # - # @param wandb [OpenAI::Models::FineTuning::FineTuningJobWandbIntegration] The settings for your integration with Weights and Biases. This payload specifie - # ... + # @param wandb [OpenAI::FineTuning::FineTuningJobWandbIntegration] The settings for your integration with Weights and Biases. This payload specifie # # @param type [Symbol, :wandb] The type of the integration being enabled for the fine-tuning job end diff --git a/lib/openai/models/fine_tuning/job_create_params.rb b/lib/openai/models/fine_tuning/job_create_params.rb index 4d99beea..c86b0f69 100644 --- a/lib/openai/models/fine_tuning/job_create_params.rb +++ b/lib/openai/models/fine_tuning/job_create_params.rb @@ -12,8 +12,8 @@ class JobCreateParams < OpenAI::Internal::Type::BaseModel # The name of the model to fine-tune. You can select one of the # [supported models](https://platform.openai.com/docs/guides/fine-tuning#which-models-can-be-fine-tuned). # - # @return [String, Symbol, OpenAI::Models::FineTuning::JobCreateParams::Model] - required :model, union: -> { OpenAI::Models::FineTuning::JobCreateParams::Model } + # @return [String, Symbol, OpenAI::FineTuning::JobCreateParams::Model] + required :model, union: -> { OpenAI::FineTuning::JobCreateParams::Model } # @!attribute training_file # The ID of an uploaded file that contains training data. @@ -43,15 +43,15 @@ class JobCreateParams < OpenAI::Internal::Type::BaseModel # The hyperparameters used for the fine-tuning job. This value is now deprecated # in favor of `method`, and should be passed in under the `method` parameter. # - # @return [OpenAI::Models::FineTuning::JobCreateParams::Hyperparameters, nil] - optional :hyperparameters, -> { OpenAI::Models::FineTuning::JobCreateParams::Hyperparameters } + # @return [OpenAI::FineTuning::JobCreateParams::Hyperparameters, nil] + optional :hyperparameters, -> { OpenAI::FineTuning::JobCreateParams::Hyperparameters } # @!attribute integrations # A list of integrations to enable for your fine-tuning job. # - # @return [Array, nil] + # @return [Array, nil] optional :integrations, - -> { OpenAI::Internal::Type::ArrayOf[OpenAI::Models::FineTuning::JobCreateParams::Integration] }, + -> { OpenAI::Internal::Type::ArrayOf[OpenAI::FineTuning::JobCreateParams::Integration] }, nil?: true # @!attribute metadata @@ -68,8 +68,8 @@ class JobCreateParams < OpenAI::Internal::Type::BaseModel # @!attribute method_ # The method used for fine-tuning. # - # @return [OpenAI::Models::FineTuning::JobCreateParams::Method, nil] - optional :method_, -> { OpenAI::Models::FineTuning::JobCreateParams::Method }, api_name: :method + # @return [OpenAI::FineTuning::JobCreateParams::Method, nil] + optional :method_, -> { OpenAI::FineTuning::JobCreateParams::Method }, api_name: :method # @!attribute seed # The seed controls the reproducibility of the job. Passing in the same seed and @@ -110,25 +110,23 @@ class JobCreateParams < OpenAI::Internal::Type::BaseModel # Some parameter documentations has been truncated, see # {OpenAI::Models::FineTuning::JobCreateParams} for more details. # - # @param model [String, Symbol, OpenAI::Models::FineTuning::JobCreateParams::Model] The name of the model to fine-tune. You can select one of the ... + # @param model [String, Symbol, OpenAI::FineTuning::JobCreateParams::Model] The name of the model to fine-tune. You can select one of the # - # @param training_file [String] The ID of an uploaded file that contains training data. ... + # @param training_file [String] The ID of an uploaded file that contains training data. # - # @param hyperparameters [OpenAI::Models::FineTuning::JobCreateParams::Hyperparameters] The hyperparameters used for the fine-tuning job. ... + # @param hyperparameters [OpenAI::FineTuning::JobCreateParams::Hyperparameters] The hyperparameters used for the fine-tuning job. # - # @param integrations [Array, nil] A list of integrations to enable for your fine-tuning job. + # @param integrations [Array, nil] A list of integrations to enable for your fine-tuning job. # - # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be # - # @param method_ [OpenAI::Models::FineTuning::JobCreateParams::Method] The method used for fine-tuning. + # @param method_ [OpenAI::FineTuning::JobCreateParams::Method] The method used for fine-tuning. # # @param seed [Integer, nil] The seed controls the reproducibility of the job. Passing in the same seed and j - # ... # # @param suffix [String, nil] A string of up to 64 characters that will be added to your fine-tuned model name - # ... # - # @param validation_file [String, nil] The ID of an uploaded file that contains validation data. ... + # @param validation_file [String, nil] The ID of an uploaded file that contains validation data. # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] @@ -139,13 +137,13 @@ module Model variant String - variant const: -> { OpenAI::Models::FineTuning::JobCreateParams::Model::BABBAGE_002 } + variant const: -> { OpenAI::FineTuning::JobCreateParams::Model::BABBAGE_002 } - variant const: -> { OpenAI::Models::FineTuning::JobCreateParams::Model::DAVINCI_002 } + variant const: -> { OpenAI::FineTuning::JobCreateParams::Model::DAVINCI_002 } - variant const: -> { OpenAI::Models::FineTuning::JobCreateParams::Model::GPT_3_5_TURBO } + variant const: -> { OpenAI::FineTuning::JobCreateParams::Model::GPT_3_5_TURBO } - variant const: -> { OpenAI::Models::FineTuning::JobCreateParams::Model::GPT_4O_MINI } + variant const: -> { OpenAI::FineTuning::JobCreateParams::Model::GPT_4O_MINI } # @!method self.variants # @return [Array(String, Symbol)] @@ -167,8 +165,7 @@ class Hyperparameters < OpenAI::Internal::Type::BaseModel # parameters are updated less frequently, but with lower variance. # # @return [Symbol, :auto, Integer, nil] - optional :batch_size, - union: -> { OpenAI::Models::FineTuning::JobCreateParams::Hyperparameters::BatchSize } + optional :batch_size, union: -> { OpenAI::FineTuning::JobCreateParams::Hyperparameters::BatchSize } # @!attribute learning_rate_multiplier # Scaling factor for the learning rate. A smaller learning rate may be useful to @@ -176,35 +173,32 @@ class Hyperparameters < OpenAI::Internal::Type::BaseModel # # @return [Symbol, :auto, Float, nil] optional :learning_rate_multiplier, - union: -> { OpenAI::Models::FineTuning::JobCreateParams::Hyperparameters::LearningRateMultiplier } + union: -> { OpenAI::FineTuning::JobCreateParams::Hyperparameters::LearningRateMultiplier } # @!attribute n_epochs # The number of epochs to train the model for. An epoch refers to one full cycle # through the training dataset. # # @return [Symbol, :auto, Integer, nil] - optional :n_epochs, union: -> { OpenAI::Models::FineTuning::JobCreateParams::Hyperparameters::NEpochs } + optional :n_epochs, union: -> { OpenAI::FineTuning::JobCreateParams::Hyperparameters::NEpochs } # @!method initialize(batch_size: nil, learning_rate_multiplier: nil, n_epochs: nil) # Some parameter documentations has been truncated, see - # {OpenAI::Models::FineTuning::JobCreateParams::Hyperparameters} for more details. + # {OpenAI::FineTuning::JobCreateParams::Hyperparameters} for more details. # # The hyperparameters used for the fine-tuning job. This value is now deprecated # in favor of `method`, and should be passed in under the `method` parameter. # # @param batch_size [Symbol, :auto, Integer] Number of examples in each batch. A larger batch size means that model parameter - # ... # # @param learning_rate_multiplier [Symbol, :auto, Float] Scaling factor for the learning rate. A smaller learning rate may be useful to a - # ... # # @param n_epochs [Symbol, :auto, Integer] The number of epochs to train the model for. An epoch refers to one full cycle - # ... # Number of examples in each batch. A larger batch size means that model # parameters are updated less frequently, but with lower variance. # - # @see OpenAI::Models::FineTuning::JobCreateParams::Hyperparameters#batch_size + # @see OpenAI::FineTuning::JobCreateParams::Hyperparameters#batch_size module BatchSize extend OpenAI::Internal::Type::Union @@ -219,7 +213,7 @@ module BatchSize # Scaling factor for the learning rate. A smaller learning rate may be useful to # avoid overfitting. # - # @see OpenAI::Models::FineTuning::JobCreateParams::Hyperparameters#learning_rate_multiplier + # @see OpenAI::FineTuning::JobCreateParams::Hyperparameters#learning_rate_multiplier module LearningRateMultiplier extend OpenAI::Internal::Type::Union @@ -234,7 +228,7 @@ module LearningRateMultiplier # The number of epochs to train the model for. An epoch refers to one full cycle # through the training dataset. # - # @see OpenAI::Models::FineTuning::JobCreateParams::Hyperparameters#n_epochs + # @see OpenAI::FineTuning::JobCreateParams::Hyperparameters#n_epochs module NEpochs extend OpenAI::Internal::Type::Union @@ -261,20 +255,18 @@ class Integration < OpenAI::Internal::Type::BaseModel # explicit display name for your run, add tags to your run, and set a default # entity (team, username, etc) to be associated with your run. # - # @return [OpenAI::Models::FineTuning::JobCreateParams::Integration::Wandb] - required :wandb, -> { OpenAI::Models::FineTuning::JobCreateParams::Integration::Wandb } + # @return [OpenAI::FineTuning::JobCreateParams::Integration::Wandb] + required :wandb, -> { OpenAI::FineTuning::JobCreateParams::Integration::Wandb } # @!method initialize(wandb:, type: :wandb) # Some parameter documentations has been truncated, see - # {OpenAI::Models::FineTuning::JobCreateParams::Integration} for more details. + # {OpenAI::FineTuning::JobCreateParams::Integration} for more details. # - # @param wandb [OpenAI::Models::FineTuning::JobCreateParams::Integration::Wandb] The settings for your integration with Weights and Biases. This payload specifie - # ... + # @param wandb [OpenAI::FineTuning::JobCreateParams::Integration::Wandb] The settings for your integration with Weights and Biases. This payload specifie # # @param type [Symbol, :wandb] The type of integration to enable. Currently, only "wandb" (Weights and Biases) - # ... - # @see OpenAI::Models::FineTuning::JobCreateParams::Integration#wandb + # @see OpenAI::FineTuning::JobCreateParams::Integration#wandb class Wandb < OpenAI::Internal::Type::BaseModel # @!attribute project # The name of the project that the new run will be created under. @@ -307,24 +299,20 @@ class Wandb < OpenAI::Internal::Type::BaseModel # @!method initialize(project:, entity: nil, name: nil, tags: nil) # Some parameter documentations has been truncated, see - # {OpenAI::Models::FineTuning::JobCreateParams::Integration::Wandb} for more - # details. + # {OpenAI::FineTuning::JobCreateParams::Integration::Wandb} for more details. # # The settings for your integration with Weights and Biases. This payload # specifies the project that metrics will be sent to. Optionally, you can set an # explicit display name for your run, add tags to your run, and set a default # entity (team, username, etc) to be associated with your run. # - # @param project [String] The name of the project that the new run will be created under. ... + # @param project [String] The name of the project that the new run will be created under. # # @param entity [String, nil] The entity to use for the run. This allows you to set the team or username of th - # ... # # @param name [String, nil] A display name to set for the run. If not set, we will use the Job ID as the nam - # ... # # @param tags [Array] A list of tags to be attached to the newly created run. These tags are passed th - # ... end end @@ -332,45 +320,47 @@ class Method < OpenAI::Internal::Type::BaseModel # @!attribute dpo # Configuration for the DPO fine-tuning method. # - # @return [OpenAI::Models::FineTuning::JobCreateParams::Method::Dpo, nil] - optional :dpo, -> { OpenAI::Models::FineTuning::JobCreateParams::Method::Dpo } + # @return [OpenAI::FineTuning::JobCreateParams::Method::Dpo, nil] + optional :dpo, -> { OpenAI::FineTuning::JobCreateParams::Method::Dpo } # @!attribute supervised # Configuration for the supervised fine-tuning method. # - # @return [OpenAI::Models::FineTuning::JobCreateParams::Method::Supervised, nil] - optional :supervised, -> { OpenAI::Models::FineTuning::JobCreateParams::Method::Supervised } + # @return [OpenAI::FineTuning::JobCreateParams::Method::Supervised, nil] + optional :supervised, -> { OpenAI::FineTuning::JobCreateParams::Method::Supervised } # @!attribute type # The type of method. Is either `supervised` or `dpo`. # - # @return [Symbol, OpenAI::Models::FineTuning::JobCreateParams::Method::Type, nil] - optional :type, enum: -> { OpenAI::Models::FineTuning::JobCreateParams::Method::Type } + # @return [Symbol, OpenAI::FineTuning::JobCreateParams::Method::Type, nil] + optional :type, enum: -> { OpenAI::FineTuning::JobCreateParams::Method::Type } # @!method initialize(dpo: nil, supervised: nil, type: nil) # The method used for fine-tuning. # - # @param dpo [OpenAI::Models::FineTuning::JobCreateParams::Method::Dpo] Configuration for the DPO fine-tuning method. + # @param dpo [OpenAI::FineTuning::JobCreateParams::Method::Dpo] Configuration for the DPO fine-tuning method. # - # @param supervised [OpenAI::Models::FineTuning::JobCreateParams::Method::Supervised] Configuration for the supervised fine-tuning method. + # @param supervised [OpenAI::FineTuning::JobCreateParams::Method::Supervised] Configuration for the supervised fine-tuning method. # - # @param type [Symbol, OpenAI::Models::FineTuning::JobCreateParams::Method::Type] The type of method. Is either `supervised` or `dpo`. + # @param type [Symbol, OpenAI::FineTuning::JobCreateParams::Method::Type] The type of method. Is either `supervised` or `dpo`. - # @see OpenAI::Models::FineTuning::JobCreateParams::Method#dpo + # @see OpenAI::FineTuning::JobCreateParams::Method#dpo class Dpo < OpenAI::Internal::Type::BaseModel # @!attribute hyperparameters # The hyperparameters used for the fine-tuning job. # - # @return [OpenAI::Models::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters, nil] + # @return [OpenAI::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters, nil] optional :hyperparameters, - -> { OpenAI::Models::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters } + -> { + OpenAI::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters + } # @!method initialize(hyperparameters: nil) # Configuration for the DPO fine-tuning method. # - # @param hyperparameters [OpenAI::Models::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters] The hyperparameters used for the fine-tuning job. + # @param hyperparameters [OpenAI::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters] The hyperparameters used for the fine-tuning job. - # @see OpenAI::Models::FineTuning::JobCreateParams::Method::Dpo#hyperparameters + # @see OpenAI::FineTuning::JobCreateParams::Method::Dpo#hyperparameters class Hyperparameters < OpenAI::Internal::Type::BaseModel # @!attribute batch_size # Number of examples in each batch. A larger batch size means that model @@ -378,7 +368,9 @@ class Hyperparameters < OpenAI::Internal::Type::BaseModel # # @return [Symbol, :auto, Integer, nil] optional :batch_size, - union: -> { OpenAI::Models::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters::BatchSize } + union: -> { + OpenAI::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters::BatchSize + } # @!attribute beta # The beta value for the DPO method. A higher beta value will increase the weight @@ -386,7 +378,9 @@ class Hyperparameters < OpenAI::Internal::Type::BaseModel # # @return [Symbol, :auto, Float, nil] optional :beta, - union: -> { OpenAI::Models::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters::Beta } + union: -> { + OpenAI::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters::Beta + } # @!attribute learning_rate_multiplier # Scaling factor for the learning rate. A smaller learning rate may be useful to @@ -394,7 +388,9 @@ class Hyperparameters < OpenAI::Internal::Type::BaseModel # # @return [Symbol, :auto, Float, nil] optional :learning_rate_multiplier, - union: -> { OpenAI::Models::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters::LearningRateMultiplier } + union: -> { + OpenAI::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters::LearningRateMultiplier + } # @!attribute n_epochs # The number of epochs to train the model for. An epoch refers to one full cycle @@ -402,31 +398,29 @@ class Hyperparameters < OpenAI::Internal::Type::BaseModel # # @return [Symbol, :auto, Integer, nil] optional :n_epochs, - union: -> { OpenAI::Models::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters::NEpochs } + union: -> { + OpenAI::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters::NEpochs + } # @!method initialize(batch_size: nil, beta: nil, learning_rate_multiplier: nil, n_epochs: nil) # Some parameter documentations has been truncated, see - # {OpenAI::Models::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters} for - # more details. + # {OpenAI::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters} for more + # details. # # The hyperparameters used for the fine-tuning job. # # @param batch_size [Symbol, :auto, Integer] Number of examples in each batch. A larger batch size means that model parameter - # ... # # @param beta [Symbol, :auto, Float] The beta value for the DPO method. A higher beta value will increase the weight - # ... # # @param learning_rate_multiplier [Symbol, :auto, Float] Scaling factor for the learning rate. A smaller learning rate may be useful to a - # ... # # @param n_epochs [Symbol, :auto, Integer] The number of epochs to train the model for. An epoch refers to one full cycle t - # ... # Number of examples in each batch. A larger batch size means that model # parameters are updated less frequently, but with lower variance. # - # @see OpenAI::Models::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters#batch_size + # @see OpenAI::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters#batch_size module BatchSize extend OpenAI::Internal::Type::Union @@ -441,7 +435,7 @@ module BatchSize # The beta value for the DPO method. A higher beta value will increase the weight # of the penalty between the policy and reference model. # - # @see OpenAI::Models::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters#beta + # @see OpenAI::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters#beta module Beta extend OpenAI::Internal::Type::Union @@ -456,7 +450,7 @@ module Beta # Scaling factor for the learning rate. A smaller learning rate may be useful to # avoid overfitting. # - # @see OpenAI::Models::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters#learning_rate_multiplier + # @see OpenAI::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters#learning_rate_multiplier module LearningRateMultiplier extend OpenAI::Internal::Type::Union @@ -471,7 +465,7 @@ module LearningRateMultiplier # The number of epochs to train the model for. An epoch refers to one full cycle # through the training dataset. # - # @see OpenAI::Models::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters#n_epochs + # @see OpenAI::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters#n_epochs module NEpochs extend OpenAI::Internal::Type::Union @@ -485,21 +479,23 @@ module NEpochs end end - # @see OpenAI::Models::FineTuning::JobCreateParams::Method#supervised + # @see OpenAI::FineTuning::JobCreateParams::Method#supervised class Supervised < OpenAI::Internal::Type::BaseModel # @!attribute hyperparameters # The hyperparameters used for the fine-tuning job. # - # @return [OpenAI::Models::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters, nil] + # @return [OpenAI::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters, nil] optional :hyperparameters, - -> { OpenAI::Models::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters } + -> { + OpenAI::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters + } # @!method initialize(hyperparameters: nil) # Configuration for the supervised fine-tuning method. # - # @param hyperparameters [OpenAI::Models::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters] The hyperparameters used for the fine-tuning job. + # @param hyperparameters [OpenAI::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters] The hyperparameters used for the fine-tuning job. - # @see OpenAI::Models::FineTuning::JobCreateParams::Method::Supervised#hyperparameters + # @see OpenAI::FineTuning::JobCreateParams::Method::Supervised#hyperparameters class Hyperparameters < OpenAI::Internal::Type::BaseModel # @!attribute batch_size # Number of examples in each batch. A larger batch size means that model @@ -507,7 +503,9 @@ class Hyperparameters < OpenAI::Internal::Type::BaseModel # # @return [Symbol, :auto, Integer, nil] optional :batch_size, - union: -> { OpenAI::Models::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters::BatchSize } + union: -> { + OpenAI::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters::BatchSize + } # @!attribute learning_rate_multiplier # Scaling factor for the learning rate. A smaller learning rate may be useful to @@ -515,7 +513,9 @@ class Hyperparameters < OpenAI::Internal::Type::BaseModel # # @return [Symbol, :auto, Float, nil] optional :learning_rate_multiplier, - union: -> { OpenAI::Models::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters::LearningRateMultiplier } + union: -> { + OpenAI::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters::LearningRateMultiplier + } # @!attribute n_epochs # The number of epochs to train the model for. An epoch refers to one full cycle @@ -523,28 +523,27 @@ class Hyperparameters < OpenAI::Internal::Type::BaseModel # # @return [Symbol, :auto, Integer, nil] optional :n_epochs, - union: -> { OpenAI::Models::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters::NEpochs } + union: -> { + OpenAI::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters::NEpochs + } # @!method initialize(batch_size: nil, learning_rate_multiplier: nil, n_epochs: nil) # Some parameter documentations has been truncated, see - # {OpenAI::Models::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters} - # for more details. + # {OpenAI::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters} for + # more details. # # The hyperparameters used for the fine-tuning job. # # @param batch_size [Symbol, :auto, Integer] Number of examples in each batch. A larger batch size means that model parameter - # ... # # @param learning_rate_multiplier [Symbol, :auto, Float] Scaling factor for the learning rate. A smaller learning rate may be useful to a - # ... # # @param n_epochs [Symbol, :auto, Integer] The number of epochs to train the model for. An epoch refers to one full cycle t - # ... # Number of examples in each batch. A larger batch size means that model # parameters are updated less frequently, but with lower variance. # - # @see OpenAI::Models::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters#batch_size + # @see OpenAI::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters#batch_size module BatchSize extend OpenAI::Internal::Type::Union @@ -559,7 +558,7 @@ module BatchSize # Scaling factor for the learning rate. A smaller learning rate may be useful to # avoid overfitting. # - # @see OpenAI::Models::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters#learning_rate_multiplier + # @see OpenAI::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters#learning_rate_multiplier module LearningRateMultiplier extend OpenAI::Internal::Type::Union @@ -574,7 +573,7 @@ module LearningRateMultiplier # The number of epochs to train the model for. An epoch refers to one full cycle # through the training dataset. # - # @see OpenAI::Models::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters#n_epochs + # @see OpenAI::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters#n_epochs module NEpochs extend OpenAI::Internal::Type::Union @@ -590,7 +589,7 @@ module NEpochs # The type of method. Is either `supervised` or `dpo`. # - # @see OpenAI::Models::FineTuning::JobCreateParams::Method#type + # @see OpenAI::FineTuning::JobCreateParams::Method#type module Type extend OpenAI::Internal::Type::Enum diff --git a/lib/openai/models/fine_tuning/job_list_params.rb b/lib/openai/models/fine_tuning/job_list_params.rb index da7349d7..30c6f937 100644 --- a/lib/openai/models/fine_tuning/job_list_params.rb +++ b/lib/openai/models/fine_tuning/job_list_params.rb @@ -36,7 +36,6 @@ class JobListParams < OpenAI::Internal::Type::BaseModel # @param limit [Integer] Number of fine-tuning jobs to retrieve. # # @param metadata [Hash{Symbol=>String}, nil] Optional metadata filter. To filter, use the syntax `metadata[k]=v`. Alternative - # ... # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] end diff --git a/lib/openai/models/fine_tuning/jobs/fine_tuning_job_checkpoint.rb b/lib/openai/models/fine_tuning/jobs/fine_tuning_job_checkpoint.rb index 230c5e4d..f0a8ff33 100644 --- a/lib/openai/models/fine_tuning/jobs/fine_tuning_job_checkpoint.rb +++ b/lib/openai/models/fine_tuning/jobs/fine_tuning_job_checkpoint.rb @@ -33,8 +33,8 @@ class FineTuningJobCheckpoint < OpenAI::Internal::Type::BaseModel # @!attribute metrics # Metrics at the step number during the fine-tuning job. # - # @return [OpenAI::Models::FineTuning::Jobs::FineTuningJobCheckpoint::Metrics] - required :metrics, -> { OpenAI::Models::FineTuning::Jobs::FineTuningJobCheckpoint::Metrics } + # @return [OpenAI::FineTuning::Jobs::FineTuningJobCheckpoint::Metrics] + required :metrics, -> { OpenAI::FineTuning::Jobs::FineTuningJobCheckpoint::Metrics } # @!attribute object # The object type, which is always "fine_tuning.job.checkpoint". @@ -60,13 +60,13 @@ class FineTuningJobCheckpoint < OpenAI::Internal::Type::BaseModel # # @param fine_tuning_job_id [String] The name of the fine-tuning job that this checkpoint was created from. # - # @param metrics [OpenAI::Models::FineTuning::Jobs::FineTuningJobCheckpoint::Metrics] Metrics at the step number during the fine-tuning job. + # @param metrics [OpenAI::FineTuning::Jobs::FineTuningJobCheckpoint::Metrics] Metrics at the step number during the fine-tuning job. # # @param step_number [Integer] The step number that the checkpoint was created at. # # @param object [Symbol, :"fine_tuning.job.checkpoint"] The object type, which is always "fine_tuning.job.checkpoint". - # @see OpenAI::Models::FineTuning::Jobs::FineTuningJobCheckpoint#metrics + # @see OpenAI::FineTuning::Jobs::FineTuningJobCheckpoint#metrics class Metrics < OpenAI::Internal::Type::BaseModel # @!attribute full_valid_loss # diff --git a/lib/openai/models/function_definition.rb b/lib/openai/models/function_definition.rb index 26ca81c0..10fe7935 100644 --- a/lib/openai/models/function_definition.rb +++ b/lib/openai/models/function_definition.rb @@ -41,19 +41,15 @@ class FunctionDefinition < OpenAI::Internal::Type::BaseModel # @!method initialize(name:, description: nil, parameters: nil, strict: nil) # Some parameter documentations has been truncated, see - # {OpenAI::Models::FunctionDefinition} for more details. + # {OpenAI::FunctionDefinition} for more details. # # @param name [String] The name of the function to be called. Must be a-z, A-Z, 0-9, or contain undersc - # ... # # @param description [String] A description of what the function does, used by the model to choose when and ho - # ... # # @param parameters [Hash{Symbol=>Object}] The parameters the functions accepts, described as a JSON Schema object. See the - # ... # # @param strict [Boolean, nil] Whether to enable strict schema adherence when generating the function call. If - # ... end end end diff --git a/lib/openai/models/image.rb b/lib/openai/models/image.rb index b392c0c4..e10a18f2 100644 --- a/lib/openai/models/image.rb +++ b/lib/openai/models/image.rb @@ -26,18 +26,16 @@ class Image < OpenAI::Internal::Type::BaseModel optional :url, String # @!method initialize(b64_json: nil, revised_prompt: nil, url: nil) - # Some parameter documentations has been truncated, see {OpenAI::Models::Image} - # for more details. + # Some parameter documentations has been truncated, see {OpenAI::Image} for more + # details. # # Represents the content or the URL of an image generated by the OpenAI API. # # @param b64_json [String] The base64-encoded JSON of the generated image. Default value for `gpt-image-1`, - # ... # # @param revised_prompt [String] For `dall-e-3` only, the revised prompt that was used to generate the image. # # @param url [String] When using `dall-e-2` or `dall-e-3`, the URL of the generated image if `response - # ... end end end diff --git a/lib/openai/models/image_create_variation_params.rb b/lib/openai/models/image_create_variation_params.rb index 6dc339d5..66ad7ea0 100644 --- a/lib/openai/models/image_create_variation_params.rb +++ b/lib/openai/models/image_create_variation_params.rb @@ -18,8 +18,8 @@ class ImageCreateVariationParams < OpenAI::Internal::Type::BaseModel # The model to use for image generation. Only `dall-e-2` is supported at this # time. # - # @return [String, Symbol, OpenAI::Models::ImageModel, nil] - optional :model, union: -> { OpenAI::Models::ImageCreateVariationParams::Model }, nil?: true + # @return [String, Symbol, OpenAI::ImageModel, nil] + optional :model, union: -> { OpenAI::ImageCreateVariationParams::Model }, nil?: true # @!attribute n # The number of images to generate. Must be between 1 and 10. @@ -32,17 +32,15 @@ class ImageCreateVariationParams < OpenAI::Internal::Type::BaseModel # `b64_json`. URLs are only valid for 60 minutes after the image has been # generated. # - # @return [Symbol, OpenAI::Models::ImageCreateVariationParams::ResponseFormat, nil] - optional :response_format, - enum: -> { OpenAI::Models::ImageCreateVariationParams::ResponseFormat }, - nil?: true + # @return [Symbol, OpenAI::ImageCreateVariationParams::ResponseFormat, nil] + optional :response_format, enum: -> { OpenAI::ImageCreateVariationParams::ResponseFormat }, nil?: true # @!attribute size # The size of the generated images. Must be one of `256x256`, `512x512`, or # `1024x1024`. # - # @return [Symbol, OpenAI::Models::ImageCreateVariationParams::Size, nil] - optional :size, enum: -> { OpenAI::Models::ImageCreateVariationParams::Size }, nil?: true + # @return [Symbol, OpenAI::ImageCreateVariationParams::Size, nil] + optional :size, enum: -> { OpenAI::ImageCreateVariationParams::Size }, nil?: true # @!attribute user # A unique identifier representing your end-user, which can help OpenAI to monitor @@ -57,21 +55,16 @@ class ImageCreateVariationParams < OpenAI::Internal::Type::BaseModel # {OpenAI::Models::ImageCreateVariationParams} for more details. # # @param image [Pathname, StringIO, IO, OpenAI::FilePart] The image to use as the basis for the variation(s). Must be a valid PNG file, le - # ... # - # @param model [String, Symbol, OpenAI::Models::ImageModel, nil] The model to use for image generation. Only `dall-e-2` is supported at this time - # ... + # @param model [String, Symbol, OpenAI::ImageModel, nil] The model to use for image generation. Only `dall-e-2` is supported at this time # # @param n [Integer, nil] The number of images to generate. Must be between 1 and 10. # - # @param response_format [Symbol, OpenAI::Models::ImageCreateVariationParams::ResponseFormat, nil] The format in which the generated images are returned. Must be one of `url` or ` - # ... + # @param response_format [Symbol, OpenAI::ImageCreateVariationParams::ResponseFormat, nil] The format in which the generated images are returned. Must be one of `url` or ` # - # @param size [Symbol, OpenAI::Models::ImageCreateVariationParams::Size, nil] The size of the generated images. Must be one of `256x256`, `512x512`, or `1024x - # ... + # @param size [Symbol, OpenAI::ImageCreateVariationParams::Size, nil] The size of the generated images. Must be one of `256x256`, `512x512`, or `1024x # # @param user [String] A unique identifier representing your end-user, which can help OpenAI to monitor - # ... # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] @@ -83,10 +76,10 @@ module Model variant String # The model to use for image generation. Only `dall-e-2` is supported at this time. - variant enum: -> { OpenAI::Models::ImageModel } + variant enum: -> { OpenAI::ImageModel } # @!method self.variants - # @return [Array(String, Symbol, OpenAI::Models::ImageModel)] + # @return [Array(String, Symbol, OpenAI::ImageModel)] end # The format in which the generated images are returned. Must be one of `url` or diff --git a/lib/openai/models/image_edit_params.rb b/lib/openai/models/image_edit_params.rb index d850e2a5..c38c7821 100644 --- a/lib/openai/models/image_edit_params.rb +++ b/lib/openai/models/image_edit_params.rb @@ -17,7 +17,7 @@ class ImageEditParams < OpenAI::Internal::Type::BaseModel # file less than 4MB. # # @return [Pathname, StringIO, IO, OpenAI::FilePart, Array] - required :image, union: -> { OpenAI::Models::ImageEditParams::Image } + required :image, union: -> { OpenAI::ImageEditParams::Image } # @!attribute prompt # A text description of the desired image(s). The maximum length is 1000 @@ -35,8 +35,8 @@ class ImageEditParams < OpenAI::Internal::Type::BaseModel # If `transparent`, the output format needs to support transparency, so it should # be set to either `png` (default value) or `webp`. # - # @return [Symbol, OpenAI::Models::ImageEditParams::Background, nil] - optional :background, enum: -> { OpenAI::Models::ImageEditParams::Background }, nil?: true + # @return [Symbol, OpenAI::ImageEditParams::Background, nil] + optional :background, enum: -> { OpenAI::ImageEditParams::Background }, nil?: true # @!attribute mask # An additional image whose fully transparent areas (e.g. where alpha is zero) @@ -52,8 +52,8 @@ class ImageEditParams < OpenAI::Internal::Type::BaseModel # supported. Defaults to `dall-e-2` unless a parameter specific to `gpt-image-1` # is used. # - # @return [String, Symbol, OpenAI::Models::ImageModel, nil] - optional :model, union: -> { OpenAI::Models::ImageEditParams::Model }, nil?: true + # @return [String, Symbol, OpenAI::ImageModel, nil] + optional :model, union: -> { OpenAI::ImageEditParams::Model }, nil?: true # @!attribute n # The number of images to generate. Must be between 1 and 10. @@ -66,8 +66,8 @@ class ImageEditParams < OpenAI::Internal::Type::BaseModel # only supported for `gpt-image-1`. `dall-e-2` only supports `standard` quality. # Defaults to `auto`. # - # @return [Symbol, OpenAI::Models::ImageEditParams::Quality, nil] - optional :quality, enum: -> { OpenAI::Models::ImageEditParams::Quality }, nil?: true + # @return [Symbol, OpenAI::ImageEditParams::Quality, nil] + optional :quality, enum: -> { OpenAI::ImageEditParams::Quality }, nil?: true # @!attribute response_format # The format in which the generated images are returned. Must be one of `url` or @@ -75,16 +75,16 @@ class ImageEditParams < OpenAI::Internal::Type::BaseModel # generated. This parameter is only supported for `dall-e-2`, as `gpt-image-1` # will always return base64-encoded images. # - # @return [Symbol, OpenAI::Models::ImageEditParams::ResponseFormat, nil] - optional :response_format, enum: -> { OpenAI::Models::ImageEditParams::ResponseFormat }, nil?: true + # @return [Symbol, OpenAI::ImageEditParams::ResponseFormat, nil] + optional :response_format, enum: -> { OpenAI::ImageEditParams::ResponseFormat }, nil?: true # @!attribute size # The size of the generated images. Must be one of `1024x1024`, `1536x1024` # (landscape), `1024x1536` (portrait), or `auto` (default value) for # `gpt-image-1`, and one of `256x256`, `512x512`, or `1024x1024` for `dall-e-2`. # - # @return [Symbol, OpenAI::Models::ImageEditParams::Size, nil] - optional :size, enum: -> { OpenAI::Models::ImageEditParams::Size }, nil?: true + # @return [Symbol, OpenAI::ImageEditParams::Size, nil] + optional :size, enum: -> { OpenAI::ImageEditParams::Size }, nil?: true # @!attribute user # A unique identifier representing your end-user, which can help OpenAI to monitor @@ -98,32 +98,25 @@ class ImageEditParams < OpenAI::Internal::Type::BaseModel # Some parameter documentations has been truncated, see # {OpenAI::Models::ImageEditParams} for more details. # - # @param image [Pathname, StringIO, IO, OpenAI::FilePart, Array] The image(s) to edit. Must be a supported image file or an array of images. ... + # @param image [Pathname, StringIO, IO, OpenAI::FilePart, Array] The image(s) to edit. Must be a supported image file or an array of images. # # @param prompt [String] A text description of the desired image(s). The maximum length is 1000 character - # ... # - # @param background [Symbol, OpenAI::Models::ImageEditParams::Background, nil] Allows to set transparency for the background of the generated image(s). ... + # @param background [Symbol, OpenAI::ImageEditParams::Background, nil] Allows to set transparency for the background of the generated image(s). # # @param mask [Pathname, StringIO, IO, OpenAI::FilePart] An additional image whose fully transparent areas (e.g. where alpha is zero) ind - # ... # - # @param model [String, Symbol, OpenAI::Models::ImageModel, nil] The model to use for image generation. Only `dall-e-2` and `gpt-image-1` are sup - # ... + # @param model [String, Symbol, OpenAI::ImageModel, nil] The model to use for image generation. Only `dall-e-2` and `gpt-image-1` are sup # # @param n [Integer, nil] The number of images to generate. Must be between 1 and 10. # - # @param quality [Symbol, OpenAI::Models::ImageEditParams::Quality, nil] The quality of the image that will be generated. `high`, `medium` and `low` are - # ... + # @param quality [Symbol, OpenAI::ImageEditParams::Quality, nil] The quality of the image that will be generated. `high`, `medium` and `low` are # - # @param response_format [Symbol, OpenAI::Models::ImageEditParams::ResponseFormat, nil] The format in which the generated images are returned. Must be one of `url` or ` - # ... + # @param response_format [Symbol, OpenAI::ImageEditParams::ResponseFormat, nil] The format in which the generated images are returned. Must be one of `url` or ` # - # @param size [Symbol, OpenAI::Models::ImageEditParams::Size, nil] The size of the generated images. Must be one of `1024x1024`, `1536x1024` (lands - # ... + # @param size [Symbol, OpenAI::ImageEditParams::Size, nil] The size of the generated images. Must be one of `1024x1024`, `1536x1024` (lands # # @param user [String] A unique identifier representing your end-user, which can help OpenAI to monitor - # ... # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] @@ -139,7 +132,7 @@ module Image variant OpenAI::Internal::Type::FileInput - variant -> { OpenAI::Models::ImageEditParams::Image::StringArray } + variant -> { OpenAI::ImageEditParams::Image::StringArray } # @!method self.variants # @return [Array(StringIO, Array)] @@ -175,10 +168,10 @@ module Model variant String # The model to use for image generation. Only `dall-e-2` and `gpt-image-1` are supported. Defaults to `dall-e-2` unless a parameter specific to `gpt-image-1` is used. - variant enum: -> { OpenAI::Models::ImageModel } + variant enum: -> { OpenAI::ImageModel } # @!method self.variants - # @return [Array(String, Symbol, OpenAI::Models::ImageModel)] + # @return [Array(String, Symbol, OpenAI::ImageModel)] end # The quality of the image that will be generated. `high`, `medium` and `low` are diff --git a/lib/openai/models/image_generate_params.rb b/lib/openai/models/image_generate_params.rb index 0c7fd7f8..c46f1558 100644 --- a/lib/openai/models/image_generate_params.rb +++ b/lib/openai/models/image_generate_params.rb @@ -24,23 +24,23 @@ class ImageGenerateParams < OpenAI::Internal::Type::BaseModel # If `transparent`, the output format needs to support transparency, so it should # be set to either `png` (default value) or `webp`. # - # @return [Symbol, OpenAI::Models::ImageGenerateParams::Background, nil] - optional :background, enum: -> { OpenAI::Models::ImageGenerateParams::Background }, nil?: true + # @return [Symbol, OpenAI::ImageGenerateParams::Background, nil] + optional :background, enum: -> { OpenAI::ImageGenerateParams::Background }, nil?: true # @!attribute model # The model to use for image generation. One of `dall-e-2`, `dall-e-3`, or # `gpt-image-1`. Defaults to `dall-e-2` unless a parameter specific to # `gpt-image-1` is used. # - # @return [String, Symbol, OpenAI::Models::ImageModel, nil] - optional :model, union: -> { OpenAI::Models::ImageGenerateParams::Model }, nil?: true + # @return [String, Symbol, OpenAI::ImageModel, nil] + optional :model, union: -> { OpenAI::ImageGenerateParams::Model }, nil?: true # @!attribute moderation # Control the content-moderation level for images generated by `gpt-image-1`. Must # be either `low` for less restrictive filtering or `auto` (default value). # - # @return [Symbol, OpenAI::Models::ImageGenerateParams::Moderation, nil] - optional :moderation, enum: -> { OpenAI::Models::ImageGenerateParams::Moderation }, nil?: true + # @return [Symbol, OpenAI::ImageGenerateParams::Moderation, nil] + optional :moderation, enum: -> { OpenAI::ImageGenerateParams::Moderation }, nil?: true # @!attribute n # The number of images to generate. Must be between 1 and 10. For `dall-e-3`, only @@ -61,8 +61,8 @@ class ImageGenerateParams < OpenAI::Internal::Type::BaseModel # The format in which the generated images are returned. This parameter is only # supported for `gpt-image-1`. Must be one of `png`, `jpeg`, or `webp`. # - # @return [Symbol, OpenAI::Models::ImageGenerateParams::OutputFormat, nil] - optional :output_format, enum: -> { OpenAI::Models::ImageGenerateParams::OutputFormat }, nil?: true + # @return [Symbol, OpenAI::ImageGenerateParams::OutputFormat, nil] + optional :output_format, enum: -> { OpenAI::ImageGenerateParams::OutputFormat }, nil?: true # @!attribute quality # The quality of the image that will be generated. @@ -73,8 +73,8 @@ class ImageGenerateParams < OpenAI::Internal::Type::BaseModel # - `hd` and `standard` are supported for `dall-e-3`. # - `standard` is the only option for `dall-e-2`. # - # @return [Symbol, OpenAI::Models::ImageGenerateParams::Quality, nil] - optional :quality, enum: -> { OpenAI::Models::ImageGenerateParams::Quality }, nil?: true + # @return [Symbol, OpenAI::ImageGenerateParams::Quality, nil] + optional :quality, enum: -> { OpenAI::ImageGenerateParams::Quality }, nil?: true # @!attribute response_format # The format in which generated images with `dall-e-2` and `dall-e-3` are @@ -82,8 +82,8 @@ class ImageGenerateParams < OpenAI::Internal::Type::BaseModel # after the image has been generated. This parameter isn't supported for # `gpt-image-1` which will always return base64-encoded images. # - # @return [Symbol, OpenAI::Models::ImageGenerateParams::ResponseFormat, nil] - optional :response_format, enum: -> { OpenAI::Models::ImageGenerateParams::ResponseFormat }, nil?: true + # @return [Symbol, OpenAI::ImageGenerateParams::ResponseFormat, nil] + optional :response_format, enum: -> { OpenAI::ImageGenerateParams::ResponseFormat }, nil?: true # @!attribute size # The size of the generated images. Must be one of `1024x1024`, `1536x1024` @@ -91,8 +91,8 @@ class ImageGenerateParams < OpenAI::Internal::Type::BaseModel # `gpt-image-1`, one of `256x256`, `512x512`, or `1024x1024` for `dall-e-2`, and # one of `1024x1024`, `1792x1024`, or `1024x1792` for `dall-e-3`. # - # @return [Symbol, OpenAI::Models::ImageGenerateParams::Size, nil] - optional :size, enum: -> { OpenAI::Models::ImageGenerateParams::Size }, nil?: true + # @return [Symbol, OpenAI::ImageGenerateParams::Size, nil] + optional :size, enum: -> { OpenAI::ImageGenerateParams::Size }, nil?: true # @!attribute style # The style of the generated images. This parameter is only supported for @@ -100,8 +100,8 @@ class ImageGenerateParams < OpenAI::Internal::Type::BaseModel # towards generating hyper-real and dramatic images. Natural causes the model to # produce more natural, less hyper-real looking images. # - # @return [Symbol, OpenAI::Models::ImageGenerateParams::Style, nil] - optional :style, enum: -> { OpenAI::Models::ImageGenerateParams::Style }, nil?: true + # @return [Symbol, OpenAI::ImageGenerateParams::Style, nil] + optional :style, enum: -> { OpenAI::ImageGenerateParams::Style }, nil?: true # @!attribute user # A unique identifier representing your end-user, which can help OpenAI to monitor @@ -116,38 +116,28 @@ class ImageGenerateParams < OpenAI::Internal::Type::BaseModel # {OpenAI::Models::ImageGenerateParams} for more details. # # @param prompt [String] A text description of the desired image(s). The maximum length is 32000 characte - # ... # - # @param background [Symbol, OpenAI::Models::ImageGenerateParams::Background, nil] Allows to set transparency for the background of the generated image(s). ... + # @param background [Symbol, OpenAI::ImageGenerateParams::Background, nil] Allows to set transparency for the background of the generated image(s). # - # @param model [String, Symbol, OpenAI::Models::ImageModel, nil] The model to use for image generation. One of `dall-e-2`, `dall-e-3`, or `gpt-im - # ... + # @param model [String, Symbol, OpenAI::ImageModel, nil] The model to use for image generation. One of `dall-e-2`, `dall-e-3`, or `gpt-im # - # @param moderation [Symbol, OpenAI::Models::ImageGenerateParams::Moderation, nil] Control the content-moderation level for images generated by `gpt-image-1`. Must - # ... + # @param moderation [Symbol, OpenAI::ImageGenerateParams::Moderation, nil] Control the content-moderation level for images generated by `gpt-image-1`. Must # # @param n [Integer, nil] The number of images to generate. Must be between 1 and 10. For `dall-e-3`, only - # ... # # @param output_compression [Integer, nil] The compression level (0-100%) for the generated images. This parameter is only - # ... # - # @param output_format [Symbol, OpenAI::Models::ImageGenerateParams::OutputFormat, nil] The format in which the generated images are returned. This parameter is only su - # ... + # @param output_format [Symbol, OpenAI::ImageGenerateParams::OutputFormat, nil] The format in which the generated images are returned. This parameter is only su # - # @param quality [Symbol, OpenAI::Models::ImageGenerateParams::Quality, nil] The quality of the image that will be generated. ... + # @param quality [Symbol, OpenAI::ImageGenerateParams::Quality, nil] The quality of the image that will be generated. # - # @param response_format [Symbol, OpenAI::Models::ImageGenerateParams::ResponseFormat, nil] The format in which generated images with `dall-e-2` and `dall-e-3` are returned - # ... + # @param response_format [Symbol, OpenAI::ImageGenerateParams::ResponseFormat, nil] The format in which generated images with `dall-e-2` and `dall-e-3` are returned # - # @param size [Symbol, OpenAI::Models::ImageGenerateParams::Size, nil] The size of the generated images. Must be one of `1024x1024`, `1536x1024` (lands - # ... + # @param size [Symbol, OpenAI::ImageGenerateParams::Size, nil] The size of the generated images. Must be one of `1024x1024`, `1536x1024` (lands # - # @param style [Symbol, OpenAI::Models::ImageGenerateParams::Style, nil] The style of the generated images. This parameter is only supported for `dall-e- - # ... + # @param style [Symbol, OpenAI::ImageGenerateParams::Style, nil] The style of the generated images. This parameter is only supported for `dall-e- # # @param user [String] A unique identifier representing your end-user, which can help OpenAI to monitor - # ... # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] @@ -178,10 +168,10 @@ module Model variant String # The model to use for image generation. One of `dall-e-2`, `dall-e-3`, or `gpt-image-1`. Defaults to `dall-e-2` unless a parameter specific to `gpt-image-1` is used. - variant enum: -> { OpenAI::Models::ImageModel } + variant enum: -> { OpenAI::ImageModel } # @!method self.variants - # @return [Array(String, Symbol, OpenAI::Models::ImageModel)] + # @return [Array(String, Symbol, OpenAI::ImageModel)] end # Control the content-moderation level for images generated by `gpt-image-1`. Must diff --git a/lib/openai/models/images_response.rb b/lib/openai/models/images_response.rb index aa3ede9f..df579e91 100644 --- a/lib/openai/models/images_response.rb +++ b/lib/openai/models/images_response.rb @@ -13,29 +13,28 @@ class ImagesResponse < OpenAI::Internal::Type::BaseModel # @!attribute data # The list of generated images. # - # @return [Array, nil] - optional :data, -> { OpenAI::Internal::Type::ArrayOf[OpenAI::Models::Image] } + # @return [Array, nil] + optional :data, -> { OpenAI::Internal::Type::ArrayOf[OpenAI::Image] } # @!attribute usage # For `gpt-image-1` only, the token usage information for the image generation. # - # @return [OpenAI::Models::ImagesResponse::Usage, nil] - optional :usage, -> { OpenAI::Models::ImagesResponse::Usage } + # @return [OpenAI::ImagesResponse::Usage, nil] + optional :usage, -> { OpenAI::ImagesResponse::Usage } # @!method initialize(created:, data: nil, usage: nil) - # Some parameter documentations has been truncated, see - # {OpenAI::Models::ImagesResponse} for more details. + # Some parameter documentations has been truncated, see {OpenAI::ImagesResponse} + # for more details. # # The response from the image generation endpoint. # # @param created [Integer] The Unix timestamp (in seconds) of when the image was created. # - # @param data [Array] The list of generated images. + # @param data [Array] The list of generated images. # - # @param usage [OpenAI::Models::ImagesResponse::Usage] For `gpt-image-1` only, the token usage information for the image generation. - # ... + # @param usage [OpenAI::ImagesResponse::Usage] For `gpt-image-1` only, the token usage information for the image generation. - # @see OpenAI::Models::ImagesResponse#usage + # @see OpenAI::ImagesResponse#usage class Usage < OpenAI::Internal::Type::BaseModel # @!attribute input_tokens # The number of tokens (images and text) in the input prompt. @@ -46,8 +45,8 @@ class Usage < OpenAI::Internal::Type::BaseModel # @!attribute input_tokens_details # The input tokens detailed information for the image generation. # - # @return [OpenAI::Models::ImagesResponse::Usage::InputTokensDetails] - required :input_tokens_details, -> { OpenAI::Models::ImagesResponse::Usage::InputTokensDetails } + # @return [OpenAI::ImagesResponse::Usage::InputTokensDetails] + required :input_tokens_details, -> { OpenAI::ImagesResponse::Usage::InputTokensDetails } # @!attribute output_tokens # The number of image tokens in the output image. @@ -66,13 +65,13 @@ class Usage < OpenAI::Internal::Type::BaseModel # # @param input_tokens [Integer] The number of tokens (images and text) in the input prompt. # - # @param input_tokens_details [OpenAI::Models::ImagesResponse::Usage::InputTokensDetails] The input tokens detailed information for the image generation. + # @param input_tokens_details [OpenAI::ImagesResponse::Usage::InputTokensDetails] The input tokens detailed information for the image generation. # # @param output_tokens [Integer] The number of image tokens in the output image. # # @param total_tokens [Integer] The total number of tokens (images and text) used for the image generation. - # @see OpenAI::Models::ImagesResponse::Usage#input_tokens_details + # @see OpenAI::ImagesResponse::Usage#input_tokens_details class InputTokensDetails < OpenAI::Internal::Type::BaseModel # @!attribute image_tokens # The number of image tokens in the input prompt. diff --git a/lib/openai/models/moderation.rb b/lib/openai/models/moderation.rb index e53c66fe..39fc2d41 100644 --- a/lib/openai/models/moderation.rb +++ b/lib/openai/models/moderation.rb @@ -6,20 +6,20 @@ class Moderation < OpenAI::Internal::Type::BaseModel # @!attribute categories # A list of the categories, and whether they are flagged or not. # - # @return [OpenAI::Models::Moderation::Categories] - required :categories, -> { OpenAI::Models::Moderation::Categories } + # @return [OpenAI::Moderation::Categories] + required :categories, -> { OpenAI::Moderation::Categories } # @!attribute category_applied_input_types # A list of the categories along with the input type(s) that the score applies to. # - # @return [OpenAI::Models::Moderation::CategoryAppliedInputTypes] - required :category_applied_input_types, -> { OpenAI::Models::Moderation::CategoryAppliedInputTypes } + # @return [OpenAI::Moderation::CategoryAppliedInputTypes] + required :category_applied_input_types, -> { OpenAI::Moderation::CategoryAppliedInputTypes } # @!attribute category_scores # A list of the categories along with their scores as predicted by model. # - # @return [OpenAI::Models::Moderation::CategoryScores] - required :category_scores, -> { OpenAI::Models::Moderation::CategoryScores } + # @return [OpenAI::Moderation::CategoryScores] + required :category_scores, -> { OpenAI::Moderation::CategoryScores } # @!attribute flagged # Whether any of the below categories are flagged. @@ -28,19 +28,18 @@ class Moderation < OpenAI::Internal::Type::BaseModel required :flagged, OpenAI::Internal::Type::Boolean # @!method initialize(categories:, category_applied_input_types:, category_scores:, flagged:) - # Some parameter documentations has been truncated, see - # {OpenAI::Models::Moderation} for more details. + # Some parameter documentations has been truncated, see {OpenAI::Moderation} for + # more details. # - # @param categories [OpenAI::Models::Moderation::Categories] A list of the categories, and whether they are flagged or not. + # @param categories [OpenAI::Moderation::Categories] A list of the categories, and whether they are flagged or not. # - # @param category_applied_input_types [OpenAI::Models::Moderation::CategoryAppliedInputTypes] A list of the categories along with the input type(s) that the score applies to. - # ... + # @param category_applied_input_types [OpenAI::Moderation::CategoryAppliedInputTypes] A list of the categories along with the input type(s) that the score applies to. # - # @param category_scores [OpenAI::Models::Moderation::CategoryScores] A list of the categories along with their scores as predicted by model. + # @param category_scores [OpenAI::Moderation::CategoryScores] A list of the categories along with their scores as predicted by model. # # @param flagged [Boolean] Whether any of the below categories are flagged. - # @see OpenAI::Models::Moderation#categories + # @see OpenAI::Moderation#categories class Categories < OpenAI::Internal::Type::BaseModel # @!attribute harassment # Content that expresses, incites, or promotes harassing language towards any @@ -139,39 +138,29 @@ class Categories < OpenAI::Internal::Type::BaseModel # @!method initialize(harassment:, harassment_threatening:, hate:, hate_threatening:, illicit:, illicit_violent:, self_harm:, self_harm_instructions:, self_harm_intent:, sexual:, sexual_minors:, violence:, violence_graphic:) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Moderation::Categories} for more details. + # {OpenAI::Moderation::Categories} for more details. # # A list of the categories, and whether they are flagged or not. # # @param harassment [Boolean] Content that expresses, incites, or promotes harassing language towards any targ - # ... # # @param harassment_threatening [Boolean] Harassment content that also includes violence or serious harm towards any targe - # ... # # @param hate [Boolean] Content that expresses, incites, or promotes hate based on race, gender, ethnici - # ... # # @param hate_threatening [Boolean] Hateful content that also includes violence or serious harm towards the targeted - # ... # # @param illicit [Boolean, nil] Content that includes instructions or advice that facilitate the planning or exe - # ... # # @param illicit_violent [Boolean, nil] Content that includes instructions or advice that facilitate the planning or exe - # ... # # @param self_harm [Boolean] Content that promotes, encourages, or depicts acts of self-harm, such as suicide - # ... # # @param self_harm_instructions [Boolean] Content that encourages performing acts of self-harm, such as suicide, cutting, - # ... # # @param self_harm_intent [Boolean] Content where the speaker expresses that they are engaging or intend to engage i - # ... # # @param sexual [Boolean] Content meant to arouse sexual excitement, such as the description of sexual act - # ... # # @param sexual_minors [Boolean] Sexual content that includes an individual who is under 18 years old. # @@ -180,135 +169,161 @@ class Categories < OpenAI::Internal::Type::BaseModel # @param violence_graphic [Boolean] Content that depicts death, violence, or physical injury in graphic detail. end - # @see OpenAI::Models::Moderation#category_applied_input_types + # @see OpenAI::Moderation#category_applied_input_types class CategoryAppliedInputTypes < OpenAI::Internal::Type::BaseModel # @!attribute harassment # The applied input type(s) for the category 'harassment'. # - # @return [Array] + # @return [Array] required :harassment, - -> { OpenAI::Internal::Type::ArrayOf[enum: OpenAI::Models::Moderation::CategoryAppliedInputTypes::Harassment] } + -> { + OpenAI::Internal::Type::ArrayOf[enum: OpenAI::Moderation::CategoryAppliedInputTypes::Harassment] + } # @!attribute harassment_threatening # The applied input type(s) for the category 'harassment/threatening'. # - # @return [Array] + # @return [Array] required :harassment_threatening, - -> { OpenAI::Internal::Type::ArrayOf[enum: OpenAI::Models::Moderation::CategoryAppliedInputTypes::HarassmentThreatening] }, + -> { + OpenAI::Internal::Type::ArrayOf[enum: OpenAI::Moderation::CategoryAppliedInputTypes::HarassmentThreatening] + }, api_name: :"harassment/threatening" # @!attribute hate # The applied input type(s) for the category 'hate'. # - # @return [Array] + # @return [Array] required :hate, - -> { OpenAI::Internal::Type::ArrayOf[enum: OpenAI::Models::Moderation::CategoryAppliedInputTypes::Hate] } + -> { + OpenAI::Internal::Type::ArrayOf[enum: OpenAI::Moderation::CategoryAppliedInputTypes::Hate] + } # @!attribute hate_threatening # The applied input type(s) for the category 'hate/threatening'. # - # @return [Array] + # @return [Array] required :hate_threatening, - -> { OpenAI::Internal::Type::ArrayOf[enum: OpenAI::Models::Moderation::CategoryAppliedInputTypes::HateThreatening] }, + -> { + OpenAI::Internal::Type::ArrayOf[enum: OpenAI::Moderation::CategoryAppliedInputTypes::HateThreatening] + }, api_name: :"hate/threatening" # @!attribute illicit # The applied input type(s) for the category 'illicit'. # - # @return [Array] + # @return [Array] required :illicit, - -> { OpenAI::Internal::Type::ArrayOf[enum: OpenAI::Models::Moderation::CategoryAppliedInputTypes::Illicit] } + -> { + OpenAI::Internal::Type::ArrayOf[enum: OpenAI::Moderation::CategoryAppliedInputTypes::Illicit] + } # @!attribute illicit_violent # The applied input type(s) for the category 'illicit/violent'. # - # @return [Array] + # @return [Array] required :illicit_violent, - -> { OpenAI::Internal::Type::ArrayOf[enum: OpenAI::Models::Moderation::CategoryAppliedInputTypes::IllicitViolent] }, + -> { + OpenAI::Internal::Type::ArrayOf[enum: OpenAI::Moderation::CategoryAppliedInputTypes::IllicitViolent] + }, api_name: :"illicit/violent" # @!attribute self_harm # The applied input type(s) for the category 'self-harm'. # - # @return [Array] + # @return [Array] required :self_harm, - -> { OpenAI::Internal::Type::ArrayOf[enum: OpenAI::Models::Moderation::CategoryAppliedInputTypes::SelfHarm] }, + -> { + OpenAI::Internal::Type::ArrayOf[enum: OpenAI::Moderation::CategoryAppliedInputTypes::SelfHarm] + }, api_name: :"self-harm" # @!attribute self_harm_instructions # The applied input type(s) for the category 'self-harm/instructions'. # - # @return [Array] + # @return [Array] required :self_harm_instructions, - -> { OpenAI::Internal::Type::ArrayOf[enum: OpenAI::Models::Moderation::CategoryAppliedInputTypes::SelfHarmInstruction] }, + -> { + OpenAI::Internal::Type::ArrayOf[enum: OpenAI::Moderation::CategoryAppliedInputTypes::SelfHarmInstruction] + }, api_name: :"self-harm/instructions" # @!attribute self_harm_intent # The applied input type(s) for the category 'self-harm/intent'. # - # @return [Array] + # @return [Array] required :self_harm_intent, - -> { OpenAI::Internal::Type::ArrayOf[enum: OpenAI::Models::Moderation::CategoryAppliedInputTypes::SelfHarmIntent] }, + -> { + OpenAI::Internal::Type::ArrayOf[enum: OpenAI::Moderation::CategoryAppliedInputTypes::SelfHarmIntent] + }, api_name: :"self-harm/intent" # @!attribute sexual # The applied input type(s) for the category 'sexual'. # - # @return [Array] + # @return [Array] required :sexual, - -> { OpenAI::Internal::Type::ArrayOf[enum: OpenAI::Models::Moderation::CategoryAppliedInputTypes::Sexual] } + -> { + OpenAI::Internal::Type::ArrayOf[enum: OpenAI::Moderation::CategoryAppliedInputTypes::Sexual] + } # @!attribute sexual_minors # The applied input type(s) for the category 'sexual/minors'. # - # @return [Array] + # @return [Array] required :sexual_minors, - -> { OpenAI::Internal::Type::ArrayOf[enum: OpenAI::Models::Moderation::CategoryAppliedInputTypes::SexualMinor] }, + -> { + OpenAI::Internal::Type::ArrayOf[enum: OpenAI::Moderation::CategoryAppliedInputTypes::SexualMinor] + }, api_name: :"sexual/minors" # @!attribute violence # The applied input type(s) for the category 'violence'. # - # @return [Array] + # @return [Array] required :violence, - -> { OpenAI::Internal::Type::ArrayOf[enum: OpenAI::Models::Moderation::CategoryAppliedInputTypes::Violence] } + -> { + OpenAI::Internal::Type::ArrayOf[enum: OpenAI::Moderation::CategoryAppliedInputTypes::Violence] + } # @!attribute violence_graphic # The applied input type(s) for the category 'violence/graphic'. # - # @return [Array] + # @return [Array] required :violence_graphic, - -> { OpenAI::Internal::Type::ArrayOf[enum: OpenAI::Models::Moderation::CategoryAppliedInputTypes::ViolenceGraphic] }, + -> { + OpenAI::Internal::Type::ArrayOf[enum: OpenAI::Moderation::CategoryAppliedInputTypes::ViolenceGraphic] + }, api_name: :"violence/graphic" # @!method initialize(harassment:, harassment_threatening:, hate:, hate_threatening:, illicit:, illicit_violent:, self_harm:, self_harm_instructions:, self_harm_intent:, sexual:, sexual_minors:, violence:, violence_graphic:) # A list of the categories along with the input type(s) that the score applies to. # - # @param harassment [Array] The applied input type(s) for the category 'harassment'. + # @param harassment [Array] The applied input type(s) for the category 'harassment'. # - # @param harassment_threatening [Array] The applied input type(s) for the category 'harassment/threatening'. + # @param harassment_threatening [Array] The applied input type(s) for the category 'harassment/threatening'. # - # @param hate [Array] The applied input type(s) for the category 'hate'. + # @param hate [Array] The applied input type(s) for the category 'hate'. # - # @param hate_threatening [Array] The applied input type(s) for the category 'hate/threatening'. + # @param hate_threatening [Array] The applied input type(s) for the category 'hate/threatening'. # - # @param illicit [Array] The applied input type(s) for the category 'illicit'. + # @param illicit [Array] The applied input type(s) for the category 'illicit'. # - # @param illicit_violent [Array] The applied input type(s) for the category 'illicit/violent'. + # @param illicit_violent [Array] The applied input type(s) for the category 'illicit/violent'. # - # @param self_harm [Array] The applied input type(s) for the category 'self-harm'. + # @param self_harm [Array] The applied input type(s) for the category 'self-harm'. # - # @param self_harm_instructions [Array] The applied input type(s) for the category 'self-harm/instructions'. + # @param self_harm_instructions [Array] The applied input type(s) for the category 'self-harm/instructions'. # - # @param self_harm_intent [Array] The applied input type(s) for the category 'self-harm/intent'. + # @param self_harm_intent [Array] The applied input type(s) for the category 'self-harm/intent'. # - # @param sexual [Array] The applied input type(s) for the category 'sexual'. + # @param sexual [Array] The applied input type(s) for the category 'sexual'. # - # @param sexual_minors [Array] The applied input type(s) for the category 'sexual/minors'. + # @param sexual_minors [Array] The applied input type(s) for the category 'sexual/minors'. # - # @param violence [Array] The applied input type(s) for the category 'violence'. + # @param violence [Array] The applied input type(s) for the category 'violence'. # - # @param violence_graphic [Array] The applied input type(s) for the category 'violence/graphic'. + # @param violence_graphic [Array] The applied input type(s) for the category 'violence/graphic'. module Harassment extend OpenAI::Internal::Type::Enum @@ -434,7 +449,7 @@ module ViolenceGraphic end end - # @see OpenAI::Models::Moderation#category_scores + # @see OpenAI::Moderation#category_scores class CategoryScores < OpenAI::Internal::Type::BaseModel # @!attribute harassment # The score for the category 'harassment'. diff --git a/lib/openai/models/moderation_create_params.rb b/lib/openai/models/moderation_create_params.rb index ae82c207..59e0cdd9 100644 --- a/lib/openai/models/moderation_create_params.rb +++ b/lib/openai/models/moderation_create_params.rb @@ -11,8 +11,8 @@ class ModerationCreateParams < OpenAI::Internal::Type::BaseModel # Input (or inputs) to classify. Can be a single string, an array of strings, or # an array of multi-modal input objects similar to other models. # - # @return [String, Array, Array] - required :input, union: -> { OpenAI::Models::ModerationCreateParams::Input } + # @return [String, Array, Array] + required :input, union: -> { OpenAI::ModerationCreateParams::Input } # @!attribute model # The content moderation model you would like to use. Learn more in @@ -20,17 +20,16 @@ class ModerationCreateParams < OpenAI::Internal::Type::BaseModel # learn about available models # [here](https://platform.openai.com/docs/models#moderation). # - # @return [String, Symbol, OpenAI::Models::ModerationModel, nil] - optional :model, union: -> { OpenAI::Models::ModerationCreateParams::Model } + # @return [String, Symbol, OpenAI::ModerationModel, nil] + optional :model, union: -> { OpenAI::ModerationCreateParams::Model } # @!method initialize(input:, model: nil, request_options: {}) # Some parameter documentations has been truncated, see # {OpenAI::Models::ModerationCreateParams} for more details. # - # @param input [String, Array, Array] Input (or inputs) to classify. Can be a single string, an array of strings, or - # ... + # @param input [String, Array, Array] Input (or inputs) to classify. Can be a single string, an array of strings, or # - # @param model [String, Symbol, OpenAI::Models::ModerationModel] The content moderation model you would like to use. Learn more in ... + # @param model [String, Symbol, OpenAI::ModerationModel] The content moderation model you would like to use. Learn more in # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] @@ -43,20 +42,20 @@ module Input variant String # An array of strings to classify for moderation. - variant -> { OpenAI::Models::ModerationCreateParams::Input::StringArray } + variant -> { OpenAI::ModerationCreateParams::Input::StringArray } # An array of multi-modal inputs to the moderation model. - variant -> { OpenAI::Models::ModerationCreateParams::Input::ModerationMultiModalInputArray } + variant -> { OpenAI::ModerationCreateParams::Input::ModerationMultiModalInputArray } # @!method self.variants - # @return [Array(String, Array, Array)] + # @return [Array(String, Array, Array)] # @type [OpenAI::Internal::Type::Converter] StringArray = OpenAI::Internal::Type::ArrayOf[String] # @type [OpenAI::Internal::Type::Converter] ModerationMultiModalInputArray = - OpenAI::Internal::Type::ArrayOf[union: -> { OpenAI::Models::ModerationMultiModalInput }] + OpenAI::Internal::Type::ArrayOf[union: -> { OpenAI::ModerationMultiModalInput }] end # The content moderation model you would like to use. Learn more in @@ -71,10 +70,10 @@ module Model # The content moderation model you would like to use. Learn more in # [the moderation guide](https://platform.openai.com/docs/guides/moderation), and learn about # available models [here](https://platform.openai.com/docs/models#moderation). - variant enum: -> { OpenAI::Models::ModerationModel } + variant enum: -> { OpenAI::ModerationModel } # @!method self.variants - # @return [Array(String, Symbol, OpenAI::Models::ModerationModel)] + # @return [Array(String, Symbol, OpenAI::ModerationModel)] end end end diff --git a/lib/openai/models/moderation_create_response.rb b/lib/openai/models/moderation_create_response.rb index 18ff1405..17c60d91 100644 --- a/lib/openai/models/moderation_create_response.rb +++ b/lib/openai/models/moderation_create_response.rb @@ -19,8 +19,8 @@ class ModerationCreateResponse < OpenAI::Internal::Type::BaseModel # @!attribute results # A list of moderation objects. # - # @return [Array] - required :results, -> { OpenAI::Internal::Type::ArrayOf[OpenAI::Models::Moderation] } + # @return [Array] + required :results, -> { OpenAI::Internal::Type::ArrayOf[OpenAI::Moderation] } # @!method initialize(id:, model:, results:) # Represents if a given text input is potentially harmful. @@ -29,7 +29,7 @@ class ModerationCreateResponse < OpenAI::Internal::Type::BaseModel # # @param model [String] The model used to generate the moderation results. # - # @param results [Array] A list of moderation objects. + # @param results [Array] A list of moderation objects. end end end diff --git a/lib/openai/models/moderation_image_url_input.rb b/lib/openai/models/moderation_image_url_input.rb index ac2342f8..ed95c5b8 100644 --- a/lib/openai/models/moderation_image_url_input.rb +++ b/lib/openai/models/moderation_image_url_input.rb @@ -6,8 +6,8 @@ class ModerationImageURLInput < OpenAI::Internal::Type::BaseModel # @!attribute image_url # Contains either an image URL or a data URL for a base64 encoded image. # - # @return [OpenAI::Models::ModerationImageURLInput::ImageURL] - required :image_url, -> { OpenAI::Models::ModerationImageURLInput::ImageURL } + # @return [OpenAI::ModerationImageURLInput::ImageURL] + required :image_url, -> { OpenAI::ModerationImageURLInput::ImageURL } # @!attribute type # Always `image_url`. @@ -18,11 +18,11 @@ class ModerationImageURLInput < OpenAI::Internal::Type::BaseModel # @!method initialize(image_url:, type: :image_url) # An object describing an image to classify. # - # @param image_url [OpenAI::Models::ModerationImageURLInput::ImageURL] Contains either an image URL or a data URL for a base64 encoded image. + # @param image_url [OpenAI::ModerationImageURLInput::ImageURL] Contains either an image URL or a data URL for a base64 encoded image. # # @param type [Symbol, :image_url] Always `image_url`. - # @see OpenAI::Models::ModerationImageURLInput#image_url + # @see OpenAI::ModerationImageURLInput#image_url class ImageURL < OpenAI::Internal::Type::BaseModel # @!attribute url # Either a URL of the image or the base64 encoded image data. diff --git a/lib/openai/models/moderation_multi_modal_input.rb b/lib/openai/models/moderation_multi_modal_input.rb index 32f5923b..5142ae94 100644 --- a/lib/openai/models/moderation_multi_modal_input.rb +++ b/lib/openai/models/moderation_multi_modal_input.rb @@ -9,13 +9,13 @@ module ModerationMultiModalInput discriminator :type # An object describing an image to classify. - variant :image_url, -> { OpenAI::Models::ModerationImageURLInput } + variant :image_url, -> { OpenAI::ModerationImageURLInput } # An object describing text to classify. - variant :text, -> { OpenAI::Models::ModerationTextInput } + variant :text, -> { OpenAI::ModerationTextInput } # @!method self.variants - # @return [Array(OpenAI::Models::ModerationImageURLInput, OpenAI::Models::ModerationTextInput)] + # @return [Array(OpenAI::ModerationImageURLInput, OpenAI::ModerationTextInput)] end end end diff --git a/lib/openai/models/reasoning.rb b/lib/openai/models/reasoning.rb index 09690970..9c418c18 100644 --- a/lib/openai/models/reasoning.rb +++ b/lib/openai/models/reasoning.rb @@ -11,8 +11,8 @@ class Reasoning < OpenAI::Internal::Type::BaseModel # supported values are `low`, `medium`, and `high`. Reducing reasoning effort can # result in faster responses and fewer tokens used on reasoning in a response. # - # @return [Symbol, OpenAI::Models::ReasoningEffort, nil] - optional :effort, enum: -> { OpenAI::Models::ReasoningEffort }, nil?: true + # @return [Symbol, OpenAI::ReasoningEffort, nil] + optional :effort, enum: -> { OpenAI::ReasoningEffort }, nil?: true # @!attribute generate_summary # @deprecated @@ -23,31 +23,31 @@ class Reasoning < OpenAI::Internal::Type::BaseModel # debugging and understanding the model's reasoning process. One of `auto`, # `concise`, or `detailed`. # - # @return [Symbol, OpenAI::Models::Reasoning::GenerateSummary, nil] - optional :generate_summary, enum: -> { OpenAI::Models::Reasoning::GenerateSummary }, nil?: true + # @return [Symbol, OpenAI::Reasoning::GenerateSummary, nil] + optional :generate_summary, enum: -> { OpenAI::Reasoning::GenerateSummary }, nil?: true # @!attribute summary # A summary of the reasoning performed by the model. This can be useful for # debugging and understanding the model's reasoning process. One of `auto`, # `concise`, or `detailed`. # - # @return [Symbol, OpenAI::Models::Reasoning::Summary, nil] - optional :summary, enum: -> { OpenAI::Models::Reasoning::Summary }, nil?: true + # @return [Symbol, OpenAI::Reasoning::Summary, nil] + optional :summary, enum: -> { OpenAI::Reasoning::Summary }, nil?: true # @!method initialize(effort: nil, generate_summary: nil, summary: nil) - # Some parameter documentations has been truncated, see - # {OpenAI::Models::Reasoning} for more details. + # Some parameter documentations has been truncated, see {OpenAI::Reasoning} for + # more details. # # **o-series models only** # # Configuration options for # [reasoning models](https://platform.openai.com/docs/guides/reasoning). # - # @param effort [Symbol, OpenAI::Models::ReasoningEffort, nil] **o-series models only** ... + # @param effort [Symbol, OpenAI::ReasoningEffort, nil] **o-series models only** # - # @param generate_summary [Symbol, OpenAI::Models::Reasoning::GenerateSummary, nil] **Deprecated:** use `summary` instead. ... + # @param generate_summary [Symbol, OpenAI::Reasoning::GenerateSummary, nil] **Deprecated:** use `summary` instead. # - # @param summary [Symbol, OpenAI::Models::Reasoning::Summary, nil] A summary of the reasoning performed by the model. This can be ... + # @param summary [Symbol, OpenAI::Reasoning::Summary, nil] A summary of the reasoning performed by the model. This can be # @deprecated # @@ -57,7 +57,7 @@ class Reasoning < OpenAI::Internal::Type::BaseModel # debugging and understanding the model's reasoning process. One of `auto`, # `concise`, or `detailed`. # - # @see OpenAI::Models::Reasoning#generate_summary + # @see OpenAI::Reasoning#generate_summary module GenerateSummary extend OpenAI::Internal::Type::Enum @@ -73,7 +73,7 @@ module GenerateSummary # debugging and understanding the model's reasoning process. One of `auto`, # `concise`, or `detailed`. # - # @see OpenAI::Models::Reasoning#summary + # @see OpenAI::Reasoning#summary module Summary extend OpenAI::Internal::Type::Enum diff --git a/lib/openai/models/response_format_json_schema.rb b/lib/openai/models/response_format_json_schema.rb index 3e78c9ff..294afc55 100644 --- a/lib/openai/models/response_format_json_schema.rb +++ b/lib/openai/models/response_format_json_schema.rb @@ -6,8 +6,8 @@ class ResponseFormatJSONSchema < OpenAI::Internal::Type::BaseModel # @!attribute json_schema # Structured Outputs configuration options, including a JSON Schema. # - # @return [OpenAI::Models::ResponseFormatJSONSchema::JSONSchema] - required :json_schema, -> { OpenAI::Models::ResponseFormatJSONSchema::JSONSchema } + # @return [OpenAI::ResponseFormatJSONSchema::JSONSchema] + required :json_schema, -> { OpenAI::ResponseFormatJSONSchema::JSONSchema } # @!attribute type # The type of response format being defined. Always `json_schema`. @@ -17,17 +17,17 @@ class ResponseFormatJSONSchema < OpenAI::Internal::Type::BaseModel # @!method initialize(json_schema:, type: :json_schema) # Some parameter documentations has been truncated, see - # {OpenAI::Models::ResponseFormatJSONSchema} for more details. + # {OpenAI::ResponseFormatJSONSchema} for more details. # # JSON Schema response format. Used to generate structured JSON responses. Learn # more about # [Structured Outputs](https://platform.openai.com/docs/guides/structured-outputs). # - # @param json_schema [OpenAI::Models::ResponseFormatJSONSchema::JSONSchema] Structured Outputs configuration options, including a JSON Schema. ... + # @param json_schema [OpenAI::ResponseFormatJSONSchema::JSONSchema] Structured Outputs configuration options, including a JSON Schema. # # @param type [Symbol, :json_schema] The type of response format being defined. Always `json_schema`. - # @see OpenAI::Models::ResponseFormatJSONSchema#json_schema + # @see OpenAI::ResponseFormatJSONSchema#json_schema class JSONSchema < OpenAI::Internal::Type::BaseModel # @!attribute name # The name of the response format. Must be a-z, A-Z, 0-9, or contain underscores @@ -62,17 +62,17 @@ class JSONSchema < OpenAI::Internal::Type::BaseModel # @!method initialize(name:, description: nil, schema: nil, strict: nil) # Some parameter documentations has been truncated, see - # {OpenAI::Models::ResponseFormatJSONSchema::JSONSchema} for more details. + # {OpenAI::ResponseFormatJSONSchema::JSONSchema} for more details. # # Structured Outputs configuration options, including a JSON Schema. # - # @param name [String] The name of the response format. Must be a-z, A-Z, 0-9, or contain ... + # @param name [String] The name of the response format. Must be a-z, A-Z, 0-9, or contain # - # @param description [String] A description of what the response format is for, used by the model to ... + # @param description [String] A description of what the response format is for, used by the model to # - # @param schema [Hash{Symbol=>Object}] The schema for the response format, described as a JSON Schema object. ... + # @param schema [Hash{Symbol=>Object}] The schema for the response format, described as a JSON Schema object. # - # @param strict [Boolean, nil] Whether to enable strict schema adherence when generating the output. ... + # @param strict [Boolean, nil] Whether to enable strict schema adherence when generating the output. end end end diff --git a/lib/openai/models/responses/computer_tool.rb b/lib/openai/models/responses/computer_tool.rb index d65a0f31..e6b14978 100644 --- a/lib/openai/models/responses/computer_tool.rb +++ b/lib/openai/models/responses/computer_tool.rb @@ -19,8 +19,8 @@ class ComputerTool < OpenAI::Internal::Type::BaseModel # @!attribute environment # The type of computer environment to control. # - # @return [Symbol, OpenAI::Models::Responses::ComputerTool::Environment] - required :environment, enum: -> { OpenAI::Models::Responses::ComputerTool::Environment } + # @return [Symbol, OpenAI::Responses::ComputerTool::Environment] + required :environment, enum: -> { OpenAI::Responses::ComputerTool::Environment } # @!attribute type # The type of the computer use tool. Always `computer_use_preview`. @@ -36,13 +36,13 @@ class ComputerTool < OpenAI::Internal::Type::BaseModel # # @param display_width [Integer] The width of the computer display. # - # @param environment [Symbol, OpenAI::Models::Responses::ComputerTool::Environment] The type of computer environment to control. + # @param environment [Symbol, OpenAI::Responses::ComputerTool::Environment] The type of computer environment to control. # # @param type [Symbol, :computer_use_preview] The type of the computer use tool. Always `computer_use_preview`. # The type of computer environment to control. # - # @see OpenAI::Models::Responses::ComputerTool#environment + # @see OpenAI::Responses::ComputerTool#environment module Environment extend OpenAI::Internal::Type::Enum diff --git a/lib/openai/models/responses/easy_input_message.rb b/lib/openai/models/responses/easy_input_message.rb index 172802bc..3cdb0887 100644 --- a/lib/openai/models/responses/easy_input_message.rb +++ b/lib/openai/models/responses/easy_input_message.rb @@ -8,25 +8,25 @@ class EasyInputMessage < OpenAI::Internal::Type::BaseModel # Text, image, or audio input to the model, used to generate a response. Can also # contain previous assistant responses. # - # @return [String, Array] - required :content, union: -> { OpenAI::Models::Responses::EasyInputMessage::Content } + # @return [String, Array] + required :content, union: -> { OpenAI::Responses::EasyInputMessage::Content } # @!attribute role # The role of the message input. One of `user`, `assistant`, `system`, or # `developer`. # - # @return [Symbol, OpenAI::Models::Responses::EasyInputMessage::Role] - required :role, enum: -> { OpenAI::Models::Responses::EasyInputMessage::Role } + # @return [Symbol, OpenAI::Responses::EasyInputMessage::Role] + required :role, enum: -> { OpenAI::Responses::EasyInputMessage::Role } # @!attribute type # The type of the message input. Always `message`. # - # @return [Symbol, OpenAI::Models::Responses::EasyInputMessage::Type, nil] - optional :type, enum: -> { OpenAI::Models::Responses::EasyInputMessage::Type } + # @return [Symbol, OpenAI::Responses::EasyInputMessage::Type, nil] + optional :type, enum: -> { OpenAI::Responses::EasyInputMessage::Type } # @!method initialize(content:, role:, type: nil) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Responses::EasyInputMessage} for more details. + # {OpenAI::Responses::EasyInputMessage} for more details. # # A message input to the model with a role indicating instruction following # hierarchy. Instructions given with the `developer` or `system` role take @@ -34,16 +34,16 @@ class EasyInputMessage < OpenAI::Internal::Type::BaseModel # `assistant` role are presumed to have been generated by the model in previous # interactions. # - # @param content [String, Array] Text, image, or audio input to the model, used to generate a response. ... + # @param content [String, Array] Text, image, or audio input to the model, used to generate a response. # - # @param role [Symbol, OpenAI::Models::Responses::EasyInputMessage::Role] The role of the message input. One of `user`, `assistant`, `system`, or ... + # @param role [Symbol, OpenAI::Responses::EasyInputMessage::Role] The role of the message input. One of `user`, `assistant`, `system`, or # - # @param type [Symbol, OpenAI::Models::Responses::EasyInputMessage::Type] The type of the message input. Always `message`. ... + # @param type [Symbol, OpenAI::Responses::EasyInputMessage::Type] The type of the message input. Always `message`. # Text, image, or audio input to the model, used to generate a response. Can also # contain previous assistant responses. # - # @see OpenAI::Models::Responses::EasyInputMessage#content + # @see OpenAI::Responses::EasyInputMessage#content module Content extend OpenAI::Internal::Type::Union @@ -52,16 +52,16 @@ module Content # A list of one or many input items to the model, containing different content # types. - variant -> { OpenAI::Models::Responses::ResponseInputMessageContentList } + variant -> { OpenAI::Responses::ResponseInputMessageContentList } # @!method self.variants - # @return [Array(String, Array)] + # @return [Array(String, Array)] end # The role of the message input. One of `user`, `assistant`, `system`, or # `developer`. # - # @see OpenAI::Models::Responses::EasyInputMessage#role + # @see OpenAI::Responses::EasyInputMessage#role module Role extend OpenAI::Internal::Type::Enum @@ -76,7 +76,7 @@ module Role # The type of the message input. Always `message`. # - # @see OpenAI::Models::Responses::EasyInputMessage#type + # @see OpenAI::Responses::EasyInputMessage#type module Type extend OpenAI::Internal::Type::Enum diff --git a/lib/openai/models/responses/file_search_tool.rb b/lib/openai/models/responses/file_search_tool.rb index 1019298c..515ef7a2 100644 --- a/lib/openai/models/responses/file_search_tool.rb +++ b/lib/openai/models/responses/file_search_tool.rb @@ -19,8 +19,8 @@ class FileSearchTool < OpenAI::Internal::Type::BaseModel # @!attribute filters # A filter to apply. # - # @return [OpenAI::Models::ComparisonFilter, OpenAI::Models::CompoundFilter, nil] - optional :filters, union: -> { OpenAI::Models::Responses::FileSearchTool::Filters }, nil?: true + # @return [OpenAI::ComparisonFilter, OpenAI::CompoundFilter, nil] + optional :filters, union: -> { OpenAI::Responses::FileSearchTool::Filters }, nil?: true # @!attribute max_num_results # The maximum number of results to return. This number should be between 1 and 50 @@ -32,12 +32,12 @@ class FileSearchTool < OpenAI::Internal::Type::BaseModel # @!attribute ranking_options # Ranking options for search. # - # @return [OpenAI::Models::Responses::FileSearchTool::RankingOptions, nil] - optional :ranking_options, -> { OpenAI::Models::Responses::FileSearchTool::RankingOptions } + # @return [OpenAI::Responses::FileSearchTool::RankingOptions, nil] + optional :ranking_options, -> { OpenAI::Responses::FileSearchTool::RankingOptions } # @!method initialize(vector_store_ids:, filters: nil, max_num_results: nil, ranking_options: nil, type: :file_search) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Responses::FileSearchTool} for more details. + # {OpenAI::Responses::FileSearchTool} for more details. # # A tool that searches for relevant content from uploaded files. Learn more about # the @@ -45,38 +45,37 @@ class FileSearchTool < OpenAI::Internal::Type::BaseModel # # @param vector_store_ids [Array] The IDs of the vector stores to search. # - # @param filters [OpenAI::Models::ComparisonFilter, OpenAI::Models::CompoundFilter, nil] A filter to apply. + # @param filters [OpenAI::ComparisonFilter, OpenAI::CompoundFilter, nil] A filter to apply. # # @param max_num_results [Integer] The maximum number of results to return. This number should be between 1 and 50 - # ... # - # @param ranking_options [OpenAI::Models::Responses::FileSearchTool::RankingOptions] Ranking options for search. + # @param ranking_options [OpenAI::Responses::FileSearchTool::RankingOptions] Ranking options for search. # # @param type [Symbol, :file_search] The type of the file search tool. Always `file_search`. # A filter to apply. # - # @see OpenAI::Models::Responses::FileSearchTool#filters + # @see OpenAI::Responses::FileSearchTool#filters module Filters extend OpenAI::Internal::Type::Union # A filter used to compare a specified attribute key to a given value using a defined comparison operation. - variant -> { OpenAI::Models::ComparisonFilter } + variant -> { OpenAI::ComparisonFilter } # Combine multiple filters using `and` or `or`. - variant -> { OpenAI::Models::CompoundFilter } + variant -> { OpenAI::CompoundFilter } # @!method self.variants - # @return [Array(OpenAI::Models::ComparisonFilter, OpenAI::Models::CompoundFilter)] + # @return [Array(OpenAI::ComparisonFilter, OpenAI::CompoundFilter)] end - # @see OpenAI::Models::Responses::FileSearchTool#ranking_options + # @see OpenAI::Responses::FileSearchTool#ranking_options class RankingOptions < OpenAI::Internal::Type::BaseModel # @!attribute ranker # The ranker to use for the file search. # - # @return [Symbol, OpenAI::Models::Responses::FileSearchTool::RankingOptions::Ranker, nil] - optional :ranker, enum: -> { OpenAI::Models::Responses::FileSearchTool::RankingOptions::Ranker } + # @return [Symbol, OpenAI::Responses::FileSearchTool::RankingOptions::Ranker, nil] + optional :ranker, enum: -> { OpenAI::Responses::FileSearchTool::RankingOptions::Ranker } # @!attribute score_threshold # The score threshold for the file search, a number between 0 and 1. Numbers @@ -88,18 +87,17 @@ class RankingOptions < OpenAI::Internal::Type::BaseModel # @!method initialize(ranker: nil, score_threshold: nil) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Responses::FileSearchTool::RankingOptions} for more details. + # {OpenAI::Responses::FileSearchTool::RankingOptions} for more details. # # Ranking options for search. # - # @param ranker [Symbol, OpenAI::Models::Responses::FileSearchTool::RankingOptions::Ranker] The ranker to use for the file search. + # @param ranker [Symbol, OpenAI::Responses::FileSearchTool::RankingOptions::Ranker] The ranker to use for the file search. # # @param score_threshold [Float] The score threshold for the file search, a number between 0 and 1. Numbers close - # ... # The ranker to use for the file search. # - # @see OpenAI::Models::Responses::FileSearchTool::RankingOptions#ranker + # @see OpenAI::Responses::FileSearchTool::RankingOptions#ranker module Ranker extend OpenAI::Internal::Type::Enum diff --git a/lib/openai/models/responses/function_tool.rb b/lib/openai/models/responses/function_tool.rb index f37a388a..246cf91a 100644 --- a/lib/openai/models/responses/function_tool.rb +++ b/lib/openai/models/responses/function_tool.rb @@ -37,7 +37,7 @@ class FunctionTool < OpenAI::Internal::Type::BaseModel # @!method initialize(name:, parameters:, strict:, description: nil, type: :function) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Responses::FunctionTool} for more details. + # {OpenAI::Responses::FunctionTool} for more details. # # Defines a function in your own code the model can choose to call. Learn more # about @@ -50,7 +50,6 @@ class FunctionTool < OpenAI::Internal::Type::BaseModel # @param strict [Boolean, nil] Whether to enforce strict parameter validation. Default `true`. # # @param description [String, nil] A description of the function. Used by the model to determine whether or not to - # ... # # @param type [Symbol, :function] The type of the function tool. Always `function`. end diff --git a/lib/openai/models/responses/input_item_list_params.rb b/lib/openai/models/responses/input_item_list_params.rb index 795ddb04..fb2306d3 100644 --- a/lib/openai/models/responses/input_item_list_params.rb +++ b/lib/openai/models/responses/input_item_list_params.rb @@ -24,9 +24,8 @@ class InputItemListParams < OpenAI::Internal::Type::BaseModel # Additional fields to include in the response. See the `include` parameter for # Response creation above for more information. # - # @return [Array, nil] - optional :include, - -> { OpenAI::Internal::Type::ArrayOf[enum: OpenAI::Models::Responses::ResponseIncludable] } + # @return [Array, nil] + optional :include, -> { OpenAI::Internal::Type::ArrayOf[enum: OpenAI::Responses::ResponseIncludable] } # @!attribute limit # A limit on the number of objects to be returned. Limit can range between 1 and @@ -41,22 +40,22 @@ class InputItemListParams < OpenAI::Internal::Type::BaseModel # - `asc`: Return the input items in ascending order. # - `desc`: Return the input items in descending order. # - # @return [Symbol, OpenAI::Models::Responses::InputItemListParams::Order, nil] - optional :order, enum: -> { OpenAI::Models::Responses::InputItemListParams::Order } + # @return [Symbol, OpenAI::Responses::InputItemListParams::Order, nil] + optional :order, enum: -> { OpenAI::Responses::InputItemListParams::Order } # @!method initialize(after: nil, before: nil, include: nil, limit: nil, order: nil, request_options: {}) # Some parameter documentations has been truncated, see # {OpenAI::Models::Responses::InputItemListParams} for more details. # - # @param after [String] An item ID to list items after, used in pagination. ... + # @param after [String] An item ID to list items after, used in pagination. # - # @param before [String] An item ID to list items before, used in pagination. ... + # @param before [String] An item ID to list items before, used in pagination. # - # @param include [Array] Additional fields to include in the response. See the `include` ... + # @param include [Array] Additional fields to include in the response. See the `include` # - # @param limit [Integer] A limit on the number of objects to be returned. Limit can range between ... + # @param limit [Integer] A limit on the number of objects to be returned. Limit can range between # - # @param order [Symbol, OpenAI::Models::Responses::InputItemListParams::Order] The order to return the input items in. Default is `asc`. ... + # @param order [Symbol, OpenAI::Responses::InputItemListParams::Order] The order to return the input items in. Default is `asc`. # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] diff --git a/lib/openai/models/responses/response.rb b/lib/openai/models/responses/response.rb index 6adb6175..4813a1af 100644 --- a/lib/openai/models/responses/response.rb +++ b/lib/openai/models/responses/response.rb @@ -22,14 +22,14 @@ class Response < OpenAI::Internal::Type::BaseModel # @!attribute error # An error object returned when the model fails to generate a Response. # - # @return [OpenAI::Models::Responses::ResponseError, nil] - required :error, -> { OpenAI::Models::Responses::ResponseError }, nil?: true + # @return [OpenAI::Responses::ResponseError, nil] + required :error, -> { OpenAI::Responses::ResponseError }, nil?: true # @!attribute incomplete_details # Details about why the response is incomplete. # - # @return [OpenAI::Models::Responses::Response::IncompleteDetails, nil] - required :incomplete_details, -> { OpenAI::Models::Responses::Response::IncompleteDetails }, nil?: true + # @return [OpenAI::Responses::Response::IncompleteDetails, nil] + required :incomplete_details, -> { OpenAI::Responses::Response::IncompleteDetails }, nil?: true # @!attribute instructions # Inserts a system (or developer) message as the first item in the model's @@ -60,8 +60,8 @@ class Response < OpenAI::Internal::Type::BaseModel # [model guide](https://platform.openai.com/docs/models) to browse and compare # available models. # - # @return [String, Symbol, OpenAI::Models::ChatModel, OpenAI::Models::ResponsesModel::ResponsesOnlyModel] - required :model, union: -> { OpenAI::Models::ResponsesModel } + # @return [String, Symbol, OpenAI::ChatModel, OpenAI::ResponsesModel::ResponsesOnlyModel] + required :model, union: -> { OpenAI::ResponsesModel } # @!attribute object # The object type of this resource - always set to `response`. @@ -78,9 +78,8 @@ class Response < OpenAI::Internal::Type::BaseModel # an `assistant` message with the content generated by the model, you might # consider using the `output_text` property where supported in SDKs. # - # @return [Array] - required :output, - -> { OpenAI::Internal::Type::ArrayOf[union: OpenAI::Models::Responses::ResponseOutputItem] } + # @return [Array] + required :output, -> { OpenAI::Internal::Type::ArrayOf[union: OpenAI::Responses::ResponseOutputItem] } # @!attribute parallel_tool_calls # Whether to allow the model to run tool calls in parallel. @@ -102,8 +101,8 @@ class Response < OpenAI::Internal::Type::BaseModel # response. See the `tools` parameter to see how to specify which tools the model # can call. # - # @return [Symbol, OpenAI::Models::Responses::ToolChoiceOptions, OpenAI::Models::Responses::ToolChoiceTypes, OpenAI::Models::Responses::ToolChoiceFunction] - required :tool_choice, union: -> { OpenAI::Models::Responses::Response::ToolChoice } + # @return [Symbol, OpenAI::Responses::ToolChoiceOptions, OpenAI::Responses::ToolChoiceTypes, OpenAI::Responses::ToolChoiceFunction] + required :tool_choice, union: -> { OpenAI::Responses::Response::ToolChoice } # @!attribute tools # An array of tools the model may call while generating a response. You can @@ -121,8 +120,8 @@ class Response < OpenAI::Internal::Type::BaseModel # the model to call your own code. Learn more about # [function calling](https://platform.openai.com/docs/guides/function-calling). # - # @return [Array] - required :tools, -> { OpenAI::Internal::Type::ArrayOf[union: OpenAI::Models::Responses::Tool] } + # @return [Array] + required :tools, -> { OpenAI::Internal::Type::ArrayOf[union: OpenAI::Responses::Tool] } # @!attribute top_p # An alternative to sampling with temperature, called nucleus sampling, where the @@ -156,8 +155,8 @@ class Response < OpenAI::Internal::Type::BaseModel # Configuration options for # [reasoning models](https://platform.openai.com/docs/guides/reasoning). # - # @return [OpenAI::Models::Reasoning, nil] - optional :reasoning, -> { OpenAI::Models::Reasoning }, nil?: true + # @return [OpenAI::Reasoning, nil] + optional :reasoning, -> { OpenAI::Reasoning }, nil?: true # @!attribute service_tier # Specifies the latency tier to use for processing the request. This parameter is @@ -178,15 +177,15 @@ class Response < OpenAI::Internal::Type::BaseModel # When this parameter is set, the response body will include the `service_tier` # utilized. # - # @return [Symbol, OpenAI::Models::Responses::Response::ServiceTier, nil] - optional :service_tier, enum: -> { OpenAI::Models::Responses::Response::ServiceTier }, nil?: true + # @return [Symbol, OpenAI::Responses::Response::ServiceTier, nil] + optional :service_tier, enum: -> { OpenAI::Responses::Response::ServiceTier }, nil?: true # @!attribute status # The status of the response generation. One of `completed`, `failed`, # `in_progress`, or `incomplete`. # - # @return [Symbol, OpenAI::Models::Responses::ResponseStatus, nil] - optional :status, enum: -> { OpenAI::Models::Responses::ResponseStatus } + # @return [Symbol, OpenAI::Responses::ResponseStatus, nil] + optional :status, enum: -> { OpenAI::Responses::ResponseStatus } # @!attribute text # Configuration options for a text response from the model. Can be plain text or @@ -195,8 +194,8 @@ class Response < OpenAI::Internal::Type::BaseModel # - [Text inputs and outputs](https://platform.openai.com/docs/guides/text) # - [Structured Outputs](https://platform.openai.com/docs/guides/structured-outputs) # - # @return [OpenAI::Models::Responses::ResponseTextConfig, nil] - optional :text, -> { OpenAI::Models::Responses::ResponseTextConfig } + # @return [OpenAI::Responses::ResponseTextConfig, nil] + optional :text, -> { OpenAI::Responses::ResponseTextConfig } # @!attribute truncation # The truncation strategy to use for the model response. @@ -207,15 +206,15 @@ class Response < OpenAI::Internal::Type::BaseModel # - `disabled` (default): If a model response will exceed the context window size # for a model, the request will fail with a 400 error. # - # @return [Symbol, OpenAI::Models::Responses::Response::Truncation, nil] - optional :truncation, enum: -> { OpenAI::Models::Responses::Response::Truncation }, nil?: true + # @return [Symbol, OpenAI::Responses::Response::Truncation, nil] + optional :truncation, enum: -> { OpenAI::Responses::Response::Truncation }, nil?: true # @!attribute usage # Represents token usage details including input tokens, output tokens, a # breakdown of output tokens, and the total tokens used. # - # @return [OpenAI::Models::Responses::ResponseUsage, nil] - optional :usage, -> { OpenAI::Models::Responses::ResponseUsage } + # @return [OpenAI::Responses::ResponseUsage, nil] + optional :usage, -> { OpenAI::Responses::ResponseUsage } # @!attribute user # A unique identifier representing your end-user, which can help OpenAI to monitor @@ -227,75 +226,70 @@ class Response < OpenAI::Internal::Type::BaseModel # @!method initialize(id:, created_at:, error:, incomplete_details:, instructions:, metadata:, model:, output:, parallel_tool_calls:, temperature:, tool_choice:, tools:, top_p:, max_output_tokens: nil, previous_response_id: nil, reasoning: nil, service_tier: nil, status: nil, text: nil, truncation: nil, usage: nil, user: nil, object: :response) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Responses::Response} for more details. + # {OpenAI::Responses::Response} for more details. # - # @param id [String] Unique identifier for this Response. ... + # @param id [String] Unique identifier for this Response. # - # @param created_at [Float] Unix timestamp (in seconds) of when this Response was created. ... + # @param created_at [Float] Unix timestamp (in seconds) of when this Response was created. # - # @param error [OpenAI::Models::Responses::ResponseError, nil] An error object returned when the model fails to generate a Response. ... + # @param error [OpenAI::Responses::ResponseError, nil] An error object returned when the model fails to generate a Response. # - # @param incomplete_details [OpenAI::Models::Responses::Response::IncompleteDetails, nil] Details about why the response is incomplete. ... + # @param incomplete_details [OpenAI::Responses::Response::IncompleteDetails, nil] Details about why the response is incomplete. # # @param instructions [String, nil] Inserts a system (or developer) message as the first item in the model's context - # ... # - # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be # - # @param model [String, Symbol, OpenAI::Models::ChatModel, OpenAI::Models::ResponsesModel::ResponsesOnlyModel] Model ID used to generate the response, like `gpt-4o` or `o3`. OpenAI ... + # @param model [String, Symbol, OpenAI::ChatModel, OpenAI::ResponsesModel::ResponsesOnlyModel] Model ID used to generate the response, like `gpt-4o` or `o3`. OpenAI # - # @param output [Array] An array of content items generated by the model. ... + # @param output [Array] An array of content items generated by the model. # - # @param parallel_tool_calls [Boolean] Whether to allow the model to run tool calls in parallel. ... + # @param parallel_tool_calls [Boolean] Whether to allow the model to run tool calls in parallel. # # @param temperature [Float, nil] What sampling temperature to use, between 0 and 2. Higher values like 0.8 will m - # ... # - # @param tool_choice [Symbol, OpenAI::Models::Responses::ToolChoiceOptions, OpenAI::Models::Responses::ToolChoiceTypes, OpenAI::Models::Responses::ToolChoiceFunction] How the model should select which tool (or tools) to use when generating ... + # @param tool_choice [Symbol, OpenAI::Responses::ToolChoiceOptions, OpenAI::Responses::ToolChoiceTypes, OpenAI::Responses::ToolChoiceFunction] How the model should select which tool (or tools) to use when generating # - # @param tools [Array] An array of tools the model may call while generating a response. You ... + # @param tools [Array] An array of tools the model may call while generating a response. You # - # @param top_p [Float, nil] An alternative to sampling with temperature, called nucleus sampling, ... + # @param top_p [Float, nil] An alternative to sampling with temperature, called nucleus sampling, # # @param max_output_tokens [Integer, nil] An upper bound for the number of tokens that can be generated for a response, in - # ... # - # @param previous_response_id [String, nil] The unique ID of the previous response to the model. Use this to ... + # @param previous_response_id [String, nil] The unique ID of the previous response to the model. Use this to # - # @param reasoning [OpenAI::Models::Reasoning, nil] **o-series models only** ... + # @param reasoning [OpenAI::Reasoning, nil] **o-series models only** # - # @param service_tier [Symbol, OpenAI::Models::Responses::Response::ServiceTier, nil] Specifies the latency tier to use for processing the request. This parameter is - # ... + # @param service_tier [Symbol, OpenAI::Responses::Response::ServiceTier, nil] Specifies the latency tier to use for processing the request. This parameter is # - # @param status [Symbol, OpenAI::Models::Responses::ResponseStatus] The status of the response generation. One of `completed`, `failed`, ... + # @param status [Symbol, OpenAI::Responses::ResponseStatus] The status of the response generation. One of `completed`, `failed`, # - # @param text [OpenAI::Models::Responses::ResponseTextConfig] Configuration options for a text response from the model. Can be plain ... + # @param text [OpenAI::Responses::ResponseTextConfig] Configuration options for a text response from the model. Can be plain # - # @param truncation [Symbol, OpenAI::Models::Responses::Response::Truncation, nil] The truncation strategy to use for the model response. ... + # @param truncation [Symbol, OpenAI::Responses::Response::Truncation, nil] The truncation strategy to use for the model response. # - # @param usage [OpenAI::Models::Responses::ResponseUsage] Represents token usage details including input tokens, output tokens, ... + # @param usage [OpenAI::Responses::ResponseUsage] Represents token usage details including input tokens, output tokens, # # @param user [String] A unique identifier representing your end-user, which can help OpenAI to monitor - # ... # - # @param object [Symbol, :response] The object type of this resource - always set to `response`. ... + # @param object [Symbol, :response] The object type of this resource - always set to `response`. - # @see OpenAI::Models::Responses::Response#incomplete_details + # @see OpenAI::Responses::Response#incomplete_details class IncompleteDetails < OpenAI::Internal::Type::BaseModel # @!attribute reason # The reason why the response is incomplete. # - # @return [Symbol, OpenAI::Models::Responses::Response::IncompleteDetails::Reason, nil] - optional :reason, enum: -> { OpenAI::Models::Responses::Response::IncompleteDetails::Reason } + # @return [Symbol, OpenAI::Responses::Response::IncompleteDetails::Reason, nil] + optional :reason, enum: -> { OpenAI::Responses::Response::IncompleteDetails::Reason } # @!method initialize(reason: nil) # Details about why the response is incomplete. # - # @param reason [Symbol, OpenAI::Models::Responses::Response::IncompleteDetails::Reason] The reason why the response is incomplete. + # @param reason [Symbol, OpenAI::Responses::Response::IncompleteDetails::Reason] The reason why the response is incomplete. # The reason why the response is incomplete. # - # @see OpenAI::Models::Responses::Response::IncompleteDetails#reason + # @see OpenAI::Responses::Response::IncompleteDetails#reason module Reason extend OpenAI::Internal::Type::Enum @@ -311,7 +305,7 @@ module Reason # response. See the `tools` parameter to see how to specify which tools the model # can call. # - # @see OpenAI::Models::Responses::Response#tool_choice + # @see OpenAI::Responses::Response#tool_choice module ToolChoice extend OpenAI::Internal::Type::Union @@ -323,17 +317,17 @@ module ToolChoice # more tools. # # `required` means the model must call one or more tools. - variant enum: -> { OpenAI::Models::Responses::ToolChoiceOptions } + variant enum: -> { OpenAI::Responses::ToolChoiceOptions } # Indicates that the model should use a built-in tool to generate a response. # [Learn more about built-in tools](https://platform.openai.com/docs/guides/tools). - variant -> { OpenAI::Models::Responses::ToolChoiceTypes } + variant -> { OpenAI::Responses::ToolChoiceTypes } # Use this option to force the model to call a specific function. - variant -> { OpenAI::Models::Responses::ToolChoiceFunction } + variant -> { OpenAI::Responses::ToolChoiceFunction } # @!method self.variants - # @return [Array(Symbol, OpenAI::Models::Responses::ToolChoiceOptions, OpenAI::Models::Responses::ToolChoiceTypes, OpenAI::Models::Responses::ToolChoiceFunction)] + # @return [Array(Symbol, OpenAI::Responses::ToolChoiceOptions, OpenAI::Responses::ToolChoiceTypes, OpenAI::Responses::ToolChoiceFunction)] end # Specifies the latency tier to use for processing the request. This parameter is @@ -354,7 +348,7 @@ module ToolChoice # When this parameter is set, the response body will include the `service_tier` # utilized. # - # @see OpenAI::Models::Responses::Response#service_tier + # @see OpenAI::Responses::Response#service_tier module ServiceTier extend OpenAI::Internal::Type::Enum @@ -374,7 +368,7 @@ module ServiceTier # - `disabled` (default): If a model response will exceed the context window size # for a model, the request will fail with a 400 error. # - # @see OpenAI::Models::Responses::Response#truncation + # @see OpenAI::Responses::Response#truncation module Truncation extend OpenAI::Internal::Type::Enum diff --git a/lib/openai/models/responses/response_audio_delta_event.rb b/lib/openai/models/responses/response_audio_delta_event.rb index 2a0394f8..f630ddd2 100644 --- a/lib/openai/models/responses/response_audio_delta_event.rb +++ b/lib/openai/models/responses/response_audio_delta_event.rb @@ -18,13 +18,13 @@ class ResponseAudioDeltaEvent < OpenAI::Internal::Type::BaseModel # @!method initialize(delta:, type: :"response.audio.delta") # Some parameter documentations has been truncated, see - # {OpenAI::Models::Responses::ResponseAudioDeltaEvent} for more details. + # {OpenAI::Responses::ResponseAudioDeltaEvent} for more details. # # Emitted when there is a partial audio response. # - # @param delta [String] A chunk of Base64 encoded response audio bytes. ... + # @param delta [String] A chunk of Base64 encoded response audio bytes. # - # @param type [Symbol, :"response.audio.delta"] The type of the event. Always `response.audio.delta`. ... + # @param type [Symbol, :"response.audio.delta"] The type of the event. Always `response.audio.delta`. end end end diff --git a/lib/openai/models/responses/response_audio_done_event.rb b/lib/openai/models/responses/response_audio_done_event.rb index 218e6146..d156cd64 100644 --- a/lib/openai/models/responses/response_audio_done_event.rb +++ b/lib/openai/models/responses/response_audio_done_event.rb @@ -12,11 +12,11 @@ class ResponseAudioDoneEvent < OpenAI::Internal::Type::BaseModel # @!method initialize(type: :"response.audio.done") # Some parameter documentations has been truncated, see - # {OpenAI::Models::Responses::ResponseAudioDoneEvent} for more details. + # {OpenAI::Responses::ResponseAudioDoneEvent} for more details. # # Emitted when the audio response is complete. # - # @param type [Symbol, :"response.audio.done"] The type of the event. Always `response.audio.done`. ... + # @param type [Symbol, :"response.audio.done"] The type of the event. Always `response.audio.done`. end end end diff --git a/lib/openai/models/responses/response_audio_transcript_delta_event.rb b/lib/openai/models/responses/response_audio_transcript_delta_event.rb index 31a92552..1361afe0 100644 --- a/lib/openai/models/responses/response_audio_transcript_delta_event.rb +++ b/lib/openai/models/responses/response_audio_transcript_delta_event.rb @@ -18,13 +18,13 @@ class ResponseAudioTranscriptDeltaEvent < OpenAI::Internal::Type::BaseModel # @!method initialize(delta:, type: :"response.audio.transcript.delta") # Some parameter documentations has been truncated, see - # {OpenAI::Models::Responses::ResponseAudioTranscriptDeltaEvent} for more details. + # {OpenAI::Responses::ResponseAudioTranscriptDeltaEvent} for more details. # # Emitted when there is a partial transcript of audio. # - # @param delta [String] The partial transcript of the audio response. ... + # @param delta [String] The partial transcript of the audio response. # - # @param type [Symbol, :"response.audio.transcript.delta"] The type of the event. Always `response.audio.transcript.delta`. ... + # @param type [Symbol, :"response.audio.transcript.delta"] The type of the event. Always `response.audio.transcript.delta`. end end end diff --git a/lib/openai/models/responses/response_audio_transcript_done_event.rb b/lib/openai/models/responses/response_audio_transcript_done_event.rb index 806bed6e..13d588f5 100644 --- a/lib/openai/models/responses/response_audio_transcript_done_event.rb +++ b/lib/openai/models/responses/response_audio_transcript_done_event.rb @@ -12,11 +12,11 @@ class ResponseAudioTranscriptDoneEvent < OpenAI::Internal::Type::BaseModel # @!method initialize(type: :"response.audio.transcript.done") # Some parameter documentations has been truncated, see - # {OpenAI::Models::Responses::ResponseAudioTranscriptDoneEvent} for more details. + # {OpenAI::Responses::ResponseAudioTranscriptDoneEvent} for more details. # # Emitted when the full audio transcript is completed. # - # @param type [Symbol, :"response.audio.transcript.done"] The type of the event. Always `response.audio.transcript.done`. ... + # @param type [Symbol, :"response.audio.transcript.done"] The type of the event. Always `response.audio.transcript.done`. end end end diff --git a/lib/openai/models/responses/response_code_interpreter_call_code_delta_event.rb b/lib/openai/models/responses/response_code_interpreter_call_code_delta_event.rb index 0f337be3..07cebc16 100644 --- a/lib/openai/models/responses/response_code_interpreter_call_code_delta_event.rb +++ b/lib/openai/models/responses/response_code_interpreter_call_code_delta_event.rb @@ -24,16 +24,15 @@ class ResponseCodeInterpreterCallCodeDeltaEvent < OpenAI::Internal::Type::BaseMo # @!method initialize(delta:, output_index:, type: :"response.code_interpreter_call.code.delta") # Some parameter documentations has been truncated, see - # {OpenAI::Models::Responses::ResponseCodeInterpreterCallCodeDeltaEvent} for more - # details. + # {OpenAI::Responses::ResponseCodeInterpreterCallCodeDeltaEvent} for more details. # # Emitted when a partial code snippet is added by the code interpreter. # - # @param delta [String] The partial code snippet added by the code interpreter. ... + # @param delta [String] The partial code snippet added by the code interpreter. # - # @param output_index [Integer] The index of the output item that the code interpreter call is in progress. ... + # @param output_index [Integer] The index of the output item that the code interpreter call is in progress. # - # @param type [Symbol, :"response.code_interpreter_call.code.delta"] The type of the event. Always `response.code_interpreter_call.code.delta`. ... + # @param type [Symbol, :"response.code_interpreter_call.code.delta"] The type of the event. Always `response.code_interpreter_call.code.delta`. end end end diff --git a/lib/openai/models/responses/response_code_interpreter_call_code_done_event.rb b/lib/openai/models/responses/response_code_interpreter_call_code_done_event.rb index 4d7ad38d..40845a15 100644 --- a/lib/openai/models/responses/response_code_interpreter_call_code_done_event.rb +++ b/lib/openai/models/responses/response_code_interpreter_call_code_done_event.rb @@ -24,16 +24,15 @@ class ResponseCodeInterpreterCallCodeDoneEvent < OpenAI::Internal::Type::BaseMod # @!method initialize(code:, output_index:, type: :"response.code_interpreter_call.code.done") # Some parameter documentations has been truncated, see - # {OpenAI::Models::Responses::ResponseCodeInterpreterCallCodeDoneEvent} for more - # details. + # {OpenAI::Responses::ResponseCodeInterpreterCallCodeDoneEvent} for more details. # # Emitted when code snippet output is finalized by the code interpreter. # - # @param code [String] The final code snippet output by the code interpreter. ... + # @param code [String] The final code snippet output by the code interpreter. # - # @param output_index [Integer] The index of the output item that the code interpreter call is in progress. ... + # @param output_index [Integer] The index of the output item that the code interpreter call is in progress. # - # @param type [Symbol, :"response.code_interpreter_call.code.done"] The type of the event. Always `response.code_interpreter_call.code.done`. ... + # @param type [Symbol, :"response.code_interpreter_call.code.done"] The type of the event. Always `response.code_interpreter_call.code.done`. end end end diff --git a/lib/openai/models/responses/response_code_interpreter_call_completed_event.rb b/lib/openai/models/responses/response_code_interpreter_call_completed_event.rb index f5cd8062..37bf5f84 100644 --- a/lib/openai/models/responses/response_code_interpreter_call_completed_event.rb +++ b/lib/openai/models/responses/response_code_interpreter_call_completed_event.rb @@ -7,8 +7,8 @@ class ResponseCodeInterpreterCallCompletedEvent < OpenAI::Internal::Type::BaseMo # @!attribute code_interpreter_call # A tool call to run code. # - # @return [OpenAI::Models::Responses::ResponseCodeInterpreterToolCall] - required :code_interpreter_call, -> { OpenAI::Models::Responses::ResponseCodeInterpreterToolCall } + # @return [OpenAI::Responses::ResponseCodeInterpreterToolCall] + required :code_interpreter_call, -> { OpenAI::Responses::ResponseCodeInterpreterToolCall } # @!attribute output_index # The index of the output item that the code interpreter call is in progress. @@ -24,16 +24,15 @@ class ResponseCodeInterpreterCallCompletedEvent < OpenAI::Internal::Type::BaseMo # @!method initialize(code_interpreter_call:, output_index:, type: :"response.code_interpreter_call.completed") # Some parameter documentations has been truncated, see - # {OpenAI::Models::Responses::ResponseCodeInterpreterCallCompletedEvent} for more - # details. + # {OpenAI::Responses::ResponseCodeInterpreterCallCompletedEvent} for more details. # # Emitted when the code interpreter call is completed. # - # @param code_interpreter_call [OpenAI::Models::Responses::ResponseCodeInterpreterToolCall] A tool call to run code. ... + # @param code_interpreter_call [OpenAI::Responses::ResponseCodeInterpreterToolCall] A tool call to run code. # - # @param output_index [Integer] The index of the output item that the code interpreter call is in progress. ... + # @param output_index [Integer] The index of the output item that the code interpreter call is in progress. # - # @param type [Symbol, :"response.code_interpreter_call.completed"] The type of the event. Always `response.code_interpreter_call.completed`. ... + # @param type [Symbol, :"response.code_interpreter_call.completed"] The type of the event. Always `response.code_interpreter_call.completed`. end end end diff --git a/lib/openai/models/responses/response_code_interpreter_call_in_progress_event.rb b/lib/openai/models/responses/response_code_interpreter_call_in_progress_event.rb index 2d6c8c32..96683a3d 100644 --- a/lib/openai/models/responses/response_code_interpreter_call_in_progress_event.rb +++ b/lib/openai/models/responses/response_code_interpreter_call_in_progress_event.rb @@ -7,8 +7,8 @@ class ResponseCodeInterpreterCallInProgressEvent < OpenAI::Internal::Type::BaseM # @!attribute code_interpreter_call # A tool call to run code. # - # @return [OpenAI::Models::Responses::ResponseCodeInterpreterToolCall] - required :code_interpreter_call, -> { OpenAI::Models::Responses::ResponseCodeInterpreterToolCall } + # @return [OpenAI::Responses::ResponseCodeInterpreterToolCall] + required :code_interpreter_call, -> { OpenAI::Responses::ResponseCodeInterpreterToolCall } # @!attribute output_index # The index of the output item that the code interpreter call is in progress. @@ -24,16 +24,16 @@ class ResponseCodeInterpreterCallInProgressEvent < OpenAI::Internal::Type::BaseM # @!method initialize(code_interpreter_call:, output_index:, type: :"response.code_interpreter_call.in_progress") # Some parameter documentations has been truncated, see - # {OpenAI::Models::Responses::ResponseCodeInterpreterCallInProgressEvent} for more + # {OpenAI::Responses::ResponseCodeInterpreterCallInProgressEvent} for more # details. # # Emitted when a code interpreter call is in progress. # - # @param code_interpreter_call [OpenAI::Models::Responses::ResponseCodeInterpreterToolCall] A tool call to run code. ... + # @param code_interpreter_call [OpenAI::Responses::ResponseCodeInterpreterToolCall] A tool call to run code. # - # @param output_index [Integer] The index of the output item that the code interpreter call is in progress. ... + # @param output_index [Integer] The index of the output item that the code interpreter call is in progress. # - # @param type [Symbol, :"response.code_interpreter_call.in_progress"] The type of the event. Always `response.code_interpreter_call.in_progress`. ... + # @param type [Symbol, :"response.code_interpreter_call.in_progress"] The type of the event. Always `response.code_interpreter_call.in_progress`. end end end diff --git a/lib/openai/models/responses/response_code_interpreter_call_interpreting_event.rb b/lib/openai/models/responses/response_code_interpreter_call_interpreting_event.rb index 63e41324..1cf23747 100644 --- a/lib/openai/models/responses/response_code_interpreter_call_interpreting_event.rb +++ b/lib/openai/models/responses/response_code_interpreter_call_interpreting_event.rb @@ -7,8 +7,8 @@ class ResponseCodeInterpreterCallInterpretingEvent < OpenAI::Internal::Type::Bas # @!attribute code_interpreter_call # A tool call to run code. # - # @return [OpenAI::Models::Responses::ResponseCodeInterpreterToolCall] - required :code_interpreter_call, -> { OpenAI::Models::Responses::ResponseCodeInterpreterToolCall } + # @return [OpenAI::Responses::ResponseCodeInterpreterToolCall] + required :code_interpreter_call, -> { OpenAI::Responses::ResponseCodeInterpreterToolCall } # @!attribute output_index # The index of the output item that the code interpreter call is in progress. @@ -24,16 +24,16 @@ class ResponseCodeInterpreterCallInterpretingEvent < OpenAI::Internal::Type::Bas # @!method initialize(code_interpreter_call:, output_index:, type: :"response.code_interpreter_call.interpreting") # Some parameter documentations has been truncated, see - # {OpenAI::Models::Responses::ResponseCodeInterpreterCallInterpretingEvent} for - # more details. + # {OpenAI::Responses::ResponseCodeInterpreterCallInterpretingEvent} for more + # details. # # Emitted when the code interpreter is actively interpreting the code snippet. # - # @param code_interpreter_call [OpenAI::Models::Responses::ResponseCodeInterpreterToolCall] A tool call to run code. ... + # @param code_interpreter_call [OpenAI::Responses::ResponseCodeInterpreterToolCall] A tool call to run code. # - # @param output_index [Integer] The index of the output item that the code interpreter call is in progress. ... + # @param output_index [Integer] The index of the output item that the code interpreter call is in progress. # - # @param type [Symbol, :"response.code_interpreter_call.interpreting"] The type of the event. Always `response.code_interpreter_call.interpreting`. ... + # @param type [Symbol, :"response.code_interpreter_call.interpreting"] The type of the event. Always `response.code_interpreter_call.interpreting`. end end end diff --git a/lib/openai/models/responses/response_code_interpreter_tool_call.rb b/lib/openai/models/responses/response_code_interpreter_tool_call.rb index 3ab4f34f..16bac78f 100644 --- a/lib/openai/models/responses/response_code_interpreter_tool_call.rb +++ b/lib/openai/models/responses/response_code_interpreter_tool_call.rb @@ -19,15 +19,17 @@ class ResponseCodeInterpreterToolCall < OpenAI::Internal::Type::BaseModel # @!attribute results # The results of the code interpreter tool call. # - # @return [Array] + # @return [Array] required :results, - -> { OpenAI::Internal::Type::ArrayOf[union: OpenAI::Models::Responses::ResponseCodeInterpreterToolCall::Result] } + -> { + OpenAI::Internal::Type::ArrayOf[union: OpenAI::Responses::ResponseCodeInterpreterToolCall::Result] + } # @!attribute status # The status of the code interpreter tool call. # - # @return [Symbol, OpenAI::Models::Responses::ResponseCodeInterpreterToolCall::Status] - required :status, enum: -> { OpenAI::Models::Responses::ResponseCodeInterpreterToolCall::Status } + # @return [Symbol, OpenAI::Responses::ResponseCodeInterpreterToolCall::Status] + required :status, enum: -> { OpenAI::Responses::ResponseCodeInterpreterToolCall::Status } # @!attribute type # The type of the code interpreter tool call. Always `code_interpreter_call`. @@ -37,19 +39,19 @@ class ResponseCodeInterpreterToolCall < OpenAI::Internal::Type::BaseModel # @!method initialize(id:, code:, results:, status:, type: :code_interpreter_call) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Responses::ResponseCodeInterpreterToolCall} for more details. + # {OpenAI::Responses::ResponseCodeInterpreterToolCall} for more details. # # A tool call to run code. # - # @param id [String] The unique ID of the code interpreter tool call. ... + # @param id [String] The unique ID of the code interpreter tool call. # - # @param code [String] The code to run. ... + # @param code [String] The code to run. # - # @param results [Array] The results of the code interpreter tool call. ... + # @param results [Array] The results of the code interpreter tool call. # - # @param status [Symbol, OpenAI::Models::Responses::ResponseCodeInterpreterToolCall::Status] The status of the code interpreter tool call. ... + # @param status [Symbol, OpenAI::Responses::ResponseCodeInterpreterToolCall::Status] The status of the code interpreter tool call. # - # @param type [Symbol, :code_interpreter_call] The type of the code interpreter tool call. Always `code_interpreter_call`. ... + # @param type [Symbol, :code_interpreter_call] The type of the code interpreter tool call. Always `code_interpreter_call`. # The output of a code interpreter tool call that is text. module Result @@ -58,10 +60,10 @@ module Result discriminator :type # The output of a code interpreter tool call that is text. - variant :logs, -> { OpenAI::Models::Responses::ResponseCodeInterpreterToolCall::Result::Logs } + variant :logs, -> { OpenAI::Responses::ResponseCodeInterpreterToolCall::Result::Logs } # The output of a code interpreter tool call that is a file. - variant :files, -> { OpenAI::Models::Responses::ResponseCodeInterpreterToolCall::Result::Files } + variant :files, -> { OpenAI::Responses::ResponseCodeInterpreterToolCall::Result::Files } class Logs < OpenAI::Internal::Type::BaseModel # @!attribute logs @@ -78,22 +80,24 @@ class Logs < OpenAI::Internal::Type::BaseModel # @!method initialize(logs:, type: :logs) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Responses::ResponseCodeInterpreterToolCall::Result::Logs} for - # more details. + # {OpenAI::Responses::ResponseCodeInterpreterToolCall::Result::Logs} for more + # details. # # The output of a code interpreter tool call that is text. # - # @param logs [String] The logs of the code interpreter tool call. ... + # @param logs [String] The logs of the code interpreter tool call. # - # @param type [Symbol, :logs] The type of the code interpreter text output. Always `logs`. ... + # @param type [Symbol, :logs] The type of the code interpreter text output. Always `logs`. end class Files < OpenAI::Internal::Type::BaseModel # @!attribute files # - # @return [Array] + # @return [Array] required :files, - -> { OpenAI::Internal::Type::ArrayOf[OpenAI::Models::Responses::ResponseCodeInterpreterToolCall::Result::Files::File] } + -> { + OpenAI::Internal::Type::ArrayOf[OpenAI::Responses::ResponseCodeInterpreterToolCall::Result::Files::File] + } # @!attribute type # The type of the code interpreter file output. Always `files`. @@ -103,14 +107,14 @@ class Files < OpenAI::Internal::Type::BaseModel # @!method initialize(files:, type: :files) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Responses::ResponseCodeInterpreterToolCall::Result::Files} for - # more details. + # {OpenAI::Responses::ResponseCodeInterpreterToolCall::Result::Files} for more + # details. # # The output of a code interpreter tool call that is a file. # - # @param files [Array] + # @param files [Array] # - # @param type [Symbol, :files] The type of the code interpreter file output. Always `files`. ... + # @param type [Symbol, :files] The type of the code interpreter file output. Always `files`. class File < OpenAI::Internal::Type::BaseModel # @!attribute file_id @@ -127,22 +131,22 @@ class File < OpenAI::Internal::Type::BaseModel # @!method initialize(file_id:, mime_type:) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Responses::ResponseCodeInterpreterToolCall::Result::Files::File} - # for more details. + # {OpenAI::Responses::ResponseCodeInterpreterToolCall::Result::Files::File} for + # more details. # - # @param file_id [String] The ID of the file. ... + # @param file_id [String] The ID of the file. # - # @param mime_type [String] The MIME type of the file. ... + # @param mime_type [String] The MIME type of the file. end end # @!method self.variants - # @return [Array(OpenAI::Models::Responses::ResponseCodeInterpreterToolCall::Result::Logs, OpenAI::Models::Responses::ResponseCodeInterpreterToolCall::Result::Files)] + # @return [Array(OpenAI::Responses::ResponseCodeInterpreterToolCall::Result::Logs, OpenAI::Responses::ResponseCodeInterpreterToolCall::Result::Files)] end # The status of the code interpreter tool call. # - # @see OpenAI::Models::Responses::ResponseCodeInterpreterToolCall#status + # @see OpenAI::Responses::ResponseCodeInterpreterToolCall#status module Status extend OpenAI::Internal::Type::Enum diff --git a/lib/openai/models/responses/response_completed_event.rb b/lib/openai/models/responses/response_completed_event.rb index e4995227..5bbb6426 100644 --- a/lib/openai/models/responses/response_completed_event.rb +++ b/lib/openai/models/responses/response_completed_event.rb @@ -7,8 +7,8 @@ class ResponseCompletedEvent < OpenAI::Internal::Type::BaseModel # @!attribute response # Properties of the completed response. # - # @return [OpenAI::Models::Responses::Response] - required :response, -> { OpenAI::Models::Responses::Response } + # @return [OpenAI::Responses::Response] + required :response, -> { OpenAI::Responses::Response } # @!attribute type # The type of the event. Always `response.completed`. @@ -18,13 +18,13 @@ class ResponseCompletedEvent < OpenAI::Internal::Type::BaseModel # @!method initialize(response:, type: :"response.completed") # Some parameter documentations has been truncated, see - # {OpenAI::Models::Responses::ResponseCompletedEvent} for more details. + # {OpenAI::Responses::ResponseCompletedEvent} for more details. # # Emitted when the model response is complete. # - # @param response [OpenAI::Models::Responses::Response] Properties of the completed response. ... + # @param response [OpenAI::Responses::Response] Properties of the completed response. # - # @param type [Symbol, :"response.completed"] The type of the event. Always `response.completed`. ... + # @param type [Symbol, :"response.completed"] The type of the event. Always `response.completed`. end end end diff --git a/lib/openai/models/responses/response_computer_tool_call.rb b/lib/openai/models/responses/response_computer_tool_call.rb index 5f2dedd1..b18746b0 100644 --- a/lib/openai/models/responses/response_computer_tool_call.rb +++ b/lib/openai/models/responses/response_computer_tool_call.rb @@ -13,8 +13,8 @@ class ResponseComputerToolCall < OpenAI::Internal::Type::BaseModel # @!attribute action # A click action. # - # @return [OpenAI::Models::Responses::ResponseComputerToolCall::Action::Click, OpenAI::Models::Responses::ResponseComputerToolCall::Action::DoubleClick, OpenAI::Models::Responses::ResponseComputerToolCall::Action::Drag, OpenAI::Models::Responses::ResponseComputerToolCall::Action::Keypress, OpenAI::Models::Responses::ResponseComputerToolCall::Action::Move, OpenAI::Models::Responses::ResponseComputerToolCall::Action::Screenshot, OpenAI::Models::Responses::ResponseComputerToolCall::Action::Scroll, OpenAI::Models::Responses::ResponseComputerToolCall::Action::Type, OpenAI::Models::Responses::ResponseComputerToolCall::Action::Wait] - required :action, union: -> { OpenAI::Models::Responses::ResponseComputerToolCall::Action } + # @return [OpenAI::Responses::ResponseComputerToolCall::Action::Click, OpenAI::Responses::ResponseComputerToolCall::Action::DoubleClick, OpenAI::Responses::ResponseComputerToolCall::Action::Drag, OpenAI::Responses::ResponseComputerToolCall::Action::Keypress, OpenAI::Responses::ResponseComputerToolCall::Action::Move, OpenAI::Responses::ResponseComputerToolCall::Action::Screenshot, OpenAI::Responses::ResponseComputerToolCall::Action::Scroll, OpenAI::Responses::ResponseComputerToolCall::Action::Type, OpenAI::Responses::ResponseComputerToolCall::Action::Wait] + required :action, union: -> { OpenAI::Responses::ResponseComputerToolCall::Action } # @!attribute call_id # An identifier used when responding to the tool call with output. @@ -25,26 +25,28 @@ class ResponseComputerToolCall < OpenAI::Internal::Type::BaseModel # @!attribute pending_safety_checks # The pending safety checks for the computer call. # - # @return [Array] + # @return [Array] required :pending_safety_checks, - -> { OpenAI::Internal::Type::ArrayOf[OpenAI::Models::Responses::ResponseComputerToolCall::PendingSafetyCheck] } + -> { + OpenAI::Internal::Type::ArrayOf[OpenAI::Responses::ResponseComputerToolCall::PendingSafetyCheck] + } # @!attribute status # The status of the item. One of `in_progress`, `completed`, or `incomplete`. # Populated when items are returned via API. # - # @return [Symbol, OpenAI::Models::Responses::ResponseComputerToolCall::Status] - required :status, enum: -> { OpenAI::Models::Responses::ResponseComputerToolCall::Status } + # @return [Symbol, OpenAI::Responses::ResponseComputerToolCall::Status] + required :status, enum: -> { OpenAI::Responses::ResponseComputerToolCall::Status } # @!attribute type # The type of the computer call. Always `computer_call`. # - # @return [Symbol, OpenAI::Models::Responses::ResponseComputerToolCall::Type] - required :type, enum: -> { OpenAI::Models::Responses::ResponseComputerToolCall::Type } + # @return [Symbol, OpenAI::Responses::ResponseComputerToolCall::Type] + required :type, enum: -> { OpenAI::Responses::ResponseComputerToolCall::Type } # @!method initialize(id:, action:, call_id:, pending_safety_checks:, status:, type:) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Responses::ResponseComputerToolCall} for more details. + # {OpenAI::Responses::ResponseComputerToolCall} for more details. # # A tool call to a computer use tool. See the # [computer use guide](https://platform.openai.com/docs/guides/tools-computer-use) @@ -52,58 +54,58 @@ class ResponseComputerToolCall < OpenAI::Internal::Type::BaseModel # # @param id [String] The unique ID of the computer call. # - # @param action [OpenAI::Models::Responses::ResponseComputerToolCall::Action::Click, OpenAI::Models::Responses::ResponseComputerToolCall::Action::DoubleClick, OpenAI::Models::Responses::ResponseComputerToolCall::Action::Drag, OpenAI::Models::Responses::ResponseComputerToolCall::Action::Keypress, OpenAI::Models::Responses::ResponseComputerToolCall::Action::Move, OpenAI::Models::Responses::ResponseComputerToolCall::Action::Screenshot, OpenAI::Models::Responses::ResponseComputerToolCall::Action::Scroll, OpenAI::Models::Responses::ResponseComputerToolCall::Action::Type, OpenAI::Models::Responses::ResponseComputerToolCall::Action::Wait] A click action. ... + # @param action [OpenAI::Responses::ResponseComputerToolCall::Action::Click, OpenAI::Responses::ResponseComputerToolCall::Action::DoubleClick, OpenAI::Responses::ResponseComputerToolCall::Action::Drag, OpenAI::Responses::ResponseComputerToolCall::Action::Keypress, OpenAI::Responses::ResponseComputerToolCall::Action::Move, OpenAI::Responses::ResponseComputerToolCall::Action::Screenshot, OpenAI::Responses::ResponseComputerToolCall::Action::Scroll, OpenAI::Responses::ResponseComputerToolCall::Action::Type, OpenAI::Responses::ResponseComputerToolCall::Action::Wait] A click action. # - # @param call_id [String] An identifier used when responding to the tool call with output. ... + # @param call_id [String] An identifier used when responding to the tool call with output. # - # @param pending_safety_checks [Array] The pending safety checks for the computer call. ... + # @param pending_safety_checks [Array] The pending safety checks for the computer call. # - # @param status [Symbol, OpenAI::Models::Responses::ResponseComputerToolCall::Status] The status of the item. One of `in_progress`, `completed`, or ... + # @param status [Symbol, OpenAI::Responses::ResponseComputerToolCall::Status] The status of the item. One of `in_progress`, `completed`, or # - # @param type [Symbol, OpenAI::Models::Responses::ResponseComputerToolCall::Type] The type of the computer call. Always `computer_call`. + # @param type [Symbol, OpenAI::Responses::ResponseComputerToolCall::Type] The type of the computer call. Always `computer_call`. # A click action. # - # @see OpenAI::Models::Responses::ResponseComputerToolCall#action + # @see OpenAI::Responses::ResponseComputerToolCall#action module Action extend OpenAI::Internal::Type::Union discriminator :type # A click action. - variant :click, -> { OpenAI::Models::Responses::ResponseComputerToolCall::Action::Click } + variant :click, -> { OpenAI::Responses::ResponseComputerToolCall::Action::Click } # A double click action. - variant :double_click, -> { OpenAI::Models::Responses::ResponseComputerToolCall::Action::DoubleClick } + variant :double_click, -> { OpenAI::Responses::ResponseComputerToolCall::Action::DoubleClick } # A drag action. - variant :drag, -> { OpenAI::Models::Responses::ResponseComputerToolCall::Action::Drag } + variant :drag, -> { OpenAI::Responses::ResponseComputerToolCall::Action::Drag } # A collection of keypresses the model would like to perform. - variant :keypress, -> { OpenAI::Models::Responses::ResponseComputerToolCall::Action::Keypress } + variant :keypress, -> { OpenAI::Responses::ResponseComputerToolCall::Action::Keypress } # A mouse move action. - variant :move, -> { OpenAI::Models::Responses::ResponseComputerToolCall::Action::Move } + variant :move, -> { OpenAI::Responses::ResponseComputerToolCall::Action::Move } # A screenshot action. - variant :screenshot, -> { OpenAI::Models::Responses::ResponseComputerToolCall::Action::Screenshot } + variant :screenshot, -> { OpenAI::Responses::ResponseComputerToolCall::Action::Screenshot } # A scroll action. - variant :scroll, -> { OpenAI::Models::Responses::ResponseComputerToolCall::Action::Scroll } + variant :scroll, -> { OpenAI::Responses::ResponseComputerToolCall::Action::Scroll } # An action to type in text. - variant :type, -> { OpenAI::Models::Responses::ResponseComputerToolCall::Action::Type } + variant :type, -> { OpenAI::Responses::ResponseComputerToolCall::Action::Type } # A wait action. - variant :wait, -> { OpenAI::Models::Responses::ResponseComputerToolCall::Action::Wait } + variant :wait, -> { OpenAI::Responses::ResponseComputerToolCall::Action::Wait } class Click < OpenAI::Internal::Type::BaseModel # @!attribute button # Indicates which mouse button was pressed during the click. One of `left`, # `right`, `wheel`, `back`, or `forward`. # - # @return [Symbol, OpenAI::Models::Responses::ResponseComputerToolCall::Action::Click::Button] - required :button, enum: -> { OpenAI::Models::Responses::ResponseComputerToolCall::Action::Click::Button } + # @return [Symbol, OpenAI::Responses::ResponseComputerToolCall::Action::Click::Button] + required :button, enum: -> { OpenAI::Responses::ResponseComputerToolCall::Action::Click::Button } # @!attribute type # Specifies the event type. For a click action, this property is always set to @@ -126,24 +128,22 @@ class Click < OpenAI::Internal::Type::BaseModel # @!method initialize(button:, x:, y_:, type: :click) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Responses::ResponseComputerToolCall::Action::Click} for more - # details. + # {OpenAI::Responses::ResponseComputerToolCall::Action::Click} for more details. # # A click action. # - # @param button [Symbol, OpenAI::Models::Responses::ResponseComputerToolCall::Action::Click::Button] Indicates which mouse button was pressed during the click. One of `left`, `right - # ... + # @param button [Symbol, OpenAI::Responses::ResponseComputerToolCall::Action::Click::Button] Indicates which mouse button was pressed during the click. One of `left`, `right # - # @param x [Integer] The x-coordinate where the click occurred. ... + # @param x [Integer] The x-coordinate where the click occurred. # - # @param y_ [Integer] The y-coordinate where the click occurred. ... + # @param y_ [Integer] The y-coordinate where the click occurred. # - # @param type [Symbol, :click] Specifies the event type. For a click action, this property is ... + # @param type [Symbol, :click] Specifies the event type. For a click action, this property is # Indicates which mouse button was pressed during the click. One of `left`, # `right`, `wheel`, `back`, or `forward`. # - # @see OpenAI::Models::Responses::ResponseComputerToolCall::Action::Click#button + # @see OpenAI::Responses::ResponseComputerToolCall::Action::Click#button module Button extend OpenAI::Internal::Type::Enum @@ -180,16 +180,16 @@ class DoubleClick < OpenAI::Internal::Type::BaseModel # @!method initialize(x:, y_:, type: :double_click) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Responses::ResponseComputerToolCall::Action::DoubleClick} for - # more details. + # {OpenAI::Responses::ResponseComputerToolCall::Action::DoubleClick} for more + # details. # # A double click action. # - # @param x [Integer] The x-coordinate where the double click occurred. ... + # @param x [Integer] The x-coordinate where the double click occurred. # - # @param y_ [Integer] The y-coordinate where the double click occurred. ... + # @param y_ [Integer] The y-coordinate where the double click occurred. # - # @param type [Symbol, :double_click] Specifies the event type. For a double click action, this property is ... + # @param type [Symbol, :double_click] Specifies the event type. For a double click action, this property is end class Drag < OpenAI::Internal::Type::BaseModel @@ -204,9 +204,11 @@ class Drag < OpenAI::Internal::Type::BaseModel # ] # ``` # - # @return [Array] + # @return [Array] required :path, - -> { OpenAI::Internal::Type::ArrayOf[OpenAI::Models::Responses::ResponseComputerToolCall::Action::Drag::Path] } + -> { + OpenAI::Internal::Type::ArrayOf[OpenAI::Responses::ResponseComputerToolCall::Action::Drag::Path] + } # @!attribute type # Specifies the event type. For a drag action, this property is always set to @@ -217,15 +219,13 @@ class Drag < OpenAI::Internal::Type::BaseModel # @!method initialize(path:, type: :drag) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Responses::ResponseComputerToolCall::Action::Drag} for more - # details. + # {OpenAI::Responses::ResponseComputerToolCall::Action::Drag} for more details. # # A drag action. # - # @param path [Array] An array of coordinates representing the path of the drag action. Coordinates wi - # ... + # @param path [Array] An array of coordinates representing the path of the drag action. Coordinates wi # - # @param type [Symbol, :drag] Specifies the event type. For a drag action, this property is ... + # @param type [Symbol, :drag] Specifies the event type. For a drag action, this property is class Path < OpenAI::Internal::Type::BaseModel # @!attribute x @@ -242,14 +242,14 @@ class Path < OpenAI::Internal::Type::BaseModel # @!method initialize(x:, y_:) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Responses::ResponseComputerToolCall::Action::Drag::Path} for - # more details. + # {OpenAI::Responses::ResponseComputerToolCall::Action::Drag::Path} for more + # details. # # A series of x/y coordinate pairs in the drag path. # - # @param x [Integer] The x-coordinate. ... + # @param x [Integer] The x-coordinate. # - # @param y_ [Integer] The y-coordinate. ... + # @param y_ [Integer] The y-coordinate. end end @@ -270,14 +270,14 @@ class Keypress < OpenAI::Internal::Type::BaseModel # @!method initialize(keys:, type: :keypress) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Responses::ResponseComputerToolCall::Action::Keypress} for more + # {OpenAI::Responses::ResponseComputerToolCall::Action::Keypress} for more # details. # # A collection of keypresses the model would like to perform. # - # @param keys [Array] The combination of keys the model is requesting to be pressed. This is an ... + # @param keys [Array] The combination of keys the model is requesting to be pressed. This is an # - # @param type [Symbol, :keypress] Specifies the event type. For a keypress action, this property is ... + # @param type [Symbol, :keypress] Specifies the event type. For a keypress action, this property is end class Move < OpenAI::Internal::Type::BaseModel @@ -302,16 +302,15 @@ class Move < OpenAI::Internal::Type::BaseModel # @!method initialize(x:, y_:, type: :move) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Responses::ResponseComputerToolCall::Action::Move} for more - # details. + # {OpenAI::Responses::ResponseComputerToolCall::Action::Move} for more details. # # A mouse move action. # - # @param x [Integer] The x-coordinate to move to. ... + # @param x [Integer] The x-coordinate to move to. # - # @param y_ [Integer] The y-coordinate to move to. ... + # @param y_ [Integer] The y-coordinate to move to. # - # @param type [Symbol, :move] Specifies the event type. For a move action, this property is ... + # @param type [Symbol, :move] Specifies the event type. For a move action, this property is end class Screenshot < OpenAI::Internal::Type::BaseModel @@ -324,12 +323,12 @@ class Screenshot < OpenAI::Internal::Type::BaseModel # @!method initialize(type: :screenshot) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Responses::ResponseComputerToolCall::Action::Screenshot} for - # more details. + # {OpenAI::Responses::ResponseComputerToolCall::Action::Screenshot} for more + # details. # # A screenshot action. # - # @param type [Symbol, :screenshot] Specifies the event type. For a screenshot action, this property is ... + # @param type [Symbol, :screenshot] Specifies the event type. For a screenshot action, this property is end class Scroll < OpenAI::Internal::Type::BaseModel @@ -366,20 +365,19 @@ class Scroll < OpenAI::Internal::Type::BaseModel # @!method initialize(scroll_x:, scroll_y:, x:, y_:, type: :scroll) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Responses::ResponseComputerToolCall::Action::Scroll} for more - # details. + # {OpenAI::Responses::ResponseComputerToolCall::Action::Scroll} for more details. # # A scroll action. # - # @param scroll_x [Integer] The horizontal scroll distance. ... + # @param scroll_x [Integer] The horizontal scroll distance. # - # @param scroll_y [Integer] The vertical scroll distance. ... + # @param scroll_y [Integer] The vertical scroll distance. # - # @param x [Integer] The x-coordinate where the scroll occurred. ... + # @param x [Integer] The x-coordinate where the scroll occurred. # - # @param y_ [Integer] The y-coordinate where the scroll occurred. ... + # @param y_ [Integer] The y-coordinate where the scroll occurred. # - # @param type [Symbol, :scroll] Specifies the event type. For a scroll action, this property is ... + # @param type [Symbol, :scroll] Specifies the event type. For a scroll action, this property is end class Type < OpenAI::Internal::Type::BaseModel @@ -398,14 +396,13 @@ class Type < OpenAI::Internal::Type::BaseModel # @!method initialize(text:, type: :type) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Responses::ResponseComputerToolCall::Action::Type} for more - # details. + # {OpenAI::Responses::ResponseComputerToolCall::Action::Type} for more details. # # An action to type in text. # - # @param text [String] The text to type. ... + # @param text [String] The text to type. # - # @param type [Symbol, :type] Specifies the event type. For a type action, this property is ... + # @param type [Symbol, :type] Specifies the event type. For a type action, this property is end class Wait < OpenAI::Internal::Type::BaseModel @@ -418,16 +415,15 @@ class Wait < OpenAI::Internal::Type::BaseModel # @!method initialize(type: :wait) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Responses::ResponseComputerToolCall::Action::Wait} for more - # details. + # {OpenAI::Responses::ResponseComputerToolCall::Action::Wait} for more details. # # A wait action. # - # @param type [Symbol, :wait] Specifies the event type. For a wait action, this property is ... + # @param type [Symbol, :wait] Specifies the event type. For a wait action, this property is end # @!method self.variants - # @return [Array(OpenAI::Models::Responses::ResponseComputerToolCall::Action::Click, OpenAI::Models::Responses::ResponseComputerToolCall::Action::DoubleClick, OpenAI::Models::Responses::ResponseComputerToolCall::Action::Drag, OpenAI::Models::Responses::ResponseComputerToolCall::Action::Keypress, OpenAI::Models::Responses::ResponseComputerToolCall::Action::Move, OpenAI::Models::Responses::ResponseComputerToolCall::Action::Screenshot, OpenAI::Models::Responses::ResponseComputerToolCall::Action::Scroll, OpenAI::Models::Responses::ResponseComputerToolCall::Action::Type, OpenAI::Models::Responses::ResponseComputerToolCall::Action::Wait)] + # @return [Array(OpenAI::Responses::ResponseComputerToolCall::Action::Click, OpenAI::Responses::ResponseComputerToolCall::Action::DoubleClick, OpenAI::Responses::ResponseComputerToolCall::Action::Drag, OpenAI::Responses::ResponseComputerToolCall::Action::Keypress, OpenAI::Responses::ResponseComputerToolCall::Action::Move, OpenAI::Responses::ResponseComputerToolCall::Action::Screenshot, OpenAI::Responses::ResponseComputerToolCall::Action::Scroll, OpenAI::Responses::ResponseComputerToolCall::Action::Type, OpenAI::Responses::ResponseComputerToolCall::Action::Wait)] end class PendingSafetyCheck < OpenAI::Internal::Type::BaseModel @@ -462,7 +458,7 @@ class PendingSafetyCheck < OpenAI::Internal::Type::BaseModel # The status of the item. One of `in_progress`, `completed`, or `incomplete`. # Populated when items are returned via API. # - # @see OpenAI::Models::Responses::ResponseComputerToolCall#status + # @see OpenAI::Responses::ResponseComputerToolCall#status module Status extend OpenAI::Internal::Type::Enum @@ -476,7 +472,7 @@ module Status # The type of the computer call. Always `computer_call`. # - # @see OpenAI::Models::Responses::ResponseComputerToolCall#type + # @see OpenAI::Responses::ResponseComputerToolCall#type module Type extend OpenAI::Internal::Type::Enum diff --git a/lib/openai/models/responses/response_computer_tool_call_output_item.rb b/lib/openai/models/responses/response_computer_tool_call_output_item.rb index 1b404766..f18b9a16 100644 --- a/lib/openai/models/responses/response_computer_tool_call_output_item.rb +++ b/lib/openai/models/responses/response_computer_tool_call_output_item.rb @@ -19,8 +19,8 @@ class ResponseComputerToolCallOutputItem < OpenAI::Internal::Type::BaseModel # @!attribute output # A computer screenshot image used with the computer use tool. # - # @return [OpenAI::Models::Responses::ResponseComputerToolCallOutputScreenshot] - required :output, -> { OpenAI::Models::Responses::ResponseComputerToolCallOutputScreenshot } + # @return [OpenAI::Responses::ResponseComputerToolCallOutputScreenshot] + required :output, -> { OpenAI::Responses::ResponseComputerToolCallOutputScreenshot } # @!attribute type # The type of the computer tool call output. Always `computer_call_output`. @@ -32,33 +32,34 @@ class ResponseComputerToolCallOutputItem < OpenAI::Internal::Type::BaseModel # The safety checks reported by the API that have been acknowledged by the # developer. # - # @return [Array, nil] + # @return [Array, nil] optional :acknowledged_safety_checks, - -> { OpenAI::Internal::Type::ArrayOf[OpenAI::Models::Responses::ResponseComputerToolCallOutputItem::AcknowledgedSafetyCheck] } + -> { + OpenAI::Internal::Type::ArrayOf[OpenAI::Responses::ResponseComputerToolCallOutputItem::AcknowledgedSafetyCheck] + } # @!attribute status # The status of the message input. One of `in_progress`, `completed`, or # `incomplete`. Populated when input items are returned via API. # - # @return [Symbol, OpenAI::Models::Responses::ResponseComputerToolCallOutputItem::Status, nil] - optional :status, enum: -> { OpenAI::Models::Responses::ResponseComputerToolCallOutputItem::Status } + # @return [Symbol, OpenAI::Responses::ResponseComputerToolCallOutputItem::Status, nil] + optional :status, enum: -> { OpenAI::Responses::ResponseComputerToolCallOutputItem::Status } # @!method initialize(id:, call_id:, output:, acknowledged_safety_checks: nil, status: nil, type: :computer_call_output) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Responses::ResponseComputerToolCallOutputItem} for more - # details. + # {OpenAI::Responses::ResponseComputerToolCallOutputItem} for more details. # - # @param id [String] The unique ID of the computer call tool output. ... + # @param id [String] The unique ID of the computer call tool output. # - # @param call_id [String] The ID of the computer tool call that produced the output. ... + # @param call_id [String] The ID of the computer tool call that produced the output. # - # @param output [OpenAI::Models::Responses::ResponseComputerToolCallOutputScreenshot] A computer screenshot image used with the computer use tool. ... + # @param output [OpenAI::Responses::ResponseComputerToolCallOutputScreenshot] A computer screenshot image used with the computer use tool. # - # @param acknowledged_safety_checks [Array] The safety checks reported by the API that have been acknowledged by the ... + # @param acknowledged_safety_checks [Array] The safety checks reported by the API that have been acknowledged by the # - # @param status [Symbol, OpenAI::Models::Responses::ResponseComputerToolCallOutputItem::Status] The status of the message input. One of `in_progress`, `completed`, or ... + # @param status [Symbol, OpenAI::Responses::ResponseComputerToolCallOutputItem::Status] The status of the message input. One of `in_progress`, `completed`, or # - # @param type [Symbol, :computer_call_output] The type of the computer tool call output. Always `computer_call_output`. ... + # @param type [Symbol, :computer_call_output] The type of the computer tool call output. Always `computer_call_output`. class AcknowledgedSafetyCheck < OpenAI::Internal::Type::BaseModel # @!attribute id @@ -92,7 +93,7 @@ class AcknowledgedSafetyCheck < OpenAI::Internal::Type::BaseModel # The status of the message input. One of `in_progress`, `completed`, or # `incomplete`. Populated when input items are returned via API. # - # @see OpenAI::Models::Responses::ResponseComputerToolCallOutputItem#status + # @see OpenAI::Responses::ResponseComputerToolCallOutputItem#status module Status extend OpenAI::Internal::Type::Enum diff --git a/lib/openai/models/responses/response_computer_tool_call_output_screenshot.rb b/lib/openai/models/responses/response_computer_tool_call_output_screenshot.rb index e42b2d78..962d8ed7 100644 --- a/lib/openai/models/responses/response_computer_tool_call_output_screenshot.rb +++ b/lib/openai/models/responses/response_computer_tool_call_output_screenshot.rb @@ -25,8 +25,7 @@ class ResponseComputerToolCallOutputScreenshot < OpenAI::Internal::Type::BaseMod # @!method initialize(file_id: nil, image_url: nil, type: :computer_screenshot) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Responses::ResponseComputerToolCallOutputScreenshot} for more - # details. + # {OpenAI::Responses::ResponseComputerToolCallOutputScreenshot} for more details. # # A computer screenshot image used with the computer use tool. # @@ -34,7 +33,7 @@ class ResponseComputerToolCallOutputScreenshot < OpenAI::Internal::Type::BaseMod # # @param image_url [String] The URL of the screenshot image. # - # @param type [Symbol, :computer_screenshot] Specifies the event type. For a computer screenshot, this property is ... + # @param type [Symbol, :computer_screenshot] Specifies the event type. For a computer screenshot, this property is end end end diff --git a/lib/openai/models/responses/response_content.rb b/lib/openai/models/responses/response_content.rb index ed9ff454..95e1afdd 100644 --- a/lib/openai/models/responses/response_content.rb +++ b/lib/openai/models/responses/response_content.rb @@ -8,22 +8,22 @@ module ResponseContent extend OpenAI::Internal::Type::Union # A text input to the model. - variant -> { OpenAI::Models::Responses::ResponseInputText } + variant -> { OpenAI::Responses::ResponseInputText } # An image input to the model. Learn about [image inputs](https://platform.openai.com/docs/guides/vision). - variant -> { OpenAI::Models::Responses::ResponseInputImage } + variant -> { OpenAI::Responses::ResponseInputImage } # A file input to the model. - variant -> { OpenAI::Models::Responses::ResponseInputFile } + variant -> { OpenAI::Responses::ResponseInputFile } # A text output from the model. - variant -> { OpenAI::Models::Responses::ResponseOutputText } + variant -> { OpenAI::Responses::ResponseOutputText } # A refusal from the model. - variant -> { OpenAI::Models::Responses::ResponseOutputRefusal } + variant -> { OpenAI::Responses::ResponseOutputRefusal } # @!method self.variants - # @return [Array(OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::Responses::ResponseInputImage, OpenAI::Models::Responses::ResponseInputFile, OpenAI::Models::Responses::ResponseOutputText, OpenAI::Models::Responses::ResponseOutputRefusal)] + # @return [Array(OpenAI::Responses::ResponseInputText, OpenAI::Responses::ResponseInputImage, OpenAI::Responses::ResponseInputFile, OpenAI::Responses::ResponseOutputText, OpenAI::Responses::ResponseOutputRefusal)] end end end diff --git a/lib/openai/models/responses/response_content_part_added_event.rb b/lib/openai/models/responses/response_content_part_added_event.rb index 86328573..1bb0cddf 100644 --- a/lib/openai/models/responses/response_content_part_added_event.rb +++ b/lib/openai/models/responses/response_content_part_added_event.rb @@ -25,8 +25,8 @@ class ResponseContentPartAddedEvent < OpenAI::Internal::Type::BaseModel # @!attribute part # The content part that was added. # - # @return [OpenAI::Models::Responses::ResponseOutputText, OpenAI::Models::Responses::ResponseOutputRefusal] - required :part, union: -> { OpenAI::Models::Responses::ResponseContentPartAddedEvent::Part } + # @return [OpenAI::Responses::ResponseOutputText, OpenAI::Responses::ResponseOutputRefusal] + required :part, union: -> { OpenAI::Responses::ResponseContentPartAddedEvent::Part } # @!attribute type # The type of the event. Always `response.content_part.added`. @@ -36,36 +36,36 @@ class ResponseContentPartAddedEvent < OpenAI::Internal::Type::BaseModel # @!method initialize(content_index:, item_id:, output_index:, part:, type: :"response.content_part.added") # Some parameter documentations has been truncated, see - # {OpenAI::Models::Responses::ResponseContentPartAddedEvent} for more details. + # {OpenAI::Responses::ResponseContentPartAddedEvent} for more details. # # Emitted when a new content part is added. # - # @param content_index [Integer] The index of the content part that was added. ... + # @param content_index [Integer] The index of the content part that was added. # - # @param item_id [String] The ID of the output item that the content part was added to. ... + # @param item_id [String] The ID of the output item that the content part was added to. # - # @param output_index [Integer] The index of the output item that the content part was added to. ... + # @param output_index [Integer] The index of the output item that the content part was added to. # - # @param part [OpenAI::Models::Responses::ResponseOutputText, OpenAI::Models::Responses::ResponseOutputRefusal] The content part that was added. ... + # @param part [OpenAI::Responses::ResponseOutputText, OpenAI::Responses::ResponseOutputRefusal] The content part that was added. # - # @param type [Symbol, :"response.content_part.added"] The type of the event. Always `response.content_part.added`. ... + # @param type [Symbol, :"response.content_part.added"] The type of the event. Always `response.content_part.added`. # The content part that was added. # - # @see OpenAI::Models::Responses::ResponseContentPartAddedEvent#part + # @see OpenAI::Responses::ResponseContentPartAddedEvent#part module Part extend OpenAI::Internal::Type::Union discriminator :type # A text output from the model. - variant :output_text, -> { OpenAI::Models::Responses::ResponseOutputText } + variant :output_text, -> { OpenAI::Responses::ResponseOutputText } # A refusal from the model. - variant :refusal, -> { OpenAI::Models::Responses::ResponseOutputRefusal } + variant :refusal, -> { OpenAI::Responses::ResponseOutputRefusal } # @!method self.variants - # @return [Array(OpenAI::Models::Responses::ResponseOutputText, OpenAI::Models::Responses::ResponseOutputRefusal)] + # @return [Array(OpenAI::Responses::ResponseOutputText, OpenAI::Responses::ResponseOutputRefusal)] end end end diff --git a/lib/openai/models/responses/response_content_part_done_event.rb b/lib/openai/models/responses/response_content_part_done_event.rb index 2858e020..56b1e274 100644 --- a/lib/openai/models/responses/response_content_part_done_event.rb +++ b/lib/openai/models/responses/response_content_part_done_event.rb @@ -25,8 +25,8 @@ class ResponseContentPartDoneEvent < OpenAI::Internal::Type::BaseModel # @!attribute part # The content part that is done. # - # @return [OpenAI::Models::Responses::ResponseOutputText, OpenAI::Models::Responses::ResponseOutputRefusal] - required :part, union: -> { OpenAI::Models::Responses::ResponseContentPartDoneEvent::Part } + # @return [OpenAI::Responses::ResponseOutputText, OpenAI::Responses::ResponseOutputRefusal] + required :part, union: -> { OpenAI::Responses::ResponseContentPartDoneEvent::Part } # @!attribute type # The type of the event. Always `response.content_part.done`. @@ -36,36 +36,36 @@ class ResponseContentPartDoneEvent < OpenAI::Internal::Type::BaseModel # @!method initialize(content_index:, item_id:, output_index:, part:, type: :"response.content_part.done") # Some parameter documentations has been truncated, see - # {OpenAI::Models::Responses::ResponseContentPartDoneEvent} for more details. + # {OpenAI::Responses::ResponseContentPartDoneEvent} for more details. # # Emitted when a content part is done. # - # @param content_index [Integer] The index of the content part that is done. ... + # @param content_index [Integer] The index of the content part that is done. # - # @param item_id [String] The ID of the output item that the content part was added to. ... + # @param item_id [String] The ID of the output item that the content part was added to. # - # @param output_index [Integer] The index of the output item that the content part was added to. ... + # @param output_index [Integer] The index of the output item that the content part was added to. # - # @param part [OpenAI::Models::Responses::ResponseOutputText, OpenAI::Models::Responses::ResponseOutputRefusal] The content part that is done. ... + # @param part [OpenAI::Responses::ResponseOutputText, OpenAI::Responses::ResponseOutputRefusal] The content part that is done. # - # @param type [Symbol, :"response.content_part.done"] The type of the event. Always `response.content_part.done`. ... + # @param type [Symbol, :"response.content_part.done"] The type of the event. Always `response.content_part.done`. # The content part that is done. # - # @see OpenAI::Models::Responses::ResponseContentPartDoneEvent#part + # @see OpenAI::Responses::ResponseContentPartDoneEvent#part module Part extend OpenAI::Internal::Type::Union discriminator :type # A text output from the model. - variant :output_text, -> { OpenAI::Models::Responses::ResponseOutputText } + variant :output_text, -> { OpenAI::Responses::ResponseOutputText } # A refusal from the model. - variant :refusal, -> { OpenAI::Models::Responses::ResponseOutputRefusal } + variant :refusal, -> { OpenAI::Responses::ResponseOutputRefusal } # @!method self.variants - # @return [Array(OpenAI::Models::Responses::ResponseOutputText, OpenAI::Models::Responses::ResponseOutputRefusal)] + # @return [Array(OpenAI::Responses::ResponseOutputText, OpenAI::Responses::ResponseOutputRefusal)] end end end diff --git a/lib/openai/models/responses/response_create_params.rb b/lib/openai/models/responses/response_create_params.rb index 13a1bb6b..4a38c09e 100644 --- a/lib/openai/models/responses/response_create_params.rb +++ b/lib/openai/models/responses/response_create_params.rb @@ -21,8 +21,8 @@ class ResponseCreateParams < OpenAI::Internal::Type::BaseModel # - [Conversation state](https://platform.openai.com/docs/guides/conversation-state) # - [Function calling](https://platform.openai.com/docs/guides/function-calling) # - # @return [String, Array] - required :input, union: -> { OpenAI::Models::Responses::ResponseCreateParams::Input } + # @return [String, Array] + required :input, union: -> { OpenAI::Responses::ResponseCreateParams::Input } # @!attribute model # Model ID used to generate the response, like `gpt-4o` or `o3`. OpenAI offers a @@ -31,8 +31,8 @@ class ResponseCreateParams < OpenAI::Internal::Type::BaseModel # [model guide](https://platform.openai.com/docs/models) to browse and compare # available models. # - # @return [String, Symbol, OpenAI::Models::ChatModel, OpenAI::Models::ResponsesModel::ResponsesOnlyModel] - required :model, union: -> { OpenAI::Models::ResponsesModel } + # @return [String, Symbol, OpenAI::ChatModel, OpenAI::ResponsesModel::ResponsesOnlyModel] + required :model, union: -> { OpenAI::ResponsesModel } # @!attribute include # Specify additional output data to include in the model response. Currently @@ -49,9 +49,9 @@ class ResponseCreateParams < OpenAI::Internal::Type::BaseModel # the `store` parameter is set to `false`, or when an organization is enrolled # in the zero data retention program). # - # @return [Array, nil] + # @return [Array, nil] optional :include, - -> { OpenAI::Internal::Type::ArrayOf[enum: OpenAI::Models::Responses::ResponseIncludable] }, + -> { OpenAI::Internal::Type::ArrayOf[enum: OpenAI::Responses::ResponseIncludable] }, nil?: true # @!attribute instructions @@ -104,8 +104,8 @@ class ResponseCreateParams < OpenAI::Internal::Type::BaseModel # Configuration options for # [reasoning models](https://platform.openai.com/docs/guides/reasoning). # - # @return [OpenAI::Models::Reasoning, nil] - optional :reasoning, -> { OpenAI::Models::Reasoning }, nil?: true + # @return [OpenAI::Reasoning, nil] + optional :reasoning, -> { OpenAI::Reasoning }, nil?: true # @!attribute service_tier # Specifies the latency tier to use for processing the request. This parameter is @@ -126,10 +126,8 @@ class ResponseCreateParams < OpenAI::Internal::Type::BaseModel # When this parameter is set, the response body will include the `service_tier` # utilized. # - # @return [Symbol, OpenAI::Models::Responses::ResponseCreateParams::ServiceTier, nil] - optional :service_tier, - enum: -> { OpenAI::Models::Responses::ResponseCreateParams::ServiceTier }, - nil?: true + # @return [Symbol, OpenAI::Responses::ResponseCreateParams::ServiceTier, nil] + optional :service_tier, enum: -> { OpenAI::Responses::ResponseCreateParams::ServiceTier }, nil?: true # @!attribute store # Whether to store the generated model response for later retrieval via API. @@ -153,16 +151,16 @@ class ResponseCreateParams < OpenAI::Internal::Type::BaseModel # - [Text inputs and outputs](https://platform.openai.com/docs/guides/text) # - [Structured Outputs](https://platform.openai.com/docs/guides/structured-outputs) # - # @return [OpenAI::Models::Responses::ResponseTextConfig, nil] - optional :text, -> { OpenAI::Models::Responses::ResponseTextConfig } + # @return [OpenAI::Responses::ResponseTextConfig, nil] + optional :text, -> { OpenAI::Responses::ResponseTextConfig } # @!attribute tool_choice # How the model should select which tool (or tools) to use when generating a # response. See the `tools` parameter to see how to specify which tools the model # can call. # - # @return [Symbol, OpenAI::Models::Responses::ToolChoiceOptions, OpenAI::Models::Responses::ToolChoiceTypes, OpenAI::Models::Responses::ToolChoiceFunction, nil] - optional :tool_choice, union: -> { OpenAI::Models::Responses::ResponseCreateParams::ToolChoice } + # @return [Symbol, OpenAI::Responses::ToolChoiceOptions, OpenAI::Responses::ToolChoiceTypes, OpenAI::Responses::ToolChoiceFunction, nil] + optional :tool_choice, union: -> { OpenAI::Responses::ResponseCreateParams::ToolChoice } # @!attribute tools # An array of tools the model may call while generating a response. You can @@ -180,8 +178,8 @@ class ResponseCreateParams < OpenAI::Internal::Type::BaseModel # the model to call your own code. Learn more about # [function calling](https://platform.openai.com/docs/guides/function-calling). # - # @return [Array, nil] - optional :tools, -> { OpenAI::Internal::Type::ArrayOf[union: OpenAI::Models::Responses::Tool] } + # @return [Array, nil] + optional :tools, -> { OpenAI::Internal::Type::ArrayOf[union: OpenAI::Responses::Tool] } # @!attribute top_p # An alternative to sampling with temperature, called nucleus sampling, where the @@ -202,8 +200,8 @@ class ResponseCreateParams < OpenAI::Internal::Type::BaseModel # - `disabled` (default): If a model response will exceed the context window size # for a model, the request will fail with a 400 error. # - # @return [Symbol, OpenAI::Models::Responses::ResponseCreateParams::Truncation, nil] - optional :truncation, enum: -> { OpenAI::Models::Responses::ResponseCreateParams::Truncation }, nil?: true + # @return [Symbol, OpenAI::Responses::ResponseCreateParams::Truncation, nil] + optional :truncation, enum: -> { OpenAI::Responses::ResponseCreateParams::Truncation }, nil?: true # @!attribute user # A unique identifier representing your end-user, which can help OpenAI to monitor @@ -217,46 +215,41 @@ class ResponseCreateParams < OpenAI::Internal::Type::BaseModel # Some parameter documentations has been truncated, see # {OpenAI::Models::Responses::ResponseCreateParams} for more details. # - # @param input [String, Array] Text, image, or file inputs to the model, used to generate a response. ... + # @param input [String, Array] Text, image, or file inputs to the model, used to generate a response. # - # @param model [String, Symbol, OpenAI::Models::ChatModel, OpenAI::Models::ResponsesModel::ResponsesOnlyModel] Model ID used to generate the response, like `gpt-4o` or `o3`. OpenAI ... + # @param model [String, Symbol, OpenAI::ChatModel, OpenAI::ResponsesModel::ResponsesOnlyModel] Model ID used to generate the response, like `gpt-4o` or `o3`. OpenAI # - # @param include [Array, nil] Specify additional output data to include in the model response. Currently ... + # @param include [Array, nil] Specify additional output data to include in the model response. Currently # # @param instructions [String, nil] Inserts a system (or developer) message as the first item in the model's context - # ... # # @param max_output_tokens [Integer, nil] An upper bound for the number of tokens that can be generated for a response, in - # ... # - # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be # - # @param parallel_tool_calls [Boolean, nil] Whether to allow the model to run tool calls in parallel. ... + # @param parallel_tool_calls [Boolean, nil] Whether to allow the model to run tool calls in parallel. # - # @param previous_response_id [String, nil] The unique ID of the previous response to the model. Use this to ... + # @param previous_response_id [String, nil] The unique ID of the previous response to the model. Use this to # - # @param reasoning [OpenAI::Models::Reasoning, nil] **o-series models only** ... + # @param reasoning [OpenAI::Reasoning, nil] **o-series models only** # - # @param service_tier [Symbol, OpenAI::Models::Responses::ResponseCreateParams::ServiceTier, nil] Specifies the latency tier to use for processing the request. This parameter is - # ... + # @param service_tier [Symbol, OpenAI::Responses::ResponseCreateParams::ServiceTier, nil] Specifies the latency tier to use for processing the request. This parameter is # - # @param store [Boolean, nil] Whether to store the generated model response for later retrieval via ... + # @param store [Boolean, nil] Whether to store the generated model response for later retrieval via # # @param temperature [Float, nil] What sampling temperature to use, between 0 and 2. Higher values like 0.8 will m - # ... # - # @param text [OpenAI::Models::Responses::ResponseTextConfig] Configuration options for a text response from the model. Can be plain ... + # @param text [OpenAI::Responses::ResponseTextConfig] Configuration options for a text response from the model. Can be plain # - # @param tool_choice [Symbol, OpenAI::Models::Responses::ToolChoiceOptions, OpenAI::Models::Responses::ToolChoiceTypes, OpenAI::Models::Responses::ToolChoiceFunction] How the model should select which tool (or tools) to use when generating ... + # @param tool_choice [Symbol, OpenAI::Responses::ToolChoiceOptions, OpenAI::Responses::ToolChoiceTypes, OpenAI::Responses::ToolChoiceFunction] How the model should select which tool (or tools) to use when generating # - # @param tools [Array] An array of tools the model may call while generating a response. You ... + # @param tools [Array] An array of tools the model may call while generating a response. You # - # @param top_p [Float, nil] An alternative to sampling with temperature, called nucleus sampling, ... + # @param top_p [Float, nil] An alternative to sampling with temperature, called nucleus sampling, # - # @param truncation [Symbol, OpenAI::Models::Responses::ResponseCreateParams::Truncation, nil] The truncation strategy to use for the model response. ... + # @param truncation [Symbol, OpenAI::Responses::ResponseCreateParams::Truncation, nil] The truncation strategy to use for the model response. # # @param user [String] A unique identifier representing your end-user, which can help OpenAI to monitor - # ... # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] @@ -278,10 +271,10 @@ module Input # A list of one or many input items to the model, containing # different content types. - variant -> { OpenAI::Models::Responses::ResponseInput } + variant -> { OpenAI::Responses::ResponseInput } # @!method self.variants - # @return [Array(String, Array)] + # @return [Array(String, Array)] end # Specifies the latency tier to use for processing the request. This parameter is @@ -326,17 +319,17 @@ module ToolChoice # more tools. # # `required` means the model must call one or more tools. - variant enum: -> { OpenAI::Models::Responses::ToolChoiceOptions } + variant enum: -> { OpenAI::Responses::ToolChoiceOptions } # Indicates that the model should use a built-in tool to generate a response. # [Learn more about built-in tools](https://platform.openai.com/docs/guides/tools). - variant -> { OpenAI::Models::Responses::ToolChoiceTypes } + variant -> { OpenAI::Responses::ToolChoiceTypes } # Use this option to force the model to call a specific function. - variant -> { OpenAI::Models::Responses::ToolChoiceFunction } + variant -> { OpenAI::Responses::ToolChoiceFunction } # @!method self.variants - # @return [Array(Symbol, OpenAI::Models::Responses::ToolChoiceOptions, OpenAI::Models::Responses::ToolChoiceTypes, OpenAI::Models::Responses::ToolChoiceFunction)] + # @return [Array(Symbol, OpenAI::Responses::ToolChoiceOptions, OpenAI::Responses::ToolChoiceTypes, OpenAI::Responses::ToolChoiceFunction)] end # The truncation strategy to use for the model response. diff --git a/lib/openai/models/responses/response_created_event.rb b/lib/openai/models/responses/response_created_event.rb index 0c8408d0..ec044aac 100644 --- a/lib/openai/models/responses/response_created_event.rb +++ b/lib/openai/models/responses/response_created_event.rb @@ -7,8 +7,8 @@ class ResponseCreatedEvent < OpenAI::Internal::Type::BaseModel # @!attribute response # The response that was created. # - # @return [OpenAI::Models::Responses::Response] - required :response, -> { OpenAI::Models::Responses::Response } + # @return [OpenAI::Responses::Response] + required :response, -> { OpenAI::Responses::Response } # @!attribute type # The type of the event. Always `response.created`. @@ -18,13 +18,13 @@ class ResponseCreatedEvent < OpenAI::Internal::Type::BaseModel # @!method initialize(response:, type: :"response.created") # Some parameter documentations has been truncated, see - # {OpenAI::Models::Responses::ResponseCreatedEvent} for more details. + # {OpenAI::Responses::ResponseCreatedEvent} for more details. # # An event that is emitted when a response is created. # - # @param response [OpenAI::Models::Responses::Response] The response that was created. ... + # @param response [OpenAI::Responses::Response] The response that was created. # - # @param type [Symbol, :"response.created"] The type of the event. Always `response.created`. ... + # @param type [Symbol, :"response.created"] The type of the event. Always `response.created`. end end end diff --git a/lib/openai/models/responses/response_error.rb b/lib/openai/models/responses/response_error.rb index 3e4e38bc..45c2dda9 100644 --- a/lib/openai/models/responses/response_error.rb +++ b/lib/openai/models/responses/response_error.rb @@ -7,8 +7,8 @@ class ResponseError < OpenAI::Internal::Type::BaseModel # @!attribute code # The error code for the response. # - # @return [Symbol, OpenAI::Models::Responses::ResponseError::Code] - required :code, enum: -> { OpenAI::Models::Responses::ResponseError::Code } + # @return [Symbol, OpenAI::Responses::ResponseError::Code] + required :code, enum: -> { OpenAI::Responses::ResponseError::Code } # @!attribute message # A human-readable description of the error. @@ -18,17 +18,17 @@ class ResponseError < OpenAI::Internal::Type::BaseModel # @!method initialize(code:, message:) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Responses::ResponseError} for more details. + # {OpenAI::Responses::ResponseError} for more details. # # An error object returned when the model fails to generate a Response. # - # @param code [Symbol, OpenAI::Models::Responses::ResponseError::Code] The error code for the response. ... + # @param code [Symbol, OpenAI::Responses::ResponseError::Code] The error code for the response. # - # @param message [String] A human-readable description of the error. ... + # @param message [String] A human-readable description of the error. # The error code for the response. # - # @see OpenAI::Models::Responses::ResponseError#code + # @see OpenAI::Responses::ResponseError#code module Code extend OpenAI::Internal::Type::Enum diff --git a/lib/openai/models/responses/response_error_event.rb b/lib/openai/models/responses/response_error_event.rb index c8ad2c34..651a400d 100644 --- a/lib/openai/models/responses/response_error_event.rb +++ b/lib/openai/models/responses/response_error_event.rb @@ -30,17 +30,17 @@ class ResponseErrorEvent < OpenAI::Internal::Type::BaseModel # @!method initialize(code:, message:, param:, type: :error) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Responses::ResponseErrorEvent} for more details. + # {OpenAI::Responses::ResponseErrorEvent} for more details. # # Emitted when an error occurs. # - # @param code [String, nil] The error code. ... + # @param code [String, nil] The error code. # - # @param message [String] The error message. ... + # @param message [String] The error message. # - # @param param [String, nil] The error parameter. ... + # @param param [String, nil] The error parameter. # - # @param type [Symbol, :error] The type of the event. Always `error`. ... + # @param type [Symbol, :error] The type of the event. Always `error`. end end end diff --git a/lib/openai/models/responses/response_failed_event.rb b/lib/openai/models/responses/response_failed_event.rb index 54ee8e5c..f3454dd5 100644 --- a/lib/openai/models/responses/response_failed_event.rb +++ b/lib/openai/models/responses/response_failed_event.rb @@ -7,8 +7,8 @@ class ResponseFailedEvent < OpenAI::Internal::Type::BaseModel # @!attribute response # The response that failed. # - # @return [OpenAI::Models::Responses::Response] - required :response, -> { OpenAI::Models::Responses::Response } + # @return [OpenAI::Responses::Response] + required :response, -> { OpenAI::Responses::Response } # @!attribute type # The type of the event. Always `response.failed`. @@ -18,13 +18,13 @@ class ResponseFailedEvent < OpenAI::Internal::Type::BaseModel # @!method initialize(response:, type: :"response.failed") # Some parameter documentations has been truncated, see - # {OpenAI::Models::Responses::ResponseFailedEvent} for more details. + # {OpenAI::Responses::ResponseFailedEvent} for more details. # # An event that is emitted when a response fails. # - # @param response [OpenAI::Models::Responses::Response] The response that failed. ... + # @param response [OpenAI::Responses::Response] The response that failed. # - # @param type [Symbol, :"response.failed"] The type of the event. Always `response.failed`. ... + # @param type [Symbol, :"response.failed"] The type of the event. Always `response.failed`. end end end diff --git a/lib/openai/models/responses/response_file_search_call_completed_event.rb b/lib/openai/models/responses/response_file_search_call_completed_event.rb index 1afd9153..5c616920 100644 --- a/lib/openai/models/responses/response_file_search_call_completed_event.rb +++ b/lib/openai/models/responses/response_file_search_call_completed_event.rb @@ -24,16 +24,15 @@ class ResponseFileSearchCallCompletedEvent < OpenAI::Internal::Type::BaseModel # @!method initialize(item_id:, output_index:, type: :"response.file_search_call.completed") # Some parameter documentations has been truncated, see - # {OpenAI::Models::Responses::ResponseFileSearchCallCompletedEvent} for more - # details. + # {OpenAI::Responses::ResponseFileSearchCallCompletedEvent} for more details. # # Emitted when a file search call is completed (results found). # - # @param item_id [String] The ID of the output item that the file search call is initiated. ... + # @param item_id [String] The ID of the output item that the file search call is initiated. # - # @param output_index [Integer] The index of the output item that the file search call is initiated. ... + # @param output_index [Integer] The index of the output item that the file search call is initiated. # - # @param type [Symbol, :"response.file_search_call.completed"] The type of the event. Always `response.file_search_call.completed`. ... + # @param type [Symbol, :"response.file_search_call.completed"] The type of the event. Always `response.file_search_call.completed`. end end end diff --git a/lib/openai/models/responses/response_file_search_call_in_progress_event.rb b/lib/openai/models/responses/response_file_search_call_in_progress_event.rb index 74e08290..15ff92de 100644 --- a/lib/openai/models/responses/response_file_search_call_in_progress_event.rb +++ b/lib/openai/models/responses/response_file_search_call_in_progress_event.rb @@ -24,16 +24,15 @@ class ResponseFileSearchCallInProgressEvent < OpenAI::Internal::Type::BaseModel # @!method initialize(item_id:, output_index:, type: :"response.file_search_call.in_progress") # Some parameter documentations has been truncated, see - # {OpenAI::Models::Responses::ResponseFileSearchCallInProgressEvent} for more - # details. + # {OpenAI::Responses::ResponseFileSearchCallInProgressEvent} for more details. # # Emitted when a file search call is initiated. # - # @param item_id [String] The ID of the output item that the file search call is initiated. ... + # @param item_id [String] The ID of the output item that the file search call is initiated. # - # @param output_index [Integer] The index of the output item that the file search call is initiated. ... + # @param output_index [Integer] The index of the output item that the file search call is initiated. # - # @param type [Symbol, :"response.file_search_call.in_progress"] The type of the event. Always `response.file_search_call.in_progress`. ... + # @param type [Symbol, :"response.file_search_call.in_progress"] The type of the event. Always `response.file_search_call.in_progress`. end end end diff --git a/lib/openai/models/responses/response_file_search_call_searching_event.rb b/lib/openai/models/responses/response_file_search_call_searching_event.rb index 118b323f..58540d2a 100644 --- a/lib/openai/models/responses/response_file_search_call_searching_event.rb +++ b/lib/openai/models/responses/response_file_search_call_searching_event.rb @@ -24,16 +24,15 @@ class ResponseFileSearchCallSearchingEvent < OpenAI::Internal::Type::BaseModel # @!method initialize(item_id:, output_index:, type: :"response.file_search_call.searching") # Some parameter documentations has been truncated, see - # {OpenAI::Models::Responses::ResponseFileSearchCallSearchingEvent} for more - # details. + # {OpenAI::Responses::ResponseFileSearchCallSearchingEvent} for more details. # # Emitted when a file search is currently searching. # - # @param item_id [String] The ID of the output item that the file search call is initiated. ... + # @param item_id [String] The ID of the output item that the file search call is initiated. # - # @param output_index [Integer] The index of the output item that the file search call is searching. ... + # @param output_index [Integer] The index of the output item that the file search call is searching. # - # @param type [Symbol, :"response.file_search_call.searching"] The type of the event. Always `response.file_search_call.searching`. ... + # @param type [Symbol, :"response.file_search_call.searching"] The type of the event. Always `response.file_search_call.searching`. end end end diff --git a/lib/openai/models/responses/response_file_search_tool_call.rb b/lib/openai/models/responses/response_file_search_tool_call.rb index 71462ed2..cc1b88ec 100644 --- a/lib/openai/models/responses/response_file_search_tool_call.rb +++ b/lib/openai/models/responses/response_file_search_tool_call.rb @@ -20,8 +20,8 @@ class ResponseFileSearchToolCall < OpenAI::Internal::Type::BaseModel # The status of the file search tool call. One of `in_progress`, `searching`, # `incomplete` or `failed`, # - # @return [Symbol, OpenAI::Models::Responses::ResponseFileSearchToolCall::Status] - required :status, enum: -> { OpenAI::Models::Responses::ResponseFileSearchToolCall::Status } + # @return [Symbol, OpenAI::Responses::ResponseFileSearchToolCall::Status] + required :status, enum: -> { OpenAI::Responses::ResponseFileSearchToolCall::Status } # @!attribute type # The type of the file search tool call. Always `file_search_call`. @@ -32,33 +32,35 @@ class ResponseFileSearchToolCall < OpenAI::Internal::Type::BaseModel # @!attribute results # The results of the file search tool call. # - # @return [Array, nil] + # @return [Array, nil] optional :results, - -> { OpenAI::Internal::Type::ArrayOf[OpenAI::Models::Responses::ResponseFileSearchToolCall::Result] }, + -> { + OpenAI::Internal::Type::ArrayOf[OpenAI::Responses::ResponseFileSearchToolCall::Result] + }, nil?: true # @!method initialize(id:, queries:, status:, results: nil, type: :file_search_call) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Responses::ResponseFileSearchToolCall} for more details. + # {OpenAI::Responses::ResponseFileSearchToolCall} for more details. # # The results of a file search tool call. See the # [file search guide](https://platform.openai.com/docs/guides/tools-file-search) # for more information. # - # @param id [String] The unique ID of the file search tool call. ... + # @param id [String] The unique ID of the file search tool call. # - # @param queries [Array] The queries used to search for files. ... + # @param queries [Array] The queries used to search for files. # - # @param status [Symbol, OpenAI::Models::Responses::ResponseFileSearchToolCall::Status] The status of the file search tool call. One of `in_progress`, ... + # @param status [Symbol, OpenAI::Responses::ResponseFileSearchToolCall::Status] The status of the file search tool call. One of `in_progress`, # - # @param results [Array, nil] The results of the file search tool call. ... + # @param results [Array, nil] The results of the file search tool call. # - # @param type [Symbol, :file_search_call] The type of the file search tool call. Always `file_search_call`. ... + # @param type [Symbol, :file_search_call] The type of the file search tool call. Always `file_search_call`. # The status of the file search tool call. One of `in_progress`, `searching`, # `incomplete` or `failed`, # - # @see OpenAI::Models::Responses::ResponseFileSearchToolCall#status + # @see OpenAI::Responses::ResponseFileSearchToolCall#status module Status extend OpenAI::Internal::Type::Enum @@ -82,7 +84,9 @@ class Result < OpenAI::Internal::Type::BaseModel # # @return [Hash{Symbol=>String, Float, Boolean}, nil] optional :attributes, - -> { OpenAI::Internal::Type::HashOf[union: OpenAI::Models::Responses::ResponseFileSearchToolCall::Result::Attribute] }, + -> { + OpenAI::Internal::Type::HashOf[union: OpenAI::Responses::ResponseFileSearchToolCall::Result::Attribute] + }, nil?: true # @!attribute file_id @@ -111,18 +115,17 @@ class Result < OpenAI::Internal::Type::BaseModel # @!method initialize(attributes: nil, file_id: nil, filename: nil, score: nil, text: nil) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Responses::ResponseFileSearchToolCall::Result} for more - # details. + # {OpenAI::Responses::ResponseFileSearchToolCall::Result} for more details. # - # @param attributes [Hash{Symbol=>String, Float, Boolean}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # @param attributes [Hash{Symbol=>String, Float, Boolean}, nil] Set of 16 key-value pairs that can be attached to an object. This can be # - # @param file_id [String] The unique ID of the file. ... + # @param file_id [String] The unique ID of the file. # - # @param filename [String] The name of the file. ... + # @param filename [String] The name of the file. # - # @param score [Float] The relevance score of the file - a value between 0 and 1. ... + # @param score [Float] The relevance score of the file - a value between 0 and 1. # - # @param text [String] The text that was retrieved from the file. ... + # @param text [String] The text that was retrieved from the file. module Attribute extend OpenAI::Internal::Type::Union diff --git a/lib/openai/models/responses/response_format_text_config.rb b/lib/openai/models/responses/response_format_text_config.rb index 6b73450e..81d0ad54 100644 --- a/lib/openai/models/responses/response_format_text_config.rb +++ b/lib/openai/models/responses/response_format_text_config.rb @@ -22,20 +22,20 @@ module ResponseFormatTextConfig discriminator :type # Default response format. Used to generate text responses. - variant :text, -> { OpenAI::Models::ResponseFormatText } + variant :text, -> { OpenAI::ResponseFormatText } # JSON Schema response format. Used to generate structured JSON responses. # Learn more about [Structured Outputs](https://platform.openai.com/docs/guides/structured-outputs). - variant :json_schema, -> { OpenAI::Models::Responses::ResponseFormatTextJSONSchemaConfig } + variant :json_schema, -> { OpenAI::Responses::ResponseFormatTextJSONSchemaConfig } # JSON object response format. An older method of generating JSON responses. # Using `json_schema` is recommended for models that support it. Note that the # model will not generate JSON without a system or user message instructing it # to do so. - variant :json_object, -> { OpenAI::Models::ResponseFormatJSONObject } + variant :json_object, -> { OpenAI::ResponseFormatJSONObject } # @!method self.variants - # @return [Array(OpenAI::Models::ResponseFormatText, OpenAI::Models::Responses::ResponseFormatTextJSONSchemaConfig, OpenAI::Models::ResponseFormatJSONObject)] + # @return [Array(OpenAI::ResponseFormatText, OpenAI::Responses::ResponseFormatTextJSONSchemaConfig, OpenAI::ResponseFormatJSONObject)] end end end diff --git a/lib/openai/models/responses/response_format_text_json_schema_config.rb b/lib/openai/models/responses/response_format_text_json_schema_config.rb index d2ac2772..c4e33d24 100644 --- a/lib/openai/models/responses/response_format_text_json_schema_config.rb +++ b/lib/openai/models/responses/response_format_text_json_schema_config.rb @@ -43,20 +43,19 @@ class ResponseFormatTextJSONSchemaConfig < OpenAI::Internal::Type::BaseModel # @!method initialize(name:, schema:, description: nil, strict: nil, type: :json_schema) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Responses::ResponseFormatTextJSONSchemaConfig} for more - # details. + # {OpenAI::Responses::ResponseFormatTextJSONSchemaConfig} for more details. # # JSON Schema response format. Used to generate structured JSON responses. Learn # more about # [Structured Outputs](https://platform.openai.com/docs/guides/structured-outputs). # - # @param name [String] The name of the response format. Must be a-z, A-Z, 0-9, or contain ... + # @param name [String] The name of the response format. Must be a-z, A-Z, 0-9, or contain # - # @param schema [Hash{Symbol=>Object}] The schema for the response format, described as a JSON Schema object. ... + # @param schema [Hash{Symbol=>Object}] The schema for the response format, described as a JSON Schema object. # - # @param description [String] A description of what the response format is for, used by the model to ... + # @param description [String] A description of what the response format is for, used by the model to # - # @param strict [Boolean, nil] Whether to enable strict schema adherence when generating the output. ... + # @param strict [Boolean, nil] Whether to enable strict schema adherence when generating the output. # # @param type [Symbol, :json_schema] The type of response format being defined. Always `json_schema`. end diff --git a/lib/openai/models/responses/response_function_call_arguments_delta_event.rb b/lib/openai/models/responses/response_function_call_arguments_delta_event.rb index 57e63c2b..05a59f54 100644 --- a/lib/openai/models/responses/response_function_call_arguments_delta_event.rb +++ b/lib/openai/models/responses/response_function_call_arguments_delta_event.rb @@ -30,20 +30,17 @@ class ResponseFunctionCallArgumentsDeltaEvent < OpenAI::Internal::Type::BaseMode # @!method initialize(delta:, item_id:, output_index:, type: :"response.function_call_arguments.delta") # Some parameter documentations has been truncated, see - # {OpenAI::Models::Responses::ResponseFunctionCallArgumentsDeltaEvent} for more - # details. + # {OpenAI::Responses::ResponseFunctionCallArgumentsDeltaEvent} for more details. # # Emitted when there is a partial function-call arguments delta. # - # @param delta [String] The function-call arguments delta that is added. ... + # @param delta [String] The function-call arguments delta that is added. # # @param item_id [String] The ID of the output item that the function-call arguments delta is added to. - # ... # # @param output_index [Integer] The index of the output item that the function-call arguments delta is added to. - # ... # - # @param type [Symbol, :"response.function_call_arguments.delta"] The type of the event. Always `response.function_call_arguments.delta`. ... + # @param type [Symbol, :"response.function_call_arguments.delta"] The type of the event. Always `response.function_call_arguments.delta`. end end end diff --git a/lib/openai/models/responses/response_function_tool_call.rb b/lib/openai/models/responses/response_function_tool_call.rb index 1aa5d417..e972d9e8 100644 --- a/lib/openai/models/responses/response_function_tool_call.rb +++ b/lib/openai/models/responses/response_function_tool_call.rb @@ -38,33 +38,33 @@ class ResponseFunctionToolCall < OpenAI::Internal::Type::BaseModel # The status of the item. One of `in_progress`, `completed`, or `incomplete`. # Populated when items are returned via API. # - # @return [Symbol, OpenAI::Models::Responses::ResponseFunctionToolCall::Status, nil] - optional :status, enum: -> { OpenAI::Models::Responses::ResponseFunctionToolCall::Status } + # @return [Symbol, OpenAI::Responses::ResponseFunctionToolCall::Status, nil] + optional :status, enum: -> { OpenAI::Responses::ResponseFunctionToolCall::Status } # @!method initialize(arguments:, call_id:, name:, id: nil, status: nil, type: :function_call) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Responses::ResponseFunctionToolCall} for more details. + # {OpenAI::Responses::ResponseFunctionToolCall} for more details. # # A tool call to run a function. See the # [function calling guide](https://platform.openai.com/docs/guides/function-calling) # for more information. # - # @param arguments [String] A JSON string of the arguments to pass to the function. ... + # @param arguments [String] A JSON string of the arguments to pass to the function. # - # @param call_id [String] The unique ID of the function tool call generated by the model. ... + # @param call_id [String] The unique ID of the function tool call generated by the model. # - # @param name [String] The name of the function to run. ... + # @param name [String] The name of the function to run. # - # @param id [String] The unique ID of the function tool call. ... + # @param id [String] The unique ID of the function tool call. # - # @param status [Symbol, OpenAI::Models::Responses::ResponseFunctionToolCall::Status] The status of the item. One of `in_progress`, `completed`, or ... + # @param status [Symbol, OpenAI::Responses::ResponseFunctionToolCall::Status] The status of the item. One of `in_progress`, `completed`, or # - # @param type [Symbol, :function_call] The type of the function tool call. Always `function_call`. ... + # @param type [Symbol, :function_call] The type of the function tool call. Always `function_call`. # The status of the item. One of `in_progress`, `completed`, or `incomplete`. # Populated when items are returned via API. # - # @see OpenAI::Models::Responses::ResponseFunctionToolCall#status + # @see OpenAI::Responses::ResponseFunctionToolCall#status module Status extend OpenAI::Internal::Type::Enum diff --git a/lib/openai/models/responses/response_function_tool_call_item.rb b/lib/openai/models/responses/response_function_tool_call_item.rb index e304dda3..e113338f 100644 --- a/lib/openai/models/responses/response_function_tool_call_item.rb +++ b/lib/openai/models/responses/response_function_tool_call_item.rb @@ -12,13 +12,13 @@ class ResponseFunctionToolCallItem < OpenAI::Models::Responses::ResponseFunction # @!method initialize(id:) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Responses::ResponseFunctionToolCallItem} for more details. + # {OpenAI::Responses::ResponseFunctionToolCallItem} for more details. # # A tool call to run a function. See the # [function calling guide](https://platform.openai.com/docs/guides/function-calling) # for more information. # - # @param id [String] The unique ID of the function tool call. ... + # @param id [String] The unique ID of the function tool call. end end end diff --git a/lib/openai/models/responses/response_function_tool_call_output_item.rb b/lib/openai/models/responses/response_function_tool_call_output_item.rb index 8cc6084a..53e8afd3 100644 --- a/lib/openai/models/responses/response_function_tool_call_output_item.rb +++ b/lib/openai/models/responses/response_function_tool_call_output_item.rb @@ -32,28 +32,27 @@ class ResponseFunctionToolCallOutputItem < OpenAI::Internal::Type::BaseModel # The status of the item. One of `in_progress`, `completed`, or `incomplete`. # Populated when items are returned via API. # - # @return [Symbol, OpenAI::Models::Responses::ResponseFunctionToolCallOutputItem::Status, nil] - optional :status, enum: -> { OpenAI::Models::Responses::ResponseFunctionToolCallOutputItem::Status } + # @return [Symbol, OpenAI::Responses::ResponseFunctionToolCallOutputItem::Status, nil] + optional :status, enum: -> { OpenAI::Responses::ResponseFunctionToolCallOutputItem::Status } # @!method initialize(id:, call_id:, output:, status: nil, type: :function_call_output) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Responses::ResponseFunctionToolCallOutputItem} for more - # details. + # {OpenAI::Responses::ResponseFunctionToolCallOutputItem} for more details. # - # @param id [String] The unique ID of the function call tool output. ... + # @param id [String] The unique ID of the function call tool output. # - # @param call_id [String] The unique ID of the function tool call generated by the model. ... + # @param call_id [String] The unique ID of the function tool call generated by the model. # - # @param output [String] A JSON string of the output of the function tool call. ... + # @param output [String] A JSON string of the output of the function tool call. # - # @param status [Symbol, OpenAI::Models::Responses::ResponseFunctionToolCallOutputItem::Status] The status of the item. One of `in_progress`, `completed`, or ... + # @param status [Symbol, OpenAI::Responses::ResponseFunctionToolCallOutputItem::Status] The status of the item. One of `in_progress`, `completed`, or # - # @param type [Symbol, :function_call_output] The type of the function tool call output. Always `function_call_output`. ... + # @param type [Symbol, :function_call_output] The type of the function tool call output. Always `function_call_output`. # The status of the item. One of `in_progress`, `completed`, or `incomplete`. # Populated when items are returned via API. # - # @see OpenAI::Models::Responses::ResponseFunctionToolCallOutputItem#status + # @see OpenAI::Responses::ResponseFunctionToolCallOutputItem#status module Status extend OpenAI::Internal::Type::Enum diff --git a/lib/openai/models/responses/response_function_web_search.rb b/lib/openai/models/responses/response_function_web_search.rb index c08e4e32..f69ad27a 100644 --- a/lib/openai/models/responses/response_function_web_search.rb +++ b/lib/openai/models/responses/response_function_web_search.rb @@ -13,8 +13,8 @@ class ResponseFunctionWebSearch < OpenAI::Internal::Type::BaseModel # @!attribute status # The status of the web search tool call. # - # @return [Symbol, OpenAI::Models::Responses::ResponseFunctionWebSearch::Status] - required :status, enum: -> { OpenAI::Models::Responses::ResponseFunctionWebSearch::Status } + # @return [Symbol, OpenAI::Responses::ResponseFunctionWebSearch::Status] + required :status, enum: -> { OpenAI::Responses::ResponseFunctionWebSearch::Status } # @!attribute type # The type of the web search tool call. Always `web_search_call`. @@ -24,21 +24,21 @@ class ResponseFunctionWebSearch < OpenAI::Internal::Type::BaseModel # @!method initialize(id:, status:, type: :web_search_call) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Responses::ResponseFunctionWebSearch} for more details. + # {OpenAI::Responses::ResponseFunctionWebSearch} for more details. # # The results of a web search tool call. See the # [web search guide](https://platform.openai.com/docs/guides/tools-web-search) for # more information. # - # @param id [String] The unique ID of the web search tool call. ... + # @param id [String] The unique ID of the web search tool call. # - # @param status [Symbol, OpenAI::Models::Responses::ResponseFunctionWebSearch::Status] The status of the web search tool call. ... + # @param status [Symbol, OpenAI::Responses::ResponseFunctionWebSearch::Status] The status of the web search tool call. # - # @param type [Symbol, :web_search_call] The type of the web search tool call. Always `web_search_call`. ... + # @param type [Symbol, :web_search_call] The type of the web search tool call. Always `web_search_call`. # The status of the web search tool call. # - # @see OpenAI::Models::Responses::ResponseFunctionWebSearch#status + # @see OpenAI::Responses::ResponseFunctionWebSearch#status module Status extend OpenAI::Internal::Type::Enum diff --git a/lib/openai/models/responses/response_in_progress_event.rb b/lib/openai/models/responses/response_in_progress_event.rb index f095d74d..788e9ea6 100644 --- a/lib/openai/models/responses/response_in_progress_event.rb +++ b/lib/openai/models/responses/response_in_progress_event.rb @@ -7,8 +7,8 @@ class ResponseInProgressEvent < OpenAI::Internal::Type::BaseModel # @!attribute response # The response that is in progress. # - # @return [OpenAI::Models::Responses::Response] - required :response, -> { OpenAI::Models::Responses::Response } + # @return [OpenAI::Responses::Response] + required :response, -> { OpenAI::Responses::Response } # @!attribute type # The type of the event. Always `response.in_progress`. @@ -18,13 +18,13 @@ class ResponseInProgressEvent < OpenAI::Internal::Type::BaseModel # @!method initialize(response:, type: :"response.in_progress") # Some parameter documentations has been truncated, see - # {OpenAI::Models::Responses::ResponseInProgressEvent} for more details. + # {OpenAI::Responses::ResponseInProgressEvent} for more details. # # Emitted when the response is in progress. # - # @param response [OpenAI::Models::Responses::Response] The response that is in progress. ... + # @param response [OpenAI::Responses::Response] The response that is in progress. # - # @param type [Symbol, :"response.in_progress"] The type of the event. Always `response.in_progress`. ... + # @param type [Symbol, :"response.in_progress"] The type of the event. Always `response.in_progress`. end end end diff --git a/lib/openai/models/responses/response_incomplete_event.rb b/lib/openai/models/responses/response_incomplete_event.rb index e23ef3a8..d33b32fc 100644 --- a/lib/openai/models/responses/response_incomplete_event.rb +++ b/lib/openai/models/responses/response_incomplete_event.rb @@ -7,8 +7,8 @@ class ResponseIncompleteEvent < OpenAI::Internal::Type::BaseModel # @!attribute response # The response that was incomplete. # - # @return [OpenAI::Models::Responses::Response] - required :response, -> { OpenAI::Models::Responses::Response } + # @return [OpenAI::Responses::Response] + required :response, -> { OpenAI::Responses::Response } # @!attribute type # The type of the event. Always `response.incomplete`. @@ -18,13 +18,13 @@ class ResponseIncompleteEvent < OpenAI::Internal::Type::BaseModel # @!method initialize(response:, type: :"response.incomplete") # Some parameter documentations has been truncated, see - # {OpenAI::Models::Responses::ResponseIncompleteEvent} for more details. + # {OpenAI::Responses::ResponseIncompleteEvent} for more details. # # An event that is emitted when a response finishes as incomplete. # - # @param response [OpenAI::Models::Responses::Response] The response that was incomplete. ... + # @param response [OpenAI::Responses::Response] The response that was incomplete. # - # @param type [Symbol, :"response.incomplete"] The type of the event. Always `response.incomplete`. ... + # @param type [Symbol, :"response.incomplete"] The type of the event. Always `response.incomplete`. end end end diff --git a/lib/openai/models/responses/response_input.rb b/lib/openai/models/responses/response_input.rb index aa4de811..e23a7b8d 100644 --- a/lib/openai/models/responses/response_input.rb +++ b/lib/openai/models/responses/response_input.rb @@ -4,8 +4,7 @@ module OpenAI module Models module Responses # @type [OpenAI::Internal::Type::Converter] - ResponseInput = - OpenAI::Internal::Type::ArrayOf[union: -> { OpenAI::Models::Responses::ResponseInputItem }] + ResponseInput = OpenAI::Internal::Type::ArrayOf[union: -> { OpenAI::Responses::ResponseInputItem }] end end end diff --git a/lib/openai/models/responses/response_input_audio.rb b/lib/openai/models/responses/response_input_audio.rb index ea23bdcd..d403a4ca 100644 --- a/lib/openai/models/responses/response_input_audio.rb +++ b/lib/openai/models/responses/response_input_audio.rb @@ -13,8 +13,8 @@ class ResponseInputAudio < OpenAI::Internal::Type::BaseModel # @!attribute format_ # The format of the audio data. Currently supported formats are `mp3` and `wav`. # - # @return [Symbol, OpenAI::Models::Responses::ResponseInputAudio::Format] - required :format_, enum: -> { OpenAI::Models::Responses::ResponseInputAudio::Format }, api_name: :format + # @return [Symbol, OpenAI::Responses::ResponseInputAudio::Format] + required :format_, enum: -> { OpenAI::Responses::ResponseInputAudio::Format }, api_name: :format # @!attribute type # The type of the input item. Always `input_audio`. @@ -24,19 +24,19 @@ class ResponseInputAudio < OpenAI::Internal::Type::BaseModel # @!method initialize(data:, format_:, type: :input_audio) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Responses::ResponseInputAudio} for more details. + # {OpenAI::Responses::ResponseInputAudio} for more details. # # An audio input to the model. # - # @param data [String] Base64-encoded audio data. ... + # @param data [String] Base64-encoded audio data. # - # @param format_ [Symbol, OpenAI::Models::Responses::ResponseInputAudio::Format] The format of the audio data. Currently supported formats are `mp3` and ... + # @param format_ [Symbol, OpenAI::Responses::ResponseInputAudio::Format] The format of the audio data. Currently supported formats are `mp3` and # - # @param type [Symbol, :input_audio] The type of the input item. Always `input_audio`. ... + # @param type [Symbol, :input_audio] The type of the input item. Always `input_audio`. # The format of the audio data. Currently supported formats are `mp3` and `wav`. # - # @see OpenAI::Models::Responses::ResponseInputAudio#format_ + # @see OpenAI::Responses::ResponseInputAudio#format_ module Format extend OpenAI::Internal::Type::Enum diff --git a/lib/openai/models/responses/response_input_content.rb b/lib/openai/models/responses/response_input_content.rb index 806d9c26..7e349985 100644 --- a/lib/openai/models/responses/response_input_content.rb +++ b/lib/openai/models/responses/response_input_content.rb @@ -10,16 +10,16 @@ module ResponseInputContent discriminator :type # A text input to the model. - variant :input_text, -> { OpenAI::Models::Responses::ResponseInputText } + variant :input_text, -> { OpenAI::Responses::ResponseInputText } # An image input to the model. Learn about [image inputs](https://platform.openai.com/docs/guides/vision). - variant :input_image, -> { OpenAI::Models::Responses::ResponseInputImage } + variant :input_image, -> { OpenAI::Responses::ResponseInputImage } # A file input to the model. - variant :input_file, -> { OpenAI::Models::Responses::ResponseInputFile } + variant :input_file, -> { OpenAI::Responses::ResponseInputFile } # @!method self.variants - # @return [Array(OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::Responses::ResponseInputImage, OpenAI::Models::Responses::ResponseInputFile)] + # @return [Array(OpenAI::Responses::ResponseInputText, OpenAI::Responses::ResponseInputImage, OpenAI::Responses::ResponseInputFile)] end end end diff --git a/lib/openai/models/responses/response_input_file.rb b/lib/openai/models/responses/response_input_file.rb index 9837a2e0..3c992986 100644 --- a/lib/openai/models/responses/response_input_file.rb +++ b/lib/openai/models/responses/response_input_file.rb @@ -30,11 +30,11 @@ class ResponseInputFile < OpenAI::Internal::Type::BaseModel # @!method initialize(file_data: nil, file_id: nil, filename: nil, type: :input_file) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Responses::ResponseInputFile} for more details. + # {OpenAI::Responses::ResponseInputFile} for more details. # # A file input to the model. # - # @param file_data [String] The content of the file to be sent to the model. ... + # @param file_data [String] The content of the file to be sent to the model. # # @param file_id [String, nil] The ID of the file to be sent to the model. # diff --git a/lib/openai/models/responses/response_input_image.rb b/lib/openai/models/responses/response_input_image.rb index 643a2e3d..242f378e 100644 --- a/lib/openai/models/responses/response_input_image.rb +++ b/lib/openai/models/responses/response_input_image.rb @@ -8,8 +8,8 @@ class ResponseInputImage < OpenAI::Internal::Type::BaseModel # The detail level of the image to be sent to the model. One of `high`, `low`, or # `auto`. Defaults to `auto`. # - # @return [Symbol, OpenAI::Models::Responses::ResponseInputImage::Detail] - required :detail, enum: -> { OpenAI::Models::Responses::ResponseInputImage::Detail } + # @return [Symbol, OpenAI::Responses::ResponseInputImage::Detail] + required :detail, enum: -> { OpenAI::Responses::ResponseInputImage::Detail } # @!attribute type # The type of the input item. Always `input_image`. @@ -32,25 +32,23 @@ class ResponseInputImage < OpenAI::Internal::Type::BaseModel # @!method initialize(detail:, file_id: nil, image_url: nil, type: :input_image) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Responses::ResponseInputImage} for more details. + # {OpenAI::Responses::ResponseInputImage} for more details. # # An image input to the model. Learn about # [image inputs](https://platform.openai.com/docs/guides/vision). # - # @param detail [Symbol, OpenAI::Models::Responses::ResponseInputImage::Detail] The detail level of the image to be sent to the model. One of `high`, `low`, or - # ... + # @param detail [Symbol, OpenAI::Responses::ResponseInputImage::Detail] The detail level of the image to be sent to the model. One of `high`, `low`, or # # @param file_id [String, nil] The ID of the file to be sent to the model. # # @param image_url [String, nil] The URL of the image to be sent to the model. A fully qualified URL or base64 en - # ... # # @param type [Symbol, :input_image] The type of the input item. Always `input_image`. # The detail level of the image to be sent to the model. One of `high`, `low`, or # `auto`. Defaults to `auto`. # - # @see OpenAI::Models::Responses::ResponseInputImage#detail + # @see OpenAI::Responses::ResponseInputImage#detail module Detail extend OpenAI::Internal::Type::Enum diff --git a/lib/openai/models/responses/response_input_item.rb b/lib/openai/models/responses/response_input_item.rb index 95e8dbe5..8ce7e375 100644 --- a/lib/openai/models/responses/response_input_item.rb +++ b/lib/openai/models/responses/response_input_item.rb @@ -18,94 +18,96 @@ module ResponseInputItem # precedence over instructions given with the `user` role. Messages with the # `assistant` role are presumed to have been generated by the model in previous # interactions. - variant :message, -> { OpenAI::Models::Responses::EasyInputMessage } + variant :message, -> { OpenAI::Responses::EasyInputMessage } # A message input to the model with a role indicating instruction following # hierarchy. Instructions given with the `developer` or `system` role take # precedence over instructions given with the `user` role. - variant :message, -> { OpenAI::Models::Responses::ResponseInputItem::Message } + variant :message, -> { OpenAI::Responses::ResponseInputItem::Message } # An output message from the model. - variant :message, -> { OpenAI::Models::Responses::ResponseOutputMessage } + variant :message, -> { OpenAI::Responses::ResponseOutputMessage } # The results of a file search tool call. See the # [file search guide](https://platform.openai.com/docs/guides/tools-file-search) for more information. - variant :file_search_call, -> { OpenAI::Models::Responses::ResponseFileSearchToolCall } + variant :file_search_call, -> { OpenAI::Responses::ResponseFileSearchToolCall } # A tool call to a computer use tool. See the # [computer use guide](https://platform.openai.com/docs/guides/tools-computer-use) for more information. - variant :computer_call, -> { OpenAI::Models::Responses::ResponseComputerToolCall } + variant :computer_call, -> { OpenAI::Responses::ResponseComputerToolCall } # The output of a computer tool call. - variant :computer_call_output, -> { OpenAI::Models::Responses::ResponseInputItem::ComputerCallOutput } + variant :computer_call_output, -> { OpenAI::Responses::ResponseInputItem::ComputerCallOutput } # The results of a web search tool call. See the # [web search guide](https://platform.openai.com/docs/guides/tools-web-search) for more information. - variant :web_search_call, -> { OpenAI::Models::Responses::ResponseFunctionWebSearch } + variant :web_search_call, -> { OpenAI::Responses::ResponseFunctionWebSearch } # A tool call to run a function. See the # [function calling guide](https://platform.openai.com/docs/guides/function-calling) for more information. - variant :function_call, -> { OpenAI::Models::Responses::ResponseFunctionToolCall } + variant :function_call, -> { OpenAI::Responses::ResponseFunctionToolCall } # The output of a function tool call. - variant :function_call_output, -> { OpenAI::Models::Responses::ResponseInputItem::FunctionCallOutput } + variant :function_call_output, -> { OpenAI::Responses::ResponseInputItem::FunctionCallOutput } # A description of the chain of thought used by a reasoning model while generating # a response. Be sure to include these items in your `input` to the Responses API # for subsequent turns of a conversation if you are manually # [managing context](https://platform.openai.com/docs/guides/conversation-state). - variant :reasoning, -> { OpenAI::Models::Responses::ResponseReasoningItem } + variant :reasoning, -> { OpenAI::Responses::ResponseReasoningItem } # An internal identifier for an item to reference. - variant :item_reference, -> { OpenAI::Models::Responses::ResponseInputItem::ItemReference } + variant :item_reference, -> { OpenAI::Responses::ResponseInputItem::ItemReference } class Message < OpenAI::Internal::Type::BaseModel # @!attribute content # A list of one or many input items to the model, containing different content # types. # - # @return [Array] + # @return [Array] required :content, - -> { OpenAI::Internal::Type::ArrayOf[union: OpenAI::Models::Responses::ResponseInputContent] } + -> { + OpenAI::Internal::Type::ArrayOf[union: OpenAI::Responses::ResponseInputContent] + } # @!attribute role # The role of the message input. One of `user`, `system`, or `developer`. # - # @return [Symbol, OpenAI::Models::Responses::ResponseInputItem::Message::Role] - required :role, enum: -> { OpenAI::Models::Responses::ResponseInputItem::Message::Role } + # @return [Symbol, OpenAI::Responses::ResponseInputItem::Message::Role] + required :role, enum: -> { OpenAI::Responses::ResponseInputItem::Message::Role } # @!attribute status # The status of item. One of `in_progress`, `completed`, or `incomplete`. # Populated when items are returned via API. # - # @return [Symbol, OpenAI::Models::Responses::ResponseInputItem::Message::Status, nil] - optional :status, enum: -> { OpenAI::Models::Responses::ResponseInputItem::Message::Status } + # @return [Symbol, OpenAI::Responses::ResponseInputItem::Message::Status, nil] + optional :status, enum: -> { OpenAI::Responses::ResponseInputItem::Message::Status } # @!attribute type # The type of the message input. Always set to `message`. # - # @return [Symbol, OpenAI::Models::Responses::ResponseInputItem::Message::Type, nil] - optional :type, enum: -> { OpenAI::Models::Responses::ResponseInputItem::Message::Type } + # @return [Symbol, OpenAI::Responses::ResponseInputItem::Message::Type, nil] + optional :type, enum: -> { OpenAI::Responses::ResponseInputItem::Message::Type } # @!method initialize(content:, role:, status: nil, type: nil) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Responses::ResponseInputItem::Message} for more details. + # {OpenAI::Responses::ResponseInputItem::Message} for more details. # # A message input to the model with a role indicating instruction following # hierarchy. Instructions given with the `developer` or `system` role take # precedence over instructions given with the `user` role. # - # @param content [Array] A list of one or many input items to the model, containing different content ... + # @param content [Array] A list of one or many input items to the model, containing different content # - # @param role [Symbol, OpenAI::Models::Responses::ResponseInputItem::Message::Role] The role of the message input. One of `user`, `system`, or `developer`. ... + # @param role [Symbol, OpenAI::Responses::ResponseInputItem::Message::Role] The role of the message input. One of `user`, `system`, or `developer`. # - # @param status [Symbol, OpenAI::Models::Responses::ResponseInputItem::Message::Status] The status of item. One of `in_progress`, `completed`, or ... + # @param status [Symbol, OpenAI::Responses::ResponseInputItem::Message::Status] The status of item. One of `in_progress`, `completed`, or # - # @param type [Symbol, OpenAI::Models::Responses::ResponseInputItem::Message::Type] The type of the message input. Always set to `message`. ... + # @param type [Symbol, OpenAI::Responses::ResponseInputItem::Message::Type] The type of the message input. Always set to `message`. # The role of the message input. One of `user`, `system`, or `developer`. # - # @see OpenAI::Models::Responses::ResponseInputItem::Message#role + # @see OpenAI::Responses::ResponseInputItem::Message#role module Role extend OpenAI::Internal::Type::Enum @@ -120,7 +122,7 @@ module Role # The status of item. One of `in_progress`, `completed`, or `incomplete`. # Populated when items are returned via API. # - # @see OpenAI::Models::Responses::ResponseInputItem::Message#status + # @see OpenAI::Responses::ResponseInputItem::Message#status module Status extend OpenAI::Internal::Type::Enum @@ -134,7 +136,7 @@ module Status # The type of the message input. Always set to `message`. # - # @see OpenAI::Models::Responses::ResponseInputItem::Message#type + # @see OpenAI::Responses::ResponseInputItem::Message#type module Type extend OpenAI::Internal::Type::Enum @@ -155,8 +157,8 @@ class ComputerCallOutput < OpenAI::Internal::Type::BaseModel # @!attribute output # A computer screenshot image used with the computer use tool. # - # @return [OpenAI::Models::Responses::ResponseComputerToolCallOutputScreenshot] - required :output, -> { OpenAI::Models::Responses::ResponseComputerToolCallOutputScreenshot } + # @return [OpenAI::Responses::ResponseComputerToolCallOutputScreenshot] + required :output, -> { OpenAI::Responses::ResponseComputerToolCallOutputScreenshot } # @!attribute type # The type of the computer tool call output. Always `computer_call_output`. @@ -174,38 +176,37 @@ class ComputerCallOutput < OpenAI::Internal::Type::BaseModel # The safety checks reported by the API that have been acknowledged by the # developer. # - # @return [Array, nil] + # @return [Array, nil] optional :acknowledged_safety_checks, - -> { OpenAI::Internal::Type::ArrayOf[OpenAI::Models::Responses::ResponseInputItem::ComputerCallOutput::AcknowledgedSafetyCheck] }, + -> { + OpenAI::Internal::Type::ArrayOf[OpenAI::Responses::ResponseInputItem::ComputerCallOutput::AcknowledgedSafetyCheck] + }, nil?: true # @!attribute status # The status of the message input. One of `in_progress`, `completed`, or # `incomplete`. Populated when input items are returned via API. # - # @return [Symbol, OpenAI::Models::Responses::ResponseInputItem::ComputerCallOutput::Status, nil] + # @return [Symbol, OpenAI::Responses::ResponseInputItem::ComputerCallOutput::Status, nil] optional :status, - enum: -> { OpenAI::Models::Responses::ResponseInputItem::ComputerCallOutput::Status }, + enum: -> { OpenAI::Responses::ResponseInputItem::ComputerCallOutput::Status }, nil?: true # @!method initialize(call_id:, output:, id: nil, acknowledged_safety_checks: nil, status: nil, type: :computer_call_output) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Responses::ResponseInputItem::ComputerCallOutput} for more - # details. + # {OpenAI::Responses::ResponseInputItem::ComputerCallOutput} for more details. # # The output of a computer tool call. # # @param call_id [String] The ID of the computer tool call that produced the output. # - # @param output [OpenAI::Models::Responses::ResponseComputerToolCallOutputScreenshot] A computer screenshot image used with the computer use tool. ... + # @param output [OpenAI::Responses::ResponseComputerToolCallOutputScreenshot] A computer screenshot image used with the computer use tool. # # @param id [String, nil] The ID of the computer tool call output. # - # @param acknowledged_safety_checks [Array, nil] The safety checks reported by the API that have been acknowledged by the develop - # ... + # @param acknowledged_safety_checks [Array, nil] The safety checks reported by the API that have been acknowledged by the develop # - # @param status [Symbol, OpenAI::Models::Responses::ResponseInputItem::ComputerCallOutput::Status, nil] The status of the message input. One of `in_progress`, `completed`, or `incomple - # ... + # @param status [Symbol, OpenAI::Responses::ResponseInputItem::ComputerCallOutput::Status, nil] The status of the message input. One of `in_progress`, `completed`, or `incomple # # @param type [Symbol, :computer_call_output] The type of the computer tool call output. Always `computer_call_output`. @@ -241,7 +242,7 @@ class AcknowledgedSafetyCheck < OpenAI::Internal::Type::BaseModel # The status of the message input. One of `in_progress`, `completed`, or # `incomplete`. Populated when input items are returned via API. # - # @see OpenAI::Models::Responses::ResponseInputItem::ComputerCallOutput#status + # @see OpenAI::Responses::ResponseInputItem::ComputerCallOutput#status module Status extend OpenAI::Internal::Type::Enum @@ -284,15 +285,14 @@ class FunctionCallOutput < OpenAI::Internal::Type::BaseModel # The status of the item. One of `in_progress`, `completed`, or `incomplete`. # Populated when items are returned via API. # - # @return [Symbol, OpenAI::Models::Responses::ResponseInputItem::FunctionCallOutput::Status, nil] + # @return [Symbol, OpenAI::Responses::ResponseInputItem::FunctionCallOutput::Status, nil] optional :status, - enum: -> { OpenAI::Models::Responses::ResponseInputItem::FunctionCallOutput::Status }, + enum: -> { OpenAI::Responses::ResponseInputItem::FunctionCallOutput::Status }, nil?: true # @!method initialize(call_id:, output:, id: nil, status: nil, type: :function_call_output) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Responses::ResponseInputItem::FunctionCallOutput} for more - # details. + # {OpenAI::Responses::ResponseInputItem::FunctionCallOutput} for more details. # # The output of a function tool call. # @@ -301,17 +301,15 @@ class FunctionCallOutput < OpenAI::Internal::Type::BaseModel # @param output [String] A JSON string of the output of the function tool call. # # @param id [String, nil] The unique ID of the function tool call output. Populated when this item is retu - # ... # - # @param status [Symbol, OpenAI::Models::Responses::ResponseInputItem::FunctionCallOutput::Status, nil] The status of the item. One of `in_progress`, `completed`, or `incomplete`. Popu - # ... + # @param status [Symbol, OpenAI::Responses::ResponseInputItem::FunctionCallOutput::Status, nil] The status of the item. One of `in_progress`, `completed`, or `incomplete`. Popu # # @param type [Symbol, :function_call_output] The type of the function tool call output. Always `function_call_output`. # The status of the item. One of `in_progress`, `completed`, or `incomplete`. # Populated when items are returned via API. # - # @see OpenAI::Models::Responses::ResponseInputItem::FunctionCallOutput#status + # @see OpenAI::Responses::ResponseInputItem::FunctionCallOutput#status module Status extend OpenAI::Internal::Type::Enum @@ -334,19 +332,19 @@ class ItemReference < OpenAI::Internal::Type::BaseModel # @!attribute type # The type of item to reference. Always `item_reference`. # - # @return [Symbol, OpenAI::Models::Responses::ResponseInputItem::ItemReference::Type, nil] - optional :type, enum: -> { OpenAI::Models::Responses::ResponseInputItem::ItemReference::Type }, nil?: true + # @return [Symbol, OpenAI::Responses::ResponseInputItem::ItemReference::Type, nil] + optional :type, enum: -> { OpenAI::Responses::ResponseInputItem::ItemReference::Type }, nil?: true # @!method initialize(id:, type: nil) # An internal identifier for an item to reference. # # @param id [String] The ID of the item to reference. # - # @param type [Symbol, OpenAI::Models::Responses::ResponseInputItem::ItemReference::Type, nil] The type of item to reference. Always `item_reference`. + # @param type [Symbol, OpenAI::Responses::ResponseInputItem::ItemReference::Type, nil] The type of item to reference. Always `item_reference`. # The type of item to reference. Always `item_reference`. # - # @see OpenAI::Models::Responses::ResponseInputItem::ItemReference#type + # @see OpenAI::Responses::ResponseInputItem::ItemReference#type module Type extend OpenAI::Internal::Type::Enum @@ -358,7 +356,7 @@ module Type end # @!method self.variants - # @return [Array(OpenAI::Models::Responses::EasyInputMessage, OpenAI::Models::Responses::ResponseInputItem::Message, OpenAI::Models::Responses::ResponseOutputMessage, OpenAI::Models::Responses::ResponseFileSearchToolCall, OpenAI::Models::Responses::ResponseComputerToolCall, OpenAI::Models::Responses::ResponseInputItem::ComputerCallOutput, OpenAI::Models::Responses::ResponseFunctionWebSearch, OpenAI::Models::Responses::ResponseFunctionToolCall, OpenAI::Models::Responses::ResponseInputItem::FunctionCallOutput, OpenAI::Models::Responses::ResponseReasoningItem, OpenAI::Models::Responses::ResponseInputItem::ItemReference)] + # @return [Array(OpenAI::Responses::EasyInputMessage, OpenAI::Responses::ResponseInputItem::Message, OpenAI::Responses::ResponseOutputMessage, OpenAI::Responses::ResponseFileSearchToolCall, OpenAI::Responses::ResponseComputerToolCall, OpenAI::Responses::ResponseInputItem::ComputerCallOutput, OpenAI::Responses::ResponseFunctionWebSearch, OpenAI::Responses::ResponseFunctionToolCall, OpenAI::Responses::ResponseInputItem::FunctionCallOutput, OpenAI::Responses::ResponseReasoningItem, OpenAI::Responses::ResponseInputItem::ItemReference)] end end end diff --git a/lib/openai/models/responses/response_input_message_content_list.rb b/lib/openai/models/responses/response_input_message_content_list.rb index 888f3f1c..517253ab 100644 --- a/lib/openai/models/responses/response_input_message_content_list.rb +++ b/lib/openai/models/responses/response_input_message_content_list.rb @@ -5,7 +5,7 @@ module Models module Responses # @type [OpenAI::Internal::Type::Converter] ResponseInputMessageContentList = - OpenAI::Internal::Type::ArrayOf[union: -> { OpenAI::Models::Responses::ResponseInputContent }] + OpenAI::Internal::Type::ArrayOf[union: -> { OpenAI::Responses::ResponseInputContent }] end end end diff --git a/lib/openai/models/responses/response_input_message_item.rb b/lib/openai/models/responses/response_input_message_item.rb index f188d81c..6bad6d0f 100644 --- a/lib/openai/models/responses/response_input_message_item.rb +++ b/lib/openai/models/responses/response_input_message_item.rb @@ -14,46 +14,48 @@ class ResponseInputMessageItem < OpenAI::Internal::Type::BaseModel # A list of one or many input items to the model, containing different content # types. # - # @return [Array] + # @return [Array] required :content, - -> { OpenAI::Internal::Type::ArrayOf[union: OpenAI::Models::Responses::ResponseInputContent] } + -> { + OpenAI::Internal::Type::ArrayOf[union: OpenAI::Responses::ResponseInputContent] + } # @!attribute role # The role of the message input. One of `user`, `system`, or `developer`. # - # @return [Symbol, OpenAI::Models::Responses::ResponseInputMessageItem::Role] - required :role, enum: -> { OpenAI::Models::Responses::ResponseInputMessageItem::Role } + # @return [Symbol, OpenAI::Responses::ResponseInputMessageItem::Role] + required :role, enum: -> { OpenAI::Responses::ResponseInputMessageItem::Role } # @!attribute status # The status of item. One of `in_progress`, `completed`, or `incomplete`. # Populated when items are returned via API. # - # @return [Symbol, OpenAI::Models::Responses::ResponseInputMessageItem::Status, nil] - optional :status, enum: -> { OpenAI::Models::Responses::ResponseInputMessageItem::Status } + # @return [Symbol, OpenAI::Responses::ResponseInputMessageItem::Status, nil] + optional :status, enum: -> { OpenAI::Responses::ResponseInputMessageItem::Status } # @!attribute type # The type of the message input. Always set to `message`. # - # @return [Symbol, OpenAI::Models::Responses::ResponseInputMessageItem::Type, nil] - optional :type, enum: -> { OpenAI::Models::Responses::ResponseInputMessageItem::Type } + # @return [Symbol, OpenAI::Responses::ResponseInputMessageItem::Type, nil] + optional :type, enum: -> { OpenAI::Responses::ResponseInputMessageItem::Type } # @!method initialize(id:, content:, role:, status: nil, type: nil) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Responses::ResponseInputMessageItem} for more details. + # {OpenAI::Responses::ResponseInputMessageItem} for more details. # - # @param id [String] The unique ID of the message input. ... + # @param id [String] The unique ID of the message input. # - # @param content [Array] A list of one or many input items to the model, containing different content ... + # @param content [Array] A list of one or many input items to the model, containing different content # - # @param role [Symbol, OpenAI::Models::Responses::ResponseInputMessageItem::Role] The role of the message input. One of `user`, `system`, or `developer`. ... + # @param role [Symbol, OpenAI::Responses::ResponseInputMessageItem::Role] The role of the message input. One of `user`, `system`, or `developer`. # - # @param status [Symbol, OpenAI::Models::Responses::ResponseInputMessageItem::Status] The status of item. One of `in_progress`, `completed`, or ... + # @param status [Symbol, OpenAI::Responses::ResponseInputMessageItem::Status] The status of item. One of `in_progress`, `completed`, or # - # @param type [Symbol, OpenAI::Models::Responses::ResponseInputMessageItem::Type] The type of the message input. Always set to `message`. ... + # @param type [Symbol, OpenAI::Responses::ResponseInputMessageItem::Type] The type of the message input. Always set to `message`. # The role of the message input. One of `user`, `system`, or `developer`. # - # @see OpenAI::Models::Responses::ResponseInputMessageItem#role + # @see OpenAI::Responses::ResponseInputMessageItem#role module Role extend OpenAI::Internal::Type::Enum @@ -68,7 +70,7 @@ module Role # The status of item. One of `in_progress`, `completed`, or `incomplete`. # Populated when items are returned via API. # - # @see OpenAI::Models::Responses::ResponseInputMessageItem#status + # @see OpenAI::Responses::ResponseInputMessageItem#status module Status extend OpenAI::Internal::Type::Enum @@ -82,7 +84,7 @@ module Status # The type of the message input. Always set to `message`. # - # @see OpenAI::Models::Responses::ResponseInputMessageItem#type + # @see OpenAI::Responses::ResponseInputMessageItem#type module Type extend OpenAI::Internal::Type::Enum diff --git a/lib/openai/models/responses/response_item.rb b/lib/openai/models/responses/response_item.rb index 42dcb8be..e0bd4301 100644 --- a/lib/openai/models/responses/response_item.rb +++ b/lib/openai/models/responses/response_item.rb @@ -9,33 +9,33 @@ module ResponseItem discriminator :type - variant :message, -> { OpenAI::Models::Responses::ResponseInputMessageItem } + variant :message, -> { OpenAI::Responses::ResponseInputMessageItem } # An output message from the model. - variant :message, -> { OpenAI::Models::Responses::ResponseOutputMessage } + variant :message, -> { OpenAI::Responses::ResponseOutputMessage } # The results of a file search tool call. See the # [file search guide](https://platform.openai.com/docs/guides/tools-file-search) for more information. - variant :file_search_call, -> { OpenAI::Models::Responses::ResponseFileSearchToolCall } + variant :file_search_call, -> { OpenAI::Responses::ResponseFileSearchToolCall } # A tool call to a computer use tool. See the # [computer use guide](https://platform.openai.com/docs/guides/tools-computer-use) for more information. - variant :computer_call, -> { OpenAI::Models::Responses::ResponseComputerToolCall } + variant :computer_call, -> { OpenAI::Responses::ResponseComputerToolCall } - variant :computer_call_output, -> { OpenAI::Models::Responses::ResponseComputerToolCallOutputItem } + variant :computer_call_output, -> { OpenAI::Responses::ResponseComputerToolCallOutputItem } # The results of a web search tool call. See the # [web search guide](https://platform.openai.com/docs/guides/tools-web-search) for more information. - variant :web_search_call, -> { OpenAI::Models::Responses::ResponseFunctionWebSearch } + variant :web_search_call, -> { OpenAI::Responses::ResponseFunctionWebSearch } # A tool call to run a function. See the # [function calling guide](https://platform.openai.com/docs/guides/function-calling) for more information. - variant :function_call, -> { OpenAI::Models::Responses::ResponseFunctionToolCallItem } + variant :function_call, -> { OpenAI::Responses::ResponseFunctionToolCallItem } - variant :function_call_output, -> { OpenAI::Models::Responses::ResponseFunctionToolCallOutputItem } + variant :function_call_output, -> { OpenAI::Responses::ResponseFunctionToolCallOutputItem } # @!method self.variants - # @return [Array(OpenAI::Models::Responses::ResponseInputMessageItem, OpenAI::Models::Responses::ResponseOutputMessage, OpenAI::Models::Responses::ResponseFileSearchToolCall, OpenAI::Models::Responses::ResponseComputerToolCall, OpenAI::Models::Responses::ResponseComputerToolCallOutputItem, OpenAI::Models::Responses::ResponseFunctionWebSearch, OpenAI::Models::Responses::ResponseFunctionToolCallItem, OpenAI::Models::Responses::ResponseFunctionToolCallOutputItem)] + # @return [Array(OpenAI::Responses::ResponseInputMessageItem, OpenAI::Responses::ResponseOutputMessage, OpenAI::Responses::ResponseFileSearchToolCall, OpenAI::Responses::ResponseComputerToolCall, OpenAI::Responses::ResponseComputerToolCallOutputItem, OpenAI::Responses::ResponseFunctionWebSearch, OpenAI::Responses::ResponseFunctionToolCallItem, OpenAI::Responses::ResponseFunctionToolCallOutputItem)] end end end diff --git a/lib/openai/models/responses/response_item_list.rb b/lib/openai/models/responses/response_item_list.rb index 06e55c53..6d7d8e30 100644 --- a/lib/openai/models/responses/response_item_list.rb +++ b/lib/openai/models/responses/response_item_list.rb @@ -7,8 +7,8 @@ class ResponseItemList < OpenAI::Internal::Type::BaseModel # @!attribute data # A list of items used to generate this response. # - # @return [Array] - required :data, -> { OpenAI::Internal::Type::ArrayOf[union: OpenAI::Models::Responses::ResponseItem] } + # @return [Array] + required :data, -> { OpenAI::Internal::Type::ArrayOf[union: OpenAI::Responses::ResponseItem] } # @!attribute first_id # The ID of the first item in the list. @@ -37,7 +37,7 @@ class ResponseItemList < OpenAI::Internal::Type::BaseModel # @!method initialize(data:, first_id:, has_more:, last_id:, object: :list) # A list of Response items. # - # @param data [Array] A list of items used to generate this response. + # @param data [Array] A list of items used to generate this response. # # @param first_id [String] The ID of the first item in the list. # diff --git a/lib/openai/models/responses/response_output_audio.rb b/lib/openai/models/responses/response_output_audio.rb index f66f4024..8183cdda 100644 --- a/lib/openai/models/responses/response_output_audio.rb +++ b/lib/openai/models/responses/response_output_audio.rb @@ -24,15 +24,15 @@ class ResponseOutputAudio < OpenAI::Internal::Type::BaseModel # @!method initialize(data:, transcript:, type: :output_audio) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Responses::ResponseOutputAudio} for more details. + # {OpenAI::Responses::ResponseOutputAudio} for more details. # # An audio output from the model. # - # @param data [String] Base64-encoded audio data from the model. ... + # @param data [String] Base64-encoded audio data from the model. # - # @param transcript [String] The transcript of the audio data from the model. ... + # @param transcript [String] The transcript of the audio data from the model. # - # @param type [Symbol, :output_audio] The type of the output audio. Always `output_audio`. ... + # @param type [Symbol, :output_audio] The type of the output audio. Always `output_audio`. end end end diff --git a/lib/openai/models/responses/response_output_item.rb b/lib/openai/models/responses/response_output_item.rb index 91539b62..8e653d3a 100644 --- a/lib/openai/models/responses/response_output_item.rb +++ b/lib/openai/models/responses/response_output_item.rb @@ -10,32 +10,32 @@ module ResponseOutputItem discriminator :type # An output message from the model. - variant :message, -> { OpenAI::Models::Responses::ResponseOutputMessage } + variant :message, -> { OpenAI::Responses::ResponseOutputMessage } # The results of a file search tool call. See the # [file search guide](https://platform.openai.com/docs/guides/tools-file-search) for more information. - variant :file_search_call, -> { OpenAI::Models::Responses::ResponseFileSearchToolCall } + variant :file_search_call, -> { OpenAI::Responses::ResponseFileSearchToolCall } # A tool call to run a function. See the # [function calling guide](https://platform.openai.com/docs/guides/function-calling) for more information. - variant :function_call, -> { OpenAI::Models::Responses::ResponseFunctionToolCall } + variant :function_call, -> { OpenAI::Responses::ResponseFunctionToolCall } # The results of a web search tool call. See the # [web search guide](https://platform.openai.com/docs/guides/tools-web-search) for more information. - variant :web_search_call, -> { OpenAI::Models::Responses::ResponseFunctionWebSearch } + variant :web_search_call, -> { OpenAI::Responses::ResponseFunctionWebSearch } # A tool call to a computer use tool. See the # [computer use guide](https://platform.openai.com/docs/guides/tools-computer-use) for more information. - variant :computer_call, -> { OpenAI::Models::Responses::ResponseComputerToolCall } + variant :computer_call, -> { OpenAI::Responses::ResponseComputerToolCall } # A description of the chain of thought used by a reasoning model while generating # a response. Be sure to include these items in your `input` to the Responses API # for subsequent turns of a conversation if you are manually # [managing context](https://platform.openai.com/docs/guides/conversation-state). - variant :reasoning, -> { OpenAI::Models::Responses::ResponseReasoningItem } + variant :reasoning, -> { OpenAI::Responses::ResponseReasoningItem } # @!method self.variants - # @return [Array(OpenAI::Models::Responses::ResponseOutputMessage, OpenAI::Models::Responses::ResponseFileSearchToolCall, OpenAI::Models::Responses::ResponseFunctionToolCall, OpenAI::Models::Responses::ResponseFunctionWebSearch, OpenAI::Models::Responses::ResponseComputerToolCall, OpenAI::Models::Responses::ResponseReasoningItem)] + # @return [Array(OpenAI::Responses::ResponseOutputMessage, OpenAI::Responses::ResponseFileSearchToolCall, OpenAI::Responses::ResponseFunctionToolCall, OpenAI::Responses::ResponseFunctionWebSearch, OpenAI::Responses::ResponseComputerToolCall, OpenAI::Responses::ResponseReasoningItem)] end end end diff --git a/lib/openai/models/responses/response_output_item_added_event.rb b/lib/openai/models/responses/response_output_item_added_event.rb index 3a42485d..94383e4f 100644 --- a/lib/openai/models/responses/response_output_item_added_event.rb +++ b/lib/openai/models/responses/response_output_item_added_event.rb @@ -7,8 +7,8 @@ class ResponseOutputItemAddedEvent < OpenAI::Internal::Type::BaseModel # @!attribute item # The output item that was added. # - # @return [OpenAI::Models::Responses::ResponseOutputMessage, OpenAI::Models::Responses::ResponseFileSearchToolCall, OpenAI::Models::Responses::ResponseFunctionToolCall, OpenAI::Models::Responses::ResponseFunctionWebSearch, OpenAI::Models::Responses::ResponseComputerToolCall, OpenAI::Models::Responses::ResponseReasoningItem] - required :item, union: -> { OpenAI::Models::Responses::ResponseOutputItem } + # @return [OpenAI::Responses::ResponseOutputMessage, OpenAI::Responses::ResponseFileSearchToolCall, OpenAI::Responses::ResponseFunctionToolCall, OpenAI::Responses::ResponseFunctionWebSearch, OpenAI::Responses::ResponseComputerToolCall, OpenAI::Responses::ResponseReasoningItem] + required :item, union: -> { OpenAI::Responses::ResponseOutputItem } # @!attribute output_index # The index of the output item that was added. @@ -24,15 +24,15 @@ class ResponseOutputItemAddedEvent < OpenAI::Internal::Type::BaseModel # @!method initialize(item:, output_index:, type: :"response.output_item.added") # Some parameter documentations has been truncated, see - # {OpenAI::Models::Responses::ResponseOutputItemAddedEvent} for more details. + # {OpenAI::Responses::ResponseOutputItemAddedEvent} for more details. # # Emitted when a new output item is added. # - # @param item [OpenAI::Models::Responses::ResponseOutputMessage, OpenAI::Models::Responses::ResponseFileSearchToolCall, OpenAI::Models::Responses::ResponseFunctionToolCall, OpenAI::Models::Responses::ResponseFunctionWebSearch, OpenAI::Models::Responses::ResponseComputerToolCall, OpenAI::Models::Responses::ResponseReasoningItem] The output item that was added. ... + # @param item [OpenAI::Responses::ResponseOutputMessage, OpenAI::Responses::ResponseFileSearchToolCall, OpenAI::Responses::ResponseFunctionToolCall, OpenAI::Responses::ResponseFunctionWebSearch, OpenAI::Responses::ResponseComputerToolCall, OpenAI::Responses::ResponseReasoningItem] The output item that was added. # - # @param output_index [Integer] The index of the output item that was added. ... + # @param output_index [Integer] The index of the output item that was added. # - # @param type [Symbol, :"response.output_item.added"] The type of the event. Always `response.output_item.added`. ... + # @param type [Symbol, :"response.output_item.added"] The type of the event. Always `response.output_item.added`. end end end diff --git a/lib/openai/models/responses/response_output_item_done_event.rb b/lib/openai/models/responses/response_output_item_done_event.rb index d3bfbfc3..54d941ad 100644 --- a/lib/openai/models/responses/response_output_item_done_event.rb +++ b/lib/openai/models/responses/response_output_item_done_event.rb @@ -7,8 +7,8 @@ class ResponseOutputItemDoneEvent < OpenAI::Internal::Type::BaseModel # @!attribute item # The output item that was marked done. # - # @return [OpenAI::Models::Responses::ResponseOutputMessage, OpenAI::Models::Responses::ResponseFileSearchToolCall, OpenAI::Models::Responses::ResponseFunctionToolCall, OpenAI::Models::Responses::ResponseFunctionWebSearch, OpenAI::Models::Responses::ResponseComputerToolCall, OpenAI::Models::Responses::ResponseReasoningItem] - required :item, union: -> { OpenAI::Models::Responses::ResponseOutputItem } + # @return [OpenAI::Responses::ResponseOutputMessage, OpenAI::Responses::ResponseFileSearchToolCall, OpenAI::Responses::ResponseFunctionToolCall, OpenAI::Responses::ResponseFunctionWebSearch, OpenAI::Responses::ResponseComputerToolCall, OpenAI::Responses::ResponseReasoningItem] + required :item, union: -> { OpenAI::Responses::ResponseOutputItem } # @!attribute output_index # The index of the output item that was marked done. @@ -24,15 +24,15 @@ class ResponseOutputItemDoneEvent < OpenAI::Internal::Type::BaseModel # @!method initialize(item:, output_index:, type: :"response.output_item.done") # Some parameter documentations has been truncated, see - # {OpenAI::Models::Responses::ResponseOutputItemDoneEvent} for more details. + # {OpenAI::Responses::ResponseOutputItemDoneEvent} for more details. # # Emitted when an output item is marked done. # - # @param item [OpenAI::Models::Responses::ResponseOutputMessage, OpenAI::Models::Responses::ResponseFileSearchToolCall, OpenAI::Models::Responses::ResponseFunctionToolCall, OpenAI::Models::Responses::ResponseFunctionWebSearch, OpenAI::Models::Responses::ResponseComputerToolCall, OpenAI::Models::Responses::ResponseReasoningItem] The output item that was marked done. ... + # @param item [OpenAI::Responses::ResponseOutputMessage, OpenAI::Responses::ResponseFileSearchToolCall, OpenAI::Responses::ResponseFunctionToolCall, OpenAI::Responses::ResponseFunctionWebSearch, OpenAI::Responses::ResponseComputerToolCall, OpenAI::Responses::ResponseReasoningItem] The output item that was marked done. # - # @param output_index [Integer] The index of the output item that was marked done. ... + # @param output_index [Integer] The index of the output item that was marked done. # - # @param type [Symbol, :"response.output_item.done"] The type of the event. Always `response.output_item.done`. ... + # @param type [Symbol, :"response.output_item.done"] The type of the event. Always `response.output_item.done`. end end end diff --git a/lib/openai/models/responses/response_output_message.rb b/lib/openai/models/responses/response_output_message.rb index 2406dc01..2e7eee71 100644 --- a/lib/openai/models/responses/response_output_message.rb +++ b/lib/openai/models/responses/response_output_message.rb @@ -13,9 +13,11 @@ class ResponseOutputMessage < OpenAI::Internal::Type::BaseModel # @!attribute content # The content of the output message. # - # @return [Array] + # @return [Array] required :content, - -> { OpenAI::Internal::Type::ArrayOf[union: OpenAI::Models::Responses::ResponseOutputMessage::Content] } + -> { + OpenAI::Internal::Type::ArrayOf[union: OpenAI::Responses::ResponseOutputMessage::Content] + } # @!attribute role # The role of the output message. Always `assistant`. @@ -27,8 +29,8 @@ class ResponseOutputMessage < OpenAI::Internal::Type::BaseModel # The status of the message input. One of `in_progress`, `completed`, or # `incomplete`. Populated when input items are returned via API. # - # @return [Symbol, OpenAI::Models::Responses::ResponseOutputMessage::Status] - required :status, enum: -> { OpenAI::Models::Responses::ResponseOutputMessage::Status } + # @return [Symbol, OpenAI::Responses::ResponseOutputMessage::Status] + required :status, enum: -> { OpenAI::Responses::ResponseOutputMessage::Status } # @!attribute type # The type of the output message. Always `message`. @@ -38,19 +40,19 @@ class ResponseOutputMessage < OpenAI::Internal::Type::BaseModel # @!method initialize(id:, content:, status:, role: :assistant, type: :message) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Responses::ResponseOutputMessage} for more details. + # {OpenAI::Responses::ResponseOutputMessage} for more details. # # An output message from the model. # - # @param id [String] The unique ID of the output message. ... + # @param id [String] The unique ID of the output message. # - # @param content [Array] The content of the output message. ... + # @param content [Array] The content of the output message. # - # @param status [Symbol, OpenAI::Models::Responses::ResponseOutputMessage::Status] The status of the message input. One of `in_progress`, `completed`, or ... + # @param status [Symbol, OpenAI::Responses::ResponseOutputMessage::Status] The status of the message input. One of `in_progress`, `completed`, or # - # @param role [Symbol, :assistant] The role of the output message. Always `assistant`. ... + # @param role [Symbol, :assistant] The role of the output message. Always `assistant`. # - # @param type [Symbol, :message] The type of the output message. Always `message`. ... + # @param type [Symbol, :message] The type of the output message. Always `message`. # A text output from the model. module Content @@ -59,19 +61,19 @@ module Content discriminator :type # A text output from the model. - variant :output_text, -> { OpenAI::Models::Responses::ResponseOutputText } + variant :output_text, -> { OpenAI::Responses::ResponseOutputText } # A refusal from the model. - variant :refusal, -> { OpenAI::Models::Responses::ResponseOutputRefusal } + variant :refusal, -> { OpenAI::Responses::ResponseOutputRefusal } # @!method self.variants - # @return [Array(OpenAI::Models::Responses::ResponseOutputText, OpenAI::Models::Responses::ResponseOutputRefusal)] + # @return [Array(OpenAI::Responses::ResponseOutputText, OpenAI::Responses::ResponseOutputRefusal)] end # The status of the message input. One of `in_progress`, `completed`, or # `incomplete`. Populated when input items are returned via API. # - # @see OpenAI::Models::Responses::ResponseOutputMessage#status + # @see OpenAI::Responses::ResponseOutputMessage#status module Status extend OpenAI::Internal::Type::Enum diff --git a/lib/openai/models/responses/response_output_text.rb b/lib/openai/models/responses/response_output_text.rb index aaeda218..6234918b 100644 --- a/lib/openai/models/responses/response_output_text.rb +++ b/lib/openai/models/responses/response_output_text.rb @@ -7,9 +7,11 @@ class ResponseOutputText < OpenAI::Internal::Type::BaseModel # @!attribute annotations # The annotations of the text output. # - # @return [Array] + # @return [Array] required :annotations, - -> { OpenAI::Internal::Type::ArrayOf[union: OpenAI::Models::Responses::ResponseOutputText::Annotation] } + -> { + OpenAI::Internal::Type::ArrayOf[union: OpenAI::Responses::ResponseOutputText::Annotation] + } # @!attribute text # The text output from the model. @@ -26,7 +28,7 @@ class ResponseOutputText < OpenAI::Internal::Type::BaseModel # @!method initialize(annotations:, text:, type: :output_text) # A text output from the model. # - # @param annotations [Array] The annotations of the text output. + # @param annotations [Array] The annotations of the text output. # # @param text [String] The text output from the model. # @@ -39,13 +41,13 @@ module Annotation discriminator :type # A citation to a file. - variant :file_citation, -> { OpenAI::Models::Responses::ResponseOutputText::Annotation::FileCitation } + variant :file_citation, -> { OpenAI::Responses::ResponseOutputText::Annotation::FileCitation } # A citation for a web resource used to generate a model response. - variant :url_citation, -> { OpenAI::Models::Responses::ResponseOutputText::Annotation::URLCitation } + variant :url_citation, -> { OpenAI::Responses::ResponseOutputText::Annotation::URLCitation } # A path to a file. - variant :file_path, -> { OpenAI::Models::Responses::ResponseOutputText::Annotation::FilePath } + variant :file_path, -> { OpenAI::Responses::ResponseOutputText::Annotation::FilePath } class FileCitation < OpenAI::Internal::Type::BaseModel # @!attribute file_id @@ -142,20 +144,19 @@ class FilePath < OpenAI::Internal::Type::BaseModel # @!method initialize(file_id:, index:, type: :file_path) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Responses::ResponseOutputText::Annotation::FilePath} for more - # details. + # {OpenAI::Responses::ResponseOutputText::Annotation::FilePath} for more details. # # A path to a file. # - # @param file_id [String] The ID of the file. ... + # @param file_id [String] The ID of the file. # - # @param index [Integer] The index of the file in the list of files. ... + # @param index [Integer] The index of the file in the list of files. # - # @param type [Symbol, :file_path] The type of the file path. Always `file_path`. ... + # @param type [Symbol, :file_path] The type of the file path. Always `file_path`. end # @!method self.variants - # @return [Array(OpenAI::Models::Responses::ResponseOutputText::Annotation::FileCitation, OpenAI::Models::Responses::ResponseOutputText::Annotation::URLCitation, OpenAI::Models::Responses::ResponseOutputText::Annotation::FilePath)] + # @return [Array(OpenAI::Responses::ResponseOutputText::Annotation::FileCitation, OpenAI::Responses::ResponseOutputText::Annotation::URLCitation, OpenAI::Responses::ResponseOutputText::Annotation::FilePath)] end end end diff --git a/lib/openai/models/responses/response_reasoning_item.rb b/lib/openai/models/responses/response_reasoning_item.rb index 5b029d34..47d20960 100644 --- a/lib/openai/models/responses/response_reasoning_item.rb +++ b/lib/openai/models/responses/response_reasoning_item.rb @@ -13,9 +13,9 @@ class ResponseReasoningItem < OpenAI::Internal::Type::BaseModel # @!attribute summary # Reasoning text contents. # - # @return [Array] + # @return [Array] required :summary, - -> { OpenAI::Internal::Type::ArrayOf[OpenAI::Models::Responses::ResponseReasoningItem::Summary] } + -> { OpenAI::Internal::Type::ArrayOf[OpenAI::Responses::ResponseReasoningItem::Summary] } # @!attribute type # The type of the object. Always `reasoning`. @@ -34,27 +34,27 @@ class ResponseReasoningItem < OpenAI::Internal::Type::BaseModel # The status of the item. One of `in_progress`, `completed`, or `incomplete`. # Populated when items are returned via API. # - # @return [Symbol, OpenAI::Models::Responses::ResponseReasoningItem::Status, nil] - optional :status, enum: -> { OpenAI::Models::Responses::ResponseReasoningItem::Status } + # @return [Symbol, OpenAI::Responses::ResponseReasoningItem::Status, nil] + optional :status, enum: -> { OpenAI::Responses::ResponseReasoningItem::Status } # @!method initialize(id:, summary:, encrypted_content: nil, status: nil, type: :reasoning) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Responses::ResponseReasoningItem} for more details. + # {OpenAI::Responses::ResponseReasoningItem} for more details. # # A description of the chain of thought used by a reasoning model while generating # a response. Be sure to include these items in your `input` to the Responses API # for subsequent turns of a conversation if you are manually # [managing context](https://platform.openai.com/docs/guides/conversation-state). # - # @param id [String] The unique identifier of the reasoning content. ... + # @param id [String] The unique identifier of the reasoning content. # - # @param summary [Array] Reasoning text contents. ... + # @param summary [Array] Reasoning text contents. # - # @param encrypted_content [String, nil] The encrypted content of the reasoning item - populated when a response is ... + # @param encrypted_content [String, nil] The encrypted content of the reasoning item - populated when a response is # - # @param status [Symbol, OpenAI::Models::Responses::ResponseReasoningItem::Status] The status of the item. One of `in_progress`, `completed`, or ... + # @param status [Symbol, OpenAI::Responses::ResponseReasoningItem::Status] The status of the item. One of `in_progress`, `completed`, or # - # @param type [Symbol, :reasoning] The type of the object. Always `reasoning`. ... + # @param type [Symbol, :reasoning] The type of the object. Always `reasoning`. class Summary < OpenAI::Internal::Type::BaseModel # @!attribute text @@ -71,17 +71,17 @@ class Summary < OpenAI::Internal::Type::BaseModel # @!method initialize(text:, type: :summary_text) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Responses::ResponseReasoningItem::Summary} for more details. + # {OpenAI::Responses::ResponseReasoningItem::Summary} for more details. # - # @param text [String] A short summary of the reasoning used by the model when generating ... + # @param text [String] A short summary of the reasoning used by the model when generating # - # @param type [Symbol, :summary_text] The type of the object. Always `summary_text`. ... + # @param type [Symbol, :summary_text] The type of the object. Always `summary_text`. end # The status of the item. One of `in_progress`, `completed`, or `incomplete`. # Populated when items are returned via API. # - # @see OpenAI::Models::Responses::ResponseReasoningItem#status + # @see OpenAI::Responses::ResponseReasoningItem#status module Status extend OpenAI::Internal::Type::Enum diff --git a/lib/openai/models/responses/response_reasoning_summary_part_added_event.rb b/lib/openai/models/responses/response_reasoning_summary_part_added_event.rb index 74d66131..4701beaa 100644 --- a/lib/openai/models/responses/response_reasoning_summary_part_added_event.rb +++ b/lib/openai/models/responses/response_reasoning_summary_part_added_event.rb @@ -19,8 +19,8 @@ class ResponseReasoningSummaryPartAddedEvent < OpenAI::Internal::Type::BaseModel # @!attribute part # The summary part that was added. # - # @return [OpenAI::Models::Responses::ResponseReasoningSummaryPartAddedEvent::Part] - required :part, -> { OpenAI::Models::Responses::ResponseReasoningSummaryPartAddedEvent::Part } + # @return [OpenAI::Responses::ResponseReasoningSummaryPartAddedEvent::Part] + required :part, -> { OpenAI::Responses::ResponseReasoningSummaryPartAddedEvent::Part } # @!attribute summary_index # The index of the summary part within the reasoning summary. @@ -36,22 +36,21 @@ class ResponseReasoningSummaryPartAddedEvent < OpenAI::Internal::Type::BaseModel # @!method initialize(item_id:, output_index:, part:, summary_index:, type: :"response.reasoning_summary_part.added") # Some parameter documentations has been truncated, see - # {OpenAI::Models::Responses::ResponseReasoningSummaryPartAddedEvent} for more - # details. + # {OpenAI::Responses::ResponseReasoningSummaryPartAddedEvent} for more details. # # Emitted when a new reasoning summary part is added. # - # @param item_id [String] The ID of the item this summary part is associated with. ... + # @param item_id [String] The ID of the item this summary part is associated with. # - # @param output_index [Integer] The index of the output item this summary part is associated with. ... + # @param output_index [Integer] The index of the output item this summary part is associated with. # - # @param part [OpenAI::Models::Responses::ResponseReasoningSummaryPartAddedEvent::Part] The summary part that was added. ... + # @param part [OpenAI::Responses::ResponseReasoningSummaryPartAddedEvent::Part] The summary part that was added. # - # @param summary_index [Integer] The index of the summary part within the reasoning summary. ... + # @param summary_index [Integer] The index of the summary part within the reasoning summary. # - # @param type [Symbol, :"response.reasoning_summary_part.added"] The type of the event. Always `response.reasoning_summary_part.added`. ... + # @param type [Symbol, :"response.reasoning_summary_part.added"] The type of the event. Always `response.reasoning_summary_part.added`. - # @see OpenAI::Models::Responses::ResponseReasoningSummaryPartAddedEvent#part + # @see OpenAI::Responses::ResponseReasoningSummaryPartAddedEvent#part class Part < OpenAI::Internal::Type::BaseModel # @!attribute text # The text of the summary part. diff --git a/lib/openai/models/responses/response_reasoning_summary_part_done_event.rb b/lib/openai/models/responses/response_reasoning_summary_part_done_event.rb index 10926c74..8b67b1ea 100644 --- a/lib/openai/models/responses/response_reasoning_summary_part_done_event.rb +++ b/lib/openai/models/responses/response_reasoning_summary_part_done_event.rb @@ -19,8 +19,8 @@ class ResponseReasoningSummaryPartDoneEvent < OpenAI::Internal::Type::BaseModel # @!attribute part # The completed summary part. # - # @return [OpenAI::Models::Responses::ResponseReasoningSummaryPartDoneEvent::Part] - required :part, -> { OpenAI::Models::Responses::ResponseReasoningSummaryPartDoneEvent::Part } + # @return [OpenAI::Responses::ResponseReasoningSummaryPartDoneEvent::Part] + required :part, -> { OpenAI::Responses::ResponseReasoningSummaryPartDoneEvent::Part } # @!attribute summary_index # The index of the summary part within the reasoning summary. @@ -36,22 +36,21 @@ class ResponseReasoningSummaryPartDoneEvent < OpenAI::Internal::Type::BaseModel # @!method initialize(item_id:, output_index:, part:, summary_index:, type: :"response.reasoning_summary_part.done") # Some parameter documentations has been truncated, see - # {OpenAI::Models::Responses::ResponseReasoningSummaryPartDoneEvent} for more - # details. + # {OpenAI::Responses::ResponseReasoningSummaryPartDoneEvent} for more details. # # Emitted when a reasoning summary part is completed. # - # @param item_id [String] The ID of the item this summary part is associated with. ... + # @param item_id [String] The ID of the item this summary part is associated with. # - # @param output_index [Integer] The index of the output item this summary part is associated with. ... + # @param output_index [Integer] The index of the output item this summary part is associated with. # - # @param part [OpenAI::Models::Responses::ResponseReasoningSummaryPartDoneEvent::Part] The completed summary part. ... + # @param part [OpenAI::Responses::ResponseReasoningSummaryPartDoneEvent::Part] The completed summary part. # - # @param summary_index [Integer] The index of the summary part within the reasoning summary. ... + # @param summary_index [Integer] The index of the summary part within the reasoning summary. # - # @param type [Symbol, :"response.reasoning_summary_part.done"] The type of the event. Always `response.reasoning_summary_part.done`. ... + # @param type [Symbol, :"response.reasoning_summary_part.done"] The type of the event. Always `response.reasoning_summary_part.done`. - # @see OpenAI::Models::Responses::ResponseReasoningSummaryPartDoneEvent#part + # @see OpenAI::Responses::ResponseReasoningSummaryPartDoneEvent#part class Part < OpenAI::Internal::Type::BaseModel # @!attribute text # The text of the summary part. diff --git a/lib/openai/models/responses/response_reasoning_summary_text_delta_event.rb b/lib/openai/models/responses/response_reasoning_summary_text_delta_event.rb index b56b3b80..2aaefaf3 100644 --- a/lib/openai/models/responses/response_reasoning_summary_text_delta_event.rb +++ b/lib/openai/models/responses/response_reasoning_summary_text_delta_event.rb @@ -36,20 +36,19 @@ class ResponseReasoningSummaryTextDeltaEvent < OpenAI::Internal::Type::BaseModel # @!method initialize(delta:, item_id:, output_index:, summary_index:, type: :"response.reasoning_summary_text.delta") # Some parameter documentations has been truncated, see - # {OpenAI::Models::Responses::ResponseReasoningSummaryTextDeltaEvent} for more - # details. + # {OpenAI::Responses::ResponseReasoningSummaryTextDeltaEvent} for more details. # # Emitted when a delta is added to a reasoning summary text. # - # @param delta [String] The text delta that was added to the summary. ... + # @param delta [String] The text delta that was added to the summary. # - # @param item_id [String] The ID of the item this summary text delta is associated with. ... + # @param item_id [String] The ID of the item this summary text delta is associated with. # - # @param output_index [Integer] The index of the output item this summary text delta is associated with. ... + # @param output_index [Integer] The index of the output item this summary text delta is associated with. # - # @param summary_index [Integer] The index of the summary part within the reasoning summary. ... + # @param summary_index [Integer] The index of the summary part within the reasoning summary. # - # @param type [Symbol, :"response.reasoning_summary_text.delta"] The type of the event. Always `response.reasoning_summary_text.delta`. ... + # @param type [Symbol, :"response.reasoning_summary_text.delta"] The type of the event. Always `response.reasoning_summary_text.delta`. end end end diff --git a/lib/openai/models/responses/response_reasoning_summary_text_done_event.rb b/lib/openai/models/responses/response_reasoning_summary_text_done_event.rb index cd78cdba..5359b84a 100644 --- a/lib/openai/models/responses/response_reasoning_summary_text_done_event.rb +++ b/lib/openai/models/responses/response_reasoning_summary_text_done_event.rb @@ -36,20 +36,19 @@ class ResponseReasoningSummaryTextDoneEvent < OpenAI::Internal::Type::BaseModel # @!method initialize(item_id:, output_index:, summary_index:, text:, type: :"response.reasoning_summary_text.done") # Some parameter documentations has been truncated, see - # {OpenAI::Models::Responses::ResponseReasoningSummaryTextDoneEvent} for more - # details. + # {OpenAI::Responses::ResponseReasoningSummaryTextDoneEvent} for more details. # # Emitted when a reasoning summary text is completed. # - # @param item_id [String] The ID of the item this summary text is associated with. ... + # @param item_id [String] The ID of the item this summary text is associated with. # - # @param output_index [Integer] The index of the output item this summary text is associated with. ... + # @param output_index [Integer] The index of the output item this summary text is associated with. # - # @param summary_index [Integer] The index of the summary part within the reasoning summary. ... + # @param summary_index [Integer] The index of the summary part within the reasoning summary. # - # @param text [String] The full text of the completed reasoning summary. ... + # @param text [String] The full text of the completed reasoning summary. # - # @param type [Symbol, :"response.reasoning_summary_text.done"] The type of the event. Always `response.reasoning_summary_text.done`. ... + # @param type [Symbol, :"response.reasoning_summary_text.done"] The type of the event. Always `response.reasoning_summary_text.done`. end end end diff --git a/lib/openai/models/responses/response_refusal_delta_event.rb b/lib/openai/models/responses/response_refusal_delta_event.rb index fb8d6770..aef8a0d5 100644 --- a/lib/openai/models/responses/response_refusal_delta_event.rb +++ b/lib/openai/models/responses/response_refusal_delta_event.rb @@ -36,19 +36,19 @@ class ResponseRefusalDeltaEvent < OpenAI::Internal::Type::BaseModel # @!method initialize(content_index:, delta:, item_id:, output_index:, type: :"response.refusal.delta") # Some parameter documentations has been truncated, see - # {OpenAI::Models::Responses::ResponseRefusalDeltaEvent} for more details. + # {OpenAI::Responses::ResponseRefusalDeltaEvent} for more details. # # Emitted when there is a partial refusal text. # - # @param content_index [Integer] The index of the content part that the refusal text is added to. ... + # @param content_index [Integer] The index of the content part that the refusal text is added to. # - # @param delta [String] The refusal text that is added. ... + # @param delta [String] The refusal text that is added. # - # @param item_id [String] The ID of the output item that the refusal text is added to. ... + # @param item_id [String] The ID of the output item that the refusal text is added to. # - # @param output_index [Integer] The index of the output item that the refusal text is added to. ... + # @param output_index [Integer] The index of the output item that the refusal text is added to. # - # @param type [Symbol, :"response.refusal.delta"] The type of the event. Always `response.refusal.delta`. ... + # @param type [Symbol, :"response.refusal.delta"] The type of the event. Always `response.refusal.delta`. end end end diff --git a/lib/openai/models/responses/response_refusal_done_event.rb b/lib/openai/models/responses/response_refusal_done_event.rb index a361e8b3..912b1796 100644 --- a/lib/openai/models/responses/response_refusal_done_event.rb +++ b/lib/openai/models/responses/response_refusal_done_event.rb @@ -36,19 +36,19 @@ class ResponseRefusalDoneEvent < OpenAI::Internal::Type::BaseModel # @!method initialize(content_index:, item_id:, output_index:, refusal:, type: :"response.refusal.done") # Some parameter documentations has been truncated, see - # {OpenAI::Models::Responses::ResponseRefusalDoneEvent} for more details. + # {OpenAI::Responses::ResponseRefusalDoneEvent} for more details. # # Emitted when refusal text is finalized. # - # @param content_index [Integer] The index of the content part that the refusal text is finalized. ... + # @param content_index [Integer] The index of the content part that the refusal text is finalized. # - # @param item_id [String] The ID of the output item that the refusal text is finalized. ... + # @param item_id [String] The ID of the output item that the refusal text is finalized. # - # @param output_index [Integer] The index of the output item that the refusal text is finalized. ... + # @param output_index [Integer] The index of the output item that the refusal text is finalized. # - # @param refusal [String] The refusal text that is finalized. ... + # @param refusal [String] The refusal text that is finalized. # - # @param type [Symbol, :"response.refusal.done"] The type of the event. Always `response.refusal.done`. ... + # @param type [Symbol, :"response.refusal.done"] The type of the event. Always `response.refusal.done`. end end end diff --git a/lib/openai/models/responses/response_retrieve_params.rb b/lib/openai/models/responses/response_retrieve_params.rb index e4b242f8..07638190 100644 --- a/lib/openai/models/responses/response_retrieve_params.rb +++ b/lib/openai/models/responses/response_retrieve_params.rb @@ -12,15 +12,14 @@ class ResponseRetrieveParams < OpenAI::Internal::Type::BaseModel # Additional fields to include in the response. See the `include` parameter for # Response creation above for more information. # - # @return [Array, nil] - optional :include, - -> { OpenAI::Internal::Type::ArrayOf[enum: OpenAI::Models::Responses::ResponseIncludable] } + # @return [Array, nil] + optional :include, -> { OpenAI::Internal::Type::ArrayOf[enum: OpenAI::Responses::ResponseIncludable] } # @!method initialize(include: nil, request_options: {}) # Some parameter documentations has been truncated, see # {OpenAI::Models::Responses::ResponseRetrieveParams} for more details. # - # @param include [Array] Additional fields to include in the response. See the `include` ... + # @param include [Array] Additional fields to include in the response. See the `include` # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] end diff --git a/lib/openai/models/responses/response_stream_event.rb b/lib/openai/models/responses/response_stream_event.rb index 95156d56..48456245 100644 --- a/lib/openai/models/responses/response_stream_event.rb +++ b/lib/openai/models/responses/response_stream_event.rb @@ -10,135 +10,136 @@ module ResponseStreamEvent discriminator :type # Emitted when there is a partial audio response. - variant :"response.audio.delta", -> { OpenAI::Models::Responses::ResponseAudioDeltaEvent } + variant :"response.audio.delta", -> { OpenAI::Responses::ResponseAudioDeltaEvent } # Emitted when the audio response is complete. - variant :"response.audio.done", -> { OpenAI::Models::Responses::ResponseAudioDoneEvent } + variant :"response.audio.done", -> { OpenAI::Responses::ResponseAudioDoneEvent } # Emitted when there is a partial transcript of audio. variant :"response.audio.transcript.delta", - -> { OpenAI::Models::Responses::ResponseAudioTranscriptDeltaEvent } + -> { + OpenAI::Responses::ResponseAudioTranscriptDeltaEvent + } # Emitted when the full audio transcript is completed. - variant :"response.audio.transcript.done", - -> { OpenAI::Models::Responses::ResponseAudioTranscriptDoneEvent } + variant :"response.audio.transcript.done", -> { OpenAI::Responses::ResponseAudioTranscriptDoneEvent } # Emitted when a partial code snippet is added by the code interpreter. variant :"response.code_interpreter_call.code.delta", - -> { OpenAI::Models::Responses::ResponseCodeInterpreterCallCodeDeltaEvent } + -> { OpenAI::Responses::ResponseCodeInterpreterCallCodeDeltaEvent } # Emitted when code snippet output is finalized by the code interpreter. variant :"response.code_interpreter_call.code.done", - -> { OpenAI::Models::Responses::ResponseCodeInterpreterCallCodeDoneEvent } + -> { OpenAI::Responses::ResponseCodeInterpreterCallCodeDoneEvent } # Emitted when the code interpreter call is completed. variant :"response.code_interpreter_call.completed", - -> { OpenAI::Models::Responses::ResponseCodeInterpreterCallCompletedEvent } + -> { OpenAI::Responses::ResponseCodeInterpreterCallCompletedEvent } # Emitted when a code interpreter call is in progress. variant :"response.code_interpreter_call.in_progress", - -> { OpenAI::Models::Responses::ResponseCodeInterpreterCallInProgressEvent } + -> { OpenAI::Responses::ResponseCodeInterpreterCallInProgressEvent } # Emitted when the code interpreter is actively interpreting the code snippet. variant :"response.code_interpreter_call.interpreting", - -> { OpenAI::Models::Responses::ResponseCodeInterpreterCallInterpretingEvent } + -> { OpenAI::Responses::ResponseCodeInterpreterCallInterpretingEvent } # Emitted when the model response is complete. - variant :"response.completed", -> { OpenAI::Models::Responses::ResponseCompletedEvent } + variant :"response.completed", -> { OpenAI::Responses::ResponseCompletedEvent } # Emitted when a new content part is added. - variant :"response.content_part.added", -> { OpenAI::Models::Responses::ResponseContentPartAddedEvent } + variant :"response.content_part.added", -> { OpenAI::Responses::ResponseContentPartAddedEvent } # Emitted when a content part is done. - variant :"response.content_part.done", -> { OpenAI::Models::Responses::ResponseContentPartDoneEvent } + variant :"response.content_part.done", -> { OpenAI::Responses::ResponseContentPartDoneEvent } # An event that is emitted when a response is created. - variant :"response.created", -> { OpenAI::Models::Responses::ResponseCreatedEvent } + variant :"response.created", -> { OpenAI::Responses::ResponseCreatedEvent } # Emitted when an error occurs. - variant :error, -> { OpenAI::Models::Responses::ResponseErrorEvent } + variant :error, -> { OpenAI::Responses::ResponseErrorEvent } # Emitted when a file search call is completed (results found). variant :"response.file_search_call.completed", - -> { OpenAI::Models::Responses::ResponseFileSearchCallCompletedEvent } + -> { OpenAI::Responses::ResponseFileSearchCallCompletedEvent } # Emitted when a file search call is initiated. variant :"response.file_search_call.in_progress", - -> { OpenAI::Models::Responses::ResponseFileSearchCallInProgressEvent } + -> { OpenAI::Responses::ResponseFileSearchCallInProgressEvent } # Emitted when a file search is currently searching. variant :"response.file_search_call.searching", - -> { OpenAI::Models::Responses::ResponseFileSearchCallSearchingEvent } + -> { OpenAI::Responses::ResponseFileSearchCallSearchingEvent } # Emitted when there is a partial function-call arguments delta. variant :"response.function_call_arguments.delta", - -> { OpenAI::Models::Responses::ResponseFunctionCallArgumentsDeltaEvent } + -> { OpenAI::Responses::ResponseFunctionCallArgumentsDeltaEvent } # Emitted when function-call arguments are finalized. variant :"response.function_call_arguments.done", - -> { OpenAI::Models::Responses::ResponseFunctionCallArgumentsDoneEvent } + -> { OpenAI::Responses::ResponseFunctionCallArgumentsDoneEvent } # Emitted when the response is in progress. - variant :"response.in_progress", -> { OpenAI::Models::Responses::ResponseInProgressEvent } + variant :"response.in_progress", -> { OpenAI::Responses::ResponseInProgressEvent } # An event that is emitted when a response fails. - variant :"response.failed", -> { OpenAI::Models::Responses::ResponseFailedEvent } + variant :"response.failed", -> { OpenAI::Responses::ResponseFailedEvent } # An event that is emitted when a response finishes as incomplete. - variant :"response.incomplete", -> { OpenAI::Models::Responses::ResponseIncompleteEvent } + variant :"response.incomplete", -> { OpenAI::Responses::ResponseIncompleteEvent } # Emitted when a new output item is added. - variant :"response.output_item.added", -> { OpenAI::Models::Responses::ResponseOutputItemAddedEvent } + variant :"response.output_item.added", -> { OpenAI::Responses::ResponseOutputItemAddedEvent } # Emitted when an output item is marked done. - variant :"response.output_item.done", -> { OpenAI::Models::Responses::ResponseOutputItemDoneEvent } + variant :"response.output_item.done", -> { OpenAI::Responses::ResponseOutputItemDoneEvent } # Emitted when a new reasoning summary part is added. variant :"response.reasoning_summary_part.added", - -> { OpenAI::Models::Responses::ResponseReasoningSummaryPartAddedEvent } + -> { OpenAI::Responses::ResponseReasoningSummaryPartAddedEvent } # Emitted when a reasoning summary part is completed. variant :"response.reasoning_summary_part.done", - -> { OpenAI::Models::Responses::ResponseReasoningSummaryPartDoneEvent } + -> { OpenAI::Responses::ResponseReasoningSummaryPartDoneEvent } # Emitted when a delta is added to a reasoning summary text. variant :"response.reasoning_summary_text.delta", - -> { OpenAI::Models::Responses::ResponseReasoningSummaryTextDeltaEvent } + -> { OpenAI::Responses::ResponseReasoningSummaryTextDeltaEvent } # Emitted when a reasoning summary text is completed. variant :"response.reasoning_summary_text.done", - -> { OpenAI::Models::Responses::ResponseReasoningSummaryTextDoneEvent } + -> { OpenAI::Responses::ResponseReasoningSummaryTextDoneEvent } # Emitted when there is a partial refusal text. - variant :"response.refusal.delta", -> { OpenAI::Models::Responses::ResponseRefusalDeltaEvent } + variant :"response.refusal.delta", -> { OpenAI::Responses::ResponseRefusalDeltaEvent } # Emitted when refusal text is finalized. - variant :"response.refusal.done", -> { OpenAI::Models::Responses::ResponseRefusalDoneEvent } + variant :"response.refusal.done", -> { OpenAI::Responses::ResponseRefusalDoneEvent } # Emitted when a text annotation is added. variant :"response.output_text.annotation.added", - -> { OpenAI::Models::Responses::ResponseTextAnnotationDeltaEvent } + -> { OpenAI::Responses::ResponseTextAnnotationDeltaEvent } # Emitted when there is an additional text delta. - variant :"response.output_text.delta", -> { OpenAI::Models::Responses::ResponseTextDeltaEvent } + variant :"response.output_text.delta", -> { OpenAI::Responses::ResponseTextDeltaEvent } # Emitted when text content is finalized. - variant :"response.output_text.done", -> { OpenAI::Models::Responses::ResponseTextDoneEvent } + variant :"response.output_text.done", -> { OpenAI::Responses::ResponseTextDoneEvent } # Emitted when a web search call is completed. variant :"response.web_search_call.completed", - -> { OpenAI::Models::Responses::ResponseWebSearchCallCompletedEvent } + -> { OpenAI::Responses::ResponseWebSearchCallCompletedEvent } # Emitted when a web search call is initiated. variant :"response.web_search_call.in_progress", - -> { OpenAI::Models::Responses::ResponseWebSearchCallInProgressEvent } + -> { OpenAI::Responses::ResponseWebSearchCallInProgressEvent } # Emitted when a web search call is executing. variant :"response.web_search_call.searching", - -> { OpenAI::Models::Responses::ResponseWebSearchCallSearchingEvent } + -> { OpenAI::Responses::ResponseWebSearchCallSearchingEvent } # @!method self.variants - # @return [Array(OpenAI::Models::Responses::ResponseAudioDeltaEvent, OpenAI::Models::Responses::ResponseAudioDoneEvent, OpenAI::Models::Responses::ResponseAudioTranscriptDeltaEvent, OpenAI::Models::Responses::ResponseAudioTranscriptDoneEvent, OpenAI::Models::Responses::ResponseCodeInterpreterCallCodeDeltaEvent, OpenAI::Models::Responses::ResponseCodeInterpreterCallCodeDoneEvent, OpenAI::Models::Responses::ResponseCodeInterpreterCallCompletedEvent, OpenAI::Models::Responses::ResponseCodeInterpreterCallInProgressEvent, OpenAI::Models::Responses::ResponseCodeInterpreterCallInterpretingEvent, OpenAI::Models::Responses::ResponseCompletedEvent, OpenAI::Models::Responses::ResponseContentPartAddedEvent, OpenAI::Models::Responses::ResponseContentPartDoneEvent, OpenAI::Models::Responses::ResponseCreatedEvent, OpenAI::Models::Responses::ResponseErrorEvent, OpenAI::Models::Responses::ResponseFileSearchCallCompletedEvent, OpenAI::Models::Responses::ResponseFileSearchCallInProgressEvent, OpenAI::Models::Responses::ResponseFileSearchCallSearchingEvent, OpenAI::Models::Responses::ResponseFunctionCallArgumentsDeltaEvent, OpenAI::Models::Responses::ResponseFunctionCallArgumentsDoneEvent, OpenAI::Models::Responses::ResponseInProgressEvent, OpenAI::Models::Responses::ResponseFailedEvent, OpenAI::Models::Responses::ResponseIncompleteEvent, OpenAI::Models::Responses::ResponseOutputItemAddedEvent, OpenAI::Models::Responses::ResponseOutputItemDoneEvent, OpenAI::Models::Responses::ResponseReasoningSummaryPartAddedEvent, OpenAI::Models::Responses::ResponseReasoningSummaryPartDoneEvent, OpenAI::Models::Responses::ResponseReasoningSummaryTextDeltaEvent, OpenAI::Models::Responses::ResponseReasoningSummaryTextDoneEvent, OpenAI::Models::Responses::ResponseRefusalDeltaEvent, OpenAI::Models::Responses::ResponseRefusalDoneEvent, OpenAI::Models::Responses::ResponseTextAnnotationDeltaEvent, OpenAI::Models::Responses::ResponseTextDeltaEvent, OpenAI::Models::Responses::ResponseTextDoneEvent, OpenAI::Models::Responses::ResponseWebSearchCallCompletedEvent, OpenAI::Models::Responses::ResponseWebSearchCallInProgressEvent, OpenAI::Models::Responses::ResponseWebSearchCallSearchingEvent)] + # @return [Array(OpenAI::Responses::ResponseAudioDeltaEvent, OpenAI::Responses::ResponseAudioDoneEvent, OpenAI::Responses::ResponseAudioTranscriptDeltaEvent, OpenAI::Responses::ResponseAudioTranscriptDoneEvent, OpenAI::Responses::ResponseCodeInterpreterCallCodeDeltaEvent, OpenAI::Responses::ResponseCodeInterpreterCallCodeDoneEvent, OpenAI::Responses::ResponseCodeInterpreterCallCompletedEvent, OpenAI::Responses::ResponseCodeInterpreterCallInProgressEvent, OpenAI::Responses::ResponseCodeInterpreterCallInterpretingEvent, OpenAI::Responses::ResponseCompletedEvent, OpenAI::Responses::ResponseContentPartAddedEvent, OpenAI::Responses::ResponseContentPartDoneEvent, OpenAI::Responses::ResponseCreatedEvent, OpenAI::Responses::ResponseErrorEvent, OpenAI::Responses::ResponseFileSearchCallCompletedEvent, OpenAI::Responses::ResponseFileSearchCallInProgressEvent, OpenAI::Responses::ResponseFileSearchCallSearchingEvent, OpenAI::Responses::ResponseFunctionCallArgumentsDeltaEvent, OpenAI::Responses::ResponseFunctionCallArgumentsDoneEvent, OpenAI::Responses::ResponseInProgressEvent, OpenAI::Responses::ResponseFailedEvent, OpenAI::Responses::ResponseIncompleteEvent, OpenAI::Responses::ResponseOutputItemAddedEvent, OpenAI::Responses::ResponseOutputItemDoneEvent, OpenAI::Responses::ResponseReasoningSummaryPartAddedEvent, OpenAI::Responses::ResponseReasoningSummaryPartDoneEvent, OpenAI::Responses::ResponseReasoningSummaryTextDeltaEvent, OpenAI::Responses::ResponseReasoningSummaryTextDoneEvent, OpenAI::Responses::ResponseRefusalDeltaEvent, OpenAI::Responses::ResponseRefusalDoneEvent, OpenAI::Responses::ResponseTextAnnotationDeltaEvent, OpenAI::Responses::ResponseTextDeltaEvent, OpenAI::Responses::ResponseTextDoneEvent, OpenAI::Responses::ResponseWebSearchCallCompletedEvent, OpenAI::Responses::ResponseWebSearchCallInProgressEvent, OpenAI::Responses::ResponseWebSearchCallSearchingEvent)] end end end diff --git a/lib/openai/models/responses/response_text_annotation_delta_event.rb b/lib/openai/models/responses/response_text_annotation_delta_event.rb index f0be62c1..8ffc14a6 100644 --- a/lib/openai/models/responses/response_text_annotation_delta_event.rb +++ b/lib/openai/models/responses/response_text_annotation_delta_event.rb @@ -7,9 +7,8 @@ class ResponseTextAnnotationDeltaEvent < OpenAI::Internal::Type::BaseModel # @!attribute annotation # A citation to a file. # - # @return [OpenAI::Models::Responses::ResponseTextAnnotationDeltaEvent::Annotation::FileCitation, OpenAI::Models::Responses::ResponseTextAnnotationDeltaEvent::Annotation::URLCitation, OpenAI::Models::Responses::ResponseTextAnnotationDeltaEvent::Annotation::FilePath] - required :annotation, - union: -> { OpenAI::Models::Responses::ResponseTextAnnotationDeltaEvent::Annotation } + # @return [OpenAI::Responses::ResponseTextAnnotationDeltaEvent::Annotation::FileCitation, OpenAI::Responses::ResponseTextAnnotationDeltaEvent::Annotation::URLCitation, OpenAI::Responses::ResponseTextAnnotationDeltaEvent::Annotation::FilePath] + required :annotation, union: -> { OpenAI::Responses::ResponseTextAnnotationDeltaEvent::Annotation } # @!attribute annotation_index # The index of the annotation that was added. @@ -43,25 +42,25 @@ class ResponseTextAnnotationDeltaEvent < OpenAI::Internal::Type::BaseModel # @!method initialize(annotation:, annotation_index:, content_index:, item_id:, output_index:, type: :"response.output_text.annotation.added") # Some parameter documentations has been truncated, see - # {OpenAI::Models::Responses::ResponseTextAnnotationDeltaEvent} for more details. + # {OpenAI::Responses::ResponseTextAnnotationDeltaEvent} for more details. # # Emitted when a text annotation is added. # - # @param annotation [OpenAI::Models::Responses::ResponseTextAnnotationDeltaEvent::Annotation::FileCitation, OpenAI::Models::Responses::ResponseTextAnnotationDeltaEvent::Annotation::URLCitation, OpenAI::Models::Responses::ResponseTextAnnotationDeltaEvent::Annotation::FilePath] A citation to a file. + # @param annotation [OpenAI::Responses::ResponseTextAnnotationDeltaEvent::Annotation::FileCitation, OpenAI::Responses::ResponseTextAnnotationDeltaEvent::Annotation::URLCitation, OpenAI::Responses::ResponseTextAnnotationDeltaEvent::Annotation::FilePath] A citation to a file. # - # @param annotation_index [Integer] The index of the annotation that was added. ... + # @param annotation_index [Integer] The index of the annotation that was added. # - # @param content_index [Integer] The index of the content part that the text annotation was added to. ... + # @param content_index [Integer] The index of the content part that the text annotation was added to. # - # @param item_id [String] The ID of the output item that the text annotation was added to. ... + # @param item_id [String] The ID of the output item that the text annotation was added to. # - # @param output_index [Integer] The index of the output item that the text annotation was added to. ... + # @param output_index [Integer] The index of the output item that the text annotation was added to. # - # @param type [Symbol, :"response.output_text.annotation.added"] The type of the event. Always `response.output_text.annotation.added`. ... + # @param type [Symbol, :"response.output_text.annotation.added"] The type of the event. Always `response.output_text.annotation.added`. # A citation to a file. # - # @see OpenAI::Models::Responses::ResponseTextAnnotationDeltaEvent#annotation + # @see OpenAI::Responses::ResponseTextAnnotationDeltaEvent#annotation module Annotation extend OpenAI::Internal::Type::Union @@ -69,15 +68,16 @@ module Annotation # A citation to a file. variant :file_citation, - -> { OpenAI::Models::Responses::ResponseTextAnnotationDeltaEvent::Annotation::FileCitation } + -> { OpenAI::Responses::ResponseTextAnnotationDeltaEvent::Annotation::FileCitation } # A citation for a web resource used to generate a model response. variant :url_citation, - -> { OpenAI::Models::Responses::ResponseTextAnnotationDeltaEvent::Annotation::URLCitation } + -> { + OpenAI::Responses::ResponseTextAnnotationDeltaEvent::Annotation::URLCitation + } # A path to a file. - variant :file_path, - -> { OpenAI::Models::Responses::ResponseTextAnnotationDeltaEvent::Annotation::FilePath } + variant :file_path, -> { OpenAI::Responses::ResponseTextAnnotationDeltaEvent::Annotation::FilePath } class FileCitation < OpenAI::Internal::Type::BaseModel # @!attribute file_id @@ -174,20 +174,20 @@ class FilePath < OpenAI::Internal::Type::BaseModel # @!method initialize(file_id:, index:, type: :file_path) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Responses::ResponseTextAnnotationDeltaEvent::Annotation::FilePath} - # for more details. + # {OpenAI::Responses::ResponseTextAnnotationDeltaEvent::Annotation::FilePath} for + # more details. # # A path to a file. # - # @param file_id [String] The ID of the file. ... + # @param file_id [String] The ID of the file. # - # @param index [Integer] The index of the file in the list of files. ... + # @param index [Integer] The index of the file in the list of files. # - # @param type [Symbol, :file_path] The type of the file path. Always `file_path`. ... + # @param type [Symbol, :file_path] The type of the file path. Always `file_path`. end # @!method self.variants - # @return [Array(OpenAI::Models::Responses::ResponseTextAnnotationDeltaEvent::Annotation::FileCitation, OpenAI::Models::Responses::ResponseTextAnnotationDeltaEvent::Annotation::URLCitation, OpenAI::Models::Responses::ResponseTextAnnotationDeltaEvent::Annotation::FilePath)] + # @return [Array(OpenAI::Responses::ResponseTextAnnotationDeltaEvent::Annotation::FileCitation, OpenAI::Responses::ResponseTextAnnotationDeltaEvent::Annotation::URLCitation, OpenAI::Responses::ResponseTextAnnotationDeltaEvent::Annotation::FilePath)] end end end diff --git a/lib/openai/models/responses/response_text_config.rb b/lib/openai/models/responses/response_text_config.rb index a67c6449..2d22f544 100644 --- a/lib/openai/models/responses/response_text_config.rb +++ b/lib/openai/models/responses/response_text_config.rb @@ -19,12 +19,12 @@ class ResponseTextConfig < OpenAI::Internal::Type::BaseModel # ensures the message the model generates is valid JSON. Using `json_schema` is # preferred for models that support it. # - # @return [OpenAI::Models::ResponseFormatText, OpenAI::Models::Responses::ResponseFormatTextJSONSchemaConfig, OpenAI::Models::ResponseFormatJSONObject, nil] - optional :format_, union: -> { OpenAI::Models::Responses::ResponseFormatTextConfig }, api_name: :format + # @return [OpenAI::ResponseFormatText, OpenAI::Responses::ResponseFormatTextJSONSchemaConfig, OpenAI::ResponseFormatJSONObject, nil] + optional :format_, union: -> { OpenAI::Responses::ResponseFormatTextConfig }, api_name: :format # @!method initialize(format_: nil) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Responses::ResponseTextConfig} for more details. + # {OpenAI::Responses::ResponseTextConfig} for more details. # # Configuration options for a text response from the model. Can be plain text or # structured JSON data. Learn more: @@ -32,7 +32,7 @@ class ResponseTextConfig < OpenAI::Internal::Type::BaseModel # - [Text inputs and outputs](https://platform.openai.com/docs/guides/text) # - [Structured Outputs](https://platform.openai.com/docs/guides/structured-outputs) # - # @param format_ [OpenAI::Models::ResponseFormatText, OpenAI::Models::Responses::ResponseFormatTextJSONSchemaConfig, OpenAI::Models::ResponseFormatJSONObject] An object specifying the format that the model must output. ... + # @param format_ [OpenAI::ResponseFormatText, OpenAI::Responses::ResponseFormatTextJSONSchemaConfig, OpenAI::ResponseFormatJSONObject] An object specifying the format that the model must output. end end end diff --git a/lib/openai/models/responses/response_text_delta_event.rb b/lib/openai/models/responses/response_text_delta_event.rb index fce5e269..48c639ef 100644 --- a/lib/openai/models/responses/response_text_delta_event.rb +++ b/lib/openai/models/responses/response_text_delta_event.rb @@ -36,19 +36,19 @@ class ResponseTextDeltaEvent < OpenAI::Internal::Type::BaseModel # @!method initialize(content_index:, delta:, item_id:, output_index:, type: :"response.output_text.delta") # Some parameter documentations has been truncated, see - # {OpenAI::Models::Responses::ResponseTextDeltaEvent} for more details. + # {OpenAI::Responses::ResponseTextDeltaEvent} for more details. # # Emitted when there is an additional text delta. # - # @param content_index [Integer] The index of the content part that the text delta was added to. ... + # @param content_index [Integer] The index of the content part that the text delta was added to. # - # @param delta [String] The text delta that was added. ... + # @param delta [String] The text delta that was added. # - # @param item_id [String] The ID of the output item that the text delta was added to. ... + # @param item_id [String] The ID of the output item that the text delta was added to. # - # @param output_index [Integer] The index of the output item that the text delta was added to. ... + # @param output_index [Integer] The index of the output item that the text delta was added to. # - # @param type [Symbol, :"response.output_text.delta"] The type of the event. Always `response.output_text.delta`. ... + # @param type [Symbol, :"response.output_text.delta"] The type of the event. Always `response.output_text.delta`. end end end diff --git a/lib/openai/models/responses/response_text_done_event.rb b/lib/openai/models/responses/response_text_done_event.rb index 15bd9abc..7b8921d4 100644 --- a/lib/openai/models/responses/response_text_done_event.rb +++ b/lib/openai/models/responses/response_text_done_event.rb @@ -36,19 +36,19 @@ class ResponseTextDoneEvent < OpenAI::Internal::Type::BaseModel # @!method initialize(content_index:, item_id:, output_index:, text:, type: :"response.output_text.done") # Some parameter documentations has been truncated, see - # {OpenAI::Models::Responses::ResponseTextDoneEvent} for more details. + # {OpenAI::Responses::ResponseTextDoneEvent} for more details. # # Emitted when text content is finalized. # - # @param content_index [Integer] The index of the content part that the text content is finalized. ... + # @param content_index [Integer] The index of the content part that the text content is finalized. # - # @param item_id [String] The ID of the output item that the text content is finalized. ... + # @param item_id [String] The ID of the output item that the text content is finalized. # - # @param output_index [Integer] The index of the output item that the text content is finalized. ... + # @param output_index [Integer] The index of the output item that the text content is finalized. # - # @param text [String] The text content that is finalized. ... + # @param text [String] The text content that is finalized. # - # @param type [Symbol, :"response.output_text.done"] The type of the event. Always `response.output_text.done`. ... + # @param type [Symbol, :"response.output_text.done"] The type of the event. Always `response.output_text.done`. end end end diff --git a/lib/openai/models/responses/response_usage.rb b/lib/openai/models/responses/response_usage.rb index 93b1917a..09831893 100644 --- a/lib/openai/models/responses/response_usage.rb +++ b/lib/openai/models/responses/response_usage.rb @@ -13,8 +13,8 @@ class ResponseUsage < OpenAI::Internal::Type::BaseModel # @!attribute input_tokens_details # A detailed breakdown of the input tokens. # - # @return [OpenAI::Models::Responses::ResponseUsage::InputTokensDetails] - required :input_tokens_details, -> { OpenAI::Models::Responses::ResponseUsage::InputTokensDetails } + # @return [OpenAI::Responses::ResponseUsage::InputTokensDetails] + required :input_tokens_details, -> { OpenAI::Responses::ResponseUsage::InputTokensDetails } # @!attribute output_tokens # The number of output tokens. @@ -25,8 +25,8 @@ class ResponseUsage < OpenAI::Internal::Type::BaseModel # @!attribute output_tokens_details # A detailed breakdown of the output tokens. # - # @return [OpenAI::Models::Responses::ResponseUsage::OutputTokensDetails] - required :output_tokens_details, -> { OpenAI::Models::Responses::ResponseUsage::OutputTokensDetails } + # @return [OpenAI::Responses::ResponseUsage::OutputTokensDetails] + required :output_tokens_details, -> { OpenAI::Responses::ResponseUsage::OutputTokensDetails } # @!attribute total_tokens # The total number of tokens used. @@ -40,15 +40,15 @@ class ResponseUsage < OpenAI::Internal::Type::BaseModel # # @param input_tokens [Integer] The number of input tokens. # - # @param input_tokens_details [OpenAI::Models::Responses::ResponseUsage::InputTokensDetails] A detailed breakdown of the input tokens. + # @param input_tokens_details [OpenAI::Responses::ResponseUsage::InputTokensDetails] A detailed breakdown of the input tokens. # # @param output_tokens [Integer] The number of output tokens. # - # @param output_tokens_details [OpenAI::Models::Responses::ResponseUsage::OutputTokensDetails] A detailed breakdown of the output tokens. + # @param output_tokens_details [OpenAI::Responses::ResponseUsage::OutputTokensDetails] A detailed breakdown of the output tokens. # # @param total_tokens [Integer] The total number of tokens used. - # @see OpenAI::Models::Responses::ResponseUsage#input_tokens_details + # @see OpenAI::Responses::ResponseUsage#input_tokens_details class InputTokensDetails < OpenAI::Internal::Type::BaseModel # @!attribute cached_tokens # The number of tokens that were retrieved from the cache. @@ -59,14 +59,14 @@ class InputTokensDetails < OpenAI::Internal::Type::BaseModel # @!method initialize(cached_tokens:) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Responses::ResponseUsage::InputTokensDetails} for more details. + # {OpenAI::Responses::ResponseUsage::InputTokensDetails} for more details. # # A detailed breakdown of the input tokens. # - # @param cached_tokens [Integer] The number of tokens that were retrieved from the cache. ... + # @param cached_tokens [Integer] The number of tokens that were retrieved from the cache. end - # @see OpenAI::Models::Responses::ResponseUsage#output_tokens_details + # @see OpenAI::Responses::ResponseUsage#output_tokens_details class OutputTokensDetails < OpenAI::Internal::Type::BaseModel # @!attribute reasoning_tokens # The number of reasoning tokens. diff --git a/lib/openai/models/responses/response_web_search_call_completed_event.rb b/lib/openai/models/responses/response_web_search_call_completed_event.rb index 5a94a581..4a8461ac 100644 --- a/lib/openai/models/responses/response_web_search_call_completed_event.rb +++ b/lib/openai/models/responses/response_web_search_call_completed_event.rb @@ -24,16 +24,15 @@ class ResponseWebSearchCallCompletedEvent < OpenAI::Internal::Type::BaseModel # @!method initialize(item_id:, output_index:, type: :"response.web_search_call.completed") # Some parameter documentations has been truncated, see - # {OpenAI::Models::Responses::ResponseWebSearchCallCompletedEvent} for more - # details. + # {OpenAI::Responses::ResponseWebSearchCallCompletedEvent} for more details. # # Emitted when a web search call is completed. # - # @param item_id [String] Unique ID for the output item associated with the web search call. ... + # @param item_id [String] Unique ID for the output item associated with the web search call. # - # @param output_index [Integer] The index of the output item that the web search call is associated with. ... + # @param output_index [Integer] The index of the output item that the web search call is associated with. # - # @param type [Symbol, :"response.web_search_call.completed"] The type of the event. Always `response.web_search_call.completed`. ... + # @param type [Symbol, :"response.web_search_call.completed"] The type of the event. Always `response.web_search_call.completed`. end end end diff --git a/lib/openai/models/responses/response_web_search_call_in_progress_event.rb b/lib/openai/models/responses/response_web_search_call_in_progress_event.rb index 2c2c18c0..a930db0f 100644 --- a/lib/openai/models/responses/response_web_search_call_in_progress_event.rb +++ b/lib/openai/models/responses/response_web_search_call_in_progress_event.rb @@ -24,16 +24,15 @@ class ResponseWebSearchCallInProgressEvent < OpenAI::Internal::Type::BaseModel # @!method initialize(item_id:, output_index:, type: :"response.web_search_call.in_progress") # Some parameter documentations has been truncated, see - # {OpenAI::Models::Responses::ResponseWebSearchCallInProgressEvent} for more - # details. + # {OpenAI::Responses::ResponseWebSearchCallInProgressEvent} for more details. # # Emitted when a web search call is initiated. # - # @param item_id [String] Unique ID for the output item associated with the web search call. ... + # @param item_id [String] Unique ID for the output item associated with the web search call. # - # @param output_index [Integer] The index of the output item that the web search call is associated with. ... + # @param output_index [Integer] The index of the output item that the web search call is associated with. # - # @param type [Symbol, :"response.web_search_call.in_progress"] The type of the event. Always `response.web_search_call.in_progress`. ... + # @param type [Symbol, :"response.web_search_call.in_progress"] The type of the event. Always `response.web_search_call.in_progress`. end end end diff --git a/lib/openai/models/responses/response_web_search_call_searching_event.rb b/lib/openai/models/responses/response_web_search_call_searching_event.rb index c23044cb..31a1e8c1 100644 --- a/lib/openai/models/responses/response_web_search_call_searching_event.rb +++ b/lib/openai/models/responses/response_web_search_call_searching_event.rb @@ -24,16 +24,15 @@ class ResponseWebSearchCallSearchingEvent < OpenAI::Internal::Type::BaseModel # @!method initialize(item_id:, output_index:, type: :"response.web_search_call.searching") # Some parameter documentations has been truncated, see - # {OpenAI::Models::Responses::ResponseWebSearchCallSearchingEvent} for more - # details. + # {OpenAI::Responses::ResponseWebSearchCallSearchingEvent} for more details. # # Emitted when a web search call is executing. # - # @param item_id [String] Unique ID for the output item associated with the web search call. ... + # @param item_id [String] Unique ID for the output item associated with the web search call. # - # @param output_index [Integer] The index of the output item that the web search call is associated with. ... + # @param output_index [Integer] The index of the output item that the web search call is associated with. # - # @param type [Symbol, :"response.web_search_call.searching"] The type of the event. Always `response.web_search_call.searching`. ... + # @param type [Symbol, :"response.web_search_call.searching"] The type of the event. Always `response.web_search_call.searching`. end end end diff --git a/lib/openai/models/responses/tool.rb b/lib/openai/models/responses/tool.rb index 5c45cef7..97939459 100644 --- a/lib/openai/models/responses/tool.rb +++ b/lib/openai/models/responses/tool.rb @@ -10,19 +10,19 @@ module Tool discriminator :type # A tool that searches for relevant content from uploaded files. Learn more about the [file search tool](https://platform.openai.com/docs/guides/tools-file-search). - variant :file_search, -> { OpenAI::Models::Responses::FileSearchTool } + variant :file_search, -> { OpenAI::Responses::FileSearchTool } # Defines a function in your own code the model can choose to call. Learn more about [function calling](https://platform.openai.com/docs/guides/function-calling). - variant :function, -> { OpenAI::Models::Responses::FunctionTool } + variant :function, -> { OpenAI::Responses::FunctionTool } # A tool that controls a virtual computer. Learn more about the [computer tool](https://platform.openai.com/docs/guides/tools-computer-use). - variant :computer_use_preview, -> { OpenAI::Models::Responses::ComputerTool } + variant :computer_use_preview, -> { OpenAI::Responses::ComputerTool } # This tool searches the web for relevant results to use in a response. Learn more about the [web search tool](https://platform.openai.com/docs/guides/tools-web-search). - variant -> { OpenAI::Models::Responses::WebSearchTool } + variant -> { OpenAI::Responses::WebSearchTool } # @!method self.variants - # @return [Array(OpenAI::Models::Responses::FileSearchTool, OpenAI::Models::Responses::FunctionTool, OpenAI::Models::Responses::ComputerTool, OpenAI::Models::Responses::WebSearchTool)] + # @return [Array(OpenAI::Responses::FileSearchTool, OpenAI::Responses::FunctionTool, OpenAI::Responses::ComputerTool, OpenAI::Responses::WebSearchTool)] end end end diff --git a/lib/openai/models/responses/tool_choice_types.rb b/lib/openai/models/responses/tool_choice_types.rb index 6ecec732..504daa0a 100644 --- a/lib/openai/models/responses/tool_choice_types.rb +++ b/lib/openai/models/responses/tool_choice_types.rb @@ -14,17 +14,17 @@ class ToolChoiceTypes < OpenAI::Internal::Type::BaseModel # - `web_search_preview` # - `computer_use_preview` # - # @return [Symbol, OpenAI::Models::Responses::ToolChoiceTypes::Type] - required :type, enum: -> { OpenAI::Models::Responses::ToolChoiceTypes::Type } + # @return [Symbol, OpenAI::Responses::ToolChoiceTypes::Type] + required :type, enum: -> { OpenAI::Responses::ToolChoiceTypes::Type } # @!method initialize(type:) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Responses::ToolChoiceTypes} for more details. + # {OpenAI::Responses::ToolChoiceTypes} for more details. # # Indicates that the model should use a built-in tool to generate a response. # [Learn more about built-in tools](https://platform.openai.com/docs/guides/tools). # - # @param type [Symbol, OpenAI::Models::Responses::ToolChoiceTypes::Type] The type of hosted tool the model should to use. Learn more about ... + # @param type [Symbol, OpenAI::Responses::ToolChoiceTypes::Type] The type of hosted tool the model should to use. Learn more about # The type of hosted tool the model should to use. Learn more about # [built-in tools](https://platform.openai.com/docs/guides/tools). @@ -35,7 +35,7 @@ class ToolChoiceTypes < OpenAI::Internal::Type::BaseModel # - `web_search_preview` # - `computer_use_preview` # - # @see OpenAI::Models::Responses::ToolChoiceTypes#type + # @see OpenAI::Responses::ToolChoiceTypes#type module Type extend OpenAI::Internal::Type::Enum diff --git a/lib/openai/models/responses/web_search_tool.rb b/lib/openai/models/responses/web_search_tool.rb index 04073cbc..37dd39fe 100644 --- a/lib/openai/models/responses/web_search_tool.rb +++ b/lib/openai/models/responses/web_search_tool.rb @@ -8,42 +8,40 @@ class WebSearchTool < OpenAI::Internal::Type::BaseModel # The type of the web search tool. One of `web_search_preview` or # `web_search_preview_2025_03_11`. # - # @return [Symbol, OpenAI::Models::Responses::WebSearchTool::Type] - required :type, enum: -> { OpenAI::Models::Responses::WebSearchTool::Type } + # @return [Symbol, OpenAI::Responses::WebSearchTool::Type] + required :type, enum: -> { OpenAI::Responses::WebSearchTool::Type } # @!attribute search_context_size # High level guidance for the amount of context window space to use for the # search. One of `low`, `medium`, or `high`. `medium` is the default. # - # @return [Symbol, OpenAI::Models::Responses::WebSearchTool::SearchContextSize, nil] - optional :search_context_size, enum: -> { OpenAI::Models::Responses::WebSearchTool::SearchContextSize } + # @return [Symbol, OpenAI::Responses::WebSearchTool::SearchContextSize, nil] + optional :search_context_size, enum: -> { OpenAI::Responses::WebSearchTool::SearchContextSize } # @!attribute user_location # The user's location. # - # @return [OpenAI::Models::Responses::WebSearchTool::UserLocation, nil] - optional :user_location, -> { OpenAI::Models::Responses::WebSearchTool::UserLocation }, nil?: true + # @return [OpenAI::Responses::WebSearchTool::UserLocation, nil] + optional :user_location, -> { OpenAI::Responses::WebSearchTool::UserLocation }, nil?: true # @!method initialize(type:, search_context_size: nil, user_location: nil) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Responses::WebSearchTool} for more details. + # {OpenAI::Responses::WebSearchTool} for more details. # # This tool searches the web for relevant results to use in a response. Learn more # about the # [web search tool](https://platform.openai.com/docs/guides/tools-web-search). # - # @param type [Symbol, OpenAI::Models::Responses::WebSearchTool::Type] The type of the web search tool. One of `web_search_preview` or `web_search_prev - # ... + # @param type [Symbol, OpenAI::Responses::WebSearchTool::Type] The type of the web search tool. One of `web_search_preview` or `web_search_prev # - # @param search_context_size [Symbol, OpenAI::Models::Responses::WebSearchTool::SearchContextSize] High level guidance for the amount of context window space to use for the search - # ... + # @param search_context_size [Symbol, OpenAI::Responses::WebSearchTool::SearchContextSize] High level guidance for the amount of context window space to use for the search # - # @param user_location [OpenAI::Models::Responses::WebSearchTool::UserLocation, nil] The user's location. + # @param user_location [OpenAI::Responses::WebSearchTool::UserLocation, nil] The user's location. # The type of the web search tool. One of `web_search_preview` or # `web_search_preview_2025_03_11`. # - # @see OpenAI::Models::Responses::WebSearchTool#type + # @see OpenAI::Responses::WebSearchTool#type module Type extend OpenAI::Internal::Type::Enum @@ -57,7 +55,7 @@ module Type # High level guidance for the amount of context window space to use for the # search. One of `low`, `medium`, or `high`. `medium` is the default. # - # @see OpenAI::Models::Responses::WebSearchTool#search_context_size + # @see OpenAI::Responses::WebSearchTool#search_context_size module SearchContextSize extend OpenAI::Internal::Type::Enum @@ -69,7 +67,7 @@ module SearchContextSize # @return [Array] end - # @see OpenAI::Models::Responses::WebSearchTool#user_location + # @see OpenAI::Responses::WebSearchTool#user_location class UserLocation < OpenAI::Internal::Type::BaseModel # @!attribute type # The type of location approximation. Always `approximate`. @@ -105,19 +103,17 @@ class UserLocation < OpenAI::Internal::Type::BaseModel # @!method initialize(city: nil, country: nil, region: nil, timezone: nil, type: :approximate) # Some parameter documentations has been truncated, see - # {OpenAI::Models::Responses::WebSearchTool::UserLocation} for more details. + # {OpenAI::Responses::WebSearchTool::UserLocation} for more details. # # The user's location. # # @param city [String, nil] Free text input for the city of the user, e.g. `San Francisco`. # # @param country [String, nil] The two-letter [ISO country code](https://en.wikipedia.org/wiki/ISO_3166-1) of t - # ... # # @param region [String, nil] Free text input for the region of the user, e.g. `California`. # # @param timezone [String, nil] The [IANA timezone](https://timeapi.io/documentation/iana-timezones) of the user - # ... # # @param type [Symbol, :approximate] The type of location approximation. Always `approximate`. end diff --git a/lib/openai/models/responses_model.rb b/lib/openai/models/responses_model.rb index 5984103a..5634269f 100644 --- a/lib/openai/models/responses_model.rb +++ b/lib/openai/models/responses_model.rb @@ -7,9 +7,9 @@ module ResponsesModel variant String - variant enum: -> { OpenAI::Models::ChatModel } + variant enum: -> { OpenAI::ChatModel } - variant enum: -> { OpenAI::Models::ResponsesModel::ResponsesOnlyModel } + variant enum: -> { OpenAI::ResponsesModel::ResponsesOnlyModel } module ResponsesOnlyModel extend OpenAI::Internal::Type::Enum @@ -24,7 +24,7 @@ module ResponsesOnlyModel end # @!method self.variants - # @return [Array(String, Symbol, OpenAI::Models::ChatModel, Symbol, OpenAI::Models::ResponsesModel::ResponsesOnlyModel)] + # @return [Array(String, Symbol, OpenAI::ChatModel, Symbol, OpenAI::ResponsesModel::ResponsesOnlyModel)] end end end diff --git a/lib/openai/models/static_file_chunking_strategy.rb b/lib/openai/models/static_file_chunking_strategy.rb index 46682393..30388ebb 100644 --- a/lib/openai/models/static_file_chunking_strategy.rb +++ b/lib/openai/models/static_file_chunking_strategy.rb @@ -20,13 +20,11 @@ class StaticFileChunkingStrategy < OpenAI::Internal::Type::BaseModel # @!method initialize(chunk_overlap_tokens:, max_chunk_size_tokens:) # Some parameter documentations has been truncated, see - # {OpenAI::Models::StaticFileChunkingStrategy} for more details. + # {OpenAI::StaticFileChunkingStrategy} for more details. # # @param chunk_overlap_tokens [Integer] The number of tokens that overlap between chunks. The default value is `400`. - # ... # # @param max_chunk_size_tokens [Integer] The maximum number of tokens in each chunk. The default value is `800`. The mini - # ... end end end diff --git a/lib/openai/models/static_file_chunking_strategy_object.rb b/lib/openai/models/static_file_chunking_strategy_object.rb index 68d0d88e..2169aa9f 100644 --- a/lib/openai/models/static_file_chunking_strategy_object.rb +++ b/lib/openai/models/static_file_chunking_strategy_object.rb @@ -5,8 +5,8 @@ module Models class StaticFileChunkingStrategyObject < OpenAI::Internal::Type::BaseModel # @!attribute static # - # @return [OpenAI::Models::StaticFileChunkingStrategy] - required :static, -> { OpenAI::Models::StaticFileChunkingStrategy } + # @return [OpenAI::StaticFileChunkingStrategy] + required :static, -> { OpenAI::StaticFileChunkingStrategy } # @!attribute type # Always `static`. @@ -15,7 +15,7 @@ class StaticFileChunkingStrategyObject < OpenAI::Internal::Type::BaseModel required :type, const: :static # @!method initialize(static:, type: :static) - # @param static [OpenAI::Models::StaticFileChunkingStrategy] + # @param static [OpenAI::StaticFileChunkingStrategy] # # @param type [Symbol, :static] Always `static`. end diff --git a/lib/openai/models/static_file_chunking_strategy_object_param.rb b/lib/openai/models/static_file_chunking_strategy_object_param.rb index f37c6aa6..304bacb5 100644 --- a/lib/openai/models/static_file_chunking_strategy_object_param.rb +++ b/lib/openai/models/static_file_chunking_strategy_object_param.rb @@ -5,8 +5,8 @@ module Models class StaticFileChunkingStrategyObjectParam < OpenAI::Internal::Type::BaseModel # @!attribute static # - # @return [OpenAI::Models::StaticFileChunkingStrategy] - required :static, -> { OpenAI::Models::StaticFileChunkingStrategy } + # @return [OpenAI::StaticFileChunkingStrategy] + required :static, -> { OpenAI::StaticFileChunkingStrategy } # @!attribute type # Always `static`. @@ -17,7 +17,7 @@ class StaticFileChunkingStrategyObjectParam < OpenAI::Internal::Type::BaseModel # @!method initialize(static:, type: :static) # Customize your own chunking strategy by setting chunk size and chunk overlap. # - # @param static [OpenAI::Models::StaticFileChunkingStrategy] + # @param static [OpenAI::StaticFileChunkingStrategy] # # @param type [Symbol, :static] Always `static`. end diff --git a/lib/openai/models/upload.rb b/lib/openai/models/upload.rb index 39d5043e..8fe51192 100644 --- a/lib/openai/models/upload.rb +++ b/lib/openai/models/upload.rb @@ -51,18 +51,18 @@ class Upload < OpenAI::Internal::Type::BaseModel # @!attribute status # The status of the Upload. # - # @return [Symbol, OpenAI::Models::Upload::Status] - required :status, enum: -> { OpenAI::Models::Upload::Status } + # @return [Symbol, OpenAI::Upload::Status] + required :status, enum: -> { OpenAI::Upload::Status } # @!attribute file # The `File` object represents a document that has been uploaded to OpenAI. # - # @return [OpenAI::Models::FileObject, nil] - optional :file, -> { OpenAI::Models::FileObject }, nil?: true + # @return [OpenAI::FileObject, nil] + optional :file, -> { OpenAI::FileObject }, nil?: true # @!method initialize(id:, bytes:, created_at:, expires_at:, filename:, purpose:, status:, file: nil, object: :upload) - # Some parameter documentations has been truncated, see {OpenAI::Models::Upload} - # for more details. + # Some parameter documentations has been truncated, see {OpenAI::Upload} for more + # details. # # The Upload object can accept byte chunks in the form of Parts. # @@ -77,17 +77,16 @@ class Upload < OpenAI::Internal::Type::BaseModel # @param filename [String] The name of the file to be uploaded. # # @param purpose [String] The intended purpose of the file. [Please refer here](https://platform.openai.co - # ... # - # @param status [Symbol, OpenAI::Models::Upload::Status] The status of the Upload. + # @param status [Symbol, OpenAI::Upload::Status] The status of the Upload. # - # @param file [OpenAI::Models::FileObject, nil] The `File` object represents a document that has been uploaded to OpenAI. + # @param file [OpenAI::FileObject, nil] The `File` object represents a document that has been uploaded to OpenAI. # # @param object [Symbol, :upload] The object type, which is always "upload". # The status of the Upload. # - # @see OpenAI::Models::Upload#status + # @see OpenAI::Upload#status module Status extend OpenAI::Internal::Type::Enum diff --git a/lib/openai/models/upload_complete_params.rb b/lib/openai/models/upload_complete_params.rb index 3c898f46..2d67440d 100644 --- a/lib/openai/models/upload_complete_params.rb +++ b/lib/openai/models/upload_complete_params.rb @@ -24,10 +24,9 @@ class UploadCompleteParams < OpenAI::Internal::Type::BaseModel # Some parameter documentations has been truncated, see # {OpenAI::Models::UploadCompleteParams} for more details. # - # @param part_ids [Array] The ordered list of Part IDs. ... + # @param part_ids [Array] The ordered list of Part IDs. # # @param md5 [String] The optional md5 checksum for the file contents to verify if the bytes uploaded - # ... # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] end diff --git a/lib/openai/models/upload_create_params.rb b/lib/openai/models/upload_create_params.rb index cafa9448..13caaed5 100644 --- a/lib/openai/models/upload_create_params.rb +++ b/lib/openai/models/upload_create_params.rb @@ -34,20 +34,20 @@ class UploadCreateParams < OpenAI::Internal::Type::BaseModel # See the # [documentation on File purposes](https://platform.openai.com/docs/api-reference/files/create#files-create-purpose). # - # @return [Symbol, OpenAI::Models::FilePurpose] - required :purpose, enum: -> { OpenAI::Models::FilePurpose } + # @return [Symbol, OpenAI::FilePurpose] + required :purpose, enum: -> { OpenAI::FilePurpose } # @!method initialize(bytes:, filename:, mime_type:, purpose:, request_options: {}) # Some parameter documentations has been truncated, see # {OpenAI::Models::UploadCreateParams} for more details. # - # @param bytes [Integer] The number of bytes in the file you are uploading. ... + # @param bytes [Integer] The number of bytes in the file you are uploading. # - # @param filename [String] The name of the file to upload. ... + # @param filename [String] The name of the file to upload. # - # @param mime_type [String] The MIME type of the file. ... + # @param mime_type [String] The MIME type of the file. # - # @param purpose [Symbol, OpenAI::Models::FilePurpose] The intended purpose of the uploaded file. ... + # @param purpose [Symbol, OpenAI::FilePurpose] The intended purpose of the uploaded file. # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] end diff --git a/lib/openai/models/uploads/part_create_params.rb b/lib/openai/models/uploads/part_create_params.rb index df8520b6..1ed39993 100644 --- a/lib/openai/models/uploads/part_create_params.rb +++ b/lib/openai/models/uploads/part_create_params.rb @@ -18,7 +18,7 @@ class PartCreateParams < OpenAI::Internal::Type::BaseModel # Some parameter documentations has been truncated, see # {OpenAI::Models::Uploads::PartCreateParams} for more details. # - # @param data [Pathname, StringIO, IO, OpenAI::FilePart] The chunk of bytes for this Part. ... + # @param data [Pathname, StringIO, IO, OpenAI::FilePart] The chunk of bytes for this Part. # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] end diff --git a/lib/openai/models/vector_store.rb b/lib/openai/models/vector_store.rb index 285ac28c..48c1a984 100644 --- a/lib/openai/models/vector_store.rb +++ b/lib/openai/models/vector_store.rb @@ -18,8 +18,8 @@ class VectorStore < OpenAI::Internal::Type::BaseModel # @!attribute file_counts # - # @return [OpenAI::Models::VectorStore::FileCounts] - required :file_counts, -> { OpenAI::Models::VectorStore::FileCounts } + # @return [OpenAI::VectorStore::FileCounts] + required :file_counts, -> { OpenAI::VectorStore::FileCounts } # @!attribute last_active_at # The Unix timestamp (in seconds) for when the vector store was last active. @@ -55,8 +55,8 @@ class VectorStore < OpenAI::Internal::Type::BaseModel # `completed`. A status of `completed` indicates that the vector store is ready # for use. # - # @return [Symbol, OpenAI::Models::VectorStore::Status] - required :status, enum: -> { OpenAI::Models::VectorStore::Status } + # @return [Symbol, OpenAI::VectorStore::Status] + required :status, enum: -> { OpenAI::VectorStore::Status } # @!attribute usage_bytes # The total number of bytes used by the files in the vector store. @@ -67,8 +67,8 @@ class VectorStore < OpenAI::Internal::Type::BaseModel # @!attribute expires_after # The expiration policy for a vector store. # - # @return [OpenAI::Models::VectorStore::ExpiresAfter, nil] - optional :expires_after, -> { OpenAI::Models::VectorStore::ExpiresAfter } + # @return [OpenAI::VectorStore::ExpiresAfter, nil] + optional :expires_after, -> { OpenAI::VectorStore::ExpiresAfter } # @!attribute expires_at # The Unix timestamp (in seconds) for when the vector store will expire. @@ -77,8 +77,8 @@ class VectorStore < OpenAI::Internal::Type::BaseModel optional :expires_at, Integer, nil?: true # @!method initialize(id:, created_at:, file_counts:, last_active_at:, metadata:, name:, status:, usage_bytes:, expires_after: nil, expires_at: nil, object: :vector_store) - # Some parameter documentations has been truncated, see - # {OpenAI::Models::VectorStore} for more details. + # Some parameter documentations has been truncated, see {OpenAI::VectorStore} for + # more details. # # A vector store is a collection of processed files can be used by the # `file_search` tool. @@ -87,26 +87,25 @@ class VectorStore < OpenAI::Internal::Type::BaseModel # # @param created_at [Integer] The Unix timestamp (in seconds) for when the vector store was created. # - # @param file_counts [OpenAI::Models::VectorStore::FileCounts] + # @param file_counts [OpenAI::VectorStore::FileCounts] # # @param last_active_at [Integer, nil] The Unix timestamp (in seconds) for when the vector store was last active. # - # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be # # @param name [String] The name of the vector store. # - # @param status [Symbol, OpenAI::Models::VectorStore::Status] The status of the vector store, which can be either `expired`, `in_progress`, or - # ... + # @param status [Symbol, OpenAI::VectorStore::Status] The status of the vector store, which can be either `expired`, `in_progress`, or # # @param usage_bytes [Integer] The total number of bytes used by the files in the vector store. # - # @param expires_after [OpenAI::Models::VectorStore::ExpiresAfter] The expiration policy for a vector store. + # @param expires_after [OpenAI::VectorStore::ExpiresAfter] The expiration policy for a vector store. # # @param expires_at [Integer, nil] The Unix timestamp (in seconds) for when the vector store will expire. # # @param object [Symbol, :vector_store] The object type, which is always `vector_store`. - # @see OpenAI::Models::VectorStore#file_counts + # @see OpenAI::VectorStore#file_counts class FileCounts < OpenAI::Internal::Type::BaseModel # @!attribute cancelled # The number of files that were cancelled. @@ -154,7 +153,7 @@ class FileCounts < OpenAI::Internal::Type::BaseModel # `completed`. A status of `completed` indicates that the vector store is ready # for use. # - # @see OpenAI::Models::VectorStore#status + # @see OpenAI::VectorStore#status module Status extend OpenAI::Internal::Type::Enum @@ -166,7 +165,7 @@ module Status # @return [Array] end - # @see OpenAI::Models::VectorStore#expires_after + # @see OpenAI::VectorStore#expires_after class ExpiresAfter < OpenAI::Internal::Type::BaseModel # @!attribute anchor # Anchor timestamp after which the expiration policy applies. Supported anchors: @@ -183,14 +182,13 @@ class ExpiresAfter < OpenAI::Internal::Type::BaseModel # @!method initialize(days:, anchor: :last_active_at) # Some parameter documentations has been truncated, see - # {OpenAI::Models::VectorStore::ExpiresAfter} for more details. + # {OpenAI::VectorStore::ExpiresAfter} for more details. # # The expiration policy for a vector store. # # @param days [Integer] The number of days after the anchor time that the vector store will expire. # # @param anchor [Symbol, :last_active_at] Anchor timestamp after which the expiration policy applies. Supported anchors: ` - # ... end end end diff --git a/lib/openai/models/vector_store_create_params.rb b/lib/openai/models/vector_store_create_params.rb index acbd89a2..a4babcf4 100644 --- a/lib/openai/models/vector_store_create_params.rb +++ b/lib/openai/models/vector_store_create_params.rb @@ -11,14 +11,14 @@ class VectorStoreCreateParams < OpenAI::Internal::Type::BaseModel # The chunking strategy used to chunk the file(s). If not set, will use the `auto` # strategy. Only applicable if `file_ids` is non-empty. # - # @return [OpenAI::Models::AutoFileChunkingStrategyParam, OpenAI::Models::StaticFileChunkingStrategyObjectParam, nil] - optional :chunking_strategy, union: -> { OpenAI::Models::FileChunkingStrategyParam } + # @return [OpenAI::AutoFileChunkingStrategyParam, OpenAI::StaticFileChunkingStrategyObjectParam, nil] + optional :chunking_strategy, union: -> { OpenAI::FileChunkingStrategyParam } # @!attribute expires_after # The expiration policy for a vector store. # - # @return [OpenAI::Models::VectorStoreCreateParams::ExpiresAfter, nil] - optional :expires_after, -> { OpenAI::Models::VectorStoreCreateParams::ExpiresAfter } + # @return [OpenAI::VectorStoreCreateParams::ExpiresAfter, nil] + optional :expires_after, -> { OpenAI::VectorStoreCreateParams::ExpiresAfter } # @!attribute file_ids # A list of [File](https://platform.openai.com/docs/api-reference/files) IDs that @@ -49,15 +49,13 @@ class VectorStoreCreateParams < OpenAI::Internal::Type::BaseModel # Some parameter documentations has been truncated, see # {OpenAI::Models::VectorStoreCreateParams} for more details. # - # @param chunking_strategy [OpenAI::Models::AutoFileChunkingStrategyParam, OpenAI::Models::StaticFileChunkingStrategyObjectParam] The chunking strategy used to chunk the file(s). If not set, will use the `auto` - # ... + # @param chunking_strategy [OpenAI::AutoFileChunkingStrategyParam, OpenAI::StaticFileChunkingStrategyObjectParam] The chunking strategy used to chunk the file(s). If not set, will use the `auto` # - # @param expires_after [OpenAI::Models::VectorStoreCreateParams::ExpiresAfter] The expiration policy for a vector store. + # @param expires_after [OpenAI::VectorStoreCreateParams::ExpiresAfter] The expiration policy for a vector store. # # @param file_ids [Array] A list of [File](https://platform.openai.com/docs/api-reference/files) IDs that - # ... # - # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be # # @param name [String] The name of the vector store. # @@ -79,14 +77,13 @@ class ExpiresAfter < OpenAI::Internal::Type::BaseModel # @!method initialize(days:, anchor: :last_active_at) # Some parameter documentations has been truncated, see - # {OpenAI::Models::VectorStoreCreateParams::ExpiresAfter} for more details. + # {OpenAI::VectorStoreCreateParams::ExpiresAfter} for more details. # # The expiration policy for a vector store. # # @param days [Integer] The number of days after the anchor time that the vector store will expire. # # @param anchor [Symbol, :last_active_at] Anchor timestamp after which the expiration policy applies. Supported anchors: ` - # ... end end end diff --git a/lib/openai/models/vector_store_list_params.rb b/lib/openai/models/vector_store_list_params.rb index 9a7d787d..40712974 100644 --- a/lib/openai/models/vector_store_list_params.rb +++ b/lib/openai/models/vector_store_list_params.rb @@ -36,24 +36,20 @@ class VectorStoreListParams < OpenAI::Internal::Type::BaseModel # Sort order by the `created_at` timestamp of the objects. `asc` for ascending # order and `desc` for descending order. # - # @return [Symbol, OpenAI::Models::VectorStoreListParams::Order, nil] - optional :order, enum: -> { OpenAI::Models::VectorStoreListParams::Order } + # @return [Symbol, OpenAI::VectorStoreListParams::Order, nil] + optional :order, enum: -> { OpenAI::VectorStoreListParams::Order } # @!method initialize(after: nil, before: nil, limit: nil, order: nil, request_options: {}) # Some parameter documentations has been truncated, see # {OpenAI::Models::VectorStoreListParams} for more details. # # @param after [String] A cursor for use in pagination. `after` is an object ID that defines your place - # ... # # @param before [String] A cursor for use in pagination. `before` is an object ID that defines your place - # ... # # @param limit [Integer] A limit on the number of objects to be returned. Limit can range between 1 and 1 - # ... # - # @param order [Symbol, OpenAI::Models::VectorStoreListParams::Order] Sort order by the `created_at` timestamp of the objects. `asc` for ascending ord - # ... + # @param order [Symbol, OpenAI::VectorStoreListParams::Order] Sort order by the `created_at` timestamp of the objects. `asc` for ascending ord # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] diff --git a/lib/openai/models/vector_store_search_params.rb b/lib/openai/models/vector_store_search_params.rb index 17447b6d..32bf6133 100644 --- a/lib/openai/models/vector_store_search_params.rb +++ b/lib/openai/models/vector_store_search_params.rb @@ -11,13 +11,13 @@ class VectorStoreSearchParams < OpenAI::Internal::Type::BaseModel # A query string for a search # # @return [String, Array] - required :query, union: -> { OpenAI::Models::VectorStoreSearchParams::Query } + required :query, union: -> { OpenAI::VectorStoreSearchParams::Query } # @!attribute filters # A filter to apply based on file attributes. # - # @return [OpenAI::Models::ComparisonFilter, OpenAI::Models::CompoundFilter, nil] - optional :filters, union: -> { OpenAI::Models::VectorStoreSearchParams::Filters } + # @return [OpenAI::ComparisonFilter, OpenAI::CompoundFilter, nil] + optional :filters, union: -> { OpenAI::VectorStoreSearchParams::Filters } # @!attribute max_num_results # The maximum number of results to return. This number should be between 1 and 50 @@ -29,8 +29,8 @@ class VectorStoreSearchParams < OpenAI::Internal::Type::BaseModel # @!attribute ranking_options # Ranking options for search. # - # @return [OpenAI::Models::VectorStoreSearchParams::RankingOptions, nil] - optional :ranking_options, -> { OpenAI::Models::VectorStoreSearchParams::RankingOptions } + # @return [OpenAI::VectorStoreSearchParams::RankingOptions, nil] + optional :ranking_options, -> { OpenAI::VectorStoreSearchParams::RankingOptions } # @!attribute rewrite_query # Whether to rewrite the natural language query for vector search. @@ -44,12 +44,11 @@ class VectorStoreSearchParams < OpenAI::Internal::Type::BaseModel # # @param query [String, Array] A query string for a search # - # @param filters [OpenAI::Models::ComparisonFilter, OpenAI::Models::CompoundFilter] A filter to apply based on file attributes. + # @param filters [OpenAI::ComparisonFilter, OpenAI::CompoundFilter] A filter to apply based on file attributes. # # @param max_num_results [Integer] The maximum number of results to return. This number should be between 1 and 50 - # ... # - # @param ranking_options [OpenAI::Models::VectorStoreSearchParams::RankingOptions] Ranking options for search. + # @param ranking_options [OpenAI::VectorStoreSearchParams::RankingOptions] Ranking options for search. # # @param rewrite_query [Boolean] Whether to rewrite the natural language query for vector search. # @@ -61,7 +60,7 @@ module Query variant String - variant -> { OpenAI::Models::VectorStoreSearchParams::Query::StringArray } + variant -> { OpenAI::VectorStoreSearchParams::Query::StringArray } # @!method self.variants # @return [Array(String, Array)] @@ -75,20 +74,20 @@ module Filters extend OpenAI::Internal::Type::Union # A filter used to compare a specified attribute key to a given value using a defined comparison operation. - variant -> { OpenAI::Models::ComparisonFilter } + variant -> { OpenAI::ComparisonFilter } # Combine multiple filters using `and` or `or`. - variant -> { OpenAI::Models::CompoundFilter } + variant -> { OpenAI::CompoundFilter } # @!method self.variants - # @return [Array(OpenAI::Models::ComparisonFilter, OpenAI::Models::CompoundFilter)] + # @return [Array(OpenAI::ComparisonFilter, OpenAI::CompoundFilter)] end class RankingOptions < OpenAI::Internal::Type::BaseModel # @!attribute ranker # - # @return [Symbol, OpenAI::Models::VectorStoreSearchParams::RankingOptions::Ranker, nil] - optional :ranker, enum: -> { OpenAI::Models::VectorStoreSearchParams::RankingOptions::Ranker } + # @return [Symbol, OpenAI::VectorStoreSearchParams::RankingOptions::Ranker, nil] + optional :ranker, enum: -> { OpenAI::VectorStoreSearchParams::RankingOptions::Ranker } # @!attribute score_threshold # @@ -98,10 +97,10 @@ class RankingOptions < OpenAI::Internal::Type::BaseModel # @!method initialize(ranker: nil, score_threshold: nil) # Ranking options for search. # - # @param ranker [Symbol, OpenAI::Models::VectorStoreSearchParams::RankingOptions::Ranker] + # @param ranker [Symbol, OpenAI::VectorStoreSearchParams::RankingOptions::Ranker] # @param score_threshold [Float] - # @see OpenAI::Models::VectorStoreSearchParams::RankingOptions#ranker + # @see OpenAI::VectorStoreSearchParams::RankingOptions#ranker module Ranker extend OpenAI::Internal::Type::Enum diff --git a/lib/openai/models/vector_store_search_response.rb b/lib/openai/models/vector_store_search_response.rb index 75e2fdb5..5b623829 100644 --- a/lib/openai/models/vector_store_search_response.rb +++ b/lib/openai/models/vector_store_search_response.rb @@ -45,7 +45,7 @@ class VectorStoreSearchResponse < OpenAI::Internal::Type::BaseModel # Some parameter documentations has been truncated, see # {OpenAI::Models::VectorStoreSearchResponse} for more details. # - # @param attributes [Hash{Symbol=>String, Float, Boolean}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # @param attributes [Hash{Symbol=>String, Float, Boolean}, nil] Set of 16 key-value pairs that can be attached to an object. This can be # # @param content [Array] Content chunks from the file. # diff --git a/lib/openai/models/vector_store_update_params.rb b/lib/openai/models/vector_store_update_params.rb index b7d6bd13..9fab30cf 100644 --- a/lib/openai/models/vector_store_update_params.rb +++ b/lib/openai/models/vector_store_update_params.rb @@ -10,8 +10,8 @@ class VectorStoreUpdateParams < OpenAI::Internal::Type::BaseModel # @!attribute expires_after # The expiration policy for a vector store. # - # @return [OpenAI::Models::VectorStoreUpdateParams::ExpiresAfter, nil] - optional :expires_after, -> { OpenAI::Models::VectorStoreUpdateParams::ExpiresAfter }, nil?: true + # @return [OpenAI::VectorStoreUpdateParams::ExpiresAfter, nil] + optional :expires_after, -> { OpenAI::VectorStoreUpdateParams::ExpiresAfter }, nil?: true # @!attribute metadata # Set of 16 key-value pairs that can be attached to an object. This can be useful @@ -34,9 +34,9 @@ class VectorStoreUpdateParams < OpenAI::Internal::Type::BaseModel # Some parameter documentations has been truncated, see # {OpenAI::Models::VectorStoreUpdateParams} for more details. # - # @param expires_after [OpenAI::Models::VectorStoreUpdateParams::ExpiresAfter, nil] The expiration policy for a vector store. + # @param expires_after [OpenAI::VectorStoreUpdateParams::ExpiresAfter, nil] The expiration policy for a vector store. # - # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be # # @param name [String, nil] The name of the vector store. # @@ -58,14 +58,13 @@ class ExpiresAfter < OpenAI::Internal::Type::BaseModel # @!method initialize(days:, anchor: :last_active_at) # Some parameter documentations has been truncated, see - # {OpenAI::Models::VectorStoreUpdateParams::ExpiresAfter} for more details. + # {OpenAI::VectorStoreUpdateParams::ExpiresAfter} for more details. # # The expiration policy for a vector store. # # @param days [Integer] The number of days after the anchor time that the vector store will expire. # # @param anchor [Symbol, :last_active_at] Anchor timestamp after which the expiration policy applies. Supported anchors: ` - # ... end end end diff --git a/lib/openai/models/vector_stores/file_batch_create_params.rb b/lib/openai/models/vector_stores/file_batch_create_params.rb index fba3d18a..5fd03105 100644 --- a/lib/openai/models/vector_stores/file_batch_create_params.rb +++ b/lib/openai/models/vector_stores/file_batch_create_params.rb @@ -25,27 +25,27 @@ class FileBatchCreateParams < OpenAI::Internal::Type::BaseModel # # @return [Hash{Symbol=>String, Float, Boolean}, nil] optional :attributes, - -> { OpenAI::Internal::Type::HashOf[union: OpenAI::Models::VectorStores::FileBatchCreateParams::Attribute] }, + -> { + OpenAI::Internal::Type::HashOf[union: OpenAI::VectorStores::FileBatchCreateParams::Attribute] + }, nil?: true # @!attribute chunking_strategy # The chunking strategy used to chunk the file(s). If not set, will use the `auto` # strategy. Only applicable if `file_ids` is non-empty. # - # @return [OpenAI::Models::AutoFileChunkingStrategyParam, OpenAI::Models::StaticFileChunkingStrategyObjectParam, nil] - optional :chunking_strategy, union: -> { OpenAI::Models::FileChunkingStrategyParam } + # @return [OpenAI::AutoFileChunkingStrategyParam, OpenAI::StaticFileChunkingStrategyObjectParam, nil] + optional :chunking_strategy, union: -> { OpenAI::FileChunkingStrategyParam } # @!method initialize(file_ids:, attributes: nil, chunking_strategy: nil, request_options: {}) # Some parameter documentations has been truncated, see # {OpenAI::Models::VectorStores::FileBatchCreateParams} for more details. # # @param file_ids [Array] A list of [File](https://platform.openai.com/docs/api-reference/files) IDs that - # ... # - # @param attributes [Hash{Symbol=>String, Float, Boolean}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # @param attributes [Hash{Symbol=>String, Float, Boolean}, nil] Set of 16 key-value pairs that can be attached to an object. This can be # - # @param chunking_strategy [OpenAI::Models::AutoFileChunkingStrategyParam, OpenAI::Models::StaticFileChunkingStrategyObjectParam] The chunking strategy used to chunk the file(s). If not set, will use the `auto` - # ... + # @param chunking_strategy [OpenAI::AutoFileChunkingStrategyParam, OpenAI::StaticFileChunkingStrategyObjectParam] The chunking strategy used to chunk the file(s). If not set, will use the `auto` # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] diff --git a/lib/openai/models/vector_stores/file_batch_list_files_params.rb b/lib/openai/models/vector_stores/file_batch_list_files_params.rb index fc97c2c0..a6e6e635 100644 --- a/lib/openai/models/vector_stores/file_batch_list_files_params.rb +++ b/lib/openai/models/vector_stores/file_batch_list_files_params.rb @@ -34,8 +34,8 @@ class FileBatchListFilesParams < OpenAI::Internal::Type::BaseModel # @!attribute filter # Filter by file status. One of `in_progress`, `completed`, `failed`, `cancelled`. # - # @return [Symbol, OpenAI::Models::VectorStores::FileBatchListFilesParams::Filter, nil] - optional :filter, enum: -> { OpenAI::Models::VectorStores::FileBatchListFilesParams::Filter } + # @return [Symbol, OpenAI::VectorStores::FileBatchListFilesParams::Filter, nil] + optional :filter, enum: -> { OpenAI::VectorStores::FileBatchListFilesParams::Filter } # @!attribute limit # A limit on the number of objects to be returned. Limit can range between 1 and @@ -48,8 +48,8 @@ class FileBatchListFilesParams < OpenAI::Internal::Type::BaseModel # Sort order by the `created_at` timestamp of the objects. `asc` for ascending # order and `desc` for descending order. # - # @return [Symbol, OpenAI::Models::VectorStores::FileBatchListFilesParams::Order, nil] - optional :order, enum: -> { OpenAI::Models::VectorStores::FileBatchListFilesParams::Order } + # @return [Symbol, OpenAI::VectorStores::FileBatchListFilesParams::Order, nil] + optional :order, enum: -> { OpenAI::VectorStores::FileBatchListFilesParams::Order } # @!method initialize(vector_store_id:, after: nil, before: nil, filter: nil, limit: nil, order: nil, request_options: {}) # Some parameter documentations has been truncated, see @@ -58,19 +58,14 @@ class FileBatchListFilesParams < OpenAI::Internal::Type::BaseModel # @param vector_store_id [String] # # @param after [String] A cursor for use in pagination. `after` is an object ID that defines your place - # ... # # @param before [String] A cursor for use in pagination. `before` is an object ID that defines your place - # ... # - # @param filter [Symbol, OpenAI::Models::VectorStores::FileBatchListFilesParams::Filter] Filter by file status. One of `in_progress`, `completed`, `failed`, `cancelled`. - # ... + # @param filter [Symbol, OpenAI::VectorStores::FileBatchListFilesParams::Filter] Filter by file status. One of `in_progress`, `completed`, `failed`, `cancelled`. # # @param limit [Integer] A limit on the number of objects to be returned. Limit can range between 1 and 1 - # ... # - # @param order [Symbol, OpenAI::Models::VectorStores::FileBatchListFilesParams::Order] Sort order by the `created_at` timestamp of the objects. `asc` for ascending ord - # ... + # @param order [Symbol, OpenAI::VectorStores::FileBatchListFilesParams::Order] Sort order by the `created_at` timestamp of the objects. `asc` for ascending ord # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] diff --git a/lib/openai/models/vector_stores/file_create_params.rb b/lib/openai/models/vector_stores/file_create_params.rb index d5e71148..8cc4cee4 100644 --- a/lib/openai/models/vector_stores/file_create_params.rb +++ b/lib/openai/models/vector_stores/file_create_params.rb @@ -25,27 +25,27 @@ class FileCreateParams < OpenAI::Internal::Type::BaseModel # # @return [Hash{Symbol=>String, Float, Boolean}, nil] optional :attributes, - -> { OpenAI::Internal::Type::HashOf[union: OpenAI::Models::VectorStores::FileCreateParams::Attribute] }, + -> { + OpenAI::Internal::Type::HashOf[union: OpenAI::VectorStores::FileCreateParams::Attribute] + }, nil?: true # @!attribute chunking_strategy # The chunking strategy used to chunk the file(s). If not set, will use the `auto` # strategy. Only applicable if `file_ids` is non-empty. # - # @return [OpenAI::Models::AutoFileChunkingStrategyParam, OpenAI::Models::StaticFileChunkingStrategyObjectParam, nil] - optional :chunking_strategy, union: -> { OpenAI::Models::FileChunkingStrategyParam } + # @return [OpenAI::AutoFileChunkingStrategyParam, OpenAI::StaticFileChunkingStrategyObjectParam, nil] + optional :chunking_strategy, union: -> { OpenAI::FileChunkingStrategyParam } # @!method initialize(file_id:, attributes: nil, chunking_strategy: nil, request_options: {}) # Some parameter documentations has been truncated, see # {OpenAI::Models::VectorStores::FileCreateParams} for more details. # # @param file_id [String] A [File](https://platform.openai.com/docs/api-reference/files) ID that the vecto - # ... # - # @param attributes [Hash{Symbol=>String, Float, Boolean}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # @param attributes [Hash{Symbol=>String, Float, Boolean}, nil] Set of 16 key-value pairs that can be attached to an object. This can be # - # @param chunking_strategy [OpenAI::Models::AutoFileChunkingStrategyParam, OpenAI::Models::StaticFileChunkingStrategyObjectParam] The chunking strategy used to chunk the file(s). If not set, will use the `auto` - # ... + # @param chunking_strategy [OpenAI::AutoFileChunkingStrategyParam, OpenAI::StaticFileChunkingStrategyObjectParam] The chunking strategy used to chunk the file(s). If not set, will use the `auto` # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] diff --git a/lib/openai/models/vector_stores/file_list_params.rb b/lib/openai/models/vector_stores/file_list_params.rb index 55dd58ce..dcebcd20 100644 --- a/lib/openai/models/vector_stores/file_list_params.rb +++ b/lib/openai/models/vector_stores/file_list_params.rb @@ -29,8 +29,8 @@ class FileListParams < OpenAI::Internal::Type::BaseModel # @!attribute filter # Filter by file status. One of `in_progress`, `completed`, `failed`, `cancelled`. # - # @return [Symbol, OpenAI::Models::VectorStores::FileListParams::Filter, nil] - optional :filter, enum: -> { OpenAI::Models::VectorStores::FileListParams::Filter } + # @return [Symbol, OpenAI::VectorStores::FileListParams::Filter, nil] + optional :filter, enum: -> { OpenAI::VectorStores::FileListParams::Filter } # @!attribute limit # A limit on the number of objects to be returned. Limit can range between 1 and @@ -43,27 +43,22 @@ class FileListParams < OpenAI::Internal::Type::BaseModel # Sort order by the `created_at` timestamp of the objects. `asc` for ascending # order and `desc` for descending order. # - # @return [Symbol, OpenAI::Models::VectorStores::FileListParams::Order, nil] - optional :order, enum: -> { OpenAI::Models::VectorStores::FileListParams::Order } + # @return [Symbol, OpenAI::VectorStores::FileListParams::Order, nil] + optional :order, enum: -> { OpenAI::VectorStores::FileListParams::Order } # @!method initialize(after: nil, before: nil, filter: nil, limit: nil, order: nil, request_options: {}) # Some parameter documentations has been truncated, see # {OpenAI::Models::VectorStores::FileListParams} for more details. # # @param after [String] A cursor for use in pagination. `after` is an object ID that defines your place - # ... # # @param before [String] A cursor for use in pagination. `before` is an object ID that defines your place - # ... # - # @param filter [Symbol, OpenAI::Models::VectorStores::FileListParams::Filter] Filter by file status. One of `in_progress`, `completed`, `failed`, `cancelled`. - # ... + # @param filter [Symbol, OpenAI::VectorStores::FileListParams::Filter] Filter by file status. One of `in_progress`, `completed`, `failed`, `cancelled`. # # @param limit [Integer] A limit on the number of objects to be returned. Limit can range between 1 and 1 - # ... # - # @param order [Symbol, OpenAI::Models::VectorStores::FileListParams::Order] Sort order by the `created_at` timestamp of the objects. `asc` for ascending ord - # ... + # @param order [Symbol, OpenAI::VectorStores::FileListParams::Order] Sort order by the `created_at` timestamp of the objects. `asc` for ascending ord # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] diff --git a/lib/openai/models/vector_stores/file_update_params.rb b/lib/openai/models/vector_stores/file_update_params.rb index cb4600bd..be3d5d7b 100644 --- a/lib/openai/models/vector_stores/file_update_params.rb +++ b/lib/openai/models/vector_stores/file_update_params.rb @@ -22,7 +22,9 @@ class FileUpdateParams < OpenAI::Internal::Type::BaseModel # # @return [Hash{Symbol=>String, Float, Boolean}, nil] required :attributes, - -> { OpenAI::Internal::Type::HashOf[union: OpenAI::Models::VectorStores::FileUpdateParams::Attribute] }, + -> { + OpenAI::Internal::Type::HashOf[union: OpenAI::VectorStores::FileUpdateParams::Attribute] + }, nil?: true # @!method initialize(vector_store_id:, attributes:, request_options: {}) @@ -31,7 +33,7 @@ class FileUpdateParams < OpenAI::Internal::Type::BaseModel # # @param vector_store_id [String] # - # @param attributes [Hash{Symbol=>String, Float, Boolean}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # @param attributes [Hash{Symbol=>String, Float, Boolean}, nil] Set of 16 key-value pairs that can be attached to an object. This can be # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] diff --git a/lib/openai/models/vector_stores/vector_store_file.rb b/lib/openai/models/vector_stores/vector_store_file.rb index 66754ed9..eab6df4b 100644 --- a/lib/openai/models/vector_stores/vector_store_file.rb +++ b/lib/openai/models/vector_stores/vector_store_file.rb @@ -21,8 +21,8 @@ class VectorStoreFile < OpenAI::Internal::Type::BaseModel # The last error associated with this vector store file. Will be `null` if there # are no errors. # - # @return [OpenAI::Models::VectorStores::VectorStoreFile::LastError, nil] - required :last_error, -> { OpenAI::Models::VectorStores::VectorStoreFile::LastError }, nil?: true + # @return [OpenAI::VectorStores::VectorStoreFile::LastError, nil] + required :last_error, -> { OpenAI::VectorStores::VectorStoreFile::LastError }, nil?: true # @!attribute object # The object type, which is always `vector_store.file`. @@ -35,8 +35,8 @@ class VectorStoreFile < OpenAI::Internal::Type::BaseModel # `completed`, `cancelled`, or `failed`. The status `completed` indicates that the # vector store file is ready for use. # - # @return [Symbol, OpenAI::Models::VectorStores::VectorStoreFile::Status] - required :status, enum: -> { OpenAI::Models::VectorStores::VectorStoreFile::Status } + # @return [Symbol, OpenAI::VectorStores::VectorStoreFile::Status] + required :status, enum: -> { OpenAI::VectorStores::VectorStoreFile::Status } # @!attribute usage_bytes # The total vector store usage in bytes. Note that this may be different from the @@ -63,18 +63,20 @@ class VectorStoreFile < OpenAI::Internal::Type::BaseModel # # @return [Hash{Symbol=>String, Float, Boolean}, nil] optional :attributes, - -> { OpenAI::Internal::Type::HashOf[union: OpenAI::Models::VectorStores::VectorStoreFile::Attribute] }, + -> { + OpenAI::Internal::Type::HashOf[union: OpenAI::VectorStores::VectorStoreFile::Attribute] + }, nil?: true # @!attribute chunking_strategy # The strategy used to chunk the file. # - # @return [OpenAI::Models::StaticFileChunkingStrategyObject, OpenAI::Models::OtherFileChunkingStrategyObject, nil] - optional :chunking_strategy, union: -> { OpenAI::Models::FileChunkingStrategy } + # @return [OpenAI::StaticFileChunkingStrategyObject, OpenAI::OtherFileChunkingStrategyObject, nil] + optional :chunking_strategy, union: -> { OpenAI::FileChunkingStrategy } # @!method initialize(id:, created_at:, last_error:, status:, usage_bytes:, vector_store_id:, attributes: nil, chunking_strategy: nil, object: :"vector_store.file") # Some parameter documentations has been truncated, see - # {OpenAI::Models::VectorStores::VectorStoreFile} for more details. + # {OpenAI::VectorStores::VectorStoreFile} for more details. # # A list of files attached to a vector store. # @@ -82,31 +84,27 @@ class VectorStoreFile < OpenAI::Internal::Type::BaseModel # # @param created_at [Integer] The Unix timestamp (in seconds) for when the vector store file was created. # - # @param last_error [OpenAI::Models::VectorStores::VectorStoreFile::LastError, nil] The last error associated with this vector store file. Will be `null` if there a - # ... + # @param last_error [OpenAI::VectorStores::VectorStoreFile::LastError, nil] The last error associated with this vector store file. Will be `null` if there a # - # @param status [Symbol, OpenAI::Models::VectorStores::VectorStoreFile::Status] The status of the vector store file, which can be either `in_progress`, `complet - # ... + # @param status [Symbol, OpenAI::VectorStores::VectorStoreFile::Status] The status of the vector store file, which can be either `in_progress`, `complet # # @param usage_bytes [Integer] The total vector store usage in bytes. Note that this may be different from the - # ... # # @param vector_store_id [String] The ID of the [vector store](https://platform.openai.com/docs/api-reference/vect - # ... # - # @param attributes [Hash{Symbol=>String, Float, Boolean}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # @param attributes [Hash{Symbol=>String, Float, Boolean}, nil] Set of 16 key-value pairs that can be attached to an object. This can be # - # @param chunking_strategy [OpenAI::Models::StaticFileChunkingStrategyObject, OpenAI::Models::OtherFileChunkingStrategyObject] The strategy used to chunk the file. + # @param chunking_strategy [OpenAI::StaticFileChunkingStrategyObject, OpenAI::OtherFileChunkingStrategyObject] The strategy used to chunk the file. # # @param object [Symbol, :"vector_store.file"] The object type, which is always `vector_store.file`. - # @see OpenAI::Models::VectorStores::VectorStoreFile#last_error + # @see OpenAI::VectorStores::VectorStoreFile#last_error class LastError < OpenAI::Internal::Type::BaseModel # @!attribute code # One of `server_error` or `rate_limit_exceeded`. # - # @return [Symbol, OpenAI::Models::VectorStores::VectorStoreFile::LastError::Code] - required :code, enum: -> { OpenAI::Models::VectorStores::VectorStoreFile::LastError::Code } + # @return [Symbol, OpenAI::VectorStores::VectorStoreFile::LastError::Code] + required :code, enum: -> { OpenAI::VectorStores::VectorStoreFile::LastError::Code } # @!attribute message # A human-readable description of the error. @@ -118,13 +116,13 @@ class LastError < OpenAI::Internal::Type::BaseModel # The last error associated with this vector store file. Will be `null` if there # are no errors. # - # @param code [Symbol, OpenAI::Models::VectorStores::VectorStoreFile::LastError::Code] One of `server_error` or `rate_limit_exceeded`. + # @param code [Symbol, OpenAI::VectorStores::VectorStoreFile::LastError::Code] One of `server_error` or `rate_limit_exceeded`. # # @param message [String] A human-readable description of the error. # One of `server_error` or `rate_limit_exceeded`. # - # @see OpenAI::Models::VectorStores::VectorStoreFile::LastError#code + # @see OpenAI::VectorStores::VectorStoreFile::LastError#code module Code extend OpenAI::Internal::Type::Enum @@ -141,7 +139,7 @@ module Code # `completed`, `cancelled`, or `failed`. The status `completed` indicates that the # vector store file is ready for use. # - # @see OpenAI::Models::VectorStores::VectorStoreFile#status + # @see OpenAI::VectorStores::VectorStoreFile#status module Status extend OpenAI::Internal::Type::Enum diff --git a/lib/openai/models/vector_stores/vector_store_file_batch.rb b/lib/openai/models/vector_stores/vector_store_file_batch.rb index 86d56390..b66e2b14 100644 --- a/lib/openai/models/vector_stores/vector_store_file_batch.rb +++ b/lib/openai/models/vector_stores/vector_store_file_batch.rb @@ -20,8 +20,8 @@ class VectorStoreFileBatch < OpenAI::Internal::Type::BaseModel # @!attribute file_counts # - # @return [OpenAI::Models::VectorStores::VectorStoreFileBatch::FileCounts] - required :file_counts, -> { OpenAI::Models::VectorStores::VectorStoreFileBatch::FileCounts } + # @return [OpenAI::VectorStores::VectorStoreFileBatch::FileCounts] + required :file_counts, -> { OpenAI::VectorStores::VectorStoreFileBatch::FileCounts } # @!attribute object # The object type, which is always `vector_store.file_batch`. @@ -33,8 +33,8 @@ class VectorStoreFileBatch < OpenAI::Internal::Type::BaseModel # The status of the vector store files batch, which can be either `in_progress`, # `completed`, `cancelled` or `failed`. # - # @return [Symbol, OpenAI::Models::VectorStores::VectorStoreFileBatch::Status] - required :status, enum: -> { OpenAI::Models::VectorStores::VectorStoreFileBatch::Status } + # @return [Symbol, OpenAI::VectorStores::VectorStoreFileBatch::Status] + required :status, enum: -> { OpenAI::VectorStores::VectorStoreFileBatch::Status } # @!attribute vector_store_id # The ID of the @@ -47,26 +47,23 @@ class VectorStoreFileBatch < OpenAI::Internal::Type::BaseModel # @!method initialize(id:, created_at:, file_counts:, status:, vector_store_id:, object: :"vector_store.files_batch") # Some parameter documentations has been truncated, see - # {OpenAI::Models::VectorStores::VectorStoreFileBatch} for more details. + # {OpenAI::VectorStores::VectorStoreFileBatch} for more details. # # A batch of files attached to a vector store. # # @param id [String] The identifier, which can be referenced in API endpoints. # # @param created_at [Integer] The Unix timestamp (in seconds) for when the vector store files batch was create - # ... # - # @param file_counts [OpenAI::Models::VectorStores::VectorStoreFileBatch::FileCounts] + # @param file_counts [OpenAI::VectorStores::VectorStoreFileBatch::FileCounts] # - # @param status [Symbol, OpenAI::Models::VectorStores::VectorStoreFileBatch::Status] The status of the vector store files batch, which can be either `in_progress`, ` - # ... + # @param status [Symbol, OpenAI::VectorStores::VectorStoreFileBatch::Status] The status of the vector store files batch, which can be either `in_progress`, ` # # @param vector_store_id [String] The ID of the [vector store](https://platform.openai.com/docs/api-reference/vect - # ... # # @param object [Symbol, :"vector_store.files_batch"] The object type, which is always `vector_store.file_batch`. - # @see OpenAI::Models::VectorStores::VectorStoreFileBatch#file_counts + # @see OpenAI::VectorStores::VectorStoreFileBatch#file_counts class FileCounts < OpenAI::Internal::Type::BaseModel # @!attribute cancelled # The number of files that where cancelled. @@ -113,7 +110,7 @@ class FileCounts < OpenAI::Internal::Type::BaseModel # The status of the vector store files batch, which can be either `in_progress`, # `completed`, `cancelled` or `failed`. # - # @see OpenAI::Models::VectorStores::VectorStoreFileBatch#status + # @see OpenAI::VectorStores::VectorStoreFileBatch#status module Status extend OpenAI::Internal::Type::Enum diff --git a/lib/openai/resources/audio/speech.rb b/lib/openai/resources/audio/speech.rb index cd1044ab..befc2a60 100644 --- a/lib/openai/resources/audio/speech.rb +++ b/lib/openai/resources/audio/speech.rb @@ -13,20 +13,15 @@ class Speech # # @param input [String] The text to generate audio for. The maximum length is 4096 characters. # - # @param model [String, Symbol, OpenAI::Models::Audio::SpeechModel] One of the available [TTS models](https://platform.openai.com/docs/models#tts): - # ... + # @param model [String, Symbol, OpenAI::Audio::SpeechModel] One of the available [TTS models](https://platform.openai.com/docs/models#tts): # - # @param voice [String, Symbol, OpenAI::Models::Audio::SpeechCreateParams::Voice] The voice to use when generating the audio. Supported voices are `alloy`, `ash`, - # ... + # @param voice [String, Symbol, OpenAI::Audio::SpeechCreateParams::Voice] The voice to use when generating the audio. Supported voices are `alloy`, `ash`, # # @param instructions [String] Control the voice of your generated audio with additional instructions. Does not - # ... # - # @param response_format [Symbol, OpenAI::Models::Audio::SpeechCreateParams::ResponseFormat] The format to audio in. Supported formats are `mp3`, `opus`, `aac`, `flac`, `wav - # ... + # @param response_format [Symbol, OpenAI::Audio::SpeechCreateParams::ResponseFormat] The format to audio in. Supported formats are `mp3`, `opus`, `aac`, `flac`, `wav # # @param speed [Float] The speed of the generated audio. Select a value from `0.25` to `4.0`. `1.0` is - # ... # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # @@ -34,7 +29,7 @@ class Speech # # @see OpenAI::Models::Audio::SpeechCreateParams def create(params) - parsed, options = OpenAI::Models::Audio::SpeechCreateParams.dump_request(params) + parsed, options = OpenAI::Audio::SpeechCreateParams.dump_request(params) @client.request( method: :post, path: "audio/speech", diff --git a/lib/openai/resources/audio/transcriptions.rb b/lib/openai/resources/audio/transcriptions.rb index a3fc4454..df39fc22 100644 --- a/lib/openai/resources/audio/transcriptions.rb +++ b/lib/openai/resources/audio/transcriptions.rb @@ -15,35 +15,28 @@ class Transcriptions # @overload create(file:, model:, include: nil, language: nil, prompt: nil, response_format: nil, temperature: nil, timestamp_granularities: nil, request_options: {}) # # @param file [Pathname, StringIO, IO, OpenAI::FilePart] The audio file object (not file name) to transcribe, in one of these formats: fl - # ... # - # @param model [String, Symbol, OpenAI::Models::AudioModel] ID of the model to use. The options are `gpt-4o-transcribe`, `gpt-4o-mini-transc - # ... + # @param model [String, Symbol, OpenAI::AudioModel] ID of the model to use. The options are `gpt-4o-transcribe`, `gpt-4o-mini-transc # - # @param include [Array] Additional information to include in the transcription response. ... + # @param include [Array] Additional information to include in the transcription response. # # @param language [String] The language of the input audio. Supplying the input language in [ISO-639-1](htt - # ... # # @param prompt [String] An optional text to guide the model's style or continue a previous audio segment - # ... # - # @param response_format [Symbol, OpenAI::Models::AudioResponseFormat] The format of the output, in one of these options: `json`, `text`, `srt`, `verbo - # ... + # @param response_format [Symbol, OpenAI::AudioResponseFormat] The format of the output, in one of these options: `json`, `text`, `srt`, `verbo # # @param temperature [Float] The sampling temperature, between 0 and 1. Higher values like 0.8 will make the - # ... # - # @param timestamp_granularities [Array] The timestamp granularities to populate for this transcription. `response_format - # ... + # @param timestamp_granularities [Array] The timestamp granularities to populate for this transcription. `response_format # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # - # @return [OpenAI::Models::Audio::Transcription, OpenAI::Models::Audio::TranscriptionVerbose] + # @return [OpenAI::Audio::Transcription, OpenAI::Audio::TranscriptionVerbose] # # @see OpenAI::Models::Audio::TranscriptionCreateParams def create(params) - parsed, options = OpenAI::Models::Audio::TranscriptionCreateParams.dump_request(params) + parsed, options = OpenAI::Audio::TranscriptionCreateParams.dump_request(params) if parsed[:stream] message = "Please use `#create_streaming` for the streaming use case." raise ArgumentError.new(message) @@ -69,35 +62,28 @@ def create(params) # @overload create_streaming(file:, model:, include: nil, language: nil, prompt: nil, response_format: nil, temperature: nil, timestamp_granularities: nil, request_options: {}) # # @param file [Pathname, StringIO, IO, OpenAI::FilePart] The audio file object (not file name) to transcribe, in one of these formats: fl - # ... # - # @param model [String, Symbol, OpenAI::Models::AudioModel] ID of the model to use. The options are `gpt-4o-transcribe`, `gpt-4o-mini-transc - # ... + # @param model [String, Symbol, OpenAI::AudioModel] ID of the model to use. The options are `gpt-4o-transcribe`, `gpt-4o-mini-transc # - # @param include [Array] Additional information to include in the transcription response. ... + # @param include [Array] Additional information to include in the transcription response. # # @param language [String] The language of the input audio. Supplying the input language in [ISO-639-1](htt - # ... # # @param prompt [String] An optional text to guide the model's style or continue a previous audio segment - # ... # - # @param response_format [Symbol, OpenAI::Models::AudioResponseFormat] The format of the output, in one of these options: `json`, `text`, `srt`, `verbo - # ... + # @param response_format [Symbol, OpenAI::AudioResponseFormat] The format of the output, in one of these options: `json`, `text`, `srt`, `verbo # # @param temperature [Float] The sampling temperature, between 0 and 1. Higher values like 0.8 will make the - # ... # - # @param timestamp_granularities [Array] The timestamp granularities to populate for this transcription. `response_format - # ... + # @param timestamp_granularities [Array] The timestamp granularities to populate for this transcription. `response_format # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # - # @return [OpenAI::Internal::Stream] + # @return [OpenAI::Internal::Stream] # # @see OpenAI::Models::Audio::TranscriptionCreateParams def create_streaming(params) - parsed, options = OpenAI::Models::Audio::TranscriptionCreateParams.dump_request(params) + parsed, options = OpenAI::Audio::TranscriptionCreateParams.dump_request(params) unless parsed.fetch(:stream, true) message = "Please use `#create` for the non-streaming use case." raise ArgumentError.new(message) @@ -109,7 +95,7 @@ def create_streaming(params) headers: {"content-type" => "multipart/form-data", "accept" => "text/event-stream"}, body: parsed, stream: OpenAI::Internal::Stream, - model: OpenAI::Models::Audio::TranscriptionStreamEvent, + model: OpenAI::Audio::TranscriptionStreamEvent, options: options ) end diff --git a/lib/openai/resources/audio/translations.rb b/lib/openai/resources/audio/translations.rb index 0a43a53a..f43551ab 100644 --- a/lib/openai/resources/audio/translations.rb +++ b/lib/openai/resources/audio/translations.rb @@ -12,27 +12,22 @@ class Translations # @overload create(file:, model:, prompt: nil, response_format: nil, temperature: nil, request_options: {}) # # @param file [Pathname, StringIO, IO, OpenAI::FilePart] The audio file object (not file name) translate, in one of these formats: flac, - # ... # - # @param model [String, Symbol, OpenAI::Models::AudioModel] ID of the model to use. Only `whisper-1` (which is powered by our open source Wh - # ... + # @param model [String, Symbol, OpenAI::AudioModel] ID of the model to use. Only `whisper-1` (which is powered by our open source Wh # # @param prompt [String] An optional text to guide the model's style or continue a previous audio segment - # ... # - # @param response_format [Symbol, OpenAI::Models::Audio::TranslationCreateParams::ResponseFormat] The format of the output, in one of these options: `json`, `text`, `srt`, `verbo - # ... + # @param response_format [Symbol, OpenAI::Audio::TranslationCreateParams::ResponseFormat] The format of the output, in one of these options: `json`, `text`, `srt`, `verbo # # @param temperature [Float] The sampling temperature, between 0 and 1. Higher values like 0.8 will make the - # ... # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # - # @return [OpenAI::Models::Audio::Translation, OpenAI::Models::Audio::TranslationVerbose] + # @return [OpenAI::Audio::Translation, OpenAI::Audio::TranslationVerbose] # # @see OpenAI::Models::Audio::TranslationCreateParams def create(params) - parsed, options = OpenAI::Models::Audio::TranslationCreateParams.dump_request(params) + parsed, options = OpenAI::Audio::TranslationCreateParams.dump_request(params) @client.request( method: :post, path: "audio/translations", diff --git a/lib/openai/resources/batches.rb b/lib/openai/resources/batches.rb index d63aac23..718d0a81 100644 --- a/lib/openai/resources/batches.rb +++ b/lib/openai/resources/batches.rb @@ -10,30 +10,22 @@ class Batches # # @overload create(completion_window:, endpoint:, input_file_id:, metadata: nil, request_options: {}) # - # @param completion_window [Symbol, OpenAI::Models::BatchCreateParams::CompletionWindow] The time frame within which the batch should be processed. Currently only `24h` - # ... + # @param completion_window [Symbol, OpenAI::BatchCreateParams::CompletionWindow] The time frame within which the batch should be processed. Currently only `24h` # - # @param endpoint [Symbol, OpenAI::Models::BatchCreateParams::Endpoint] The endpoint to be used for all requests in the batch. Currently `/v1/responses` - # ... + # @param endpoint [Symbol, OpenAI::BatchCreateParams::Endpoint] The endpoint to be used for all requests in the batch. Currently `/v1/responses` # - # @param input_file_id [String] The ID of an uploaded file that contains requests for the new batch. ... + # @param input_file_id [String] The ID of an uploaded file that contains requests for the new batch. # - # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # - # @return [OpenAI::Models::Batch] + # @return [OpenAI::Batch] # # @see OpenAI::Models::BatchCreateParams def create(params) - parsed, options = OpenAI::Models::BatchCreateParams.dump_request(params) - @client.request( - method: :post, - path: "batches", - body: parsed, - model: OpenAI::Models::Batch, - options: options - ) + parsed, options = OpenAI::BatchCreateParams.dump_request(params) + @client.request(method: :post, path: "batches", body: parsed, model: OpenAI::Batch, options: options) end # Retrieves a batch. @@ -44,14 +36,14 @@ def create(params) # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # - # @return [OpenAI::Models::Batch] + # @return [OpenAI::Batch] # # @see OpenAI::Models::BatchRetrieveParams def retrieve(batch_id, params = {}) @client.request( method: :get, path: ["batches/%1$s", batch_id], - model: OpenAI::Models::Batch, + model: OpenAI::Batch, options: params[:request_options] ) end @@ -64,24 +56,22 @@ def retrieve(batch_id, params = {}) # @overload list(after: nil, limit: nil, request_options: {}) # # @param after [String] A cursor for use in pagination. `after` is an object ID that defines your place - # ... # # @param limit [Integer] A limit on the number of objects to be returned. Limit can range between 1 and 1 - # ... # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # - # @return [OpenAI::Internal::CursorPage] + # @return [OpenAI::Internal::CursorPage] # # @see OpenAI::Models::BatchListParams def list(params = {}) - parsed, options = OpenAI::Models::BatchListParams.dump_request(params) + parsed, options = OpenAI::BatchListParams.dump_request(params) @client.request( method: :get, path: "batches", query: parsed, page: OpenAI::Internal::CursorPage, - model: OpenAI::Models::Batch, + model: OpenAI::Batch, options: options ) end @@ -96,14 +86,14 @@ def list(params = {}) # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # - # @return [OpenAI::Models::Batch] + # @return [OpenAI::Batch] # # @see OpenAI::Models::BatchCancelParams def cancel(batch_id, params = {}) @client.request( method: :post, path: ["batches/%1$s/cancel", batch_id], - model: OpenAI::Models::Batch, + model: OpenAI::Batch, options: params[:request_options] ) end diff --git a/lib/openai/resources/beta/assistants.rb b/lib/openai/resources/beta/assistants.rb index 25b83738..ca192073 100644 --- a/lib/openai/resources/beta/assistants.rb +++ b/lib/openai/resources/beta/assistants.rb @@ -11,47 +11,40 @@ class Assistants # # @overload create(model:, description: nil, instructions: nil, metadata: nil, name: nil, reasoning_effort: nil, response_format: nil, temperature: nil, tool_resources: nil, tools: nil, top_p: nil, request_options: {}) # - # @param model [String, Symbol, OpenAI::Models::ChatModel] ID of the model to use. You can use the [List models](https://platform.openai.co - # ... + # @param model [String, Symbol, OpenAI::ChatModel] ID of the model to use. You can use the [List models](https://platform.openai.co # - # @param description [String, nil] The description of the assistant. The maximum length is 512 characters. ... + # @param description [String, nil] The description of the assistant. The maximum length is 512 characters. # # @param instructions [String, nil] The system instructions that the assistant uses. The maximum length is 256,000 c - # ... # - # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be # - # @param name [String, nil] The name of the assistant. The maximum length is 256 characters. ... + # @param name [String, nil] The name of the assistant. The maximum length is 256 characters. # - # @param reasoning_effort [Symbol, OpenAI::Models::ReasoningEffort, nil] **o-series models only** ... + # @param reasoning_effort [Symbol, OpenAI::ReasoningEffort, nil] **o-series models only** # - # @param response_format [Symbol, :auto, OpenAI::Models::ResponseFormatText, OpenAI::Models::ResponseFormatJSONObject, OpenAI::Models::ResponseFormatJSONSchema, nil] Specifies the format that the model must output. Compatible with [GPT-4o](https: - # ... + # @param response_format [Symbol, :auto, OpenAI::ResponseFormatText, OpenAI::ResponseFormatJSONObject, OpenAI::ResponseFormatJSONSchema, nil] Specifies the format that the model must output. Compatible with [GPT-4o](https: # # @param temperature [Float, nil] What sampling temperature to use, between 0 and 2. Higher values like 0.8 will m - # ... # - # @param tool_resources [OpenAI::Models::Beta::AssistantCreateParams::ToolResources, nil] A set of resources that are used by the assistant's tools. The resources are spe - # ... + # @param tool_resources [OpenAI::Beta::AssistantCreateParams::ToolResources, nil] A set of resources that are used by the assistant's tools. The resources are spe # - # @param tools [Array] A list of tool enabled on the assistant. There can be a maximum of 128 tools per - # ... + # @param tools [Array] A list of tool enabled on the assistant. There can be a maximum of 128 tools per # # @param top_p [Float, nil] An alternative to sampling with temperature, called nucleus sampling, where the - # ... # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # - # @return [OpenAI::Models::Beta::Assistant] + # @return [OpenAI::Beta::Assistant] # # @see OpenAI::Models::Beta::AssistantCreateParams def create(params) - parsed, options = OpenAI::Models::Beta::AssistantCreateParams.dump_request(params) + parsed, options = OpenAI::Beta::AssistantCreateParams.dump_request(params) @client.request( method: :post, path: "assistants", body: parsed, - model: OpenAI::Models::Beta::Assistant, + model: OpenAI::Beta::Assistant, options: {extra_headers: {"OpenAI-Beta" => "assistants=v2"}, **options} ) end @@ -64,14 +57,14 @@ def create(params) # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # - # @return [OpenAI::Models::Beta::Assistant] + # @return [OpenAI::Beta::Assistant] # # @see OpenAI::Models::Beta::AssistantRetrieveParams def retrieve(assistant_id, params = {}) @client.request( method: :get, path: ["assistants/%1$s", assistant_id], - model: OpenAI::Models::Beta::Assistant, + model: OpenAI::Beta::Assistant, options: {extra_headers: {"OpenAI-Beta" => "assistants=v2"}, **params[:request_options].to_h} ) end @@ -85,47 +78,40 @@ def retrieve(assistant_id, params = {}) # # @param assistant_id [String] The ID of the assistant to modify. # - # @param description [String, nil] The description of the assistant. The maximum length is 512 characters. ... + # @param description [String, nil] The description of the assistant. The maximum length is 512 characters. # # @param instructions [String, nil] The system instructions that the assistant uses. The maximum length is 256,000 c - # ... # - # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be # - # @param model [String, Symbol, OpenAI::Models::Beta::AssistantUpdateParams::Model] ID of the model to use. You can use the [List models](https://platform.openai.co - # ... + # @param model [String, Symbol, OpenAI::Beta::AssistantUpdateParams::Model] ID of the model to use. You can use the [List models](https://platform.openai.co # - # @param name [String, nil] The name of the assistant. The maximum length is 256 characters. ... + # @param name [String, nil] The name of the assistant. The maximum length is 256 characters. # - # @param reasoning_effort [Symbol, OpenAI::Models::ReasoningEffort, nil] **o-series models only** ... + # @param reasoning_effort [Symbol, OpenAI::ReasoningEffort, nil] **o-series models only** # - # @param response_format [Symbol, :auto, OpenAI::Models::ResponseFormatText, OpenAI::Models::ResponseFormatJSONObject, OpenAI::Models::ResponseFormatJSONSchema, nil] Specifies the format that the model must output. Compatible with [GPT-4o](https: - # ... + # @param response_format [Symbol, :auto, OpenAI::ResponseFormatText, OpenAI::ResponseFormatJSONObject, OpenAI::ResponseFormatJSONSchema, nil] Specifies the format that the model must output. Compatible with [GPT-4o](https: # # @param temperature [Float, nil] What sampling temperature to use, between 0 and 2. Higher values like 0.8 will m - # ... # - # @param tool_resources [OpenAI::Models::Beta::AssistantUpdateParams::ToolResources, nil] A set of resources that are used by the assistant's tools. The resources are spe - # ... + # @param tool_resources [OpenAI::Beta::AssistantUpdateParams::ToolResources, nil] A set of resources that are used by the assistant's tools. The resources are spe # - # @param tools [Array] A list of tool enabled on the assistant. There can be a maximum of 128 tools per - # ... + # @param tools [Array] A list of tool enabled on the assistant. There can be a maximum of 128 tools per # # @param top_p [Float, nil] An alternative to sampling with temperature, called nucleus sampling, where the - # ... # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # - # @return [OpenAI::Models::Beta::Assistant] + # @return [OpenAI::Beta::Assistant] # # @see OpenAI::Models::Beta::AssistantUpdateParams def update(assistant_id, params = {}) - parsed, options = OpenAI::Models::Beta::AssistantUpdateParams.dump_request(params) + parsed, options = OpenAI::Beta::AssistantUpdateParams.dump_request(params) @client.request( method: :post, path: ["assistants/%1$s", assistant_id], body: parsed, - model: OpenAI::Models::Beta::Assistant, + model: OpenAI::Beta::Assistant, options: {extra_headers: {"OpenAI-Beta" => "assistants=v2"}, **options} ) end @@ -138,30 +124,26 @@ def update(assistant_id, params = {}) # @overload list(after: nil, before: nil, limit: nil, order: nil, request_options: {}) # # @param after [String] A cursor for use in pagination. `after` is an object ID that defines your place - # ... # # @param before [String] A cursor for use in pagination. `before` is an object ID that defines your place - # ... # # @param limit [Integer] A limit on the number of objects to be returned. Limit can range between 1 and 1 - # ... # - # @param order [Symbol, OpenAI::Models::Beta::AssistantListParams::Order] Sort order by the `created_at` timestamp of the objects. `asc` for ascending ord - # ... + # @param order [Symbol, OpenAI::Beta::AssistantListParams::Order] Sort order by the `created_at` timestamp of the objects. `asc` for ascending ord # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # - # @return [OpenAI::Internal::CursorPage] + # @return [OpenAI::Internal::CursorPage] # # @see OpenAI::Models::Beta::AssistantListParams def list(params = {}) - parsed, options = OpenAI::Models::Beta::AssistantListParams.dump_request(params) + parsed, options = OpenAI::Beta::AssistantListParams.dump_request(params) @client.request( method: :get, path: "assistants", query: parsed, page: OpenAI::Internal::CursorPage, - model: OpenAI::Models::Beta::Assistant, + model: OpenAI::Beta::Assistant, options: {extra_headers: {"OpenAI-Beta" => "assistants=v2"}, **options} ) end @@ -174,14 +156,14 @@ def list(params = {}) # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # - # @return [OpenAI::Models::Beta::AssistantDeleted] + # @return [OpenAI::Beta::AssistantDeleted] # # @see OpenAI::Models::Beta::AssistantDeleteParams def delete(assistant_id, params = {}) @client.request( method: :delete, path: ["assistants/%1$s", assistant_id], - model: OpenAI::Models::Beta::AssistantDeleted, + model: OpenAI::Beta::AssistantDeleted, options: {extra_headers: {"OpenAI-Beta" => "assistants=v2"}, **params[:request_options].to_h} ) end diff --git a/lib/openai/resources/beta/threads.rb b/lib/openai/resources/beta/threads.rb index 56a97bfe..b7d28695 100644 --- a/lib/openai/resources/beta/threads.rb +++ b/lib/openai/resources/beta/threads.rb @@ -17,26 +17,24 @@ class Threads # # @overload create(messages: nil, metadata: nil, tool_resources: nil, request_options: {}) # - # @param messages [Array] A list of [messages](https://platform.openai.com/docs/api-reference/messages) to - # ... + # @param messages [Array] A list of [messages](https://platform.openai.com/docs/api-reference/messages) to # - # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be # - # @param tool_resources [OpenAI::Models::Beta::ThreadCreateParams::ToolResources, nil] A set of resources that are made available to the assistant's tools in this thre - # ... + # @param tool_resources [OpenAI::Beta::ThreadCreateParams::ToolResources, nil] A set of resources that are made available to the assistant's tools in this thre # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # - # @return [OpenAI::Models::Beta::Thread] + # @return [OpenAI::Beta::Thread] # # @see OpenAI::Models::Beta::ThreadCreateParams def create(params = {}) - parsed, options = OpenAI::Models::Beta::ThreadCreateParams.dump_request(params) + parsed, options = OpenAI::Beta::ThreadCreateParams.dump_request(params) @client.request( method: :post, path: "threads", body: parsed, - model: OpenAI::Models::Beta::Thread, + model: OpenAI::Beta::Thread, options: {extra_headers: {"OpenAI-Beta" => "assistants=v2"}, **options} ) end @@ -49,14 +47,14 @@ def create(params = {}) # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # - # @return [OpenAI::Models::Beta::Thread] + # @return [OpenAI::Beta::Thread] # # @see OpenAI::Models::Beta::ThreadRetrieveParams def retrieve(thread_id, params = {}) @client.request( method: :get, path: ["threads/%1$s", thread_id], - model: OpenAI::Models::Beta::Thread, + model: OpenAI::Beta::Thread, options: {extra_headers: {"OpenAI-Beta" => "assistants=v2"}, **params[:request_options].to_h} ) end @@ -70,23 +68,22 @@ def retrieve(thread_id, params = {}) # # @param thread_id [String] The ID of the thread to modify. Only the `metadata` can be modified. # - # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be # - # @param tool_resources [OpenAI::Models::Beta::ThreadUpdateParams::ToolResources, nil] A set of resources that are made available to the assistant's tools in this thre - # ... + # @param tool_resources [OpenAI::Beta::ThreadUpdateParams::ToolResources, nil] A set of resources that are made available to the assistant's tools in this thre # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # - # @return [OpenAI::Models::Beta::Thread] + # @return [OpenAI::Beta::Thread] # # @see OpenAI::Models::Beta::ThreadUpdateParams def update(thread_id, params = {}) - parsed, options = OpenAI::Models::Beta::ThreadUpdateParams.dump_request(params) + parsed, options = OpenAI::Beta::ThreadUpdateParams.dump_request(params) @client.request( method: :post, path: ["threads/%1$s", thread_id], body: parsed, - model: OpenAI::Models::Beta::Thread, + model: OpenAI::Beta::Thread, options: {extra_headers: {"OpenAI-Beta" => "assistants=v2"}, **options} ) end @@ -99,14 +96,14 @@ def update(thread_id, params = {}) # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # - # @return [OpenAI::Models::Beta::ThreadDeleted] + # @return [OpenAI::Beta::ThreadDeleted] # # @see OpenAI::Models::Beta::ThreadDeleteParams def delete(thread_id, params = {}) @client.request( method: :delete, path: ["threads/%1$s", thread_id], - model: OpenAI::Models::Beta::ThreadDeleted, + model: OpenAI::Beta::ThreadDeleted, options: {extra_headers: {"OpenAI-Beta" => "assistants=v2"}, **params[:request_options].to_h} ) end @@ -121,54 +118,42 @@ def delete(thread_id, params = {}) # @overload 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: {}) # # @param assistant_id [String] The ID of the [assistant](https://platform.openai.com/docs/api-reference/assista - # ... # # @param instructions [String, nil] Override the default system message of the assistant. This is useful for modifyi - # ... # # @param max_completion_tokens [Integer, nil] The maximum number of completion tokens that may be used over the course of the - # ... # # @param max_prompt_tokens [Integer, nil] The maximum number of prompt tokens that may be used over the course of the run. - # ... # - # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be # - # @param model [String, Symbol, OpenAI::Models::ChatModel, nil] The ID of the [Model](https://platform.openai.com/docs/api-reference/models) to - # ... + # @param model [String, Symbol, OpenAI::ChatModel, nil] The ID of the [Model](https://platform.openai.com/docs/api-reference/models) to # # @param parallel_tool_calls [Boolean] Whether to enable [parallel function calling](https://platform.openai.com/docs/g - # ... # - # @param response_format [Symbol, :auto, OpenAI::Models::ResponseFormatText, OpenAI::Models::ResponseFormatJSONObject, OpenAI::Models::ResponseFormatJSONSchema, nil] Specifies the format that the model must output. Compatible with [GPT-4o](https: - # ... + # @param response_format [Symbol, :auto, OpenAI::ResponseFormatText, OpenAI::ResponseFormatJSONObject, OpenAI::ResponseFormatJSONSchema, nil] Specifies the format that the model must output. Compatible with [GPT-4o](https: # # @param temperature [Float, nil] What sampling temperature to use, between 0 and 2. Higher values like 0.8 will m - # ... # - # @param thread [OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread] Options to create a new thread. If no thread is provided when running a ... + # @param thread [OpenAI::Beta::ThreadCreateAndRunParams::Thread] Options to create a new thread. If no thread is provided when running a # - # @param tool_choice [Symbol, OpenAI::Models::Beta::AssistantToolChoiceOption::Auto, OpenAI::Models::Beta::AssistantToolChoice, nil] Controls which (if any) tool is called by the model. ... + # @param tool_choice [Symbol, OpenAI::Beta::AssistantToolChoiceOption::Auto, OpenAI::Beta::AssistantToolChoice, nil] Controls which (if any) tool is called by the model. # - # @param tool_resources [OpenAI::Models::Beta::ThreadCreateAndRunParams::ToolResources, nil] A set of resources that are used by the assistant's tools. The resources are spe - # ... + # @param tool_resources [OpenAI::Beta::ThreadCreateAndRunParams::ToolResources, nil] A set of resources that are used by the assistant's tools. The resources are spe # - # @param tools [Array, nil] Override the tools the assistant can use for this run. This is useful for modify - # ... + # @param tools [Array, nil] Override the tools the assistant can use for this run. This is useful for modify # # @param top_p [Float, nil] An alternative to sampling with temperature, called nucleus sampling, where the - # ... # - # @param truncation_strategy [OpenAI::Models::Beta::ThreadCreateAndRunParams::TruncationStrategy, nil] Controls for how a thread will be truncated prior to the run. Use this to contro - # ... + # @param truncation_strategy [OpenAI::Beta::ThreadCreateAndRunParams::TruncationStrategy, nil] Controls for how a thread will be truncated prior to the run. Use this to contro # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # - # @return [OpenAI::Models::Beta::Threads::Run] + # @return [OpenAI::Beta::Threads::Run] # # @see OpenAI::Models::Beta::ThreadCreateAndRunParams def create_and_run(params) - parsed, options = OpenAI::Models::Beta::ThreadCreateAndRunParams.dump_request(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) @@ -177,7 +162,7 @@ def create_and_run(params) method: :post, path: "threads/runs", body: parsed, - model: OpenAI::Models::Beta::Threads::Run, + model: OpenAI::Beta::Threads::Run, options: {extra_headers: {"OpenAI-Beta" => "assistants=v2"}, **options} ) end @@ -197,54 +182,42 @@ def stream # @overload 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: {}) # # @param assistant_id [String] The ID of the [assistant](https://platform.openai.com/docs/api-reference/assista - # ... # # @param instructions [String, nil] Override the default system message of the assistant. This is useful for modifyi - # ... # # @param max_completion_tokens [Integer, nil] The maximum number of completion tokens that may be used over the course of the - # ... # # @param max_prompt_tokens [Integer, nil] The maximum number of prompt tokens that may be used over the course of the run. - # ... # - # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be # - # @param model [String, Symbol, OpenAI::Models::ChatModel, nil] The ID of the [Model](https://platform.openai.com/docs/api-reference/models) to - # ... + # @param model [String, Symbol, OpenAI::ChatModel, nil] The ID of the [Model](https://platform.openai.com/docs/api-reference/models) to # # @param parallel_tool_calls [Boolean] Whether to enable [parallel function calling](https://platform.openai.com/docs/g - # ... # - # @param response_format [Symbol, :auto, OpenAI::Models::ResponseFormatText, OpenAI::Models::ResponseFormatJSONObject, OpenAI::Models::ResponseFormatJSONSchema, nil] Specifies the format that the model must output. Compatible with [GPT-4o](https: - # ... + # @param response_format [Symbol, :auto, OpenAI::ResponseFormatText, OpenAI::ResponseFormatJSONObject, OpenAI::ResponseFormatJSONSchema, nil] Specifies the format that the model must output. Compatible with [GPT-4o](https: # # @param temperature [Float, nil] What sampling temperature to use, between 0 and 2. Higher values like 0.8 will m - # ... # - # @param thread [OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread] Options to create a new thread. If no thread is provided when running a ... + # @param thread [OpenAI::Beta::ThreadCreateAndRunParams::Thread] Options to create a new thread. If no thread is provided when running a # - # @param tool_choice [Symbol, OpenAI::Models::Beta::AssistantToolChoiceOption::Auto, OpenAI::Models::Beta::AssistantToolChoice, nil] Controls which (if any) tool is called by the model. ... + # @param tool_choice [Symbol, OpenAI::Beta::AssistantToolChoiceOption::Auto, OpenAI::Beta::AssistantToolChoice, nil] Controls which (if any) tool is called by the model. # - # @param tool_resources [OpenAI::Models::Beta::ThreadCreateAndRunParams::ToolResources, nil] A set of resources that are used by the assistant's tools. The resources are spe - # ... + # @param tool_resources [OpenAI::Beta::ThreadCreateAndRunParams::ToolResources, nil] A set of resources that are used by the assistant's tools. The resources are spe # - # @param tools [Array, nil] Override the tools the assistant can use for this run. This is useful for modify - # ... + # @param tools [Array, nil] Override the tools the assistant can use for this run. This is useful for modify # # @param top_p [Float, nil] An alternative to sampling with temperature, called nucleus sampling, where the - # ... # - # @param truncation_strategy [OpenAI::Models::Beta::ThreadCreateAndRunParams::TruncationStrategy, nil] Controls for how a thread will be truncated prior to the run. Use this to contro - # ... + # @param truncation_strategy [OpenAI::Beta::ThreadCreateAndRunParams::TruncationStrategy, nil] Controls for how a thread will be truncated prior to the run. Use this to contro # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # - # @return [OpenAI::Internal::Stream] + # @return [OpenAI::Internal::Stream] # # @see OpenAI::Models::Beta::ThreadCreateAndRunParams def stream_raw(params) - parsed, options = OpenAI::Models::Beta::ThreadCreateAndRunParams.dump_request(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) @@ -256,7 +229,7 @@ def stream_raw(params) headers: {"accept" => "text/event-stream"}, body: parsed, stream: OpenAI::Internal::Stream, - model: OpenAI::Models::Beta::AssistantStreamEvent, + model: OpenAI::Beta::AssistantStreamEvent, options: {extra_headers: {"OpenAI-Beta" => "assistants=v2"}, **options} ) end diff --git a/lib/openai/resources/beta/threads/messages.rb b/lib/openai/resources/beta/threads/messages.rb index d60ca5f6..503f7228 100644 --- a/lib/openai/resources/beta/threads/messages.rb +++ b/lib/openai/resources/beta/threads/messages.rb @@ -13,28 +13,27 @@ class Messages # @overload create(thread_id, content:, role:, attachments: nil, metadata: nil, request_options: {}) # # @param thread_id [String] The ID of the [thread](https://platform.openai.com/docs/api-reference/threads) t - # ... # - # @param content [String, Array] The text contents of the message. + # @param content [String, Array] The text contents of the message. # - # @param role [Symbol, OpenAI::Models::Beta::Threads::MessageCreateParams::Role] The role of the entity that is creating the message. Allowed values include: ... + # @param role [Symbol, OpenAI::Beta::Threads::MessageCreateParams::Role] The role of the entity that is creating the message. Allowed values include: # - # @param attachments [Array, nil] A list of files attached to the message, and the tools they should be added to. + # @param attachments [Array, nil] A list of files attached to the message, and the tools they should be added to. # - # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # - # @return [OpenAI::Models::Beta::Threads::Message] + # @return [OpenAI::Beta::Threads::Message] # # @see OpenAI::Models::Beta::Threads::MessageCreateParams def create(thread_id, params) - parsed, options = OpenAI::Models::Beta::Threads::MessageCreateParams.dump_request(params) + parsed, options = OpenAI::Beta::Threads::MessageCreateParams.dump_request(params) @client.request( method: :post, path: ["threads/%1$s/messages", thread_id], body: parsed, - model: OpenAI::Models::Beta::Threads::Message, + model: OpenAI::Beta::Threads::Message, options: {extra_headers: {"OpenAI-Beta" => "assistants=v2"}, **options} ) end @@ -49,15 +48,14 @@ def create(thread_id, params) # @param message_id [String] The ID of the message to retrieve. # # @param thread_id [String] The ID of the [thread](https://platform.openai.com/docs/api-reference/threads) t - # ... # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # - # @return [OpenAI::Models::Beta::Threads::Message] + # @return [OpenAI::Beta::Threads::Message] # # @see OpenAI::Models::Beta::Threads::MessageRetrieveParams def retrieve(message_id, params) - parsed, options = OpenAI::Models::Beta::Threads::MessageRetrieveParams.dump_request(params) + parsed, options = OpenAI::Beta::Threads::MessageRetrieveParams.dump_request(params) thread_id = parsed.delete(:thread_id) do raise ArgumentError.new("missing required path argument #{_1}") @@ -65,7 +63,7 @@ def retrieve(message_id, params) @client.request( method: :get, path: ["threads/%1$s/messages/%2$s", thread_id, message_id], - model: OpenAI::Models::Beta::Threads::Message, + model: OpenAI::Beta::Threads::Message, options: {extra_headers: {"OpenAI-Beta" => "assistants=v2"}, **options} ) end @@ -82,15 +80,14 @@ def retrieve(message_id, params) # @param thread_id [String] Path param: The ID of the thread to which this message belongs. # # @param metadata [Hash{Symbol=>String}, nil] Body param: Set of 16 key-value pairs that can be attached to an object. This ca - # ... # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # - # @return [OpenAI::Models::Beta::Threads::Message] + # @return [OpenAI::Beta::Threads::Message] # # @see OpenAI::Models::Beta::Threads::MessageUpdateParams def update(message_id, params) - parsed, options = OpenAI::Models::Beta::Threads::MessageUpdateParams.dump_request(params) + parsed, options = OpenAI::Beta::Threads::MessageUpdateParams.dump_request(params) thread_id = parsed.delete(:thread_id) do raise ArgumentError.new("missing required path argument #{_1}") @@ -99,7 +96,7 @@ def update(message_id, params) method: :post, path: ["threads/%1$s/messages/%2$s", thread_id, message_id], body: parsed, - model: OpenAI::Models::Beta::Threads::Message, + model: OpenAI::Beta::Threads::Message, options: {extra_headers: {"OpenAI-Beta" => "assistants=v2"}, **options} ) end @@ -112,35 +109,30 @@ def update(message_id, params) # @overload list(thread_id, after: nil, before: nil, limit: nil, order: nil, run_id: nil, request_options: {}) # # @param thread_id [String] The ID of the [thread](https://platform.openai.com/docs/api-reference/threads) t - # ... # # @param after [String] A cursor for use in pagination. `after` is an object ID that defines your place - # ... # # @param before [String] A cursor for use in pagination. `before` is an object ID that defines your place - # ... # # @param limit [Integer] A limit on the number of objects to be returned. Limit can range between 1 and 1 - # ... # - # @param order [Symbol, OpenAI::Models::Beta::Threads::MessageListParams::Order] Sort order by the `created_at` timestamp of the objects. `asc` for ascending ord - # ... + # @param order [Symbol, OpenAI::Beta::Threads::MessageListParams::Order] Sort order by the `created_at` timestamp of the objects. `asc` for ascending ord # - # @param run_id [String] Filter messages by the run ID that generated them. ... + # @param run_id [String] Filter messages by the run ID that generated them. # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # - # @return [OpenAI::Internal::CursorPage] + # @return [OpenAI::Internal::CursorPage] # # @see OpenAI::Models::Beta::Threads::MessageListParams def list(thread_id, params = {}) - parsed, options = OpenAI::Models::Beta::Threads::MessageListParams.dump_request(params) + parsed, options = OpenAI::Beta::Threads::MessageListParams.dump_request(params) @client.request( method: :get, path: ["threads/%1$s/messages", thread_id], query: parsed, page: OpenAI::Internal::CursorPage, - model: OpenAI::Models::Beta::Threads::Message, + model: OpenAI::Beta::Threads::Message, options: {extra_headers: {"OpenAI-Beta" => "assistants=v2"}, **options} ) end @@ -155,11 +147,11 @@ def list(thread_id, params = {}) # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # - # @return [OpenAI::Models::Beta::Threads::MessageDeleted] + # @return [OpenAI::Beta::Threads::MessageDeleted] # # @see OpenAI::Models::Beta::Threads::MessageDeleteParams def delete(message_id, params) - parsed, options = OpenAI::Models::Beta::Threads::MessageDeleteParams.dump_request(params) + parsed, options = OpenAI::Beta::Threads::MessageDeleteParams.dump_request(params) thread_id = parsed.delete(:thread_id) do raise ArgumentError.new("missing required path argument #{_1}") @@ -167,7 +159,7 @@ def delete(message_id, params) @client.request( method: :delete, path: ["threads/%1$s/messages/%2$s", thread_id, message_id], - model: OpenAI::Models::Beta::Threads::MessageDeleted, + model: OpenAI::Beta::Threads::MessageDeleted, options: {extra_headers: {"OpenAI-Beta" => "assistants=v2"}, **options} ) end diff --git a/lib/openai/resources/beta/threads/runs.rb b/lib/openai/resources/beta/threads/runs.rb index 3f1b6d0d..cbf1b293 100644 --- a/lib/openai/resources/beta/threads/runs.rb +++ b/lib/openai/resources/beta/threads/runs.rb @@ -21,60 +21,46 @@ class Runs # @param thread_id [String] Path param: The ID of the thread to run. # # @param assistant_id [String] Body param: The ID of the [assistant](https://platform.openai.com/docs/api-refer - # ... # - # @param include [Array] Query param: A list of additional fields to include in the response. Currently t - # ... + # @param include [Array] Query param: A list of additional fields to include in the response. Currently t # # @param additional_instructions [String, nil] Body param: Appends additional instructions at the end of the instructions for t - # ... # - # @param additional_messages [Array, nil] Body param: Adds additional messages to the thread before creating the run. + # @param additional_messages [Array, nil] Body param: Adds additional messages to the thread before creating the run. # # @param instructions [String, nil] Body param: Overrides the [instructions](https://platform.openai.com/docs/api-re - # ... # # @param max_completion_tokens [Integer, nil] Body param: The maximum number of completion tokens that may be used over the co - # ... # # @param max_prompt_tokens [Integer, nil] Body param: The maximum number of prompt tokens that may be used over the course - # ... # # @param metadata [Hash{Symbol=>String}, nil] Body param: Set of 16 key-value pairs that can be attached to an object. This ca - # ... # - # @param model [String, Symbol, OpenAI::Models::ChatModel, nil] Body param: The ID of the [Model](https://platform.openai.com/docs/api-reference - # ... + # @param model [String, Symbol, OpenAI::ChatModel, nil] Body param: The ID of the [Model](https://platform.openai.com/docs/api-reference # # @param parallel_tool_calls [Boolean] Body param: Whether to enable [parallel function calling](https://platform.opena - # ... # - # @param reasoning_effort [Symbol, OpenAI::Models::ReasoningEffort, nil] Body param: **o-series models only** ... + # @param reasoning_effort [Symbol, OpenAI::ReasoningEffort, nil] Body param: **o-series models only** # - # @param response_format [Symbol, :auto, OpenAI::Models::ResponseFormatText, OpenAI::Models::ResponseFormatJSONObject, OpenAI::Models::ResponseFormatJSONSchema, nil] Body param: Specifies the format that the model must output. Compatible with [GP - # ... + # @param response_format [Symbol, :auto, OpenAI::ResponseFormatText, OpenAI::ResponseFormatJSONObject, OpenAI::ResponseFormatJSONSchema, nil] Body param: Specifies the format that the model must output. Compatible with [GP # # @param temperature [Float, nil] Body param: What sampling temperature to use, between 0 and 2. Higher values lik - # ... # - # @param tool_choice [Symbol, OpenAI::Models::Beta::AssistantToolChoiceOption::Auto, OpenAI::Models::Beta::AssistantToolChoice, nil] Body param: Controls which (if any) tool is called by the model. ... + # @param tool_choice [Symbol, OpenAI::Beta::AssistantToolChoiceOption::Auto, OpenAI::Beta::AssistantToolChoice, nil] Body param: Controls which (if any) tool is called by the model. # - # @param tools [Array, nil] Body param: Override the tools the assistant can use for this run. This is usefu - # ... + # @param tools [Array, nil] Body param: Override the tools the assistant can use for this run. This is usefu # # @param top_p [Float, nil] Body param: An alternative to sampling with temperature, called nucleus sampling - # ... # - # @param truncation_strategy [OpenAI::Models::Beta::Threads::RunCreateParams::TruncationStrategy, nil] Body param: Controls for how a thread will be truncated prior to the run. Use th - # ... + # @param truncation_strategy [OpenAI::Beta::Threads::RunCreateParams::TruncationStrategy, nil] Body param: Controls for how a thread will be truncated prior to the run. Use th # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # - # @return [OpenAI::Models::Beta::Threads::Run] + # @return [OpenAI::Beta::Threads::Run] # # @see OpenAI::Models::Beta::Threads::RunCreateParams def create(thread_id, params) - parsed, options = OpenAI::Models::Beta::Threads::RunCreateParams.dump_request(params) + parsed, options = OpenAI::Beta::Threads::RunCreateParams.dump_request(params) if parsed[:stream] message = "Please use `#create_stream_raw` for the streaming use case." raise ArgumentError.new(message) @@ -85,7 +71,7 @@ def create(thread_id, params) path: ["threads/%1$s/runs", thread_id], query: parsed.slice(*query_params), body: parsed.except(*query_params), - model: OpenAI::Models::Beta::Threads::Run, + model: OpenAI::Beta::Threads::Run, options: {extra_headers: {"OpenAI-Beta" => "assistants=v2"}, **options} ) end @@ -103,60 +89,46 @@ def create(thread_id, params) # @param thread_id [String] Path param: The ID of the thread to run. # # @param assistant_id [String] Body param: The ID of the [assistant](https://platform.openai.com/docs/api-refer - # ... # - # @param include [Array] Query param: A list of additional fields to include in the response. Currently t - # ... + # @param include [Array] Query param: A list of additional fields to include in the response. Currently t # # @param additional_instructions [String, nil] Body param: Appends additional instructions at the end of the instructions for t - # ... # - # @param additional_messages [Array, nil] Body param: Adds additional messages to the thread before creating the run. + # @param additional_messages [Array, nil] Body param: Adds additional messages to the thread before creating the run. # # @param instructions [String, nil] Body param: Overrides the [instructions](https://platform.openai.com/docs/api-re - # ... # # @param max_completion_tokens [Integer, nil] Body param: The maximum number of completion tokens that may be used over the co - # ... # # @param max_prompt_tokens [Integer, nil] Body param: The maximum number of prompt tokens that may be used over the course - # ... # # @param metadata [Hash{Symbol=>String}, nil] Body param: Set of 16 key-value pairs that can be attached to an object. This ca - # ... # - # @param model [String, Symbol, OpenAI::Models::ChatModel, nil] Body param: The ID of the [Model](https://platform.openai.com/docs/api-reference - # ... + # @param model [String, Symbol, OpenAI::ChatModel, nil] Body param: The ID of the [Model](https://platform.openai.com/docs/api-reference # # @param parallel_tool_calls [Boolean] Body param: Whether to enable [parallel function calling](https://platform.opena - # ... # - # @param reasoning_effort [Symbol, OpenAI::Models::ReasoningEffort, nil] Body param: **o-series models only** ... + # @param reasoning_effort [Symbol, OpenAI::ReasoningEffort, nil] Body param: **o-series models only** # - # @param response_format [Symbol, :auto, OpenAI::Models::ResponseFormatText, OpenAI::Models::ResponseFormatJSONObject, OpenAI::Models::ResponseFormatJSONSchema, nil] Body param: Specifies the format that the model must output. Compatible with [GP - # ... + # @param response_format [Symbol, :auto, OpenAI::ResponseFormatText, OpenAI::ResponseFormatJSONObject, OpenAI::ResponseFormatJSONSchema, nil] Body param: Specifies the format that the model must output. Compatible with [GP # # @param temperature [Float, nil] Body param: What sampling temperature to use, between 0 and 2. Higher values lik - # ... # - # @param tool_choice [Symbol, OpenAI::Models::Beta::AssistantToolChoiceOption::Auto, OpenAI::Models::Beta::AssistantToolChoice, nil] Body param: Controls which (if any) tool is called by the model. ... + # @param tool_choice [Symbol, OpenAI::Beta::AssistantToolChoiceOption::Auto, OpenAI::Beta::AssistantToolChoice, nil] Body param: Controls which (if any) tool is called by the model. # - # @param tools [Array, nil] Body param: Override the tools the assistant can use for this run. This is usefu - # ... + # @param tools [Array, nil] Body param: Override the tools the assistant can use for this run. This is usefu # # @param top_p [Float, nil] Body param: An alternative to sampling with temperature, called nucleus sampling - # ... # - # @param truncation_strategy [OpenAI::Models::Beta::Threads::RunCreateParams::TruncationStrategy, nil] Body param: Controls for how a thread will be truncated prior to the run. Use th - # ... + # @param truncation_strategy [OpenAI::Beta::Threads::RunCreateParams::TruncationStrategy, nil] Body param: Controls for how a thread will be truncated prior to the run. Use th # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # - # @return [OpenAI::Internal::Stream] + # @return [OpenAI::Internal::Stream] # # @see OpenAI::Models::Beta::Threads::RunCreateParams def create_stream_raw(thread_id, params) - parsed, options = OpenAI::Models::Beta::Threads::RunCreateParams.dump_request(params) + parsed, options = OpenAI::Beta::Threads::RunCreateParams.dump_request(params) unless parsed.fetch(:stream, true) message = "Please use `#create` for the non-streaming use case." raise ArgumentError.new(message) @@ -170,7 +142,7 @@ def create_stream_raw(thread_id, params) headers: {"accept" => "text/event-stream"}, body: parsed.except(*query_params), stream: OpenAI::Internal::Stream, - model: OpenAI::Models::Beta::AssistantStreamEvent, + model: OpenAI::Beta::AssistantStreamEvent, options: {extra_headers: {"OpenAI-Beta" => "assistants=v2"}, **options} ) end @@ -185,15 +157,14 @@ def create_stream_raw(thread_id, params) # @param run_id [String] The ID of the run to retrieve. # # @param thread_id [String] The ID of the [thread](https://platform.openai.com/docs/api-reference/threads) t - # ... # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # - # @return [OpenAI::Models::Beta::Threads::Run] + # @return [OpenAI::Beta::Threads::Run] # # @see OpenAI::Models::Beta::Threads::RunRetrieveParams def retrieve(run_id, params) - parsed, options = OpenAI::Models::Beta::Threads::RunRetrieveParams.dump_request(params) + parsed, options = OpenAI::Beta::Threads::RunRetrieveParams.dump_request(params) thread_id = parsed.delete(:thread_id) do raise ArgumentError.new("missing required path argument #{_1}") @@ -201,7 +172,7 @@ def retrieve(run_id, params) @client.request( method: :get, path: ["threads/%1$s/runs/%2$s", thread_id, run_id], - model: OpenAI::Models::Beta::Threads::Run, + model: OpenAI::Beta::Threads::Run, options: {extra_headers: {"OpenAI-Beta" => "assistants=v2"}, **options} ) end @@ -216,18 +187,16 @@ def retrieve(run_id, params) # @param run_id [String] Path param: The ID of the run to modify. # # @param thread_id [String] Path param: The ID of the [thread](https://platform.openai.com/docs/api-referenc - # ... # # @param metadata [Hash{Symbol=>String}, nil] Body param: Set of 16 key-value pairs that can be attached to an object. This ca - # ... # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # - # @return [OpenAI::Models::Beta::Threads::Run] + # @return [OpenAI::Beta::Threads::Run] # # @see OpenAI::Models::Beta::Threads::RunUpdateParams def update(run_id, params) - parsed, options = OpenAI::Models::Beta::Threads::RunUpdateParams.dump_request(params) + parsed, options = OpenAI::Beta::Threads::RunUpdateParams.dump_request(params) thread_id = parsed.delete(:thread_id) do raise ArgumentError.new("missing required path argument #{_1}") @@ -236,7 +205,7 @@ def update(run_id, params) method: :post, path: ["threads/%1$s/runs/%2$s", thread_id, run_id], body: parsed, - model: OpenAI::Models::Beta::Threads::Run, + model: OpenAI::Beta::Threads::Run, options: {extra_headers: {"OpenAI-Beta" => "assistants=v2"}, **options} ) end @@ -251,30 +220,26 @@ def update(run_id, params) # @param thread_id [String] The ID of the thread the run belongs to. # # @param after [String] A cursor for use in pagination. `after` is an object ID that defines your place - # ... # # @param before [String] A cursor for use in pagination. `before` is an object ID that defines your place - # ... # # @param limit [Integer] A limit on the number of objects to be returned. Limit can range between 1 and 1 - # ... # - # @param order [Symbol, OpenAI::Models::Beta::Threads::RunListParams::Order] Sort order by the `created_at` timestamp of the objects. `asc` for ascending ord - # ... + # @param order [Symbol, OpenAI::Beta::Threads::RunListParams::Order] Sort order by the `created_at` timestamp of the objects. `asc` for ascending ord # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # - # @return [OpenAI::Internal::CursorPage] + # @return [OpenAI::Internal::CursorPage] # # @see OpenAI::Models::Beta::Threads::RunListParams def list(thread_id, params = {}) - parsed, options = OpenAI::Models::Beta::Threads::RunListParams.dump_request(params) + parsed, options = OpenAI::Beta::Threads::RunListParams.dump_request(params) @client.request( method: :get, path: ["threads/%1$s/runs", thread_id], query: parsed, page: OpenAI::Internal::CursorPage, - model: OpenAI::Models::Beta::Threads::Run, + model: OpenAI::Beta::Threads::Run, options: {extra_headers: {"OpenAI-Beta" => "assistants=v2"}, **options} ) end @@ -289,11 +254,11 @@ def list(thread_id, params = {}) # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # - # @return [OpenAI::Models::Beta::Threads::Run] + # @return [OpenAI::Beta::Threads::Run] # # @see OpenAI::Models::Beta::Threads::RunCancelParams def cancel(run_id, params) - parsed, options = OpenAI::Models::Beta::Threads::RunCancelParams.dump_request(params) + parsed, options = OpenAI::Beta::Threads::RunCancelParams.dump_request(params) thread_id = parsed.delete(:thread_id) do raise ArgumentError.new("missing required path argument #{_1}") @@ -301,7 +266,7 @@ def cancel(run_id, params) @client.request( method: :post, path: ["threads/%1$s/runs/%2$s/cancel", thread_id, run_id], - model: OpenAI::Models::Beta::Threads::Run, + model: OpenAI::Beta::Threads::Run, options: {extra_headers: {"OpenAI-Beta" => "assistants=v2"}, **options} ) end @@ -322,17 +287,16 @@ def cancel(run_id, params) # @param run_id [String] Path param: The ID of the run that requires the tool output submission. # # @param thread_id [String] Path param: The ID of the [thread](https://platform.openai.com/docs/api-referenc - # ... # - # @param tool_outputs [Array] Body param: A list of tools for which the outputs are being submitted. + # @param tool_outputs [Array] Body param: A list of tools for which the outputs are being submitted. # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # - # @return [OpenAI::Models::Beta::Threads::Run] + # @return [OpenAI::Beta::Threads::Run] # # @see OpenAI::Models::Beta::Threads::RunSubmitToolOutputsParams def submit_tool_outputs(run_id, params) - parsed, options = OpenAI::Models::Beta::Threads::RunSubmitToolOutputsParams.dump_request(params) + parsed, options = OpenAI::Beta::Threads::RunSubmitToolOutputsParams.dump_request(params) if parsed[:stream] message = "Please use `#submit_tool_outputs_stream_raw` for the streaming use case." raise ArgumentError.new(message) @@ -345,7 +309,7 @@ def submit_tool_outputs(run_id, params) method: :post, path: ["threads/%1$s/runs/%2$s/submit_tool_outputs", thread_id, run_id], body: parsed, - model: OpenAI::Models::Beta::Threads::Run, + model: OpenAI::Beta::Threads::Run, options: {extra_headers: {"OpenAI-Beta" => "assistants=v2"}, **options} ) end @@ -366,17 +330,16 @@ def submit_tool_outputs(run_id, params) # @param run_id [String] Path param: The ID of the run that requires the tool output submission. # # @param thread_id [String] Path param: The ID of the [thread](https://platform.openai.com/docs/api-referenc - # ... # - # @param tool_outputs [Array] Body param: A list of tools for which the outputs are being submitted. + # @param tool_outputs [Array] Body param: A list of tools for which the outputs are being submitted. # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # - # @return [OpenAI::Internal::Stream] + # @return [OpenAI::Internal::Stream] # # @see OpenAI::Models::Beta::Threads::RunSubmitToolOutputsParams def submit_tool_outputs_stream_raw(run_id, params) - parsed, options = OpenAI::Models::Beta::Threads::RunSubmitToolOutputsParams.dump_request(params) + parsed, options = OpenAI::Beta::Threads::RunSubmitToolOutputsParams.dump_request(params) unless parsed.fetch(:stream, true) message = "Please use `#submit_tool_outputs` for the non-streaming use case." raise ArgumentError.new(message) @@ -392,7 +355,7 @@ def submit_tool_outputs_stream_raw(run_id, params) headers: {"accept" => "text/event-stream"}, body: parsed, stream: OpenAI::Internal::Stream, - model: OpenAI::Models::Beta::AssistantStreamEvent, + model: OpenAI::Beta::AssistantStreamEvent, options: {extra_headers: {"OpenAI-Beta" => "assistants=v2"}, **options} ) end diff --git a/lib/openai/resources/beta/threads/runs/steps.rb b/lib/openai/resources/beta/threads/runs/steps.rb index 011a0874..eaa27d6e 100644 --- a/lib/openai/resources/beta/threads/runs/steps.rb +++ b/lib/openai/resources/beta/threads/runs/steps.rb @@ -19,16 +19,15 @@ class Steps # # @param run_id [String] Path param: The ID of the run to which the run step belongs. # - # @param include [Array] Query param: A list of additional fields to include in the response. Currently t - # ... + # @param include [Array] Query param: A list of additional fields to include in the response. Currently t # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # - # @return [OpenAI::Models::Beta::Threads::Runs::RunStep] + # @return [OpenAI::Beta::Threads::Runs::RunStep] # # @see OpenAI::Models::Beta::Threads::Runs::StepRetrieveParams def retrieve(step_id, params) - parsed, options = OpenAI::Models::Beta::Threads::Runs::StepRetrieveParams.dump_request(params) + parsed, options = OpenAI::Beta::Threads::Runs::StepRetrieveParams.dump_request(params) thread_id = parsed.delete(:thread_id) do raise ArgumentError.new("missing required path argument #{_1}") @@ -41,7 +40,7 @@ def retrieve(step_id, params) method: :get, path: ["threads/%1$s/runs/%2$s/steps/%3$s", thread_id, run_id, step_id], query: parsed, - model: OpenAI::Models::Beta::Threads::Runs::RunStep, + model: OpenAI::Beta::Threads::Runs::RunStep, options: {extra_headers: {"OpenAI-Beta" => "assistants=v2"}, **options} ) end @@ -58,27 +57,22 @@ def retrieve(step_id, params) # @param thread_id [String] Path param: The ID of the thread the run and run steps belong to. # # @param after [String] Query param: A cursor for use in pagination. `after` is an object ID that define - # ... # # @param before [String] Query param: A cursor for use in pagination. `before` is an object ID that defin - # ... # - # @param include [Array] Query param: A list of additional fields to include in the response. Currently t - # ... + # @param include [Array] Query param: A list of additional fields to include in the response. Currently t # # @param limit [Integer] Query param: A limit on the number of objects to be returned. Limit can range be - # ... # - # @param order [Symbol, OpenAI::Models::Beta::Threads::Runs::StepListParams::Order] Query param: Sort order by the `created_at` timestamp of the objects. `asc` for - # ... + # @param order [Symbol, OpenAI::Beta::Threads::Runs::StepListParams::Order] Query param: Sort order by the `created_at` timestamp of the objects. `asc` for # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # - # @return [OpenAI::Internal::CursorPage] + # @return [OpenAI::Internal::CursorPage] # # @see OpenAI::Models::Beta::Threads::Runs::StepListParams def list(run_id, params) - parsed, options = OpenAI::Models::Beta::Threads::Runs::StepListParams.dump_request(params) + parsed, options = OpenAI::Beta::Threads::Runs::StepListParams.dump_request(params) thread_id = parsed.delete(:thread_id) do raise ArgumentError.new("missing required path argument #{_1}") @@ -88,7 +82,7 @@ def list(run_id, params) path: ["threads/%1$s/runs/%2$s/steps", thread_id, run_id], query: parsed, page: OpenAI::Internal::CursorPage, - model: OpenAI::Models::Beta::Threads::Runs::RunStep, + model: OpenAI::Beta::Threads::Runs::RunStep, options: {extra_headers: {"OpenAI-Beta" => "assistants=v2"}, **options} ) end diff --git a/lib/openai/resources/chat/completions.rb b/lib/openai/resources/chat/completions.rb index 651a775e..7ee4fee4 100644 --- a/lib/openai/resources/chat/completions.rb +++ b/lib/openai/resources/chat/completions.rb @@ -32,80 +32,73 @@ class Completions # # @overload create(messages:, model:, audio: nil, frequency_penalty: nil, function_call: nil, functions: nil, logit_bias: nil, logprobs: nil, max_completion_tokens: nil, max_tokens: nil, metadata: nil, modalities: nil, n: nil, parallel_tool_calls: nil, prediction: nil, presence_penalty: nil, reasoning_effort: nil, response_format: nil, seed: nil, service_tier: nil, stop: nil, store: nil, stream_options: nil, temperature: nil, tool_choice: nil, tools: nil, top_logprobs: nil, top_p: nil, user: nil, web_search_options: nil, request_options: {}) # - # @param messages [Array] A list of messages comprising the conversation so far. Depending on the ... + # @param messages [Array] A list of messages comprising the conversation so far. Depending on the # - # @param model [String, Symbol, OpenAI::Models::ChatModel] Model ID used to generate the response, like `gpt-4o` or `o3`. OpenAI ... + # @param model [String, Symbol, OpenAI::ChatModel] Model ID used to generate the response, like `gpt-4o` or `o3`. OpenAI # - # @param audio [OpenAI::Models::Chat::ChatCompletionAudioParam, nil] Parameters for audio output. Required when audio output is requested with ... + # @param audio [OpenAI::Chat::ChatCompletionAudioParam, nil] Parameters for audio output. Required when audio output is requested with # - # @param frequency_penalty [Float, nil] Number between -2.0 and 2.0. Positive values penalize new tokens based on ... + # @param frequency_penalty [Float, nil] Number between -2.0 and 2.0. Positive values penalize new tokens based on # - # @param function_call [Symbol, OpenAI::Models::Chat::CompletionCreateParams::FunctionCall::FunctionCallMode, OpenAI::Models::Chat::ChatCompletionFunctionCallOption] Deprecated in favor of `tool_choice`. ... + # @param function_call [Symbol, OpenAI::Chat::CompletionCreateParams::FunctionCall::FunctionCallMode, OpenAI::Chat::ChatCompletionFunctionCallOption] Deprecated in favor of `tool_choice`. # - # @param functions [Array] Deprecated in favor of `tools`. ... + # @param functions [Array] Deprecated in favor of `tools`. # - # @param logit_bias [Hash{Symbol=>Integer}, nil] Modify the likelihood of specified tokens appearing in the completion. ... + # @param logit_bias [Hash{Symbol=>Integer}, nil] Modify the likelihood of specified tokens appearing in the completion. # - # @param logprobs [Boolean, nil] Whether to return log probabilities of the output tokens or not. If true, ... + # @param logprobs [Boolean, nil] Whether to return log probabilities of the output tokens or not. If true, # # @param max_completion_tokens [Integer, nil] An upper bound for the number of tokens that can be generated for a completion, - # ... # - # @param max_tokens [Integer, nil] The maximum number of [tokens](/tokenizer) that can be generated in the ... + # @param max_tokens [Integer, nil] The maximum number of [tokens](/tokenizer) that can be generated in the # - # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be # - # @param modalities [Array, nil] Output types that you would like the model to generate. ... + # @param modalities [Array, nil] Output types that you would like the model to generate. # # @param n [Integer, nil] How many chat completion choices to generate for each input message. Note that y - # ... # # @param parallel_tool_calls [Boolean] Whether to enable [parallel function calling](https://platform.openai.com/docs/g - # ... # - # @param prediction [OpenAI::Models::Chat::ChatCompletionPredictionContent, nil] Static predicted output content, such as the content of a text file that is ... + # @param prediction [OpenAI::Chat::ChatCompletionPredictionContent, nil] Static predicted output content, such as the content of a text file that is # - # @param presence_penalty [Float, nil] Number between -2.0 and 2.0. Positive values penalize new tokens based on ... + # @param presence_penalty [Float, nil] Number between -2.0 and 2.0. Positive values penalize new tokens based on # - # @param reasoning_effort [Symbol, OpenAI::Models::ReasoningEffort, nil] **o-series models only** ... + # @param reasoning_effort [Symbol, OpenAI::ReasoningEffort, nil] **o-series models only** # - # @param response_format [OpenAI::Models::ResponseFormatText, OpenAI::Models::ResponseFormatJSONSchema, OpenAI::Models::ResponseFormatJSONObject] An object specifying the format that the model must output. ... + # @param response_format [OpenAI::ResponseFormatText, OpenAI::ResponseFormatJSONSchema, OpenAI::ResponseFormatJSONObject] An object specifying the format that the model must output. # - # @param seed [Integer, nil] This feature is in Beta. ... + # @param seed [Integer, nil] This feature is in Beta. # - # @param service_tier [Symbol, OpenAI::Models::Chat::CompletionCreateParams::ServiceTier, nil] Specifies the latency tier to use for processing the request. This parameter is - # ... + # @param service_tier [Symbol, OpenAI::Chat::CompletionCreateParams::ServiceTier, nil] Specifies the latency tier to use for processing the request. This parameter is # - # @param stop [String, Array, nil] Not supported with latest reasoning models `o3` and `o4-mini`. ... + # @param stop [String, Array, nil] Not supported with latest reasoning models `o3` and `o4-mini`. # - # @param store [Boolean, nil] Whether or not to store the output of this chat completion request for ... + # @param store [Boolean, nil] Whether or not to store the output of this chat completion request for # - # @param stream_options [OpenAI::Models::Chat::ChatCompletionStreamOptions, nil] Options for streaming response. Only set this when you set `stream: true`. ... + # @param stream_options [OpenAI::Chat::ChatCompletionStreamOptions, nil] Options for streaming response. Only set this when you set `stream: true`. # # @param temperature [Float, nil] What sampling temperature to use, between 0 and 2. Higher values like 0.8 will m - # ... # - # @param tool_choice [Symbol, OpenAI::Models::Chat::ChatCompletionToolChoiceOption::Auto, OpenAI::Models::Chat::ChatCompletionNamedToolChoice] Controls which (if any) tool is called by the model. ... + # @param tool_choice [Symbol, OpenAI::Chat::ChatCompletionToolChoiceOption::Auto, OpenAI::Chat::ChatCompletionNamedToolChoice] Controls which (if any) tool is called by the model. # - # @param tools [Array] A list of tools the model may call. Currently, only functions are supported as a - # ... + # @param tools [Array] A list of tools the model may call. Currently, only functions are supported as a # - # @param top_logprobs [Integer, nil] An integer between 0 and 20 specifying the number of most likely tokens to ... + # @param top_logprobs [Integer, nil] An integer between 0 and 20 specifying the number of most likely tokens to # - # @param top_p [Float, nil] An alternative to sampling with temperature, called nucleus sampling, ... + # @param top_p [Float, nil] An alternative to sampling with temperature, called nucleus sampling, # # @param user [String] A unique identifier representing your end-user, which can help OpenAI to monitor - # ... # - # @param web_search_options [OpenAI::Models::Chat::CompletionCreateParams::WebSearchOptions] This tool searches the web for relevant results to use in a response. ... + # @param web_search_options [OpenAI::Chat::CompletionCreateParams::WebSearchOptions] This tool searches the web for relevant results to use in a response. # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # - # @return [OpenAI::Models::Chat::ChatCompletion] + # @return [OpenAI::Chat::ChatCompletion] # # @see OpenAI::Models::Chat::CompletionCreateParams def create(params) - parsed, options = OpenAI::Models::Chat::CompletionCreateParams.dump_request(params) + parsed, options = OpenAI::Chat::CompletionCreateParams.dump_request(params) if parsed[:stream] message = "Please use `#stream_raw` for the streaming use case." raise ArgumentError.new(message) @@ -183,7 +176,7 @@ def create(params) path: "chat/completions", body: parsed, unwrap: unwrap, - model: OpenAI::Models::Chat::ChatCompletion, + model: OpenAI::Chat::ChatCompletion, options: options ) end @@ -217,80 +210,73 @@ def stream # # @overload stream_raw(messages:, model:, audio: nil, frequency_penalty: nil, function_call: nil, functions: nil, logit_bias: nil, logprobs: nil, max_completion_tokens: nil, max_tokens: nil, metadata: nil, modalities: nil, n: nil, parallel_tool_calls: nil, prediction: nil, presence_penalty: nil, reasoning_effort: nil, response_format: nil, seed: nil, service_tier: nil, stop: nil, store: nil, stream_options: nil, temperature: nil, tool_choice: nil, tools: nil, top_logprobs: nil, top_p: nil, user: nil, web_search_options: nil, request_options: {}) # - # @param messages [Array] A list of messages comprising the conversation so far. Depending on the ... + # @param messages [Array] A list of messages comprising the conversation so far. Depending on the # - # @param model [String, Symbol, OpenAI::Models::ChatModel] Model ID used to generate the response, like `gpt-4o` or `o3`. OpenAI ... + # @param model [String, Symbol, OpenAI::ChatModel] Model ID used to generate the response, like `gpt-4o` or `o3`. OpenAI # - # @param audio [OpenAI::Models::Chat::ChatCompletionAudioParam, nil] Parameters for audio output. Required when audio output is requested with ... + # @param audio [OpenAI::Chat::ChatCompletionAudioParam, nil] Parameters for audio output. Required when audio output is requested with # - # @param frequency_penalty [Float, nil] Number between -2.0 and 2.0. Positive values penalize new tokens based on ... + # @param frequency_penalty [Float, nil] Number between -2.0 and 2.0. Positive values penalize new tokens based on # - # @param function_call [Symbol, OpenAI::Models::Chat::CompletionCreateParams::FunctionCall::FunctionCallMode, OpenAI::Models::Chat::ChatCompletionFunctionCallOption] Deprecated in favor of `tool_choice`. ... + # @param function_call [Symbol, OpenAI::Chat::CompletionCreateParams::FunctionCall::FunctionCallMode, OpenAI::Chat::ChatCompletionFunctionCallOption] Deprecated in favor of `tool_choice`. # - # @param functions [Array] Deprecated in favor of `tools`. ... + # @param functions [Array] Deprecated in favor of `tools`. # - # @param logit_bias [Hash{Symbol=>Integer}, nil] Modify the likelihood of specified tokens appearing in the completion. ... + # @param logit_bias [Hash{Symbol=>Integer}, nil] Modify the likelihood of specified tokens appearing in the completion. # - # @param logprobs [Boolean, nil] Whether to return log probabilities of the output tokens or not. If true, ... + # @param logprobs [Boolean, nil] Whether to return log probabilities of the output tokens or not. If true, # # @param max_completion_tokens [Integer, nil] An upper bound for the number of tokens that can be generated for a completion, - # ... # - # @param max_tokens [Integer, nil] The maximum number of [tokens](/tokenizer) that can be generated in the ... + # @param max_tokens [Integer, nil] The maximum number of [tokens](/tokenizer) that can be generated in the # - # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be # - # @param modalities [Array, nil] Output types that you would like the model to generate. ... + # @param modalities [Array, nil] Output types that you would like the model to generate. # # @param n [Integer, nil] How many chat completion choices to generate for each input message. Note that y - # ... # # @param parallel_tool_calls [Boolean] Whether to enable [parallel function calling](https://platform.openai.com/docs/g - # ... # - # @param prediction [OpenAI::Models::Chat::ChatCompletionPredictionContent, nil] Static predicted output content, such as the content of a text file that is ... + # @param prediction [OpenAI::Chat::ChatCompletionPredictionContent, nil] Static predicted output content, such as the content of a text file that is # - # @param presence_penalty [Float, nil] Number between -2.0 and 2.0. Positive values penalize new tokens based on ... + # @param presence_penalty [Float, nil] Number between -2.0 and 2.0. Positive values penalize new tokens based on # - # @param reasoning_effort [Symbol, OpenAI::Models::ReasoningEffort, nil] **o-series models only** ... + # @param reasoning_effort [Symbol, OpenAI::ReasoningEffort, nil] **o-series models only** # - # @param response_format [OpenAI::Models::ResponseFormatText, OpenAI::Models::ResponseFormatJSONSchema, OpenAI::Models::ResponseFormatJSONObject] An object specifying the format that the model must output. ... + # @param response_format [OpenAI::ResponseFormatText, OpenAI::ResponseFormatJSONSchema, OpenAI::ResponseFormatJSONObject] An object specifying the format that the model must output. # - # @param seed [Integer, nil] This feature is in Beta. ... + # @param seed [Integer, nil] This feature is in Beta. # - # @param service_tier [Symbol, OpenAI::Models::Chat::CompletionCreateParams::ServiceTier, nil] Specifies the latency tier to use for processing the request. This parameter is - # ... + # @param service_tier [Symbol, OpenAI::Chat::CompletionCreateParams::ServiceTier, nil] Specifies the latency tier to use for processing the request. This parameter is # - # @param stop [String, Array, nil] Not supported with latest reasoning models `o3` and `o4-mini`. ... + # @param stop [String, Array, nil] Not supported with latest reasoning models `o3` and `o4-mini`. # - # @param store [Boolean, nil] Whether or not to store the output of this chat completion request for ... + # @param store [Boolean, nil] Whether or not to store the output of this chat completion request for # - # @param stream_options [OpenAI::Models::Chat::ChatCompletionStreamOptions, nil] Options for streaming response. Only set this when you set `stream: true`. ... + # @param stream_options [OpenAI::Chat::ChatCompletionStreamOptions, nil] Options for streaming response. Only set this when you set `stream: true`. # # @param temperature [Float, nil] What sampling temperature to use, between 0 and 2. Higher values like 0.8 will m - # ... # - # @param tool_choice [Symbol, OpenAI::Models::Chat::ChatCompletionToolChoiceOption::Auto, OpenAI::Models::Chat::ChatCompletionNamedToolChoice] Controls which (if any) tool is called by the model. ... + # @param tool_choice [Symbol, OpenAI::Chat::ChatCompletionToolChoiceOption::Auto, OpenAI::Chat::ChatCompletionNamedToolChoice] Controls which (if any) tool is called by the model. # - # @param tools [Array] A list of tools the model may call. Currently, only functions are supported as a - # ... + # @param tools [Array] A list of tools the model may call. Currently, only functions are supported as a # - # @param top_logprobs [Integer, nil] An integer between 0 and 20 specifying the number of most likely tokens to ... + # @param top_logprobs [Integer, nil] An integer between 0 and 20 specifying the number of most likely tokens to # - # @param top_p [Float, nil] An alternative to sampling with temperature, called nucleus sampling, ... + # @param top_p [Float, nil] An alternative to sampling with temperature, called nucleus sampling, # # @param user [String] A unique identifier representing your end-user, which can help OpenAI to monitor - # ... # - # @param web_search_options [OpenAI::Models::Chat::CompletionCreateParams::WebSearchOptions] This tool searches the web for relevant results to use in a response. ... + # @param web_search_options [OpenAI::Chat::CompletionCreateParams::WebSearchOptions] This tool searches the web for relevant results to use in a response. # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # - # @return [OpenAI::Internal::Stream] + # @return [OpenAI::Internal::Stream] # # @see OpenAI::Models::Chat::CompletionCreateParams def stream_raw(params) - parsed, options = OpenAI::Models::Chat::CompletionCreateParams.dump_request(params) + parsed, options = OpenAI::Chat::CompletionCreateParams.dump_request(params) unless parsed.fetch(:stream, true) message = "Please use `#create` for the non-streaming use case." raise ArgumentError.new(message) @@ -302,7 +288,7 @@ def stream_raw(params) headers: {"accept" => "text/event-stream"}, body: parsed, stream: OpenAI::Internal::Stream, - model: OpenAI::Models::Chat::ChatCompletionChunk, + model: OpenAI::Chat::ChatCompletionChunk, options: options ) end @@ -316,14 +302,14 @@ def stream_raw(params) # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # - # @return [OpenAI::Models::Chat::ChatCompletion] + # @return [OpenAI::Chat::ChatCompletion] # # @see OpenAI::Models::Chat::CompletionRetrieveParams def retrieve(completion_id, params = {}) @client.request( method: :get, path: ["chat/completions/%1$s", completion_id], - model: OpenAI::Models::Chat::ChatCompletion, + model: OpenAI::Chat::ChatCompletion, options: params[:request_options] ) end @@ -339,20 +325,20 @@ def retrieve(completion_id, params = {}) # # @param completion_id [String] The ID of the chat completion to update. # - # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # - # @return [OpenAI::Models::Chat::ChatCompletion] + # @return [OpenAI::Chat::ChatCompletion] # # @see OpenAI::Models::Chat::CompletionUpdateParams def update(completion_id, params) - parsed, options = OpenAI::Models::Chat::CompletionUpdateParams.dump_request(params) + parsed, options = OpenAI::Chat::CompletionUpdateParams.dump_request(params) @client.request( method: :post, path: ["chat/completions/%1$s", completion_id], body: parsed, - model: OpenAI::Models::Chat::ChatCompletion, + model: OpenAI::Chat::ChatCompletion, options: options ) end @@ -369,26 +355,25 @@ def update(completion_id, params) # # @param limit [Integer] Number of Chat Completions to retrieve. # - # @param metadata [Hash{Symbol=>String}, nil] A list of metadata keys to filter the Chat Completions by. Example: ... + # @param metadata [Hash{Symbol=>String}, nil] A list of metadata keys to filter the Chat Completions by. Example: # # @param model [String] The model used to generate the Chat Completions. # - # @param order [Symbol, OpenAI::Models::Chat::CompletionListParams::Order] Sort order for Chat Completions by timestamp. Use `asc` for ascending order or ` - # ... + # @param order [Symbol, OpenAI::Chat::CompletionListParams::Order] Sort order for Chat Completions by timestamp. Use `asc` for ascending order or ` # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # - # @return [OpenAI::Internal::CursorPage] + # @return [OpenAI::Internal::CursorPage] # # @see OpenAI::Models::Chat::CompletionListParams def list(params = {}) - parsed, options = OpenAI::Models::Chat::CompletionListParams.dump_request(params) + parsed, options = OpenAI::Chat::CompletionListParams.dump_request(params) @client.request( method: :get, path: "chat/completions", query: parsed, page: OpenAI::Internal::CursorPage, - model: OpenAI::Models::Chat::ChatCompletion, + model: OpenAI::Chat::ChatCompletion, options: options ) end @@ -402,14 +387,14 @@ def list(params = {}) # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # - # @return [OpenAI::Models::Chat::ChatCompletionDeleted] + # @return [OpenAI::Chat::ChatCompletionDeleted] # # @see OpenAI::Models::Chat::CompletionDeleteParams def delete(completion_id, params = {}) @client.request( method: :delete, path: ["chat/completions/%1$s", completion_id], - model: OpenAI::Models::Chat::ChatCompletionDeleted, + model: OpenAI::Chat::ChatCompletionDeleted, options: params[:request_options] ) end diff --git a/lib/openai/resources/chat/completions/messages.rb b/lib/openai/resources/chat/completions/messages.rb index a1dd20ca..36a3e3c8 100644 --- a/lib/openai/resources/chat/completions/messages.rb +++ b/lib/openai/resources/chat/completions/messages.rb @@ -19,22 +19,21 @@ class Messages # # @param limit [Integer] Number of messages to retrieve. # - # @param order [Symbol, OpenAI::Models::Chat::Completions::MessageListParams::Order] Sort order for messages by timestamp. Use `asc` for ascending order or `desc` fo - # ... + # @param order [Symbol, OpenAI::Chat::Completions::MessageListParams::Order] Sort order for messages by timestamp. Use `asc` for ascending order or `desc` fo # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # - # @return [OpenAI::Internal::CursorPage] + # @return [OpenAI::Internal::CursorPage] # # @see OpenAI::Models::Chat::Completions::MessageListParams def list(completion_id, params = {}) - parsed, options = OpenAI::Models::Chat::Completions::MessageListParams.dump_request(params) + parsed, options = OpenAI::Chat::Completions::MessageListParams.dump_request(params) @client.request( method: :get, path: ["chat/completions/%1$s/messages", completion_id], query: parsed, page: OpenAI::Internal::CursorPage, - model: OpenAI::Models::Chat::ChatCompletionStoreMessage, + model: OpenAI::Chat::ChatCompletionStoreMessage, options: options ) end diff --git a/lib/openai/resources/completions.rb b/lib/openai/resources/completions.rb index 7b563203..f65e1891 100644 --- a/lib/openai/resources/completions.rb +++ b/lib/openai/resources/completions.rb @@ -12,58 +12,47 @@ class Completions # # @overload create(model:, prompt:, best_of: nil, echo: nil, frequency_penalty: nil, logit_bias: nil, logprobs: nil, max_tokens: nil, n: nil, presence_penalty: nil, seed: nil, stop: nil, stream_options: nil, suffix: nil, temperature: nil, top_p: nil, user: nil, request_options: {}) # - # @param model [String, Symbol, OpenAI::Models::CompletionCreateParams::Model] ID of the model to use. You can use the [List models](https://platform.openai.co - # ... + # @param model [String, Symbol, OpenAI::CompletionCreateParams::Model] ID of the model to use. You can use the [List models](https://platform.openai.co # # @param prompt [String, Array, Array, Array>, nil] The prompt(s) to generate completions for, encoded as a string, array of strings - # ... # # @param best_of [Integer, nil] Generates `best_of` completions server-side and returns the "best" (the one with - # ... # - # @param echo [Boolean, nil] Echo back the prompt in addition to the completion ... + # @param echo [Boolean, nil] Echo back the prompt in addition to the completion # # @param frequency_penalty [Float, nil] Number between -2.0 and 2.0. Positive values penalize new tokens based on their - # ... # - # @param logit_bias [Hash{Symbol=>Integer}, nil] Modify the likelihood of specified tokens appearing in the completion. ... + # @param logit_bias [Hash{Symbol=>Integer}, nil] Modify the likelihood of specified tokens appearing in the completion. # # @param logprobs [Integer, nil] Include the log probabilities on the `logprobs` most likely output tokens, as we - # ... # # @param max_tokens [Integer, nil] The maximum number of [tokens](/tokenizer) that can be generated in the completi - # ... # - # @param n [Integer, nil] How many completions to generate for each prompt. ... + # @param n [Integer, nil] How many completions to generate for each prompt. # # @param presence_penalty [Float, nil] Number between -2.0 and 2.0. Positive values penalize new tokens based on whethe - # ... # # @param seed [Integer, nil] If specified, our system will make a best effort to sample deterministically, su - # ... # - # @param stop [String, Array, nil] Not supported with latest reasoning models `o3` and `o4-mini`. ... + # @param stop [String, Array, nil] Not supported with latest reasoning models `o3` and `o4-mini`. # - # @param stream_options [OpenAI::Models::Chat::ChatCompletionStreamOptions, nil] Options for streaming response. Only set this when you set `stream: true`. ... + # @param stream_options [OpenAI::Chat::ChatCompletionStreamOptions, nil] Options for streaming response. Only set this when you set `stream: true`. # - # @param suffix [String, nil] The suffix that comes after a completion of inserted text. ... + # @param suffix [String, nil] The suffix that comes after a completion of inserted text. # # @param temperature [Float, nil] What sampling temperature to use, between 0 and 2. Higher values like 0.8 will m - # ... # # @param top_p [Float, nil] An alternative to sampling with temperature, called nucleus sampling, where the - # ... # # @param user [String] A unique identifier representing your end-user, which can help OpenAI to monitor - # ... # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # - # @return [OpenAI::Models::Completion] + # @return [OpenAI::Completion] # # @see OpenAI::Models::CompletionCreateParams def create(params) - parsed, options = OpenAI::Models::CompletionCreateParams.dump_request(params) + parsed, options = OpenAI::CompletionCreateParams.dump_request(params) if parsed[:stream] message = "Please use `#create_streaming` for the streaming use case." raise ArgumentError.new(message) @@ -72,7 +61,7 @@ def create(params) method: :post, path: "completions", body: parsed, - model: OpenAI::Models::Completion, + model: OpenAI::Completion, options: options ) end @@ -86,58 +75,47 @@ def create(params) # # @overload create_streaming(model:, prompt:, best_of: nil, echo: nil, frequency_penalty: nil, logit_bias: nil, logprobs: nil, max_tokens: nil, n: nil, presence_penalty: nil, seed: nil, stop: nil, stream_options: nil, suffix: nil, temperature: nil, top_p: nil, user: nil, request_options: {}) # - # @param model [String, Symbol, OpenAI::Models::CompletionCreateParams::Model] ID of the model to use. You can use the [List models](https://platform.openai.co - # ... + # @param model [String, Symbol, OpenAI::CompletionCreateParams::Model] ID of the model to use. You can use the [List models](https://platform.openai.co # # @param prompt [String, Array, Array, Array>, nil] The prompt(s) to generate completions for, encoded as a string, array of strings - # ... # # @param best_of [Integer, nil] Generates `best_of` completions server-side and returns the "best" (the one with - # ... # - # @param echo [Boolean, nil] Echo back the prompt in addition to the completion ... + # @param echo [Boolean, nil] Echo back the prompt in addition to the completion # # @param frequency_penalty [Float, nil] Number between -2.0 and 2.0. Positive values penalize new tokens based on their - # ... # - # @param logit_bias [Hash{Symbol=>Integer}, nil] Modify the likelihood of specified tokens appearing in the completion. ... + # @param logit_bias [Hash{Symbol=>Integer}, nil] Modify the likelihood of specified tokens appearing in the completion. # # @param logprobs [Integer, nil] Include the log probabilities on the `logprobs` most likely output tokens, as we - # ... # # @param max_tokens [Integer, nil] The maximum number of [tokens](/tokenizer) that can be generated in the completi - # ... # - # @param n [Integer, nil] How many completions to generate for each prompt. ... + # @param n [Integer, nil] How many completions to generate for each prompt. # # @param presence_penalty [Float, nil] Number between -2.0 and 2.0. Positive values penalize new tokens based on whethe - # ... # # @param seed [Integer, nil] If specified, our system will make a best effort to sample deterministically, su - # ... # - # @param stop [String, Array, nil] Not supported with latest reasoning models `o3` and `o4-mini`. ... + # @param stop [String, Array, nil] Not supported with latest reasoning models `o3` and `o4-mini`. # - # @param stream_options [OpenAI::Models::Chat::ChatCompletionStreamOptions, nil] Options for streaming response. Only set this when you set `stream: true`. ... + # @param stream_options [OpenAI::Chat::ChatCompletionStreamOptions, nil] Options for streaming response. Only set this when you set `stream: true`. # - # @param suffix [String, nil] The suffix that comes after a completion of inserted text. ... + # @param suffix [String, nil] The suffix that comes after a completion of inserted text. # # @param temperature [Float, nil] What sampling temperature to use, between 0 and 2. Higher values like 0.8 will m - # ... # # @param top_p [Float, nil] An alternative to sampling with temperature, called nucleus sampling, where the - # ... # # @param user [String] A unique identifier representing your end-user, which can help OpenAI to monitor - # ... # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # - # @return [OpenAI::Internal::Stream] + # @return [OpenAI::Internal::Stream] # # @see OpenAI::Models::CompletionCreateParams def create_streaming(params) - parsed, options = OpenAI::Models::CompletionCreateParams.dump_request(params) + parsed, options = OpenAI::CompletionCreateParams.dump_request(params) unless parsed.fetch(:stream, true) message = "Please use `#create` for the non-streaming use case." raise ArgumentError.new(message) @@ -149,7 +127,7 @@ def create_streaming(params) headers: {"accept" => "text/event-stream"}, body: parsed, stream: OpenAI::Internal::Stream, - model: OpenAI::Models::Completion, + model: OpenAI::Completion, options: options ) end diff --git a/lib/openai/resources/embeddings.rb b/lib/openai/resources/embeddings.rb index 2e0577e6..8d709c8b 100644 --- a/lib/openai/resources/embeddings.rb +++ b/lib/openai/resources/embeddings.rb @@ -11,32 +11,27 @@ class Embeddings # @overload create(input:, model:, dimensions: nil, encoding_format: nil, user: nil, request_options: {}) # # @param input [String, Array, Array, Array>] Input text to embed, encoded as a string or array of tokens. To embed multiple i - # ... # - # @param model [String, Symbol, OpenAI::Models::EmbeddingModel] ID of the model to use. You can use the [List models](https://platform.openai.co - # ... + # @param model [String, Symbol, OpenAI::EmbeddingModel] ID of the model to use. You can use the [List models](https://platform.openai.co # # @param dimensions [Integer] The number of dimensions the resulting output embeddings should have. Only suppo - # ... # - # @param encoding_format [Symbol, OpenAI::Models::EmbeddingCreateParams::EncodingFormat] The format to return the embeddings in. Can be either `float` or [`base64`](http - # ... + # @param encoding_format [Symbol, OpenAI::EmbeddingCreateParams::EncodingFormat] The format to return the embeddings in. Can be either `float` or [`base64`](http # # @param user [String] A unique identifier representing your end-user, which can help OpenAI to monitor - # ... # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # - # @return [OpenAI::Models::CreateEmbeddingResponse] + # @return [OpenAI::CreateEmbeddingResponse] # # @see OpenAI::Models::EmbeddingCreateParams def create(params) - parsed, options = OpenAI::Models::EmbeddingCreateParams.dump_request(params) + parsed, options = OpenAI::EmbeddingCreateParams.dump_request(params) @client.request( method: :post, path: "embeddings", body: parsed, - model: OpenAI::Models::CreateEmbeddingResponse, + model: OpenAI::CreateEmbeddingResponse, options: options ) end diff --git a/lib/openai/resources/evals.rb b/lib/openai/resources/evals.rb index 9decea6d..23f0de0b 100644 --- a/lib/openai/resources/evals.rb +++ b/lib/openai/resources/evals.rb @@ -17,11 +17,11 @@ class Evals # # @overload create(data_source_config:, testing_criteria:, metadata: nil, name: nil, request_options: {}) # - # @param data_source_config [OpenAI::Models::EvalCreateParams::DataSourceConfig::Custom, OpenAI::Models::EvalCreateParams::DataSourceConfig::Logs] The configuration for the data source used for the evaluation runs. + # @param data_source_config [OpenAI::EvalCreateParams::DataSourceConfig::Custom, OpenAI::EvalCreateParams::DataSourceConfig::Logs] The configuration for the data source used for the evaluation runs. # - # @param testing_criteria [Array] A list of graders for all eval runs in this group. + # @param testing_criteria [Array] A list of graders for all eval runs in this group. # - # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be # # @param name [String] The name of the evaluation. # @@ -31,7 +31,7 @@ class Evals # # @see OpenAI::Models::EvalCreateParams def create(params) - parsed, options = OpenAI::Models::EvalCreateParams.dump_request(params) + parsed, options = OpenAI::EvalCreateParams.dump_request(params) @client.request( method: :post, path: "evals", @@ -70,7 +70,7 @@ def retrieve(eval_id, params = {}) # # @param eval_id [String] The ID of the evaluation to update. # - # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be # # @param name [String] Rename the evaluation. # @@ -80,7 +80,7 @@ def retrieve(eval_id, params = {}) # # @see OpenAI::Models::EvalUpdateParams def update(eval_id, params = {}) - parsed, options = OpenAI::Models::EvalUpdateParams.dump_request(params) + parsed, options = OpenAI::EvalUpdateParams.dump_request(params) @client.request( method: :post, path: ["evals/%1$s", eval_id], @@ -101,10 +101,9 @@ def update(eval_id, params = {}) # # @param limit [Integer] Number of evals to retrieve. # - # @param order [Symbol, OpenAI::Models::EvalListParams::Order] Sort order for evals by timestamp. Use `asc` for ascending order or `desc` for d - # ... + # @param order [Symbol, OpenAI::EvalListParams::Order] Sort order for evals by timestamp. Use `asc` for ascending order or `desc` for d # - # @param order_by [Symbol, OpenAI::Models::EvalListParams::OrderBy] Evals can be ordered by creation time or last updated time. Use ... + # @param order_by [Symbol, OpenAI::EvalListParams::OrderBy] Evals can be ordered by creation time or last updated time. Use # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # @@ -112,7 +111,7 @@ def update(eval_id, params = {}) # # @see OpenAI::Models::EvalListParams def list(params = {}) - parsed, options = OpenAI::Models::EvalListParams.dump_request(params) + parsed, options = OpenAI::EvalListParams.dump_request(params) @client.request( method: :get, path: "evals", diff --git a/lib/openai/resources/evals/runs.rb b/lib/openai/resources/evals/runs.rb index 0bd63a75..590951f6 100644 --- a/lib/openai/resources/evals/runs.rb +++ b/lib/openai/resources/evals/runs.rb @@ -16,9 +16,9 @@ class Runs # # @param eval_id [String] The ID of the evaluation to create a run for. # - # @param data_source [OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource, OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource] Details about the run's data source. + # @param data_source [OpenAI::Evals::CreateEvalJSONLRunDataSource, OpenAI::Evals::CreateEvalCompletionsRunDataSource, OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource] Details about the run's data source. # - # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be # # @param name [String] The name of the run. # @@ -28,7 +28,7 @@ class Runs # # @see OpenAI::Models::Evals::RunCreateParams def create(eval_id, params) - parsed, options = OpenAI::Models::Evals::RunCreateParams.dump_request(params) + parsed, options = OpenAI::Evals::RunCreateParams.dump_request(params) @client.request( method: :post, path: ["evals/%1$s/runs", eval_id], @@ -52,7 +52,7 @@ def create(eval_id, params) # # @see OpenAI::Models::Evals::RunRetrieveParams def retrieve(run_id, params) - parsed, options = OpenAI::Models::Evals::RunRetrieveParams.dump_request(params) + parsed, options = OpenAI::Evals::RunRetrieveParams.dump_request(params) eval_id = parsed.delete(:eval_id) do raise ArgumentError.new("missing required path argument #{_1}") @@ -78,11 +78,9 @@ def retrieve(run_id, params) # # @param limit [Integer] Number of runs to retrieve. # - # @param order [Symbol, OpenAI::Models::Evals::RunListParams::Order] Sort order for runs by timestamp. Use `asc` for ascending order or `desc` for de - # ... + # @param order [Symbol, OpenAI::Evals::RunListParams::Order] Sort order for runs by timestamp. Use `asc` for ascending order or `desc` for de # - # @param status [Symbol, OpenAI::Models::Evals::RunListParams::Status] Filter runs by status. One of `queued` | `in_progress` | `failed` | `completed` - # ... + # @param status [Symbol, OpenAI::Evals::RunListParams::Status] Filter runs by status. One of `queued` | `in_progress` | `failed` | `completed` # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # @@ -90,7 +88,7 @@ def retrieve(run_id, params) # # @see OpenAI::Models::Evals::RunListParams def list(eval_id, params = {}) - parsed, options = OpenAI::Models::Evals::RunListParams.dump_request(params) + parsed, options = OpenAI::Evals::RunListParams.dump_request(params) @client.request( method: :get, path: ["evals/%1$s/runs", eval_id], @@ -115,7 +113,7 @@ def list(eval_id, params = {}) # # @see OpenAI::Models::Evals::RunDeleteParams def delete(run_id, params) - parsed, options = OpenAI::Models::Evals::RunDeleteParams.dump_request(params) + parsed, options = OpenAI::Evals::RunDeleteParams.dump_request(params) eval_id = parsed.delete(:eval_id) do raise ArgumentError.new("missing required path argument #{_1}") @@ -142,7 +140,7 @@ def delete(run_id, params) # # @see OpenAI::Models::Evals::RunCancelParams def cancel(run_id, params) - parsed, options = OpenAI::Models::Evals::RunCancelParams.dump_request(params) + parsed, options = OpenAI::Evals::RunCancelParams.dump_request(params) eval_id = parsed.delete(:eval_id) do raise ArgumentError.new("missing required path argument #{_1}") diff --git a/lib/openai/resources/evals/runs/output_items.rb b/lib/openai/resources/evals/runs/output_items.rb index 04624e2d..0d80996a 100644 --- a/lib/openai/resources/evals/runs/output_items.rb +++ b/lib/openai/resources/evals/runs/output_items.rb @@ -21,7 +21,7 @@ class OutputItems # # @see OpenAI::Models::Evals::Runs::OutputItemRetrieveParams def retrieve(output_item_id, params) - parsed, options = OpenAI::Models::Evals::Runs::OutputItemRetrieveParams.dump_request(params) + parsed, options = OpenAI::Evals::Runs::OutputItemRetrieveParams.dump_request(params) eval_id = parsed.delete(:eval_id) do raise ArgumentError.new("missing required path argument #{_1}") @@ -50,15 +50,12 @@ def retrieve(output_item_id, params) # @param eval_id [String] Path param: The ID of the evaluation to retrieve runs for. # # @param after [String] Query param: Identifier for the last output item from the previous pagination re - # ... # # @param limit [Integer] Query param: Number of output items to retrieve. # - # @param order [Symbol, OpenAI::Models::Evals::Runs::OutputItemListParams::Order] Query param: Sort order for output items by timestamp. Use `asc` for ascending o - # ... + # @param order [Symbol, OpenAI::Evals::Runs::OutputItemListParams::Order] Query param: Sort order for output items by timestamp. Use `asc` for ascending o # - # @param status [Symbol, OpenAI::Models::Evals::Runs::OutputItemListParams::Status] Query param: Filter output items by status. Use `failed` to filter by failed out - # ... + # @param status [Symbol, OpenAI::Evals::Runs::OutputItemListParams::Status] Query param: Filter output items by status. Use `failed` to filter by failed out # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # @@ -66,7 +63,7 @@ def retrieve(output_item_id, params) # # @see OpenAI::Models::Evals::Runs::OutputItemListParams def list(run_id, params) - parsed, options = OpenAI::Models::Evals::Runs::OutputItemListParams.dump_request(params) + parsed, options = OpenAI::Evals::Runs::OutputItemListParams.dump_request(params) eval_id = parsed.delete(:eval_id) do raise ArgumentError.new("missing required path argument #{_1}") diff --git a/lib/openai/resources/files.rb b/lib/openai/resources/files.rb index 77ba2646..a7cff25c 100644 --- a/lib/openai/resources/files.rb +++ b/lib/openai/resources/files.rb @@ -30,24 +30,23 @@ class Files # # @overload create(file:, purpose:, request_options: {}) # - # @param file [Pathname, StringIO, IO, OpenAI::FilePart] The File object (not file name) to be uploaded. ... + # @param file [Pathname, StringIO, IO, OpenAI::FilePart] The File object (not file name) to be uploaded. # - # @param purpose [Symbol, OpenAI::Models::FilePurpose] The intended purpose of the uploaded file. One of: - `assistants`: Used in the A - # ... + # @param purpose [Symbol, OpenAI::FilePurpose] The intended purpose of the uploaded file. One of: - `assistants`: Used in the A # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # - # @return [OpenAI::Models::FileObject] + # @return [OpenAI::FileObject] # # @see OpenAI::Models::FileCreateParams def create(params) - parsed, options = OpenAI::Models::FileCreateParams.dump_request(params) + parsed, options = OpenAI::FileCreateParams.dump_request(params) @client.request( method: :post, path: "files", headers: {"content-type" => "multipart/form-data"}, body: parsed, - model: OpenAI::Models::FileObject, + model: OpenAI::FileObject, options: options ) end @@ -60,14 +59,14 @@ def create(params) # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # - # @return [OpenAI::Models::FileObject] + # @return [OpenAI::FileObject] # # @see OpenAI::Models::FileRetrieveParams def retrieve(file_id, params = {}) @client.request( method: :get, path: ["files/%1$s", file_id], - model: OpenAI::Models::FileObject, + model: OpenAI::FileObject, options: params[:request_options] ) end @@ -80,29 +79,26 @@ def retrieve(file_id, params = {}) # @overload list(after: nil, limit: nil, order: nil, purpose: nil, request_options: {}) # # @param after [String] A cursor for use in pagination. `after` is an object ID that defines your place - # ... # # @param limit [Integer] A limit on the number of objects to be returned. Limit can range between 1 and 1 - # ... # - # @param order [Symbol, OpenAI::Models::FileListParams::Order] Sort order by the `created_at` timestamp of the objects. `asc` for ascending ord - # ... + # @param order [Symbol, OpenAI::FileListParams::Order] Sort order by the `created_at` timestamp of the objects. `asc` for ascending ord # # @param purpose [String] Only return files with the given purpose. # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # - # @return [OpenAI::Internal::CursorPage] + # @return [OpenAI::Internal::CursorPage] # # @see OpenAI::Models::FileListParams def list(params = {}) - parsed, options = OpenAI::Models::FileListParams.dump_request(params) + parsed, options = OpenAI::FileListParams.dump_request(params) @client.request( method: :get, path: "files", query: parsed, page: OpenAI::Internal::CursorPage, - model: OpenAI::Models::FileObject, + model: OpenAI::FileObject, options: options ) end @@ -115,14 +111,14 @@ def list(params = {}) # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # - # @return [OpenAI::Models::FileDeleted] + # @return [OpenAI::FileDeleted] # # @see OpenAI::Models::FileDeleteParams def delete(file_id, params = {}) @client.request( method: :delete, path: ["files/%1$s", file_id], - model: OpenAI::Models::FileDeleted, + model: OpenAI::FileDeleted, options: params[:request_options] ) end diff --git a/lib/openai/resources/fine_tuning/checkpoints/permissions.rb b/lib/openai/resources/fine_tuning/checkpoints/permissions.rb index 1d609a0a..e11f3d60 100644 --- a/lib/openai/resources/fine_tuning/checkpoints/permissions.rb +++ b/lib/openai/resources/fine_tuning/checkpoints/permissions.rb @@ -16,7 +16,7 @@ class Permissions # # @overload create(fine_tuned_model_checkpoint, project_ids:, request_options: {}) # - # @param fine_tuned_model_checkpoint [String] The ID of the fine-tuned model checkpoint to create a permission for. ... + # @param fine_tuned_model_checkpoint [String] The ID of the fine-tuned model checkpoint to create a permission for. # # @param project_ids [Array] The project identifiers to grant access to. # @@ -26,7 +26,7 @@ class Permissions # # @see OpenAI::Models::FineTuning::Checkpoints::PermissionCreateParams def create(fine_tuned_model_checkpoint, params) - parsed, options = OpenAI::Models::FineTuning::Checkpoints::PermissionCreateParams.dump_request(params) + parsed, options = OpenAI::FineTuning::Checkpoints::PermissionCreateParams.dump_request(params) @client.request( method: :post, path: ["fine_tuning/checkpoints/%1$s/permissions", fine_tuned_model_checkpoint], @@ -48,13 +48,13 @@ def create(fine_tuned_model_checkpoint, params) # # @overload retrieve(fine_tuned_model_checkpoint, after: nil, limit: nil, order: nil, project_id: nil, request_options: {}) # - # @param fine_tuned_model_checkpoint [String] The ID of the fine-tuned model checkpoint to get permissions for. ... + # @param fine_tuned_model_checkpoint [String] The ID of the fine-tuned model checkpoint to get permissions for. # # @param after [String] Identifier for the last permission ID from the previous pagination request. # # @param limit [Integer] Number of permissions to retrieve. # - # @param order [Symbol, OpenAI::Models::FineTuning::Checkpoints::PermissionRetrieveParams::Order] The order in which to retrieve permissions. + # @param order [Symbol, OpenAI::FineTuning::Checkpoints::PermissionRetrieveParams::Order] The order in which to retrieve permissions. # # @param project_id [String] The ID of the project to get permissions for. # @@ -64,7 +64,7 @@ def create(fine_tuned_model_checkpoint, params) # # @see OpenAI::Models::FineTuning::Checkpoints::PermissionRetrieveParams def retrieve(fine_tuned_model_checkpoint, params = {}) - parsed, options = OpenAI::Models::FineTuning::Checkpoints::PermissionRetrieveParams.dump_request(params) + parsed, options = OpenAI::FineTuning::Checkpoints::PermissionRetrieveParams.dump_request(params) @client.request( method: :get, path: ["fine_tuning/checkpoints/%1$s/permissions", fine_tuned_model_checkpoint], @@ -85,9 +85,9 @@ def retrieve(fine_tuned_model_checkpoint, params = {}) # # @overload delete(permission_id, fine_tuned_model_checkpoint:, request_options: {}) # - # @param permission_id [String] The ID of the fine-tuned model checkpoint permission to delete. ... + # @param permission_id [String] The ID of the fine-tuned model checkpoint permission to delete. # - # @param fine_tuned_model_checkpoint [String] The ID of the fine-tuned model checkpoint to delete a permission for. ... + # @param fine_tuned_model_checkpoint [String] The ID of the fine-tuned model checkpoint to delete a permission for. # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # @@ -95,7 +95,7 @@ def retrieve(fine_tuned_model_checkpoint, params = {}) # # @see OpenAI::Models::FineTuning::Checkpoints::PermissionDeleteParams def delete(permission_id, params) - parsed, options = OpenAI::Models::FineTuning::Checkpoints::PermissionDeleteParams.dump_request(params) + parsed, options = OpenAI::FineTuning::Checkpoints::PermissionDeleteParams.dump_request(params) fine_tuned_model_checkpoint = parsed.delete(:fine_tuned_model_checkpoint) do raise ArgumentError.new("missing required path argument #{_1}") diff --git a/lib/openai/resources/fine_tuning/jobs.rb b/lib/openai/resources/fine_tuning/jobs.rb index ba29a2ea..4a7bdfb7 100644 --- a/lib/openai/resources/fine_tuning/jobs.rb +++ b/lib/openai/resources/fine_tuning/jobs.rb @@ -20,38 +20,36 @@ class Jobs # # @overload create(model:, training_file:, hyperparameters: nil, integrations: nil, metadata: nil, method_: nil, seed: nil, suffix: nil, validation_file: nil, request_options: {}) # - # @param model [String, Symbol, OpenAI::Models::FineTuning::JobCreateParams::Model] The name of the model to fine-tune. You can select one of the ... + # @param model [String, Symbol, OpenAI::FineTuning::JobCreateParams::Model] The name of the model to fine-tune. You can select one of the # - # @param training_file [String] The ID of an uploaded file that contains training data. ... + # @param training_file [String] The ID of an uploaded file that contains training data. # - # @param hyperparameters [OpenAI::Models::FineTuning::JobCreateParams::Hyperparameters] The hyperparameters used for the fine-tuning job. ... + # @param hyperparameters [OpenAI::FineTuning::JobCreateParams::Hyperparameters] The hyperparameters used for the fine-tuning job. # - # @param integrations [Array, nil] A list of integrations to enable for your fine-tuning job. + # @param integrations [Array, nil] A list of integrations to enable for your fine-tuning job. # - # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be # - # @param method_ [OpenAI::Models::FineTuning::JobCreateParams::Method] The method used for fine-tuning. + # @param method_ [OpenAI::FineTuning::JobCreateParams::Method] The method used for fine-tuning. # # @param seed [Integer, nil] The seed controls the reproducibility of the job. Passing in the same seed and j - # ... # # @param suffix [String, nil] A string of up to 64 characters that will be added to your fine-tuned model name - # ... # - # @param validation_file [String, nil] The ID of an uploaded file that contains validation data. ... + # @param validation_file [String, nil] The ID of an uploaded file that contains validation data. # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # - # @return [OpenAI::Models::FineTuning::FineTuningJob] + # @return [OpenAI::FineTuning::FineTuningJob] # # @see OpenAI::Models::FineTuning::JobCreateParams def create(params) - parsed, options = OpenAI::Models::FineTuning::JobCreateParams.dump_request(params) + parsed, options = OpenAI::FineTuning::JobCreateParams.dump_request(params) @client.request( method: :post, path: "fine_tuning/jobs", body: parsed, - model: OpenAI::Models::FineTuning::FineTuningJob, + model: OpenAI::FineTuning::FineTuningJob, options: options ) end @@ -65,18 +63,18 @@ def create(params) # # @overload retrieve(fine_tuning_job_id, request_options: {}) # - # @param fine_tuning_job_id [String] The ID of the fine-tuning job. ... + # @param fine_tuning_job_id [String] The ID of the fine-tuning job. # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # - # @return [OpenAI::Models::FineTuning::FineTuningJob] + # @return [OpenAI::FineTuning::FineTuningJob] # # @see OpenAI::Models::FineTuning::JobRetrieveParams def retrieve(fine_tuning_job_id, params = {}) @client.request( method: :get, path: ["fine_tuning/jobs/%1$s", fine_tuning_job_id], - model: OpenAI::Models::FineTuning::FineTuningJob, + model: OpenAI::FineTuning::FineTuningJob, options: params[:request_options] ) end @@ -93,21 +91,20 @@ def retrieve(fine_tuning_job_id, params = {}) # @param limit [Integer] Number of fine-tuning jobs to retrieve. # # @param metadata [Hash{Symbol=>String}, nil] Optional metadata filter. To filter, use the syntax `metadata[k]=v`. Alternative - # ... # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # - # @return [OpenAI::Internal::CursorPage] + # @return [OpenAI::Internal::CursorPage] # # @see OpenAI::Models::FineTuning::JobListParams def list(params = {}) - parsed, options = OpenAI::Models::FineTuning::JobListParams.dump_request(params) + parsed, options = OpenAI::FineTuning::JobListParams.dump_request(params) @client.request( method: :get, path: "fine_tuning/jobs", query: parsed, page: OpenAI::Internal::CursorPage, - model: OpenAI::Models::FineTuning::FineTuningJob, + model: OpenAI::FineTuning::FineTuningJob, options: options ) end @@ -119,18 +116,18 @@ def list(params = {}) # # @overload cancel(fine_tuning_job_id, request_options: {}) # - # @param fine_tuning_job_id [String] The ID of the fine-tuning job to cancel. ... + # @param fine_tuning_job_id [String] The ID of the fine-tuning job to cancel. # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # - # @return [OpenAI::Models::FineTuning::FineTuningJob] + # @return [OpenAI::FineTuning::FineTuningJob] # # @see OpenAI::Models::FineTuning::JobCancelParams def cancel(fine_tuning_job_id, params = {}) @client.request( method: :post, path: ["fine_tuning/jobs/%1$s/cancel", fine_tuning_job_id], - model: OpenAI::Models::FineTuning::FineTuningJob, + model: OpenAI::FineTuning::FineTuningJob, options: params[:request_options] ) end @@ -142,7 +139,7 @@ def cancel(fine_tuning_job_id, params = {}) # # @overload list_events(fine_tuning_job_id, after: nil, limit: nil, request_options: {}) # - # @param fine_tuning_job_id [String] The ID of the fine-tuning job to get events for. ... + # @param fine_tuning_job_id [String] The ID of the fine-tuning job to get events for. # # @param after [String] Identifier for the last event from the previous pagination request. # @@ -150,17 +147,17 @@ def cancel(fine_tuning_job_id, params = {}) # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # - # @return [OpenAI::Internal::CursorPage] + # @return [OpenAI::Internal::CursorPage] # # @see OpenAI::Models::FineTuning::JobListEventsParams def list_events(fine_tuning_job_id, params = {}) - parsed, options = OpenAI::Models::FineTuning::JobListEventsParams.dump_request(params) + parsed, options = OpenAI::FineTuning::JobListEventsParams.dump_request(params) @client.request( method: :get, path: ["fine_tuning/jobs/%1$s/events", fine_tuning_job_id], query: parsed, page: OpenAI::Internal::CursorPage, - model: OpenAI::Models::FineTuning::FineTuningJobEvent, + model: OpenAI::FineTuning::FineTuningJobEvent, options: options ) end diff --git a/lib/openai/resources/fine_tuning/jobs/checkpoints.rb b/lib/openai/resources/fine_tuning/jobs/checkpoints.rb index 2b5e1d8e..b588de3d 100644 --- a/lib/openai/resources/fine_tuning/jobs/checkpoints.rb +++ b/lib/openai/resources/fine_tuning/jobs/checkpoints.rb @@ -12,7 +12,7 @@ class Checkpoints # # @overload list(fine_tuning_job_id, after: nil, limit: nil, request_options: {}) # - # @param fine_tuning_job_id [String] The ID of the fine-tuning job to get checkpoints for. ... + # @param fine_tuning_job_id [String] The ID of the fine-tuning job to get checkpoints for. # # @param after [String] Identifier for the last checkpoint ID from the previous pagination request. # @@ -20,17 +20,17 @@ class Checkpoints # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # - # @return [OpenAI::Internal::CursorPage] + # @return [OpenAI::Internal::CursorPage] # # @see OpenAI::Models::FineTuning::Jobs::CheckpointListParams def list(fine_tuning_job_id, params = {}) - parsed, options = OpenAI::Models::FineTuning::Jobs::CheckpointListParams.dump_request(params) + parsed, options = OpenAI::FineTuning::Jobs::CheckpointListParams.dump_request(params) @client.request( method: :get, path: ["fine_tuning/jobs/%1$s/checkpoints", fine_tuning_job_id], query: parsed, page: OpenAI::Internal::CursorPage, - model: OpenAI::Models::FineTuning::Jobs::FineTuningJobCheckpoint, + model: OpenAI::FineTuning::Jobs::FineTuningJobCheckpoint, options: options ) end diff --git a/lib/openai/resources/images.rb b/lib/openai/resources/images.rb index 13484438..b04d709d 100644 --- a/lib/openai/resources/images.rb +++ b/lib/openai/resources/images.rb @@ -11,35 +11,30 @@ class Images # @overload create_variation(image:, model: nil, n: nil, response_format: nil, size: nil, user: nil, request_options: {}) # # @param image [Pathname, StringIO, IO, OpenAI::FilePart] The image to use as the basis for the variation(s). Must be a valid PNG file, le - # ... # - # @param model [String, Symbol, OpenAI::Models::ImageModel, nil] The model to use for image generation. Only `dall-e-2` is supported at this time - # ... + # @param model [String, Symbol, OpenAI::ImageModel, nil] The model to use for image generation. Only `dall-e-2` is supported at this time # # @param n [Integer, nil] The number of images to generate. Must be between 1 and 10. # - # @param response_format [Symbol, OpenAI::Models::ImageCreateVariationParams::ResponseFormat, nil] The format in which the generated images are returned. Must be one of `url` or ` - # ... + # @param response_format [Symbol, OpenAI::ImageCreateVariationParams::ResponseFormat, nil] The format in which the generated images are returned. Must be one of `url` or ` # - # @param size [Symbol, OpenAI::Models::ImageCreateVariationParams::Size, nil] The size of the generated images. Must be one of `256x256`, `512x512`, or `1024x - # ... + # @param size [Symbol, OpenAI::ImageCreateVariationParams::Size, nil] The size of the generated images. Must be one of `256x256`, `512x512`, or `1024x # # @param user [String] A unique identifier representing your end-user, which can help OpenAI to monitor - # ... # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # - # @return [OpenAI::Models::ImagesResponse] + # @return [OpenAI::ImagesResponse] # # @see OpenAI::Models::ImageCreateVariationParams def create_variation(params) - parsed, options = OpenAI::Models::ImageCreateVariationParams.dump_request(params) + parsed, options = OpenAI::ImageCreateVariationParams.dump_request(params) @client.request( method: :post, path: "images/variations", headers: {"content-type" => "multipart/form-data"}, body: parsed, - model: OpenAI::Models::ImagesResponse, + model: OpenAI::ImagesResponse, options: options ) end @@ -52,46 +47,39 @@ def create_variation(params) # # @overload edit(image:, prompt:, background: nil, mask: nil, model: nil, n: nil, quality: nil, response_format: nil, size: nil, user: nil, request_options: {}) # - # @param image [Pathname, StringIO, IO, OpenAI::FilePart, Array] The image(s) to edit. Must be a supported image file or an array of images. ... + # @param image [Pathname, StringIO, IO, OpenAI::FilePart, Array] The image(s) to edit. Must be a supported image file or an array of images. # # @param prompt [String] A text description of the desired image(s). The maximum length is 1000 character - # ... # - # @param background [Symbol, OpenAI::Models::ImageEditParams::Background, nil] Allows to set transparency for the background of the generated image(s). ... + # @param background [Symbol, OpenAI::ImageEditParams::Background, nil] Allows to set transparency for the background of the generated image(s). # # @param mask [Pathname, StringIO, IO, OpenAI::FilePart] An additional image whose fully transparent areas (e.g. where alpha is zero) ind - # ... # - # @param model [String, Symbol, OpenAI::Models::ImageModel, nil] The model to use for image generation. Only `dall-e-2` and `gpt-image-1` are sup - # ... + # @param model [String, Symbol, OpenAI::ImageModel, nil] The model to use for image generation. Only `dall-e-2` and `gpt-image-1` are sup # # @param n [Integer, nil] The number of images to generate. Must be between 1 and 10. # - # @param quality [Symbol, OpenAI::Models::ImageEditParams::Quality, nil] The quality of the image that will be generated. `high`, `medium` and `low` are - # ... + # @param quality [Symbol, OpenAI::ImageEditParams::Quality, nil] The quality of the image that will be generated. `high`, `medium` and `low` are # - # @param response_format [Symbol, OpenAI::Models::ImageEditParams::ResponseFormat, nil] The format in which the generated images are returned. Must be one of `url` or ` - # ... + # @param response_format [Symbol, OpenAI::ImageEditParams::ResponseFormat, nil] The format in which the generated images are returned. Must be one of `url` or ` # - # @param size [Symbol, OpenAI::Models::ImageEditParams::Size, nil] The size of the generated images. Must be one of `1024x1024`, `1536x1024` (lands - # ... + # @param size [Symbol, OpenAI::ImageEditParams::Size, nil] The size of the generated images. Must be one of `1024x1024`, `1536x1024` (lands # # @param user [String] A unique identifier representing your end-user, which can help OpenAI to monitor - # ... # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # - # @return [OpenAI::Models::ImagesResponse] + # @return [OpenAI::ImagesResponse] # # @see OpenAI::Models::ImageEditParams def edit(params) - parsed, options = OpenAI::Models::ImageEditParams.dump_request(params) + parsed, options = OpenAI::ImageEditParams.dump_request(params) @client.request( method: :post, path: "images/edits", headers: {"content-type" => "multipart/form-data"}, body: parsed, - model: OpenAI::Models::ImagesResponse, + model: OpenAI::ImagesResponse, options: options ) end @@ -105,51 +93,41 @@ def edit(params) # @overload generate(prompt:, background: nil, model: nil, moderation: nil, n: nil, output_compression: nil, output_format: nil, quality: nil, response_format: nil, size: nil, style: nil, user: nil, request_options: {}) # # @param prompt [String] A text description of the desired image(s). The maximum length is 32000 characte - # ... # - # @param background [Symbol, OpenAI::Models::ImageGenerateParams::Background, nil] Allows to set transparency for the background of the generated image(s). ... + # @param background [Symbol, OpenAI::ImageGenerateParams::Background, nil] Allows to set transparency for the background of the generated image(s). # - # @param model [String, Symbol, OpenAI::Models::ImageModel, nil] The model to use for image generation. One of `dall-e-2`, `dall-e-3`, or `gpt-im - # ... + # @param model [String, Symbol, OpenAI::ImageModel, nil] The model to use for image generation. One of `dall-e-2`, `dall-e-3`, or `gpt-im # - # @param moderation [Symbol, OpenAI::Models::ImageGenerateParams::Moderation, nil] Control the content-moderation level for images generated by `gpt-image-1`. Must - # ... + # @param moderation [Symbol, OpenAI::ImageGenerateParams::Moderation, nil] Control the content-moderation level for images generated by `gpt-image-1`. Must # # @param n [Integer, nil] The number of images to generate. Must be between 1 and 10. For `dall-e-3`, only - # ... # # @param output_compression [Integer, nil] The compression level (0-100%) for the generated images. This parameter is only - # ... # - # @param output_format [Symbol, OpenAI::Models::ImageGenerateParams::OutputFormat, nil] The format in which the generated images are returned. This parameter is only su - # ... + # @param output_format [Symbol, OpenAI::ImageGenerateParams::OutputFormat, nil] The format in which the generated images are returned. This parameter is only su # - # @param quality [Symbol, OpenAI::Models::ImageGenerateParams::Quality, nil] The quality of the image that will be generated. ... + # @param quality [Symbol, OpenAI::ImageGenerateParams::Quality, nil] The quality of the image that will be generated. # - # @param response_format [Symbol, OpenAI::Models::ImageGenerateParams::ResponseFormat, nil] The format in which generated images with `dall-e-2` and `dall-e-3` are returned - # ... + # @param response_format [Symbol, OpenAI::ImageGenerateParams::ResponseFormat, nil] The format in which generated images with `dall-e-2` and `dall-e-3` are returned # - # @param size [Symbol, OpenAI::Models::ImageGenerateParams::Size, nil] The size of the generated images. Must be one of `1024x1024`, `1536x1024` (lands - # ... + # @param size [Symbol, OpenAI::ImageGenerateParams::Size, nil] The size of the generated images. Must be one of `1024x1024`, `1536x1024` (lands # - # @param style [Symbol, OpenAI::Models::ImageGenerateParams::Style, nil] The style of the generated images. This parameter is only supported for `dall-e- - # ... + # @param style [Symbol, OpenAI::ImageGenerateParams::Style, nil] The style of the generated images. This parameter is only supported for `dall-e- # # @param user [String] A unique identifier representing your end-user, which can help OpenAI to monitor - # ... # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # - # @return [OpenAI::Models::ImagesResponse] + # @return [OpenAI::ImagesResponse] # # @see OpenAI::Models::ImageGenerateParams def generate(params) - parsed, options = OpenAI::Models::ImageGenerateParams.dump_request(params) + parsed, options = OpenAI::ImageGenerateParams.dump_request(params) @client.request( method: :post, path: "images/generations", body: parsed, - model: OpenAI::Models::ImagesResponse, + model: OpenAI::ImagesResponse, options: options ) end diff --git a/lib/openai/resources/models.rb b/lib/openai/resources/models.rb index afe9d3e1..1dd26c31 100644 --- a/lib/openai/resources/models.rb +++ b/lib/openai/resources/models.rb @@ -12,14 +12,14 @@ class Models # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # - # @return [OpenAI::Models::Model] + # @return [OpenAI::Model] # # @see OpenAI::Models::ModelRetrieveParams def retrieve(model, params = {}) @client.request( method: :get, path: ["models/%1$s", model], - model: OpenAI::Models::Model, + model: OpenAI::Model, options: params[:request_options] ) end @@ -31,7 +31,7 @@ def retrieve(model, params = {}) # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # - # @return [OpenAI::Internal::Page] + # @return [OpenAI::Internal::Page] # # @see OpenAI::Models::ModelListParams def list(params = {}) @@ -39,7 +39,7 @@ def list(params = {}) method: :get, path: "models", page: OpenAI::Internal::Page, - model: OpenAI::Models::Model, + model: OpenAI::Model, options: params[:request_options] ) end @@ -53,14 +53,14 @@ def list(params = {}) # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # - # @return [OpenAI::Models::ModelDeleted] + # @return [OpenAI::ModelDeleted] # # @see OpenAI::Models::ModelDeleteParams def delete(model, params = {}) @client.request( method: :delete, path: ["models/%1$s", model], - model: OpenAI::Models::ModelDeleted, + model: OpenAI::ModelDeleted, options: params[:request_options] ) end diff --git a/lib/openai/resources/moderations.rb b/lib/openai/resources/moderations.rb index 443d6b18..568e03d3 100644 --- a/lib/openai/resources/moderations.rb +++ b/lib/openai/resources/moderations.rb @@ -11,10 +11,9 @@ class Moderations # # @overload create(input:, model: nil, request_options: {}) # - # @param input [String, Array, Array] Input (or inputs) to classify. Can be a single string, an array of strings, or - # ... + # @param input [String, Array, Array] Input (or inputs) to classify. Can be a single string, an array of strings, or # - # @param model [String, Symbol, OpenAI::Models::ModerationModel] The content moderation model you would like to use. Learn more in ... + # @param model [String, Symbol, OpenAI::ModerationModel] The content moderation model you would like to use. Learn more in # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # @@ -22,7 +21,7 @@ class Moderations # # @see OpenAI::Models::ModerationCreateParams def create(params) - parsed, options = OpenAI::Models::ModerationCreateParams.dump_request(params) + parsed, options = OpenAI::ModerationCreateParams.dump_request(params) @client.request( method: :post, path: "moderations", diff --git a/lib/openai/resources/responses.rb b/lib/openai/resources/responses.rb index 381dba94..c6566956 100644 --- a/lib/openai/resources/responses.rb +++ b/lib/openai/resources/responses.rb @@ -25,54 +25,49 @@ class Responses # # @overload create(input:, model:, include: nil, instructions: nil, max_output_tokens: nil, metadata: nil, parallel_tool_calls: nil, previous_response_id: nil, reasoning: nil, service_tier: nil, store: nil, temperature: nil, text: nil, tool_choice: nil, tools: nil, top_p: nil, truncation: nil, user: nil, request_options: {}) # - # @param input [String, Array] Text, image, or file inputs to the model, used to generate a response. ... + # @param input [String, Array] Text, image, or file inputs to the model, used to generate a response. # - # @param model [String, Symbol, OpenAI::Models::ChatModel, OpenAI::Models::ResponsesModel::ResponsesOnlyModel] Model ID used to generate the response, like `gpt-4o` or `o3`. OpenAI ... + # @param model [String, Symbol, OpenAI::ChatModel, OpenAI::ResponsesModel::ResponsesOnlyModel] Model ID used to generate the response, like `gpt-4o` or `o3`. OpenAI # - # @param include [Array, nil] Specify additional output data to include in the model response. Currently ... + # @param include [Array, nil] Specify additional output data to include in the model response. Currently # # @param instructions [String, nil] Inserts a system (or developer) message as the first item in the model's context - # ... # # @param max_output_tokens [Integer, nil] An upper bound for the number of tokens that can be generated for a response, in - # ... # - # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be # - # @param parallel_tool_calls [Boolean, nil] Whether to allow the model to run tool calls in parallel. ... + # @param parallel_tool_calls [Boolean, nil] Whether to allow the model to run tool calls in parallel. # - # @param previous_response_id [String, nil] The unique ID of the previous response to the model. Use this to ... + # @param previous_response_id [String, nil] The unique ID of the previous response to the model. Use this to # - # @param reasoning [OpenAI::Models::Reasoning, nil] **o-series models only** ... + # @param reasoning [OpenAI::Reasoning, nil] **o-series models only** # - # @param service_tier [Symbol, OpenAI::Models::Responses::ResponseCreateParams::ServiceTier, nil] Specifies the latency tier to use for processing the request. This parameter is - # ... + # @param service_tier [Symbol, OpenAI::Responses::ResponseCreateParams::ServiceTier, nil] Specifies the latency tier to use for processing the request. This parameter is # - # @param store [Boolean, nil] Whether to store the generated model response for later retrieval via ... + # @param store [Boolean, nil] Whether to store the generated model response for later retrieval via # # @param temperature [Float, nil] What sampling temperature to use, between 0 and 2. Higher values like 0.8 will m - # ... # - # @param text [OpenAI::Models::Responses::ResponseTextConfig] Configuration options for a text response from the model. Can be plain ... + # @param text [OpenAI::Responses::ResponseTextConfig] Configuration options for a text response from the model. Can be plain # - # @param tool_choice [Symbol, OpenAI::Models::Responses::ToolChoiceOptions, OpenAI::Models::Responses::ToolChoiceTypes, OpenAI::Models::Responses::ToolChoiceFunction] How the model should select which tool (or tools) to use when generating ... + # @param tool_choice [Symbol, OpenAI::Responses::ToolChoiceOptions, OpenAI::Responses::ToolChoiceTypes, OpenAI::Responses::ToolChoiceFunction] How the model should select which tool (or tools) to use when generating # - # @param tools [Array] An array of tools the model may call while generating a response. You ... + # @param tools [Array] An array of tools the model may call while generating a response. You # - # @param top_p [Float, nil] An alternative to sampling with temperature, called nucleus sampling, ... + # @param top_p [Float, nil] An alternative to sampling with temperature, called nucleus sampling, # - # @param truncation [Symbol, OpenAI::Models::Responses::ResponseCreateParams::Truncation, nil] The truncation strategy to use for the model response. ... + # @param truncation [Symbol, OpenAI::Responses::ResponseCreateParams::Truncation, nil] The truncation strategy to use for the model response. # # @param user [String] A unique identifier representing your end-user, which can help OpenAI to monitor - # ... # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # - # @return [OpenAI::Models::Responses::Response] + # @return [OpenAI::Responses::Response] # # @see OpenAI::Models::Responses::ResponseCreateParams def create(params) - parsed, options = OpenAI::Models::Responses::ResponseCreateParams.dump_request(params) + parsed, options = OpenAI::Responses::ResponseCreateParams.dump_request(params) if parsed[:stream] message = "Please use `#stream_raw` for the streaming use case." raise ArgumentError.new(message) @@ -81,7 +76,7 @@ def create(params) method: :post, path: "responses", body: parsed, - model: OpenAI::Models::Responses::Response, + model: OpenAI::Responses::Response, options: options ) end @@ -109,54 +104,49 @@ def stream # # @overload stream_raw(input:, model:, include: nil, instructions: nil, max_output_tokens: nil, metadata: nil, parallel_tool_calls: nil, previous_response_id: nil, reasoning: nil, service_tier: nil, store: nil, temperature: nil, text: nil, tool_choice: nil, tools: nil, top_p: nil, truncation: nil, user: nil, request_options: {}) # - # @param input [String, Array] Text, image, or file inputs to the model, used to generate a response. ... + # @param input [String, Array] Text, image, or file inputs to the model, used to generate a response. # - # @param model [String, Symbol, OpenAI::Models::ChatModel, OpenAI::Models::ResponsesModel::ResponsesOnlyModel] Model ID used to generate the response, like `gpt-4o` or `o3`. OpenAI ... + # @param model [String, Symbol, OpenAI::ChatModel, OpenAI::ResponsesModel::ResponsesOnlyModel] Model ID used to generate the response, like `gpt-4o` or `o3`. OpenAI # - # @param include [Array, nil] Specify additional output data to include in the model response. Currently ... + # @param include [Array, nil] Specify additional output data to include in the model response. Currently # # @param instructions [String, nil] Inserts a system (or developer) message as the first item in the model's context - # ... # # @param max_output_tokens [Integer, nil] An upper bound for the number of tokens that can be generated for a response, in - # ... # - # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be # - # @param parallel_tool_calls [Boolean, nil] Whether to allow the model to run tool calls in parallel. ... + # @param parallel_tool_calls [Boolean, nil] Whether to allow the model to run tool calls in parallel. # - # @param previous_response_id [String, nil] The unique ID of the previous response to the model. Use this to ... + # @param previous_response_id [String, nil] The unique ID of the previous response to the model. Use this to # - # @param reasoning [OpenAI::Models::Reasoning, nil] **o-series models only** ... + # @param reasoning [OpenAI::Reasoning, nil] **o-series models only** # - # @param service_tier [Symbol, OpenAI::Models::Responses::ResponseCreateParams::ServiceTier, nil] Specifies the latency tier to use for processing the request. This parameter is - # ... + # @param service_tier [Symbol, OpenAI::Responses::ResponseCreateParams::ServiceTier, nil] Specifies the latency tier to use for processing the request. This parameter is # - # @param store [Boolean, nil] Whether to store the generated model response for later retrieval via ... + # @param store [Boolean, nil] Whether to store the generated model response for later retrieval via # # @param temperature [Float, nil] What sampling temperature to use, between 0 and 2. Higher values like 0.8 will m - # ... # - # @param text [OpenAI::Models::Responses::ResponseTextConfig] Configuration options for a text response from the model. Can be plain ... + # @param text [OpenAI::Responses::ResponseTextConfig] Configuration options for a text response from the model. Can be plain # - # @param tool_choice [Symbol, OpenAI::Models::Responses::ToolChoiceOptions, OpenAI::Models::Responses::ToolChoiceTypes, OpenAI::Models::Responses::ToolChoiceFunction] How the model should select which tool (or tools) to use when generating ... + # @param tool_choice [Symbol, OpenAI::Responses::ToolChoiceOptions, OpenAI::Responses::ToolChoiceTypes, OpenAI::Responses::ToolChoiceFunction] How the model should select which tool (or tools) to use when generating # - # @param tools [Array] An array of tools the model may call while generating a response. You ... + # @param tools [Array] An array of tools the model may call while generating a response. You # - # @param top_p [Float, nil] An alternative to sampling with temperature, called nucleus sampling, ... + # @param top_p [Float, nil] An alternative to sampling with temperature, called nucleus sampling, # - # @param truncation [Symbol, OpenAI::Models::Responses::ResponseCreateParams::Truncation, nil] The truncation strategy to use for the model response. ... + # @param truncation [Symbol, OpenAI::Responses::ResponseCreateParams::Truncation, nil] The truncation strategy to use for the model response. # # @param user [String] A unique identifier representing your end-user, which can help OpenAI to monitor - # ... # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # - # @return [OpenAI::Internal::Stream] + # @return [OpenAI::Internal::Stream] # # @see OpenAI::Models::Responses::ResponseCreateParams def stream_raw(params) - parsed, options = OpenAI::Models::Responses::ResponseCreateParams.dump_request(params) + parsed, options = OpenAI::Responses::ResponseCreateParams.dump_request(params) unless parsed.fetch(:stream, true) message = "Please use `#create` for the non-streaming use case." raise ArgumentError.new(message) @@ -168,7 +158,7 @@ def stream_raw(params) headers: {"accept" => "text/event-stream"}, body: parsed, stream: OpenAI::Internal::Stream, - model: OpenAI::Models::Responses::ResponseStreamEvent, + model: OpenAI::Responses::ResponseStreamEvent, options: options ) end @@ -182,20 +172,20 @@ def stream_raw(params) # # @param response_id [String] The ID of the response to retrieve. # - # @param include [Array] Additional fields to include in the response. See the `include` ... + # @param include [Array] Additional fields to include in the response. See the `include` # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # - # @return [OpenAI::Models::Responses::Response] + # @return [OpenAI::Responses::Response] # # @see OpenAI::Models::Responses::ResponseRetrieveParams def retrieve(response_id, params = {}) - parsed, options = OpenAI::Models::Responses::ResponseRetrieveParams.dump_request(params) + parsed, options = OpenAI::Responses::ResponseRetrieveParams.dump_request(params) @client.request( method: :get, path: ["responses/%1$s", response_id], query: parsed, - model: OpenAI::Models::Responses::Response, + model: OpenAI::Responses::Response, options: options ) end diff --git a/lib/openai/resources/responses/input_items.rb b/lib/openai/resources/responses/input_items.rb index a47baded..3cec0416 100644 --- a/lib/openai/resources/responses/input_items.rb +++ b/lib/openai/resources/responses/input_items.rb @@ -13,29 +13,29 @@ class InputItems # # @param response_id [String] The ID of the response to retrieve input items for. # - # @param after [String] An item ID to list items after, used in pagination. ... + # @param after [String] An item ID to list items after, used in pagination. # - # @param before [String] An item ID to list items before, used in pagination. ... + # @param before [String] An item ID to list items before, used in pagination. # - # @param include [Array] Additional fields to include in the response. See the `include` ... + # @param include [Array] Additional fields to include in the response. See the `include` # - # @param limit [Integer] A limit on the number of objects to be returned. Limit can range between ... + # @param limit [Integer] A limit on the number of objects to be returned. Limit can range between # - # @param order [Symbol, OpenAI::Models::Responses::InputItemListParams::Order] The order to return the input items in. Default is `asc`. ... + # @param order [Symbol, OpenAI::Responses::InputItemListParams::Order] The order to return the input items in. Default is `asc`. # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # - # @return [OpenAI::Internal::CursorPage] + # @return [OpenAI::Internal::CursorPage] # # @see OpenAI::Models::Responses::InputItemListParams def list(response_id, params = {}) - parsed, options = OpenAI::Models::Responses::InputItemListParams.dump_request(params) + parsed, options = OpenAI::Responses::InputItemListParams.dump_request(params) @client.request( method: :get, path: ["responses/%1$s/input_items", response_id], query: parsed, page: OpenAI::Internal::CursorPage, - model: OpenAI::Models::Responses::ResponseItem, + model: OpenAI::Responses::ResponseItem, options: options ) end diff --git a/lib/openai/resources/uploads.rb b/lib/openai/resources/uploads.rb index 719532b1..363b2e57 100644 --- a/lib/openai/resources/uploads.rb +++ b/lib/openai/resources/uploads.rb @@ -31,28 +31,22 @@ class Uploads # # @overload create(bytes:, filename:, mime_type:, purpose:, request_options: {}) # - # @param bytes [Integer] The number of bytes in the file you are uploading. ... + # @param bytes [Integer] The number of bytes in the file you are uploading. # - # @param filename [String] The name of the file to upload. ... + # @param filename [String] The name of the file to upload. # - # @param mime_type [String] The MIME type of the file. ... + # @param mime_type [String] The MIME type of the file. # - # @param purpose [Symbol, OpenAI::Models::FilePurpose] The intended purpose of the uploaded file. ... + # @param purpose [Symbol, OpenAI::FilePurpose] The intended purpose of the uploaded file. # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # - # @return [OpenAI::Models::Upload] + # @return [OpenAI::Upload] # # @see OpenAI::Models::UploadCreateParams def create(params) - parsed, options = OpenAI::Models::UploadCreateParams.dump_request(params) - @client.request( - method: :post, - path: "uploads", - body: parsed, - model: OpenAI::Models::Upload, - options: options - ) + parsed, options = OpenAI::UploadCreateParams.dump_request(params) + @client.request(method: :post, path: "uploads", body: parsed, model: OpenAI::Upload, options: options) end # Some parameter documentations has been truncated, see @@ -62,18 +56,18 @@ def create(params) # # @overload cancel(upload_id, request_options: {}) # - # @param upload_id [String] The ID of the Upload. ... + # @param upload_id [String] The ID of the Upload. # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # - # @return [OpenAI::Models::Upload] + # @return [OpenAI::Upload] # # @see OpenAI::Models::UploadCancelParams def cancel(upload_id, params = {}) @client.request( method: :post, path: ["uploads/%1$s/cancel", upload_id], - model: OpenAI::Models::Upload, + model: OpenAI::Upload, options: params[:request_options] ) end @@ -97,25 +91,24 @@ def cancel(upload_id, params = {}) # # @overload complete(upload_id, part_ids:, md5: nil, request_options: {}) # - # @param upload_id [String] The ID of the Upload. ... + # @param upload_id [String] The ID of the Upload. # - # @param part_ids [Array] The ordered list of Part IDs. ... + # @param part_ids [Array] The ordered list of Part IDs. # # @param md5 [String] The optional md5 checksum for the file contents to verify if the bytes uploaded - # ... # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # - # @return [OpenAI::Models::Upload] + # @return [OpenAI::Upload] # # @see OpenAI::Models::UploadCompleteParams def complete(upload_id, params) - parsed, options = OpenAI::Models::UploadCompleteParams.dump_request(params) + parsed, options = OpenAI::UploadCompleteParams.dump_request(params) @client.request( method: :post, path: ["uploads/%1$s/complete", upload_id], body: parsed, - model: OpenAI::Models::Upload, + model: OpenAI::Upload, options: options ) end diff --git a/lib/openai/resources/uploads/parts.rb b/lib/openai/resources/uploads/parts.rb index 3d7e4770..7ad2e042 100644 --- a/lib/openai/resources/uploads/parts.rb +++ b/lib/openai/resources/uploads/parts.rb @@ -21,23 +21,23 @@ class Parts # # @overload create(upload_id, data:, request_options: {}) # - # @param upload_id [String] The ID of the Upload. ... + # @param upload_id [String] The ID of the Upload. # - # @param data [Pathname, StringIO, IO, OpenAI::FilePart] The chunk of bytes for this Part. ... + # @param data [Pathname, StringIO, IO, OpenAI::FilePart] The chunk of bytes for this Part. # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # - # @return [OpenAI::Models::Uploads::UploadPart] + # @return [OpenAI::Uploads::UploadPart] # # @see OpenAI::Models::Uploads::PartCreateParams def create(upload_id, params) - parsed, options = OpenAI::Models::Uploads::PartCreateParams.dump_request(params) + parsed, options = OpenAI::Uploads::PartCreateParams.dump_request(params) @client.request( method: :post, path: ["uploads/%1$s/parts", upload_id], headers: {"content-type" => "multipart/form-data"}, body: parsed, - model: OpenAI::Models::Uploads::UploadPart, + model: OpenAI::Uploads::UploadPart, options: options ) end diff --git a/lib/openai/resources/vector_stores.rb b/lib/openai/resources/vector_stores.rb index c0eace72..c1d3c184 100644 --- a/lib/openai/resources/vector_stores.rb +++ b/lib/openai/resources/vector_stores.rb @@ -16,30 +16,28 @@ class VectorStores # # @overload create(chunking_strategy: nil, expires_after: nil, file_ids: nil, metadata: nil, name: nil, request_options: {}) # - # @param chunking_strategy [OpenAI::Models::AutoFileChunkingStrategyParam, OpenAI::Models::StaticFileChunkingStrategyObjectParam] The chunking strategy used to chunk the file(s). If not set, will use the `auto` - # ... + # @param chunking_strategy [OpenAI::AutoFileChunkingStrategyParam, OpenAI::StaticFileChunkingStrategyObjectParam] The chunking strategy used to chunk the file(s). If not set, will use the `auto` # - # @param expires_after [OpenAI::Models::VectorStoreCreateParams::ExpiresAfter] The expiration policy for a vector store. + # @param expires_after [OpenAI::VectorStoreCreateParams::ExpiresAfter] The expiration policy for a vector store. # # @param file_ids [Array] A list of [File](https://platform.openai.com/docs/api-reference/files) IDs that - # ... # - # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be # # @param name [String] The name of the vector store. # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # - # @return [OpenAI::Models::VectorStore] + # @return [OpenAI::VectorStore] # # @see OpenAI::Models::VectorStoreCreateParams def create(params = {}) - parsed, options = OpenAI::Models::VectorStoreCreateParams.dump_request(params) + parsed, options = OpenAI::VectorStoreCreateParams.dump_request(params) @client.request( method: :post, path: "vector_stores", body: parsed, - model: OpenAI::Models::VectorStore, + model: OpenAI::VectorStore, options: {extra_headers: {"OpenAI-Beta" => "assistants=v2"}, **options} ) end @@ -52,14 +50,14 @@ def create(params = {}) # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # - # @return [OpenAI::Models::VectorStore] + # @return [OpenAI::VectorStore] # # @see OpenAI::Models::VectorStoreRetrieveParams def retrieve(vector_store_id, params = {}) @client.request( method: :get, path: ["vector_stores/%1$s", vector_store_id], - model: OpenAI::Models::VectorStore, + model: OpenAI::VectorStore, options: {extra_headers: {"OpenAI-Beta" => "assistants=v2"}, **params[:request_options].to_h} ) end @@ -73,24 +71,24 @@ def retrieve(vector_store_id, params = {}) # # @param vector_store_id [String] The ID of the vector store to modify. # - # @param expires_after [OpenAI::Models::VectorStoreUpdateParams::ExpiresAfter, nil] The expiration policy for a vector store. + # @param expires_after [OpenAI::VectorStoreUpdateParams::ExpiresAfter, nil] The expiration policy for a vector store. # - # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be # # @param name [String, nil] The name of the vector store. # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # - # @return [OpenAI::Models::VectorStore] + # @return [OpenAI::VectorStore] # # @see OpenAI::Models::VectorStoreUpdateParams def update(vector_store_id, params = {}) - parsed, options = OpenAI::Models::VectorStoreUpdateParams.dump_request(params) + parsed, options = OpenAI::VectorStoreUpdateParams.dump_request(params) @client.request( method: :post, path: ["vector_stores/%1$s", vector_store_id], body: parsed, - model: OpenAI::Models::VectorStore, + model: OpenAI::VectorStore, options: {extra_headers: {"OpenAI-Beta" => "assistants=v2"}, **options} ) end @@ -103,30 +101,26 @@ def update(vector_store_id, params = {}) # @overload list(after: nil, before: nil, limit: nil, order: nil, request_options: {}) # # @param after [String] A cursor for use in pagination. `after` is an object ID that defines your place - # ... # # @param before [String] A cursor for use in pagination. `before` is an object ID that defines your place - # ... # # @param limit [Integer] A limit on the number of objects to be returned. Limit can range between 1 and 1 - # ... # - # @param order [Symbol, OpenAI::Models::VectorStoreListParams::Order] Sort order by the `created_at` timestamp of the objects. `asc` for ascending ord - # ... + # @param order [Symbol, OpenAI::VectorStoreListParams::Order] Sort order by the `created_at` timestamp of the objects. `asc` for ascending ord # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # - # @return [OpenAI::Internal::CursorPage] + # @return [OpenAI::Internal::CursorPage] # # @see OpenAI::Models::VectorStoreListParams def list(params = {}) - parsed, options = OpenAI::Models::VectorStoreListParams.dump_request(params) + parsed, options = OpenAI::VectorStoreListParams.dump_request(params) @client.request( method: :get, path: "vector_stores", query: parsed, page: OpenAI::Internal::CursorPage, - model: OpenAI::Models::VectorStore, + model: OpenAI::VectorStore, options: {extra_headers: {"OpenAI-Beta" => "assistants=v2"}, **options} ) end @@ -139,14 +133,14 @@ def list(params = {}) # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # - # @return [OpenAI::Models::VectorStoreDeleted] + # @return [OpenAI::VectorStoreDeleted] # # @see OpenAI::Models::VectorStoreDeleteParams def delete(vector_store_id, params = {}) @client.request( method: :delete, path: ["vector_stores/%1$s", vector_store_id], - model: OpenAI::Models::VectorStoreDeleted, + model: OpenAI::VectorStoreDeleted, options: {extra_headers: {"OpenAI-Beta" => "assistants=v2"}, **params[:request_options].to_h} ) end @@ -163,12 +157,11 @@ def delete(vector_store_id, params = {}) # # @param query [String, Array] A query string for a search # - # @param filters [OpenAI::Models::ComparisonFilter, OpenAI::Models::CompoundFilter] A filter to apply based on file attributes. + # @param filters [OpenAI::ComparisonFilter, OpenAI::CompoundFilter] A filter to apply based on file attributes. # # @param max_num_results [Integer] The maximum number of results to return. This number should be between 1 and 50 - # ... # - # @param ranking_options [OpenAI::Models::VectorStoreSearchParams::RankingOptions] Ranking options for search. + # @param ranking_options [OpenAI::VectorStoreSearchParams::RankingOptions] Ranking options for search. # # @param rewrite_query [Boolean] Whether to rewrite the natural language query for vector search. # @@ -178,7 +171,7 @@ def delete(vector_store_id, params = {}) # # @see OpenAI::Models::VectorStoreSearchParams def search(vector_store_id, params) - parsed, options = OpenAI::Models::VectorStoreSearchParams.dump_request(params) + parsed, options = OpenAI::VectorStoreSearchParams.dump_request(params) @client.request( method: :post, path: ["vector_stores/%1$s/search", vector_store_id], diff --git a/lib/openai/resources/vector_stores/file_batches.rb b/lib/openai/resources/vector_stores/file_batches.rb index a56053dd..b8b4133c 100644 --- a/lib/openai/resources/vector_stores/file_batches.rb +++ b/lib/openai/resources/vector_stores/file_batches.rb @@ -11,28 +11,26 @@ class FileBatches # # @overload create(vector_store_id, file_ids:, attributes: nil, chunking_strategy: nil, request_options: {}) # - # @param vector_store_id [String] The ID of the vector store for which to create a File Batch. ... + # @param vector_store_id [String] The ID of the vector store for which to create a File Batch. # # @param file_ids [Array] A list of [File](https://platform.openai.com/docs/api-reference/files) IDs that - # ... # - # @param attributes [Hash{Symbol=>String, Float, Boolean}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # @param attributes [Hash{Symbol=>String, Float, Boolean}, nil] Set of 16 key-value pairs that can be attached to an object. This can be # - # @param chunking_strategy [OpenAI::Models::AutoFileChunkingStrategyParam, OpenAI::Models::StaticFileChunkingStrategyObjectParam] The chunking strategy used to chunk the file(s). If not set, will use the `auto` - # ... + # @param chunking_strategy [OpenAI::AutoFileChunkingStrategyParam, OpenAI::StaticFileChunkingStrategyObjectParam] The chunking strategy used to chunk the file(s). If not set, will use the `auto` # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # - # @return [OpenAI::Models::VectorStores::VectorStoreFileBatch] + # @return [OpenAI::VectorStores::VectorStoreFileBatch] # # @see OpenAI::Models::VectorStores::FileBatchCreateParams def create(vector_store_id, params) - parsed, options = OpenAI::Models::VectorStores::FileBatchCreateParams.dump_request(params) + parsed, options = OpenAI::VectorStores::FileBatchCreateParams.dump_request(params) @client.request( method: :post, path: ["vector_stores/%1$s/file_batches", vector_store_id], body: parsed, - model: OpenAI::Models::VectorStores::VectorStoreFileBatch, + model: OpenAI::VectorStores::VectorStoreFileBatch, options: {extra_headers: {"OpenAI-Beta" => "assistants=v2"}, **options} ) end @@ -47,11 +45,11 @@ def create(vector_store_id, params) # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # - # @return [OpenAI::Models::VectorStores::VectorStoreFileBatch] + # @return [OpenAI::VectorStores::VectorStoreFileBatch] # # @see OpenAI::Models::VectorStores::FileBatchRetrieveParams def retrieve(batch_id, params) - parsed, options = OpenAI::Models::VectorStores::FileBatchRetrieveParams.dump_request(params) + parsed, options = OpenAI::VectorStores::FileBatchRetrieveParams.dump_request(params) vector_store_id = parsed.delete(:vector_store_id) do raise ArgumentError.new("missing required path argument #{_1}") @@ -59,7 +57,7 @@ def retrieve(batch_id, params) @client.request( method: :get, path: ["vector_stores/%1$s/file_batches/%2$s", vector_store_id, batch_id], - model: OpenAI::Models::VectorStores::VectorStoreFileBatch, + model: OpenAI::VectorStores::VectorStoreFileBatch, options: {extra_headers: {"OpenAI-Beta" => "assistants=v2"}, **options} ) end @@ -75,11 +73,11 @@ def retrieve(batch_id, params) # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # - # @return [OpenAI::Models::VectorStores::VectorStoreFileBatch] + # @return [OpenAI::VectorStores::VectorStoreFileBatch] # # @see OpenAI::Models::VectorStores::FileBatchCancelParams def cancel(batch_id, params) - parsed, options = OpenAI::Models::VectorStores::FileBatchCancelParams.dump_request(params) + parsed, options = OpenAI::VectorStores::FileBatchCancelParams.dump_request(params) vector_store_id = parsed.delete(:vector_store_id) do raise ArgumentError.new("missing required path argument #{_1}") @@ -87,7 +85,7 @@ def cancel(batch_id, params) @client.request( method: :post, path: ["vector_stores/%1$s/file_batches/%2$s/cancel", vector_store_id, batch_id], - model: OpenAI::Models::VectorStores::VectorStoreFileBatch, + model: OpenAI::VectorStores::VectorStoreFileBatch, options: {extra_headers: {"OpenAI-Beta" => "assistants=v2"}, **options} ) end @@ -104,27 +102,22 @@ def cancel(batch_id, params) # @param vector_store_id [String] Path param: The ID of the vector store that the files belong to. # # @param after [String] Query param: A cursor for use in pagination. `after` is an object ID that define - # ... # # @param before [String] Query param: A cursor for use in pagination. `before` is an object ID that defin - # ... # - # @param filter [Symbol, OpenAI::Models::VectorStores::FileBatchListFilesParams::Filter] Query param: Filter by file status. One of `in_progress`, `completed`, `failed`, - # ... + # @param filter [Symbol, OpenAI::VectorStores::FileBatchListFilesParams::Filter] Query param: Filter by file status. One of `in_progress`, `completed`, `failed`, # # @param limit [Integer] Query param: A limit on the number of objects to be returned. Limit can range be - # ... # - # @param order [Symbol, OpenAI::Models::VectorStores::FileBatchListFilesParams::Order] Query param: Sort order by the `created_at` timestamp of the objects. `asc` for - # ... + # @param order [Symbol, OpenAI::VectorStores::FileBatchListFilesParams::Order] Query param: Sort order by the `created_at` timestamp of the objects. `asc` for # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # - # @return [OpenAI::Internal::CursorPage] + # @return [OpenAI::Internal::CursorPage] # # @see OpenAI::Models::VectorStores::FileBatchListFilesParams def list_files(batch_id, params) - parsed, options = OpenAI::Models::VectorStores::FileBatchListFilesParams.dump_request(params) + parsed, options = OpenAI::VectorStores::FileBatchListFilesParams.dump_request(params) vector_store_id = parsed.delete(:vector_store_id) do raise ArgumentError.new("missing required path argument #{_1}") @@ -134,7 +127,7 @@ def list_files(batch_id, params) path: ["vector_stores/%1$s/file_batches/%2$s/files", vector_store_id, batch_id], query: parsed, page: OpenAI::Internal::CursorPage, - model: OpenAI::Models::VectorStores::VectorStoreFile, + model: OpenAI::VectorStores::VectorStoreFile, options: {extra_headers: {"OpenAI-Beta" => "assistants=v2"}, **options} ) end diff --git a/lib/openai/resources/vector_stores/files.rb b/lib/openai/resources/vector_stores/files.rb index fa0b48c5..79c76c82 100644 --- a/lib/openai/resources/vector_stores/files.rb +++ b/lib/openai/resources/vector_stores/files.rb @@ -13,28 +13,26 @@ class Files # # @overload create(vector_store_id, file_id:, attributes: nil, chunking_strategy: nil, request_options: {}) # - # @param vector_store_id [String] The ID of the vector store for which to create a File. ... + # @param vector_store_id [String] The ID of the vector store for which to create a File. # # @param file_id [String] A [File](https://platform.openai.com/docs/api-reference/files) ID that the vecto - # ... # - # @param attributes [Hash{Symbol=>String, Float, Boolean}, nil] Set of 16 key-value pairs that can be attached to an object. This can be ... + # @param attributes [Hash{Symbol=>String, Float, Boolean}, nil] Set of 16 key-value pairs that can be attached to an object. This can be # - # @param chunking_strategy [OpenAI::Models::AutoFileChunkingStrategyParam, OpenAI::Models::StaticFileChunkingStrategyObjectParam] The chunking strategy used to chunk the file(s). If not set, will use the `auto` - # ... + # @param chunking_strategy [OpenAI::AutoFileChunkingStrategyParam, OpenAI::StaticFileChunkingStrategyObjectParam] The chunking strategy used to chunk the file(s). If not set, will use the `auto` # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # - # @return [OpenAI::Models::VectorStores::VectorStoreFile] + # @return [OpenAI::VectorStores::VectorStoreFile] # # @see OpenAI::Models::VectorStores::FileCreateParams def create(vector_store_id, params) - parsed, options = OpenAI::Models::VectorStores::FileCreateParams.dump_request(params) + parsed, options = OpenAI::VectorStores::FileCreateParams.dump_request(params) @client.request( method: :post, path: ["vector_stores/%1$s/files", vector_store_id], body: parsed, - model: OpenAI::Models::VectorStores::VectorStoreFile, + model: OpenAI::VectorStores::VectorStoreFile, options: {extra_headers: {"OpenAI-Beta" => "assistants=v2"}, **options} ) end @@ -49,11 +47,11 @@ def create(vector_store_id, params) # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # - # @return [OpenAI::Models::VectorStores::VectorStoreFile] + # @return [OpenAI::VectorStores::VectorStoreFile] # # @see OpenAI::Models::VectorStores::FileRetrieveParams def retrieve(file_id, params) - parsed, options = OpenAI::Models::VectorStores::FileRetrieveParams.dump_request(params) + parsed, options = OpenAI::VectorStores::FileRetrieveParams.dump_request(params) vector_store_id = parsed.delete(:vector_store_id) do raise ArgumentError.new("missing required path argument #{_1}") @@ -61,7 +59,7 @@ def retrieve(file_id, params) @client.request( method: :get, path: ["vector_stores/%1$s/files/%2$s", vector_store_id, file_id], - model: OpenAI::Models::VectorStores::VectorStoreFile, + model: OpenAI::VectorStores::VectorStoreFile, options: {extra_headers: {"OpenAI-Beta" => "assistants=v2"}, **options} ) end @@ -78,15 +76,14 @@ def retrieve(file_id, params) # @param vector_store_id [String] Path param: The ID of the vector store the file belongs to. # # @param attributes [Hash{Symbol=>String, Float, Boolean}, nil] Body param: Set of 16 key-value pairs that can be attached to an object. This ca - # ... # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # - # @return [OpenAI::Models::VectorStores::VectorStoreFile] + # @return [OpenAI::VectorStores::VectorStoreFile] # # @see OpenAI::Models::VectorStores::FileUpdateParams def update(file_id, params) - parsed, options = OpenAI::Models::VectorStores::FileUpdateParams.dump_request(params) + parsed, options = OpenAI::VectorStores::FileUpdateParams.dump_request(params) vector_store_id = parsed.delete(:vector_store_id) do raise ArgumentError.new("missing required path argument #{_1}") @@ -95,7 +92,7 @@ def update(file_id, params) method: :post, path: ["vector_stores/%1$s/files/%2$s", vector_store_id, file_id], body: parsed, - model: OpenAI::Models::VectorStores::VectorStoreFile, + model: OpenAI::VectorStores::VectorStoreFile, options: {extra_headers: {"OpenAI-Beta" => "assistants=v2"}, **options} ) end @@ -110,33 +107,28 @@ def update(file_id, params) # @param vector_store_id [String] The ID of the vector store that the files belong to. # # @param after [String] A cursor for use in pagination. `after` is an object ID that defines your place - # ... # # @param before [String] A cursor for use in pagination. `before` is an object ID that defines your place - # ... # - # @param filter [Symbol, OpenAI::Models::VectorStores::FileListParams::Filter] Filter by file status. One of `in_progress`, `completed`, `failed`, `cancelled`. - # ... + # @param filter [Symbol, OpenAI::VectorStores::FileListParams::Filter] Filter by file status. One of `in_progress`, `completed`, `failed`, `cancelled`. # # @param limit [Integer] A limit on the number of objects to be returned. Limit can range between 1 and 1 - # ... # - # @param order [Symbol, OpenAI::Models::VectorStores::FileListParams::Order] Sort order by the `created_at` timestamp of the objects. `asc` for ascending ord - # ... + # @param order [Symbol, OpenAI::VectorStores::FileListParams::Order] Sort order by the `created_at` timestamp of the objects. `asc` for ascending ord # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # - # @return [OpenAI::Internal::CursorPage] + # @return [OpenAI::Internal::CursorPage] # # @see OpenAI::Models::VectorStores::FileListParams def list(vector_store_id, params = {}) - parsed, options = OpenAI::Models::VectorStores::FileListParams.dump_request(params) + parsed, options = OpenAI::VectorStores::FileListParams.dump_request(params) @client.request( method: :get, path: ["vector_stores/%1$s/files", vector_store_id], query: parsed, page: OpenAI::Internal::CursorPage, - model: OpenAI::Models::VectorStores::VectorStoreFile, + model: OpenAI::VectorStores::VectorStoreFile, options: {extra_headers: {"OpenAI-Beta" => "assistants=v2"}, **options} ) end @@ -154,11 +146,11 @@ def list(vector_store_id, params = {}) # # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] # - # @return [OpenAI::Models::VectorStores::VectorStoreFileDeleted] + # @return [OpenAI::VectorStores::VectorStoreFileDeleted] # # @see OpenAI::Models::VectorStores::FileDeleteParams def delete(file_id, params) - parsed, options = OpenAI::Models::VectorStores::FileDeleteParams.dump_request(params) + parsed, options = OpenAI::VectorStores::FileDeleteParams.dump_request(params) vector_store_id = parsed.delete(:vector_store_id) do raise ArgumentError.new("missing required path argument #{_1}") @@ -166,7 +158,7 @@ def delete(file_id, params) @client.request( method: :delete, path: ["vector_stores/%1$s/files/%2$s", vector_store_id, file_id], - model: OpenAI::Models::VectorStores::VectorStoreFileDeleted, + model: OpenAI::VectorStores::VectorStoreFileDeleted, options: {extra_headers: {"OpenAI-Beta" => "assistants=v2"}, **options} ) end @@ -185,7 +177,7 @@ def delete(file_id, params) # # @see OpenAI::Models::VectorStores::FileContentParams def content(file_id, params) - parsed, options = OpenAI::Models::VectorStores::FileContentParams.dump_request(params) + parsed, options = OpenAI::VectorStores::FileContentParams.dump_request(params) vector_store_id = parsed.delete(:vector_store_id) do raise ArgumentError.new("missing required path argument #{_1}") diff --git a/rbi/openai/client.rbi b/rbi/openai/client.rbi index b70ce71a..7ac76a8c 100644 --- a/rbi/openai/client.rbi +++ b/rbi/openai/client.rbi @@ -66,7 +66,8 @@ module OpenAI # @api private sig { override.returns(T::Hash[String, String]) } - private def auth_headers; end + private def auth_headers + end # Creates and returns a new client for interacting with the API. sig do @@ -79,8 +80,7 @@ module OpenAI timeout: Float, initial_retry_delay: Float, max_retry_delay: Float - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # Defaults to `ENV["OPENAI_API_KEY"]` @@ -97,6 +97,7 @@ module OpenAI timeout: OpenAI::Client::DEFAULT_TIMEOUT_IN_SECONDS, initial_retry_delay: OpenAI::Client::DEFAULT_INITIAL_RETRY_DELAY, max_retry_delay: OpenAI::Client::DEFAULT_MAX_RETRY_DELAY - ); end + ) + end end end diff --git a/rbi/openai/errors.rbi b/rbi/openai/errors.rbi index 1eb51da4..4ade8ef1 100644 --- a/rbi/openai/errors.rbi +++ b/rbi/openai/errors.rbi @@ -38,10 +38,17 @@ module OpenAI request: NilClass, response: NilClass, message: T.nilable(String) - ) - .returns(T.attached_class) + ).returns(T.attached_class) + end + def self.new( + url:, + status: nil, + body: nil, + request: nil, + response: nil, + message: nil + ) end - def self.new(url:, status: nil, body: nil, request: nil, response: nil, message: nil); end end class APIConnectionError < OpenAI::Errors::APIError @@ -69,10 +76,16 @@ module OpenAI request: NilClass, response: NilClass, message: T.nilable(String) - ) - .returns(T.attached_class) + ).returns(T.attached_class) end - def self.new(url:, status: nil, body: nil, request: nil, response: nil, message: "Connection error.") + def self.new( + url:, + status: nil, + body: nil, + request: nil, + response: nil, + message: "Connection error." + ) end end @@ -86,10 +99,16 @@ module OpenAI request: NilClass, response: NilClass, message: T.nilable(String) - ) - .returns(T.attached_class) + ).returns(T.attached_class) end - def self.new(url:, status: nil, body: nil, request: nil, response: nil, message: "Request timed out.") + def self.new( + url:, + status: nil, + body: nil, + request: nil, + response: nil, + message: "Request timed out." + ) end end @@ -103,10 +122,10 @@ module OpenAI request: NilClass, response: NilClass, message: T.nilable(String) - ) - .returns(T.attached_class) + ).returns(T.attached_class) + end + def self.for(url:, status:, body:, request:, response:, message: nil) end - def self.for(url:, status:, body:, request:, response:, message: nil); end sig { returns(Integer) } attr_accessor :status @@ -129,10 +148,10 @@ module OpenAI request: NilClass, response: NilClass, message: T.nilable(String) - ) - .returns(T.attached_class) + ).returns(T.attached_class) + end + def self.new(url:, status:, body:, request:, response:, message: nil) end - def self.new(url:, status:, body:, request:, response:, message: nil); end end class BadRequestError < OpenAI::Errors::APIStatusError @@ -164,7 +183,7 @@ module OpenAI end class InternalServerError < OpenAI::Errors::APIStatusError - HTTP_STATUS = T.let(500.., T::Range[Integer]) + HTTP_STATUS = T.let((500..), T::Range[Integer]) end end end diff --git a/rbi/openai/file_part.rbi b/rbi/openai/file_part.rbi index 20c06b85..5df7359c 100644 --- a/rbi/openai/file_part.rbi +++ b/rbi/openai/file_part.rbi @@ -13,22 +13,25 @@ module OpenAI # @api private sig { returns(String) } - private def read; end + private def read + end sig { params(a: T.anything).returns(String) } - def to_json(*a); end + def to_json(*a) + end sig { params(a: T.anything).returns(String) } - def to_yaml(*a); end + def to_yaml(*a) + end sig do params( content: T.any(Pathname, StringIO, IO, String), filename: T.nilable(String), content_type: T.nilable(String) - ) - .returns(T.attached_class) + ).returns(T.attached_class) + end + def self.new(content, filename: nil, content_type: nil) end - def self.new(content, filename: nil, content_type: nil); end end end diff --git a/rbi/openai/internal/cursor_page.rbi b/rbi/openai/internal/cursor_page.rbi index 7bc68531..4eb4d3b1 100644 --- a/rbi/openai/internal/cursor_page.rbi +++ b/rbi/openai/internal/cursor_page.rbi @@ -15,7 +15,8 @@ module OpenAI # @api private sig { returns(String) } - def inspect; end + def inspect + end end end end diff --git a/rbi/openai/internal/page.rbi b/rbi/openai/internal/page.rbi index eda6d887..6f9f6551 100644 --- a/rbi/openai/internal/page.rbi +++ b/rbi/openai/internal/page.rbi @@ -15,7 +15,8 @@ module OpenAI # @api private sig { returns(String) } - def inspect; end + def inspect + end end end end diff --git a/rbi/openai/internal/stream.rbi b/rbi/openai/internal/stream.rbi index 8c1f5f34..ffcb1934 100644 --- a/rbi/openai/internal/stream.rbi +++ b/rbi/openai/internal/stream.rbi @@ -3,14 +3,16 @@ module OpenAI module Internal class Stream - Message = type_member(:in) { {fixed: OpenAI::Internal::Util::ServerSentEvent} } + Message = + type_member(:in) { { fixed: OpenAI::Internal::Util::ServerSentEvent } } Elem = type_member(:out) include OpenAI::Internal::Type::BaseStream # @api private sig { override.returns(T::Enumerable[Elem]) } - private def iterator; end + private def iterator + end end end end diff --git a/rbi/openai/internal/transport/base_client.rbi b/rbi/openai/internal/transport/base_client.rbi index 612daee4..29580549 100644 --- a/rbi/openai/internal/transport/base_client.rbi +++ b/rbi/openai/internal/transport/base_client.rbi @@ -12,33 +12,52 @@ module OpenAI { method: Symbol, path: T.any(String, T::Array[String]), - query: T.nilable(T::Hash[String, T.nilable(T.any(T::Array[String], String))]), - headers: T.nilable( - T::Hash[String, - T.nilable( - T.any( - String, - Integer, - T::Array[T.nilable(T.any(String, Integer))] - ) - )] - ), + query: + T.nilable( + T::Hash[String, T.nilable(T.any(T::Array[String], String))] + ), + headers: + T.nilable( + T::Hash[ + String, + T.nilable( + T.any( + String, + Integer, + T::Array[T.nilable(T.any(String, Integer))] + ) + ) + ] + ), body: T.nilable(T.anything), - unwrap: T.nilable( - T.any( - Symbol, - Integer, - T::Array[T.any(Symbol, Integer)], - T.proc.params(arg0: T.anything).returns(T.anything) - ) - ), - page: T.nilable(T::Class[OpenAI::Internal::Type::BasePage[OpenAI::Internal::Type::BaseModel]]), - stream: T.nilable( - T::Class[OpenAI::Internal::Type::BaseStream[T.anything, - OpenAI::Internal::Type::BaseModel]] - ), + unwrap: + T.nilable( + T.any( + Symbol, + Integer, + T::Array[T.any(Symbol, Integer)], + T.proc.params(arg0: T.anything).returns(T.anything) + ) + ), + page: + T.nilable( + T::Class[ + OpenAI::Internal::Type::BasePage[ + OpenAI::Internal::Type::BaseModel + ] + ] + ), + stream: + T.nilable( + T::Class[ + OpenAI::Internal::Type::BaseStream[ + T.anything, + OpenAI::Internal::Type::BaseModel + ] + ] + ), model: T.nilable(OpenAI::Internal::Type::Converter::Input), - options: T.nilable(OpenAI::RequestOpts) + options: T.nilable(OpenAI::RequestOptions::OrHash) } end @@ -61,41 +80,48 @@ module OpenAI class << self # @api private - sig { params(req: OpenAI::Internal::Transport::BaseClient::RequestComponentsShape).void } - def validate!(req); end + sig do + params( + req: + OpenAI::Internal::Transport::BaseClient::RequestComponentsShape + ).void + end + def validate!(req) + end # @api private sig do params( status: Integer, - headers: T.any( - T::Hash[String, String], - Net::HTTPHeader - ) + headers: T.any(T::Hash[String, String], Net::HTTPHeader) ).returns(T::Boolean) end - def should_retry?(status, headers:); end + def should_retry?(status, headers:) + end # @api private sig do params( - request: OpenAI::Internal::Transport::BaseClient::RequestInputShape, + request: + OpenAI::Internal::Transport::BaseClient::RequestInputShape, status: Integer, response_headers: T.any(T::Hash[String, String], Net::HTTPHeader) + ).returns( + OpenAI::Internal::Transport::BaseClient::RequestInputShape ) - .returns(OpenAI::Internal::Transport::BaseClient::RequestInputShape) end - def follow_redirect(request, status:, response_headers:); end + def follow_redirect(request, status:, response_headers:) + end # @api private sig do params( status: T.any(Integer, OpenAI::Errors::APIConnectionError), stream: T.nilable(T::Enumerable[String]) - ) - .void + ).void + end + def reap_connection!(status, stream:) end - def reap_connection!(status, stream:); end end # @api private @@ -110,11 +136,19 @@ module OpenAI max_retries: Integer, initial_retry_delay: Float, max_retry_delay: Float, - headers: T::Hash[String, - T.nilable(T.any(String, Integer, T::Array[T.nilable(T.any(String, Integer))]))], + headers: + T::Hash[ + String, + T.nilable( + T.any( + String, + Integer, + T::Array[T.nilable(T.any(String, Integer))] + ) + ) + ], idempotency_header: T.nilable(String) - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( base_url:, @@ -124,29 +158,41 @@ module OpenAI max_retry_delay: 0.0, headers: {}, idempotency_header: nil - ); end + ) + end + # @api private sig { overridable.returns(T::Hash[String, String]) } - private def auth_headers; end + private def auth_headers + end # @api private sig { returns(String) } - private def generate_idempotency_key; end + private def generate_idempotency_key + end # @api private sig do overridable .params( - req: OpenAI::Internal::Transport::BaseClient::RequestComponentsShape, + req: + OpenAI::Internal::Transport::BaseClient::RequestComponentsShape, opts: OpenAI::Internal::AnyHash ) .returns(OpenAI::Internal::Transport::BaseClient::RequestInputShape) end - private def build_request(req, opts); end + private def build_request(req, opts) + end # @api private - sig { params(headers: T::Hash[String, String], retry_count: Integer).returns(Float) } - private def retry_delay(headers, retry_count:); end + sig do + params( + headers: T::Hash[String, String], + retry_count: Integer + ).returns(Float) + end + private def retry_delay(headers, retry_count:) + end # @api private sig do @@ -155,10 +201,15 @@ module OpenAI redirect_count: Integer, retry_count: Integer, send_retry_header: T::Boolean - ) - .returns([Integer, Net::HTTPResponse, T::Enumerable[String]]) + ).returns([Integer, Net::HTTPResponse, T::Enumerable[String]]) + end + private def send_request( + request, + redirect_count:, + retry_count:, + send_retry_header: + ) end - private def send_request(request, redirect_count:, retry_count:, send_retry_header:); end # Execute the request specified by `req`. This is the method that all resource # methods call into. @@ -168,35 +219,53 @@ module OpenAI params( method: Symbol, path: T.any(String, T::Array[String]), - query: T.nilable(T::Hash[String, T.nilable(T.any(T::Array[String], String))]), - headers: T.nilable( - T::Hash[String, - T.nilable( - T.any( - String, - Integer, - T::Array[T.nilable(T.any(String, Integer))] - ) - )] - ), + query: + T.nilable( + T::Hash[String, T.nilable(T.any(T::Array[String], String))] + ), + headers: + T.nilable( + T::Hash[ + String, + T.nilable( + T.any( + String, + Integer, + T::Array[T.nilable(T.any(String, Integer))] + ) + ) + ] + ), body: T.nilable(T.anything), - unwrap: T.nilable( - T.any( - Symbol, - Integer, - T::Array[T.any(Symbol, Integer)], - T.proc.params(arg0: T.anything).returns(T.anything) - ) - ), - page: T.nilable(T::Class[OpenAI::Internal::Type::BasePage[OpenAI::Internal::Type::BaseModel]]), - stream: T.nilable( - T::Class[OpenAI::Internal::Type::BaseStream[T.anything, - OpenAI::Internal::Type::BaseModel]] - ), + unwrap: + T.nilable( + T.any( + Symbol, + Integer, + T::Array[T.any(Symbol, Integer)], + T.proc.params(arg0: T.anything).returns(T.anything) + ) + ), + page: + T.nilable( + T::Class[ + OpenAI::Internal::Type::BasePage[ + OpenAI::Internal::Type::BaseModel + ] + ] + ), + stream: + T.nilable( + T::Class[ + OpenAI::Internal::Type::BaseStream[ + T.anything, + OpenAI::Internal::Type::BaseModel + ] + ] + ), model: T.nilable(OpenAI::Internal::Type::Converter::Input), - options: T.nilable(OpenAI::RequestOpts) - ) - .returns(T.anything) + options: T.nilable(OpenAI::RequestOptions::OrHash) + ).returns(T.anything) end def request( method, @@ -209,10 +278,13 @@ module OpenAI stream: nil, model: OpenAI::Internal::Type::Unknown, options: {} - ); end + ) + end + # @api private sig { returns(String) } - def inspect; end + def inspect + end end end end diff --git a/rbi/openai/internal/transport/pooled_net_requester.rbi b/rbi/openai/internal/transport/pooled_net_requester.rbi index c0a3d443..373c1c3b 100644 --- a/rbi/openai/internal/transport/pooled_net_requester.rbi +++ b/rbi/openai/internal/transport/pooled_net_requester.rbi @@ -23,37 +23,51 @@ module OpenAI class << self # @api private sig { params(url: URI::Generic).returns(Net::HTTP) } - def connect(url); end + def connect(url) + end # @api private sig { params(conn: Net::HTTP, deadline: Float).void } - def calibrate_socket_timeout(conn, deadline); end + def calibrate_socket_timeout(conn, deadline) + end # @api private sig do params( - request: OpenAI::Internal::Transport::PooledNetRequester::RequestShape, + request: + OpenAI::Internal::Transport::PooledNetRequester::RequestShape, blk: T.proc.params(arg0: String).void - ) - .returns([Net::HTTPGenericRequest, T.proc.void]) + ).returns([Net::HTTPGenericRequest, T.proc.void]) + end + def build_request(request, &blk) end - def build_request(request, &blk); end end # @api private - sig { params(url: URI::Generic, deadline: Float, blk: T.proc.params(arg0: Net::HTTP).void).void } - private def with_pool(url, deadline:, &blk); end + sig do + params( + url: URI::Generic, + deadline: Float, + blk: T.proc.params(arg0: Net::HTTP).void + ).void + end + private def with_pool(url, deadline:, &blk) + end # @api private sig do - params(request: OpenAI::Internal::Transport::PooledNetRequester::RequestShape) - .returns([Integer, Net::HTTPResponse, T::Enumerable[String]]) + params( + request: + OpenAI::Internal::Transport::PooledNetRequester::RequestShape + ).returns([Integer, Net::HTTPResponse, T::Enumerable[String]]) + end + def execute(request) end - def execute(request); end # @api private sig { params(size: Integer).returns(T.attached_class) } - def self.new(size: Etc.nprocessors); end + def self.new(size: Etc.nprocessors) + end end end end diff --git a/rbi/openai/internal/type/array_of.rbi b/rbi/openai/internal/type/array_of.rbi index e7a84e1a..9cc138b7 100644 --- a/rbi/openai/internal/type/array_of.rbi +++ b/rbi/openai/internal/type/array_of.rbi @@ -15,25 +15,29 @@ module OpenAI sig do params( - type_info: T.any( - OpenAI::Internal::AnyHash, - T.proc.returns(OpenAI::Internal::Type::Converter::Input), - OpenAI::Internal::Type::Converter::Input - ), + type_info: + T.any( + OpenAI::Internal::AnyHash, + T.proc.returns(OpenAI::Internal::Type::Converter::Input), + OpenAI::Internal::Type::Converter::Input + ), spec: OpenAI::Internal::AnyHash - ) - .returns(T.attached_class) + ).returns(T.attached_class) + end + def self.[](type_info, spec = {}) end - def self.[](type_info, spec = {}); end sig { params(other: T.anything).returns(T::Boolean) } - def ===(other); end + def ===(other) + end sig { params(other: T.anything).returns(T::Boolean) } - def ==(other); end + def ==(other) + end sig { returns(Integer) } - def hash; end + def hash + end # @api private sig do @@ -44,7 +48,8 @@ module OpenAI ) .returns(T.any(T::Array[T.anything], T.anything)) end - def coerce(value, state:); end + def coerce(value, state:) + end # @api private sig do @@ -55,33 +60,38 @@ module OpenAI ) .returns(T.any(T::Array[T.anything], T.anything)) end - def dump(value, state:); end + def dump(value, state:) + end # @api private sig { returns(Elem) } - protected def item_type; end + protected def item_type + end # @api private sig { returns(T::Boolean) } - protected def nilable?; end + protected def nilable? + end # @api private sig do params( - type_info: T.any( - OpenAI::Internal::AnyHash, - T.proc.returns(OpenAI::Internal::Type::Converter::Input), - OpenAI::Internal::Type::Converter::Input - ), + type_info: + T.any( + OpenAI::Internal::AnyHash, + T.proc.returns(OpenAI::Internal::Type::Converter::Input), + OpenAI::Internal::Type::Converter::Input + ), spec: OpenAI::Internal::AnyHash - ) - .void + ).void + end + def initialize(type_info, spec = {}) end - def initialize(type_info, spec = {}); end # @api private sig { params(depth: Integer).returns(String) } - def inspect(depth: 0); end + def inspect(depth: 0) + end end end end diff --git a/rbi/openai/internal/type/base_model.rbi b/rbi/openai/internal/type/base_model.rbi index d97f840f..f0bcae46 100644 --- a/rbi/openai/internal/type/base_model.rbi +++ b/rbi/openai/internal/type/base_model.rbi @@ -8,9 +8,16 @@ module OpenAI abstract! - KnownFieldShape = T.type_alias do - {mode: T.nilable(Symbol), required: T::Boolean, nilable: T::Boolean} - end + KnownFieldShape = + T.type_alias do + { + mode: T.nilable(Symbol), + required: T::Boolean, + nilable: T::Boolean + } + end + + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } class << self # @api private @@ -23,12 +30,16 @@ module OpenAI Symbol, T.all( OpenAI::Internal::Type::BaseModel::KnownFieldShape, - {type_fn: T.proc.returns(OpenAI::Internal::Type::Converter::Input)} + { + type_fn: + T.proc.returns(OpenAI::Internal::Type::Converter::Input) + } ) ] ) end - def known_fields; end + def known_fields + end # @api private sig do @@ -37,114 +48,139 @@ module OpenAI Symbol, T.all( OpenAI::Internal::Type::BaseModel::KnownFieldShape, - {type: OpenAI::Internal::Type::Converter::Input} + { type: OpenAI::Internal::Type::Converter::Input } ) ] ) end - def fields; end + def fields + end # @api private sig do params( name_sym: Symbol, required: T::Boolean, - type_info: T.any( - { - const: T.nilable(T.any(NilClass, T::Boolean, Integer, Float, Symbol)), - enum: T.nilable(T.proc.returns(OpenAI::Internal::Type::Converter::Input)), - union: T.nilable(T.proc.returns(OpenAI::Internal::Type::Converter::Input)), - api_name: Symbol, - nil?: T::Boolean - }, - T.proc.returns(OpenAI::Internal::Type::Converter::Input), - OpenAI::Internal::Type::Converter::Input - ), + type_info: + T.any( + { + const: + T.nilable( + T.any(NilClass, T::Boolean, Integer, Float, Symbol) + ), + enum: + T.nilable( + T.proc.returns(OpenAI::Internal::Type::Converter::Input) + ), + union: + T.nilable( + T.proc.returns(OpenAI::Internal::Type::Converter::Input) + ), + api_name: Symbol, + nil?: T::Boolean + }, + T.proc.returns(OpenAI::Internal::Type::Converter::Input), + OpenAI::Internal::Type::Converter::Input + ), spec: OpenAI::Internal::AnyHash - ) - .void + ).void + end + private def add_field(name_sym, required:, type_info:, spec:) end - private def add_field(name_sym, required:, type_info:, spec:); end # @api private sig do params( name_sym: Symbol, - type_info: T.any( - OpenAI::Internal::AnyHash, - T.proc.returns(OpenAI::Internal::Type::Converter::Input), - OpenAI::Internal::Type::Converter::Input - ), + type_info: + T.any( + OpenAI::Internal::AnyHash, + T.proc.returns(OpenAI::Internal::Type::Converter::Input), + OpenAI::Internal::Type::Converter::Input + ), spec: OpenAI::Internal::AnyHash - ) - .void + ).void + end + def required(name_sym, type_info, spec = {}) end - def required(name_sym, type_info, spec = {}); end # @api private sig do params( name_sym: Symbol, - type_info: T.any( - OpenAI::Internal::AnyHash, - T.proc.returns(OpenAI::Internal::Type::Converter::Input), - OpenAI::Internal::Type::Converter::Input - ), + type_info: + T.any( + OpenAI::Internal::AnyHash, + T.proc.returns(OpenAI::Internal::Type::Converter::Input), + OpenAI::Internal::Type::Converter::Input + ), spec: OpenAI::Internal::AnyHash - ) - .void + ).void + end + def optional(name_sym, type_info, spec = {}) end - def optional(name_sym, type_info, spec = {}); end # @api private # # `request_only` attributes not excluded from `.#coerce` when receiving responses # even if well behaved servers should not send them sig { params(blk: T.proc.void).void } - private def request_only(&blk); end + private def request_only(&blk) + end # @api private # # `response_only` attributes are omitted from `.#dump` when making requests sig { params(blk: T.proc.void).void } - private def response_only(&blk); end + private def response_only(&blk) + end sig { params(other: T.anything).returns(T::Boolean) } - def ==(other); end + def ==(other) + end sig { returns(Integer) } - def hash; end + def hash + end end sig { params(other: T.anything).returns(T::Boolean) } - def ==(other); end + def ==(other) + end sig { returns(Integer) } - def hash; end + def hash + end class << self # @api private sig do override .params( - value: T.any(OpenAI::Internal::Type::BaseModel, T::Hash[T.anything, T.anything], T.anything), + value: + T.any( + OpenAI::Internal::Type::BaseModel, + T::Hash[T.anything, T.anything], + T.anything + ), state: OpenAI::Internal::Type::Converter::CoerceState ) .returns(T.any(T.attached_class, T.anything)) end - def coerce(value, state:); end + def coerce(value, state:) + end # @api private sig do override - .params(value: T.any( - T.attached_class, - T.anything - ), - state: OpenAI::Internal::Type::Converter::DumpState) + .params( + value: T.any(T.attached_class, T.anything), + state: OpenAI::Internal::Type::Converter::DumpState + ) .returns(T.any(T::Hash[T.anything, T.anything], T.anything)) end - def dump(value, state:); end + def dump(value, state:) + end end # Returns the raw value associated with the given key, if found. Otherwise, nil is @@ -154,7 +190,8 @@ module OpenAI # undocumented features. This method does not parse response data into # higher-level types. Lookup by anything other than a Symbol is an ArgumentError. sig { params(key: Symbol).returns(T.nilable(T.anything)) } - def [](key); end + def [](key) + end # Returns a Hash of the data underlying this object. O(1) # @@ -165,7 +202,8 @@ module OpenAI # This method is not recursive. The returned value is shared by the object, so it # should not be mutated. sig { overridable.returns(OpenAI::Internal::AnyHash) } - def to_h; end + def to_h + end # Returns a Hash of the data underlying this object. O(1) # @@ -176,39 +214,60 @@ module OpenAI # This method is not recursive. The returned value is shared by the object, so it # should not be mutated. sig { overridable.returns(OpenAI::Internal::AnyHash) } - def to_hash; end + def to_hash + end - sig { params(keys: T.nilable(T::Array[Symbol])).returns(OpenAI::Internal::AnyHash) } - def deconstruct_keys(keys); end + sig do + params(keys: T.nilable(T::Array[Symbol])).returns( + OpenAI::Internal::AnyHash + ) + end + def deconstruct_keys(keys) + end class << self # @api private - sig { params(model: OpenAI::Internal::Type::BaseModel).returns(OpenAI::Internal::AnyHash) } - def walk(model); end + sig do + params(model: OpenAI::Internal::Type::BaseModel).returns( + OpenAI::Internal::AnyHash + ) + end + def walk(model) + end end sig { params(a: T.anything).returns(String) } - def to_json(*a); end + def to_json(*a) + end sig { params(a: T.anything).returns(String) } - def to_yaml(*a); end + def to_yaml(*a) + end # Create a new instance of a model. - sig { params(data: T.any(T::Hash[Symbol, T.anything], T.self_type)).returns(T.attached_class) } - def self.new(data = {}); end + sig do + params(data: T.any(T::Hash[Symbol, T.anything], T.self_type)).returns( + T.attached_class + ) + end + def self.new(data = {}) + end class << self # @api private sig { params(depth: Integer).returns(String) } - def inspect(depth: 0); end + def inspect(depth: 0) + end end sig { returns(String) } - def to_s; end + def to_s + end # @api private sig { returns(String) } - def inspect; end + def inspect + end end end end diff --git a/rbi/openai/internal/type/base_page.rbi b/rbi/openai/internal/type/base_page.rbi index 6a3257fe..1df53287 100644 --- a/rbi/openai/internal/type/base_page.rbi +++ b/rbi/openai/internal/type/base_page.rbi @@ -10,28 +10,33 @@ module OpenAI Elem = type_member(:out) sig { overridable.returns(T::Boolean) } - def next_page?; end + def next_page? + end sig { overridable.returns(T.self_type) } - def next_page; end + def next_page + end sig { overridable.params(blk: T.proc.params(arg0: Elem).void).void } - def auto_paging_each(&blk); end + def auto_paging_each(&blk) + end sig { returns(T::Enumerable[Elem]) } - def to_enum; end + def to_enum + end # @api private sig do params( client: OpenAI::Internal::Transport::BaseClient, - req: OpenAI::Internal::Transport::BaseClient::RequestComponentsShape, + req: + OpenAI::Internal::Transport::BaseClient::RequestComponentsShape, headers: T.any(T::Hash[String, String], Net::HTTPHeader), page_data: T.anything - ) - .void + ).void + end + def initialize(client:, req:, headers:, page_data:) end - def initialize(client:, req:, headers:, page_data:); end end end end diff --git a/rbi/openai/internal/type/base_stream.rbi b/rbi/openai/internal/type/base_stream.rbi index ff3f1d51..82b62c1a 100644 --- a/rbi/openai/internal/type/base_stream.rbi +++ b/rbi/openai/internal/type/base_stream.rbi @@ -18,39 +18,50 @@ module OpenAI # # This should not be relied upon for resource clean up, as the garbage collector # is not guaranteed to run. - sig { params(stream: T::Enumerable[T.anything]).returns(T.proc.params(arg0: Integer).void) } - def defer_closing(stream); end + sig do + params(stream: T::Enumerable[T.anything]).returns( + T.proc.params(arg0: Integer).void + ) + end + def defer_closing(stream) + end end sig { void } - def close; end + def close + end # @api private sig { overridable.returns(T::Enumerable[Elem]) } - private def iterator; end + private def iterator + end sig { params(blk: T.proc.params(arg0: Elem).void).void } - def each(&blk); end + def each(&blk) + end sig { returns(T::Enumerator[Elem]) } - def to_enum; end + def to_enum + end # @api private sig do params( - model: T.any(T::Class[T.anything], OpenAI::Internal::Type::Converter), + model: + T.any(T::Class[T.anything], OpenAI::Internal::Type::Converter), url: URI::Generic, status: Integer, response: Net::HTTPResponse, stream: T::Enumerable[Message] - ) - .void + ).void + end + def initialize(model:, url:, status:, response:, stream:) end - def initialize(model:, url:, status:, response:, stream:); end # @api private sig { returns(String) } - def inspect; end + def inspect + end end end end diff --git a/rbi/openai/internal/type/boolean.rbi b/rbi/openai/internal/type/boolean.rbi index 1cecc37d..b7cc1e3d 100644 --- a/rbi/openai/internal/type/boolean.rbi +++ b/rbi/openai/internal/type/boolean.rbi @@ -12,35 +12,37 @@ module OpenAI abstract! sig { params(other: T.anything).returns(T::Boolean) } - def self.===(other); end + def self.===(other) + end sig { params(other: T.anything).returns(T::Boolean) } - def self.==(other); end + def self.==(other) + end class << self # @api private sig do override - .params(value: T.any( - T::Boolean, - T.anything - ), - state: OpenAI::Internal::Type::Converter::CoerceState) + .params( + value: T.any(T::Boolean, T.anything), + state: OpenAI::Internal::Type::Converter::CoerceState + ) .returns(T.any(T::Boolean, T.anything)) end - def coerce(value, state:); end + def coerce(value, state:) + end # @api private sig do override - .params(value: T.any( - T::Boolean, - T.anything - ), - state: OpenAI::Internal::Type::Converter::DumpState) + .params( + value: T.any(T::Boolean, T.anything), + state: OpenAI::Internal::Type::Converter::DumpState + ) .returns(T.any(T::Boolean, T.anything)) end - def dump(value, state:); end + def dump(value, state:) + end end end end diff --git a/rbi/openai/internal/type/converter.rbi b/rbi/openai/internal/type/converter.rbi index 47dace26..eb354592 100644 --- a/rbi/openai/internal/type/converter.rbi +++ b/rbi/openai/internal/type/converter.rbi @@ -5,56 +5,82 @@ module OpenAI module Type # @api private module Converter - Input = T.type_alias { T.any(OpenAI::Internal::Type::Converter, T::Class[T.anything]) } + Input = + T.type_alias do + T.any(OpenAI::Internal::Type::Converter, T::Class[T.anything]) + end CoerceState = T.type_alias do { strictness: T.any(T::Boolean, Symbol), - exactness: {yes: Integer, no: Integer, maybe: Integer}, + exactness: { + yes: Integer, + no: Integer, + maybe: Integer + }, branched: Integer } end - DumpState = T.type_alias { {can_retry: T::Boolean} } + DumpState = T.type_alias { { can_retry: T::Boolean } } # @api private sig do overridable - .params(value: T.anything, state: OpenAI::Internal::Type::Converter::CoerceState) + .params( + value: T.anything, + state: OpenAI::Internal::Type::Converter::CoerceState + ) .returns(T.anything) end - def coerce(value, state:); end + def coerce(value, state:) + end # @api private sig do overridable - .params(value: T.anything, state: OpenAI::Internal::Type::Converter::DumpState) + .params( + value: T.anything, + state: OpenAI::Internal::Type::Converter::DumpState + ) .returns(T.anything) end - def dump(value, state:); end + def dump(value, state:) + end # @api private sig { params(depth: Integer).returns(String) } - def inspect(depth: 0); end + def inspect(depth: 0) + end class << self # @api private sig do params( - spec: T.any( - { - const: T.nilable(T.any(NilClass, T::Boolean, Integer, Float, Symbol)), - enum: T.nilable(T.proc.returns(OpenAI::Internal::Type::Converter::Input)), - union: T.nilable(T.proc.returns(OpenAI::Internal::Type::Converter::Input)) - }, - T.proc.returns(OpenAI::Internal::Type::Converter::Input), - OpenAI::Internal::Type::Converter::Input - ) - ) - .returns(T.proc.returns(T.anything)) + spec: + T.any( + { + const: + T.nilable( + T.any(NilClass, T::Boolean, Integer, Float, Symbol) + ), + enum: + T.nilable( + T.proc.returns(OpenAI::Internal::Type::Converter::Input) + ), + union: + T.nilable( + T.proc.returns(OpenAI::Internal::Type::Converter::Input) + ) + }, + T.proc.returns(OpenAI::Internal::Type::Converter::Input), + OpenAI::Internal::Type::Converter::Input + ) + ).returns(T.proc.returns(T.anything)) + end + def self.type_info(spec) end - def self.type_info(spec); end # @api private # @@ -72,8 +98,7 @@ module OpenAI target: OpenAI::Internal::Type::Converter::Input, value: T.anything, state: OpenAI::Internal::Type::Converter::CoerceState - ) - .returns(T.anything) + ).returns(T.anything) end def self.coerce( target, @@ -97,22 +122,33 @@ module OpenAI # - `no`: the value cannot be converted to the target type. # # See implementation below for more details. - state: {strictness: true, exactness: {yes: 0, no: 0, maybe: 0}, branched: 0} - ); end + state: { + strictness: true, + exactness: { + yes: 0, + no: 0, + maybe: 0 + }, + branched: 0 + } + ) + end + # @api private sig do params( target: OpenAI::Internal::Type::Converter::Input, value: T.anything, state: OpenAI::Internal::Type::Converter::DumpState - ) - .returns(T.anything) + ).returns(T.anything) + end + def self.dump(target, value, state: { can_retry: true }) end - def self.dump(target, value, state: {can_retry: true}); end # @api private sig { params(target: T.anything, depth: Integer).returns(String) } - def self.inspect(target, depth:); end + def self.inspect(target, depth:) + end end end end diff --git a/rbi/openai/internal/type/enum.rbi b/rbi/openai/internal/type/enum.rbi index 8dcaa918..09de405a 100644 --- a/rbi/openai/internal/type/enum.rbi +++ b/rbi/openai/internal/type/enum.rbi @@ -19,17 +19,25 @@ module OpenAI include OpenAI::Internal::Type::Converter # All of the valid Symbol values for this enum. - sig { overridable.returns(T::Array[T.any(NilClass, T::Boolean, Integer, Float, Symbol)]) } - def values; end + sig do + overridable.returns( + T::Array[T.any(NilClass, T::Boolean, Integer, Float, Symbol)] + ) + end + def values + end sig { params(other: T.anything).returns(T::Boolean) } - def ===(other); end + def ===(other) + end sig { params(other: T.anything).returns(T::Boolean) } - def ==(other); end + def ==(other) + end sig { returns(Integer) } - def hash; end + def hash + end # @api private # @@ -37,27 +45,31 @@ module OpenAI # of the enum. sig do override - .params(value: T.any( - String, - Symbol, - T.anything - ), - state: OpenAI::Internal::Type::Converter::CoerceState) + .params( + value: T.any(String, Symbol, T.anything), + state: OpenAI::Internal::Type::Converter::CoerceState + ) .returns(T.any(Symbol, T.anything)) end - def coerce(value, state:); end + def coerce(value, state:) + end # @api private sig do override - .params(value: T.any(Symbol, T.anything), state: OpenAI::Internal::Type::Converter::DumpState) + .params( + value: T.any(Symbol, T.anything), + state: OpenAI::Internal::Type::Converter::DumpState + ) .returns(T.any(Symbol, T.anything)) end - def dump(value, state:); end + def dump(value, state:) + end # @api private sig { params(depth: Integer).returns(String) } - def inspect(depth: 0); end + def inspect(depth: 0) + end end end end diff --git a/rbi/openai/internal/type/file_input.rbi b/rbi/openai/internal/type/file_input.rbi index 5271aa5e..19e6c2e1 100644 --- a/rbi/openai/internal/type/file_input.rbi +++ b/rbi/openai/internal/type/file_input.rbi @@ -16,24 +16,25 @@ module OpenAI abstract! sig { params(other: T.anything).returns(T::Boolean) } - def self.===(other); end + def self.===(other) + end sig { params(other: T.anything).returns(T::Boolean) } - def self.==(other); end + def self.==(other) + end class << self # @api private sig do override - .params(value: T.any( - StringIO, - String, - T.anything - ), - state: OpenAI::Internal::Type::Converter::CoerceState) + .params( + value: T.any(StringIO, String, T.anything), + state: OpenAI::Internal::Type::Converter::CoerceState + ) .returns(T.any(StringIO, T.anything)) end - def coerce(value, state:); end + def coerce(value, state:) + end # @api private sig do @@ -44,7 +45,8 @@ module OpenAI ) .returns(T.any(Pathname, StringIO, IO, String, T.anything)) end - def dump(value, state:); end + def dump(value, state:) + end end end end diff --git a/rbi/openai/internal/type/hash_of.rbi b/rbi/openai/internal/type/hash_of.rbi index 0faca34e..25123f07 100644 --- a/rbi/openai/internal/type/hash_of.rbi +++ b/rbi/openai/internal/type/hash_of.rbi @@ -15,25 +15,29 @@ module OpenAI sig do params( - type_info: T.any( - OpenAI::Internal::AnyHash, - T.proc.returns(OpenAI::Internal::Type::Converter::Input), - OpenAI::Internal::Type::Converter::Input - ), + type_info: + T.any( + OpenAI::Internal::AnyHash, + T.proc.returns(OpenAI::Internal::Type::Converter::Input), + OpenAI::Internal::Type::Converter::Input + ), spec: OpenAI::Internal::AnyHash - ) - .returns(T.attached_class) + ).returns(T.attached_class) + end + def self.[](type_info, spec = {}) end - def self.[](type_info, spec = {}); end sig { params(other: T.anything).returns(T::Boolean) } - def ===(other); end + def ===(other) + end sig { params(other: T.anything).returns(T::Boolean) } - def ==(other); end + def ==(other) + end sig { returns(Integer) } - def hash; end + def hash + end # @api private sig do @@ -44,7 +48,8 @@ module OpenAI ) .returns(T.any(OpenAI::Internal::AnyHash, T.anything)) end - def coerce(value, state:); end + def coerce(value, state:) + end # @api private sig do @@ -55,33 +60,38 @@ module OpenAI ) .returns(T.any(OpenAI::Internal::AnyHash, T.anything)) end - def dump(value, state:); end + def dump(value, state:) + end # @api private sig { returns(Elem) } - protected def item_type; end + protected def item_type + end # @api private sig { returns(T::Boolean) } - protected def nilable?; end + protected def nilable? + end # @api private sig do params( - type_info: T.any( - OpenAI::Internal::AnyHash, - T.proc.returns(OpenAI::Internal::Type::Converter::Input), - OpenAI::Internal::Type::Converter::Input - ), + type_info: + T.any( + OpenAI::Internal::AnyHash, + T.proc.returns(OpenAI::Internal::Type::Converter::Input), + OpenAI::Internal::Type::Converter::Input + ), spec: OpenAI::Internal::AnyHash - ) - .void + ).void + end + def initialize(type_info, spec = {}) end - def initialize(type_info, spec = {}); end # @api private sig { params(depth: Integer).returns(String) } - def inspect(depth: 0); end + def inspect(depth: 0) + end end end end diff --git a/rbi/openai/internal/type/request_parameters.rbi b/rbi/openai/internal/type/request_parameters.rbi index 1d86b7ab..45ab8328 100644 --- a/rbi/openai/internal/type/request_parameters.rbi +++ b/rbi/openai/internal/type/request_parameters.rbi @@ -6,14 +6,22 @@ module OpenAI # @api private module RequestParameters # Options to specify HTTP behaviour for this request. - sig { returns(OpenAI::RequestOpts) } - attr_accessor :request_options + sig { returns(OpenAI::RequestOptions) } + attr_reader :request_options + + sig { params(request_options: OpenAI::RequestOptions::OrHash).void } + attr_writer :request_options # @api private module Converter # @api private - sig { params(params: T.anything).returns([T.anything, OpenAI::Internal::AnyHash]) } - def dump_request(params); end + sig do + params(params: T.anything).returns( + [T.anything, OpenAI::Internal::AnyHash] + ) + end + def dump_request(params) + end end end end diff --git a/rbi/openai/internal/type/union.rbi b/rbi/openai/internal/type/union.rbi index 13b7409c..7d3148a9 100644 --- a/rbi/openai/internal/type/union.rbi +++ b/rbi/openai/internal/type/union.rbi @@ -11,65 +11,99 @@ module OpenAI # # All of the specified variant info for this union. sig do - returns(T::Array[[T.nilable(Symbol), T.proc.returns(OpenAI::Internal::Type::Converter::Input)]]) + returns( + T::Array[ + [ + T.nilable(Symbol), + T.proc.returns(OpenAI::Internal::Type::Converter::Input) + ] + ] + ) + end + private def known_variants end - private def known_variants; end # @api private sig { returns(T::Array[[T.nilable(Symbol), T.anything]]) } - protected def derefed_variants; end + protected def derefed_variants + end # All of the specified variants for this union. sig { overridable.returns(T::Array[T.anything]) } - def variants; end + def variants + end # @api private sig { params(property: Symbol).void } - private def discriminator(property); end + private def discriminator(property) + end # @api private sig do params( - key: T.any(Symbol, OpenAI::Internal::AnyHash, T.proc.returns(T.anything), T.anything), - spec: T.any(OpenAI::Internal::AnyHash, T.proc.returns(T.anything), T.anything) - ) - .void + key: + T.any( + Symbol, + OpenAI::Internal::AnyHash, + T.proc.returns(T.anything), + T.anything + ), + spec: + T.any( + OpenAI::Internal::AnyHash, + T.proc.returns(T.anything), + T.anything + ) + ).void + end + private def variant(key, spec = nil) end - private def variant(key, spec = nil); end # @api private sig { params(value: T.anything).returns(T.nilable(T.anything)) } - private def resolve_variant(value); end + private def resolve_variant(value) + end sig { params(other: T.anything).returns(T::Boolean) } - def ===(other); end + def ===(other) + end sig { params(other: T.anything).returns(T::Boolean) } - def ==(other); end + def ==(other) + end sig { returns(Integer) } - def hash; end + def hash + end # @api private sig do override - .params(value: T.anything, state: OpenAI::Internal::Type::Converter::CoerceState) + .params( + value: T.anything, + state: OpenAI::Internal::Type::Converter::CoerceState + ) .returns(T.anything) end - def coerce(value, state:); end + def coerce(value, state:) + end # @api private sig do - override.params( - value: T.anything, - state: OpenAI::Internal::Type::Converter::DumpState - ).returns(T.anything) + override + .params( + value: T.anything, + state: OpenAI::Internal::Type::Converter::DumpState + ) + .returns(T.anything) + end + def dump(value, state:) end - def dump(value, state:); end # @api private sig { params(depth: Integer).returns(String) } - def inspect(depth: 0); end + def inspect(depth: 0) + end end end end diff --git a/rbi/openai/internal/type/unknown.rbi b/rbi/openai/internal/type/unknown.rbi index 0128954a..48a18c80 100644 --- a/rbi/openai/internal/type/unknown.rbi +++ b/rbi/openai/internal/type/unknown.rbi @@ -12,28 +12,37 @@ module OpenAI abstract! sig { params(other: T.anything).returns(T::Boolean) } - def self.===(other); end + def self.===(other) + end sig { params(other: T.anything).returns(T::Boolean) } - def self.==(other); end + def self.==(other) + end class << self # @api private sig do override - .params(value: T.anything, state: OpenAI::Internal::Type::Converter::CoerceState) + .params( + value: T.anything, + state: OpenAI::Internal::Type::Converter::CoerceState + ) .returns(T.anything) end - def coerce(value, state:); end + def coerce(value, state:) + end # @api private sig do - override.params( - value: T.anything, - state: OpenAI::Internal::Type::Converter::DumpState - ).returns(T.anything) + override + .params( + value: T.anything, + state: OpenAI::Internal::Type::Converter::DumpState + ) + .returns(T.anything) + end + def dump(value, state:) end - def dump(value, state:); end end end end diff --git a/rbi/openai/internal/util.rbi b/rbi/openai/internal/util.rbi index 594fae53..54ec6f18 100644 --- a/rbi/openai/internal/util.rbi +++ b/rbi/openai/internal/util.rbi @@ -6,60 +6,102 @@ module OpenAI module Util # @api private sig { returns(Float) } - def self.monotonic_secs; end + def self.monotonic_secs + end class << self # @api private sig { returns(String) } - def arch; end + def arch + end # @api private sig { returns(String) } - def os; end + def os + end end class << self # @api private sig { params(input: T.anything).returns(T::Boolean) } - def primitive?(input); end + def primitive?(input) + end # @api private - sig { params(input: T.any(String, T::Boolean)).returns(T.any(T::Boolean, T.anything)) } - def coerce_boolean(input); end + sig do + params(input: T.any(String, T::Boolean)).returns( + T.any(T::Boolean, T.anything) + ) + end + def coerce_boolean(input) + end # @api private - sig { params(input: T.any(String, T::Boolean)).returns(T.nilable(T::Boolean)) } - def coerce_boolean!(input); end + sig do + params(input: T.any(String, T::Boolean)).returns( + T.nilable(T::Boolean) + ) + end + def coerce_boolean!(input) + end # @api private - sig { params(input: T.any(String, Integer)).returns(T.any(Integer, T.anything)) } - def coerce_integer(input); end + sig do + params(input: T.any(String, Integer)).returns( + T.any(Integer, T.anything) + ) + end + def coerce_integer(input) + end # @api private - sig { params(input: T.any(String, Integer, Float)).returns(T.any(Float, T.anything)) } - def coerce_float(input); end + sig do + params(input: T.any(String, Integer, Float)).returns( + T.any(Float, T.anything) + ) + end + def coerce_float(input) + end # @api private - sig { params(input: T.anything).returns(T.any(T::Hash[T.anything, T.anything], T.anything)) } - def coerce_hash(input); end + sig do + params(input: T.anything).returns( + T.any(T::Hash[T.anything, T.anything], T.anything) + ) + end + def coerce_hash(input) + end # @api private - sig { params(input: T.anything).returns(T.nilable(T::Hash[T.anything, T.anything])) } - def coerce_hash!(input); end + sig do + params(input: T.anything).returns( + T.nilable(T::Hash[T.anything, T.anything]) + ) + end + def coerce_hash!(input) + end end class << self # @api private - sig { params(lhs: T.anything, rhs: T.anything, concat: T::Boolean).returns(T.anything) } - private def deep_merge_lr(lhs, rhs, concat: false); end + sig do + params(lhs: T.anything, rhs: T.anything, concat: T::Boolean).returns( + T.anything + ) + end + private def deep_merge_lr(lhs, rhs, concat: false) + end # @api private # # Recursively merge one hash with another. If the values at a given key are not # both hashes, just take the new value. sig do - params(values: T::Array[T.anything], sentinel: T.nilable(T.anything), concat: T::Boolean) - .returns(T.anything) + params( + values: T::Array[T.anything], + sentinel: T.nilable(T.anything), + concat: T::Boolean + ).returns(T.anything) end def deep_merge( *values, @@ -67,47 +109,67 @@ module OpenAI sentinel: nil, # whether to merge sequences by concatenation. concat: false - ); end + ) + end + # @api private sig do params( - data: T.any(OpenAI::Internal::AnyHash, T::Array[T.anything], T.anything), - pick: T.nilable( + data: T.any( - Symbol, - Integer, - T::Array[T.any(Symbol, Integer)], - T.proc.params(arg0: T.anything).returns(T.anything) - ) - ), + OpenAI::Internal::AnyHash, + T::Array[T.anything], + T.anything + ), + pick: + T.nilable( + T.any( + Symbol, + Integer, + T::Array[T.any(Symbol, Integer)], + T.proc.params(arg0: T.anything).returns(T.anything) + ) + ), blk: T.nilable(T.proc.returns(T.anything)) - ) - .returns(T.nilable(T.anything)) + ).returns(T.nilable(T.anything)) + end + def dig(data, pick, &blk) end - def dig(data, pick, &blk); end end class << self # @api private sig { params(uri: URI::Generic).returns(String) } - def uri_origin(uri); end + def uri_origin(uri) + end # @api private sig { params(path: T.any(String, T::Array[String])).returns(String) } - def interpolate_path(path); end + def interpolate_path(path) + end end class << self # @api private - sig { params(query: T.nilable(String)).returns(T::Hash[String, T::Array[String]]) } - def decode_query(query); end + sig do + params(query: T.nilable(String)).returns( + T::Hash[String, T::Array[String]] + ) + end + def decode_query(query) + end # @api private sig do - params(query: T.nilable(T::Hash[String, T.nilable(T.any(T::Array[String], String))])) - .returns(T.nilable(String)) + params( + query: + T.nilable( + T::Hash[String, T.nilable(T.any(T::Array[String], String))] + ) + ).returns(T.nilable(String)) + end + def encode_query(query) end - def encode_query(query); end end ParsedUriShape = @@ -123,31 +185,53 @@ module OpenAI class << self # @api private - sig { params(url: T.any(URI::Generic, String)).returns(OpenAI::Internal::Util::ParsedUriShape) } - def parse_uri(url); end + sig do + params(url: T.any(URI::Generic, String)).returns( + OpenAI::Internal::Util::ParsedUriShape + ) + end + def parse_uri(url) + end # @api private - sig { params(parsed: OpenAI::Internal::Util::ParsedUriShape).returns(URI::Generic) } - def unparse_uri(parsed); end + sig do + params(parsed: OpenAI::Internal::Util::ParsedUriShape).returns( + URI::Generic + ) + end + def unparse_uri(parsed) + end # @api private sig do - params(lhs: OpenAI::Internal::Util::ParsedUriShape, rhs: OpenAI::Internal::Util::ParsedUriShape) - .returns(URI::Generic) + params( + lhs: OpenAI::Internal::Util::ParsedUriShape, + rhs: OpenAI::Internal::Util::ParsedUriShape + ).returns(URI::Generic) + end + def join_parsed_uri(lhs, rhs) end - def join_parsed_uri(lhs, rhs); end end class << self # @api private sig do params( - headers: T::Hash[String, - T.nilable(T.any(String, Integer, T::Array[T.nilable(T.any(String, Integer))]))] - ) - .returns(T::Hash[String, String]) + headers: + T::Hash[ + String, + T.nilable( + T.any( + String, + Integer, + T::Array[T.nilable(T.any(String, Integer))] + ) + ) + ] + ).returns(T::Hash[String, String]) + end + def normalized_headers(*headers) end - def normalized_headers(*headers); end end # @api private @@ -156,38 +240,54 @@ module OpenAI class ReadIOAdapter # @api private sig { returns(T.nilable(T::Boolean)) } - def close?; end + def close? + end # @api private sig { void } - def close; end + def close + end # @api private sig { params(max_len: T.nilable(Integer)).returns(String) } - private def read_enum(max_len); end + private def read_enum(max_len) + end # @api private - sig { params(max_len: T.nilable(Integer), out_string: T.nilable(String)).returns(T.nilable(String)) } - def read(max_len = nil, out_string = nil); end + sig do + params( + max_len: T.nilable(Integer), + out_string: T.nilable(String) + ).returns(T.nilable(String)) + end + def read(max_len = nil, out_string = nil) + end # @api private sig do params( src: T.any(String, Pathname, StringIO, T::Enumerable[String]), blk: T.proc.params(arg0: String).void - ) - .returns(T.attached_class) + ).returns(T.attached_class) + end + def self.new(src, &blk) end - def self.new(src, &blk); end end class << self - sig { params(blk: T.proc.params(y: Enumerator::Yielder).void).returns(T::Enumerable[String]) } - def writable_enum(&blk); end + sig do + params(blk: T.proc.params(y: Enumerator::Yielder).void).returns( + T::Enumerable[String] + ) + end + def writable_enum(&blk) + end end - JSON_CONTENT = T.let(%r{^application/(?:vnd(?:\.[^.]+)*\+)?json(?!l)}, Regexp) - JSONL_CONTENT = T.let(%r{^application/(:?x-(?:n|l)djson)|(:?(?:x-)?jsonl)}, Regexp) + JSON_CONTENT = + T.let(%r{^application/(?:vnd(?:\.[^.]+)*\+)?json(?!l)}, Regexp) + JSONL_CONTENT = + T.let(%r{^application/(:?x-(?:n|l)djson)|(:?(?:x-)?jsonl)}, Regexp) class << self # @api private @@ -197,10 +297,15 @@ module OpenAI val: T.anything, closing: T::Array[T.proc.void], content_type: T.nilable(String) - ) - .void + ).void + end + private def write_multipart_content( + y, + val:, + closing:, + content_type: nil + ) end - private def write_multipart_content(y, val:, closing:, content_type: nil); end # @api private sig do @@ -210,24 +315,33 @@ module OpenAI key: T.any(Symbol, String), val: T.anything, closing: T::Array[T.proc.void] - ) - .void + ).void + end + private def write_multipart_chunk(y, boundary:, key:, val:, closing:) end - private def write_multipart_chunk(y, boundary:, key:, val:, closing:); end # @api private - sig { params(body: T.anything).returns([String, T::Enumerable[String]]) } - private def encode_multipart_streaming(body); end + sig do + params(body: T.anything).returns([String, T::Enumerable[String]]) + end + private def encode_multipart_streaming(body) + end # @api private - sig { params(headers: T::Hash[String, String], body: T.anything).returns(T.anything) } - def encode_content(headers, body); end + sig do + params(headers: T::Hash[String, String], body: T.anything).returns( + T.anything + ) + end + def encode_content(headers, body) + end # @api private # # https://www.iana.org/assignments/character-sets/character-sets.xhtml sig { params(content_type: String, text: String).void } - def force_charset!(content_type, text:); end + def force_charset!(content_type, text:) + end # @api private # @@ -237,10 +351,10 @@ module OpenAI headers: T.any(T::Hash[String, String], Net::HTTPHeader), stream: T::Enumerable[String], suppress_error: T::Boolean - ) - .returns(T.anything) + ).returns(T.anything) + end + def decode_content(headers, stream:, suppress_error: false) end - def decode_content(headers, stream:, suppress_error: false); end end class << self @@ -248,24 +362,29 @@ module OpenAI # # https://doc.rust-lang.org/std/iter/trait.FusedIterator.html sig do - params(enum: T::Enumerable[T.anything], external: T::Boolean, close: T.proc.void) - .returns(T::Enumerable[T.anything]) + params( + enum: T::Enumerable[T.anything], + external: T::Boolean, + close: T.proc.void + ).returns(T::Enumerable[T.anything]) + end + def fused_enum(enum, external: false, &close) end - def fused_enum(enum, external: false, &close); end # @api private sig { params(enum: T.nilable(T::Enumerable[T.anything])).void } - def close_fused!(enum); end + def close_fused!(enum) + end # @api private sig do params( enum: T.nilable(T::Enumerable[T.anything]), blk: T.proc.params(arg0: Enumerator::Yielder).void - ) - .returns(T::Enumerable[T.anything]) + ).returns(T::Enumerable[T.anything]) + end + def chain_fused(enum, &blk) end - def chain_fused(enum, &blk); end end ServerSentEvent = @@ -285,8 +404,11 @@ module OpenAI # # This decoder is responsible for reassembling lines split across multiple # fragments. - sig { params(enum: T::Enumerable[String]).returns(T::Enumerable[String]) } - def decode_lines(enum); end + sig do + params(enum: T::Enumerable[String]).returns(T::Enumerable[String]) + end + def decode_lines(enum) + end # @api private # @@ -294,9 +416,12 @@ module OpenAI # # Assumes that `lines` has been decoded with `#decode_lines`. sig do - params(lines: T::Enumerable[String]).returns(T::Enumerable[OpenAI::Internal::Util::ServerSentEvent]) + params(lines: T::Enumerable[String]).returns( + T::Enumerable[OpenAI::Internal::Util::ServerSentEvent] + ) + end + def decode_sse(lines) end - def decode_sse(lines); end end end end diff --git a/rbi/openai/models.rbi b/rbi/openai/models.rbi index b72b3e70..c3eaf325 100644 --- a/rbi/openai/models.rbi +++ b/rbi/openai/models.rbi @@ -67,7 +67,8 @@ module OpenAI Evals = OpenAI::Models::Evals - EvalStoredCompletionsDataSourceConfig = OpenAI::Models::EvalStoredCompletionsDataSourceConfig + EvalStoredCompletionsDataSourceConfig = + OpenAI::Models::EvalStoredCompletionsDataSourceConfig EvalStringCheckGrader = OpenAI::Models::EvalStringCheckGrader @@ -101,7 +102,8 @@ module OpenAI FunctionDefinition = OpenAI::Models::FunctionDefinition - FunctionParameters = T.let(OpenAI::Models::FunctionParameters, OpenAI::Internal::Type::Converter) + FunctionParameters = + T.let(OpenAI::Models::FunctionParameters, OpenAI::Internal::Type::Converter) Image = OpenAI::Models::Image @@ -139,7 +141,8 @@ module OpenAI ModerationTextInput = OpenAI::Models::ModerationTextInput - OtherFileChunkingStrategyObject = OpenAI::Models::OtherFileChunkingStrategyObject + OtherFileChunkingStrategyObject = + OpenAI::Models::OtherFileChunkingStrategyObject Reasoning = OpenAI::Models::Reasoning @@ -157,9 +160,11 @@ module OpenAI StaticFileChunkingStrategy = OpenAI::Models::StaticFileChunkingStrategy - StaticFileChunkingStrategyObject = OpenAI::Models::StaticFileChunkingStrategyObject + StaticFileChunkingStrategyObject = + OpenAI::Models::StaticFileChunkingStrategyObject - StaticFileChunkingStrategyObjectParam = OpenAI::Models::StaticFileChunkingStrategyObjectParam + StaticFileChunkingStrategyObjectParam = + OpenAI::Models::StaticFileChunkingStrategyObjectParam Upload = OpenAI::Models::Upload diff --git a/rbi/openai/models/all_models.rbi b/rbi/openai/models/all_models.rbi index 82f906f3..66c0e6ae 100644 --- a/rbi/openai/models/all_models.rbi +++ b/rbi/openai/models/all_models.rbi @@ -5,31 +5,52 @@ module OpenAI module AllModels extend OpenAI::Internal::Type::Union + Variants = + T.type_alias do + T.any( + String, + OpenAI::ChatModel::TaggedSymbol, + OpenAI::AllModels::ResponsesOnlyModel::TaggedSymbol + ) + end + module ResponsesOnlyModel extend OpenAI::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::AllModels::ResponsesOnlyModel) } + TaggedSymbol = + T.type_alias { T.all(Symbol, OpenAI::AllModels::ResponsesOnlyModel) } OrSymbol = T.type_alias { T.any(Symbol, String) } - O1_PRO = T.let(:"o1-pro", OpenAI::Models::AllModels::ResponsesOnlyModel::TaggedSymbol) + O1_PRO = + T.let(:"o1-pro", OpenAI::AllModels::ResponsesOnlyModel::TaggedSymbol) O1_PRO_2025_03_19 = - T.let(:"o1-pro-2025-03-19", OpenAI::Models::AllModels::ResponsesOnlyModel::TaggedSymbol) + T.let( + :"o1-pro-2025-03-19", + OpenAI::AllModels::ResponsesOnlyModel::TaggedSymbol + ) COMPUTER_USE_PREVIEW = - T.let(:"computer-use-preview", OpenAI::Models::AllModels::ResponsesOnlyModel::TaggedSymbol) + T.let( + :"computer-use-preview", + OpenAI::AllModels::ResponsesOnlyModel::TaggedSymbol + ) COMPUTER_USE_PREVIEW_2025_03_11 = - T.let(:"computer-use-preview-2025-03-11", OpenAI::Models::AllModels::ResponsesOnlyModel::TaggedSymbol) + T.let( + :"computer-use-preview-2025-03-11", + OpenAI::AllModels::ResponsesOnlyModel::TaggedSymbol + ) - sig { override.returns(T::Array[OpenAI::Models::AllModels::ResponsesOnlyModel::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[OpenAI::AllModels::ResponsesOnlyModel::TaggedSymbol] + ) + end + def self.values + end end - sig do - override - .returns( - [String, OpenAI::Models::ChatModel::TaggedSymbol, OpenAI::Models::AllModels::ResponsesOnlyModel::TaggedSymbol] - ) + sig { override.returns(T::Array[OpenAI::AllModels::Variants]) } + def self.variants end - def self.variants; end end end end diff --git a/rbi/openai/models/audio/speech_create_params.rbi b/rbi/openai/models/audio/speech_create_params.rbi index 5d48095e..254db622 100644 --- a/rbi/openai/models/audio/speech_create_params.rbi +++ b/rbi/openai/models/audio/speech_create_params.rbi @@ -7,20 +7,26 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The text to generate audio for. The maximum length is 4096 characters. sig { returns(String) } attr_accessor :input # One of the available [TTS models](https://platform.openai.com/docs/models#tts): # `tts-1`, `tts-1-hd` or `gpt-4o-mini-tts`. - sig { returns(T.any(String, OpenAI::Models::Audio::SpeechModel::OrSymbol)) } + sig { returns(T.any(String, OpenAI::Audio::SpeechModel::OrSymbol)) } attr_accessor :model # The voice to use when generating the audio. Supported voices are `alloy`, `ash`, # `ballad`, `coral`, `echo`, `fable`, `onyx`, `nova`, `sage`, `shimmer`, and # `verse`. Previews of the voices are available in the # [Text to speech guide](https://platform.openai.com/docs/guides/text-to-speech#voice-options). - sig { returns(T.any(String, OpenAI::Models::Audio::SpeechCreateParams::Voice::OrSymbol)) } + sig do + returns( + T.any(String, OpenAI::Audio::SpeechCreateParams::Voice::OrSymbol) + ) + end attr_accessor :voice # Control the voice of your generated audio with additional instructions. Does not @@ -33,10 +39,21 @@ module OpenAI # The format to audio in. Supported formats are `mp3`, `opus`, `aac`, `flac`, # `wav`, and `pcm`. - sig { returns(T.nilable(OpenAI::Models::Audio::SpeechCreateParams::ResponseFormat::OrSymbol)) } + sig do + returns( + T.nilable( + OpenAI::Audio::SpeechCreateParams::ResponseFormat::OrSymbol + ) + ) + end attr_reader :response_format - sig { params(response_format: OpenAI::Models::Audio::SpeechCreateParams::ResponseFormat::OrSymbol).void } + sig do + params( + response_format: + OpenAI::Audio::SpeechCreateParams::ResponseFormat::OrSymbol + ).void + end attr_writer :response_format # The speed of the generated audio. Select a value from `0.25` to `4.0`. `1.0` is @@ -50,14 +67,15 @@ module OpenAI sig do params( input: String, - model: T.any(String, OpenAI::Models::Audio::SpeechModel::OrSymbol), - voice: T.any(String, OpenAI::Models::Audio::SpeechCreateParams::Voice::OrSymbol), + model: T.any(String, OpenAI::Audio::SpeechModel::OrSymbol), + voice: + T.any(String, OpenAI::Audio::SpeechCreateParams::Voice::OrSymbol), instructions: String, - response_format: OpenAI::Models::Audio::SpeechCreateParams::ResponseFormat::OrSymbol, + response_format: + OpenAI::Audio::SpeechCreateParams::ResponseFormat::OrSymbol, speed: Float, - request_options: T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash) - ) - .returns(T.attached_class) + request_options: OpenAI::RequestOptions::OrHash + ).returns(T.attached_class) end def self.new( # The text to generate audio for. The maximum length is 4096 characters. @@ -80,30 +98,47 @@ module OpenAI # the default. Does not work with `gpt-4o-mini-tts`. speed: nil, request_options: {} - ); end + ) + end + sig do - override - .returns( - { - input: String, - model: T.any(String, OpenAI::Models::Audio::SpeechModel::OrSymbol), - voice: T.any(String, OpenAI::Models::Audio::SpeechCreateParams::Voice::OrSymbol), - instructions: String, - response_format: OpenAI::Models::Audio::SpeechCreateParams::ResponseFormat::OrSymbol, - speed: Float, - request_options: OpenAI::RequestOptions - } - ) + override.returns( + { + input: String, + model: T.any(String, OpenAI::Audio::SpeechModel::OrSymbol), + voice: + T.any( + String, + OpenAI::Audio::SpeechCreateParams::Voice::OrSymbol + ), + instructions: String, + response_format: + OpenAI::Audio::SpeechCreateParams::ResponseFormat::OrSymbol, + speed: Float, + request_options: OpenAI::RequestOptions + } + ) + end + def to_hash end - def to_hash; end # One of the available [TTS models](https://platform.openai.com/docs/models#tts): # `tts-1`, `tts-1-hd` or `gpt-4o-mini-tts`. module Model extend OpenAI::Internal::Type::Union - sig { override.returns([String, OpenAI::Models::Audio::SpeechModel::TaggedSymbol]) } - def self.variants; end + Variants = + T.type_alias do + T.any(String, OpenAI::Audio::SpeechModel::TaggedSymbol) + end + + sig do + override.returns( + T::Array[OpenAI::Audio::SpeechCreateParams::Model::Variants] + ) + end + def self.variants + end end # The voice to use when generating the audio. Supported voices are `alloy`, `ash`, @@ -113,23 +148,68 @@ module OpenAI module Voice extend OpenAI::Internal::Type::Union - sig { override.returns([String, OpenAI::Models::Audio::SpeechCreateParams::Voice::TaggedSymbol]) } - def self.variants; end + Variants = + T.type_alias do + T.any( + String, + OpenAI::Audio::SpeechCreateParams::Voice::TaggedSymbol + ) + end - TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::Audio::SpeechCreateParams::Voice) } + sig do + override.returns( + T::Array[OpenAI::Audio::SpeechCreateParams::Voice::Variants] + ) + end + def self.variants + end + + TaggedSymbol = + T.type_alias do + T.all(Symbol, OpenAI::Audio::SpeechCreateParams::Voice) + end OrSymbol = T.type_alias { T.any(Symbol, String) } - ALLOY = T.let(:alloy, OpenAI::Models::Audio::SpeechCreateParams::Voice::TaggedSymbol) - ASH = T.let(:ash, OpenAI::Models::Audio::SpeechCreateParams::Voice::TaggedSymbol) - BALLAD = T.let(:ballad, OpenAI::Models::Audio::SpeechCreateParams::Voice::TaggedSymbol) - CORAL = T.let(:coral, OpenAI::Models::Audio::SpeechCreateParams::Voice::TaggedSymbol) - ECHO = T.let(:echo, OpenAI::Models::Audio::SpeechCreateParams::Voice::TaggedSymbol) - FABLE = T.let(:fable, OpenAI::Models::Audio::SpeechCreateParams::Voice::TaggedSymbol) - ONYX = T.let(:onyx, OpenAI::Models::Audio::SpeechCreateParams::Voice::TaggedSymbol) - NOVA = T.let(:nova, OpenAI::Models::Audio::SpeechCreateParams::Voice::TaggedSymbol) - SAGE = T.let(:sage, OpenAI::Models::Audio::SpeechCreateParams::Voice::TaggedSymbol) - SHIMMER = T.let(:shimmer, OpenAI::Models::Audio::SpeechCreateParams::Voice::TaggedSymbol) - VERSE = T.let(:verse, OpenAI::Models::Audio::SpeechCreateParams::Voice::TaggedSymbol) + ALLOY = + T.let( + :alloy, + OpenAI::Audio::SpeechCreateParams::Voice::TaggedSymbol + ) + ASH = + T.let(:ash, OpenAI::Audio::SpeechCreateParams::Voice::TaggedSymbol) + BALLAD = + T.let( + :ballad, + OpenAI::Audio::SpeechCreateParams::Voice::TaggedSymbol + ) + CORAL = + T.let( + :coral, + OpenAI::Audio::SpeechCreateParams::Voice::TaggedSymbol + ) + ECHO = + T.let(:echo, OpenAI::Audio::SpeechCreateParams::Voice::TaggedSymbol) + FABLE = + T.let( + :fable, + OpenAI::Audio::SpeechCreateParams::Voice::TaggedSymbol + ) + ONYX = + T.let(:onyx, OpenAI::Audio::SpeechCreateParams::Voice::TaggedSymbol) + NOVA = + T.let(:nova, OpenAI::Audio::SpeechCreateParams::Voice::TaggedSymbol) + SAGE = + T.let(:sage, OpenAI::Audio::SpeechCreateParams::Voice::TaggedSymbol) + SHIMMER = + T.let( + :shimmer, + OpenAI::Audio::SpeechCreateParams::Voice::TaggedSymbol + ) + VERSE = + T.let( + :verse, + OpenAI::Audio::SpeechCreateParams::Voice::TaggedSymbol + ) end # The format to audio in. Supported formats are `mp3`, `opus`, `aac`, `flac`, @@ -137,18 +217,52 @@ module OpenAI module ResponseFormat extend OpenAI::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::Audio::SpeechCreateParams::ResponseFormat) } + TaggedSymbol = + T.type_alias do + T.all(Symbol, OpenAI::Audio::SpeechCreateParams::ResponseFormat) + end OrSymbol = T.type_alias { T.any(Symbol, String) } - MP3 = T.let(:mp3, OpenAI::Models::Audio::SpeechCreateParams::ResponseFormat::TaggedSymbol) - OPUS = T.let(:opus, OpenAI::Models::Audio::SpeechCreateParams::ResponseFormat::TaggedSymbol) - AAC = T.let(:aac, OpenAI::Models::Audio::SpeechCreateParams::ResponseFormat::TaggedSymbol) - FLAC = T.let(:flac, OpenAI::Models::Audio::SpeechCreateParams::ResponseFormat::TaggedSymbol) - WAV = T.let(:wav, OpenAI::Models::Audio::SpeechCreateParams::ResponseFormat::TaggedSymbol) - PCM = T.let(:pcm, OpenAI::Models::Audio::SpeechCreateParams::ResponseFormat::TaggedSymbol) + MP3 = + T.let( + :mp3, + OpenAI::Audio::SpeechCreateParams::ResponseFormat::TaggedSymbol + ) + OPUS = + T.let( + :opus, + OpenAI::Audio::SpeechCreateParams::ResponseFormat::TaggedSymbol + ) + AAC = + T.let( + :aac, + OpenAI::Audio::SpeechCreateParams::ResponseFormat::TaggedSymbol + ) + FLAC = + T.let( + :flac, + OpenAI::Audio::SpeechCreateParams::ResponseFormat::TaggedSymbol + ) + WAV = + T.let( + :wav, + OpenAI::Audio::SpeechCreateParams::ResponseFormat::TaggedSymbol + ) + PCM = + T.let( + :pcm, + OpenAI::Audio::SpeechCreateParams::ResponseFormat::TaggedSymbol + ) - sig { override.returns(T::Array[OpenAI::Models::Audio::SpeechCreateParams::ResponseFormat::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[ + OpenAI::Audio::SpeechCreateParams::ResponseFormat::TaggedSymbol + ] + ) + end + def self.values + end end end end diff --git a/rbi/openai/models/audio/speech_model.rbi b/rbi/openai/models/audio/speech_model.rbi index e049d032..882f990f 100644 --- a/rbi/openai/models/audio/speech_model.rbi +++ b/rbi/openai/models/audio/speech_model.rbi @@ -6,15 +6,20 @@ module OpenAI module SpeechModel extend OpenAI::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::Audio::SpeechModel) } + TaggedSymbol = + T.type_alias { T.all(Symbol, OpenAI::Audio::SpeechModel) } OrSymbol = T.type_alias { T.any(Symbol, String) } - TTS_1 = T.let(:"tts-1", OpenAI::Models::Audio::SpeechModel::TaggedSymbol) - TTS_1_HD = T.let(:"tts-1-hd", OpenAI::Models::Audio::SpeechModel::TaggedSymbol) - GPT_4O_MINI_TTS = T.let(:"gpt-4o-mini-tts", OpenAI::Models::Audio::SpeechModel::TaggedSymbol) + TTS_1 = T.let(:"tts-1", OpenAI::Audio::SpeechModel::TaggedSymbol) + TTS_1_HD = T.let(:"tts-1-hd", OpenAI::Audio::SpeechModel::TaggedSymbol) + GPT_4O_MINI_TTS = + T.let(:"gpt-4o-mini-tts", OpenAI::Audio::SpeechModel::TaggedSymbol) - sig { override.returns(T::Array[OpenAI::Models::Audio::SpeechModel::TaggedSymbol]) } - def self.values; end + sig do + override.returns(T::Array[OpenAI::Audio::SpeechModel::TaggedSymbol]) + end + def self.values + end end end end diff --git a/rbi/openai/models/audio/transcription.rbi b/rbi/openai/models/audio/transcription.rbi index fa6cd066..b7bca615 100644 --- a/rbi/openai/models/audio/transcription.rbi +++ b/rbi/openai/models/audio/transcription.rbi @@ -4,6 +4,8 @@ module OpenAI module Models module Audio class Transcription < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The transcribed text. sig { returns(String) } attr_accessor :text @@ -11,14 +13,15 @@ module OpenAI # The log probabilities of the tokens in the transcription. Only returned with the # models `gpt-4o-transcribe` and `gpt-4o-mini-transcribe` if `logprobs` is added # to the `include` array. - sig { returns(T.nilable(T::Array[OpenAI::Models::Audio::Transcription::Logprob])) } + sig do + returns(T.nilable(T::Array[OpenAI::Audio::Transcription::Logprob])) + end attr_reader :logprobs sig do params( - logprobs: T::Array[T.any(OpenAI::Models::Audio::Transcription::Logprob, OpenAI::Internal::AnyHash)] - ) - .void + logprobs: T::Array[OpenAI::Audio::Transcription::Logprob::OrHash] + ).void end attr_writer :logprobs @@ -27,9 +30,8 @@ module OpenAI sig do params( text: String, - logprobs: T::Array[T.any(OpenAI::Models::Audio::Transcription::Logprob, OpenAI::Internal::AnyHash)] - ) - .returns(T.attached_class) + logprobs: T::Array[OpenAI::Audio::Transcription::Logprob::OrHash] + ).returns(T.attached_class) end def self.new( # The transcribed text. @@ -38,11 +40,24 @@ module OpenAI # models `gpt-4o-transcribe` and `gpt-4o-mini-transcribe` if `logprobs` is added # to the `include` array. logprobs: nil - ); end - sig { override.returns({text: String, logprobs: T::Array[OpenAI::Models::Audio::Transcription::Logprob]}) } - def to_hash; end + ) + end + + sig do + override.returns( + { + text: String, + logprobs: T::Array[OpenAI::Audio::Transcription::Logprob] + } + ) + end + def to_hash + end class Logprob < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The token in the transcription. sig { returns(T.nilable(String)) } attr_reader :token @@ -64,7 +79,13 @@ module OpenAI sig { params(logprob: Float).void } attr_writer :logprob - sig { params(token: String, bytes: T::Array[Float], logprob: Float).returns(T.attached_class) } + sig do + params( + token: String, + bytes: T::Array[Float], + logprob: Float + ).returns(T.attached_class) + end def self.new( # The token in the transcription. token: nil, @@ -72,9 +93,16 @@ module OpenAI bytes: nil, # The log probability of the token. logprob: nil - ); end - sig { override.returns({token: String, bytes: T::Array[Float], logprob: Float}) } - def to_hash; end + ) + end + + sig do + override.returns( + { token: String, bytes: T::Array[Float], logprob: Float } + ) + end + def to_hash + end end end end diff --git a/rbi/openai/models/audio/transcription_create_params.rbi b/rbi/openai/models/audio/transcription_create_params.rbi index 57d34b34..ba0c7098 100644 --- a/rbi/openai/models/audio/transcription_create_params.rbi +++ b/rbi/openai/models/audio/transcription_create_params.rbi @@ -7,6 +7,8 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The audio file object (not file name) to transcribe, in one of these formats: # flac, mp3, mp4, mpeg, mpga, m4a, ogg, wav, or webm. sig { returns(T.any(Pathname, StringIO, IO, OpenAI::FilePart)) } @@ -15,7 +17,7 @@ module OpenAI # ID of the model to use. The options are `gpt-4o-transcribe`, # `gpt-4o-mini-transcribe`, and `whisper-1` (which is powered by our open source # Whisper V2 model). - sig { returns(T.any(String, OpenAI::Models::AudioModel::OrSymbol)) } + sig { returns(T.any(String, OpenAI::AudioModel::OrSymbol)) } attr_accessor :model # Additional information to include in the transcription response. `logprobs` will @@ -23,10 +25,18 @@ module OpenAI # model's confidence in the transcription. `logprobs` only works with # response_format set to `json` and only with the models `gpt-4o-transcribe` and # `gpt-4o-mini-transcribe`. - sig { returns(T.nilable(T::Array[OpenAI::Models::Audio::TranscriptionInclude::OrSymbol])) } + sig do + returns( + T.nilable(T::Array[OpenAI::Audio::TranscriptionInclude::OrSymbol]) + ) + end attr_reader :include - sig { params(include: T::Array[OpenAI::Models::Audio::TranscriptionInclude::OrSymbol]).void } + sig do + params( + include: T::Array[OpenAI::Audio::TranscriptionInclude::OrSymbol] + ).void + end attr_writer :include # The language of the input audio. Supplying the input language in @@ -51,10 +61,12 @@ module OpenAI # The format of the output, in one of these options: `json`, `text`, `srt`, # `verbose_json`, or `vtt`. For `gpt-4o-transcribe` and `gpt-4o-mini-transcribe`, # the only supported format is `json`. - sig { returns(T.nilable(OpenAI::Models::AudioResponseFormat::OrSymbol)) } + sig { returns(T.nilable(OpenAI::AudioResponseFormat::OrSymbol)) } attr_reader :response_format - sig { params(response_format: OpenAI::Models::AudioResponseFormat::OrSymbol).void } + sig do + params(response_format: OpenAI::AudioResponseFormat::OrSymbol).void + end attr_writer :response_format # The sampling temperature, between 0 and 1. Higher values like 0.8 will make the @@ -75,32 +87,40 @@ module OpenAI # incurs additional latency. sig do returns( - T.nilable(T::Array[OpenAI::Models::Audio::TranscriptionCreateParams::TimestampGranularity::OrSymbol]) + T.nilable( + T::Array[ + OpenAI::Audio::TranscriptionCreateParams::TimestampGranularity::OrSymbol + ] + ) ) end attr_reader :timestamp_granularities sig do params( - timestamp_granularities: T::Array[OpenAI::Models::Audio::TranscriptionCreateParams::TimestampGranularity::OrSymbol] - ) - .void + timestamp_granularities: + T::Array[ + OpenAI::Audio::TranscriptionCreateParams::TimestampGranularity::OrSymbol + ] + ).void end attr_writer :timestamp_granularities sig do params( file: T.any(Pathname, StringIO, IO, OpenAI::FilePart), - model: T.any(String, OpenAI::Models::AudioModel::OrSymbol), - include: T::Array[OpenAI::Models::Audio::TranscriptionInclude::OrSymbol], + model: T.any(String, OpenAI::AudioModel::OrSymbol), + include: T::Array[OpenAI::Audio::TranscriptionInclude::OrSymbol], language: String, prompt: String, - response_format: OpenAI::Models::AudioResponseFormat::OrSymbol, + response_format: OpenAI::AudioResponseFormat::OrSymbol, temperature: Float, - timestamp_granularities: T::Array[OpenAI::Models::Audio::TranscriptionCreateParams::TimestampGranularity::OrSymbol], - request_options: T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash) - ) - .returns(T.attached_class) + timestamp_granularities: + T::Array[ + OpenAI::Audio::TranscriptionCreateParams::TimestampGranularity::OrSymbol + ], + request_options: OpenAI::RequestOptions::OrHash + ).returns(T.attached_class) end def self.new( # The audio file object (not file name) to transcribe, in one of these formats: @@ -142,24 +162,29 @@ module OpenAI # incurs additional latency. timestamp_granularities: nil, request_options: {} - ); end + ) + end + sig do - override - .returns( - { - file: T.any(Pathname, StringIO, IO, OpenAI::FilePart), - model: T.any(String, OpenAI::Models::AudioModel::OrSymbol), - include: T::Array[OpenAI::Models::Audio::TranscriptionInclude::OrSymbol], - language: String, - prompt: String, - response_format: OpenAI::Models::AudioResponseFormat::OrSymbol, - temperature: Float, - timestamp_granularities: T::Array[OpenAI::Models::Audio::TranscriptionCreateParams::TimestampGranularity::OrSymbol], - request_options: OpenAI::RequestOptions - } - ) + override.returns( + { + file: T.any(Pathname, StringIO, IO, OpenAI::FilePart), + model: T.any(String, OpenAI::AudioModel::OrSymbol), + include: T::Array[OpenAI::Audio::TranscriptionInclude::OrSymbol], + language: String, + prompt: String, + response_format: OpenAI::AudioResponseFormat::OrSymbol, + temperature: Float, + timestamp_granularities: + T::Array[ + OpenAI::Audio::TranscriptionCreateParams::TimestampGranularity::OrSymbol + ], + request_options: OpenAI::RequestOptions + } + ) + end + def to_hash end - def to_hash; end # ID of the model to use. The options are `gpt-4o-transcribe`, # `gpt-4o-mini-transcribe`, and `whisper-1` (which is powered by our open source @@ -167,26 +192,52 @@ module OpenAI module Model extend OpenAI::Internal::Type::Union - sig { override.returns([String, OpenAI::Models::AudioModel::TaggedSymbol]) } - def self.variants; end + Variants = + T.type_alias { T.any(String, OpenAI::AudioModel::TaggedSymbol) } + + sig do + override.returns( + T::Array[ + OpenAI::Audio::TranscriptionCreateParams::Model::Variants + ] + ) + end + def self.variants + end end module TimestampGranularity extend OpenAI::Internal::Type::Enum TaggedSymbol = - T.type_alias { T.all(Symbol, OpenAI::Models::Audio::TranscriptionCreateParams::TimestampGranularity) } + T.type_alias do + T.all( + Symbol, + OpenAI::Audio::TranscriptionCreateParams::TimestampGranularity + ) + end OrSymbol = T.type_alias { T.any(Symbol, String) } - WORD = T.let(:word, OpenAI::Models::Audio::TranscriptionCreateParams::TimestampGranularity::TaggedSymbol) + WORD = + T.let( + :word, + OpenAI::Audio::TranscriptionCreateParams::TimestampGranularity::TaggedSymbol + ) SEGMENT = - T.let(:segment, OpenAI::Models::Audio::TranscriptionCreateParams::TimestampGranularity::TaggedSymbol) + T.let( + :segment, + OpenAI::Audio::TranscriptionCreateParams::TimestampGranularity::TaggedSymbol + ) sig do - override - .returns(T::Array[OpenAI::Models::Audio::TranscriptionCreateParams::TimestampGranularity::TaggedSymbol]) + override.returns( + T::Array[ + OpenAI::Audio::TranscriptionCreateParams::TimestampGranularity::TaggedSymbol + ] + ) + end + def self.values end - def self.values; end end end end diff --git a/rbi/openai/models/audio/transcription_create_response.rbi b/rbi/openai/models/audio/transcription_create_response.rbi index c6ca8f08..a96f3c65 100644 --- a/rbi/openai/models/audio/transcription_create_response.rbi +++ b/rbi/openai/models/audio/transcription_create_response.rbi @@ -8,8 +8,23 @@ module OpenAI module TranscriptionCreateResponse extend OpenAI::Internal::Type::Union - sig { override.returns([OpenAI::Models::Audio::Transcription, OpenAI::Models::Audio::TranscriptionVerbose]) } - def self.variants; end + Variants = + T.type_alias do + T.any( + OpenAI::Audio::Transcription, + OpenAI::Audio::TranscriptionVerbose + ) + end + + sig do + override.returns( + T::Array[ + OpenAI::Models::Audio::TranscriptionCreateResponse::Variants + ] + ) + end + def self.variants + end end end end diff --git a/rbi/openai/models/audio/transcription_include.rbi b/rbi/openai/models/audio/transcription_include.rbi index bb5758c1..a9400086 100644 --- a/rbi/openai/models/audio/transcription_include.rbi +++ b/rbi/openai/models/audio/transcription_include.rbi @@ -6,13 +6,20 @@ module OpenAI module TranscriptionInclude extend OpenAI::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::Audio::TranscriptionInclude) } + TaggedSymbol = + T.type_alias { T.all(Symbol, OpenAI::Audio::TranscriptionInclude) } OrSymbol = T.type_alias { T.any(Symbol, String) } - LOGPROBS = T.let(:logprobs, OpenAI::Models::Audio::TranscriptionInclude::TaggedSymbol) + LOGPROBS = + T.let(:logprobs, OpenAI::Audio::TranscriptionInclude::TaggedSymbol) - sig { override.returns(T::Array[OpenAI::Models::Audio::TranscriptionInclude::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[OpenAI::Audio::TranscriptionInclude::TaggedSymbol] + ) + end + def self.values + end end end end diff --git a/rbi/openai/models/audio/transcription_segment.rbi b/rbi/openai/models/audio/transcription_segment.rbi index e98fad18..bac3f1b7 100644 --- a/rbi/openai/models/audio/transcription_segment.rbi +++ b/rbi/openai/models/audio/transcription_segment.rbi @@ -4,6 +4,8 @@ module OpenAI module Models module Audio class TranscriptionSegment < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Unique identifier of the segment. sig { returns(Integer) } attr_accessor :id @@ -59,8 +61,7 @@ module OpenAI temperature: Float, text: String, tokens: T::Array[Integer] - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # Unique identifier of the segment. @@ -86,25 +87,27 @@ module OpenAI text:, # Array of token IDs for the text content. tokens: - ); end + ) + end + sig do - override - .returns( - { - id: Integer, - avg_logprob: Float, - compression_ratio: Float, - end_: Float, - no_speech_prob: Float, - seek: Integer, - start: Float, - temperature: Float, - text: String, - tokens: T::Array[Integer] - } - ) + override.returns( + { + id: Integer, + avg_logprob: Float, + compression_ratio: Float, + end_: Float, + no_speech_prob: Float, + seek: Integer, + start: Float, + temperature: Float, + text: String, + tokens: T::Array[Integer] + } + ) + end + def to_hash end - def to_hash; end end end end diff --git a/rbi/openai/models/audio/transcription_stream_event.rbi b/rbi/openai/models/audio/transcription_stream_event.rbi index 4a3dc34e..7c5989b6 100644 --- a/rbi/openai/models/audio/transcription_stream_event.rbi +++ b/rbi/openai/models/audio/transcription_stream_event.rbi @@ -10,13 +10,21 @@ module OpenAI module TranscriptionStreamEvent extend OpenAI::Internal::Type::Union - sig do - override - .returns( - [OpenAI::Models::Audio::TranscriptionTextDeltaEvent, OpenAI::Models::Audio::TranscriptionTextDoneEvent] + Variants = + T.type_alias do + T.any( + OpenAI::Audio::TranscriptionTextDeltaEvent, + OpenAI::Audio::TranscriptionTextDoneEvent ) + end + + sig do + override.returns( + T::Array[OpenAI::Audio::TranscriptionStreamEvent::Variants] + ) + end + def self.variants end - def self.variants; end end end end diff --git a/rbi/openai/models/audio/transcription_text_delta_event.rbi b/rbi/openai/models/audio/transcription_text_delta_event.rbi index 25ace7da..15165550 100644 --- a/rbi/openai/models/audio/transcription_text_delta_event.rbi +++ b/rbi/openai/models/audio/transcription_text_delta_event.rbi @@ -4,6 +4,8 @@ module OpenAI module Models module Audio class TranscriptionTextDeltaEvent < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The text delta that was additionally transcribed. sig { returns(String) } attr_accessor :delta @@ -15,14 +17,22 @@ module OpenAI # The log probabilities of the delta. Only included if you # [create a transcription](https://platform.openai.com/docs/api-reference/audio/create-transcription) # with the `include[]` parameter set to `logprobs`. - sig { returns(T.nilable(T::Array[OpenAI::Models::Audio::TranscriptionTextDeltaEvent::Logprob])) } + sig do + returns( + T.nilable( + T::Array[OpenAI::Audio::TranscriptionTextDeltaEvent::Logprob] + ) + ) + end attr_reader :logprobs sig do params( - logprobs: T::Array[T.any(OpenAI::Models::Audio::TranscriptionTextDeltaEvent::Logprob, OpenAI::Internal::AnyHash)] - ) - .void + logprobs: + T::Array[ + OpenAI::Audio::TranscriptionTextDeltaEvent::Logprob::OrHash + ] + ).void end attr_writer :logprobs @@ -33,10 +43,12 @@ module OpenAI sig do params( delta: String, - logprobs: T::Array[T.any(OpenAI::Models::Audio::TranscriptionTextDeltaEvent::Logprob, OpenAI::Internal::AnyHash)], + logprobs: + T::Array[ + OpenAI::Audio::TranscriptionTextDeltaEvent::Logprob::OrHash + ], type: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # The text delta that was additionally transcribed. @@ -47,16 +59,26 @@ module OpenAI logprobs: nil, # The type of the event. Always `transcript.text.delta`. type: :"transcript.text.delta" - ); end + ) + end + sig do - override - .returns( - {delta: String, type: Symbol, logprobs: T::Array[OpenAI::Models::Audio::TranscriptionTextDeltaEvent::Logprob]} - ) + override.returns( + { + delta: String, + type: Symbol, + logprobs: + T::Array[OpenAI::Audio::TranscriptionTextDeltaEvent::Logprob] + } + ) + end + def to_hash end - def to_hash; end class Logprob < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The token that was used to generate the log probability. sig { returns(T.nilable(String)) } attr_reader :token @@ -78,7 +100,13 @@ module OpenAI sig { params(logprob: Float).void } attr_writer :logprob - sig { params(token: String, bytes: T::Array[T.anything], logprob: Float).returns(T.attached_class) } + sig do + params( + token: String, + bytes: T::Array[T.anything], + logprob: Float + ).returns(T.attached_class) + end def self.new( # The token that was used to generate the log probability. token: nil, @@ -86,9 +114,16 @@ module OpenAI bytes: nil, # The log probability of the token. logprob: nil - ); end - sig { override.returns({token: String, bytes: T::Array[T.anything], logprob: Float}) } - def to_hash; end + ) + end + + sig do + override.returns( + { token: String, bytes: T::Array[T.anything], logprob: Float } + ) + end + def to_hash + end end end end diff --git a/rbi/openai/models/audio/transcription_text_done_event.rbi b/rbi/openai/models/audio/transcription_text_done_event.rbi index 08687ed5..993b519e 100644 --- a/rbi/openai/models/audio/transcription_text_done_event.rbi +++ b/rbi/openai/models/audio/transcription_text_done_event.rbi @@ -4,6 +4,8 @@ module OpenAI module Models module Audio class TranscriptionTextDoneEvent < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The text that was transcribed. sig { returns(String) } attr_accessor :text @@ -16,14 +18,22 @@ module OpenAI # included if you # [create a transcription](https://platform.openai.com/docs/api-reference/audio/create-transcription) # with the `include[]` parameter set to `logprobs`. - sig { returns(T.nilable(T::Array[OpenAI::Models::Audio::TranscriptionTextDoneEvent::Logprob])) } + sig do + returns( + T.nilable( + T::Array[OpenAI::Audio::TranscriptionTextDoneEvent::Logprob] + ) + ) + end attr_reader :logprobs sig do params( - logprobs: T::Array[T.any(OpenAI::Models::Audio::TranscriptionTextDoneEvent::Logprob, OpenAI::Internal::AnyHash)] - ) - .void + logprobs: + T::Array[ + OpenAI::Audio::TranscriptionTextDoneEvent::Logprob::OrHash + ] + ).void end attr_writer :logprobs @@ -34,10 +44,12 @@ module OpenAI sig do params( text: String, - logprobs: T::Array[T.any(OpenAI::Models::Audio::TranscriptionTextDoneEvent::Logprob, OpenAI::Internal::AnyHash)], + logprobs: + T::Array[ + OpenAI::Audio::TranscriptionTextDoneEvent::Logprob::OrHash + ], type: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # The text that was transcribed. @@ -49,16 +61,26 @@ module OpenAI logprobs: nil, # The type of the event. Always `transcript.text.done`. type: :"transcript.text.done" - ); end + ) + end + sig do - override - .returns( - {text: String, type: Symbol, logprobs: T::Array[OpenAI::Models::Audio::TranscriptionTextDoneEvent::Logprob]} - ) + override.returns( + { + text: String, + type: Symbol, + logprobs: + T::Array[OpenAI::Audio::TranscriptionTextDoneEvent::Logprob] + } + ) + end + def to_hash end - def to_hash; end class Logprob < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The token that was used to generate the log probability. sig { returns(T.nilable(String)) } attr_reader :token @@ -80,7 +102,13 @@ module OpenAI sig { params(logprob: Float).void } attr_writer :logprob - sig { params(token: String, bytes: T::Array[T.anything], logprob: Float).returns(T.attached_class) } + sig do + params( + token: String, + bytes: T::Array[T.anything], + logprob: Float + ).returns(T.attached_class) + end def self.new( # The token that was used to generate the log probability. token: nil, @@ -88,9 +116,16 @@ module OpenAI bytes: nil, # The log probability of the token. logprob: nil - ); end - sig { override.returns({token: String, bytes: T::Array[T.anything], logprob: Float}) } - def to_hash; end + ) + end + + sig do + override.returns( + { token: String, bytes: T::Array[T.anything], logprob: Float } + ) + end + def to_hash + end end end end diff --git a/rbi/openai/models/audio/transcription_verbose.rbi b/rbi/openai/models/audio/transcription_verbose.rbi index 43af0a5c..6fc105f7 100644 --- a/rbi/openai/models/audio/transcription_verbose.rbi +++ b/rbi/openai/models/audio/transcription_verbose.rbi @@ -4,6 +4,8 @@ module OpenAI module Models module Audio class TranscriptionVerbose < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The duration of the input audio. sig { returns(Float) } attr_accessor :duration @@ -17,20 +19,25 @@ module OpenAI attr_accessor :text # Segments of the transcribed text and their corresponding details. - sig { returns(T.nilable(T::Array[OpenAI::Models::Audio::TranscriptionSegment])) } + sig do + returns(T.nilable(T::Array[OpenAI::Audio::TranscriptionSegment])) + end attr_reader :segments sig do - params(segments: T::Array[T.any(OpenAI::Models::Audio::TranscriptionSegment, OpenAI::Internal::AnyHash)]) - .void + params( + segments: T::Array[OpenAI::Audio::TranscriptionSegment::OrHash] + ).void end attr_writer :segments # Extracted words and their corresponding timestamps. - sig { returns(T.nilable(T::Array[OpenAI::Models::Audio::TranscriptionWord])) } + sig { returns(T.nilable(T::Array[OpenAI::Audio::TranscriptionWord])) } attr_reader :words - sig { params(words: T::Array[T.any(OpenAI::Models::Audio::TranscriptionWord, OpenAI::Internal::AnyHash)]).void } + sig do + params(words: T::Array[OpenAI::Audio::TranscriptionWord::OrHash]).void + end attr_writer :words # Represents a verbose json transcription response returned by model, based on the @@ -40,10 +47,9 @@ module OpenAI duration: Float, language: String, text: String, - segments: T::Array[T.any(OpenAI::Models::Audio::TranscriptionSegment, OpenAI::Internal::AnyHash)], - words: T::Array[T.any(OpenAI::Models::Audio::TranscriptionWord, OpenAI::Internal::AnyHash)] - ) - .returns(T.attached_class) + segments: T::Array[OpenAI::Audio::TranscriptionSegment::OrHash], + words: T::Array[OpenAI::Audio::TranscriptionWord::OrHash] + ).returns(T.attached_class) end def self.new( # The duration of the input audio. @@ -56,20 +62,22 @@ module OpenAI segments: nil, # Extracted words and their corresponding timestamps. words: nil - ); end + ) + end + sig do - override - .returns( - { - duration: Float, - language: String, - text: String, - segments: T::Array[OpenAI::Models::Audio::TranscriptionSegment], - words: T::Array[OpenAI::Models::Audio::TranscriptionWord] - } - ) + override.returns( + { + duration: Float, + language: String, + text: String, + segments: T::Array[OpenAI::Audio::TranscriptionSegment], + words: T::Array[OpenAI::Audio::TranscriptionWord] + } + ) + end + def to_hash end - def to_hash; end end end end diff --git a/rbi/openai/models/audio/transcription_word.rbi b/rbi/openai/models/audio/transcription_word.rbi index 51122c61..141e388e 100644 --- a/rbi/openai/models/audio/transcription_word.rbi +++ b/rbi/openai/models/audio/transcription_word.rbi @@ -4,6 +4,8 @@ module OpenAI module Models module Audio class TranscriptionWord < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # End time of the word in seconds. sig { returns(Float) } attr_accessor :end_ @@ -16,7 +18,11 @@ module OpenAI sig { returns(String) } attr_accessor :word - sig { params(end_: Float, start: Float, word: String).returns(T.attached_class) } + sig do + params(end_: Float, start: Float, word: String).returns( + T.attached_class + ) + end def self.new( # End time of the word in seconds. end_:, @@ -24,9 +30,12 @@ module OpenAI start:, # The text content of the word. word: - ); end - sig { override.returns({end_: Float, start: Float, word: String}) } - def to_hash; end + ) + end + + sig { override.returns({ end_: Float, start: Float, word: String }) } + def to_hash + end end end end diff --git a/rbi/openai/models/audio/translation.rbi b/rbi/openai/models/audio/translation.rbi index 96bbc6d2..253e5428 100644 --- a/rbi/openai/models/audio/translation.rbi +++ b/rbi/openai/models/audio/translation.rbi @@ -4,14 +4,18 @@ module OpenAI module Models module Audio class Translation < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + sig { returns(String) } attr_accessor :text sig { params(text: String).returns(T.attached_class) } - def self.new(text:); end + def self.new(text:) + end - sig { override.returns({text: String}) } - def to_hash; end + sig { override.returns({ text: String }) } + def to_hash + end end end end diff --git a/rbi/openai/models/audio/translation_create_params.rbi b/rbi/openai/models/audio/translation_create_params.rbi index 77933b04..0762f210 100644 --- a/rbi/openai/models/audio/translation_create_params.rbi +++ b/rbi/openai/models/audio/translation_create_params.rbi @@ -7,6 +7,8 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The audio file object (not file name) translate, in one of these formats: flac, # mp3, mp4, mpeg, mpga, m4a, ogg, wav, or webm. sig { returns(T.any(Pathname, StringIO, IO, OpenAI::FilePart)) } @@ -14,7 +16,7 @@ module OpenAI # ID of the model to use. Only `whisper-1` (which is powered by our open source # Whisper V2 model) is currently available. - sig { returns(T.any(String, OpenAI::Models::AudioModel::OrSymbol)) } + sig { returns(T.any(String, OpenAI::AudioModel::OrSymbol)) } attr_accessor :model # An optional text to guide the model's style or continue a previous audio @@ -29,10 +31,21 @@ module OpenAI # The format of the output, in one of these options: `json`, `text`, `srt`, # `verbose_json`, or `vtt`. - sig { returns(T.nilable(OpenAI::Models::Audio::TranslationCreateParams::ResponseFormat::OrSymbol)) } + sig do + returns( + T.nilable( + OpenAI::Audio::TranslationCreateParams::ResponseFormat::OrSymbol + ) + ) + end attr_reader :response_format - sig { params(response_format: OpenAI::Models::Audio::TranslationCreateParams::ResponseFormat::OrSymbol).void } + sig do + params( + response_format: + OpenAI::Audio::TranslationCreateParams::ResponseFormat::OrSymbol + ).void + end attr_writer :response_format # The sampling temperature, between 0 and 1. Higher values like 0.8 will make the @@ -49,13 +62,13 @@ module OpenAI sig do params( file: T.any(Pathname, StringIO, IO, OpenAI::FilePart), - model: T.any(String, OpenAI::Models::AudioModel::OrSymbol), + model: T.any(String, OpenAI::AudioModel::OrSymbol), prompt: String, - response_format: OpenAI::Models::Audio::TranslationCreateParams::ResponseFormat::OrSymbol, + response_format: + OpenAI::Audio::TranslationCreateParams::ResponseFormat::OrSymbol, temperature: Float, - request_options: T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash) - ) - .returns(T.attached_class) + request_options: OpenAI::RequestOptions::OrHash + ).returns(T.attached_class) end def self.new( # The audio file object (not file name) translate, in one of these formats: flac, @@ -79,29 +92,40 @@ module OpenAI # automatically increase the temperature until certain thresholds are hit. temperature: nil, request_options: {} - ); end + ) + end + sig do - override - .returns( - { - file: T.any(Pathname, StringIO, IO, OpenAI::FilePart), - model: T.any(String, OpenAI::Models::AudioModel::OrSymbol), - prompt: String, - response_format: OpenAI::Models::Audio::TranslationCreateParams::ResponseFormat::OrSymbol, - temperature: Float, - request_options: OpenAI::RequestOptions - } - ) + override.returns( + { + file: T.any(Pathname, StringIO, IO, OpenAI::FilePart), + model: T.any(String, OpenAI::AudioModel::OrSymbol), + prompt: String, + response_format: + OpenAI::Audio::TranslationCreateParams::ResponseFormat::OrSymbol, + temperature: Float, + request_options: OpenAI::RequestOptions + } + ) + end + def to_hash end - def to_hash; end # ID of the model to use. Only `whisper-1` (which is powered by our open source # Whisper V2 model) is currently available. module Model extend OpenAI::Internal::Type::Union - sig { override.returns([String, OpenAI::Models::AudioModel::TaggedSymbol]) } - def self.variants; end + Variants = + T.type_alias { T.any(String, OpenAI::AudioModel::TaggedSymbol) } + + sig do + override.returns( + T::Array[OpenAI::Audio::TranslationCreateParams::Model::Variants] + ) + end + def self.variants + end end # The format of the output, in one of these options: `json`, `text`, `srt`, @@ -110,18 +134,49 @@ module OpenAI extend OpenAI::Internal::Type::Enum TaggedSymbol = - T.type_alias { T.all(Symbol, OpenAI::Models::Audio::TranslationCreateParams::ResponseFormat) } + T.type_alias do + T.all( + Symbol, + OpenAI::Audio::TranslationCreateParams::ResponseFormat + ) + end OrSymbol = T.type_alias { T.any(Symbol, String) } - JSON = T.let(:json, OpenAI::Models::Audio::TranslationCreateParams::ResponseFormat::TaggedSymbol) - TEXT = T.let(:text, OpenAI::Models::Audio::TranslationCreateParams::ResponseFormat::TaggedSymbol) - SRT = T.let(:srt, OpenAI::Models::Audio::TranslationCreateParams::ResponseFormat::TaggedSymbol) + JSON = + T.let( + :json, + OpenAI::Audio::TranslationCreateParams::ResponseFormat::TaggedSymbol + ) + TEXT = + T.let( + :text, + OpenAI::Audio::TranslationCreateParams::ResponseFormat::TaggedSymbol + ) + SRT = + T.let( + :srt, + OpenAI::Audio::TranslationCreateParams::ResponseFormat::TaggedSymbol + ) VERBOSE_JSON = - T.let(:verbose_json, OpenAI::Models::Audio::TranslationCreateParams::ResponseFormat::TaggedSymbol) - VTT = T.let(:vtt, OpenAI::Models::Audio::TranslationCreateParams::ResponseFormat::TaggedSymbol) + T.let( + :verbose_json, + OpenAI::Audio::TranslationCreateParams::ResponseFormat::TaggedSymbol + ) + VTT = + T.let( + :vtt, + OpenAI::Audio::TranslationCreateParams::ResponseFormat::TaggedSymbol + ) - sig { override.returns(T::Array[OpenAI::Models::Audio::TranslationCreateParams::ResponseFormat::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[ + OpenAI::Audio::TranslationCreateParams::ResponseFormat::TaggedSymbol + ] + ) + end + def self.values + end end end end diff --git a/rbi/openai/models/audio/translation_create_response.rbi b/rbi/openai/models/audio/translation_create_response.rbi index 57941765..528526c0 100644 --- a/rbi/openai/models/audio/translation_create_response.rbi +++ b/rbi/openai/models/audio/translation_create_response.rbi @@ -6,8 +6,18 @@ module OpenAI module TranslationCreateResponse extend OpenAI::Internal::Type::Union - sig { override.returns([OpenAI::Models::Audio::Translation, OpenAI::Models::Audio::TranslationVerbose]) } - def self.variants; end + Variants = + T.type_alias do + T.any(OpenAI::Audio::Translation, OpenAI::Audio::TranslationVerbose) + end + + sig do + override.returns( + T::Array[OpenAI::Models::Audio::TranslationCreateResponse::Variants] + ) + end + def self.variants + end end end end diff --git a/rbi/openai/models/audio/translation_verbose.rbi b/rbi/openai/models/audio/translation_verbose.rbi index 9458e067..ddc7e192 100644 --- a/rbi/openai/models/audio/translation_verbose.rbi +++ b/rbi/openai/models/audio/translation_verbose.rbi @@ -4,6 +4,8 @@ module OpenAI module Models module Audio class TranslationVerbose < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The duration of the input audio. sig { returns(Float) } attr_accessor :duration @@ -17,12 +19,15 @@ module OpenAI attr_accessor :text # Segments of the translated text and their corresponding details. - sig { returns(T.nilable(T::Array[OpenAI::Models::Audio::TranscriptionSegment])) } + sig do + returns(T.nilable(T::Array[OpenAI::Audio::TranscriptionSegment])) + end attr_reader :segments sig do - params(segments: T::Array[T.any(OpenAI::Models::Audio::TranscriptionSegment, OpenAI::Internal::AnyHash)]) - .void + params( + segments: T::Array[OpenAI::Audio::TranscriptionSegment::OrHash] + ).void end attr_writer :segments @@ -31,9 +36,8 @@ module OpenAI duration: Float, language: String, text: String, - segments: T::Array[T.any(OpenAI::Models::Audio::TranscriptionSegment, OpenAI::Internal::AnyHash)] - ) - .returns(T.attached_class) + segments: T::Array[OpenAI::Audio::TranscriptionSegment::OrHash] + ).returns(T.attached_class) end def self.new( # The duration of the input audio. @@ -44,14 +48,21 @@ module OpenAI text:, # Segments of the translated text and their corresponding details. segments: nil - ); end + ) + end + sig do - override - .returns( - {duration: Float, language: String, text: String, segments: T::Array[OpenAI::Models::Audio::TranscriptionSegment]} - ) + override.returns( + { + duration: Float, + language: String, + text: String, + segments: T::Array[OpenAI::Audio::TranscriptionSegment] + } + ) + end + def to_hash end - def to_hash; end end end end diff --git a/rbi/openai/models/audio_model.rbi b/rbi/openai/models/audio_model.rbi index e82aa420..3f22719a 100644 --- a/rbi/openai/models/audio_model.rbi +++ b/rbi/openai/models/audio_model.rbi @@ -5,15 +5,18 @@ module OpenAI module AudioModel extend OpenAI::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::AudioModel) } + TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::AudioModel) } OrSymbol = T.type_alias { T.any(Symbol, String) } - WHISPER_1 = T.let(:"whisper-1", OpenAI::Models::AudioModel::TaggedSymbol) - GPT_4O_TRANSCRIBE = T.let(:"gpt-4o-transcribe", OpenAI::Models::AudioModel::TaggedSymbol) - GPT_4O_MINI_TRANSCRIBE = T.let(:"gpt-4o-mini-transcribe", OpenAI::Models::AudioModel::TaggedSymbol) + WHISPER_1 = T.let(:"whisper-1", OpenAI::AudioModel::TaggedSymbol) + GPT_4O_TRANSCRIBE = + T.let(:"gpt-4o-transcribe", OpenAI::AudioModel::TaggedSymbol) + GPT_4O_MINI_TRANSCRIBE = + T.let(:"gpt-4o-mini-transcribe", OpenAI::AudioModel::TaggedSymbol) - sig { override.returns(T::Array[OpenAI::Models::AudioModel::TaggedSymbol]) } - def self.values; end + sig { override.returns(T::Array[OpenAI::AudioModel::TaggedSymbol]) } + def self.values + end end end end diff --git a/rbi/openai/models/audio_response_format.rbi b/rbi/openai/models/audio_response_format.rbi index b7fca47d..4afcf558 100644 --- a/rbi/openai/models/audio_response_format.rbi +++ b/rbi/openai/models/audio_response_format.rbi @@ -8,17 +8,21 @@ module OpenAI module AudioResponseFormat extend OpenAI::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::AudioResponseFormat) } + TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::AudioResponseFormat) } OrSymbol = T.type_alias { T.any(Symbol, String) } - JSON = T.let(:json, OpenAI::Models::AudioResponseFormat::TaggedSymbol) - TEXT = T.let(:text, OpenAI::Models::AudioResponseFormat::TaggedSymbol) - SRT = T.let(:srt, OpenAI::Models::AudioResponseFormat::TaggedSymbol) - VERBOSE_JSON = T.let(:verbose_json, OpenAI::Models::AudioResponseFormat::TaggedSymbol) - VTT = T.let(:vtt, OpenAI::Models::AudioResponseFormat::TaggedSymbol) + JSON = T.let(:json, OpenAI::AudioResponseFormat::TaggedSymbol) + TEXT = T.let(:text, OpenAI::AudioResponseFormat::TaggedSymbol) + SRT = T.let(:srt, OpenAI::AudioResponseFormat::TaggedSymbol) + VERBOSE_JSON = + T.let(:verbose_json, OpenAI::AudioResponseFormat::TaggedSymbol) + VTT = T.let(:vtt, OpenAI::AudioResponseFormat::TaggedSymbol) - sig { override.returns(T::Array[OpenAI::Models::AudioResponseFormat::TaggedSymbol]) } - def self.values; end + sig do + override.returns(T::Array[OpenAI::AudioResponseFormat::TaggedSymbol]) + end + def self.values + end end end end diff --git a/rbi/openai/models/auto_file_chunking_strategy_param.rbi b/rbi/openai/models/auto_file_chunking_strategy_param.rbi index 7ea24386..658b0cc9 100644 --- a/rbi/openai/models/auto_file_chunking_strategy_param.rbi +++ b/rbi/openai/models/auto_file_chunking_strategy_param.rbi @@ -3,6 +3,8 @@ module OpenAI module Models class AutoFileChunkingStrategyParam < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Always `auto`. sig { returns(Symbol) } attr_accessor :type @@ -13,9 +15,12 @@ module OpenAI def self.new( # Always `auto`. type: :auto - ); end - sig { override.returns({type: Symbol}) } - def to_hash; end + ) + end + + sig { override.returns({ type: Symbol }) } + def to_hash + end end end end diff --git a/rbi/openai/models/batch.rbi b/rbi/openai/models/batch.rbi index bbb7b1cd..dcc6308c 100644 --- a/rbi/openai/models/batch.rbi +++ b/rbi/openai/models/batch.rbi @@ -3,6 +3,8 @@ module OpenAI module Models class Batch < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + sig { returns(String) } attr_accessor :id @@ -27,7 +29,7 @@ module OpenAI attr_accessor :object # The current status of the batch. - sig { returns(OpenAI::Models::Batch::Status::TaggedSymbol) } + sig { returns(OpenAI::Batch::Status::TaggedSymbol) } attr_accessor :status # The Unix timestamp (in seconds) for when the batch was cancelled. @@ -58,10 +60,10 @@ module OpenAI sig { params(error_file_id: String).void } attr_writer :error_file_id - sig { returns(T.nilable(OpenAI::Models::Batch::Errors)) } + sig { returns(T.nilable(OpenAI::Batch::Errors)) } attr_reader :errors - sig { params(errors: T.any(OpenAI::Models::Batch::Errors, OpenAI::Internal::AnyHash)).void } + sig { params(errors: OpenAI::Batch::Errors::OrHash).void } attr_writer :errors # The Unix timestamp (in seconds) for when the batch expired. @@ -116,10 +118,10 @@ module OpenAI attr_writer :output_file_id # The request counts for different statuses within the batch. - sig { returns(T.nilable(OpenAI::Models::BatchRequestCounts)) } + sig { returns(T.nilable(OpenAI::BatchRequestCounts)) } attr_reader :request_counts - sig { params(request_counts: T.any(OpenAI::Models::BatchRequestCounts, OpenAI::Internal::AnyHash)).void } + sig { params(request_counts: OpenAI::BatchRequestCounts::OrHash).void } attr_writer :request_counts sig do @@ -129,12 +131,12 @@ module OpenAI created_at: Integer, endpoint: String, input_file_id: String, - status: OpenAI::Models::Batch::Status::OrSymbol, + status: OpenAI::Batch::Status::OrSymbol, cancelled_at: Integer, cancelling_at: Integer, completed_at: Integer, error_file_id: String, - errors: T.any(OpenAI::Models::Batch::Errors, OpenAI::Internal::AnyHash), + errors: OpenAI::Batch::Errors::OrHash, expired_at: Integer, expires_at: Integer, failed_at: Integer, @@ -142,10 +144,9 @@ module OpenAI in_progress_at: Integer, metadata: T.nilable(T::Hash[Symbol, String]), output_file_id: String, - request_counts: T.any(OpenAI::Models::BatchRequestCounts, OpenAI::Internal::AnyHash), + request_counts: OpenAI::BatchRequestCounts::OrHash, object: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( id:, @@ -191,61 +192,66 @@ module OpenAI request_counts: nil, # The object type, which is always `batch`. object: :batch - ); end + ) + end + sig do - override - .returns( - { - id: String, - completion_window: String, - created_at: Integer, - endpoint: String, - input_file_id: String, - object: Symbol, - status: OpenAI::Models::Batch::Status::TaggedSymbol, - cancelled_at: Integer, - cancelling_at: Integer, - completed_at: Integer, - error_file_id: String, - errors: OpenAI::Models::Batch::Errors, - expired_at: Integer, - expires_at: Integer, - failed_at: Integer, - finalizing_at: Integer, - in_progress_at: Integer, - metadata: T.nilable(T::Hash[Symbol, String]), - output_file_id: String, - request_counts: OpenAI::Models::BatchRequestCounts - } - ) + override.returns( + { + id: String, + completion_window: String, + created_at: Integer, + endpoint: String, + input_file_id: String, + object: Symbol, + status: OpenAI::Batch::Status::TaggedSymbol, + cancelled_at: Integer, + cancelling_at: Integer, + completed_at: Integer, + error_file_id: String, + errors: OpenAI::Batch::Errors, + expired_at: Integer, + expires_at: Integer, + failed_at: Integer, + finalizing_at: Integer, + in_progress_at: Integer, + metadata: T.nilable(T::Hash[Symbol, String]), + output_file_id: String, + request_counts: OpenAI::BatchRequestCounts + } + ) + end + def to_hash end - def to_hash; end # The current status of the batch. module Status extend OpenAI::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::Batch::Status) } + TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Batch::Status) } OrSymbol = T.type_alias { T.any(Symbol, String) } - VALIDATING = T.let(:validating, OpenAI::Models::Batch::Status::TaggedSymbol) - FAILED = T.let(:failed, OpenAI::Models::Batch::Status::TaggedSymbol) - IN_PROGRESS = T.let(:in_progress, OpenAI::Models::Batch::Status::TaggedSymbol) - FINALIZING = T.let(:finalizing, OpenAI::Models::Batch::Status::TaggedSymbol) - COMPLETED = T.let(:completed, OpenAI::Models::Batch::Status::TaggedSymbol) - EXPIRED = T.let(:expired, OpenAI::Models::Batch::Status::TaggedSymbol) - CANCELLING = T.let(:cancelling, OpenAI::Models::Batch::Status::TaggedSymbol) - CANCELLED = T.let(:cancelled, OpenAI::Models::Batch::Status::TaggedSymbol) - - sig { override.returns(T::Array[OpenAI::Models::Batch::Status::TaggedSymbol]) } - def self.values; end + VALIDATING = T.let(:validating, OpenAI::Batch::Status::TaggedSymbol) + FAILED = T.let(:failed, OpenAI::Batch::Status::TaggedSymbol) + IN_PROGRESS = T.let(:in_progress, OpenAI::Batch::Status::TaggedSymbol) + FINALIZING = T.let(:finalizing, OpenAI::Batch::Status::TaggedSymbol) + COMPLETED = T.let(:completed, OpenAI::Batch::Status::TaggedSymbol) + EXPIRED = T.let(:expired, OpenAI::Batch::Status::TaggedSymbol) + CANCELLING = T.let(:cancelling, OpenAI::Batch::Status::TaggedSymbol) + CANCELLED = T.let(:cancelled, OpenAI::Batch::Status::TaggedSymbol) + + sig { override.returns(T::Array[OpenAI::Batch::Status::TaggedSymbol]) } + def self.values + end end class Errors < OpenAI::Internal::Type::BaseModel - sig { returns(T.nilable(T::Array[OpenAI::Models::BatchError])) } + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + + sig { returns(T.nilable(T::Array[OpenAI::BatchError])) } attr_reader :data - sig { params(data: T::Array[T.any(OpenAI::Models::BatchError, OpenAI::Internal::AnyHash)]).void } + sig { params(data: T::Array[OpenAI::BatchError::OrHash]).void } attr_writer :data # The object type, which is always `list`. @@ -256,16 +262,25 @@ module OpenAI attr_writer :object sig do - params(data: T::Array[T.any(OpenAI::Models::BatchError, OpenAI::Internal::AnyHash)], object: String) - .returns(T.attached_class) + params( + data: T::Array[OpenAI::BatchError::OrHash], + object: String + ).returns(T.attached_class) end def self.new( data: nil, # The object type, which is always `list`. object: nil - ); end - sig { override.returns({data: T::Array[OpenAI::Models::BatchError], object: String}) } - def to_hash; end + ) + end + + sig do + override.returns( + { data: T::Array[OpenAI::BatchError], object: String } + ) + end + def to_hash + end end end end diff --git a/rbi/openai/models/batch_cancel_params.rbi b/rbi/openai/models/batch_cancel_params.rbi index 137bcef9..37f0df79 100644 --- a/rbi/openai/models/batch_cancel_params.rbi +++ b/rbi/openai/models/batch_cancel_params.rbi @@ -6,18 +6,19 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + sig do - params( - request_options: T.any( - OpenAI::RequestOptions, - OpenAI::Internal::AnyHash - ) - ).returns(T.attached_class) + params(request_options: OpenAI::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: OpenAI::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: OpenAI::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/openai/models/batch_create_params.rbi b/rbi/openai/models/batch_create_params.rbi index fec9c7ac..31e62492 100644 --- a/rbi/openai/models/batch_create_params.rbi +++ b/rbi/openai/models/batch_create_params.rbi @@ -6,16 +6,18 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The time frame within which the batch should be processed. Currently only `24h` # is supported. - sig { returns(OpenAI::Models::BatchCreateParams::CompletionWindow::OrSymbol) } + sig { returns(OpenAI::BatchCreateParams::CompletionWindow::OrSymbol) } attr_accessor :completion_window # The endpoint to be used for all requests in the batch. Currently # `/v1/responses`, `/v1/chat/completions`, `/v1/embeddings`, and `/v1/completions` # are supported. Note that `/v1/embeddings` batches are also restricted to a # maximum of 50,000 embedding inputs across all requests in the batch. - sig { returns(OpenAI::Models::BatchCreateParams::Endpoint::OrSymbol) } + sig { returns(OpenAI::BatchCreateParams::Endpoint::OrSymbol) } attr_accessor :endpoint # The ID of an uploaded file that contains requests for the new batch. @@ -41,13 +43,13 @@ module OpenAI sig do params( - completion_window: OpenAI::Models::BatchCreateParams::CompletionWindow::OrSymbol, - endpoint: OpenAI::Models::BatchCreateParams::Endpoint::OrSymbol, + completion_window: + OpenAI::BatchCreateParams::CompletionWindow::OrSymbol, + endpoint: OpenAI::BatchCreateParams::Endpoint::OrSymbol, input_file_id: String, metadata: T.nilable(T::Hash[Symbol, String]), - request_options: T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash) - ) - .returns(T.attached_class) + request_options: OpenAI::RequestOptions::OrHash + ).returns(T.attached_class) end def self.new( # The time frame within which the batch should be processed. Currently only `24h` @@ -76,33 +78,48 @@ module OpenAI # a maximum length of 512 characters. metadata: nil, request_options: {} - ); end + ) + end + sig do - override - .returns( - { - completion_window: OpenAI::Models::BatchCreateParams::CompletionWindow::OrSymbol, - endpoint: OpenAI::Models::BatchCreateParams::Endpoint::OrSymbol, - input_file_id: String, - metadata: T.nilable(T::Hash[Symbol, String]), - request_options: OpenAI::RequestOptions - } - ) + override.returns( + { + completion_window: + OpenAI::BatchCreateParams::CompletionWindow::OrSymbol, + endpoint: OpenAI::BatchCreateParams::Endpoint::OrSymbol, + input_file_id: String, + metadata: T.nilable(T::Hash[Symbol, String]), + request_options: OpenAI::RequestOptions + } + ) + end + def to_hash end - def to_hash; end # The time frame within which the batch should be processed. Currently only `24h` # is supported. module CompletionWindow extend OpenAI::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::BatchCreateParams::CompletionWindow) } + TaggedSymbol = + T.type_alias do + T.all(Symbol, OpenAI::BatchCreateParams::CompletionWindow) + end OrSymbol = T.type_alias { T.any(Symbol, String) } - COMPLETION_WINDOW_24H = T.let(:"24h", OpenAI::Models::BatchCreateParams::CompletionWindow::TaggedSymbol) + COMPLETION_WINDOW_24H = + T.let( + :"24h", + OpenAI::BatchCreateParams::CompletionWindow::TaggedSymbol + ) - sig { override.returns(T::Array[OpenAI::Models::BatchCreateParams::CompletionWindow::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[OpenAI::BatchCreateParams::CompletionWindow::TaggedSymbol] + ) + end + def self.values + end end # The endpoint to be used for all requests in the batch. Currently @@ -112,17 +129,38 @@ module OpenAI module Endpoint extend OpenAI::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::BatchCreateParams::Endpoint) } + TaggedSymbol = + T.type_alias { T.all(Symbol, OpenAI::BatchCreateParams::Endpoint) } OrSymbol = T.type_alias { T.any(Symbol, String) } - V1_RESPONSES = T.let(:"/v1/responses", OpenAI::Models::BatchCreateParams::Endpoint::TaggedSymbol) + V1_RESPONSES = + T.let( + :"/v1/responses", + OpenAI::BatchCreateParams::Endpoint::TaggedSymbol + ) V1_CHAT_COMPLETIONS = - T.let(:"/v1/chat/completions", OpenAI::Models::BatchCreateParams::Endpoint::TaggedSymbol) - V1_EMBEDDINGS = T.let(:"/v1/embeddings", OpenAI::Models::BatchCreateParams::Endpoint::TaggedSymbol) - V1_COMPLETIONS = T.let(:"/v1/completions", OpenAI::Models::BatchCreateParams::Endpoint::TaggedSymbol) + T.let( + :"/v1/chat/completions", + OpenAI::BatchCreateParams::Endpoint::TaggedSymbol + ) + V1_EMBEDDINGS = + T.let( + :"/v1/embeddings", + OpenAI::BatchCreateParams::Endpoint::TaggedSymbol + ) + V1_COMPLETIONS = + T.let( + :"/v1/completions", + OpenAI::BatchCreateParams::Endpoint::TaggedSymbol + ) - sig { override.returns(T::Array[OpenAI::Models::BatchCreateParams::Endpoint::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[OpenAI::BatchCreateParams::Endpoint::TaggedSymbol] + ) + end + def self.values + end end end end diff --git a/rbi/openai/models/batch_error.rbi b/rbi/openai/models/batch_error.rbi index 24b461c6..77e0e754 100644 --- a/rbi/openai/models/batch_error.rbi +++ b/rbi/openai/models/batch_error.rbi @@ -3,6 +3,8 @@ module OpenAI module Models class BatchError < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # An error code identifying the error type. sig { returns(T.nilable(String)) } attr_reader :code @@ -26,8 +28,12 @@ module OpenAI attr_accessor :param sig do - params(code: String, line: T.nilable(Integer), message: String, param: T.nilable(String)) - .returns(T.attached_class) + params( + code: String, + line: T.nilable(Integer), + message: String, + param: T.nilable(String) + ).returns(T.attached_class) end def self.new( # An error code identifying the error type. @@ -38,11 +44,21 @@ module OpenAI message: nil, # The name of the parameter that caused the error, if applicable. param: nil - ); end + ) + end + sig do - override.returns({code: String, line: T.nilable(Integer), message: String, param: T.nilable(String)}) + override.returns( + { + code: String, + line: T.nilable(Integer), + message: String, + param: T.nilable(String) + } + ) + end + def to_hash end - def to_hash; end end end end diff --git a/rbi/openai/models/batch_list_params.rbi b/rbi/openai/models/batch_list_params.rbi index 397a8042..1843894d 100644 --- a/rbi/openai/models/batch_list_params.rbi +++ b/rbi/openai/models/batch_list_params.rbi @@ -6,6 +6,8 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # A cursor for use in pagination. `after` is an object ID that defines your place # in the list. For instance, if you make a list request and receive 100 objects, # ending with obj_foo, your subsequent call can include after=obj_foo in order to @@ -28,9 +30,8 @@ module OpenAI params( after: String, limit: Integer, - request_options: T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash) - ) - .returns(T.attached_class) + request_options: OpenAI::RequestOptions::OrHash + ).returns(T.attached_class) end def self.new( # A cursor for use in pagination. `after` is an object ID that defines your place @@ -42,9 +43,20 @@ module OpenAI # 100, and the default is 20. limit: nil, request_options: {} - ); end - sig { override.returns({after: String, limit: Integer, request_options: OpenAI::RequestOptions}) } - def to_hash; end + ) + end + + sig do + override.returns( + { + after: String, + limit: Integer, + request_options: OpenAI::RequestOptions + } + ) + end + def to_hash + end end end end diff --git a/rbi/openai/models/batch_request_counts.rbi b/rbi/openai/models/batch_request_counts.rbi index 8f022136..6835bf20 100644 --- a/rbi/openai/models/batch_request_counts.rbi +++ b/rbi/openai/models/batch_request_counts.rbi @@ -3,6 +3,8 @@ module OpenAI module Models class BatchRequestCounts < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Number of requests that have been completed successfully. sig { returns(Integer) } attr_accessor :completed @@ -16,7 +18,11 @@ module OpenAI attr_accessor :total # The request counts for different statuses within the batch. - sig { params(completed: Integer, failed: Integer, total: Integer).returns(T.attached_class) } + sig do + params(completed: Integer, failed: Integer, total: Integer).returns( + T.attached_class + ) + end def self.new( # Number of requests that have been completed successfully. completed:, @@ -24,9 +30,16 @@ module OpenAI failed:, # Total number of requests in the batch. total: - ); end - sig { override.returns({completed: Integer, failed: Integer, total: Integer}) } - def to_hash; end + ) + end + + sig do + override.returns( + { completed: Integer, failed: Integer, total: Integer } + ) + end + def to_hash + end end end end diff --git a/rbi/openai/models/batch_retrieve_params.rbi b/rbi/openai/models/batch_retrieve_params.rbi index 7a154d58..b7289ba9 100644 --- a/rbi/openai/models/batch_retrieve_params.rbi +++ b/rbi/openai/models/batch_retrieve_params.rbi @@ -6,18 +6,19 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + sig do - params( - request_options: T.any( - OpenAI::RequestOptions, - OpenAI::Internal::AnyHash - ) - ).returns(T.attached_class) + params(request_options: OpenAI::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: OpenAI::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: OpenAI::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/openai/models/beta/assistant.rbi b/rbi/openai/models/beta/assistant.rbi index 438ec36e..9baa786f 100644 --- a/rbi/openai/models/beta/assistant.rbi +++ b/rbi/openai/models/beta/assistant.rbi @@ -4,6 +4,8 @@ module OpenAI module Models module Beta class Assistant < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The identifier, which can be referenced in API endpoints. sig { returns(String) } attr_accessor :id @@ -53,9 +55,9 @@ module OpenAI returns( T::Array[ T.any( - OpenAI::Models::Beta::CodeInterpreterTool, - OpenAI::Models::Beta::FileSearchTool, - OpenAI::Models::Beta::FunctionTool + OpenAI::Beta::CodeInterpreterTool, + OpenAI::Beta::FileSearchTool, + OpenAI::Beta::FunctionTool ) ] ) @@ -87,9 +89,9 @@ module OpenAI T.nilable( T.any( Symbol, - OpenAI::Models::ResponseFormatText, - OpenAI::Models::ResponseFormatJSONObject, - OpenAI::Models::ResponseFormatJSONSchema + OpenAI::ResponseFormatText, + OpenAI::ResponseFormatJSONObject, + OpenAI::ResponseFormatJSONSchema ) ) ) @@ -106,14 +108,14 @@ module OpenAI # 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. - sig { returns(T.nilable(OpenAI::Models::Beta::Assistant::ToolResources)) } + sig { returns(T.nilable(OpenAI::Beta::Assistant::ToolResources)) } attr_reader :tool_resources sig do params( - tool_resources: T.nilable(T.any(OpenAI::Models::Beta::Assistant::ToolResources, OpenAI::Internal::AnyHash)) - ) - .void + tool_resources: + T.nilable(OpenAI::Beta::Assistant::ToolResources::OrHash) + ).void end attr_writer :tool_resources @@ -135,29 +137,29 @@ module OpenAI metadata: T.nilable(T::Hash[Symbol, String]), model: String, name: T.nilable(String), - tools: T::Array[ - T.any( - OpenAI::Models::Beta::CodeInterpreterTool, - OpenAI::Internal::AnyHash, - OpenAI::Models::Beta::FileSearchTool, - OpenAI::Models::Beta::FunctionTool - ) - ], - response_format: T.nilable( - T.any( - Symbol, - OpenAI::Models::ResponseFormatText, - OpenAI::Internal::AnyHash, - OpenAI::Models::ResponseFormatJSONObject, - OpenAI::Models::ResponseFormatJSONSchema - ) - ), + tools: + T::Array[ + T.any( + OpenAI::Beta::CodeInterpreterTool::OrHash, + OpenAI::Beta::FileSearchTool::OrHash, + OpenAI::Beta::FunctionTool::OrHash + ) + ], + response_format: + T.nilable( + T.any( + Symbol, + OpenAI::ResponseFormatText::OrHash, + OpenAI::ResponseFormatJSONObject::OrHash, + OpenAI::ResponseFormatJSONSchema::OrHash + ) + ), temperature: T.nilable(Float), - tool_resources: T.nilable(T.any(OpenAI::Models::Beta::Assistant::ToolResources, OpenAI::Internal::AnyHash)), + tool_resources: + T.nilable(OpenAI::Beta::Assistant::ToolResources::OrHash), top_p: T.nilable(Float), object: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # The identifier, which can be referenced in API endpoints. @@ -226,62 +228,77 @@ module OpenAI top_p: nil, # The object type, which is always `assistant`. object: :assistant - ); end + ) + end + sig do - override - .returns( - { - id: String, - created_at: Integer, - description: T.nilable(String), - instructions: T.nilable(String), - metadata: T.nilable(T::Hash[Symbol, String]), - model: String, - name: T.nilable(String), - object: Symbol, - tools: T::Array[ + override.returns( + { + id: String, + created_at: Integer, + description: T.nilable(String), + instructions: T.nilable(String), + metadata: T.nilable(T::Hash[Symbol, String]), + model: String, + name: T.nilable(String), + object: Symbol, + tools: + T::Array[ T.any( - OpenAI::Models::Beta::CodeInterpreterTool, - OpenAI::Models::Beta::FileSearchTool, - OpenAI::Models::Beta::FunctionTool + OpenAI::Beta::CodeInterpreterTool, + OpenAI::Beta::FileSearchTool, + OpenAI::Beta::FunctionTool ) ], - response_format: T.nilable( + response_format: + T.nilable( T.any( Symbol, - OpenAI::Models::ResponseFormatText, - OpenAI::Models::ResponseFormatJSONObject, - OpenAI::Models::ResponseFormatJSONSchema + OpenAI::ResponseFormatText, + OpenAI::ResponseFormatJSONObject, + OpenAI::ResponseFormatJSONSchema ) ), - temperature: T.nilable(Float), - tool_resources: T.nilable(OpenAI::Models::Beta::Assistant::ToolResources), - top_p: T.nilable(Float) - } - ) + temperature: T.nilable(Float), + tool_resources: T.nilable(OpenAI::Beta::Assistant::ToolResources), + top_p: T.nilable(Float) + } + ) + end + def to_hash end - def to_hash; end class ToolResources < OpenAI::Internal::Type::BaseModel - sig { returns(T.nilable(OpenAI::Models::Beta::Assistant::ToolResources::CodeInterpreter)) } + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + + sig do + returns( + T.nilable(OpenAI::Beta::Assistant::ToolResources::CodeInterpreter) + ) + end attr_reader :code_interpreter sig do params( - code_interpreter: T.any(OpenAI::Models::Beta::Assistant::ToolResources::CodeInterpreter, OpenAI::Internal::AnyHash) - ) - .void + code_interpreter: + OpenAI::Beta::Assistant::ToolResources::CodeInterpreter::OrHash + ).void end attr_writer :code_interpreter - sig { returns(T.nilable(OpenAI::Models::Beta::Assistant::ToolResources::FileSearch)) } + sig do + returns( + T.nilable(OpenAI::Beta::Assistant::ToolResources::FileSearch) + ) + end attr_reader :file_search sig do params( - file_search: T.any(OpenAI::Models::Beta::Assistant::ToolResources::FileSearch, OpenAI::Internal::AnyHash) - ) - .void + file_search: + OpenAI::Beta::Assistant::ToolResources::FileSearch::OrHash + ).void end attr_writer :file_search @@ -291,25 +308,31 @@ module OpenAI # IDs. sig do params( - code_interpreter: T.any(OpenAI::Models::Beta::Assistant::ToolResources::CodeInterpreter, OpenAI::Internal::AnyHash), - file_search: T.any(OpenAI::Models::Beta::Assistant::ToolResources::FileSearch, OpenAI::Internal::AnyHash) - ) - .returns(T.attached_class) + code_interpreter: + OpenAI::Beta::Assistant::ToolResources::CodeInterpreter::OrHash, + file_search: + OpenAI::Beta::Assistant::ToolResources::FileSearch::OrHash + ).returns(T.attached_class) + end + def self.new(code_interpreter: nil, file_search: nil) end - def self.new(code_interpreter: nil, file_search: nil); end sig do - override - .returns( - { - code_interpreter: OpenAI::Models::Beta::Assistant::ToolResources::CodeInterpreter, - file_search: OpenAI::Models::Beta::Assistant::ToolResources::FileSearch - } - ) + override.returns( + { + code_interpreter: + OpenAI::Beta::Assistant::ToolResources::CodeInterpreter, + file_search: OpenAI::Beta::Assistant::ToolResources::FileSearch + } + ) + end + def to_hash end - def to_hash; end class CodeInterpreter < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # A list of [file](https://platform.openai.com/docs/api-reference/files) IDs made # available to the `code_interpreter`` tool. There can be a maximum of 20 files # associated with the tool. @@ -325,12 +348,18 @@ module OpenAI # available to the `code_interpreter`` tool. There can be a maximum of 20 files # associated with the tool. file_ids: nil - ); end - sig { override.returns({file_ids: T::Array[String]}) } - def to_hash; end + ) + end + + sig { override.returns({ file_ids: T::Array[String] }) } + def to_hash + end end class FileSearch < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The ID of the # [vector store](https://platform.openai.com/docs/api-reference/vector-stores/object) # attached to this assistant. There can be a maximum of 1 vector store attached to @@ -341,16 +370,23 @@ module OpenAI sig { params(vector_store_ids: T::Array[String]).void } attr_writer :vector_store_ids - sig { params(vector_store_ids: T::Array[String]).returns(T.attached_class) } + sig do + params(vector_store_ids: T::Array[String]).returns( + T.attached_class + ) + end def self.new( # The ID of the # [vector store](https://platform.openai.com/docs/api-reference/vector-stores/object) # attached to this assistant. There can be a maximum of 1 vector store attached to # the assistant. vector_store_ids: nil - ); end - sig { override.returns({vector_store_ids: T::Array[String]}) } - def to_hash; end + ) + end + + sig { override.returns({ vector_store_ids: T::Array[String] }) } + def to_hash + end end end end diff --git a/rbi/openai/models/beta/assistant_create_params.rbi b/rbi/openai/models/beta/assistant_create_params.rbi index d4ce6a96..eaf13a70 100644 --- a/rbi/openai/models/beta/assistant_create_params.rbi +++ b/rbi/openai/models/beta/assistant_create_params.rbi @@ -7,12 +7,14 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # ID of the model to use. You can use the # [List models](https://platform.openai.com/docs/api-reference/models/list) API to # see all of your available models, or see our # [Model overview](https://platform.openai.com/docs/models) for descriptions of # them. - sig { returns(T.any(String, OpenAI::Models::ChatModel::OrSymbol)) } + sig { returns(T.any(String, OpenAI::ChatModel::OrSymbol)) } attr_accessor :model # The description of the assistant. The maximum length is 512 characters. @@ -43,7 +45,7 @@ module OpenAI # [reasoning models](https://platform.openai.com/docs/guides/reasoning). Currently # supported values are `low`, `medium`, and `high`. Reducing reasoning effort can # result in faster responses and fewer tokens used on reasoning in a response. - sig { returns(T.nilable(OpenAI::Models::ReasoningEffort::OrSymbol)) } + sig { returns(T.nilable(OpenAI::ReasoningEffort::OrSymbol)) } attr_accessor :reasoning_effort # Specifies the format that the model must output. Compatible with @@ -71,9 +73,9 @@ module OpenAI T.nilable( T.any( Symbol, - OpenAI::Models::ResponseFormatText, - OpenAI::Models::ResponseFormatJSONObject, - OpenAI::Models::ResponseFormatJSONSchema + OpenAI::ResponseFormatText, + OpenAI::ResponseFormatJSONObject, + OpenAI::ResponseFormatJSONSchema ) ) ) @@ -90,14 +92,18 @@ module OpenAI # 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. - sig { returns(T.nilable(OpenAI::Models::Beta::AssistantCreateParams::ToolResources)) } + sig do + returns(T.nilable(OpenAI::Beta::AssistantCreateParams::ToolResources)) + end attr_reader :tool_resources sig do params( - tool_resources: T.nilable(T.any(OpenAI::Models::Beta::AssistantCreateParams::ToolResources, OpenAI::Internal::AnyHash)) - ) - .void + tool_resources: + T.nilable( + OpenAI::Beta::AssistantCreateParams::ToolResources::OrHash + ) + ).void end attr_writer :tool_resources @@ -109,9 +115,9 @@ module OpenAI T.nilable( T::Array[ T.any( - OpenAI::Models::Beta::CodeInterpreterTool, - OpenAI::Models::Beta::FileSearchTool, - OpenAI::Models::Beta::FunctionTool + OpenAI::Beta::CodeInterpreterTool, + OpenAI::Beta::FileSearchTool, + OpenAI::Beta::FunctionTool ) ] ) @@ -121,16 +127,15 @@ module OpenAI sig do params( - tools: T::Array[ - T.any( - OpenAI::Models::Beta::CodeInterpreterTool, - OpenAI::Internal::AnyHash, - OpenAI::Models::Beta::FileSearchTool, - OpenAI::Models::Beta::FunctionTool - ) - ] - ) - .void + tools: + T::Array[ + T.any( + OpenAI::Beta::CodeInterpreterTool::OrHash, + OpenAI::Beta::FileSearchTool::OrHash, + OpenAI::Beta::FunctionTool::OrHash + ) + ] + ).void end attr_writer :tools @@ -144,35 +149,37 @@ module OpenAI sig do params( - model: T.any(String, OpenAI::Models::ChatModel::OrSymbol), + model: T.any(String, OpenAI::ChatModel::OrSymbol), description: T.nilable(String), instructions: T.nilable(String), metadata: T.nilable(T::Hash[Symbol, String]), name: T.nilable(String), - reasoning_effort: T.nilable(OpenAI::Models::ReasoningEffort::OrSymbol), - response_format: T.nilable( - T.any( - Symbol, - OpenAI::Models::ResponseFormatText, - OpenAI::Internal::AnyHash, - OpenAI::Models::ResponseFormatJSONObject, - OpenAI::Models::ResponseFormatJSONSchema - ) - ), + reasoning_effort: T.nilable(OpenAI::ReasoningEffort::OrSymbol), + response_format: + T.nilable( + T.any( + Symbol, + OpenAI::ResponseFormatText::OrHash, + OpenAI::ResponseFormatJSONObject::OrHash, + OpenAI::ResponseFormatJSONSchema::OrHash + ) + ), temperature: T.nilable(Float), - tool_resources: T.nilable(T.any(OpenAI::Models::Beta::AssistantCreateParams::ToolResources, OpenAI::Internal::AnyHash)), - tools: T::Array[ - T.any( - OpenAI::Models::Beta::CodeInterpreterTool, - OpenAI::Internal::AnyHash, - OpenAI::Models::Beta::FileSearchTool, - OpenAI::Models::Beta::FunctionTool - ) - ], + tool_resources: + T.nilable( + OpenAI::Beta::AssistantCreateParams::ToolResources::OrHash + ), + tools: + T::Array[ + T.any( + OpenAI::Beta::CodeInterpreterTool::OrHash, + OpenAI::Beta::FileSearchTool::OrHash, + OpenAI::Beta::FunctionTool::OrHash + ) + ], top_p: T.nilable(Float), - request_options: T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash) - ) - .returns(T.attached_class) + request_options: OpenAI::RequestOptions::OrHash + ).returns(T.attached_class) end def self.new( # ID of the model to use. You can use the @@ -243,40 +250,45 @@ module OpenAI # We generally recommend altering this or temperature but not both. top_p: nil, request_options: {} - ); end + ) + end + sig do - override - .returns( - { - model: T.any(String, OpenAI::Models::ChatModel::OrSymbol), - description: T.nilable(String), - instructions: T.nilable(String), - metadata: T.nilable(T::Hash[Symbol, String]), - name: T.nilable(String), - reasoning_effort: T.nilable(OpenAI::Models::ReasoningEffort::OrSymbol), - response_format: T.nilable( + override.returns( + { + model: T.any(String, OpenAI::ChatModel::OrSymbol), + description: T.nilable(String), + instructions: T.nilable(String), + metadata: T.nilable(T::Hash[Symbol, String]), + name: T.nilable(String), + reasoning_effort: T.nilable(OpenAI::ReasoningEffort::OrSymbol), + response_format: + T.nilable( T.any( Symbol, - OpenAI::Models::ResponseFormatText, - OpenAI::Models::ResponseFormatJSONObject, - OpenAI::Models::ResponseFormatJSONSchema + OpenAI::ResponseFormatText, + OpenAI::ResponseFormatJSONObject, + OpenAI::ResponseFormatJSONSchema ) ), - temperature: T.nilable(Float), - tool_resources: T.nilable(OpenAI::Models::Beta::AssistantCreateParams::ToolResources), - tools: T::Array[ + temperature: T.nilable(Float), + tool_resources: + T.nilable(OpenAI::Beta::AssistantCreateParams::ToolResources), + tools: + T::Array[ T.any( - OpenAI::Models::Beta::CodeInterpreterTool, - OpenAI::Models::Beta::FileSearchTool, - OpenAI::Models::Beta::FunctionTool + OpenAI::Beta::CodeInterpreterTool, + OpenAI::Beta::FileSearchTool, + OpenAI::Beta::FunctionTool ) ], - top_p: T.nilable(Float), - request_options: OpenAI::RequestOptions - } - ) + top_p: T.nilable(Float), + request_options: OpenAI::RequestOptions + } + ) + end + def to_hash end - def to_hash; end # ID of the model to use. You can use the # [List models](https://platform.openai.com/docs/api-reference/models/list) API to @@ -286,33 +298,53 @@ module OpenAI module Model extend OpenAI::Internal::Type::Union - sig { override.returns([String, OpenAI::Models::ChatModel::TaggedSymbol]) } - def self.variants; end + Variants = + T.type_alias { T.any(String, OpenAI::ChatModel::TaggedSymbol) } + + sig do + override.returns( + T::Array[OpenAI::Beta::AssistantCreateParams::Model::Variants] + ) + end + def self.variants + end end class ToolResources < OpenAI::Internal::Type::BaseModel - sig { returns(T.nilable(OpenAI::Models::Beta::AssistantCreateParams::ToolResources::CodeInterpreter)) } - attr_reader :code_interpreter + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } sig do - params( - code_interpreter: T.any( - OpenAI::Models::Beta::AssistantCreateParams::ToolResources::CodeInterpreter, - OpenAI::Internal::AnyHash + returns( + T.nilable( + OpenAI::Beta::AssistantCreateParams::ToolResources::CodeInterpreter ) ) - .void + end + attr_reader :code_interpreter + + sig do + params( + code_interpreter: + OpenAI::Beta::AssistantCreateParams::ToolResources::CodeInterpreter::OrHash + ).void end attr_writer :code_interpreter - sig { returns(T.nilable(OpenAI::Models::Beta::AssistantCreateParams::ToolResources::FileSearch)) } + sig do + returns( + T.nilable( + OpenAI::Beta::AssistantCreateParams::ToolResources::FileSearch + ) + ) + end attr_reader :file_search sig do params( - file_search: T.any(OpenAI::Models::Beta::AssistantCreateParams::ToolResources::FileSearch, OpenAI::Internal::AnyHash) - ) - .void + file_search: + OpenAI::Beta::AssistantCreateParams::ToolResources::FileSearch::OrHash + ).void end attr_writer :file_search @@ -322,28 +354,32 @@ module OpenAI # IDs. sig do params( - code_interpreter: T.any( - OpenAI::Models::Beta::AssistantCreateParams::ToolResources::CodeInterpreter, - OpenAI::Internal::AnyHash - ), - file_search: T.any(OpenAI::Models::Beta::AssistantCreateParams::ToolResources::FileSearch, OpenAI::Internal::AnyHash) - ) - .returns(T.attached_class) + code_interpreter: + OpenAI::Beta::AssistantCreateParams::ToolResources::CodeInterpreter::OrHash, + file_search: + OpenAI::Beta::AssistantCreateParams::ToolResources::FileSearch::OrHash + ).returns(T.attached_class) + end + def self.new(code_interpreter: nil, file_search: nil) end - def self.new(code_interpreter: nil, file_search: nil); end sig do - override - .returns( - { - code_interpreter: OpenAI::Models::Beta::AssistantCreateParams::ToolResources::CodeInterpreter, - file_search: OpenAI::Models::Beta::AssistantCreateParams::ToolResources::FileSearch - } - ) + override.returns( + { + code_interpreter: + OpenAI::Beta::AssistantCreateParams::ToolResources::CodeInterpreter, + file_search: + OpenAI::Beta::AssistantCreateParams::ToolResources::FileSearch + } + ) + end + def to_hash end - def to_hash; end class CodeInterpreter < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # A list of [file](https://platform.openai.com/docs/api-reference/files) IDs made # available to the `code_interpreter` tool. There can be a maximum of 20 files # associated with the tool. @@ -359,12 +395,18 @@ module OpenAI # available to the `code_interpreter` tool. There can be a maximum of 20 files # associated with the tool. file_ids: nil - ); end - sig { override.returns({file_ids: T::Array[String]}) } - def to_hash; end + ) + end + + sig { override.returns({ file_ids: T::Array[String] }) } + def to_hash + end end class FileSearch < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The # [vector store](https://platform.openai.com/docs/api-reference/vector-stores/object) # attached to this assistant. There can be a maximum of 1 vector store attached to @@ -381,35 +423,33 @@ module OpenAI # vector store attached to the assistant. sig do returns( - T.nilable(T::Array[OpenAI::Models::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore]) + T.nilable( + T::Array[ + OpenAI::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore + ] + ) ) end attr_reader :vector_stores sig do params( - vector_stores: T::Array[ - T.any( - OpenAI::Models::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore, - OpenAI::Internal::AnyHash - ) - ] - ) - .void + vector_stores: + T::Array[ + OpenAI::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore::OrHash + ] + ).void end attr_writer :vector_stores sig do params( vector_store_ids: T::Array[String], - vector_stores: T::Array[ - T.any( - OpenAI::Models::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore, - OpenAI::Internal::AnyHash - ) - ] - ) - .returns(T.attached_class) + vector_stores: + T::Array[ + OpenAI::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore::OrHash + ] + ).returns(T.attached_class) end def self.new( # The @@ -422,27 +462,35 @@ module OpenAI # with file_ids and attach it to this assistant. There can be a maximum of 1 # vector store attached to the assistant. vector_stores: nil - ); end + ) + end + sig do - override - .returns( - { - vector_store_ids: T::Array[String], - vector_stores: T::Array[OpenAI::Models::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore] - } - ) + override.returns( + { + vector_store_ids: T::Array[String], + vector_stores: + T::Array[ + OpenAI::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore + ] + } + ) + end + def to_hash end - def to_hash; end class VectorStore < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The chunking strategy used to chunk the file(s). If not set, will use the `auto` # strategy. sig do returns( T.nilable( T.any( - OpenAI::Models::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Auto, - OpenAI::Models::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static + OpenAI::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Auto, + OpenAI::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static ) ) ) @@ -451,13 +499,12 @@ module OpenAI sig do params( - chunking_strategy: T.any( - OpenAI::Models::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Auto, - OpenAI::Internal::AnyHash, - OpenAI::Models::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static - ) - ) - .void + chunking_strategy: + T.any( + OpenAI::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Auto::OrHash, + OpenAI::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static::OrHash + ) + ).void end attr_writer :chunking_strategy @@ -481,15 +528,14 @@ module OpenAI sig do params( - chunking_strategy: T.any( - OpenAI::Models::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Auto, - OpenAI::Internal::AnyHash, - OpenAI::Models::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static - ), + chunking_strategy: + T.any( + OpenAI::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Auto::OrHash, + OpenAI::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static::OrHash + ), file_ids: T::Array[String], metadata: T.nilable(T::Hash[Symbol, String]) - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # The chunking strategy used to chunk the file(s). If not set, will use the `auto` @@ -506,28 +552,44 @@ module OpenAI # Keys are strings with a maximum length of 64 characters. Values are strings with # a maximum length of 512 characters. metadata: nil - ); end + ) + end + sig do - override - .returns( - { - chunking_strategy: T.any( - OpenAI::Models::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Auto, - OpenAI::Models::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static + override.returns( + { + chunking_strategy: + T.any( + OpenAI::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Auto, + OpenAI::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static ), - file_ids: T::Array[String], - metadata: T.nilable(T::Hash[Symbol, String]) - } - ) + file_ids: T::Array[String], + metadata: T.nilable(T::Hash[Symbol, String]) + } + ) + end + def to_hash end - def to_hash; end # The chunking strategy used to chunk the file(s). If not set, will use the `auto` # strategy. module ChunkingStrategy extend OpenAI::Internal::Type::Union + Variants = + T.type_alias do + T.any( + OpenAI::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Auto, + OpenAI::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static + ) + end + class Auto < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any(T.self_type, OpenAI::Internal::AnyHash) + end + # Always `auto`. sig { returns(Symbol) } attr_accessor :type @@ -538,27 +600,32 @@ module OpenAI def self.new( # Always `auto`. type: :auto - ); end - sig { override.returns({type: Symbol}) } - def to_hash; end + ) + end + + sig { override.returns({ type: Symbol }) } + def to_hash + end end class Static < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any(T.self_type, OpenAI::Internal::AnyHash) + end + sig do returns( - OpenAI::Models::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static::Static + OpenAI::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static::Static ) end attr_reader :static sig do params( - static: T.any( - OpenAI::Models::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static::Static, - OpenAI::Internal::AnyHash - ) - ) - .void + static: + OpenAI::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static::Static::OrHash + ).void end attr_writer :static @@ -568,31 +635,36 @@ module OpenAI sig do params( - static: T.any( - OpenAI::Models::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static::Static, - OpenAI::Internal::AnyHash - ), + static: + OpenAI::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static::Static::OrHash, type: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( static:, # Always `static`. type: :static - ); end + ) + end + sig do - override - .returns( - { - static: OpenAI::Models::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static::Static, - type: Symbol - } - ) + override.returns( + { + static: + OpenAI::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static::Static, + type: Symbol + } + ) + end + def to_hash end - def to_hash; end class Static < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any(T.self_type, OpenAI::Internal::AnyHash) + end + # The number of tokens that overlap between chunks. The default value is `400`. # # Note that the overlap must not exceed half of `max_chunk_size_tokens`. @@ -618,19 +690,31 @@ module OpenAI # The maximum number of tokens in each chunk. The default value is `800`. The # minimum value is `100` and the maximum value is `4096`. max_chunk_size_tokens: - ); end - sig { override.returns({chunk_overlap_tokens: Integer, max_chunk_size_tokens: Integer}) } - def to_hash; end + ) + end + + sig do + override.returns( + { + chunk_overlap_tokens: Integer, + max_chunk_size_tokens: Integer + } + ) + end + def to_hash + end end end sig do - override - .returns( - [OpenAI::Models::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Auto, OpenAI::Models::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static] - ) + override.returns( + T::Array[ + OpenAI::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Variants + ] + ) + end + def self.variants end - def self.variants; end end end end diff --git a/rbi/openai/models/beta/assistant_delete_params.rbi b/rbi/openai/models/beta/assistant_delete_params.rbi index 283d4cf9..48fee74b 100644 --- a/rbi/openai/models/beta/assistant_delete_params.rbi +++ b/rbi/openai/models/beta/assistant_delete_params.rbi @@ -7,18 +7,19 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + sig do - params( - request_options: T.any( - OpenAI::RequestOptions, - OpenAI::Internal::AnyHash - ) - ).returns(T.attached_class) + params(request_options: OpenAI::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: OpenAI::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: OpenAI::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/openai/models/beta/assistant_deleted.rbi b/rbi/openai/models/beta/assistant_deleted.rbi index 676a92bf..7ebe179e 100644 --- a/rbi/openai/models/beta/assistant_deleted.rbi +++ b/rbi/openai/models/beta/assistant_deleted.rbi @@ -4,6 +4,8 @@ module OpenAI module Models module Beta class AssistantDeleted < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + sig { returns(String) } attr_accessor :id @@ -13,11 +15,19 @@ module OpenAI sig { returns(Symbol) } attr_accessor :object - sig { params(id: String, deleted: T::Boolean, object: Symbol).returns(T.attached_class) } - def self.new(id:, deleted:, object: :"assistant.deleted"); end + sig do + params(id: String, deleted: T::Boolean, object: Symbol).returns( + T.attached_class + ) + end + def self.new(id:, deleted:, object: :"assistant.deleted") + end - sig { override.returns({id: String, deleted: T::Boolean, object: Symbol}) } - def to_hash; end + sig do + override.returns({ id: String, deleted: T::Boolean, object: Symbol }) + end + def to_hash + end end end end diff --git a/rbi/openai/models/beta/assistant_list_params.rbi b/rbi/openai/models/beta/assistant_list_params.rbi index 70d05fcf..b9644242 100644 --- a/rbi/openai/models/beta/assistant_list_params.rbi +++ b/rbi/openai/models/beta/assistant_list_params.rbi @@ -7,6 +7,8 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # A cursor for use in pagination. `after` is an object ID that defines your place # in the list. For instance, if you make a list request and receive 100 objects, # ending with obj_foo, your subsequent call can include after=obj_foo in order to @@ -37,10 +39,14 @@ module OpenAI # Sort order by the `created_at` timestamp of the objects. `asc` for ascending # order and `desc` for descending order. - sig { returns(T.nilable(OpenAI::Models::Beta::AssistantListParams::Order::OrSymbol)) } + sig do + returns(T.nilable(OpenAI::Beta::AssistantListParams::Order::OrSymbol)) + end attr_reader :order - sig { params(order: OpenAI::Models::Beta::AssistantListParams::Order::OrSymbol).void } + sig do + params(order: OpenAI::Beta::AssistantListParams::Order::OrSymbol).void + end attr_writer :order sig do @@ -48,10 +54,9 @@ module OpenAI after: String, before: String, limit: Integer, - order: OpenAI::Models::Beta::AssistantListParams::Order::OrSymbol, - request_options: T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash) - ) - .returns(T.attached_class) + order: OpenAI::Beta::AssistantListParams::Order::OrSymbol, + request_options: OpenAI::RequestOptions::OrHash + ).returns(T.attached_class) end def self.new( # A cursor for use in pagination. `after` is an object ID that defines your place @@ -71,34 +76,46 @@ module OpenAI # order and `desc` for descending order. order: nil, request_options: {} - ); end + ) + end + sig do - override - .returns( - { - after: String, - before: String, - limit: Integer, - order: OpenAI::Models::Beta::AssistantListParams::Order::OrSymbol, - request_options: OpenAI::RequestOptions - } - ) + override.returns( + { + after: String, + before: String, + limit: Integer, + order: OpenAI::Beta::AssistantListParams::Order::OrSymbol, + request_options: OpenAI::RequestOptions + } + ) + end + def to_hash end - def to_hash; end # Sort order by the `created_at` timestamp of the objects. `asc` for ascending # order and `desc` for descending order. module Order extend OpenAI::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::Beta::AssistantListParams::Order) } + TaggedSymbol = + T.type_alias do + T.all(Symbol, OpenAI::Beta::AssistantListParams::Order) + end OrSymbol = T.type_alias { T.any(Symbol, String) } - ASC = T.let(:asc, OpenAI::Models::Beta::AssistantListParams::Order::TaggedSymbol) - DESC = T.let(:desc, OpenAI::Models::Beta::AssistantListParams::Order::TaggedSymbol) + ASC = + T.let(:asc, OpenAI::Beta::AssistantListParams::Order::TaggedSymbol) + DESC = + T.let(:desc, OpenAI::Beta::AssistantListParams::Order::TaggedSymbol) - sig { override.returns(T::Array[OpenAI::Models::Beta::AssistantListParams::Order::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[OpenAI::Beta::AssistantListParams::Order::TaggedSymbol] + ) + end + def self.values + end end end end diff --git a/rbi/openai/models/beta/assistant_response_format_option.rbi b/rbi/openai/models/beta/assistant_response_format_option.rbi index af1951eb..744863b5 100644 --- a/rbi/openai/models/beta/assistant_response_format_option.rbi +++ b/rbi/openai/models/beta/assistant_response_format_option.rbi @@ -26,13 +26,23 @@ module OpenAI module AssistantResponseFormatOption extend OpenAI::Internal::Type::Union - sig do - override - .returns( - [Symbol, OpenAI::Models::ResponseFormatText, OpenAI::Models::ResponseFormatJSONObject, OpenAI::Models::ResponseFormatJSONSchema] + Variants = + T.type_alias do + T.any( + Symbol, + OpenAI::ResponseFormatText, + OpenAI::ResponseFormatJSONObject, + OpenAI::ResponseFormatJSONSchema ) + end + + sig do + override.returns( + T::Array[OpenAI::Beta::AssistantResponseFormatOption::Variants] + ) + end + def self.variants end - def self.variants; end end end end diff --git a/rbi/openai/models/beta/assistant_retrieve_params.rbi b/rbi/openai/models/beta/assistant_retrieve_params.rbi index 195f1fe4..2ca3eb4e 100644 --- a/rbi/openai/models/beta/assistant_retrieve_params.rbi +++ b/rbi/openai/models/beta/assistant_retrieve_params.rbi @@ -7,18 +7,19 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + sig do - params( - request_options: T.any( - OpenAI::RequestOptions, - OpenAI::Internal::AnyHash - ) - ).returns(T.attached_class) + params(request_options: OpenAI::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: OpenAI::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: OpenAI::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/openai/models/beta/assistant_stream_event.rbi b/rbi/openai/models/beta/assistant_stream_event.rbi index 3b46028a..b69c801c 100644 --- a/rbi/openai/models/beta/assistant_stream_event.rbi +++ b/rbi/openai/models/beta/assistant_stream_event.rbi @@ -26,13 +26,46 @@ module OpenAI module AssistantStreamEvent extend OpenAI::Internal::Type::Union + Variants = + T.type_alias do + T.any( + OpenAI::Beta::AssistantStreamEvent::ThreadCreated, + OpenAI::Beta::AssistantStreamEvent::ThreadRunCreated, + OpenAI::Beta::AssistantStreamEvent::ThreadRunQueued, + OpenAI::Beta::AssistantStreamEvent::ThreadRunInProgress, + OpenAI::Beta::AssistantStreamEvent::ThreadRunRequiresAction, + OpenAI::Beta::AssistantStreamEvent::ThreadRunCompleted, + OpenAI::Beta::AssistantStreamEvent::ThreadRunIncomplete, + OpenAI::Beta::AssistantStreamEvent::ThreadRunFailed, + OpenAI::Beta::AssistantStreamEvent::ThreadRunCancelling, + OpenAI::Beta::AssistantStreamEvent::ThreadRunCancelled, + OpenAI::Beta::AssistantStreamEvent::ThreadRunExpired, + OpenAI::Beta::AssistantStreamEvent::ThreadRunStepCreated, + OpenAI::Beta::AssistantStreamEvent::ThreadRunStepInProgress, + OpenAI::Beta::AssistantStreamEvent::ThreadRunStepDelta, + OpenAI::Beta::AssistantStreamEvent::ThreadRunStepCompleted, + OpenAI::Beta::AssistantStreamEvent::ThreadRunStepFailed, + OpenAI::Beta::AssistantStreamEvent::ThreadRunStepCancelled, + OpenAI::Beta::AssistantStreamEvent::ThreadRunStepExpired, + OpenAI::Beta::AssistantStreamEvent::ThreadMessageCreated, + OpenAI::Beta::AssistantStreamEvent::ThreadMessageInProgress, + OpenAI::Beta::AssistantStreamEvent::ThreadMessageDelta, + OpenAI::Beta::AssistantStreamEvent::ThreadMessageCompleted, + OpenAI::Beta::AssistantStreamEvent::ThreadMessageIncomplete, + OpenAI::Beta::AssistantStreamEvent::ErrorEvent + ) + end + class ThreadCreated < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Represents a thread that contains # [messages](https://platform.openai.com/docs/api-reference/messages). - sig { returns(OpenAI::Models::Beta::Thread) } + sig { returns(OpenAI::Beta::Thread) } attr_reader :data - sig { params(data: T.any(OpenAI::Models::Beta::Thread, OpenAI::Internal::AnyHash)).void } + sig { params(data: OpenAI::Beta::Thread::OrHash).void } attr_writer :data sig { returns(Symbol) } @@ -50,11 +83,10 @@ module OpenAI # created. sig do params( - data: T.any(OpenAI::Models::Beta::Thread, OpenAI::Internal::AnyHash), + data: OpenAI::Beta::Thread::OrHash, enabled: T::Boolean, event: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # Represents a thread that contains @@ -63,18 +95,28 @@ module OpenAI # Whether to enable input audio transcription. enabled: nil, event: :"thread.created" - ); end - sig { override.returns({data: OpenAI::Models::Beta::Thread, event: Symbol, enabled: T::Boolean}) } - def to_hash; end + ) + end + + sig do + override.returns( + { data: OpenAI::Beta::Thread, event: Symbol, enabled: T::Boolean } + ) + end + def to_hash + end end class ThreadRunCreated < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Represents an execution run on a # [thread](https://platform.openai.com/docs/api-reference/threads). - sig { returns(OpenAI::Models::Beta::Threads::Run) } + sig { returns(OpenAI::Beta::Threads::Run) } attr_reader :data - sig { params(data: T.any(OpenAI::Models::Beta::Threads::Run, OpenAI::Internal::AnyHash)).void } + sig { params(data: OpenAI::Beta::Threads::Run::OrHash).void } attr_writer :data sig { returns(Symbol) } @@ -83,26 +125,38 @@ module OpenAI # Occurs when a new # [run](https://platform.openai.com/docs/api-reference/runs/object) is created. sig do - params(data: T.any(OpenAI::Models::Beta::Threads::Run, OpenAI::Internal::AnyHash), event: Symbol) - .returns(T.attached_class) + params( + data: OpenAI::Beta::Threads::Run::OrHash, + event: Symbol + ).returns(T.attached_class) end def self.new( # Represents an execution run on a # [thread](https://platform.openai.com/docs/api-reference/threads). data:, event: :"thread.run.created" - ); end - sig { override.returns({data: OpenAI::Models::Beta::Threads::Run, event: Symbol}) } - def to_hash; end + ) + end + + sig do + override.returns( + { data: OpenAI::Beta::Threads::Run, event: Symbol } + ) + end + def to_hash + end end class ThreadRunQueued < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Represents an execution run on a # [thread](https://platform.openai.com/docs/api-reference/threads). - sig { returns(OpenAI::Models::Beta::Threads::Run) } + sig { returns(OpenAI::Beta::Threads::Run) } attr_reader :data - sig { params(data: T.any(OpenAI::Models::Beta::Threads::Run, OpenAI::Internal::AnyHash)).void } + sig { params(data: OpenAI::Beta::Threads::Run::OrHash).void } attr_writer :data sig { returns(Symbol) } @@ -111,26 +165,38 @@ module OpenAI # Occurs when a [run](https://platform.openai.com/docs/api-reference/runs/object) # moves to a `queued` status. sig do - params(data: T.any(OpenAI::Models::Beta::Threads::Run, OpenAI::Internal::AnyHash), event: Symbol) - .returns(T.attached_class) + params( + data: OpenAI::Beta::Threads::Run::OrHash, + event: Symbol + ).returns(T.attached_class) end def self.new( # Represents an execution run on a # [thread](https://platform.openai.com/docs/api-reference/threads). data:, event: :"thread.run.queued" - ); end - sig { override.returns({data: OpenAI::Models::Beta::Threads::Run, event: Symbol}) } - def to_hash; end + ) + end + + sig do + override.returns( + { data: OpenAI::Beta::Threads::Run, event: Symbol } + ) + end + def to_hash + end end class ThreadRunInProgress < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Represents an execution run on a # [thread](https://platform.openai.com/docs/api-reference/threads). - sig { returns(OpenAI::Models::Beta::Threads::Run) } + sig { returns(OpenAI::Beta::Threads::Run) } attr_reader :data - sig { params(data: T.any(OpenAI::Models::Beta::Threads::Run, OpenAI::Internal::AnyHash)).void } + sig { params(data: OpenAI::Beta::Threads::Run::OrHash).void } attr_writer :data sig { returns(Symbol) } @@ -139,26 +205,38 @@ module OpenAI # Occurs when a [run](https://platform.openai.com/docs/api-reference/runs/object) # moves to an `in_progress` status. sig do - params(data: T.any(OpenAI::Models::Beta::Threads::Run, OpenAI::Internal::AnyHash), event: Symbol) - .returns(T.attached_class) + params( + data: OpenAI::Beta::Threads::Run::OrHash, + event: Symbol + ).returns(T.attached_class) end def self.new( # Represents an execution run on a # [thread](https://platform.openai.com/docs/api-reference/threads). data:, event: :"thread.run.in_progress" - ); end - sig { override.returns({data: OpenAI::Models::Beta::Threads::Run, event: Symbol}) } - def to_hash; end + ) + end + + sig do + override.returns( + { data: OpenAI::Beta::Threads::Run, event: Symbol } + ) + end + def to_hash + end end class ThreadRunRequiresAction < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Represents an execution run on a # [thread](https://platform.openai.com/docs/api-reference/threads). - sig { returns(OpenAI::Models::Beta::Threads::Run) } + sig { returns(OpenAI::Beta::Threads::Run) } attr_reader :data - sig { params(data: T.any(OpenAI::Models::Beta::Threads::Run, OpenAI::Internal::AnyHash)).void } + sig { params(data: OpenAI::Beta::Threads::Run::OrHash).void } attr_writer :data sig { returns(Symbol) } @@ -167,26 +245,38 @@ module OpenAI # Occurs when a [run](https://platform.openai.com/docs/api-reference/runs/object) # moves to a `requires_action` status. sig do - params(data: T.any(OpenAI::Models::Beta::Threads::Run, OpenAI::Internal::AnyHash), event: Symbol) - .returns(T.attached_class) + params( + data: OpenAI::Beta::Threads::Run::OrHash, + event: Symbol + ).returns(T.attached_class) end def self.new( # Represents an execution run on a # [thread](https://platform.openai.com/docs/api-reference/threads). data:, event: :"thread.run.requires_action" - ); end - sig { override.returns({data: OpenAI::Models::Beta::Threads::Run, event: Symbol}) } - def to_hash; end + ) + end + + sig do + override.returns( + { data: OpenAI::Beta::Threads::Run, event: Symbol } + ) + end + def to_hash + end end class ThreadRunCompleted < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Represents an execution run on a # [thread](https://platform.openai.com/docs/api-reference/threads). - sig { returns(OpenAI::Models::Beta::Threads::Run) } + sig { returns(OpenAI::Beta::Threads::Run) } attr_reader :data - sig { params(data: T.any(OpenAI::Models::Beta::Threads::Run, OpenAI::Internal::AnyHash)).void } + sig { params(data: OpenAI::Beta::Threads::Run::OrHash).void } attr_writer :data sig { returns(Symbol) } @@ -195,26 +285,38 @@ module OpenAI # Occurs when a [run](https://platform.openai.com/docs/api-reference/runs/object) # is completed. sig do - params(data: T.any(OpenAI::Models::Beta::Threads::Run, OpenAI::Internal::AnyHash), event: Symbol) - .returns(T.attached_class) + params( + data: OpenAI::Beta::Threads::Run::OrHash, + event: Symbol + ).returns(T.attached_class) end def self.new( # Represents an execution run on a # [thread](https://platform.openai.com/docs/api-reference/threads). data:, event: :"thread.run.completed" - ); end - sig { override.returns({data: OpenAI::Models::Beta::Threads::Run, event: Symbol}) } - def to_hash; end + ) + end + + sig do + override.returns( + { data: OpenAI::Beta::Threads::Run, event: Symbol } + ) + end + def to_hash + end end class ThreadRunIncomplete < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Represents an execution run on a # [thread](https://platform.openai.com/docs/api-reference/threads). - sig { returns(OpenAI::Models::Beta::Threads::Run) } + sig { returns(OpenAI::Beta::Threads::Run) } attr_reader :data - sig { params(data: T.any(OpenAI::Models::Beta::Threads::Run, OpenAI::Internal::AnyHash)).void } + sig { params(data: OpenAI::Beta::Threads::Run::OrHash).void } attr_writer :data sig { returns(Symbol) } @@ -223,26 +325,38 @@ module OpenAI # Occurs when a [run](https://platform.openai.com/docs/api-reference/runs/object) # ends with status `incomplete`. sig do - params(data: T.any(OpenAI::Models::Beta::Threads::Run, OpenAI::Internal::AnyHash), event: Symbol) - .returns(T.attached_class) + params( + data: OpenAI::Beta::Threads::Run::OrHash, + event: Symbol + ).returns(T.attached_class) end def self.new( # Represents an execution run on a # [thread](https://platform.openai.com/docs/api-reference/threads). data:, event: :"thread.run.incomplete" - ); end - sig { override.returns({data: OpenAI::Models::Beta::Threads::Run, event: Symbol}) } - def to_hash; end + ) + end + + sig do + override.returns( + { data: OpenAI::Beta::Threads::Run, event: Symbol } + ) + end + def to_hash + end end class ThreadRunFailed < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Represents an execution run on a # [thread](https://platform.openai.com/docs/api-reference/threads). - sig { returns(OpenAI::Models::Beta::Threads::Run) } + sig { returns(OpenAI::Beta::Threads::Run) } attr_reader :data - sig { params(data: T.any(OpenAI::Models::Beta::Threads::Run, OpenAI::Internal::AnyHash)).void } + sig { params(data: OpenAI::Beta::Threads::Run::OrHash).void } attr_writer :data sig { returns(Symbol) } @@ -251,26 +365,38 @@ module OpenAI # Occurs when a [run](https://platform.openai.com/docs/api-reference/runs/object) # fails. sig do - params(data: T.any(OpenAI::Models::Beta::Threads::Run, OpenAI::Internal::AnyHash), event: Symbol) - .returns(T.attached_class) + params( + data: OpenAI::Beta::Threads::Run::OrHash, + event: Symbol + ).returns(T.attached_class) end def self.new( # Represents an execution run on a # [thread](https://platform.openai.com/docs/api-reference/threads). data:, event: :"thread.run.failed" - ); end - sig { override.returns({data: OpenAI::Models::Beta::Threads::Run, event: Symbol}) } - def to_hash; end + ) + end + + sig do + override.returns( + { data: OpenAI::Beta::Threads::Run, event: Symbol } + ) + end + def to_hash + end end class ThreadRunCancelling < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Represents an execution run on a # [thread](https://platform.openai.com/docs/api-reference/threads). - sig { returns(OpenAI::Models::Beta::Threads::Run) } + sig { returns(OpenAI::Beta::Threads::Run) } attr_reader :data - sig { params(data: T.any(OpenAI::Models::Beta::Threads::Run, OpenAI::Internal::AnyHash)).void } + sig { params(data: OpenAI::Beta::Threads::Run::OrHash).void } attr_writer :data sig { returns(Symbol) } @@ -279,26 +405,38 @@ module OpenAI # Occurs when a [run](https://platform.openai.com/docs/api-reference/runs/object) # moves to a `cancelling` status. sig do - params(data: T.any(OpenAI::Models::Beta::Threads::Run, OpenAI::Internal::AnyHash), event: Symbol) - .returns(T.attached_class) + params( + data: OpenAI::Beta::Threads::Run::OrHash, + event: Symbol + ).returns(T.attached_class) end def self.new( # Represents an execution run on a # [thread](https://platform.openai.com/docs/api-reference/threads). data:, event: :"thread.run.cancelling" - ); end - sig { override.returns({data: OpenAI::Models::Beta::Threads::Run, event: Symbol}) } - def to_hash; end + ) + end + + sig do + override.returns( + { data: OpenAI::Beta::Threads::Run, event: Symbol } + ) + end + def to_hash + end end class ThreadRunCancelled < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Represents an execution run on a # [thread](https://platform.openai.com/docs/api-reference/threads). - sig { returns(OpenAI::Models::Beta::Threads::Run) } + sig { returns(OpenAI::Beta::Threads::Run) } attr_reader :data - sig { params(data: T.any(OpenAI::Models::Beta::Threads::Run, OpenAI::Internal::AnyHash)).void } + sig { params(data: OpenAI::Beta::Threads::Run::OrHash).void } attr_writer :data sig { returns(Symbol) } @@ -307,26 +445,38 @@ module OpenAI # Occurs when a [run](https://platform.openai.com/docs/api-reference/runs/object) # is cancelled. sig do - params(data: T.any(OpenAI::Models::Beta::Threads::Run, OpenAI::Internal::AnyHash), event: Symbol) - .returns(T.attached_class) + params( + data: OpenAI::Beta::Threads::Run::OrHash, + event: Symbol + ).returns(T.attached_class) end def self.new( # Represents an execution run on a # [thread](https://platform.openai.com/docs/api-reference/threads). data:, event: :"thread.run.cancelled" - ); end - sig { override.returns({data: OpenAI::Models::Beta::Threads::Run, event: Symbol}) } - def to_hash; end + ) + end + + sig do + override.returns( + { data: OpenAI::Beta::Threads::Run, event: Symbol } + ) + end + def to_hash + end end class ThreadRunExpired < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Represents an execution run on a # [thread](https://platform.openai.com/docs/api-reference/threads). - sig { returns(OpenAI::Models::Beta::Threads::Run) } + sig { returns(OpenAI::Beta::Threads::Run) } attr_reader :data - sig { params(data: T.any(OpenAI::Models::Beta::Threads::Run, OpenAI::Internal::AnyHash)).void } + sig { params(data: OpenAI::Beta::Threads::Run::OrHash).void } attr_writer :data sig { returns(Symbol) } @@ -335,25 +485,39 @@ module OpenAI # Occurs when a [run](https://platform.openai.com/docs/api-reference/runs/object) # expires. sig do - params(data: T.any(OpenAI::Models::Beta::Threads::Run, OpenAI::Internal::AnyHash), event: Symbol) - .returns(T.attached_class) + params( + data: OpenAI::Beta::Threads::Run::OrHash, + event: Symbol + ).returns(T.attached_class) end def self.new( # Represents an execution run on a # [thread](https://platform.openai.com/docs/api-reference/threads). data:, event: :"thread.run.expired" - ); end - sig { override.returns({data: OpenAI::Models::Beta::Threads::Run, event: Symbol}) } - def to_hash; end + ) + end + + sig do + override.returns( + { data: OpenAI::Beta::Threads::Run, event: Symbol } + ) + end + def to_hash + end end class ThreadRunStepCreated < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Represents a step in execution of a run. - sig { returns(OpenAI::Models::Beta::Threads::Runs::RunStep) } + sig { returns(OpenAI::Beta::Threads::Runs::RunStep) } attr_reader :data - sig { params(data: T.any(OpenAI::Models::Beta::Threads::Runs::RunStep, OpenAI::Internal::AnyHash)).void } + sig do + params(data: OpenAI::Beta::Threads::Runs::RunStep::OrHash).void + end attr_writer :data sig { returns(Symbol) } @@ -364,26 +528,37 @@ module OpenAI # is created. sig do params( - data: T.any(OpenAI::Models::Beta::Threads::Runs::RunStep, OpenAI::Internal::AnyHash), + data: OpenAI::Beta::Threads::Runs::RunStep::OrHash, event: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # Represents a step in execution of a run. data:, event: :"thread.run.step.created" - ); end - sig { override.returns({data: OpenAI::Models::Beta::Threads::Runs::RunStep, event: Symbol}) } - def to_hash; end + ) + end + + sig do + override.returns( + { data: OpenAI::Beta::Threads::Runs::RunStep, event: Symbol } + ) + end + def to_hash + end end class ThreadRunStepInProgress < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Represents a step in execution of a run. - sig { returns(OpenAI::Models::Beta::Threads::Runs::RunStep) } + sig { returns(OpenAI::Beta::Threads::Runs::RunStep) } attr_reader :data - sig { params(data: T.any(OpenAI::Models::Beta::Threads::Runs::RunStep, OpenAI::Internal::AnyHash)).void } + sig do + params(data: OpenAI::Beta::Threads::Runs::RunStep::OrHash).void + end attr_writer :data sig { returns(Symbol) } @@ -394,28 +569,39 @@ module OpenAI # moves to an `in_progress` state. sig do params( - data: T.any(OpenAI::Models::Beta::Threads::Runs::RunStep, OpenAI::Internal::AnyHash), + data: OpenAI::Beta::Threads::Runs::RunStep::OrHash, event: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # Represents a step in execution of a run. data:, event: :"thread.run.step.in_progress" - ); end - sig { override.returns({data: OpenAI::Models::Beta::Threads::Runs::RunStep, event: Symbol}) } - def to_hash; end + ) + end + + sig do + override.returns( + { data: OpenAI::Beta::Threads::Runs::RunStep, event: Symbol } + ) + end + def to_hash + end end class ThreadRunStepDelta < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Represents a run step delta i.e. any changed fields on a run step during # streaming. - sig { returns(OpenAI::Models::Beta::Threads::Runs::RunStepDeltaEvent) } + sig { returns(OpenAI::Beta::Threads::Runs::RunStepDeltaEvent) } attr_reader :data sig do - params(data: T.any(OpenAI::Models::Beta::Threads::Runs::RunStepDeltaEvent, OpenAI::Internal::AnyHash)).void + params( + data: OpenAI::Beta::Threads::Runs::RunStepDeltaEvent::OrHash + ).void end attr_writer :data @@ -427,27 +613,41 @@ module OpenAI # are being streamed. sig do params( - data: T.any(OpenAI::Models::Beta::Threads::Runs::RunStepDeltaEvent, OpenAI::Internal::AnyHash), + data: OpenAI::Beta::Threads::Runs::RunStepDeltaEvent::OrHash, event: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # Represents a run step delta i.e. any changed fields on a run step during # streaming. data:, event: :"thread.run.step.delta" - ); end - sig { override.returns({data: OpenAI::Models::Beta::Threads::Runs::RunStepDeltaEvent, event: Symbol}) } - def to_hash; end + ) + end + + sig do + override.returns( + { + data: OpenAI::Beta::Threads::Runs::RunStepDeltaEvent, + event: Symbol + } + ) + end + def to_hash + end end class ThreadRunStepCompleted < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Represents a step in execution of a run. - sig { returns(OpenAI::Models::Beta::Threads::Runs::RunStep) } + sig { returns(OpenAI::Beta::Threads::Runs::RunStep) } attr_reader :data - sig { params(data: T.any(OpenAI::Models::Beta::Threads::Runs::RunStep, OpenAI::Internal::AnyHash)).void } + sig do + params(data: OpenAI::Beta::Threads::Runs::RunStep::OrHash).void + end attr_writer :data sig { returns(Symbol) } @@ -458,26 +658,37 @@ module OpenAI # is completed. sig do params( - data: T.any(OpenAI::Models::Beta::Threads::Runs::RunStep, OpenAI::Internal::AnyHash), + data: OpenAI::Beta::Threads::Runs::RunStep::OrHash, event: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # Represents a step in execution of a run. data:, event: :"thread.run.step.completed" - ); end - sig { override.returns({data: OpenAI::Models::Beta::Threads::Runs::RunStep, event: Symbol}) } - def to_hash; end + ) + end + + sig do + override.returns( + { data: OpenAI::Beta::Threads::Runs::RunStep, event: Symbol } + ) + end + def to_hash + end end class ThreadRunStepFailed < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Represents a step in execution of a run. - sig { returns(OpenAI::Models::Beta::Threads::Runs::RunStep) } + sig { returns(OpenAI::Beta::Threads::Runs::RunStep) } attr_reader :data - sig { params(data: T.any(OpenAI::Models::Beta::Threads::Runs::RunStep, OpenAI::Internal::AnyHash)).void } + sig do + params(data: OpenAI::Beta::Threads::Runs::RunStep::OrHash).void + end attr_writer :data sig { returns(Symbol) } @@ -488,26 +699,37 @@ module OpenAI # fails. sig do params( - data: T.any(OpenAI::Models::Beta::Threads::Runs::RunStep, OpenAI::Internal::AnyHash), + data: OpenAI::Beta::Threads::Runs::RunStep::OrHash, event: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # Represents a step in execution of a run. data:, event: :"thread.run.step.failed" - ); end - sig { override.returns({data: OpenAI::Models::Beta::Threads::Runs::RunStep, event: Symbol}) } - def to_hash; end + ) + end + + sig do + override.returns( + { data: OpenAI::Beta::Threads::Runs::RunStep, event: Symbol } + ) + end + def to_hash + end end class ThreadRunStepCancelled < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Represents a step in execution of a run. - sig { returns(OpenAI::Models::Beta::Threads::Runs::RunStep) } + sig { returns(OpenAI::Beta::Threads::Runs::RunStep) } attr_reader :data - sig { params(data: T.any(OpenAI::Models::Beta::Threads::Runs::RunStep, OpenAI::Internal::AnyHash)).void } + sig do + params(data: OpenAI::Beta::Threads::Runs::RunStep::OrHash).void + end attr_writer :data sig { returns(Symbol) } @@ -518,26 +740,37 @@ module OpenAI # is cancelled. sig do params( - data: T.any(OpenAI::Models::Beta::Threads::Runs::RunStep, OpenAI::Internal::AnyHash), + data: OpenAI::Beta::Threads::Runs::RunStep::OrHash, event: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # Represents a step in execution of a run. data:, event: :"thread.run.step.cancelled" - ); end - sig { override.returns({data: OpenAI::Models::Beta::Threads::Runs::RunStep, event: Symbol}) } - def to_hash; end + ) + end + + sig do + override.returns( + { data: OpenAI::Beta::Threads::Runs::RunStep, event: Symbol } + ) + end + def to_hash + end end class ThreadRunStepExpired < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Represents a step in execution of a run. - sig { returns(OpenAI::Models::Beta::Threads::Runs::RunStep) } + sig { returns(OpenAI::Beta::Threads::Runs::RunStep) } attr_reader :data - sig { params(data: T.any(OpenAI::Models::Beta::Threads::Runs::RunStep, OpenAI::Internal::AnyHash)).void } + sig do + params(data: OpenAI::Beta::Threads::Runs::RunStep::OrHash).void + end attr_writer :data sig { returns(Symbol) } @@ -548,27 +781,36 @@ module OpenAI # expires. sig do params( - data: T.any(OpenAI::Models::Beta::Threads::Runs::RunStep, OpenAI::Internal::AnyHash), + data: OpenAI::Beta::Threads::Runs::RunStep::OrHash, event: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # Represents a step in execution of a run. data:, event: :"thread.run.step.expired" - ); end - sig { override.returns({data: OpenAI::Models::Beta::Threads::Runs::RunStep, event: Symbol}) } - def to_hash; end + ) + end + + sig do + override.returns( + { data: OpenAI::Beta::Threads::Runs::RunStep, event: Symbol } + ) + end + def to_hash + end end class ThreadMessageCreated < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Represents a message within a # [thread](https://platform.openai.com/docs/api-reference/threads). - sig { returns(OpenAI::Models::Beta::Threads::Message) } + sig { returns(OpenAI::Beta::Threads::Message) } attr_reader :data - sig { params(data: T.any(OpenAI::Models::Beta::Threads::Message, OpenAI::Internal::AnyHash)).void } + sig { params(data: OpenAI::Beta::Threads::Message::OrHash).void } attr_writer :data sig { returns(Symbol) } @@ -578,26 +820,38 @@ module OpenAI # [message](https://platform.openai.com/docs/api-reference/messages/object) is # created. sig do - params(data: T.any(OpenAI::Models::Beta::Threads::Message, OpenAI::Internal::AnyHash), event: Symbol) - .returns(T.attached_class) + params( + data: OpenAI::Beta::Threads::Message::OrHash, + event: Symbol + ).returns(T.attached_class) end def self.new( # Represents a message within a # [thread](https://platform.openai.com/docs/api-reference/threads). data:, event: :"thread.message.created" - ); end - sig { override.returns({data: OpenAI::Models::Beta::Threads::Message, event: Symbol}) } - def to_hash; end + ) + end + + sig do + override.returns( + { data: OpenAI::Beta::Threads::Message, event: Symbol } + ) + end + def to_hash + end end class ThreadMessageInProgress < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Represents a message within a # [thread](https://platform.openai.com/docs/api-reference/threads). - sig { returns(OpenAI::Models::Beta::Threads::Message) } + sig { returns(OpenAI::Beta::Threads::Message) } attr_reader :data - sig { params(data: T.any(OpenAI::Models::Beta::Threads::Message, OpenAI::Internal::AnyHash)).void } + sig { params(data: OpenAI::Beta::Threads::Message::OrHash).void } attr_writer :data sig { returns(Symbol) } @@ -607,26 +861,40 @@ module OpenAI # [message](https://platform.openai.com/docs/api-reference/messages/object) moves # to an `in_progress` state. sig do - params(data: T.any(OpenAI::Models::Beta::Threads::Message, OpenAI::Internal::AnyHash), event: Symbol) - .returns(T.attached_class) + params( + data: OpenAI::Beta::Threads::Message::OrHash, + event: Symbol + ).returns(T.attached_class) end def self.new( # Represents a message within a # [thread](https://platform.openai.com/docs/api-reference/threads). data:, event: :"thread.message.in_progress" - ); end - sig { override.returns({data: OpenAI::Models::Beta::Threads::Message, event: Symbol}) } - def to_hash; end + ) + end + + sig do + override.returns( + { data: OpenAI::Beta::Threads::Message, event: Symbol } + ) + end + def to_hash + end end class ThreadMessageDelta < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Represents a message delta i.e. any changed fields on a message during # streaming. - sig { returns(OpenAI::Models::Beta::Threads::MessageDeltaEvent) } + sig { returns(OpenAI::Beta::Threads::MessageDeltaEvent) } attr_reader :data - sig { params(data: T.any(OpenAI::Models::Beta::Threads::MessageDeltaEvent, OpenAI::Internal::AnyHash)).void } + sig do + params(data: OpenAI::Beta::Threads::MessageDeltaEvent::OrHash).void + end attr_writer :data sig { returns(Symbol) } @@ -637,28 +905,37 @@ module OpenAI # being streamed. sig do params( - data: T.any(OpenAI::Models::Beta::Threads::MessageDeltaEvent, OpenAI::Internal::AnyHash), + data: OpenAI::Beta::Threads::MessageDeltaEvent::OrHash, event: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # Represents a message delta i.e. any changed fields on a message during # streaming. data:, event: :"thread.message.delta" - ); end - sig { override.returns({data: OpenAI::Models::Beta::Threads::MessageDeltaEvent, event: Symbol}) } - def to_hash; end + ) + end + + sig do + override.returns( + { data: OpenAI::Beta::Threads::MessageDeltaEvent, event: Symbol } + ) + end + def to_hash + end end class ThreadMessageCompleted < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Represents a message within a # [thread](https://platform.openai.com/docs/api-reference/threads). - sig { returns(OpenAI::Models::Beta::Threads::Message) } + sig { returns(OpenAI::Beta::Threads::Message) } attr_reader :data - sig { params(data: T.any(OpenAI::Models::Beta::Threads::Message, OpenAI::Internal::AnyHash)).void } + sig { params(data: OpenAI::Beta::Threads::Message::OrHash).void } attr_writer :data sig { returns(Symbol) } @@ -668,26 +945,38 @@ module OpenAI # [message](https://platform.openai.com/docs/api-reference/messages/object) is # completed. sig do - params(data: T.any(OpenAI::Models::Beta::Threads::Message, OpenAI::Internal::AnyHash), event: Symbol) - .returns(T.attached_class) + params( + data: OpenAI::Beta::Threads::Message::OrHash, + event: Symbol + ).returns(T.attached_class) end def self.new( # Represents a message within a # [thread](https://platform.openai.com/docs/api-reference/threads). data:, event: :"thread.message.completed" - ); end - sig { override.returns({data: OpenAI::Models::Beta::Threads::Message, event: Symbol}) } - def to_hash; end + ) + end + + sig do + override.returns( + { data: OpenAI::Beta::Threads::Message, event: Symbol } + ) + end + def to_hash + end end class ThreadMessageIncomplete < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Represents a message within a # [thread](https://platform.openai.com/docs/api-reference/threads). - sig { returns(OpenAI::Models::Beta::Threads::Message) } + sig { returns(OpenAI::Beta::Threads::Message) } attr_reader :data - sig { params(data: T.any(OpenAI::Models::Beta::Threads::Message, OpenAI::Internal::AnyHash)).void } + sig { params(data: OpenAI::Beta::Threads::Message::OrHash).void } attr_writer :data sig { returns(Symbol) } @@ -697,24 +986,36 @@ module OpenAI # [message](https://platform.openai.com/docs/api-reference/messages/object) ends # before it is completed. sig do - params(data: T.any(OpenAI::Models::Beta::Threads::Message, OpenAI::Internal::AnyHash), event: Symbol) - .returns(T.attached_class) + params( + data: OpenAI::Beta::Threads::Message::OrHash, + event: Symbol + ).returns(T.attached_class) end def self.new( # Represents a message within a # [thread](https://platform.openai.com/docs/api-reference/threads). data:, event: :"thread.message.incomplete" - ); end - sig { override.returns({data: OpenAI::Models::Beta::Threads::Message, event: Symbol}) } - def to_hash; end + ) + end + + sig do + override.returns( + { data: OpenAI::Beta::Threads::Message, event: Symbol } + ) + end + def to_hash + end end class ErrorEvent < OpenAI::Internal::Type::BaseModel - sig { returns(OpenAI::Models::ErrorObject) } + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + + sig { returns(OpenAI::ErrorObject) } attr_reader :data - sig { params(data: T.any(OpenAI::Models::ErrorObject, OpenAI::Internal::AnyHash)).void } + sig { params(data: OpenAI::ErrorObject::OrHash).void } attr_writer :data sig { returns(Symbol) } @@ -724,22 +1025,25 @@ module OpenAI # [error](https://platform.openai.com/docs/guides/error-codes#api-errors) occurs. # This can happen due to an internal server error or a timeout. sig do - params(data: T.any(OpenAI::Models::ErrorObject, OpenAI::Internal::AnyHash), event: Symbol) - .returns(T.attached_class) + params(data: OpenAI::ErrorObject::OrHash, event: Symbol).returns( + T.attached_class + ) + end + def self.new(data:, event: :error) end - def self.new(data:, event: :error); end - sig { override.returns({data: OpenAI::Models::ErrorObject, event: Symbol}) } - def to_hash; end + sig { override.returns({ data: OpenAI::ErrorObject, event: Symbol }) } + def to_hash + end end sig do - override - .returns( - [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] - ) + override.returns( + T::Array[OpenAI::Beta::AssistantStreamEvent::Variants] + ) + end + def self.variants end - def self.variants; end end end end diff --git a/rbi/openai/models/beta/assistant_tool.rbi b/rbi/openai/models/beta/assistant_tool.rbi index b26fd5d8..84570448 100644 --- a/rbi/openai/models/beta/assistant_tool.rbi +++ b/rbi/openai/models/beta/assistant_tool.rbi @@ -6,13 +6,20 @@ module OpenAI module AssistantTool extend OpenAI::Internal::Type::Union - sig do - override - .returns( - [OpenAI::Models::Beta::CodeInterpreterTool, OpenAI::Models::Beta::FileSearchTool, OpenAI::Models::Beta::FunctionTool] + Variants = + T.type_alias do + T.any( + OpenAI::Beta::CodeInterpreterTool, + OpenAI::Beta::FileSearchTool, + OpenAI::Beta::FunctionTool ) + end + + sig do + override.returns(T::Array[OpenAI::Beta::AssistantTool::Variants]) + end + def self.variants end - def self.variants; end end end end diff --git a/rbi/openai/models/beta/assistant_tool_choice.rbi b/rbi/openai/models/beta/assistant_tool_choice.rbi index b8e37979..a018f2b0 100644 --- a/rbi/openai/models/beta/assistant_tool_choice.rbi +++ b/rbi/openai/models/beta/assistant_tool_choice.rbi @@ -4,55 +4,81 @@ module OpenAI module Models module Beta class AssistantToolChoice < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The type of the tool. If type is `function`, the function name must be set - sig { returns(OpenAI::Models::Beta::AssistantToolChoice::Type::OrSymbol) } + sig { returns(OpenAI::Beta::AssistantToolChoice::Type::OrSymbol) } attr_accessor :type - sig { returns(T.nilable(OpenAI::Models::Beta::AssistantToolChoiceFunction)) } + sig { returns(T.nilable(OpenAI::Beta::AssistantToolChoiceFunction)) } attr_reader :function - sig { params(function: T.any(OpenAI::Models::Beta::AssistantToolChoiceFunction, OpenAI::Internal::AnyHash)).void } + sig do + params( + function: OpenAI::Beta::AssistantToolChoiceFunction::OrHash + ).void + end attr_writer :function # Specifies a tool the model should use. Use to force the model to call a specific # tool. sig do params( - type: OpenAI::Models::Beta::AssistantToolChoice::Type::OrSymbol, - function: T.any(OpenAI::Models::Beta::AssistantToolChoiceFunction, OpenAI::Internal::AnyHash) - ) - .returns(T.attached_class) + type: OpenAI::Beta::AssistantToolChoice::Type::OrSymbol, + function: OpenAI::Beta::AssistantToolChoiceFunction::OrHash + ).returns(T.attached_class) end def self.new( # The type of the tool. If type is `function`, the function name must be set type:, function: nil - ); end + ) + end + sig do - override - .returns( - { - type: OpenAI::Models::Beta::AssistantToolChoice::Type::OrSymbol, - function: OpenAI::Models::Beta::AssistantToolChoiceFunction - } - ) + override.returns( + { + type: OpenAI::Beta::AssistantToolChoice::Type::OrSymbol, + function: OpenAI::Beta::AssistantToolChoiceFunction + } + ) + end + def to_hash end - def to_hash; end # The type of the tool. If type is `function`, the function name must be set module Type extend OpenAI::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::Beta::AssistantToolChoice::Type) } + TaggedSymbol = + T.type_alias do + T.all(Symbol, OpenAI::Beta::AssistantToolChoice::Type) + end OrSymbol = T.type_alias { T.any(Symbol, String) } - FUNCTION = T.let(:function, OpenAI::Models::Beta::AssistantToolChoice::Type::TaggedSymbol) + FUNCTION = + T.let( + :function, + OpenAI::Beta::AssistantToolChoice::Type::TaggedSymbol + ) CODE_INTERPRETER = - T.let(:code_interpreter, OpenAI::Models::Beta::AssistantToolChoice::Type::TaggedSymbol) - FILE_SEARCH = T.let(:file_search, OpenAI::Models::Beta::AssistantToolChoice::Type::TaggedSymbol) + T.let( + :code_interpreter, + OpenAI::Beta::AssistantToolChoice::Type::TaggedSymbol + ) + FILE_SEARCH = + T.let( + :file_search, + OpenAI::Beta::AssistantToolChoice::Type::TaggedSymbol + ) - sig { override.returns(T::Array[OpenAI::Models::Beta::AssistantToolChoice::Type::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[OpenAI::Beta::AssistantToolChoice::Type::TaggedSymbol] + ) + end + def self.values + end end end end diff --git a/rbi/openai/models/beta/assistant_tool_choice_function.rbi b/rbi/openai/models/beta/assistant_tool_choice_function.rbi index 4a88f071..3f18016b 100644 --- a/rbi/openai/models/beta/assistant_tool_choice_function.rbi +++ b/rbi/openai/models/beta/assistant_tool_choice_function.rbi @@ -4,6 +4,8 @@ module OpenAI module Models module Beta class AssistantToolChoiceFunction < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The name of the function to call. sig { returns(String) } attr_accessor :name @@ -12,9 +14,12 @@ module OpenAI def self.new( # The name of the function to call. name: - ); end - sig { override.returns({name: String}) } - def to_hash; end + ) + end + + sig { override.returns({ name: String }) } + def to_hash + end end end end diff --git a/rbi/openai/models/beta/assistant_tool_choice_option.rbi b/rbi/openai/models/beta/assistant_tool_choice_option.rbi index 51538b5e..823ebeb1 100644 --- a/rbi/openai/models/beta/assistant_tool_choice_option.rbi +++ b/rbi/openai/models/beta/assistant_tool_choice_option.rbi @@ -13,6 +13,14 @@ module OpenAI module AssistantToolChoiceOption extend OpenAI::Internal::Type::Union + Variants = + T.type_alias do + T.any( + OpenAI::Beta::AssistantToolChoiceOption::Auto::TaggedSymbol, + OpenAI::Beta::AssistantToolChoice + ) + end + # `none` means the model will not call any tools and instead generates a message. # `auto` means the model can pick between generating a message or calling one or # more tools. `required` means the model must call one or more tools before @@ -20,24 +28,46 @@ module OpenAI module Auto extend OpenAI::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::Beta::AssistantToolChoiceOption::Auto) } + TaggedSymbol = + T.type_alias do + T.all(Symbol, OpenAI::Beta::AssistantToolChoiceOption::Auto) + end OrSymbol = T.type_alias { T.any(Symbol, String) } - NONE = T.let(:none, OpenAI::Models::Beta::AssistantToolChoiceOption::Auto::TaggedSymbol) - AUTO = T.let(:auto, OpenAI::Models::Beta::AssistantToolChoiceOption::Auto::TaggedSymbol) - REQUIRED = T.let(:required, OpenAI::Models::Beta::AssistantToolChoiceOption::Auto::TaggedSymbol) + NONE = + T.let( + :none, + OpenAI::Beta::AssistantToolChoiceOption::Auto::TaggedSymbol + ) + AUTO = + T.let( + :auto, + OpenAI::Beta::AssistantToolChoiceOption::Auto::TaggedSymbol + ) + REQUIRED = + T.let( + :required, + OpenAI::Beta::AssistantToolChoiceOption::Auto::TaggedSymbol + ) - sig { override.returns(T::Array[OpenAI::Models::Beta::AssistantToolChoiceOption::Auto::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[ + OpenAI::Beta::AssistantToolChoiceOption::Auto::TaggedSymbol + ] + ) + end + def self.values + end end sig do - override - .returns( - [OpenAI::Models::Beta::AssistantToolChoiceOption::Auto::TaggedSymbol, OpenAI::Models::Beta::AssistantToolChoice] - ) + override.returns( + T::Array[OpenAI::Beta::AssistantToolChoiceOption::Variants] + ) + end + def self.variants end - def self.variants; end end end end diff --git a/rbi/openai/models/beta/assistant_update_params.rbi b/rbi/openai/models/beta/assistant_update_params.rbi index 29f452a9..27dbf4a1 100644 --- a/rbi/openai/models/beta/assistant_update_params.rbi +++ b/rbi/openai/models/beta/assistant_update_params.rbi @@ -7,6 +7,8 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The description of the assistant. The maximum length is 512 characters. sig { returns(T.nilable(String)) } attr_accessor :description @@ -30,10 +32,27 @@ module OpenAI # see all of your available models, or see our # [Model overview](https://platform.openai.com/docs/models) for descriptions of # them. - sig { returns(T.nilable(T.any(String, OpenAI::Models::Beta::AssistantUpdateParams::Model::OrSymbol))) } + sig do + returns( + T.nilable( + T.any( + String, + OpenAI::Beta::AssistantUpdateParams::Model::OrSymbol + ) + ) + ) + end attr_reader :model - sig { params(model: T.any(String, OpenAI::Models::Beta::AssistantUpdateParams::Model::OrSymbol)).void } + sig do + params( + model: + T.any( + String, + OpenAI::Beta::AssistantUpdateParams::Model::OrSymbol + ) + ).void + end attr_writer :model # The name of the assistant. The maximum length is 256 characters. @@ -46,7 +65,7 @@ module OpenAI # [reasoning models](https://platform.openai.com/docs/guides/reasoning). Currently # supported values are `low`, `medium`, and `high`. Reducing reasoning effort can # result in faster responses and fewer tokens used on reasoning in a response. - sig { returns(T.nilable(OpenAI::Models::ReasoningEffort::OrSymbol)) } + sig { returns(T.nilable(OpenAI::ReasoningEffort::OrSymbol)) } attr_accessor :reasoning_effort # Specifies the format that the model must output. Compatible with @@ -74,9 +93,9 @@ module OpenAI T.nilable( T.any( Symbol, - OpenAI::Models::ResponseFormatText, - OpenAI::Models::ResponseFormatJSONObject, - OpenAI::Models::ResponseFormatJSONSchema + OpenAI::ResponseFormatText, + OpenAI::ResponseFormatJSONObject, + OpenAI::ResponseFormatJSONSchema ) ) ) @@ -93,14 +112,18 @@ module OpenAI # 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. - sig { returns(T.nilable(OpenAI::Models::Beta::AssistantUpdateParams::ToolResources)) } + sig do + returns(T.nilable(OpenAI::Beta::AssistantUpdateParams::ToolResources)) + end attr_reader :tool_resources sig do params( - tool_resources: T.nilable(T.any(OpenAI::Models::Beta::AssistantUpdateParams::ToolResources, OpenAI::Internal::AnyHash)) - ) - .void + tool_resources: + T.nilable( + OpenAI::Beta::AssistantUpdateParams::ToolResources::OrHash + ) + ).void end attr_writer :tool_resources @@ -112,9 +135,9 @@ module OpenAI T.nilable( T::Array[ T.any( - OpenAI::Models::Beta::CodeInterpreterTool, - OpenAI::Models::Beta::FileSearchTool, - OpenAI::Models::Beta::FunctionTool + OpenAI::Beta::CodeInterpreterTool, + OpenAI::Beta::FileSearchTool, + OpenAI::Beta::FunctionTool ) ] ) @@ -124,16 +147,15 @@ module OpenAI sig do params( - tools: T::Array[ - T.any( - OpenAI::Models::Beta::CodeInterpreterTool, - OpenAI::Internal::AnyHash, - OpenAI::Models::Beta::FileSearchTool, - OpenAI::Models::Beta::FunctionTool - ) - ] - ) - .void + tools: + T::Array[ + T.any( + OpenAI::Beta::CodeInterpreterTool::OrHash, + OpenAI::Beta::FileSearchTool::OrHash, + OpenAI::Beta::FunctionTool::OrHash + ) + ] + ).void end attr_writer :tools @@ -150,32 +172,38 @@ module OpenAI description: T.nilable(String), instructions: T.nilable(String), metadata: T.nilable(T::Hash[Symbol, String]), - model: T.any(String, OpenAI::Models::Beta::AssistantUpdateParams::Model::OrSymbol), - name: T.nilable(String), - reasoning_effort: T.nilable(OpenAI::Models::ReasoningEffort::OrSymbol), - response_format: T.nilable( + model: T.any( - Symbol, - OpenAI::Models::ResponseFormatText, - OpenAI::Internal::AnyHash, - OpenAI::Models::ResponseFormatJSONObject, - OpenAI::Models::ResponseFormatJSONSchema - ) - ), + String, + OpenAI::Beta::AssistantUpdateParams::Model::OrSymbol + ), + name: T.nilable(String), + reasoning_effort: T.nilable(OpenAI::ReasoningEffort::OrSymbol), + response_format: + T.nilable( + T.any( + Symbol, + OpenAI::ResponseFormatText::OrHash, + OpenAI::ResponseFormatJSONObject::OrHash, + OpenAI::ResponseFormatJSONSchema::OrHash + ) + ), temperature: T.nilable(Float), - tool_resources: T.nilable(T.any(OpenAI::Models::Beta::AssistantUpdateParams::ToolResources, OpenAI::Internal::AnyHash)), - tools: T::Array[ - T.any( - OpenAI::Models::Beta::CodeInterpreterTool, - OpenAI::Internal::AnyHash, - OpenAI::Models::Beta::FileSearchTool, - OpenAI::Models::Beta::FunctionTool - ) - ], + tool_resources: + T.nilable( + OpenAI::Beta::AssistantUpdateParams::ToolResources::OrHash + ), + tools: + T::Array[ + T.any( + OpenAI::Beta::CodeInterpreterTool::OrHash, + OpenAI::Beta::FileSearchTool::OrHash, + OpenAI::Beta::FunctionTool::OrHash + ) + ], top_p: T.nilable(Float), - request_options: T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash) - ) - .returns(T.attached_class) + request_options: OpenAI::RequestOptions::OrHash + ).returns(T.attached_class) end def self.new( # The description of the assistant. The maximum length is 512 characters. @@ -246,40 +274,49 @@ module OpenAI # We generally recommend altering this or temperature but not both. top_p: nil, request_options: {} - ); end + ) + end + sig do - override - .returns( - { - description: T.nilable(String), - instructions: T.nilable(String), - metadata: T.nilable(T::Hash[Symbol, String]), - model: T.any(String, OpenAI::Models::Beta::AssistantUpdateParams::Model::OrSymbol), - name: T.nilable(String), - reasoning_effort: T.nilable(OpenAI::Models::ReasoningEffort::OrSymbol), - response_format: T.nilable( + override.returns( + { + description: T.nilable(String), + instructions: T.nilable(String), + metadata: T.nilable(T::Hash[Symbol, String]), + model: + T.any( + String, + OpenAI::Beta::AssistantUpdateParams::Model::OrSymbol + ), + name: T.nilable(String), + reasoning_effort: T.nilable(OpenAI::ReasoningEffort::OrSymbol), + response_format: + T.nilable( T.any( Symbol, - OpenAI::Models::ResponseFormatText, - OpenAI::Models::ResponseFormatJSONObject, - OpenAI::Models::ResponseFormatJSONSchema + OpenAI::ResponseFormatText, + OpenAI::ResponseFormatJSONObject, + OpenAI::ResponseFormatJSONSchema ) ), - temperature: T.nilable(Float), - tool_resources: T.nilable(OpenAI::Models::Beta::AssistantUpdateParams::ToolResources), - tools: T::Array[ + temperature: T.nilable(Float), + tool_resources: + T.nilable(OpenAI::Beta::AssistantUpdateParams::ToolResources), + tools: + T::Array[ T.any( - OpenAI::Models::Beta::CodeInterpreterTool, - OpenAI::Models::Beta::FileSearchTool, - OpenAI::Models::Beta::FunctionTool + OpenAI::Beta::CodeInterpreterTool, + OpenAI::Beta::FileSearchTool, + OpenAI::Beta::FunctionTool ) ], - top_p: T.nilable(Float), - request_options: OpenAI::RequestOptions - } - ) + top_p: T.nilable(Float), + request_options: OpenAI::RequestOptions + } + ) + end + def to_hash end - def to_hash; end # ID of the model to use. You can use the # [List models](https://platform.openai.com/docs/api-reference/models/list) API to @@ -289,95 +326,242 @@ module OpenAI module Model extend OpenAI::Internal::Type::Union - sig { override.returns([String, OpenAI::Models::Beta::AssistantUpdateParams::Model::TaggedSymbol]) } - def self.variants; end + Variants = + T.type_alias do + T.any( + String, + OpenAI::Beta::AssistantUpdateParams::Model::TaggedSymbol + ) + end + + sig do + override.returns( + T::Array[OpenAI::Beta::AssistantUpdateParams::Model::Variants] + ) + end + def self.variants + end - TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::Beta::AssistantUpdateParams::Model) } + TaggedSymbol = + T.type_alias do + T.all(Symbol, OpenAI::Beta::AssistantUpdateParams::Model) + end OrSymbol = T.type_alias { T.any(Symbol, String) } - GPT_4_1 = T.let(:"gpt-4.1", OpenAI::Models::Beta::AssistantUpdateParams::Model::TaggedSymbol) - GPT_4_1_MINI = T.let(:"gpt-4.1-mini", OpenAI::Models::Beta::AssistantUpdateParams::Model::TaggedSymbol) - GPT_4_1_NANO = T.let(:"gpt-4.1-nano", OpenAI::Models::Beta::AssistantUpdateParams::Model::TaggedSymbol) + GPT_4_1 = + T.let( + :"gpt-4.1", + OpenAI::Beta::AssistantUpdateParams::Model::TaggedSymbol + ) + GPT_4_1_MINI = + T.let( + :"gpt-4.1-mini", + OpenAI::Beta::AssistantUpdateParams::Model::TaggedSymbol + ) + GPT_4_1_NANO = + T.let( + :"gpt-4.1-nano", + OpenAI::Beta::AssistantUpdateParams::Model::TaggedSymbol + ) GPT_4_1_2025_04_14 = - T.let(:"gpt-4.1-2025-04-14", OpenAI::Models::Beta::AssistantUpdateParams::Model::TaggedSymbol) + T.let( + :"gpt-4.1-2025-04-14", + OpenAI::Beta::AssistantUpdateParams::Model::TaggedSymbol + ) GPT_4_1_MINI_2025_04_14 = - T.let(:"gpt-4.1-mini-2025-04-14", OpenAI::Models::Beta::AssistantUpdateParams::Model::TaggedSymbol) + T.let( + :"gpt-4.1-mini-2025-04-14", + OpenAI::Beta::AssistantUpdateParams::Model::TaggedSymbol + ) GPT_4_1_NANO_2025_04_14 = - T.let(:"gpt-4.1-nano-2025-04-14", OpenAI::Models::Beta::AssistantUpdateParams::Model::TaggedSymbol) - O3_MINI = T.let(:"o3-mini", OpenAI::Models::Beta::AssistantUpdateParams::Model::TaggedSymbol) + T.let( + :"gpt-4.1-nano-2025-04-14", + OpenAI::Beta::AssistantUpdateParams::Model::TaggedSymbol + ) + O3_MINI = + T.let( + :"o3-mini", + OpenAI::Beta::AssistantUpdateParams::Model::TaggedSymbol + ) O3_MINI_2025_01_31 = - T.let(:"o3-mini-2025-01-31", OpenAI::Models::Beta::AssistantUpdateParams::Model::TaggedSymbol) - O1 = T.let(:o1, OpenAI::Models::Beta::AssistantUpdateParams::Model::TaggedSymbol) - O1_2024_12_17 = T.let(:"o1-2024-12-17", OpenAI::Models::Beta::AssistantUpdateParams::Model::TaggedSymbol) - GPT_4O = T.let(:"gpt-4o", OpenAI::Models::Beta::AssistantUpdateParams::Model::TaggedSymbol) + T.let( + :"o3-mini-2025-01-31", + OpenAI::Beta::AssistantUpdateParams::Model::TaggedSymbol + ) + O1 = + T.let(:o1, OpenAI::Beta::AssistantUpdateParams::Model::TaggedSymbol) + O1_2024_12_17 = + T.let( + :"o1-2024-12-17", + OpenAI::Beta::AssistantUpdateParams::Model::TaggedSymbol + ) + GPT_4O = + T.let( + :"gpt-4o", + OpenAI::Beta::AssistantUpdateParams::Model::TaggedSymbol + ) GPT_4O_2024_11_20 = - T.let(:"gpt-4o-2024-11-20", OpenAI::Models::Beta::AssistantUpdateParams::Model::TaggedSymbol) + T.let( + :"gpt-4o-2024-11-20", + OpenAI::Beta::AssistantUpdateParams::Model::TaggedSymbol + ) GPT_4O_2024_08_06 = - T.let(:"gpt-4o-2024-08-06", OpenAI::Models::Beta::AssistantUpdateParams::Model::TaggedSymbol) + T.let( + :"gpt-4o-2024-08-06", + OpenAI::Beta::AssistantUpdateParams::Model::TaggedSymbol + ) GPT_4O_2024_05_13 = - T.let(:"gpt-4o-2024-05-13", OpenAI::Models::Beta::AssistantUpdateParams::Model::TaggedSymbol) - GPT_4O_MINI = T.let(:"gpt-4o-mini", OpenAI::Models::Beta::AssistantUpdateParams::Model::TaggedSymbol) + T.let( + :"gpt-4o-2024-05-13", + OpenAI::Beta::AssistantUpdateParams::Model::TaggedSymbol + ) + GPT_4O_MINI = + T.let( + :"gpt-4o-mini", + OpenAI::Beta::AssistantUpdateParams::Model::TaggedSymbol + ) GPT_4O_MINI_2024_07_18 = - T.let(:"gpt-4o-mini-2024-07-18", OpenAI::Models::Beta::AssistantUpdateParams::Model::TaggedSymbol) + T.let( + :"gpt-4o-mini-2024-07-18", + OpenAI::Beta::AssistantUpdateParams::Model::TaggedSymbol + ) GPT_4_5_PREVIEW = - T.let(:"gpt-4.5-preview", OpenAI::Models::Beta::AssistantUpdateParams::Model::TaggedSymbol) + T.let( + :"gpt-4.5-preview", + OpenAI::Beta::AssistantUpdateParams::Model::TaggedSymbol + ) GPT_4_5_PREVIEW_2025_02_27 = - T.let(:"gpt-4.5-preview-2025-02-27", OpenAI::Models::Beta::AssistantUpdateParams::Model::TaggedSymbol) - GPT_4_TURBO = T.let(:"gpt-4-turbo", OpenAI::Models::Beta::AssistantUpdateParams::Model::TaggedSymbol) + T.let( + :"gpt-4.5-preview-2025-02-27", + OpenAI::Beta::AssistantUpdateParams::Model::TaggedSymbol + ) + GPT_4_TURBO = + T.let( + :"gpt-4-turbo", + OpenAI::Beta::AssistantUpdateParams::Model::TaggedSymbol + ) GPT_4_TURBO_2024_04_09 = - T.let(:"gpt-4-turbo-2024-04-09", OpenAI::Models::Beta::AssistantUpdateParams::Model::TaggedSymbol) + T.let( + :"gpt-4-turbo-2024-04-09", + OpenAI::Beta::AssistantUpdateParams::Model::TaggedSymbol + ) GPT_4_0125_PREVIEW = - T.let(:"gpt-4-0125-preview", OpenAI::Models::Beta::AssistantUpdateParams::Model::TaggedSymbol) + T.let( + :"gpt-4-0125-preview", + OpenAI::Beta::AssistantUpdateParams::Model::TaggedSymbol + ) GPT_4_TURBO_PREVIEW = - T.let(:"gpt-4-turbo-preview", OpenAI::Models::Beta::AssistantUpdateParams::Model::TaggedSymbol) + T.let( + :"gpt-4-turbo-preview", + OpenAI::Beta::AssistantUpdateParams::Model::TaggedSymbol + ) GPT_4_1106_PREVIEW = - T.let(:"gpt-4-1106-preview", OpenAI::Models::Beta::AssistantUpdateParams::Model::TaggedSymbol) + T.let( + :"gpt-4-1106-preview", + OpenAI::Beta::AssistantUpdateParams::Model::TaggedSymbol + ) GPT_4_VISION_PREVIEW = - T.let(:"gpt-4-vision-preview", OpenAI::Models::Beta::AssistantUpdateParams::Model::TaggedSymbol) - GPT_4 = T.let(:"gpt-4", OpenAI::Models::Beta::AssistantUpdateParams::Model::TaggedSymbol) - GPT_4_0314 = T.let(:"gpt-4-0314", OpenAI::Models::Beta::AssistantUpdateParams::Model::TaggedSymbol) - GPT_4_0613 = T.let(:"gpt-4-0613", OpenAI::Models::Beta::AssistantUpdateParams::Model::TaggedSymbol) - GPT_4_32K = T.let(:"gpt-4-32k", OpenAI::Models::Beta::AssistantUpdateParams::Model::TaggedSymbol) + T.let( + :"gpt-4-vision-preview", + OpenAI::Beta::AssistantUpdateParams::Model::TaggedSymbol + ) + GPT_4 = + T.let( + :"gpt-4", + OpenAI::Beta::AssistantUpdateParams::Model::TaggedSymbol + ) + GPT_4_0314 = + T.let( + :"gpt-4-0314", + OpenAI::Beta::AssistantUpdateParams::Model::TaggedSymbol + ) + GPT_4_0613 = + T.let( + :"gpt-4-0613", + OpenAI::Beta::AssistantUpdateParams::Model::TaggedSymbol + ) + GPT_4_32K = + T.let( + :"gpt-4-32k", + OpenAI::Beta::AssistantUpdateParams::Model::TaggedSymbol + ) GPT_4_32K_0314 = - T.let(:"gpt-4-32k-0314", OpenAI::Models::Beta::AssistantUpdateParams::Model::TaggedSymbol) + T.let( + :"gpt-4-32k-0314", + OpenAI::Beta::AssistantUpdateParams::Model::TaggedSymbol + ) GPT_4_32K_0613 = - T.let(:"gpt-4-32k-0613", OpenAI::Models::Beta::AssistantUpdateParams::Model::TaggedSymbol) - GPT_3_5_TURBO = T.let(:"gpt-3.5-turbo", OpenAI::Models::Beta::AssistantUpdateParams::Model::TaggedSymbol) + T.let( + :"gpt-4-32k-0613", + OpenAI::Beta::AssistantUpdateParams::Model::TaggedSymbol + ) + GPT_3_5_TURBO = + T.let( + :"gpt-3.5-turbo", + OpenAI::Beta::AssistantUpdateParams::Model::TaggedSymbol + ) GPT_3_5_TURBO_16K = - T.let(:"gpt-3.5-turbo-16k", OpenAI::Models::Beta::AssistantUpdateParams::Model::TaggedSymbol) + T.let( + :"gpt-3.5-turbo-16k", + OpenAI::Beta::AssistantUpdateParams::Model::TaggedSymbol + ) GPT_3_5_TURBO_0613 = - T.let(:"gpt-3.5-turbo-0613", OpenAI::Models::Beta::AssistantUpdateParams::Model::TaggedSymbol) + T.let( + :"gpt-3.5-turbo-0613", + OpenAI::Beta::AssistantUpdateParams::Model::TaggedSymbol + ) GPT_3_5_TURBO_1106 = - T.let(:"gpt-3.5-turbo-1106", OpenAI::Models::Beta::AssistantUpdateParams::Model::TaggedSymbol) + T.let( + :"gpt-3.5-turbo-1106", + OpenAI::Beta::AssistantUpdateParams::Model::TaggedSymbol + ) GPT_3_5_TURBO_0125 = - T.let(:"gpt-3.5-turbo-0125", OpenAI::Models::Beta::AssistantUpdateParams::Model::TaggedSymbol) + T.let( + :"gpt-3.5-turbo-0125", + OpenAI::Beta::AssistantUpdateParams::Model::TaggedSymbol + ) GPT_3_5_TURBO_16K_0613 = - T.let(:"gpt-3.5-turbo-16k-0613", OpenAI::Models::Beta::AssistantUpdateParams::Model::TaggedSymbol) + T.let( + :"gpt-3.5-turbo-16k-0613", + OpenAI::Beta::AssistantUpdateParams::Model::TaggedSymbol + ) end class ToolResources < OpenAI::Internal::Type::BaseModel - sig { returns(T.nilable(OpenAI::Models::Beta::AssistantUpdateParams::ToolResources::CodeInterpreter)) } - attr_reader :code_interpreter + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } sig do - params( - code_interpreter: T.any( - OpenAI::Models::Beta::AssistantUpdateParams::ToolResources::CodeInterpreter, - OpenAI::Internal::AnyHash + returns( + T.nilable( + OpenAI::Beta::AssistantUpdateParams::ToolResources::CodeInterpreter ) ) - .void + end + attr_reader :code_interpreter + + sig do + params( + code_interpreter: + OpenAI::Beta::AssistantUpdateParams::ToolResources::CodeInterpreter::OrHash + ).void end attr_writer :code_interpreter - sig { returns(T.nilable(OpenAI::Models::Beta::AssistantUpdateParams::ToolResources::FileSearch)) } + sig do + returns( + T.nilable( + OpenAI::Beta::AssistantUpdateParams::ToolResources::FileSearch + ) + ) + end attr_reader :file_search sig do params( - file_search: T.any(OpenAI::Models::Beta::AssistantUpdateParams::ToolResources::FileSearch, OpenAI::Internal::AnyHash) - ) - .void + file_search: + OpenAI::Beta::AssistantUpdateParams::ToolResources::FileSearch::OrHash + ).void end attr_writer :file_search @@ -387,28 +571,32 @@ module OpenAI # IDs. sig do params( - code_interpreter: T.any( - OpenAI::Models::Beta::AssistantUpdateParams::ToolResources::CodeInterpreter, - OpenAI::Internal::AnyHash - ), - file_search: T.any(OpenAI::Models::Beta::AssistantUpdateParams::ToolResources::FileSearch, OpenAI::Internal::AnyHash) - ) - .returns(T.attached_class) + code_interpreter: + OpenAI::Beta::AssistantUpdateParams::ToolResources::CodeInterpreter::OrHash, + file_search: + OpenAI::Beta::AssistantUpdateParams::ToolResources::FileSearch::OrHash + ).returns(T.attached_class) + end + def self.new(code_interpreter: nil, file_search: nil) end - def self.new(code_interpreter: nil, file_search: nil); end sig do - override - .returns( - { - code_interpreter: OpenAI::Models::Beta::AssistantUpdateParams::ToolResources::CodeInterpreter, - file_search: OpenAI::Models::Beta::AssistantUpdateParams::ToolResources::FileSearch - } - ) + override.returns( + { + code_interpreter: + OpenAI::Beta::AssistantUpdateParams::ToolResources::CodeInterpreter, + file_search: + OpenAI::Beta::AssistantUpdateParams::ToolResources::FileSearch + } + ) + end + def to_hash end - def to_hash; end class CodeInterpreter < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Overrides the list of # [file](https://platform.openai.com/docs/api-reference/files) IDs made available # to the `code_interpreter` tool. There can be a maximum of 20 files associated @@ -426,12 +614,18 @@ module OpenAI # to the `code_interpreter` tool. There can be a maximum of 20 files associated # with the tool. file_ids: nil - ); end - sig { override.returns({file_ids: T::Array[String]}) } - def to_hash; end + ) + end + + sig { override.returns({ file_ids: T::Array[String] }) } + def to_hash + end end class FileSearch < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Overrides the # [vector store](https://platform.openai.com/docs/api-reference/vector-stores/object) # attached to this assistant. There can be a maximum of 1 vector store attached to @@ -442,16 +636,23 @@ module OpenAI sig { params(vector_store_ids: T::Array[String]).void } attr_writer :vector_store_ids - sig { params(vector_store_ids: T::Array[String]).returns(T.attached_class) } + sig do + params(vector_store_ids: T::Array[String]).returns( + T.attached_class + ) + end def self.new( # Overrides the # [vector store](https://platform.openai.com/docs/api-reference/vector-stores/object) # attached to this assistant. There can be a maximum of 1 vector store attached to # the assistant. vector_store_ids: nil - ); end - sig { override.returns({vector_store_ids: T::Array[String]}) } - def to_hash; end + ) + end + + sig { override.returns({ vector_store_ids: T::Array[String] }) } + def to_hash + end end end end diff --git a/rbi/openai/models/beta/code_interpreter_tool.rbi b/rbi/openai/models/beta/code_interpreter_tool.rbi index d1ac9cc7..f9f7b8bb 100644 --- a/rbi/openai/models/beta/code_interpreter_tool.rbi +++ b/rbi/openai/models/beta/code_interpreter_tool.rbi @@ -4,6 +4,8 @@ module OpenAI module Models module Beta class CodeInterpreterTool < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The type of tool being defined: `code_interpreter` sig { returns(Symbol) } attr_accessor :type @@ -12,9 +14,12 @@ module OpenAI def self.new( # The type of tool being defined: `code_interpreter` type: :code_interpreter - ); end - sig { override.returns({type: Symbol}) } - def to_hash; end + ) + end + + sig { override.returns({ type: Symbol }) } + def to_hash + end end end end diff --git a/rbi/openai/models/beta/file_search_tool.rbi b/rbi/openai/models/beta/file_search_tool.rbi index e2c738a3..d2442c3f 100644 --- a/rbi/openai/models/beta/file_search_tool.rbi +++ b/rbi/openai/models/beta/file_search_tool.rbi @@ -4,37 +4,52 @@ module OpenAI module Models module Beta class FileSearchTool < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The type of tool being defined: `file_search` sig { returns(Symbol) } attr_accessor :type # Overrides for the file search tool. - sig { returns(T.nilable(OpenAI::Models::Beta::FileSearchTool::FileSearch)) } + sig { returns(T.nilable(OpenAI::Beta::FileSearchTool::FileSearch)) } attr_reader :file_search sig do - params(file_search: T.any(OpenAI::Models::Beta::FileSearchTool::FileSearch, OpenAI::Internal::AnyHash)) - .void + params( + file_search: OpenAI::Beta::FileSearchTool::FileSearch::OrHash + ).void end attr_writer :file_search sig do params( - file_search: T.any(OpenAI::Models::Beta::FileSearchTool::FileSearch, OpenAI::Internal::AnyHash), + file_search: OpenAI::Beta::FileSearchTool::FileSearch::OrHash, type: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # Overrides for the file search tool. file_search: nil, # The type of tool being defined: `file_search` type: :file_search - ); end - sig { override.returns({type: Symbol, file_search: OpenAI::Models::Beta::FileSearchTool::FileSearch}) } - def to_hash; end + ) + end + + sig do + override.returns( + { + type: Symbol, + file_search: OpenAI::Beta::FileSearchTool::FileSearch + } + ) + end + def to_hash + end class FileSearch < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The maximum number of results the file search tool should output. The default is # 20 for `gpt-4*` models and 5 for `gpt-3.5-turbo`. This number should be between # 1 and 50 inclusive. @@ -55,14 +70,20 @@ module OpenAI # See the # [file search tool documentation](https://platform.openai.com/docs/assistants/tools/file-search#customizing-file-search-settings) # for more information. - sig { returns(T.nilable(OpenAI::Models::Beta::FileSearchTool::FileSearch::RankingOptions)) } + sig do + returns( + T.nilable( + OpenAI::Beta::FileSearchTool::FileSearch::RankingOptions + ) + ) + end attr_reader :ranking_options sig do params( - ranking_options: T.any(OpenAI::Models::Beta::FileSearchTool::FileSearch::RankingOptions, OpenAI::Internal::AnyHash) - ) - .void + ranking_options: + OpenAI::Beta::FileSearchTool::FileSearch::RankingOptions::OrHash + ).void end attr_writer :ranking_options @@ -70,9 +91,9 @@ module OpenAI sig do params( max_num_results: Integer, - ranking_options: T.any(OpenAI::Models::Beta::FileSearchTool::FileSearch::RankingOptions, OpenAI::Internal::AnyHash) - ) - .returns(T.attached_class) + ranking_options: + OpenAI::Beta::FileSearchTool::FileSearch::RankingOptions::OrHash + ).returns(T.attached_class) end def self.new( # The maximum number of results the file search tool should output. The default is @@ -91,16 +112,25 @@ module OpenAI # [file search tool documentation](https://platform.openai.com/docs/assistants/tools/file-search#customizing-file-search-settings) # for more information. ranking_options: nil - ); end + ) + end + sig do - override - .returns( - {max_num_results: Integer, ranking_options: OpenAI::Models::Beta::FileSearchTool::FileSearch::RankingOptions} - ) + override.returns( + { + max_num_results: Integer, + ranking_options: + OpenAI::Beta::FileSearchTool::FileSearch::RankingOptions + } + ) + end + def to_hash end - def to_hash; end class RankingOptions < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The score threshold for the file search. All values must be a floating point # number between 0 and 1. sig { returns(Float) } @@ -108,10 +138,21 @@ module OpenAI # The ranker to use for the file search. If not specified will use the `auto` # ranker. - sig { returns(T.nilable(OpenAI::Models::Beta::FileSearchTool::FileSearch::RankingOptions::Ranker::OrSymbol)) } + sig do + returns( + T.nilable( + OpenAI::Beta::FileSearchTool::FileSearch::RankingOptions::Ranker::OrSymbol + ) + ) + end attr_reader :ranker - sig { params(ranker: OpenAI::Models::Beta::FileSearchTool::FileSearch::RankingOptions::Ranker::OrSymbol).void } + sig do + params( + ranker: + OpenAI::Beta::FileSearchTool::FileSearch::RankingOptions::Ranker::OrSymbol + ).void + end attr_writer :ranker # The ranking options for the file search. If not specified, the file search tool @@ -123,9 +164,9 @@ module OpenAI sig do params( score_threshold: Float, - ranker: OpenAI::Models::Beta::FileSearchTool::FileSearch::RankingOptions::Ranker::OrSymbol - ) - .returns(T.attached_class) + ranker: + OpenAI::Beta::FileSearchTool::FileSearch::RankingOptions::Ranker::OrSymbol + ).returns(T.attached_class) end def self.new( # The score threshold for the file search. All values must be a floating point @@ -134,17 +175,20 @@ module OpenAI # The ranker to use for the file search. If not specified will use the `auto` # ranker. ranker: nil - ); end + ) + end + sig do - override - .returns( - { - score_threshold: Float, - ranker: OpenAI::Models::Beta::FileSearchTool::FileSearch::RankingOptions::Ranker::OrSymbol - } - ) + override.returns( + { + score_threshold: Float, + ranker: + OpenAI::Beta::FileSearchTool::FileSearch::RankingOptions::Ranker::OrSymbol + } + ) + end + def to_hash end - def to_hash; end # The ranker to use for the file search. If not specified will use the `auto` # ranker. @@ -152,22 +196,34 @@ module OpenAI extend OpenAI::Internal::Type::Enum TaggedSymbol = - T.type_alias { T.all(Symbol, OpenAI::Models::Beta::FileSearchTool::FileSearch::RankingOptions::Ranker) } + T.type_alias do + T.all( + Symbol, + OpenAI::Beta::FileSearchTool::FileSearch::RankingOptions::Ranker + ) + end OrSymbol = T.type_alias { T.any(Symbol, String) } AUTO = - T.let(:auto, OpenAI::Models::Beta::FileSearchTool::FileSearch::RankingOptions::Ranker::TaggedSymbol) + T.let( + :auto, + OpenAI::Beta::FileSearchTool::FileSearch::RankingOptions::Ranker::TaggedSymbol + ) DEFAULT_2024_08_21 = T.let( :default_2024_08_21, - OpenAI::Models::Beta::FileSearchTool::FileSearch::RankingOptions::Ranker::TaggedSymbol + OpenAI::Beta::FileSearchTool::FileSearch::RankingOptions::Ranker::TaggedSymbol ) sig do - override - .returns(T::Array[OpenAI::Models::Beta::FileSearchTool::FileSearch::RankingOptions::Ranker::TaggedSymbol]) + override.returns( + T::Array[ + OpenAI::Beta::FileSearchTool::FileSearch::RankingOptions::Ranker::TaggedSymbol + ] + ) + end + def self.values end - def self.values; end end end end diff --git a/rbi/openai/models/beta/function_tool.rbi b/rbi/openai/models/beta/function_tool.rbi index 5a914d6f..ad129493 100644 --- a/rbi/openai/models/beta/function_tool.rbi +++ b/rbi/openai/models/beta/function_tool.rbi @@ -4,10 +4,12 @@ module OpenAI module Models module Beta class FunctionTool < OpenAI::Internal::Type::BaseModel - sig { returns(OpenAI::Models::FunctionDefinition) } + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + + sig { returns(OpenAI::FunctionDefinition) } attr_reader :function - sig { params(function: T.any(OpenAI::Models::FunctionDefinition, OpenAI::Internal::AnyHash)).void } + sig { params(function: OpenAI::FunctionDefinition::OrHash).void } attr_writer :function # The type of tool being defined: `function` @@ -15,16 +17,25 @@ module OpenAI attr_accessor :type sig do - params(function: T.any(OpenAI::Models::FunctionDefinition, OpenAI::Internal::AnyHash), type: Symbol) - .returns(T.attached_class) + params( + function: OpenAI::FunctionDefinition::OrHash, + type: Symbol + ).returns(T.attached_class) end def self.new( function:, # The type of tool being defined: `function` type: :function - ); end - sig { override.returns({function: OpenAI::Models::FunctionDefinition, type: Symbol}) } - def to_hash; end + ) + end + + sig do + override.returns( + { function: OpenAI::FunctionDefinition, type: Symbol } + ) + end + def to_hash + end end end end diff --git a/rbi/openai/models/beta/message_stream_event.rbi b/rbi/openai/models/beta/message_stream_event.rbi index ad322e59..562d10c2 100644 --- a/rbi/openai/models/beta/message_stream_event.rbi +++ b/rbi/openai/models/beta/message_stream_event.rbi @@ -9,13 +9,27 @@ module OpenAI module MessageStreamEvent extend OpenAI::Internal::Type::Union + Variants = + T.type_alias do + T.any( + OpenAI::Beta::MessageStreamEvent::ThreadMessageCreated, + OpenAI::Beta::MessageStreamEvent::ThreadMessageInProgress, + OpenAI::Beta::MessageStreamEvent::ThreadMessageDelta, + OpenAI::Beta::MessageStreamEvent::ThreadMessageCompleted, + OpenAI::Beta::MessageStreamEvent::ThreadMessageIncomplete + ) + end + class ThreadMessageCreated < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Represents a message within a # [thread](https://platform.openai.com/docs/api-reference/threads). - sig { returns(OpenAI::Models::Beta::Threads::Message) } + sig { returns(OpenAI::Beta::Threads::Message) } attr_reader :data - sig { params(data: T.any(OpenAI::Models::Beta::Threads::Message, OpenAI::Internal::AnyHash)).void } + sig { params(data: OpenAI::Beta::Threads::Message::OrHash).void } attr_writer :data sig { returns(Symbol) } @@ -25,26 +39,38 @@ module OpenAI # [message](https://platform.openai.com/docs/api-reference/messages/object) is # created. sig do - params(data: T.any(OpenAI::Models::Beta::Threads::Message, OpenAI::Internal::AnyHash), event: Symbol) - .returns(T.attached_class) + params( + data: OpenAI::Beta::Threads::Message::OrHash, + event: Symbol + ).returns(T.attached_class) end def self.new( # Represents a message within a # [thread](https://platform.openai.com/docs/api-reference/threads). data:, event: :"thread.message.created" - ); end - sig { override.returns({data: OpenAI::Models::Beta::Threads::Message, event: Symbol}) } - def to_hash; end + ) + end + + sig do + override.returns( + { data: OpenAI::Beta::Threads::Message, event: Symbol } + ) + end + def to_hash + end end class ThreadMessageInProgress < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Represents a message within a # [thread](https://platform.openai.com/docs/api-reference/threads). - sig { returns(OpenAI::Models::Beta::Threads::Message) } + sig { returns(OpenAI::Beta::Threads::Message) } attr_reader :data - sig { params(data: T.any(OpenAI::Models::Beta::Threads::Message, OpenAI::Internal::AnyHash)).void } + sig { params(data: OpenAI::Beta::Threads::Message::OrHash).void } attr_writer :data sig { returns(Symbol) } @@ -54,26 +80,40 @@ module OpenAI # [message](https://platform.openai.com/docs/api-reference/messages/object) moves # to an `in_progress` state. sig do - params(data: T.any(OpenAI::Models::Beta::Threads::Message, OpenAI::Internal::AnyHash), event: Symbol) - .returns(T.attached_class) + params( + data: OpenAI::Beta::Threads::Message::OrHash, + event: Symbol + ).returns(T.attached_class) end def self.new( # Represents a message within a # [thread](https://platform.openai.com/docs/api-reference/threads). data:, event: :"thread.message.in_progress" - ); end - sig { override.returns({data: OpenAI::Models::Beta::Threads::Message, event: Symbol}) } - def to_hash; end + ) + end + + sig do + override.returns( + { data: OpenAI::Beta::Threads::Message, event: Symbol } + ) + end + def to_hash + end end class ThreadMessageDelta < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Represents a message delta i.e. any changed fields on a message during # streaming. - sig { returns(OpenAI::Models::Beta::Threads::MessageDeltaEvent) } + sig { returns(OpenAI::Beta::Threads::MessageDeltaEvent) } attr_reader :data - sig { params(data: T.any(OpenAI::Models::Beta::Threads::MessageDeltaEvent, OpenAI::Internal::AnyHash)).void } + sig do + params(data: OpenAI::Beta::Threads::MessageDeltaEvent::OrHash).void + end attr_writer :data sig { returns(Symbol) } @@ -84,28 +124,37 @@ module OpenAI # being streamed. sig do params( - data: T.any(OpenAI::Models::Beta::Threads::MessageDeltaEvent, OpenAI::Internal::AnyHash), + data: OpenAI::Beta::Threads::MessageDeltaEvent::OrHash, event: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # Represents a message delta i.e. any changed fields on a message during # streaming. data:, event: :"thread.message.delta" - ); end - sig { override.returns({data: OpenAI::Models::Beta::Threads::MessageDeltaEvent, event: Symbol}) } - def to_hash; end + ) + end + + sig do + override.returns( + { data: OpenAI::Beta::Threads::MessageDeltaEvent, event: Symbol } + ) + end + def to_hash + end end class ThreadMessageCompleted < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Represents a message within a # [thread](https://platform.openai.com/docs/api-reference/threads). - sig { returns(OpenAI::Models::Beta::Threads::Message) } + sig { returns(OpenAI::Beta::Threads::Message) } attr_reader :data - sig { params(data: T.any(OpenAI::Models::Beta::Threads::Message, OpenAI::Internal::AnyHash)).void } + sig { params(data: OpenAI::Beta::Threads::Message::OrHash).void } attr_writer :data sig { returns(Symbol) } @@ -115,26 +164,38 @@ module OpenAI # [message](https://platform.openai.com/docs/api-reference/messages/object) is # completed. sig do - params(data: T.any(OpenAI::Models::Beta::Threads::Message, OpenAI::Internal::AnyHash), event: Symbol) - .returns(T.attached_class) + params( + data: OpenAI::Beta::Threads::Message::OrHash, + event: Symbol + ).returns(T.attached_class) end def self.new( # Represents a message within a # [thread](https://platform.openai.com/docs/api-reference/threads). data:, event: :"thread.message.completed" - ); end - sig { override.returns({data: OpenAI::Models::Beta::Threads::Message, event: Symbol}) } - def to_hash; end + ) + end + + sig do + override.returns( + { data: OpenAI::Beta::Threads::Message, event: Symbol } + ) + end + def to_hash + end end class ThreadMessageIncomplete < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Represents a message within a # [thread](https://platform.openai.com/docs/api-reference/threads). - sig { returns(OpenAI::Models::Beta::Threads::Message) } + sig { returns(OpenAI::Beta::Threads::Message) } attr_reader :data - sig { params(data: T.any(OpenAI::Models::Beta::Threads::Message, OpenAI::Internal::AnyHash)).void } + sig { params(data: OpenAI::Beta::Threads::Message::OrHash).void } attr_writer :data sig { returns(Symbol) } @@ -144,26 +205,33 @@ module OpenAI # [message](https://platform.openai.com/docs/api-reference/messages/object) ends # before it is completed. sig do - params(data: T.any(OpenAI::Models::Beta::Threads::Message, OpenAI::Internal::AnyHash), event: Symbol) - .returns(T.attached_class) + params( + data: OpenAI::Beta::Threads::Message::OrHash, + event: Symbol + ).returns(T.attached_class) end def self.new( # Represents a message within a # [thread](https://platform.openai.com/docs/api-reference/threads). data:, event: :"thread.message.incomplete" - ); end - sig { override.returns({data: OpenAI::Models::Beta::Threads::Message, event: Symbol}) } - def to_hash; end + ) + end + + sig do + override.returns( + { data: OpenAI::Beta::Threads::Message, event: Symbol } + ) + end + def to_hash + end end sig do - override - .returns( - [OpenAI::Models::Beta::MessageStreamEvent::ThreadMessageCreated, OpenAI::Models::Beta::MessageStreamEvent::ThreadMessageInProgress, OpenAI::Models::Beta::MessageStreamEvent::ThreadMessageDelta, OpenAI::Models::Beta::MessageStreamEvent::ThreadMessageCompleted, OpenAI::Models::Beta::MessageStreamEvent::ThreadMessageIncomplete] - ) + override.returns(T::Array[OpenAI::Beta::MessageStreamEvent::Variants]) + end + def self.variants end - def self.variants; end end end end diff --git a/rbi/openai/models/beta/run_step_stream_event.rbi b/rbi/openai/models/beta/run_step_stream_event.rbi index 80a4d141..7c052f14 100644 --- a/rbi/openai/models/beta/run_step_stream_event.rbi +++ b/rbi/openai/models/beta/run_step_stream_event.rbi @@ -9,12 +9,30 @@ module OpenAI module RunStepStreamEvent extend OpenAI::Internal::Type::Union + Variants = + T.type_alias do + T.any( + OpenAI::Beta::RunStepStreamEvent::ThreadRunStepCreated, + OpenAI::Beta::RunStepStreamEvent::ThreadRunStepInProgress, + OpenAI::Beta::RunStepStreamEvent::ThreadRunStepDelta, + OpenAI::Beta::RunStepStreamEvent::ThreadRunStepCompleted, + OpenAI::Beta::RunStepStreamEvent::ThreadRunStepFailed, + OpenAI::Beta::RunStepStreamEvent::ThreadRunStepCancelled, + OpenAI::Beta::RunStepStreamEvent::ThreadRunStepExpired + ) + end + class ThreadRunStepCreated < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Represents a step in execution of a run. - sig { returns(OpenAI::Models::Beta::Threads::Runs::RunStep) } + sig { returns(OpenAI::Beta::Threads::Runs::RunStep) } attr_reader :data - sig { params(data: T.any(OpenAI::Models::Beta::Threads::Runs::RunStep, OpenAI::Internal::AnyHash)).void } + sig do + params(data: OpenAI::Beta::Threads::Runs::RunStep::OrHash).void + end attr_writer :data sig { returns(Symbol) } @@ -25,26 +43,37 @@ module OpenAI # is created. sig do params( - data: T.any(OpenAI::Models::Beta::Threads::Runs::RunStep, OpenAI::Internal::AnyHash), + data: OpenAI::Beta::Threads::Runs::RunStep::OrHash, event: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # Represents a step in execution of a run. data:, event: :"thread.run.step.created" - ); end - sig { override.returns({data: OpenAI::Models::Beta::Threads::Runs::RunStep, event: Symbol}) } - def to_hash; end + ) + end + + sig do + override.returns( + { data: OpenAI::Beta::Threads::Runs::RunStep, event: Symbol } + ) + end + def to_hash + end end class ThreadRunStepInProgress < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Represents a step in execution of a run. - sig { returns(OpenAI::Models::Beta::Threads::Runs::RunStep) } + sig { returns(OpenAI::Beta::Threads::Runs::RunStep) } attr_reader :data - sig { params(data: T.any(OpenAI::Models::Beta::Threads::Runs::RunStep, OpenAI::Internal::AnyHash)).void } + sig do + params(data: OpenAI::Beta::Threads::Runs::RunStep::OrHash).void + end attr_writer :data sig { returns(Symbol) } @@ -55,28 +84,39 @@ module OpenAI # moves to an `in_progress` state. sig do params( - data: T.any(OpenAI::Models::Beta::Threads::Runs::RunStep, OpenAI::Internal::AnyHash), + data: OpenAI::Beta::Threads::Runs::RunStep::OrHash, event: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # Represents a step in execution of a run. data:, event: :"thread.run.step.in_progress" - ); end - sig { override.returns({data: OpenAI::Models::Beta::Threads::Runs::RunStep, event: Symbol}) } - def to_hash; end + ) + end + + sig do + override.returns( + { data: OpenAI::Beta::Threads::Runs::RunStep, event: Symbol } + ) + end + def to_hash + end end class ThreadRunStepDelta < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Represents a run step delta i.e. any changed fields on a run step during # streaming. - sig { returns(OpenAI::Models::Beta::Threads::Runs::RunStepDeltaEvent) } + sig { returns(OpenAI::Beta::Threads::Runs::RunStepDeltaEvent) } attr_reader :data sig do - params(data: T.any(OpenAI::Models::Beta::Threads::Runs::RunStepDeltaEvent, OpenAI::Internal::AnyHash)).void + params( + data: OpenAI::Beta::Threads::Runs::RunStepDeltaEvent::OrHash + ).void end attr_writer :data @@ -88,27 +128,41 @@ module OpenAI # are being streamed. sig do params( - data: T.any(OpenAI::Models::Beta::Threads::Runs::RunStepDeltaEvent, OpenAI::Internal::AnyHash), + data: OpenAI::Beta::Threads::Runs::RunStepDeltaEvent::OrHash, event: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # Represents a run step delta i.e. any changed fields on a run step during # streaming. data:, event: :"thread.run.step.delta" - ); end - sig { override.returns({data: OpenAI::Models::Beta::Threads::Runs::RunStepDeltaEvent, event: Symbol}) } - def to_hash; end + ) + end + + sig do + override.returns( + { + data: OpenAI::Beta::Threads::Runs::RunStepDeltaEvent, + event: Symbol + } + ) + end + def to_hash + end end class ThreadRunStepCompleted < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Represents a step in execution of a run. - sig { returns(OpenAI::Models::Beta::Threads::Runs::RunStep) } + sig { returns(OpenAI::Beta::Threads::Runs::RunStep) } attr_reader :data - sig { params(data: T.any(OpenAI::Models::Beta::Threads::Runs::RunStep, OpenAI::Internal::AnyHash)).void } + sig do + params(data: OpenAI::Beta::Threads::Runs::RunStep::OrHash).void + end attr_writer :data sig { returns(Symbol) } @@ -119,26 +173,37 @@ module OpenAI # is completed. sig do params( - data: T.any(OpenAI::Models::Beta::Threads::Runs::RunStep, OpenAI::Internal::AnyHash), + data: OpenAI::Beta::Threads::Runs::RunStep::OrHash, event: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # Represents a step in execution of a run. data:, event: :"thread.run.step.completed" - ); end - sig { override.returns({data: OpenAI::Models::Beta::Threads::Runs::RunStep, event: Symbol}) } - def to_hash; end + ) + end + + sig do + override.returns( + { data: OpenAI::Beta::Threads::Runs::RunStep, event: Symbol } + ) + end + def to_hash + end end class ThreadRunStepFailed < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Represents a step in execution of a run. - sig { returns(OpenAI::Models::Beta::Threads::Runs::RunStep) } + sig { returns(OpenAI::Beta::Threads::Runs::RunStep) } attr_reader :data - sig { params(data: T.any(OpenAI::Models::Beta::Threads::Runs::RunStep, OpenAI::Internal::AnyHash)).void } + sig do + params(data: OpenAI::Beta::Threads::Runs::RunStep::OrHash).void + end attr_writer :data sig { returns(Symbol) } @@ -149,26 +214,37 @@ module OpenAI # fails. sig do params( - data: T.any(OpenAI::Models::Beta::Threads::Runs::RunStep, OpenAI::Internal::AnyHash), + data: OpenAI::Beta::Threads::Runs::RunStep::OrHash, event: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # Represents a step in execution of a run. data:, event: :"thread.run.step.failed" - ); end - sig { override.returns({data: OpenAI::Models::Beta::Threads::Runs::RunStep, event: Symbol}) } - def to_hash; end + ) + end + + sig do + override.returns( + { data: OpenAI::Beta::Threads::Runs::RunStep, event: Symbol } + ) + end + def to_hash + end end class ThreadRunStepCancelled < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Represents a step in execution of a run. - sig { returns(OpenAI::Models::Beta::Threads::Runs::RunStep) } + sig { returns(OpenAI::Beta::Threads::Runs::RunStep) } attr_reader :data - sig { params(data: T.any(OpenAI::Models::Beta::Threads::Runs::RunStep, OpenAI::Internal::AnyHash)).void } + sig do + params(data: OpenAI::Beta::Threads::Runs::RunStep::OrHash).void + end attr_writer :data sig { returns(Symbol) } @@ -179,26 +255,37 @@ module OpenAI # is cancelled. sig do params( - data: T.any(OpenAI::Models::Beta::Threads::Runs::RunStep, OpenAI::Internal::AnyHash), + data: OpenAI::Beta::Threads::Runs::RunStep::OrHash, event: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # Represents a step in execution of a run. data:, event: :"thread.run.step.cancelled" - ); end - sig { override.returns({data: OpenAI::Models::Beta::Threads::Runs::RunStep, event: Symbol}) } - def to_hash; end + ) + end + + sig do + override.returns( + { data: OpenAI::Beta::Threads::Runs::RunStep, event: Symbol } + ) + end + def to_hash + end end class ThreadRunStepExpired < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Represents a step in execution of a run. - sig { returns(OpenAI::Models::Beta::Threads::Runs::RunStep) } + sig { returns(OpenAI::Beta::Threads::Runs::RunStep) } attr_reader :data - sig { params(data: T.any(OpenAI::Models::Beta::Threads::Runs::RunStep, OpenAI::Internal::AnyHash)).void } + sig do + params(data: OpenAI::Beta::Threads::Runs::RunStep::OrHash).void + end attr_writer :data sig { returns(Symbol) } @@ -209,27 +296,31 @@ module OpenAI # expires. sig do params( - data: T.any(OpenAI::Models::Beta::Threads::Runs::RunStep, OpenAI::Internal::AnyHash), + data: OpenAI::Beta::Threads::Runs::RunStep::OrHash, event: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # Represents a step in execution of a run. data:, event: :"thread.run.step.expired" - ); end - sig { override.returns({data: OpenAI::Models::Beta::Threads::Runs::RunStep, event: Symbol}) } - def to_hash; end + ) + end + + sig do + override.returns( + { data: OpenAI::Beta::Threads::Runs::RunStep, event: Symbol } + ) + end + def to_hash + end end sig do - override - .returns( - [OpenAI::Models::Beta::RunStepStreamEvent::ThreadRunStepCreated, OpenAI::Models::Beta::RunStepStreamEvent::ThreadRunStepInProgress, OpenAI::Models::Beta::RunStepStreamEvent::ThreadRunStepDelta, OpenAI::Models::Beta::RunStepStreamEvent::ThreadRunStepCompleted, OpenAI::Models::Beta::RunStepStreamEvent::ThreadRunStepFailed, OpenAI::Models::Beta::RunStepStreamEvent::ThreadRunStepCancelled, OpenAI::Models::Beta::RunStepStreamEvent::ThreadRunStepExpired] - ) + override.returns(T::Array[OpenAI::Beta::RunStepStreamEvent::Variants]) + end + def self.variants end - def self.variants; end end end end diff --git a/rbi/openai/models/beta/run_stream_event.rbi b/rbi/openai/models/beta/run_stream_event.rbi index 1f8fa007..77e86149 100644 --- a/rbi/openai/models/beta/run_stream_event.rbi +++ b/rbi/openai/models/beta/run_stream_event.rbi @@ -8,13 +8,32 @@ module OpenAI module RunStreamEvent extend OpenAI::Internal::Type::Union + Variants = + T.type_alias do + T.any( + OpenAI::Beta::RunStreamEvent::ThreadRunCreated, + OpenAI::Beta::RunStreamEvent::ThreadRunQueued, + OpenAI::Beta::RunStreamEvent::ThreadRunInProgress, + OpenAI::Beta::RunStreamEvent::ThreadRunRequiresAction, + OpenAI::Beta::RunStreamEvent::ThreadRunCompleted, + OpenAI::Beta::RunStreamEvent::ThreadRunIncomplete, + OpenAI::Beta::RunStreamEvent::ThreadRunFailed, + OpenAI::Beta::RunStreamEvent::ThreadRunCancelling, + OpenAI::Beta::RunStreamEvent::ThreadRunCancelled, + OpenAI::Beta::RunStreamEvent::ThreadRunExpired + ) + end + class ThreadRunCreated < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Represents an execution run on a # [thread](https://platform.openai.com/docs/api-reference/threads). - sig { returns(OpenAI::Models::Beta::Threads::Run) } + sig { returns(OpenAI::Beta::Threads::Run) } attr_reader :data - sig { params(data: T.any(OpenAI::Models::Beta::Threads::Run, OpenAI::Internal::AnyHash)).void } + sig { params(data: OpenAI::Beta::Threads::Run::OrHash).void } attr_writer :data sig { returns(Symbol) } @@ -23,26 +42,38 @@ module OpenAI # Occurs when a new # [run](https://platform.openai.com/docs/api-reference/runs/object) is created. sig do - params(data: T.any(OpenAI::Models::Beta::Threads::Run, OpenAI::Internal::AnyHash), event: Symbol) - .returns(T.attached_class) + params( + data: OpenAI::Beta::Threads::Run::OrHash, + event: Symbol + ).returns(T.attached_class) end def self.new( # Represents an execution run on a # [thread](https://platform.openai.com/docs/api-reference/threads). data:, event: :"thread.run.created" - ); end - sig { override.returns({data: OpenAI::Models::Beta::Threads::Run, event: Symbol}) } - def to_hash; end + ) + end + + sig do + override.returns( + { data: OpenAI::Beta::Threads::Run, event: Symbol } + ) + end + def to_hash + end end class ThreadRunQueued < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Represents an execution run on a # [thread](https://platform.openai.com/docs/api-reference/threads). - sig { returns(OpenAI::Models::Beta::Threads::Run) } + sig { returns(OpenAI::Beta::Threads::Run) } attr_reader :data - sig { params(data: T.any(OpenAI::Models::Beta::Threads::Run, OpenAI::Internal::AnyHash)).void } + sig { params(data: OpenAI::Beta::Threads::Run::OrHash).void } attr_writer :data sig { returns(Symbol) } @@ -51,26 +82,38 @@ module OpenAI # Occurs when a [run](https://platform.openai.com/docs/api-reference/runs/object) # moves to a `queued` status. sig do - params(data: T.any(OpenAI::Models::Beta::Threads::Run, OpenAI::Internal::AnyHash), event: Symbol) - .returns(T.attached_class) + params( + data: OpenAI::Beta::Threads::Run::OrHash, + event: Symbol + ).returns(T.attached_class) end def self.new( # Represents an execution run on a # [thread](https://platform.openai.com/docs/api-reference/threads). data:, event: :"thread.run.queued" - ); end - sig { override.returns({data: OpenAI::Models::Beta::Threads::Run, event: Symbol}) } - def to_hash; end + ) + end + + sig do + override.returns( + { data: OpenAI::Beta::Threads::Run, event: Symbol } + ) + end + def to_hash + end end class ThreadRunInProgress < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Represents an execution run on a # [thread](https://platform.openai.com/docs/api-reference/threads). - sig { returns(OpenAI::Models::Beta::Threads::Run) } + sig { returns(OpenAI::Beta::Threads::Run) } attr_reader :data - sig { params(data: T.any(OpenAI::Models::Beta::Threads::Run, OpenAI::Internal::AnyHash)).void } + sig { params(data: OpenAI::Beta::Threads::Run::OrHash).void } attr_writer :data sig { returns(Symbol) } @@ -79,26 +122,38 @@ module OpenAI # Occurs when a [run](https://platform.openai.com/docs/api-reference/runs/object) # moves to an `in_progress` status. sig do - params(data: T.any(OpenAI::Models::Beta::Threads::Run, OpenAI::Internal::AnyHash), event: Symbol) - .returns(T.attached_class) + params( + data: OpenAI::Beta::Threads::Run::OrHash, + event: Symbol + ).returns(T.attached_class) end def self.new( # Represents an execution run on a # [thread](https://platform.openai.com/docs/api-reference/threads). data:, event: :"thread.run.in_progress" - ); end - sig { override.returns({data: OpenAI::Models::Beta::Threads::Run, event: Symbol}) } - def to_hash; end + ) + end + + sig do + override.returns( + { data: OpenAI::Beta::Threads::Run, event: Symbol } + ) + end + def to_hash + end end class ThreadRunRequiresAction < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Represents an execution run on a # [thread](https://platform.openai.com/docs/api-reference/threads). - sig { returns(OpenAI::Models::Beta::Threads::Run) } + sig { returns(OpenAI::Beta::Threads::Run) } attr_reader :data - sig { params(data: T.any(OpenAI::Models::Beta::Threads::Run, OpenAI::Internal::AnyHash)).void } + sig { params(data: OpenAI::Beta::Threads::Run::OrHash).void } attr_writer :data sig { returns(Symbol) } @@ -107,26 +162,38 @@ module OpenAI # Occurs when a [run](https://platform.openai.com/docs/api-reference/runs/object) # moves to a `requires_action` status. sig do - params(data: T.any(OpenAI::Models::Beta::Threads::Run, OpenAI::Internal::AnyHash), event: Symbol) - .returns(T.attached_class) + params( + data: OpenAI::Beta::Threads::Run::OrHash, + event: Symbol + ).returns(T.attached_class) end def self.new( # Represents an execution run on a # [thread](https://platform.openai.com/docs/api-reference/threads). data:, event: :"thread.run.requires_action" - ); end - sig { override.returns({data: OpenAI::Models::Beta::Threads::Run, event: Symbol}) } - def to_hash; end + ) + end + + sig do + override.returns( + { data: OpenAI::Beta::Threads::Run, event: Symbol } + ) + end + def to_hash + end end class ThreadRunCompleted < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Represents an execution run on a # [thread](https://platform.openai.com/docs/api-reference/threads). - sig { returns(OpenAI::Models::Beta::Threads::Run) } + sig { returns(OpenAI::Beta::Threads::Run) } attr_reader :data - sig { params(data: T.any(OpenAI::Models::Beta::Threads::Run, OpenAI::Internal::AnyHash)).void } + sig { params(data: OpenAI::Beta::Threads::Run::OrHash).void } attr_writer :data sig { returns(Symbol) } @@ -135,26 +202,38 @@ module OpenAI # Occurs when a [run](https://platform.openai.com/docs/api-reference/runs/object) # is completed. sig do - params(data: T.any(OpenAI::Models::Beta::Threads::Run, OpenAI::Internal::AnyHash), event: Symbol) - .returns(T.attached_class) + params( + data: OpenAI::Beta::Threads::Run::OrHash, + event: Symbol + ).returns(T.attached_class) end def self.new( # Represents an execution run on a # [thread](https://platform.openai.com/docs/api-reference/threads). data:, event: :"thread.run.completed" - ); end - sig { override.returns({data: OpenAI::Models::Beta::Threads::Run, event: Symbol}) } - def to_hash; end + ) + end + + sig do + override.returns( + { data: OpenAI::Beta::Threads::Run, event: Symbol } + ) + end + def to_hash + end end class ThreadRunIncomplete < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Represents an execution run on a # [thread](https://platform.openai.com/docs/api-reference/threads). - sig { returns(OpenAI::Models::Beta::Threads::Run) } + sig { returns(OpenAI::Beta::Threads::Run) } attr_reader :data - sig { params(data: T.any(OpenAI::Models::Beta::Threads::Run, OpenAI::Internal::AnyHash)).void } + sig { params(data: OpenAI::Beta::Threads::Run::OrHash).void } attr_writer :data sig { returns(Symbol) } @@ -163,26 +242,38 @@ module OpenAI # Occurs when a [run](https://platform.openai.com/docs/api-reference/runs/object) # ends with status `incomplete`. sig do - params(data: T.any(OpenAI::Models::Beta::Threads::Run, OpenAI::Internal::AnyHash), event: Symbol) - .returns(T.attached_class) + params( + data: OpenAI::Beta::Threads::Run::OrHash, + event: Symbol + ).returns(T.attached_class) end def self.new( # Represents an execution run on a # [thread](https://platform.openai.com/docs/api-reference/threads). data:, event: :"thread.run.incomplete" - ); end - sig { override.returns({data: OpenAI::Models::Beta::Threads::Run, event: Symbol}) } - def to_hash; end + ) + end + + sig do + override.returns( + { data: OpenAI::Beta::Threads::Run, event: Symbol } + ) + end + def to_hash + end end class ThreadRunFailed < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Represents an execution run on a # [thread](https://platform.openai.com/docs/api-reference/threads). - sig { returns(OpenAI::Models::Beta::Threads::Run) } + sig { returns(OpenAI::Beta::Threads::Run) } attr_reader :data - sig { params(data: T.any(OpenAI::Models::Beta::Threads::Run, OpenAI::Internal::AnyHash)).void } + sig { params(data: OpenAI::Beta::Threads::Run::OrHash).void } attr_writer :data sig { returns(Symbol) } @@ -191,26 +282,38 @@ module OpenAI # Occurs when a [run](https://platform.openai.com/docs/api-reference/runs/object) # fails. sig do - params(data: T.any(OpenAI::Models::Beta::Threads::Run, OpenAI::Internal::AnyHash), event: Symbol) - .returns(T.attached_class) + params( + data: OpenAI::Beta::Threads::Run::OrHash, + event: Symbol + ).returns(T.attached_class) end def self.new( # Represents an execution run on a # [thread](https://platform.openai.com/docs/api-reference/threads). data:, event: :"thread.run.failed" - ); end - sig { override.returns({data: OpenAI::Models::Beta::Threads::Run, event: Symbol}) } - def to_hash; end + ) + end + + sig do + override.returns( + { data: OpenAI::Beta::Threads::Run, event: Symbol } + ) + end + def to_hash + end end class ThreadRunCancelling < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Represents an execution run on a # [thread](https://platform.openai.com/docs/api-reference/threads). - sig { returns(OpenAI::Models::Beta::Threads::Run) } + sig { returns(OpenAI::Beta::Threads::Run) } attr_reader :data - sig { params(data: T.any(OpenAI::Models::Beta::Threads::Run, OpenAI::Internal::AnyHash)).void } + sig { params(data: OpenAI::Beta::Threads::Run::OrHash).void } attr_writer :data sig { returns(Symbol) } @@ -219,26 +322,38 @@ module OpenAI # Occurs when a [run](https://platform.openai.com/docs/api-reference/runs/object) # moves to a `cancelling` status. sig do - params(data: T.any(OpenAI::Models::Beta::Threads::Run, OpenAI::Internal::AnyHash), event: Symbol) - .returns(T.attached_class) + params( + data: OpenAI::Beta::Threads::Run::OrHash, + event: Symbol + ).returns(T.attached_class) end def self.new( # Represents an execution run on a # [thread](https://platform.openai.com/docs/api-reference/threads). data:, event: :"thread.run.cancelling" - ); end - sig { override.returns({data: OpenAI::Models::Beta::Threads::Run, event: Symbol}) } - def to_hash; end + ) + end + + sig do + override.returns( + { data: OpenAI::Beta::Threads::Run, event: Symbol } + ) + end + def to_hash + end end class ThreadRunCancelled < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Represents an execution run on a # [thread](https://platform.openai.com/docs/api-reference/threads). - sig { returns(OpenAI::Models::Beta::Threads::Run) } + sig { returns(OpenAI::Beta::Threads::Run) } attr_reader :data - sig { params(data: T.any(OpenAI::Models::Beta::Threads::Run, OpenAI::Internal::AnyHash)).void } + sig { params(data: OpenAI::Beta::Threads::Run::OrHash).void } attr_writer :data sig { returns(Symbol) } @@ -247,26 +362,38 @@ module OpenAI # Occurs when a [run](https://platform.openai.com/docs/api-reference/runs/object) # is cancelled. sig do - params(data: T.any(OpenAI::Models::Beta::Threads::Run, OpenAI::Internal::AnyHash), event: Symbol) - .returns(T.attached_class) + params( + data: OpenAI::Beta::Threads::Run::OrHash, + event: Symbol + ).returns(T.attached_class) end def self.new( # Represents an execution run on a # [thread](https://platform.openai.com/docs/api-reference/threads). data:, event: :"thread.run.cancelled" - ); end - sig { override.returns({data: OpenAI::Models::Beta::Threads::Run, event: Symbol}) } - def to_hash; end + ) + end + + sig do + override.returns( + { data: OpenAI::Beta::Threads::Run, event: Symbol } + ) + end + def to_hash + end end class ThreadRunExpired < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Represents an execution run on a # [thread](https://platform.openai.com/docs/api-reference/threads). - sig { returns(OpenAI::Models::Beta::Threads::Run) } + sig { returns(OpenAI::Beta::Threads::Run) } attr_reader :data - sig { params(data: T.any(OpenAI::Models::Beta::Threads::Run, OpenAI::Internal::AnyHash)).void } + sig { params(data: OpenAI::Beta::Threads::Run::OrHash).void } attr_writer :data sig { returns(Symbol) } @@ -275,26 +402,33 @@ module OpenAI # Occurs when a [run](https://platform.openai.com/docs/api-reference/runs/object) # expires. sig do - params(data: T.any(OpenAI::Models::Beta::Threads::Run, OpenAI::Internal::AnyHash), event: Symbol) - .returns(T.attached_class) + params( + data: OpenAI::Beta::Threads::Run::OrHash, + event: Symbol + ).returns(T.attached_class) end def self.new( # Represents an execution run on a # [thread](https://platform.openai.com/docs/api-reference/threads). data:, event: :"thread.run.expired" - ); end - sig { override.returns({data: OpenAI::Models::Beta::Threads::Run, event: Symbol}) } - def to_hash; end + ) + end + + sig do + override.returns( + { data: OpenAI::Beta::Threads::Run, event: Symbol } + ) + end + def to_hash + end end sig do - override - .returns( - [OpenAI::Models::Beta::RunStreamEvent::ThreadRunCreated, OpenAI::Models::Beta::RunStreamEvent::ThreadRunQueued, OpenAI::Models::Beta::RunStreamEvent::ThreadRunInProgress, OpenAI::Models::Beta::RunStreamEvent::ThreadRunRequiresAction, OpenAI::Models::Beta::RunStreamEvent::ThreadRunCompleted, OpenAI::Models::Beta::RunStreamEvent::ThreadRunIncomplete, OpenAI::Models::Beta::RunStreamEvent::ThreadRunFailed, OpenAI::Models::Beta::RunStreamEvent::ThreadRunCancelling, OpenAI::Models::Beta::RunStreamEvent::ThreadRunCancelled, OpenAI::Models::Beta::RunStreamEvent::ThreadRunExpired] - ) + override.returns(T::Array[OpenAI::Beta::RunStreamEvent::Variants]) + end + def self.variants end - def self.variants; end end end end diff --git a/rbi/openai/models/beta/thread.rbi b/rbi/openai/models/beta/thread.rbi index 46c58f55..8f84f6d1 100644 --- a/rbi/openai/models/beta/thread.rbi +++ b/rbi/openai/models/beta/thread.rbi @@ -4,6 +4,8 @@ module OpenAI module Models module Beta class Thread < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The identifier, which can be referenced in API endpoints. sig { returns(String) } attr_accessor :id @@ -29,14 +31,14 @@ module OpenAI # thread. 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. - sig { returns(T.nilable(OpenAI::Models::Beta::Thread::ToolResources)) } + sig { returns(T.nilable(OpenAI::Beta::Thread::ToolResources)) } attr_reader :tool_resources sig do params( - tool_resources: T.nilable(T.any(OpenAI::Models::Beta::Thread::ToolResources, OpenAI::Internal::AnyHash)) - ) - .void + tool_resources: + T.nilable(OpenAI::Beta::Thread::ToolResources::OrHash) + ).void end attr_writer :tool_resources @@ -47,10 +49,10 @@ module OpenAI id: String, created_at: Integer, metadata: T.nilable(T::Hash[Symbol, String]), - tool_resources: T.nilable(T.any(OpenAI::Models::Beta::Thread::ToolResources, OpenAI::Internal::AnyHash)), + tool_resources: + T.nilable(OpenAI::Beta::Thread::ToolResources::OrHash), object: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # The identifier, which can be referenced in API endpoints. @@ -71,41 +73,52 @@ module OpenAI tool_resources:, # The object type, which is always `thread`. object: :thread - ); end + ) + end + sig do - override - .returns( - { - id: String, - created_at: Integer, - metadata: T.nilable(T::Hash[Symbol, String]), - object: Symbol, - tool_resources: T.nilable(OpenAI::Models::Beta::Thread::ToolResources) - } - ) + override.returns( + { + id: String, + created_at: Integer, + metadata: T.nilable(T::Hash[Symbol, String]), + object: Symbol, + tool_resources: T.nilable(OpenAI::Beta::Thread::ToolResources) + } + ) + end + def to_hash end - def to_hash; end class ToolResources < OpenAI::Internal::Type::BaseModel - sig { returns(T.nilable(OpenAI::Models::Beta::Thread::ToolResources::CodeInterpreter)) } + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + + sig do + returns( + T.nilable(OpenAI::Beta::Thread::ToolResources::CodeInterpreter) + ) + end attr_reader :code_interpreter sig do params( - code_interpreter: T.any(OpenAI::Models::Beta::Thread::ToolResources::CodeInterpreter, OpenAI::Internal::AnyHash) - ) - .void + code_interpreter: + OpenAI::Beta::Thread::ToolResources::CodeInterpreter::OrHash + ).void end attr_writer :code_interpreter - sig { returns(T.nilable(OpenAI::Models::Beta::Thread::ToolResources::FileSearch)) } + sig do + returns(T.nilable(OpenAI::Beta::Thread::ToolResources::FileSearch)) + end attr_reader :file_search sig do params( - file_search: T.any(OpenAI::Models::Beta::Thread::ToolResources::FileSearch, OpenAI::Internal::AnyHash) - ) - .void + file_search: + OpenAI::Beta::Thread::ToolResources::FileSearch::OrHash + ).void end attr_writer :file_search @@ -115,25 +128,31 @@ module OpenAI # tool requires a list of vector store IDs. sig do params( - code_interpreter: T.any(OpenAI::Models::Beta::Thread::ToolResources::CodeInterpreter, OpenAI::Internal::AnyHash), - file_search: T.any(OpenAI::Models::Beta::Thread::ToolResources::FileSearch, OpenAI::Internal::AnyHash) - ) - .returns(T.attached_class) + code_interpreter: + OpenAI::Beta::Thread::ToolResources::CodeInterpreter::OrHash, + file_search: + OpenAI::Beta::Thread::ToolResources::FileSearch::OrHash + ).returns(T.attached_class) + end + def self.new(code_interpreter: nil, file_search: nil) end - def self.new(code_interpreter: nil, file_search: nil); end sig do - override - .returns( - { - code_interpreter: OpenAI::Models::Beta::Thread::ToolResources::CodeInterpreter, - file_search: OpenAI::Models::Beta::Thread::ToolResources::FileSearch - } - ) + override.returns( + { + code_interpreter: + OpenAI::Beta::Thread::ToolResources::CodeInterpreter, + file_search: OpenAI::Beta::Thread::ToolResources::FileSearch + } + ) + end + def to_hash end - def to_hash; end class CodeInterpreter < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # A list of [file](https://platform.openai.com/docs/api-reference/files) IDs made # available to the `code_interpreter` tool. There can be a maximum of 20 files # associated with the tool. @@ -149,12 +168,18 @@ module OpenAI # available to the `code_interpreter` tool. There can be a maximum of 20 files # associated with the tool. file_ids: nil - ); end - sig { override.returns({file_ids: T::Array[String]}) } - def to_hash; end + ) + end + + sig { override.returns({ file_ids: T::Array[String] }) } + def to_hash + end end class FileSearch < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The # [vector store](https://platform.openai.com/docs/api-reference/vector-stores/object) # attached to this thread. There can be a maximum of 1 vector store attached to @@ -165,16 +190,23 @@ module OpenAI sig { params(vector_store_ids: T::Array[String]).void } attr_writer :vector_store_ids - sig { params(vector_store_ids: T::Array[String]).returns(T.attached_class) } + sig do + params(vector_store_ids: T::Array[String]).returns( + T.attached_class + ) + end def self.new( # The # [vector store](https://platform.openai.com/docs/api-reference/vector-stores/object) # attached to this thread. There can be a maximum of 1 vector store attached to # the thread. vector_store_ids: nil - ); end - sig { override.returns({vector_store_ids: T::Array[String]}) } - def to_hash; end + ) + end + + sig { override.returns({ vector_store_ids: T::Array[String] }) } + def to_hash + end end end end diff --git a/rbi/openai/models/beta/thread_create_and_run_params.rbi b/rbi/openai/models/beta/thread_create_and_run_params.rbi index fed5543a..e65fa5a3 100644 --- a/rbi/openai/models/beta/thread_create_and_run_params.rbi +++ b/rbi/openai/models/beta/thread_create_and_run_params.rbi @@ -7,6 +7,8 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The ID of the # [assistant](https://platform.openai.com/docs/api-reference/assistants) to use to # execute this run. @@ -47,7 +49,7 @@ module OpenAI # be used to execute this run. If a value is provided here, it will override the # model associated with the assistant. If not, the model associated with the # assistant will be used. - sig { returns(T.nilable(T.any(String, OpenAI::Models::ChatModel::OrSymbol))) } + sig { returns(T.nilable(T.any(String, OpenAI::ChatModel::OrSymbol))) } attr_accessor :model # Whether to enable @@ -84,9 +86,9 @@ module OpenAI T.nilable( T.any( Symbol, - OpenAI::Models::ResponseFormatText, - OpenAI::Models::ResponseFormatJSONObject, - OpenAI::Models::ResponseFormatJSONSchema + OpenAI::ResponseFormatText, + OpenAI::ResponseFormatJSONObject, + OpenAI::ResponseFormatJSONSchema ) ) ) @@ -101,12 +103,15 @@ module OpenAI # Options to create a new thread. If no thread is provided when running a request, # an empty thread will be created. - sig { returns(T.nilable(OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread)) } + sig do + returns(T.nilable(OpenAI::Beta::ThreadCreateAndRunParams::Thread)) + end attr_reader :thread sig do - params(thread: T.any(OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread, OpenAI::Internal::AnyHash)) - .void + params( + thread: OpenAI::Beta::ThreadCreateAndRunParams::Thread::OrHash + ).void end attr_writer :thread @@ -121,8 +126,8 @@ module OpenAI returns( T.nilable( T.any( - OpenAI::Models::Beta::AssistantToolChoiceOption::Auto::OrSymbol, - OpenAI::Models::Beta::AssistantToolChoice + OpenAI::Beta::AssistantToolChoiceOption::Auto::OrSymbol, + OpenAI::Beta::AssistantToolChoice ) ) ) @@ -133,14 +138,20 @@ module OpenAI # 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. - sig { returns(T.nilable(OpenAI::Models::Beta::ThreadCreateAndRunParams::ToolResources)) } + sig do + returns( + T.nilable(OpenAI::Beta::ThreadCreateAndRunParams::ToolResources) + ) + end attr_reader :tool_resources sig do params( - tool_resources: T.nilable(T.any(OpenAI::Models::Beta::ThreadCreateAndRunParams::ToolResources, OpenAI::Internal::AnyHash)) - ) - .void + tool_resources: + T.nilable( + OpenAI::Beta::ThreadCreateAndRunParams::ToolResources::OrHash + ) + ).void end attr_writer :tool_resources @@ -151,9 +162,9 @@ module OpenAI T.nilable( T::Array[ T.any( - OpenAI::Models::Beta::CodeInterpreterTool, - OpenAI::Models::Beta::FileSearchTool, - OpenAI::Models::Beta::FunctionTool + OpenAI::Beta::CodeInterpreterTool, + OpenAI::Beta::FileSearchTool, + OpenAI::Beta::FunctionTool ) ] ) @@ -171,16 +182,22 @@ module OpenAI # Controls for how a thread will be truncated prior to the run. Use this to # control the intial context window of the run. - sig { returns(T.nilable(OpenAI::Models::Beta::ThreadCreateAndRunParams::TruncationStrategy)) } + sig do + returns( + T.nilable( + OpenAI::Beta::ThreadCreateAndRunParams::TruncationStrategy + ) + ) + end attr_reader :truncation_strategy sig do params( - truncation_strategy: T.nilable( - T.any(OpenAI::Models::Beta::ThreadCreateAndRunParams::TruncationStrategy, OpenAI::Internal::AnyHash) - ) - ) - .void + truncation_strategy: + T.nilable( + OpenAI::Beta::ThreadCreateAndRunParams::TruncationStrategy::OrHash + ) + ).void end attr_writer :truncation_strategy @@ -191,44 +208,47 @@ module OpenAI max_completion_tokens: T.nilable(Integer), max_prompt_tokens: T.nilable(Integer), metadata: T.nilable(T::Hash[Symbol, String]), - model: T.nilable(T.any(String, OpenAI::Models::ChatModel::OrSymbol)), + model: T.nilable(T.any(String, OpenAI::ChatModel::OrSymbol)), parallel_tool_calls: T::Boolean, - response_format: T.nilable( - T.any( - Symbol, - OpenAI::Models::ResponseFormatText, - OpenAI::Internal::AnyHash, - OpenAI::Models::ResponseFormatJSONObject, - OpenAI::Models::ResponseFormatJSONSchema - ) - ), + response_format: + T.nilable( + T.any( + Symbol, + OpenAI::ResponseFormatText::OrHash, + OpenAI::ResponseFormatJSONObject::OrHash, + OpenAI::ResponseFormatJSONSchema::OrHash + ) + ), temperature: T.nilable(Float), - thread: T.any(OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread, OpenAI::Internal::AnyHash), - tool_choice: T.nilable( - T.any( - OpenAI::Models::Beta::AssistantToolChoiceOption::Auto::OrSymbol, - OpenAI::Models::Beta::AssistantToolChoice, - OpenAI::Internal::AnyHash - ) - ), - tool_resources: T.nilable(T.any(OpenAI::Models::Beta::ThreadCreateAndRunParams::ToolResources, OpenAI::Internal::AnyHash)), - tools: T.nilable( - T::Array[ + thread: OpenAI::Beta::ThreadCreateAndRunParams::Thread::OrHash, + tool_choice: + T.nilable( T.any( - OpenAI::Models::Beta::CodeInterpreterTool, - OpenAI::Internal::AnyHash, - OpenAI::Models::Beta::FileSearchTool, - OpenAI::Models::Beta::FunctionTool + OpenAI::Beta::AssistantToolChoiceOption::Auto::OrSymbol, + OpenAI::Beta::AssistantToolChoice::OrHash ) - ] - ), + ), + tool_resources: + T.nilable( + OpenAI::Beta::ThreadCreateAndRunParams::ToolResources::OrHash + ), + tools: + T.nilable( + T::Array[ + T.any( + OpenAI::Beta::CodeInterpreterTool::OrHash, + OpenAI::Beta::FileSearchTool::OrHash, + OpenAI::Beta::FunctionTool::OrHash + ) + ] + ), top_p: T.nilable(Float), - truncation_strategy: T.nilable( - T.any(OpenAI::Models::Beta::ThreadCreateAndRunParams::TruncationStrategy, OpenAI::Internal::AnyHash) - ), - request_options: T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash) - ) - .returns(T.attached_class) + truncation_strategy: + T.nilable( + OpenAI::Beta::ThreadCreateAndRunParams::TruncationStrategy::OrHash + ), + request_options: OpenAI::RequestOptions::OrHash + ).returns(T.attached_class) end def self.new( # The ID of the @@ -320,51 +340,62 @@ module OpenAI # control the intial context window of the run. truncation_strategy: nil, request_options: {} - ); end + ) + end + sig do - override - .returns( - { - assistant_id: String, - instructions: T.nilable(String), - max_completion_tokens: T.nilable(Integer), - max_prompt_tokens: T.nilable(Integer), - metadata: T.nilable(T::Hash[Symbol, String]), - model: T.nilable(T.any(String, OpenAI::Models::ChatModel::OrSymbol)), - parallel_tool_calls: T::Boolean, - response_format: T.nilable( + override.returns( + { + assistant_id: String, + instructions: T.nilable(String), + max_completion_tokens: T.nilable(Integer), + max_prompt_tokens: T.nilable(Integer), + metadata: T.nilable(T::Hash[Symbol, String]), + model: T.nilable(T.any(String, OpenAI::ChatModel::OrSymbol)), + parallel_tool_calls: T::Boolean, + response_format: + T.nilable( T.any( Symbol, - OpenAI::Models::ResponseFormatText, - OpenAI::Models::ResponseFormatJSONObject, - OpenAI::Models::ResponseFormatJSONSchema + OpenAI::ResponseFormatText, + OpenAI::ResponseFormatJSONObject, + OpenAI::ResponseFormatJSONSchema ) ), - temperature: T.nilable(Float), - thread: OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread, - tool_choice: T.nilable( + temperature: T.nilable(Float), + thread: OpenAI::Beta::ThreadCreateAndRunParams::Thread, + tool_choice: + T.nilable( T.any( - OpenAI::Models::Beta::AssistantToolChoiceOption::Auto::OrSymbol, - OpenAI::Models::Beta::AssistantToolChoice + OpenAI::Beta::AssistantToolChoiceOption::Auto::OrSymbol, + OpenAI::Beta::AssistantToolChoice ) ), - tool_resources: T.nilable(OpenAI::Models::Beta::ThreadCreateAndRunParams::ToolResources), - tools: T.nilable( + tool_resources: + T.nilable( + OpenAI::Beta::ThreadCreateAndRunParams::ToolResources + ), + tools: + T.nilable( T::Array[ T.any( - OpenAI::Models::Beta::CodeInterpreterTool, - OpenAI::Models::Beta::FileSearchTool, - OpenAI::Models::Beta::FunctionTool + OpenAI::Beta::CodeInterpreterTool, + OpenAI::Beta::FileSearchTool, + OpenAI::Beta::FunctionTool ) ] ), - top_p: T.nilable(Float), - truncation_strategy: T.nilable(OpenAI::Models::Beta::ThreadCreateAndRunParams::TruncationStrategy), - request_options: OpenAI::RequestOptions - } - ) + top_p: T.nilable(Float), + truncation_strategy: + T.nilable( + OpenAI::Beta::ThreadCreateAndRunParams::TruncationStrategy + ), + request_options: OpenAI::RequestOptions + } + ) + end + def to_hash end - def to_hash; end # The ID of the [Model](https://platform.openai.com/docs/api-reference/models) to # be used to execute this run. If a value is provided here, it will override the @@ -373,21 +404,42 @@ module OpenAI module Model extend OpenAI::Internal::Type::Union - sig { override.returns([String, OpenAI::Models::ChatModel::TaggedSymbol]) } - def self.variants; end + Variants = + T.type_alias { T.any(String, OpenAI::ChatModel::TaggedSymbol) } + + sig do + override.returns( + T::Array[OpenAI::Beta::ThreadCreateAndRunParams::Model::Variants] + ) + end + def self.variants + end end class Thread < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # A list of [messages](https://platform.openai.com/docs/api-reference/messages) to # start the thread with. - sig { returns(T.nilable(T::Array[OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::Message])) } + sig do + returns( + T.nilable( + T::Array[ + OpenAI::Beta::ThreadCreateAndRunParams::Thread::Message + ] + ) + ) + end attr_reader :messages sig do params( - messages: T::Array[T.any(OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::Message, OpenAI::Internal::AnyHash)] - ) - .void + messages: + T::Array[ + OpenAI::Beta::ThreadCreateAndRunParams::Thread::Message::OrHash + ] + ).void end attr_writer :messages @@ -404,16 +456,22 @@ module OpenAI # thread. 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. - sig { returns(T.nilable(OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::ToolResources)) } + sig do + returns( + T.nilable( + OpenAI::Beta::ThreadCreateAndRunParams::Thread::ToolResources + ) + ) + end attr_reader :tool_resources sig do params( - tool_resources: T.nilable( - T.any(OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::ToolResources, OpenAI::Internal::AnyHash) - ) - ) - .void + tool_resources: + T.nilable( + OpenAI::Beta::ThreadCreateAndRunParams::Thread::ToolResources::OrHash + ) + ).void end attr_writer :tool_resources @@ -421,13 +479,16 @@ module OpenAI # an empty thread will be created. sig do params( - messages: T::Array[T.any(OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::Message, OpenAI::Internal::AnyHash)], + messages: + T::Array[ + OpenAI::Beta::ThreadCreateAndRunParams::Thread::Message::OrHash + ], metadata: T.nilable(T::Hash[Symbol, String]), - tool_resources: T.nilable( - T.any(OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::ToolResources, OpenAI::Internal::AnyHash) - ) - ) - .returns(T.attached_class) + tool_resources: + T.nilable( + OpenAI::Beta::ThreadCreateAndRunParams::Thread::ToolResources::OrHash + ) + ).returns(T.attached_class) end def self.new( # A list of [messages](https://platform.openai.com/docs/api-reference/messages) to @@ -445,20 +506,31 @@ module OpenAI # `code_interpreter` tool requires a list of file IDs, while the `file_search` # tool requires a list of vector store IDs. tool_resources: nil - ); end + ) + end + sig do - override - .returns( - { - messages: T::Array[OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::Message], - metadata: T.nilable(T::Hash[Symbol, String]), - tool_resources: T.nilable(OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::ToolResources) - } - ) + override.returns( + { + messages: + T::Array[ + OpenAI::Beta::ThreadCreateAndRunParams::Thread::Message + ], + metadata: T.nilable(T::Hash[Symbol, String]), + tool_resources: + T.nilable( + OpenAI::Beta::ThreadCreateAndRunParams::Thread::ToolResources + ) + } + ) + end + def to_hash end - def to_hash; end class Message < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The text contents of the message. sig do returns( @@ -466,9 +538,9 @@ module OpenAI String, T::Array[ T.any( - OpenAI::Models::Beta::Threads::ImageFileContentBlock, - OpenAI::Models::Beta::Threads::ImageURLContentBlock, - OpenAI::Models::Beta::Threads::TextContentBlockParam + OpenAI::Beta::Threads::ImageFileContentBlock, + OpenAI::Beta::Threads::ImageURLContentBlock, + OpenAI::Beta::Threads::TextContentBlockParam ) ] ) @@ -482,11 +554,23 @@ module OpenAI # most cases to represent user-generated messages. # - `assistant`: Indicates the message is generated by the assistant. Use this # value to insert messages from the assistant into the conversation. - sig { returns(OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::Message::Role::OrSymbol) } + sig do + returns( + OpenAI::Beta::ThreadCreateAndRunParams::Thread::Message::Role::OrSymbol + ) + end attr_accessor :role # A list of files attached to the message, and the tools they should be added to. - sig { returns(T.nilable(T::Array[OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::Message::Attachment])) } + sig do + returns( + T.nilable( + T::Array[ + OpenAI::Beta::ThreadCreateAndRunParams::Thread::Message::Attachment + ] + ) + ) + end attr_accessor :attachments # Set of 16 key-value pairs that can be attached to an object. This can be useful @@ -500,29 +584,27 @@ module OpenAI sig do params( - content: T.any( - String, - T::Array[ - T.any( - OpenAI::Models::Beta::Threads::ImageFileContentBlock, - OpenAI::Internal::AnyHash, - OpenAI::Models::Beta::Threads::ImageURLContentBlock, - OpenAI::Models::Beta::Threads::TextContentBlockParam - ) - ] - ), - role: OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::Message::Role::OrSymbol, - attachments: T.nilable( - T::Array[ - T.any( - OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::Message::Attachment, - OpenAI::Internal::AnyHash - ) - ] - ), + content: + T.any( + String, + T::Array[ + T.any( + OpenAI::Beta::Threads::ImageFileContentBlock::OrHash, + OpenAI::Beta::Threads::ImageURLContentBlock::OrHash, + OpenAI::Beta::Threads::TextContentBlockParam::OrHash + ) + ] + ), + role: + OpenAI::Beta::ThreadCreateAndRunParams::Thread::Message::Role::OrSymbol, + attachments: + T.nilable( + T::Array[ + OpenAI::Beta::ThreadCreateAndRunParams::Thread::Message::Attachment::OrHash + ] + ), metadata: T.nilable(T::Hash[Symbol, String]) - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # The text contents of the message. @@ -543,53 +625,71 @@ module OpenAI # Keys are strings with a maximum length of 64 characters. Values are strings with # a maximum length of 512 characters. metadata: nil - ); end + ) + end + sig do - override - .returns( - { - content: T.any( + override.returns( + { + content: + T.any( String, T::Array[ T.any( - OpenAI::Models::Beta::Threads::ImageFileContentBlock, - OpenAI::Models::Beta::Threads::ImageURLContentBlock, - OpenAI::Models::Beta::Threads::TextContentBlockParam + OpenAI::Beta::Threads::ImageFileContentBlock, + OpenAI::Beta::Threads::ImageURLContentBlock, + OpenAI::Beta::Threads::TextContentBlockParam ) ] ), - role: OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::Message::Role::OrSymbol, - attachments: T.nilable(T::Array[OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::Message::Attachment]), - metadata: T.nilable(T::Hash[Symbol, String]) - } - ) + role: + OpenAI::Beta::ThreadCreateAndRunParams::Thread::Message::Role::OrSymbol, + attachments: + T.nilable( + T::Array[ + OpenAI::Beta::ThreadCreateAndRunParams::Thread::Message::Attachment + ] + ), + metadata: T.nilable(T::Hash[Symbol, String]) + } + ) + end + def to_hash end - def to_hash; end # The text contents of the message. module Content extend OpenAI::Internal::Type::Union - sig do - override - .returns( - [ - String, - T::Array[ - T.any( - OpenAI::Models::Beta::Threads::ImageFileContentBlock, - OpenAI::Models::Beta::Threads::ImageURLContentBlock, - OpenAI::Models::Beta::Threads::TextContentBlockParam - ) - ] + Variants = + T.type_alias do + T.any( + String, + T::Array[ + T.any( + OpenAI::Beta::Threads::ImageFileContentBlock, + OpenAI::Beta::Threads::ImageURLContentBlock, + OpenAI::Beta::Threads::TextContentBlockParam + ) ] ) + end + + sig do + override.returns( + T::Array[ + OpenAI::Beta::ThreadCreateAndRunParams::Thread::Message::Content::Variants + ] + ) + end + def self.variants end - def self.variants; end MessageContentPartParamArray = T.let( - OpenAI::Internal::Type::ArrayOf[union: OpenAI::Models::Beta::Threads::MessageContentPartParam], + OpenAI::Internal::Type::ArrayOf[ + union: OpenAI::Beta::Threads::MessageContentPartParam + ], OpenAI::Internal::Type::Converter ) end @@ -604,21 +704,40 @@ module OpenAI extend OpenAI::Internal::Type::Enum TaggedSymbol = - T.type_alias { T.all(Symbol, OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::Message::Role) } + T.type_alias do + T.all( + Symbol, + OpenAI::Beta::ThreadCreateAndRunParams::Thread::Message::Role + ) + end OrSymbol = T.type_alias { T.any(Symbol, String) } - USER = T.let(:user, OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::Message::Role::TaggedSymbol) + USER = + T.let( + :user, + OpenAI::Beta::ThreadCreateAndRunParams::Thread::Message::Role::TaggedSymbol + ) ASSISTANT = - T.let(:assistant, OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::Message::Role::TaggedSymbol) + T.let( + :assistant, + OpenAI::Beta::ThreadCreateAndRunParams::Thread::Message::Role::TaggedSymbol + ) sig do - override - .returns(T::Array[OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::Message::Role::TaggedSymbol]) + override.returns( + T::Array[ + OpenAI::Beta::ThreadCreateAndRunParams::Thread::Message::Role::TaggedSymbol + ] + ) + end + def self.values end - def self.values; end end class Attachment < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The ID of the file to attach to the message. sig { returns(T.nilable(String)) } attr_reader :file_id @@ -632,8 +751,8 @@ module OpenAI T.nilable( T::Array[ T.any( - OpenAI::Models::Beta::CodeInterpreterTool, - OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::Message::Attachment::Tool::FileSearch + OpenAI::Beta::CodeInterpreterTool, + OpenAI::Beta::ThreadCreateAndRunParams::Thread::Message::Attachment::Tool::FileSearch ) ] ) @@ -643,57 +762,71 @@ module OpenAI sig do params( - tools: T::Array[ - T.any( - OpenAI::Models::Beta::CodeInterpreterTool, - OpenAI::Internal::AnyHash, - OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::Message::Attachment::Tool::FileSearch - ) - ] - ) - .void + tools: + T::Array[ + T.any( + OpenAI::Beta::CodeInterpreterTool::OrHash, + OpenAI::Beta::ThreadCreateAndRunParams::Thread::Message::Attachment::Tool::FileSearch::OrHash + ) + ] + ).void end attr_writer :tools sig do params( file_id: String, - tools: T::Array[ - T.any( - OpenAI::Models::Beta::CodeInterpreterTool, - OpenAI::Internal::AnyHash, - OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::Message::Attachment::Tool::FileSearch - ) - ] - ) - .returns(T.attached_class) + tools: + T::Array[ + T.any( + OpenAI::Beta::CodeInterpreterTool::OrHash, + OpenAI::Beta::ThreadCreateAndRunParams::Thread::Message::Attachment::Tool::FileSearch::OrHash + ) + ] + ).returns(T.attached_class) end def self.new( # The ID of the file to attach to the message. file_id: nil, # The tools to add this file to. tools: nil - ); end + ) + end + sig do - override - .returns( - { - file_id: String, - tools: T::Array[ + override.returns( + { + file_id: String, + tools: + T::Array[ T.any( - OpenAI::Models::Beta::CodeInterpreterTool, - OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::Message::Attachment::Tool::FileSearch + OpenAI::Beta::CodeInterpreterTool, + OpenAI::Beta::ThreadCreateAndRunParams::Thread::Message::Attachment::Tool::FileSearch ) ] - } - ) + } + ) + end + def to_hash end - def to_hash; end module Tool extend OpenAI::Internal::Type::Union + Variants = + T.type_alias do + T.any( + OpenAI::Beta::CodeInterpreterTool, + OpenAI::Beta::ThreadCreateAndRunParams::Thread::Message::Attachment::Tool::FileSearch + ) + end + class FileSearch < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any(T.self_type, OpenAI::Internal::AnyHash) + end + # The type of tool being defined: `file_search` sig { returns(Symbol) } attr_accessor :type @@ -702,48 +835,62 @@ module OpenAI def self.new( # The type of tool being defined: `file_search` type: :file_search - ); end - sig { override.returns({type: Symbol}) } - def to_hash; end + ) + end + + sig { override.returns({ type: Symbol }) } + def to_hash + end end sig do - override - .returns( - [OpenAI::Models::Beta::CodeInterpreterTool, OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::Message::Attachment::Tool::FileSearch] - ) + override.returns( + T::Array[ + OpenAI::Beta::ThreadCreateAndRunParams::Thread::Message::Attachment::Tool::Variants + ] + ) + end + def self.variants end - def self.variants; end end end end class ToolResources < OpenAI::Internal::Type::BaseModel - sig { returns(T.nilable(OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::ToolResources::CodeInterpreter)) } - attr_reader :code_interpreter + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } sig do - params( - code_interpreter: T.any( - OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::ToolResources::CodeInterpreter, - OpenAI::Internal::AnyHash + returns( + T.nilable( + OpenAI::Beta::ThreadCreateAndRunParams::Thread::ToolResources::CodeInterpreter ) ) - .void + end + attr_reader :code_interpreter + + sig do + params( + code_interpreter: + OpenAI::Beta::ThreadCreateAndRunParams::Thread::ToolResources::CodeInterpreter::OrHash + ).void end attr_writer :code_interpreter - sig { returns(T.nilable(OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch)) } + sig do + returns( + T.nilable( + OpenAI::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch + ) + ) + end attr_reader :file_search sig do params( - file_search: T.any( - OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch, - OpenAI::Internal::AnyHash - ) - ) - .void + file_search: + OpenAI::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::OrHash + ).void end attr_writer :file_search @@ -753,31 +900,32 @@ module OpenAI # tool requires a list of vector store IDs. sig do params( - code_interpreter: T.any( - OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::ToolResources::CodeInterpreter, - OpenAI::Internal::AnyHash - ), - file_search: T.any( - OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch, - OpenAI::Internal::AnyHash - ) - ) - .returns(T.attached_class) + code_interpreter: + OpenAI::Beta::ThreadCreateAndRunParams::Thread::ToolResources::CodeInterpreter::OrHash, + file_search: + OpenAI::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::OrHash + ).returns(T.attached_class) + end + def self.new(code_interpreter: nil, file_search: nil) end - def self.new(code_interpreter: nil, file_search: nil); end sig do - override - .returns( - { - code_interpreter: OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::ToolResources::CodeInterpreter, - file_search: OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch - } - ) + override.returns( + { + code_interpreter: + OpenAI::Beta::ThreadCreateAndRunParams::Thread::ToolResources::CodeInterpreter, + file_search: + OpenAI::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch + } + ) + end + def to_hash end - def to_hash; end class CodeInterpreter < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # A list of [file](https://platform.openai.com/docs/api-reference/files) IDs made # available to the `code_interpreter` tool. There can be a maximum of 20 files # associated with the tool. @@ -787,18 +935,26 @@ module OpenAI sig { params(file_ids: T::Array[String]).void } attr_writer :file_ids - sig { params(file_ids: T::Array[String]).returns(T.attached_class) } + sig do + params(file_ids: T::Array[String]).returns(T.attached_class) + end def self.new( # A list of [file](https://platform.openai.com/docs/api-reference/files) IDs made # available to the `code_interpreter` tool. There can be a maximum of 20 files # associated with the tool. file_ids: nil - ); end - sig { override.returns({file_ids: T::Array[String]}) } - def to_hash; end + ) + end + + sig { override.returns({ file_ids: T::Array[String] }) } + def to_hash + end end class FileSearch < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The # [vector store](https://platform.openai.com/docs/api-reference/vector-stores/object) # attached to this thread. There can be a maximum of 1 vector store attached to @@ -816,7 +972,9 @@ module OpenAI sig do returns( T.nilable( - T::Array[OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore] + T::Array[ + OpenAI::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore + ] ) ) end @@ -824,28 +982,22 @@ module OpenAI sig do params( - vector_stores: T::Array[ - T.any( - OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore, - OpenAI::Internal::AnyHash - ) - ] - ) - .void + vector_stores: + T::Array[ + OpenAI::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore::OrHash + ] + ).void end attr_writer :vector_stores sig do params( vector_store_ids: T::Array[String], - vector_stores: T::Array[ - T.any( - OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore, - OpenAI::Internal::AnyHash - ) - ] - ) - .returns(T.attached_class) + vector_stores: + T::Array[ + OpenAI::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore::OrHash + ] + ).returns(T.attached_class) end def self.new( # The @@ -858,27 +1010,35 @@ module OpenAI # with file_ids and attach it to this thread. There can be a maximum of 1 vector # store attached to the thread. vector_stores: nil - ); end + ) + end + sig do - override - .returns( - { - vector_store_ids: T::Array[String], - vector_stores: T::Array[OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore] - } - ) + override.returns( + { + vector_store_ids: T::Array[String], + vector_stores: + T::Array[ + OpenAI::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore + ] + } + ) + end + def to_hash end - def to_hash; end class VectorStore < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The chunking strategy used to chunk the file(s). If not set, will use the `auto` # strategy. sig do returns( T.nilable( T.any( - OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Auto, - OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static + OpenAI::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Auto, + OpenAI::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static ) ) ) @@ -887,13 +1047,12 @@ module OpenAI sig do params( - chunking_strategy: T.any( - OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Auto, - OpenAI::Internal::AnyHash, - OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static - ) - ) - .void + chunking_strategy: + T.any( + OpenAI::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Auto::OrHash, + OpenAI::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static::OrHash + ) + ).void end attr_writer :chunking_strategy @@ -917,15 +1076,14 @@ module OpenAI sig do params( - chunking_strategy: T.any( - OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Auto, - OpenAI::Internal::AnyHash, - OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static - ), + chunking_strategy: + T.any( + OpenAI::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Auto::OrHash, + OpenAI::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static::OrHash + ), file_ids: T::Array[String], metadata: T.nilable(T::Hash[Symbol, String]) - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # The chunking strategy used to chunk the file(s). If not set, will use the `auto` @@ -942,28 +1100,44 @@ module OpenAI # Keys are strings with a maximum length of 64 characters. Values are strings with # a maximum length of 512 characters. metadata: nil - ); end + ) + end + sig do - override - .returns( - { - chunking_strategy: T.any( - OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Auto, - OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static + override.returns( + { + chunking_strategy: + T.any( + OpenAI::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Auto, + OpenAI::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static ), - file_ids: T::Array[String], - metadata: T.nilable(T::Hash[Symbol, String]) - } - ) + file_ids: T::Array[String], + metadata: T.nilable(T::Hash[Symbol, String]) + } + ) + end + def to_hash end - def to_hash; end # The chunking strategy used to chunk the file(s). If not set, will use the `auto` # strategy. module ChunkingStrategy extend OpenAI::Internal::Type::Union + Variants = + T.type_alias do + T.any( + OpenAI::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Auto, + OpenAI::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static + ) + end + class Auto < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any(T.self_type, OpenAI::Internal::AnyHash) + end + # Always `auto`. sig { returns(Symbol) } attr_accessor :type @@ -974,27 +1148,32 @@ module OpenAI def self.new( # Always `auto`. type: :auto - ); end - sig { override.returns({type: Symbol}) } - def to_hash; end + ) + end + + sig { override.returns({ type: Symbol }) } + def to_hash + end end class Static < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any(T.self_type, OpenAI::Internal::AnyHash) + end + sig do returns( - OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static::Static + OpenAI::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static::Static ) end attr_reader :static sig do params( - static: T.any( - OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static::Static, - OpenAI::Internal::AnyHash - ) - ) - .void + static: + OpenAI::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static::Static::OrHash + ).void end attr_writer :static @@ -1004,31 +1183,36 @@ module OpenAI sig do params( - static: T.any( - OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static::Static, - OpenAI::Internal::AnyHash - ), + static: + OpenAI::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static::Static::OrHash, type: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( static:, # Always `static`. type: :static - ); end + ) + end + sig do - override - .returns( - { - static: OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static::Static, - type: Symbol - } - ) + override.returns( + { + static: + OpenAI::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static::Static, + type: Symbol + } + ) + end + def to_hash end - def to_hash; end class Static < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any(T.self_type, OpenAI::Internal::AnyHash) + end + # The number of tokens that overlap between chunks. The default value is `400`. # # Note that the overlap must not exceed half of `max_chunk_size_tokens`. @@ -1054,21 +1238,31 @@ module OpenAI # The maximum number of tokens in each chunk. The default value is `800`. The # minimum value is `100` and the maximum value is `4096`. max_chunk_size_tokens: - ); end + ) + end + sig do - override.returns({chunk_overlap_tokens: Integer, max_chunk_size_tokens: Integer}) + override.returns( + { + chunk_overlap_tokens: Integer, + max_chunk_size_tokens: Integer + } + ) + end + def to_hash end - def to_hash; end end end sig do - override - .returns( - [OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Auto, OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static] - ) + override.returns( + T::Array[ + OpenAI::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Variants + ] + ) + end + def self.variants end - def self.variants; end end end end @@ -1076,31 +1270,40 @@ module OpenAI end class ToolResources < OpenAI::Internal::Type::BaseModel - sig { returns(T.nilable(OpenAI::Models::Beta::ThreadCreateAndRunParams::ToolResources::CodeInterpreter)) } - attr_reader :code_interpreter + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } sig do - params( - code_interpreter: T.any( - OpenAI::Models::Beta::ThreadCreateAndRunParams::ToolResources::CodeInterpreter, - OpenAI::Internal::AnyHash + returns( + T.nilable( + OpenAI::Beta::ThreadCreateAndRunParams::ToolResources::CodeInterpreter ) ) - .void + end + attr_reader :code_interpreter + + sig do + params( + code_interpreter: + OpenAI::Beta::ThreadCreateAndRunParams::ToolResources::CodeInterpreter::OrHash + ).void end attr_writer :code_interpreter - sig { returns(T.nilable(OpenAI::Models::Beta::ThreadCreateAndRunParams::ToolResources::FileSearch)) } + sig do + returns( + T.nilable( + OpenAI::Beta::ThreadCreateAndRunParams::ToolResources::FileSearch + ) + ) + end attr_reader :file_search sig do params( - file_search: T.any( - OpenAI::Models::Beta::ThreadCreateAndRunParams::ToolResources::FileSearch, - OpenAI::Internal::AnyHash - ) - ) - .void + file_search: + OpenAI::Beta::ThreadCreateAndRunParams::ToolResources::FileSearch::OrHash + ).void end attr_writer :file_search @@ -1110,31 +1313,32 @@ module OpenAI # IDs. sig do params( - code_interpreter: T.any( - OpenAI::Models::Beta::ThreadCreateAndRunParams::ToolResources::CodeInterpreter, - OpenAI::Internal::AnyHash - ), - file_search: T.any( - OpenAI::Models::Beta::ThreadCreateAndRunParams::ToolResources::FileSearch, - OpenAI::Internal::AnyHash - ) - ) - .returns(T.attached_class) + code_interpreter: + OpenAI::Beta::ThreadCreateAndRunParams::ToolResources::CodeInterpreter::OrHash, + file_search: + OpenAI::Beta::ThreadCreateAndRunParams::ToolResources::FileSearch::OrHash + ).returns(T.attached_class) + end + def self.new(code_interpreter: nil, file_search: nil) end - def self.new(code_interpreter: nil, file_search: nil); end sig do - override - .returns( - { - code_interpreter: OpenAI::Models::Beta::ThreadCreateAndRunParams::ToolResources::CodeInterpreter, - file_search: OpenAI::Models::Beta::ThreadCreateAndRunParams::ToolResources::FileSearch - } - ) + override.returns( + { + code_interpreter: + OpenAI::Beta::ThreadCreateAndRunParams::ToolResources::CodeInterpreter, + file_search: + OpenAI::Beta::ThreadCreateAndRunParams::ToolResources::FileSearch + } + ) + end + def to_hash end - def to_hash; end class CodeInterpreter < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # A list of [file](https://platform.openai.com/docs/api-reference/files) IDs made # available to the `code_interpreter` tool. There can be a maximum of 20 files # associated with the tool. @@ -1150,12 +1354,18 @@ module OpenAI # available to the `code_interpreter` tool. There can be a maximum of 20 files # associated with the tool. file_ids: nil - ); end - sig { override.returns({file_ids: T::Array[String]}) } - def to_hash; end + ) + end + + sig { override.returns({ file_ids: T::Array[String] }) } + def to_hash + end end class FileSearch < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The ID of the # [vector store](https://platform.openai.com/docs/api-reference/vector-stores/object) # attached to this assistant. There can be a maximum of 1 vector store attached to @@ -1166,25 +1376,39 @@ module OpenAI sig { params(vector_store_ids: T::Array[String]).void } attr_writer :vector_store_ids - sig { params(vector_store_ids: T::Array[String]).returns(T.attached_class) } + sig do + params(vector_store_ids: T::Array[String]).returns( + T.attached_class + ) + end def self.new( # The ID of the # [vector store](https://platform.openai.com/docs/api-reference/vector-stores/object) # attached to this assistant. There can be a maximum of 1 vector store attached to # the assistant. vector_store_ids: nil - ); end - sig { override.returns({vector_store_ids: T::Array[String]}) } - def to_hash; end + ) + end + + sig { override.returns({ vector_store_ids: T::Array[String] }) } + def to_hash + end end end class TruncationStrategy < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The truncation strategy to use for the thread. The default is `auto`. If set to # `last_messages`, the thread will be truncated to the n most recent messages in # the thread. When set to `auto`, messages in the middle of the thread will be # dropped to fit the context length of the model, `max_prompt_tokens`. - sig { returns(OpenAI::Models::Beta::ThreadCreateAndRunParams::TruncationStrategy::Type::OrSymbol) } + sig do + returns( + OpenAI::Beta::ThreadCreateAndRunParams::TruncationStrategy::Type::OrSymbol + ) + end attr_accessor :type # The number of most recent messages from the thread when constructing the context @@ -1196,10 +1420,10 @@ module OpenAI # control the intial context window of the run. sig do params( - type: OpenAI::Models::Beta::ThreadCreateAndRunParams::TruncationStrategy::Type::OrSymbol, + type: + OpenAI::Beta::ThreadCreateAndRunParams::TruncationStrategy::Type::OrSymbol, last_messages: T.nilable(Integer) - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # The truncation strategy to use for the thread. The default is `auto`. If set to @@ -1210,17 +1434,20 @@ module OpenAI # The number of most recent messages from the thread when constructing the context # for the run. last_messages: nil - ); end + ) + end + sig do - override - .returns( - { - type: OpenAI::Models::Beta::ThreadCreateAndRunParams::TruncationStrategy::Type::OrSymbol, - last_messages: T.nilable(Integer) - } - ) + override.returns( + { + type: + OpenAI::Beta::ThreadCreateAndRunParams::TruncationStrategy::Type::OrSymbol, + last_messages: T.nilable(Integer) + } + ) + end + def to_hash end - def to_hash; end # The truncation strategy to use for the thread. The default is `auto`. If set to # `last_messages`, the thread will be truncated to the n most recent messages in @@ -1230,22 +1457,34 @@ module OpenAI extend OpenAI::Internal::Type::Enum TaggedSymbol = - T.type_alias { T.all(Symbol, OpenAI::Models::Beta::ThreadCreateAndRunParams::TruncationStrategy::Type) } + T.type_alias do + T.all( + Symbol, + OpenAI::Beta::ThreadCreateAndRunParams::TruncationStrategy::Type + ) + end OrSymbol = T.type_alias { T.any(Symbol, String) } AUTO = - T.let(:auto, OpenAI::Models::Beta::ThreadCreateAndRunParams::TruncationStrategy::Type::TaggedSymbol) + T.let( + :auto, + OpenAI::Beta::ThreadCreateAndRunParams::TruncationStrategy::Type::TaggedSymbol + ) LAST_MESSAGES = T.let( :last_messages, - OpenAI::Models::Beta::ThreadCreateAndRunParams::TruncationStrategy::Type::TaggedSymbol + OpenAI::Beta::ThreadCreateAndRunParams::TruncationStrategy::Type::TaggedSymbol ) sig do - override - .returns(T::Array[OpenAI::Models::Beta::ThreadCreateAndRunParams::TruncationStrategy::Type::TaggedSymbol]) + override.returns( + T::Array[ + OpenAI::Beta::ThreadCreateAndRunParams::TruncationStrategy::Type::TaggedSymbol + ] + ) + end + def self.values end - def self.values; end end end end diff --git a/rbi/openai/models/beta/thread_create_params.rbi b/rbi/openai/models/beta/thread_create_params.rbi index 7a7ae81c..fa4f781f 100644 --- a/rbi/openai/models/beta/thread_create_params.rbi +++ b/rbi/openai/models/beta/thread_create_params.rbi @@ -7,16 +7,22 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # A list of [messages](https://platform.openai.com/docs/api-reference/messages) to # start the thread with. - sig { returns(T.nilable(T::Array[OpenAI::Models::Beta::ThreadCreateParams::Message])) } + sig do + returns( + T.nilable(T::Array[OpenAI::Beta::ThreadCreateParams::Message]) + ) + end attr_reader :messages sig do params( - messages: T::Array[T.any(OpenAI::Models::Beta::ThreadCreateParams::Message, OpenAI::Internal::AnyHash)] - ) - .void + messages: + T::Array[OpenAI::Beta::ThreadCreateParams::Message::OrHash] + ).void end attr_writer :messages @@ -33,25 +39,30 @@ module OpenAI # thread. 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. - sig { returns(T.nilable(OpenAI::Models::Beta::ThreadCreateParams::ToolResources)) } + sig do + returns(T.nilable(OpenAI::Beta::ThreadCreateParams::ToolResources)) + end attr_reader :tool_resources sig do params( - tool_resources: T.nilable(T.any(OpenAI::Models::Beta::ThreadCreateParams::ToolResources, OpenAI::Internal::AnyHash)) - ) - .void + tool_resources: + T.nilable(OpenAI::Beta::ThreadCreateParams::ToolResources::OrHash) + ).void end attr_writer :tool_resources sig do params( - messages: T::Array[T.any(OpenAI::Models::Beta::ThreadCreateParams::Message, OpenAI::Internal::AnyHash)], + messages: + T::Array[OpenAI::Beta::ThreadCreateParams::Message::OrHash], metadata: T.nilable(T::Hash[Symbol, String]), - tool_resources: T.nilable(T.any(OpenAI::Models::Beta::ThreadCreateParams::ToolResources, OpenAI::Internal::AnyHash)), - request_options: T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash) - ) - .returns(T.attached_class) + tool_resources: + T.nilable( + OpenAI::Beta::ThreadCreateParams::ToolResources::OrHash + ), + request_options: OpenAI::RequestOptions::OrHash + ).returns(T.attached_class) end def self.new( # A list of [messages](https://platform.openai.com/docs/api-reference/messages) to @@ -70,21 +81,27 @@ module OpenAI # tool requires a list of vector store IDs. tool_resources: nil, request_options: {} - ); end + ) + end + sig do - override - .returns( - { - messages: T::Array[OpenAI::Models::Beta::ThreadCreateParams::Message], - metadata: T.nilable(T::Hash[Symbol, String]), - tool_resources: T.nilable(OpenAI::Models::Beta::ThreadCreateParams::ToolResources), - request_options: OpenAI::RequestOptions - } - ) + override.returns( + { + messages: T::Array[OpenAI::Beta::ThreadCreateParams::Message], + metadata: T.nilable(T::Hash[Symbol, String]), + tool_resources: + T.nilable(OpenAI::Beta::ThreadCreateParams::ToolResources), + request_options: OpenAI::RequestOptions + } + ) + end + def to_hash end - def to_hash; end class Message < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The text contents of the message. sig do returns( @@ -92,9 +109,9 @@ module OpenAI String, T::Array[ T.any( - OpenAI::Models::Beta::Threads::ImageFileContentBlock, - OpenAI::Models::Beta::Threads::ImageURLContentBlock, - OpenAI::Models::Beta::Threads::TextContentBlockParam + OpenAI::Beta::Threads::ImageFileContentBlock, + OpenAI::Beta::Threads::ImageURLContentBlock, + OpenAI::Beta::Threads::TextContentBlockParam ) ] ) @@ -108,11 +125,19 @@ module OpenAI # most cases to represent user-generated messages. # - `assistant`: Indicates the message is generated by the assistant. Use this # value to insert messages from the assistant into the conversation. - sig { returns(OpenAI::Models::Beta::ThreadCreateParams::Message::Role::OrSymbol) } + sig do + returns(OpenAI::Beta::ThreadCreateParams::Message::Role::OrSymbol) + end attr_accessor :role # A list of files attached to the message, and the tools they should be added to. - sig { returns(T.nilable(T::Array[OpenAI::Models::Beta::ThreadCreateParams::Message::Attachment])) } + sig do + returns( + T.nilable( + T::Array[OpenAI::Beta::ThreadCreateParams::Message::Attachment] + ) + ) + end attr_accessor :attachments # Set of 16 key-value pairs that can be attached to an object. This can be useful @@ -126,24 +151,26 @@ module OpenAI sig do params( - content: T.any( - String, - T::Array[ - T.any( - OpenAI::Models::Beta::Threads::ImageFileContentBlock, - OpenAI::Internal::AnyHash, - OpenAI::Models::Beta::Threads::ImageURLContentBlock, - OpenAI::Models::Beta::Threads::TextContentBlockParam - ) - ] - ), - role: OpenAI::Models::Beta::ThreadCreateParams::Message::Role::OrSymbol, - attachments: T.nilable( - T::Array[T.any(OpenAI::Models::Beta::ThreadCreateParams::Message::Attachment, OpenAI::Internal::AnyHash)] - ), + content: + T.any( + String, + T::Array[ + T.any( + OpenAI::Beta::Threads::ImageFileContentBlock::OrHash, + OpenAI::Beta::Threads::ImageURLContentBlock::OrHash, + OpenAI::Beta::Threads::TextContentBlockParam::OrHash + ) + ] + ), + role: OpenAI::Beta::ThreadCreateParams::Message::Role::OrSymbol, + attachments: + T.nilable( + T::Array[ + OpenAI::Beta::ThreadCreateParams::Message::Attachment::OrHash + ] + ), metadata: T.nilable(T::Hash[Symbol, String]) - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # The text contents of the message. @@ -164,53 +191,70 @@ module OpenAI # Keys are strings with a maximum length of 64 characters. Values are strings with # a maximum length of 512 characters. metadata: nil - ); end + ) + end + sig do - override - .returns( - { - content: T.any( + override.returns( + { + content: + T.any( String, T::Array[ T.any( - OpenAI::Models::Beta::Threads::ImageFileContentBlock, - OpenAI::Models::Beta::Threads::ImageURLContentBlock, - OpenAI::Models::Beta::Threads::TextContentBlockParam + OpenAI::Beta::Threads::ImageFileContentBlock, + OpenAI::Beta::Threads::ImageURLContentBlock, + OpenAI::Beta::Threads::TextContentBlockParam ) ] ), - role: OpenAI::Models::Beta::ThreadCreateParams::Message::Role::OrSymbol, - attachments: T.nilable(T::Array[OpenAI::Models::Beta::ThreadCreateParams::Message::Attachment]), - metadata: T.nilable(T::Hash[Symbol, String]) - } - ) + role: OpenAI::Beta::ThreadCreateParams::Message::Role::OrSymbol, + attachments: + T.nilable( + T::Array[ + OpenAI::Beta::ThreadCreateParams::Message::Attachment + ] + ), + metadata: T.nilable(T::Hash[Symbol, String]) + } + ) + end + def to_hash end - def to_hash; end # The text contents of the message. module Content extend OpenAI::Internal::Type::Union - sig do - override - .returns( - [ - String, - T::Array[ - T.any( - OpenAI::Models::Beta::Threads::ImageFileContentBlock, - OpenAI::Models::Beta::Threads::ImageURLContentBlock, - OpenAI::Models::Beta::Threads::TextContentBlockParam - ) - ] + Variants = + T.type_alias do + T.any( + String, + T::Array[ + T.any( + OpenAI::Beta::Threads::ImageFileContentBlock, + OpenAI::Beta::Threads::ImageURLContentBlock, + OpenAI::Beta::Threads::TextContentBlockParam + ) ] ) + end + + sig do + override.returns( + T::Array[ + OpenAI::Beta::ThreadCreateParams::Message::Content::Variants + ] + ) + end + def self.variants end - def self.variants; end MessageContentPartParamArray = T.let( - OpenAI::Internal::Type::ArrayOf[union: OpenAI::Models::Beta::Threads::MessageContentPartParam], + OpenAI::Internal::Type::ArrayOf[ + union: OpenAI::Beta::Threads::MessageContentPartParam + ], OpenAI::Internal::Type::Converter ) end @@ -224,17 +268,38 @@ module OpenAI module Role extend OpenAI::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::Beta::ThreadCreateParams::Message::Role) } + TaggedSymbol = + T.type_alias do + T.all(Symbol, OpenAI::Beta::ThreadCreateParams::Message::Role) + end OrSymbol = T.type_alias { T.any(Symbol, String) } - USER = T.let(:user, OpenAI::Models::Beta::ThreadCreateParams::Message::Role::TaggedSymbol) - ASSISTANT = T.let(:assistant, OpenAI::Models::Beta::ThreadCreateParams::Message::Role::TaggedSymbol) + USER = + T.let( + :user, + OpenAI::Beta::ThreadCreateParams::Message::Role::TaggedSymbol + ) + ASSISTANT = + T.let( + :assistant, + OpenAI::Beta::ThreadCreateParams::Message::Role::TaggedSymbol + ) - sig { override.returns(T::Array[OpenAI::Models::Beta::ThreadCreateParams::Message::Role::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[ + OpenAI::Beta::ThreadCreateParams::Message::Role::TaggedSymbol + ] + ) + end + def self.values + end end class Attachment < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The ID of the file to attach to the message. sig { returns(T.nilable(String)) } attr_reader :file_id @@ -248,8 +313,8 @@ module OpenAI T.nilable( T::Array[ T.any( - OpenAI::Models::Beta::CodeInterpreterTool, - OpenAI::Models::Beta::ThreadCreateParams::Message::Attachment::Tool::FileSearch + OpenAI::Beta::CodeInterpreterTool, + OpenAI::Beta::ThreadCreateParams::Message::Attachment::Tool::FileSearch ) ] ) @@ -259,57 +324,69 @@ module OpenAI sig do params( - tools: T::Array[ - T.any( - OpenAI::Models::Beta::CodeInterpreterTool, - OpenAI::Internal::AnyHash, - OpenAI::Models::Beta::ThreadCreateParams::Message::Attachment::Tool::FileSearch - ) - ] - ) - .void + tools: + T::Array[ + T.any( + OpenAI::Beta::CodeInterpreterTool::OrHash, + OpenAI::Beta::ThreadCreateParams::Message::Attachment::Tool::FileSearch::OrHash + ) + ] + ).void end attr_writer :tools sig do params( file_id: String, - tools: T::Array[ - T.any( - OpenAI::Models::Beta::CodeInterpreterTool, - OpenAI::Internal::AnyHash, - OpenAI::Models::Beta::ThreadCreateParams::Message::Attachment::Tool::FileSearch - ) - ] - ) - .returns(T.attached_class) + tools: + T::Array[ + T.any( + OpenAI::Beta::CodeInterpreterTool::OrHash, + OpenAI::Beta::ThreadCreateParams::Message::Attachment::Tool::FileSearch::OrHash + ) + ] + ).returns(T.attached_class) end def self.new( # The ID of the file to attach to the message. file_id: nil, # The tools to add this file to. tools: nil - ); end + ) + end + sig do - override - .returns( - { - file_id: String, - tools: T::Array[ + override.returns( + { + file_id: String, + tools: + T::Array[ T.any( - OpenAI::Models::Beta::CodeInterpreterTool, - OpenAI::Models::Beta::ThreadCreateParams::Message::Attachment::Tool::FileSearch + OpenAI::Beta::CodeInterpreterTool, + OpenAI::Beta::ThreadCreateParams::Message::Attachment::Tool::FileSearch ) ] - } - ) + } + ) + end + def to_hash end - def to_hash; end module Tool extend OpenAI::Internal::Type::Union + Variants = + T.type_alias do + T.any( + OpenAI::Beta::CodeInterpreterTool, + OpenAI::Beta::ThreadCreateParams::Message::Attachment::Tool::FileSearch + ) + end + class FileSearch < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The type of tool being defined: `file_search` sig { returns(Symbol) } attr_accessor :type @@ -318,42 +395,62 @@ module OpenAI def self.new( # The type of tool being defined: `file_search` type: :file_search - ); end - sig { override.returns({type: Symbol}) } - def to_hash; end + ) + end + + sig { override.returns({ type: Symbol }) } + def to_hash + end end sig do - override - .returns( - [OpenAI::Models::Beta::CodeInterpreterTool, OpenAI::Models::Beta::ThreadCreateParams::Message::Attachment::Tool::FileSearch] - ) + override.returns( + T::Array[ + OpenAI::Beta::ThreadCreateParams::Message::Attachment::Tool::Variants + ] + ) + end + def self.variants end - def self.variants; end end end end class ToolResources < OpenAI::Internal::Type::BaseModel - sig { returns(T.nilable(OpenAI::Models::Beta::ThreadCreateParams::ToolResources::CodeInterpreter)) } + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + + sig do + returns( + T.nilable( + OpenAI::Beta::ThreadCreateParams::ToolResources::CodeInterpreter + ) + ) + end attr_reader :code_interpreter sig do params( - code_interpreter: T.any(OpenAI::Models::Beta::ThreadCreateParams::ToolResources::CodeInterpreter, OpenAI::Internal::AnyHash) - ) - .void + code_interpreter: + OpenAI::Beta::ThreadCreateParams::ToolResources::CodeInterpreter::OrHash + ).void end attr_writer :code_interpreter - sig { returns(T.nilable(OpenAI::Models::Beta::ThreadCreateParams::ToolResources::FileSearch)) } + sig do + returns( + T.nilable( + OpenAI::Beta::ThreadCreateParams::ToolResources::FileSearch + ) + ) + end attr_reader :file_search sig do params( - file_search: T.any(OpenAI::Models::Beta::ThreadCreateParams::ToolResources::FileSearch, OpenAI::Internal::AnyHash) - ) - .void + file_search: + OpenAI::Beta::ThreadCreateParams::ToolResources::FileSearch::OrHash + ).void end attr_writer :file_search @@ -363,25 +460,32 @@ module OpenAI # tool requires a list of vector store IDs. sig do params( - code_interpreter: T.any(OpenAI::Models::Beta::ThreadCreateParams::ToolResources::CodeInterpreter, OpenAI::Internal::AnyHash), - file_search: T.any(OpenAI::Models::Beta::ThreadCreateParams::ToolResources::FileSearch, OpenAI::Internal::AnyHash) - ) - .returns(T.attached_class) + code_interpreter: + OpenAI::Beta::ThreadCreateParams::ToolResources::CodeInterpreter::OrHash, + file_search: + OpenAI::Beta::ThreadCreateParams::ToolResources::FileSearch::OrHash + ).returns(T.attached_class) + end + def self.new(code_interpreter: nil, file_search: nil) end - def self.new(code_interpreter: nil, file_search: nil); end sig do - override - .returns( - { - code_interpreter: OpenAI::Models::Beta::ThreadCreateParams::ToolResources::CodeInterpreter, - file_search: OpenAI::Models::Beta::ThreadCreateParams::ToolResources::FileSearch - } - ) + override.returns( + { + code_interpreter: + OpenAI::Beta::ThreadCreateParams::ToolResources::CodeInterpreter, + file_search: + OpenAI::Beta::ThreadCreateParams::ToolResources::FileSearch + } + ) + end + def to_hash end - def to_hash; end class CodeInterpreter < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # A list of [file](https://platform.openai.com/docs/api-reference/files) IDs made # available to the `code_interpreter` tool. There can be a maximum of 20 files # associated with the tool. @@ -397,12 +501,18 @@ module OpenAI # available to the `code_interpreter` tool. There can be a maximum of 20 files # associated with the tool. file_ids: nil - ); end - sig { override.returns({file_ids: T::Array[String]}) } - def to_hash; end + ) + end + + sig { override.returns({ file_ids: T::Array[String] }) } + def to_hash + end end class FileSearch < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The # [vector store](https://platform.openai.com/docs/api-reference/vector-stores/object) # attached to this thread. There can be a maximum of 1 vector store attached to @@ -419,35 +529,33 @@ module OpenAI # store attached to the thread. sig do returns( - T.nilable(T::Array[OpenAI::Models::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore]) + T.nilable( + T::Array[ + OpenAI::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore + ] + ) ) end attr_reader :vector_stores sig do params( - vector_stores: T::Array[ - T.any( - OpenAI::Models::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore, - OpenAI::Internal::AnyHash - ) - ] - ) - .void + vector_stores: + T::Array[ + OpenAI::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore::OrHash + ] + ).void end attr_writer :vector_stores sig do params( vector_store_ids: T::Array[String], - vector_stores: T::Array[ - T.any( - OpenAI::Models::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore, - OpenAI::Internal::AnyHash - ) - ] - ) - .returns(T.attached_class) + vector_stores: + T::Array[ + OpenAI::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore::OrHash + ] + ).returns(T.attached_class) end def self.new( # The @@ -460,27 +568,35 @@ module OpenAI # with file_ids and attach it to this thread. There can be a maximum of 1 vector # store attached to the thread. vector_stores: nil - ); end + ) + end + sig do - override - .returns( - { - vector_store_ids: T::Array[String], - vector_stores: T::Array[OpenAI::Models::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore] - } - ) + override.returns( + { + vector_store_ids: T::Array[String], + vector_stores: + T::Array[ + OpenAI::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore + ] + } + ) + end + def to_hash end - def to_hash; end class VectorStore < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The chunking strategy used to chunk the file(s). If not set, will use the `auto` # strategy. sig do returns( T.nilable( T.any( - OpenAI::Models::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Auto, - OpenAI::Models::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static + OpenAI::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Auto, + OpenAI::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static ) ) ) @@ -489,13 +605,12 @@ module OpenAI sig do params( - chunking_strategy: T.any( - OpenAI::Models::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Auto, - OpenAI::Internal::AnyHash, - OpenAI::Models::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static - ) - ) - .void + chunking_strategy: + T.any( + OpenAI::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Auto::OrHash, + OpenAI::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static::OrHash + ) + ).void end attr_writer :chunking_strategy @@ -519,15 +634,14 @@ module OpenAI sig do params( - chunking_strategy: T.any( - OpenAI::Models::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Auto, - OpenAI::Internal::AnyHash, - OpenAI::Models::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static - ), + chunking_strategy: + T.any( + OpenAI::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Auto::OrHash, + OpenAI::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static::OrHash + ), file_ids: T::Array[String], metadata: T.nilable(T::Hash[Symbol, String]) - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # The chunking strategy used to chunk the file(s). If not set, will use the `auto` @@ -544,28 +658,44 @@ module OpenAI # Keys are strings with a maximum length of 64 characters. Values are strings with # a maximum length of 512 characters. metadata: nil - ); end + ) + end + sig do - override - .returns( - { - chunking_strategy: T.any( - OpenAI::Models::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Auto, - OpenAI::Models::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static + override.returns( + { + chunking_strategy: + T.any( + OpenAI::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Auto, + OpenAI::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static ), - file_ids: T::Array[String], - metadata: T.nilable(T::Hash[Symbol, String]) - } - ) + file_ids: T::Array[String], + metadata: T.nilable(T::Hash[Symbol, String]) + } + ) + end + def to_hash end - def to_hash; end # The chunking strategy used to chunk the file(s). If not set, will use the `auto` # strategy. module ChunkingStrategy extend OpenAI::Internal::Type::Union + Variants = + T.type_alias do + T.any( + OpenAI::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Auto, + OpenAI::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static + ) + end + class Auto < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any(T.self_type, OpenAI::Internal::AnyHash) + end + # Always `auto`. sig { returns(Symbol) } attr_accessor :type @@ -576,27 +706,32 @@ module OpenAI def self.new( # Always `auto`. type: :auto - ); end - sig { override.returns({type: Symbol}) } - def to_hash; end + ) + end + + sig { override.returns({ type: Symbol }) } + def to_hash + end end class Static < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any(T.self_type, OpenAI::Internal::AnyHash) + end + sig do returns( - OpenAI::Models::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static::Static + OpenAI::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static::Static ) end attr_reader :static sig do params( - static: T.any( - OpenAI::Models::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static::Static, - OpenAI::Internal::AnyHash - ) - ) - .void + static: + OpenAI::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static::Static::OrHash + ).void end attr_writer :static @@ -606,31 +741,36 @@ module OpenAI sig do params( - static: T.any( - OpenAI::Models::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static::Static, - OpenAI::Internal::AnyHash - ), + static: + OpenAI::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static::Static::OrHash, type: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( static:, # Always `static`. type: :static - ); end + ) + end + sig do - override - .returns( - { - static: OpenAI::Models::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static::Static, - type: Symbol - } - ) + override.returns( + { + static: + OpenAI::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static::Static, + type: Symbol + } + ) + end + def to_hash end - def to_hash; end class Static < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any(T.self_type, OpenAI::Internal::AnyHash) + end + # The number of tokens that overlap between chunks. The default value is `400`. # # Note that the overlap must not exceed half of `max_chunk_size_tokens`. @@ -656,19 +796,31 @@ module OpenAI # The maximum number of tokens in each chunk. The default value is `800`. The # minimum value is `100` and the maximum value is `4096`. max_chunk_size_tokens: - ); end - sig { override.returns({chunk_overlap_tokens: Integer, max_chunk_size_tokens: Integer}) } - def to_hash; end + ) + end + + sig do + override.returns( + { + chunk_overlap_tokens: Integer, + max_chunk_size_tokens: Integer + } + ) + end + def to_hash + end end end sig do - override - .returns( - [OpenAI::Models::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Auto, OpenAI::Models::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static] - ) + override.returns( + T::Array[ + OpenAI::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Variants + ] + ) + end + def self.variants end - def self.variants; end end end end diff --git a/rbi/openai/models/beta/thread_delete_params.rbi b/rbi/openai/models/beta/thread_delete_params.rbi index c9083423..6b2c04ba 100644 --- a/rbi/openai/models/beta/thread_delete_params.rbi +++ b/rbi/openai/models/beta/thread_delete_params.rbi @@ -7,18 +7,19 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + sig do - params( - request_options: T.any( - OpenAI::RequestOptions, - OpenAI::Internal::AnyHash - ) - ).returns(T.attached_class) + params(request_options: OpenAI::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: OpenAI::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: OpenAI::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/openai/models/beta/thread_deleted.rbi b/rbi/openai/models/beta/thread_deleted.rbi index 9944d075..c648d9ac 100644 --- a/rbi/openai/models/beta/thread_deleted.rbi +++ b/rbi/openai/models/beta/thread_deleted.rbi @@ -4,6 +4,8 @@ module OpenAI module Models module Beta class ThreadDeleted < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + sig { returns(String) } attr_accessor :id @@ -13,11 +15,19 @@ module OpenAI sig { returns(Symbol) } attr_accessor :object - sig { params(id: String, deleted: T::Boolean, object: Symbol).returns(T.attached_class) } - def self.new(id:, deleted:, object: :"thread.deleted"); end + sig do + params(id: String, deleted: T::Boolean, object: Symbol).returns( + T.attached_class + ) + end + def self.new(id:, deleted:, object: :"thread.deleted") + end - sig { override.returns({id: String, deleted: T::Boolean, object: Symbol}) } - def to_hash; end + sig do + override.returns({ id: String, deleted: T::Boolean, object: Symbol }) + end + def to_hash + end end end end diff --git a/rbi/openai/models/beta/thread_retrieve_params.rbi b/rbi/openai/models/beta/thread_retrieve_params.rbi index 7658004e..64fd5cd2 100644 --- a/rbi/openai/models/beta/thread_retrieve_params.rbi +++ b/rbi/openai/models/beta/thread_retrieve_params.rbi @@ -7,18 +7,19 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + sig do - params( - request_options: T.any( - OpenAI::RequestOptions, - OpenAI::Internal::AnyHash - ) - ).returns(T.attached_class) + params(request_options: OpenAI::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: OpenAI::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: OpenAI::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/openai/models/beta/thread_stream_event.rbi b/rbi/openai/models/beta/thread_stream_event.rbi index b8bd735a..cd6d25a0 100644 --- a/rbi/openai/models/beta/thread_stream_event.rbi +++ b/rbi/openai/models/beta/thread_stream_event.rbi @@ -4,12 +4,14 @@ module OpenAI module Models module Beta class ThreadStreamEvent < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Represents a thread that contains # [messages](https://platform.openai.com/docs/api-reference/messages). - sig { returns(OpenAI::Models::Beta::Thread) } + sig { returns(OpenAI::Beta::Thread) } attr_reader :data - sig { params(data: T.any(OpenAI::Models::Beta::Thread, OpenAI::Internal::AnyHash)).void } + sig { params(data: OpenAI::Beta::Thread::OrHash).void } attr_writer :data sig { returns(Symbol) } @@ -27,11 +29,10 @@ module OpenAI # created. sig do params( - data: T.any(OpenAI::Models::Beta::Thread, OpenAI::Internal::AnyHash), + data: OpenAI::Beta::Thread::OrHash, enabled: T::Boolean, event: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # Represents a thread that contains @@ -40,9 +41,16 @@ module OpenAI # Whether to enable input audio transcription. enabled: nil, event: :"thread.created" - ); end - sig { override.returns({data: OpenAI::Models::Beta::Thread, event: Symbol, enabled: T::Boolean}) } - def to_hash; end + ) + end + + sig do + override.returns( + { data: OpenAI::Beta::Thread, event: Symbol, enabled: T::Boolean } + ) + end + def to_hash + end end end end diff --git a/rbi/openai/models/beta/thread_update_params.rbi b/rbi/openai/models/beta/thread_update_params.rbi index 9af4b827..4244ec93 100644 --- a/rbi/openai/models/beta/thread_update_params.rbi +++ b/rbi/openai/models/beta/thread_update_params.rbi @@ -7,6 +7,8 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # 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. @@ -20,24 +22,28 @@ module OpenAI # thread. 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. - sig { returns(T.nilable(OpenAI::Models::Beta::ThreadUpdateParams::ToolResources)) } + sig do + returns(T.nilable(OpenAI::Beta::ThreadUpdateParams::ToolResources)) + end attr_reader :tool_resources sig do params( - tool_resources: T.nilable(T.any(OpenAI::Models::Beta::ThreadUpdateParams::ToolResources, OpenAI::Internal::AnyHash)) - ) - .void + tool_resources: + T.nilable(OpenAI::Beta::ThreadUpdateParams::ToolResources::OrHash) + ).void end attr_writer :tool_resources sig do params( metadata: T.nilable(T::Hash[Symbol, String]), - tool_resources: T.nilable(T.any(OpenAI::Models::Beta::ThreadUpdateParams::ToolResources, OpenAI::Internal::AnyHash)), - request_options: T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash) - ) - .returns(T.attached_class) + tool_resources: + T.nilable( + OpenAI::Beta::ThreadUpdateParams::ToolResources::OrHash + ), + request_options: OpenAI::RequestOptions::OrHash + ).returns(T.attached_class) end def self.new( # Set of 16 key-value pairs that can be attached to an object. This can be useful @@ -53,39 +59,57 @@ module OpenAI # tool requires a list of vector store IDs. tool_resources: nil, request_options: {} - ); end + ) + end + sig do - override - .returns( - { - metadata: T.nilable(T::Hash[Symbol, String]), - tool_resources: T.nilable(OpenAI::Models::Beta::ThreadUpdateParams::ToolResources), - request_options: OpenAI::RequestOptions - } - ) + override.returns( + { + metadata: T.nilable(T::Hash[Symbol, String]), + tool_resources: + T.nilable(OpenAI::Beta::ThreadUpdateParams::ToolResources), + request_options: OpenAI::RequestOptions + } + ) + end + def to_hash end - def to_hash; end class ToolResources < OpenAI::Internal::Type::BaseModel - sig { returns(T.nilable(OpenAI::Models::Beta::ThreadUpdateParams::ToolResources::CodeInterpreter)) } + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + + sig do + returns( + T.nilable( + OpenAI::Beta::ThreadUpdateParams::ToolResources::CodeInterpreter + ) + ) + end attr_reader :code_interpreter sig do params( - code_interpreter: T.any(OpenAI::Models::Beta::ThreadUpdateParams::ToolResources::CodeInterpreter, OpenAI::Internal::AnyHash) - ) - .void + code_interpreter: + OpenAI::Beta::ThreadUpdateParams::ToolResources::CodeInterpreter::OrHash + ).void end attr_writer :code_interpreter - sig { returns(T.nilable(OpenAI::Models::Beta::ThreadUpdateParams::ToolResources::FileSearch)) } + sig do + returns( + T.nilable( + OpenAI::Beta::ThreadUpdateParams::ToolResources::FileSearch + ) + ) + end attr_reader :file_search sig do params( - file_search: T.any(OpenAI::Models::Beta::ThreadUpdateParams::ToolResources::FileSearch, OpenAI::Internal::AnyHash) - ) - .void + file_search: + OpenAI::Beta::ThreadUpdateParams::ToolResources::FileSearch::OrHash + ).void end attr_writer :file_search @@ -95,25 +119,32 @@ module OpenAI # tool requires a list of vector store IDs. sig do params( - code_interpreter: T.any(OpenAI::Models::Beta::ThreadUpdateParams::ToolResources::CodeInterpreter, OpenAI::Internal::AnyHash), - file_search: T.any(OpenAI::Models::Beta::ThreadUpdateParams::ToolResources::FileSearch, OpenAI::Internal::AnyHash) - ) - .returns(T.attached_class) + code_interpreter: + OpenAI::Beta::ThreadUpdateParams::ToolResources::CodeInterpreter::OrHash, + file_search: + OpenAI::Beta::ThreadUpdateParams::ToolResources::FileSearch::OrHash + ).returns(T.attached_class) + end + def self.new(code_interpreter: nil, file_search: nil) end - def self.new(code_interpreter: nil, file_search: nil); end sig do - override - .returns( - { - code_interpreter: OpenAI::Models::Beta::ThreadUpdateParams::ToolResources::CodeInterpreter, - file_search: OpenAI::Models::Beta::ThreadUpdateParams::ToolResources::FileSearch - } - ) + override.returns( + { + code_interpreter: + OpenAI::Beta::ThreadUpdateParams::ToolResources::CodeInterpreter, + file_search: + OpenAI::Beta::ThreadUpdateParams::ToolResources::FileSearch + } + ) + end + def to_hash end - def to_hash; end class CodeInterpreter < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # A list of [file](https://platform.openai.com/docs/api-reference/files) IDs made # available to the `code_interpreter` tool. There can be a maximum of 20 files # associated with the tool. @@ -129,12 +160,18 @@ module OpenAI # available to the `code_interpreter` tool. There can be a maximum of 20 files # associated with the tool. file_ids: nil - ); end - sig { override.returns({file_ids: T::Array[String]}) } - def to_hash; end + ) + end + + sig { override.returns({ file_ids: T::Array[String] }) } + def to_hash + end end class FileSearch < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The # [vector store](https://platform.openai.com/docs/api-reference/vector-stores/object) # attached to this thread. There can be a maximum of 1 vector store attached to @@ -145,16 +182,23 @@ module OpenAI sig { params(vector_store_ids: T::Array[String]).void } attr_writer :vector_store_ids - sig { params(vector_store_ids: T::Array[String]).returns(T.attached_class) } + sig do + params(vector_store_ids: T::Array[String]).returns( + T.attached_class + ) + end def self.new( # The # [vector store](https://platform.openai.com/docs/api-reference/vector-stores/object) # attached to this thread. There can be a maximum of 1 vector store attached to # the thread. vector_store_ids: nil - ); end - sig { override.returns({vector_store_ids: T::Array[String]}) } - def to_hash; end + ) + end + + sig { override.returns({ vector_store_ids: T::Array[String] }) } + def to_hash + end end end end diff --git a/rbi/openai/models/beta/threads/annotation.rbi b/rbi/openai/models/beta/threads/annotation.rbi index 6ed86777..ee7c4ae0 100644 --- a/rbi/openai/models/beta/threads/annotation.rbi +++ b/rbi/openai/models/beta/threads/annotation.rbi @@ -10,13 +10,21 @@ module OpenAI module Annotation extend OpenAI::Internal::Type::Union - sig do - override - .returns( - [OpenAI::Models::Beta::Threads::FileCitationAnnotation, OpenAI::Models::Beta::Threads::FilePathAnnotation] + Variants = + T.type_alias do + T.any( + OpenAI::Beta::Threads::FileCitationAnnotation, + OpenAI::Beta::Threads::FilePathAnnotation ) + end + + sig do + override.returns( + T::Array[OpenAI::Beta::Threads::Annotation::Variants] + ) + end + def self.variants end - def self.variants; end end end end diff --git a/rbi/openai/models/beta/threads/annotation_delta.rbi b/rbi/openai/models/beta/threads/annotation_delta.rbi index deb39180..6bf8aeaa 100644 --- a/rbi/openai/models/beta/threads/annotation_delta.rbi +++ b/rbi/openai/models/beta/threads/annotation_delta.rbi @@ -10,13 +10,21 @@ module OpenAI module AnnotationDelta extend OpenAI::Internal::Type::Union - sig do - override - .returns( - [OpenAI::Models::Beta::Threads::FileCitationDeltaAnnotation, OpenAI::Models::Beta::Threads::FilePathDeltaAnnotation] + Variants = + T.type_alias do + T.any( + OpenAI::Beta::Threads::FileCitationDeltaAnnotation, + OpenAI::Beta::Threads::FilePathDeltaAnnotation ) + end + + sig do + override.returns( + T::Array[OpenAI::Beta::Threads::AnnotationDelta::Variants] + ) + end + def self.variants end - def self.variants; end end end end diff --git a/rbi/openai/models/beta/threads/file_citation_annotation.rbi b/rbi/openai/models/beta/threads/file_citation_annotation.rbi index 8f129c30..2fcaeee0 100644 --- a/rbi/openai/models/beta/threads/file_citation_annotation.rbi +++ b/rbi/openai/models/beta/threads/file_citation_annotation.rbi @@ -5,17 +5,22 @@ module OpenAI module Beta module Threads class FileCitationAnnotation < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + sig { returns(Integer) } attr_accessor :end_index - sig { returns(OpenAI::Models::Beta::Threads::FileCitationAnnotation::FileCitation) } + sig do + returns(OpenAI::Beta::Threads::FileCitationAnnotation::FileCitation) + end attr_reader :file_citation sig do params( - file_citation: T.any(OpenAI::Models::Beta::Threads::FileCitationAnnotation::FileCitation, OpenAI::Internal::AnyHash) - ) - .void + file_citation: + OpenAI::Beta::Threads::FileCitationAnnotation::FileCitation::OrHash + ).void end attr_writer :file_citation @@ -36,12 +41,12 @@ module OpenAI sig do params( end_index: Integer, - file_citation: T.any(OpenAI::Models::Beta::Threads::FileCitationAnnotation::FileCitation, OpenAI::Internal::AnyHash), + file_citation: + OpenAI::Beta::Threads::FileCitationAnnotation::FileCitation::OrHash, start_index: Integer, text: String, type: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( end_index:, @@ -51,22 +56,28 @@ module OpenAI text:, # Always `file_citation`. type: :file_citation - ); end + ) + end + sig do - override - .returns( - { - end_index: Integer, - file_citation: OpenAI::Models::Beta::Threads::FileCitationAnnotation::FileCitation, - start_index: Integer, - text: String, - type: Symbol - } - ) + override.returns( + { + end_index: Integer, + file_citation: + OpenAI::Beta::Threads::FileCitationAnnotation::FileCitation, + start_index: Integer, + text: String, + type: Symbol + } + ) + end + def to_hash end - def to_hash; end class FileCitation < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The ID of the specific File the citation is from. sig { returns(String) } attr_accessor :file_id @@ -75,9 +86,12 @@ module OpenAI def self.new( # The ID of the specific File the citation is from. file_id: - ); end - sig { override.returns({file_id: String}) } - def to_hash; end + ) + end + + sig { override.returns({ file_id: String }) } + def to_hash + end end end end diff --git a/rbi/openai/models/beta/threads/file_citation_delta_annotation.rbi b/rbi/openai/models/beta/threads/file_citation_delta_annotation.rbi index 5d81ac86..33d0dab1 100644 --- a/rbi/openai/models/beta/threads/file_citation_delta_annotation.rbi +++ b/rbi/openai/models/beta/threads/file_citation_delta_annotation.rbi @@ -5,6 +5,9 @@ module OpenAI module Beta module Threads class FileCitationDeltaAnnotation < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The index of the annotation in the text content part. sig { returns(Integer) } attr_accessor :index @@ -19,14 +22,20 @@ module OpenAI sig { params(end_index: Integer).void } attr_writer :end_index - sig { returns(T.nilable(OpenAI::Models::Beta::Threads::FileCitationDeltaAnnotation::FileCitation)) } + sig do + returns( + T.nilable( + OpenAI::Beta::Threads::FileCitationDeltaAnnotation::FileCitation + ) + ) + end attr_reader :file_citation sig do params( - file_citation: T.any(OpenAI::Models::Beta::Threads::FileCitationDeltaAnnotation::FileCitation, OpenAI::Internal::AnyHash) - ) - .void + file_citation: + OpenAI::Beta::Threads::FileCitationDeltaAnnotation::FileCitation::OrHash + ).void end attr_writer :file_citation @@ -50,12 +59,12 @@ module OpenAI params( index: Integer, end_index: Integer, - file_citation: T.any(OpenAI::Models::Beta::Threads::FileCitationDeltaAnnotation::FileCitation, OpenAI::Internal::AnyHash), + file_citation: + OpenAI::Beta::Threads::FileCitationDeltaAnnotation::FileCitation::OrHash, start_index: Integer, text: String, type: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # The index of the annotation in the text content part. @@ -67,23 +76,29 @@ module OpenAI text: nil, # Always `file_citation`. type: :file_citation - ); end + ) + end + sig do - override - .returns( - { - index: Integer, - type: Symbol, - end_index: Integer, - file_citation: OpenAI::Models::Beta::Threads::FileCitationDeltaAnnotation::FileCitation, - start_index: Integer, - text: String - } - ) + override.returns( + { + index: Integer, + type: Symbol, + end_index: Integer, + file_citation: + OpenAI::Beta::Threads::FileCitationDeltaAnnotation::FileCitation, + start_index: Integer, + text: String + } + ) + end + def to_hash end - def to_hash; end class FileCitation < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The ID of the specific File the citation is from. sig { returns(T.nilable(String)) } attr_reader :file_id @@ -98,15 +113,20 @@ module OpenAI sig { params(quote: String).void } attr_writer :quote - sig { params(file_id: String, quote: String).returns(T.attached_class) } + sig do + params(file_id: String, quote: String).returns(T.attached_class) + end def self.new( # The ID of the specific File the citation is from. file_id: nil, # The specific quote in the file. quote: nil - ); end - sig { override.returns({file_id: String, quote: String}) } - def to_hash; end + ) + end + + sig { override.returns({ file_id: String, quote: String }) } + def to_hash + end end end end diff --git a/rbi/openai/models/beta/threads/file_path_annotation.rbi b/rbi/openai/models/beta/threads/file_path_annotation.rbi index fc4afa16..1a6776cb 100644 --- a/rbi/openai/models/beta/threads/file_path_annotation.rbi +++ b/rbi/openai/models/beta/threads/file_path_annotation.rbi @@ -5,17 +5,20 @@ module OpenAI module Beta module Threads class FilePathAnnotation < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + sig { returns(Integer) } attr_accessor :end_index - sig { returns(OpenAI::Models::Beta::Threads::FilePathAnnotation::FilePath) } + sig { returns(OpenAI::Beta::Threads::FilePathAnnotation::FilePath) } attr_reader :file_path sig do params( - file_path: T.any(OpenAI::Models::Beta::Threads::FilePathAnnotation::FilePath, OpenAI::Internal::AnyHash) - ) - .void + file_path: + OpenAI::Beta::Threads::FilePathAnnotation::FilePath::OrHash + ).void end attr_writer :file_path @@ -35,12 +38,12 @@ module OpenAI sig do params( end_index: Integer, - file_path: T.any(OpenAI::Models::Beta::Threads::FilePathAnnotation::FilePath, OpenAI::Internal::AnyHash), + file_path: + OpenAI::Beta::Threads::FilePathAnnotation::FilePath::OrHash, start_index: Integer, text: String, type: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( end_index:, @@ -50,22 +53,27 @@ module OpenAI text:, # Always `file_path`. type: :file_path - ); end + ) + end + sig do - override - .returns( - { - end_index: Integer, - file_path: OpenAI::Models::Beta::Threads::FilePathAnnotation::FilePath, - start_index: Integer, - text: String, - type: Symbol - } - ) + override.returns( + { + end_index: Integer, + file_path: OpenAI::Beta::Threads::FilePathAnnotation::FilePath, + start_index: Integer, + text: String, + type: Symbol + } + ) + end + def to_hash end - def to_hash; end class FilePath < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The ID of the file that was generated. sig { returns(String) } attr_accessor :file_id @@ -74,9 +82,12 @@ module OpenAI def self.new( # The ID of the file that was generated. file_id: - ); end - sig { override.returns({file_id: String}) } - def to_hash; end + ) + end + + sig { override.returns({ file_id: String }) } + def to_hash + end end end end diff --git a/rbi/openai/models/beta/threads/file_path_delta_annotation.rbi b/rbi/openai/models/beta/threads/file_path_delta_annotation.rbi index e58879be..d8fa4d69 100644 --- a/rbi/openai/models/beta/threads/file_path_delta_annotation.rbi +++ b/rbi/openai/models/beta/threads/file_path_delta_annotation.rbi @@ -5,6 +5,9 @@ module OpenAI module Beta module Threads class FilePathDeltaAnnotation < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The index of the annotation in the text content part. sig { returns(Integer) } attr_accessor :index @@ -19,14 +22,20 @@ module OpenAI sig { params(end_index: Integer).void } attr_writer :end_index - sig { returns(T.nilable(OpenAI::Models::Beta::Threads::FilePathDeltaAnnotation::FilePath)) } + sig do + returns( + T.nilable( + OpenAI::Beta::Threads::FilePathDeltaAnnotation::FilePath + ) + ) + end attr_reader :file_path sig do params( - file_path: T.any(OpenAI::Models::Beta::Threads::FilePathDeltaAnnotation::FilePath, OpenAI::Internal::AnyHash) - ) - .void + file_path: + OpenAI::Beta::Threads::FilePathDeltaAnnotation::FilePath::OrHash + ).void end attr_writer :file_path @@ -49,12 +58,12 @@ module OpenAI params( index: Integer, end_index: Integer, - file_path: T.any(OpenAI::Models::Beta::Threads::FilePathDeltaAnnotation::FilePath, OpenAI::Internal::AnyHash), + file_path: + OpenAI::Beta::Threads::FilePathDeltaAnnotation::FilePath::OrHash, start_index: Integer, text: String, type: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # The index of the annotation in the text content part. @@ -66,23 +75,29 @@ module OpenAI text: nil, # Always `file_path`. type: :file_path - ); end + ) + end + sig do - override - .returns( - { - index: Integer, - type: Symbol, - end_index: Integer, - file_path: OpenAI::Models::Beta::Threads::FilePathDeltaAnnotation::FilePath, - start_index: Integer, - text: String - } - ) + override.returns( + { + index: Integer, + type: Symbol, + end_index: Integer, + file_path: + OpenAI::Beta::Threads::FilePathDeltaAnnotation::FilePath, + start_index: Integer, + text: String + } + ) + end + def to_hash end - def to_hash; end class FilePath < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The ID of the file that was generated. sig { returns(T.nilable(String)) } attr_reader :file_id @@ -94,9 +109,12 @@ module OpenAI def self.new( # The ID of the file that was generated. file_id: nil - ); end - sig { override.returns({file_id: String}) } - def to_hash; end + ) + end + + sig { override.returns({ file_id: String }) } + def to_hash + end end end end diff --git a/rbi/openai/models/beta/threads/image_file.rbi b/rbi/openai/models/beta/threads/image_file.rbi index f7ded701..78802b93 100644 --- a/rbi/openai/models/beta/threads/image_file.rbi +++ b/rbi/openai/models/beta/threads/image_file.rbi @@ -5,6 +5,9 @@ module OpenAI module Beta module Threads class ImageFile < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The [File](https://platform.openai.com/docs/api-reference/files) ID of the image # in the message content. Set `purpose="vision"` when uploading the File if you # need to later display the file content. @@ -13,15 +16,25 @@ module OpenAI # Specifies the detail level of the image if specified by the user. `low` uses # fewer tokens, you can opt in to high resolution using `high`. - sig { returns(T.nilable(OpenAI::Models::Beta::Threads::ImageFile::Detail::OrSymbol)) } + sig do + returns( + T.nilable(OpenAI::Beta::Threads::ImageFile::Detail::OrSymbol) + ) + end attr_reader :detail - sig { params(detail: OpenAI::Models::Beta::Threads::ImageFile::Detail::OrSymbol).void } + sig do + params( + detail: OpenAI::Beta::Threads::ImageFile::Detail::OrSymbol + ).void + end attr_writer :detail sig do - params(file_id: String, detail: OpenAI::Models::Beta::Threads::ImageFile::Detail::OrSymbol) - .returns(T.attached_class) + params( + file_id: String, + detail: OpenAI::Beta::Threads::ImageFile::Detail::OrSymbol + ).returns(T.attached_class) end def self.new( # The [File](https://platform.openai.com/docs/api-reference/files) ID of the image @@ -31,24 +44,54 @@ module OpenAI # Specifies the detail level of the image if specified by the user. `low` uses # fewer tokens, you can opt in to high resolution using `high`. detail: nil - ); end - sig { override.returns({file_id: String, detail: OpenAI::Models::Beta::Threads::ImageFile::Detail::OrSymbol}) } - def to_hash; end + ) + end + + sig do + override.returns( + { + file_id: String, + detail: OpenAI::Beta::Threads::ImageFile::Detail::OrSymbol + } + ) + end + def to_hash + end # Specifies the detail level of the image if specified by the user. `low` uses # fewer tokens, you can opt in to high resolution using `high`. module Detail extend OpenAI::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::Beta::Threads::ImageFile::Detail) } + TaggedSymbol = + T.type_alias do + T.all(Symbol, OpenAI::Beta::Threads::ImageFile::Detail) + end OrSymbol = T.type_alias { T.any(Symbol, String) } - AUTO = T.let(:auto, OpenAI::Models::Beta::Threads::ImageFile::Detail::TaggedSymbol) - LOW = T.let(:low, OpenAI::Models::Beta::Threads::ImageFile::Detail::TaggedSymbol) - HIGH = T.let(:high, OpenAI::Models::Beta::Threads::ImageFile::Detail::TaggedSymbol) + AUTO = + T.let( + :auto, + OpenAI::Beta::Threads::ImageFile::Detail::TaggedSymbol + ) + LOW = + T.let( + :low, + OpenAI::Beta::Threads::ImageFile::Detail::TaggedSymbol + ) + HIGH = + T.let( + :high, + OpenAI::Beta::Threads::ImageFile::Detail::TaggedSymbol + ) - sig { override.returns(T::Array[OpenAI::Models::Beta::Threads::ImageFile::Detail::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[OpenAI::Beta::Threads::ImageFile::Detail::TaggedSymbol] + ) + end + def self.values + end end end end diff --git a/rbi/openai/models/beta/threads/image_file_content_block.rbi b/rbi/openai/models/beta/threads/image_file_content_block.rbi index 1b87fd3f..8ff6beaa 100644 --- a/rbi/openai/models/beta/threads/image_file_content_block.rbi +++ b/rbi/openai/models/beta/threads/image_file_content_block.rbi @@ -5,10 +5,15 @@ module OpenAI module Beta module Threads class ImageFileContentBlock < OpenAI::Internal::Type::BaseModel - sig { returns(OpenAI::Models::Beta::Threads::ImageFile) } + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + + sig { returns(OpenAI::Beta::Threads::ImageFile) } attr_reader :image_file - sig { params(image_file: T.any(OpenAI::Models::Beta::Threads::ImageFile, OpenAI::Internal::AnyHash)).void } + sig do + params(image_file: OpenAI::Beta::Threads::ImageFile::OrHash).void + end attr_writer :image_file # Always `image_file`. @@ -19,18 +24,24 @@ module OpenAI # in the content of a message. sig do params( - image_file: T.any(OpenAI::Models::Beta::Threads::ImageFile, OpenAI::Internal::AnyHash), + image_file: OpenAI::Beta::Threads::ImageFile::OrHash, type: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( image_file:, # Always `image_file`. type: :image_file - ); end - sig { override.returns({image_file: OpenAI::Models::Beta::Threads::ImageFile, type: Symbol}) } - def to_hash; end + ) + end + + sig do + override.returns( + { image_file: OpenAI::Beta::Threads::ImageFile, type: Symbol } + ) + end + def to_hash + end end end end diff --git a/rbi/openai/models/beta/threads/image_file_delta.rbi b/rbi/openai/models/beta/threads/image_file_delta.rbi index 628e1cef..33be5605 100644 --- a/rbi/openai/models/beta/threads/image_file_delta.rbi +++ b/rbi/openai/models/beta/threads/image_file_delta.rbi @@ -5,12 +5,25 @@ module OpenAI module Beta module Threads class ImageFileDelta < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Specifies the detail level of the image if specified by the user. `low` uses # fewer tokens, you can opt in to high resolution using `high`. - sig { returns(T.nilable(OpenAI::Models::Beta::Threads::ImageFileDelta::Detail::TaggedSymbol)) } + sig do + returns( + T.nilable( + OpenAI::Beta::Threads::ImageFileDelta::Detail::TaggedSymbol + ) + ) + end attr_reader :detail - sig { params(detail: OpenAI::Models::Beta::Threads::ImageFileDelta::Detail::OrSymbol).void } + sig do + params( + detail: OpenAI::Beta::Threads::ImageFileDelta::Detail::OrSymbol + ).void + end attr_writer :detail # The [File](https://platform.openai.com/docs/api-reference/files) ID of the image @@ -23,8 +36,10 @@ module OpenAI attr_writer :file_id sig do - params(detail: OpenAI::Models::Beta::Threads::ImageFileDelta::Detail::OrSymbol, file_id: String) - .returns(T.attached_class) + params( + detail: OpenAI::Beta::Threads::ImageFileDelta::Detail::OrSymbol, + file_id: String + ).returns(T.attached_class) end def self.new( # Specifies the detail level of the image if specified by the user. `low` uses @@ -34,27 +49,57 @@ module OpenAI # in the message content. Set `purpose="vision"` when uploading the File if you # need to later display the file content. file_id: nil - ); end + ) + end + sig do - override - .returns({detail: OpenAI::Models::Beta::Threads::ImageFileDelta::Detail::TaggedSymbol, file_id: String}) + override.returns( + { + detail: + OpenAI::Beta::Threads::ImageFileDelta::Detail::TaggedSymbol, + file_id: String + } + ) + end + def to_hash end - def to_hash; end # Specifies the detail level of the image if specified by the user. `low` uses # fewer tokens, you can opt in to high resolution using `high`. module Detail extend OpenAI::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::Beta::Threads::ImageFileDelta::Detail) } + TaggedSymbol = + T.type_alias do + T.all(Symbol, OpenAI::Beta::Threads::ImageFileDelta::Detail) + end OrSymbol = T.type_alias { T.any(Symbol, String) } - AUTO = T.let(:auto, OpenAI::Models::Beta::Threads::ImageFileDelta::Detail::TaggedSymbol) - LOW = T.let(:low, OpenAI::Models::Beta::Threads::ImageFileDelta::Detail::TaggedSymbol) - HIGH = T.let(:high, OpenAI::Models::Beta::Threads::ImageFileDelta::Detail::TaggedSymbol) + AUTO = + T.let( + :auto, + OpenAI::Beta::Threads::ImageFileDelta::Detail::TaggedSymbol + ) + LOW = + T.let( + :low, + OpenAI::Beta::Threads::ImageFileDelta::Detail::TaggedSymbol + ) + HIGH = + T.let( + :high, + OpenAI::Beta::Threads::ImageFileDelta::Detail::TaggedSymbol + ) - sig { override.returns(T::Array[OpenAI::Models::Beta::Threads::ImageFileDelta::Detail::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[ + OpenAI::Beta::Threads::ImageFileDelta::Detail::TaggedSymbol + ] + ) + end + def self.values + end end end end diff --git a/rbi/openai/models/beta/threads/image_file_delta_block.rbi b/rbi/openai/models/beta/threads/image_file_delta_block.rbi index c0ae3f1e..ea1914cc 100644 --- a/rbi/openai/models/beta/threads/image_file_delta_block.rbi +++ b/rbi/openai/models/beta/threads/image_file_delta_block.rbi @@ -5,6 +5,9 @@ module OpenAI module Beta module Threads class ImageFileDeltaBlock < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The index of the content part in the message. sig { returns(Integer) } attr_accessor :index @@ -13,10 +16,14 @@ module OpenAI sig { returns(Symbol) } attr_accessor :type - sig { returns(T.nilable(OpenAI::Models::Beta::Threads::ImageFileDelta)) } + sig { returns(T.nilable(OpenAI::Beta::Threads::ImageFileDelta)) } attr_reader :image_file - sig { params(image_file: T.any(OpenAI::Models::Beta::Threads::ImageFileDelta, OpenAI::Internal::AnyHash)).void } + sig do + params( + image_file: OpenAI::Beta::Threads::ImageFileDelta::OrHash + ).void + end attr_writer :image_file # References an image [File](https://platform.openai.com/docs/api-reference/files) @@ -24,10 +31,9 @@ module OpenAI sig do params( index: Integer, - image_file: T.any(OpenAI::Models::Beta::Threads::ImageFileDelta, OpenAI::Internal::AnyHash), + image_file: OpenAI::Beta::Threads::ImageFileDelta::OrHash, type: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # The index of the content part in the message. @@ -35,11 +41,20 @@ module OpenAI image_file: nil, # Always `image_file`. type: :image_file - ); end + ) + end + sig do - override.returns({index: Integer, type: Symbol, image_file: OpenAI::Models::Beta::Threads::ImageFileDelta}) + override.returns( + { + index: Integer, + type: Symbol, + image_file: OpenAI::Beta::Threads::ImageFileDelta + } + ) + end + def to_hash end - def to_hash; end end end end diff --git a/rbi/openai/models/beta/threads/image_url.rbi b/rbi/openai/models/beta/threads/image_url.rbi index 6c364602..04b0f75d 100644 --- a/rbi/openai/models/beta/threads/image_url.rbi +++ b/rbi/openai/models/beta/threads/image_url.rbi @@ -5,6 +5,9 @@ module OpenAI module Beta module Threads class ImageURL < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The external URL of the image, must be a supported image types: jpeg, jpg, png, # gif, webp. sig { returns(String) } @@ -12,15 +15,25 @@ module OpenAI # Specifies the detail level of the image. `low` uses fewer tokens, you can opt in # to high resolution using `high`. Default value is `auto` - sig { returns(T.nilable(OpenAI::Models::Beta::Threads::ImageURL::Detail::OrSymbol)) } + sig do + returns( + T.nilable(OpenAI::Beta::Threads::ImageURL::Detail::OrSymbol) + ) + end attr_reader :detail - sig { params(detail: OpenAI::Models::Beta::Threads::ImageURL::Detail::OrSymbol).void } + sig do + params( + detail: OpenAI::Beta::Threads::ImageURL::Detail::OrSymbol + ).void + end attr_writer :detail sig do - params(url: String, detail: OpenAI::Models::Beta::Threads::ImageURL::Detail::OrSymbol) - .returns(T.attached_class) + params( + url: String, + detail: OpenAI::Beta::Threads::ImageURL::Detail::OrSymbol + ).returns(T.attached_class) end def self.new( # The external URL of the image, must be a supported image types: jpeg, jpg, png, @@ -29,24 +42,51 @@ module OpenAI # Specifies the detail level of the image. `low` uses fewer tokens, you can opt in # to high resolution using `high`. Default value is `auto` detail: nil - ); end - sig { override.returns({url: String, detail: OpenAI::Models::Beta::Threads::ImageURL::Detail::OrSymbol}) } - def to_hash; end + ) + end + + sig do + override.returns( + { + url: String, + detail: OpenAI::Beta::Threads::ImageURL::Detail::OrSymbol + } + ) + end + def to_hash + end # Specifies the detail level of the image. `low` uses fewer tokens, you can opt in # to high resolution using `high`. Default value is `auto` module Detail extend OpenAI::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::Beta::Threads::ImageURL::Detail) } + TaggedSymbol = + T.type_alias do + T.all(Symbol, OpenAI::Beta::Threads::ImageURL::Detail) + end OrSymbol = T.type_alias { T.any(Symbol, String) } - AUTO = T.let(:auto, OpenAI::Models::Beta::Threads::ImageURL::Detail::TaggedSymbol) - LOW = T.let(:low, OpenAI::Models::Beta::Threads::ImageURL::Detail::TaggedSymbol) - HIGH = T.let(:high, OpenAI::Models::Beta::Threads::ImageURL::Detail::TaggedSymbol) + AUTO = + T.let( + :auto, + OpenAI::Beta::Threads::ImageURL::Detail::TaggedSymbol + ) + LOW = + T.let(:low, OpenAI::Beta::Threads::ImageURL::Detail::TaggedSymbol) + HIGH = + T.let( + :high, + OpenAI::Beta::Threads::ImageURL::Detail::TaggedSymbol + ) - sig { override.returns(T::Array[OpenAI::Models::Beta::Threads::ImageURL::Detail::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[OpenAI::Beta::Threads::ImageURL::Detail::TaggedSymbol] + ) + end + def self.values + end end end end diff --git a/rbi/openai/models/beta/threads/image_url_content_block.rbi b/rbi/openai/models/beta/threads/image_url_content_block.rbi index 53b64254..b2e47c68 100644 --- a/rbi/openai/models/beta/threads/image_url_content_block.rbi +++ b/rbi/openai/models/beta/threads/image_url_content_block.rbi @@ -5,10 +5,15 @@ module OpenAI module Beta module Threads class ImageURLContentBlock < OpenAI::Internal::Type::BaseModel - sig { returns(OpenAI::Models::Beta::Threads::ImageURL) } + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + + sig { returns(OpenAI::Beta::Threads::ImageURL) } attr_reader :image_url - sig { params(image_url: T.any(OpenAI::Models::Beta::Threads::ImageURL, OpenAI::Internal::AnyHash)).void } + sig do + params(image_url: OpenAI::Beta::Threads::ImageURL::OrHash).void + end attr_writer :image_url # The type of the content part. @@ -17,16 +22,25 @@ module OpenAI # References an image URL in the content of a message. sig do - params(image_url: T.any(OpenAI::Models::Beta::Threads::ImageURL, OpenAI::Internal::AnyHash), type: Symbol) - .returns(T.attached_class) + params( + image_url: OpenAI::Beta::Threads::ImageURL::OrHash, + type: Symbol + ).returns(T.attached_class) end def self.new( image_url:, # The type of the content part. type: :image_url - ); end - sig { override.returns({image_url: OpenAI::Models::Beta::Threads::ImageURL, type: Symbol}) } - def to_hash; end + ) + end + + sig do + override.returns( + { image_url: OpenAI::Beta::Threads::ImageURL, type: Symbol } + ) + end + def to_hash + end end end end diff --git a/rbi/openai/models/beta/threads/image_url_delta.rbi b/rbi/openai/models/beta/threads/image_url_delta.rbi index 0de64fe7..a742d53f 100644 --- a/rbi/openai/models/beta/threads/image_url_delta.rbi +++ b/rbi/openai/models/beta/threads/image_url_delta.rbi @@ -5,12 +5,25 @@ module OpenAI module Beta module Threads class ImageURLDelta < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Specifies the detail level of the image. `low` uses fewer tokens, you can opt in # to high resolution using `high`. - sig { returns(T.nilable(OpenAI::Models::Beta::Threads::ImageURLDelta::Detail::TaggedSymbol)) } + sig do + returns( + T.nilable( + OpenAI::Beta::Threads::ImageURLDelta::Detail::TaggedSymbol + ) + ) + end attr_reader :detail - sig { params(detail: OpenAI::Models::Beta::Threads::ImageURLDelta::Detail::OrSymbol).void } + sig do + params( + detail: OpenAI::Beta::Threads::ImageURLDelta::Detail::OrSymbol + ).void + end attr_writer :detail # The URL of the image, must be a supported image types: jpeg, jpg, png, gif, @@ -22,8 +35,10 @@ module OpenAI attr_writer :url sig do - params(detail: OpenAI::Models::Beta::Threads::ImageURLDelta::Detail::OrSymbol, url: String) - .returns(T.attached_class) + params( + detail: OpenAI::Beta::Threads::ImageURLDelta::Detail::OrSymbol, + url: String + ).returns(T.attached_class) end def self.new( # Specifies the detail level of the image. `low` uses fewer tokens, you can opt in @@ -32,26 +47,57 @@ module OpenAI # The URL of the image, must be a supported image types: jpeg, jpg, png, gif, # webp. url: nil - ); end + ) + end + sig do - override.returns({detail: OpenAI::Models::Beta::Threads::ImageURLDelta::Detail::TaggedSymbol, url: String}) + override.returns( + { + detail: + OpenAI::Beta::Threads::ImageURLDelta::Detail::TaggedSymbol, + url: String + } + ) + end + def to_hash end - def to_hash; end # Specifies the detail level of the image. `low` uses fewer tokens, you can opt in # to high resolution using `high`. module Detail extend OpenAI::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::Beta::Threads::ImageURLDelta::Detail) } + TaggedSymbol = + T.type_alias do + T.all(Symbol, OpenAI::Beta::Threads::ImageURLDelta::Detail) + end OrSymbol = T.type_alias { T.any(Symbol, String) } - AUTO = T.let(:auto, OpenAI::Models::Beta::Threads::ImageURLDelta::Detail::TaggedSymbol) - LOW = T.let(:low, OpenAI::Models::Beta::Threads::ImageURLDelta::Detail::TaggedSymbol) - HIGH = T.let(:high, OpenAI::Models::Beta::Threads::ImageURLDelta::Detail::TaggedSymbol) + AUTO = + T.let( + :auto, + OpenAI::Beta::Threads::ImageURLDelta::Detail::TaggedSymbol + ) + LOW = + T.let( + :low, + OpenAI::Beta::Threads::ImageURLDelta::Detail::TaggedSymbol + ) + HIGH = + T.let( + :high, + OpenAI::Beta::Threads::ImageURLDelta::Detail::TaggedSymbol + ) - sig { override.returns(T::Array[OpenAI::Models::Beta::Threads::ImageURLDelta::Detail::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[ + OpenAI::Beta::Threads::ImageURLDelta::Detail::TaggedSymbol + ] + ) + end + def self.values + end end end end diff --git a/rbi/openai/models/beta/threads/image_url_delta_block.rbi b/rbi/openai/models/beta/threads/image_url_delta_block.rbi index e7eb2ab2..e2cc3d25 100644 --- a/rbi/openai/models/beta/threads/image_url_delta_block.rbi +++ b/rbi/openai/models/beta/threads/image_url_delta_block.rbi @@ -5,6 +5,9 @@ module OpenAI module Beta module Threads class ImageURLDeltaBlock < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The index of the content part in the message. sig { returns(Integer) } attr_accessor :index @@ -13,20 +16,21 @@ module OpenAI sig { returns(Symbol) } attr_accessor :type - sig { returns(T.nilable(OpenAI::Models::Beta::Threads::ImageURLDelta)) } + sig { returns(T.nilable(OpenAI::Beta::Threads::ImageURLDelta)) } attr_reader :image_url - sig { params(image_url: T.any(OpenAI::Models::Beta::Threads::ImageURLDelta, OpenAI::Internal::AnyHash)).void } + sig do + params(image_url: OpenAI::Beta::Threads::ImageURLDelta::OrHash).void + end attr_writer :image_url # References an image URL in the content of a message. sig do params( index: Integer, - image_url: T.any(OpenAI::Models::Beta::Threads::ImageURLDelta, OpenAI::Internal::AnyHash), + image_url: OpenAI::Beta::Threads::ImageURLDelta::OrHash, type: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # The index of the content part in the message. @@ -34,9 +38,20 @@ module OpenAI image_url: nil, # Always `image_url`. type: :image_url - ); end - sig { override.returns({index: Integer, type: Symbol, image_url: OpenAI::Models::Beta::Threads::ImageURLDelta}) } - def to_hash; end + ) + end + + sig do + override.returns( + { + index: Integer, + type: Symbol, + image_url: OpenAI::Beta::Threads::ImageURLDelta + } + ) + end + def to_hash + end end end end diff --git a/rbi/openai/models/beta/threads/message.rbi b/rbi/openai/models/beta/threads/message.rbi index 3c4ecef7..02bd3c97 100644 --- a/rbi/openai/models/beta/threads/message.rbi +++ b/rbi/openai/models/beta/threads/message.rbi @@ -5,6 +5,9 @@ module OpenAI module Beta module Threads class Message < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The identifier, which can be referenced in API endpoints. sig { returns(String) } attr_accessor :id @@ -16,7 +19,11 @@ module OpenAI attr_accessor :assistant_id # A list of files attached to the message, and the tools they were added to. - sig { returns(T.nilable(T::Array[OpenAI::Models::Beta::Threads::Message::Attachment])) } + sig do + returns( + T.nilable(T::Array[OpenAI::Beta::Threads::Message::Attachment]) + ) + end attr_accessor :attachments # The Unix timestamp (in seconds) for when the message was completed. @@ -28,10 +35,10 @@ module OpenAI returns( T::Array[ T.any( - OpenAI::Models::Beta::Threads::ImageFileContentBlock, - OpenAI::Models::Beta::Threads::ImageURLContentBlock, - OpenAI::Models::Beta::Threads::TextContentBlock, - OpenAI::Models::Beta::Threads::RefusalContentBlock + OpenAI::Beta::Threads::ImageFileContentBlock, + OpenAI::Beta::Threads::ImageURLContentBlock, + OpenAI::Beta::Threads::TextContentBlock, + OpenAI::Beta::Threads::RefusalContentBlock ) ] ) @@ -47,14 +54,20 @@ module OpenAI attr_accessor :incomplete_at # On an incomplete message, details about why the message is incomplete. - sig { returns(T.nilable(OpenAI::Models::Beta::Threads::Message::IncompleteDetails)) } + sig do + returns( + T.nilable(OpenAI::Beta::Threads::Message::IncompleteDetails) + ) + end attr_reader :incomplete_details sig do params( - incomplete_details: T.nilable(T.any(OpenAI::Models::Beta::Threads::Message::IncompleteDetails, OpenAI::Internal::AnyHash)) - ) - .void + incomplete_details: + T.nilable( + OpenAI::Beta::Threads::Message::IncompleteDetails::OrHash + ) + ).void end attr_writer :incomplete_details @@ -72,7 +85,7 @@ module OpenAI attr_accessor :object # The entity that produced the message. One of `user` or `assistant`. - sig { returns(OpenAI::Models::Beta::Threads::Message::Role::TaggedSymbol) } + sig { returns(OpenAI::Beta::Threads::Message::Role::TaggedSymbol) } attr_accessor :role # The ID of the [run](https://platform.openai.com/docs/api-reference/runs) @@ -83,7 +96,7 @@ module OpenAI # The status of the message, which can be either `in_progress`, `incomplete`, or # `completed`. - sig { returns(OpenAI::Models::Beta::Threads::Message::Status::TaggedSymbol) } + sig { returns(OpenAI::Beta::Threads::Message::Status::TaggedSymbol) } attr_accessor :status # The [thread](https://platform.openai.com/docs/api-reference/threads) ID that @@ -97,28 +110,33 @@ module OpenAI params( id: String, assistant_id: T.nilable(String), - attachments: T.nilable(T::Array[T.any(OpenAI::Models::Beta::Threads::Message::Attachment, OpenAI::Internal::AnyHash)]), + attachments: + T.nilable( + T::Array[OpenAI::Beta::Threads::Message::Attachment::OrHash] + ), completed_at: T.nilable(Integer), - content: T::Array[ - T.any( - OpenAI::Models::Beta::Threads::ImageFileContentBlock, - OpenAI::Internal::AnyHash, - OpenAI::Models::Beta::Threads::ImageURLContentBlock, - OpenAI::Models::Beta::Threads::TextContentBlock, - OpenAI::Models::Beta::Threads::RefusalContentBlock - ) - ], + content: + T::Array[ + T.any( + OpenAI::Beta::Threads::ImageFileContentBlock::OrHash, + OpenAI::Beta::Threads::ImageURLContentBlock::OrHash, + OpenAI::Beta::Threads::TextContentBlock::OrHash, + OpenAI::Beta::Threads::RefusalContentBlock::OrHash + ) + ], created_at: Integer, incomplete_at: T.nilable(Integer), - incomplete_details: T.nilable(T.any(OpenAI::Models::Beta::Threads::Message::IncompleteDetails, OpenAI::Internal::AnyHash)), + incomplete_details: + T.nilable( + OpenAI::Beta::Threads::Message::IncompleteDetails::OrHash + ), metadata: T.nilable(T::Hash[Symbol, String]), - role: OpenAI::Models::Beta::Threads::Message::Role::OrSymbol, + role: OpenAI::Beta::Threads::Message::Role::OrSymbol, run_id: T.nilable(String), - status: OpenAI::Models::Beta::Threads::Message::Status::OrSymbol, + status: OpenAI::Beta::Threads::Message::Status::OrSymbol, thread_id: String, object: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # The identifier, which can be referenced in API endpoints. @@ -160,38 +178,48 @@ module OpenAI thread_id:, # The object type, which is always `thread.message`. object: :"thread.message" - ); end + ) + end + sig do - override - .returns( - { - id: String, - assistant_id: T.nilable(String), - attachments: T.nilable(T::Array[OpenAI::Models::Beta::Threads::Message::Attachment]), - completed_at: T.nilable(Integer), - content: T::Array[ + override.returns( + { + id: String, + assistant_id: T.nilable(String), + attachments: + T.nilable( + T::Array[OpenAI::Beta::Threads::Message::Attachment] + ), + completed_at: T.nilable(Integer), + content: + T::Array[ T.any( - OpenAI::Models::Beta::Threads::ImageFileContentBlock, - OpenAI::Models::Beta::Threads::ImageURLContentBlock, - OpenAI::Models::Beta::Threads::TextContentBlock, - OpenAI::Models::Beta::Threads::RefusalContentBlock + OpenAI::Beta::Threads::ImageFileContentBlock, + OpenAI::Beta::Threads::ImageURLContentBlock, + OpenAI::Beta::Threads::TextContentBlock, + OpenAI::Beta::Threads::RefusalContentBlock ) ], - created_at: Integer, - incomplete_at: T.nilable(Integer), - incomplete_details: T.nilable(OpenAI::Models::Beta::Threads::Message::IncompleteDetails), - metadata: T.nilable(T::Hash[Symbol, String]), - object: Symbol, - role: OpenAI::Models::Beta::Threads::Message::Role::TaggedSymbol, - run_id: T.nilable(String), - status: OpenAI::Models::Beta::Threads::Message::Status::TaggedSymbol, - thread_id: String - } - ) + created_at: Integer, + incomplete_at: T.nilable(Integer), + incomplete_details: + T.nilable(OpenAI::Beta::Threads::Message::IncompleteDetails), + metadata: T.nilable(T::Hash[Symbol, String]), + object: Symbol, + role: OpenAI::Beta::Threads::Message::Role::TaggedSymbol, + run_id: T.nilable(String), + status: OpenAI::Beta::Threads::Message::Status::TaggedSymbol, + thread_id: String + } + ) + end + def to_hash end - def to_hash; end class Attachment < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The ID of the file to attach to the message. sig { returns(T.nilable(String)) } attr_reader :file_id @@ -205,8 +233,8 @@ module OpenAI T.nilable( T::Array[ T.any( - OpenAI::Models::Beta::CodeInterpreterTool, - OpenAI::Models::Beta::Threads::Message::Attachment::Tool::AssistantToolsFileSearchTypeOnly + OpenAI::Beta::CodeInterpreterTool, + OpenAI::Beta::Threads::Message::Attachment::Tool::AssistantToolsFileSearchTypeOnly ) ] ) @@ -216,57 +244,69 @@ module OpenAI sig do params( - tools: T::Array[ - T.any( - OpenAI::Models::Beta::CodeInterpreterTool, - OpenAI::Internal::AnyHash, - OpenAI::Models::Beta::Threads::Message::Attachment::Tool::AssistantToolsFileSearchTypeOnly - ) - ] - ) - .void + tools: + T::Array[ + T.any( + OpenAI::Beta::CodeInterpreterTool::OrHash, + OpenAI::Beta::Threads::Message::Attachment::Tool::AssistantToolsFileSearchTypeOnly::OrHash + ) + ] + ).void end attr_writer :tools sig do params( file_id: String, - tools: T::Array[ - T.any( - OpenAI::Models::Beta::CodeInterpreterTool, - OpenAI::Internal::AnyHash, - OpenAI::Models::Beta::Threads::Message::Attachment::Tool::AssistantToolsFileSearchTypeOnly - ) - ] - ) - .returns(T.attached_class) + tools: + T::Array[ + T.any( + OpenAI::Beta::CodeInterpreterTool::OrHash, + OpenAI::Beta::Threads::Message::Attachment::Tool::AssistantToolsFileSearchTypeOnly::OrHash + ) + ] + ).returns(T.attached_class) end def self.new( # The ID of the file to attach to the message. file_id: nil, # The tools to add this file to. tools: nil - ); end + ) + end + sig do - override - .returns( - { - file_id: String, - tools: T::Array[ + override.returns( + { + file_id: String, + tools: + T::Array[ T.any( - OpenAI::Models::Beta::CodeInterpreterTool, - OpenAI::Models::Beta::Threads::Message::Attachment::Tool::AssistantToolsFileSearchTypeOnly + OpenAI::Beta::CodeInterpreterTool, + OpenAI::Beta::Threads::Message::Attachment::Tool::AssistantToolsFileSearchTypeOnly ) ] - } - ) + } + ) + end + def to_hash end - def to_hash; end module Tool extend OpenAI::Internal::Type::Union + Variants = + T.type_alias do + T.any( + OpenAI::Beta::CodeInterpreterTool, + OpenAI::Beta::Threads::Message::Attachment::Tool::AssistantToolsFileSearchTypeOnly + ) + end + class AssistantToolsFileSearchTypeOnly < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The type of tool being defined: `file_search` sig { returns(Symbol) } attr_accessor :type @@ -275,63 +315,110 @@ module OpenAI def self.new( # The type of tool being defined: `file_search` type: :file_search - ); end - sig { override.returns({type: Symbol}) } - def to_hash; end + ) + end + + sig { override.returns({ type: Symbol }) } + def to_hash + end end sig do - override - .returns( - [OpenAI::Models::Beta::CodeInterpreterTool, OpenAI::Models::Beta::Threads::Message::Attachment::Tool::AssistantToolsFileSearchTypeOnly] - ) + override.returns( + T::Array[ + OpenAI::Beta::Threads::Message::Attachment::Tool::Variants + ] + ) + end + def self.variants end - def self.variants; end end end class IncompleteDetails < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The reason the message is incomplete. - sig { returns(OpenAI::Models::Beta::Threads::Message::IncompleteDetails::Reason::TaggedSymbol) } + sig do + returns( + OpenAI::Beta::Threads::Message::IncompleteDetails::Reason::TaggedSymbol + ) + end attr_accessor :reason # On an incomplete message, details about why the message is incomplete. sig do - params(reason: OpenAI::Models::Beta::Threads::Message::IncompleteDetails::Reason::OrSymbol) - .returns(T.attached_class) + params( + reason: + OpenAI::Beta::Threads::Message::IncompleteDetails::Reason::OrSymbol + ).returns(T.attached_class) end def self.new( # The reason the message is incomplete. reason: - ); end + ) + end + sig do - override.returns({reason: OpenAI::Models::Beta::Threads::Message::IncompleteDetails::Reason::TaggedSymbol}) + override.returns( + { + reason: + OpenAI::Beta::Threads::Message::IncompleteDetails::Reason::TaggedSymbol + } + ) + end + def to_hash end - def to_hash; end # The reason the message is incomplete. module Reason extend OpenAI::Internal::Type::Enum TaggedSymbol = - T.type_alias { T.all(Symbol, OpenAI::Models::Beta::Threads::Message::IncompleteDetails::Reason) } + T.type_alias do + T.all( + Symbol, + OpenAI::Beta::Threads::Message::IncompleteDetails::Reason + ) + end OrSymbol = T.type_alias { T.any(Symbol, String) } CONTENT_FILTER = - T.let(:content_filter, OpenAI::Models::Beta::Threads::Message::IncompleteDetails::Reason::TaggedSymbol) + T.let( + :content_filter, + OpenAI::Beta::Threads::Message::IncompleteDetails::Reason::TaggedSymbol + ) MAX_TOKENS = - T.let(:max_tokens, OpenAI::Models::Beta::Threads::Message::IncompleteDetails::Reason::TaggedSymbol) + T.let( + :max_tokens, + OpenAI::Beta::Threads::Message::IncompleteDetails::Reason::TaggedSymbol + ) RUN_CANCELLED = - T.let(:run_cancelled, OpenAI::Models::Beta::Threads::Message::IncompleteDetails::Reason::TaggedSymbol) + T.let( + :run_cancelled, + OpenAI::Beta::Threads::Message::IncompleteDetails::Reason::TaggedSymbol + ) RUN_EXPIRED = - T.let(:run_expired, OpenAI::Models::Beta::Threads::Message::IncompleteDetails::Reason::TaggedSymbol) + T.let( + :run_expired, + OpenAI::Beta::Threads::Message::IncompleteDetails::Reason::TaggedSymbol + ) RUN_FAILED = - T.let(:run_failed, OpenAI::Models::Beta::Threads::Message::IncompleteDetails::Reason::TaggedSymbol) + T.let( + :run_failed, + OpenAI::Beta::Threads::Message::IncompleteDetails::Reason::TaggedSymbol + ) sig do - override.returns(T::Array[OpenAI::Models::Beta::Threads::Message::IncompleteDetails::Reason::TaggedSymbol]) + override.returns( + T::Array[ + OpenAI::Beta::Threads::Message::IncompleteDetails::Reason::TaggedSymbol + ] + ) + end + def self.values end - def self.values; end end end @@ -339,14 +426,27 @@ module OpenAI module Role extend OpenAI::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::Beta::Threads::Message::Role) } + TaggedSymbol = + T.type_alias do + T.all(Symbol, OpenAI::Beta::Threads::Message::Role) + end OrSymbol = T.type_alias { T.any(Symbol, String) } - USER = T.let(:user, OpenAI::Models::Beta::Threads::Message::Role::TaggedSymbol) - ASSISTANT = T.let(:assistant, OpenAI::Models::Beta::Threads::Message::Role::TaggedSymbol) + USER = + T.let(:user, OpenAI::Beta::Threads::Message::Role::TaggedSymbol) + ASSISTANT = + T.let( + :assistant, + OpenAI::Beta::Threads::Message::Role::TaggedSymbol + ) - sig { override.returns(T::Array[OpenAI::Models::Beta::Threads::Message::Role::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[OpenAI::Beta::Threads::Message::Role::TaggedSymbol] + ) + end + def self.values + end end # The status of the message, which can be either `in_progress`, `incomplete`, or @@ -354,15 +454,35 @@ module OpenAI module Status extend OpenAI::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::Beta::Threads::Message::Status) } + TaggedSymbol = + T.type_alias do + T.all(Symbol, OpenAI::Beta::Threads::Message::Status) + end OrSymbol = T.type_alias { T.any(Symbol, String) } - IN_PROGRESS = T.let(:in_progress, OpenAI::Models::Beta::Threads::Message::Status::TaggedSymbol) - INCOMPLETE = T.let(:incomplete, OpenAI::Models::Beta::Threads::Message::Status::TaggedSymbol) - COMPLETED = T.let(:completed, OpenAI::Models::Beta::Threads::Message::Status::TaggedSymbol) + IN_PROGRESS = + T.let( + :in_progress, + OpenAI::Beta::Threads::Message::Status::TaggedSymbol + ) + INCOMPLETE = + T.let( + :incomplete, + OpenAI::Beta::Threads::Message::Status::TaggedSymbol + ) + COMPLETED = + T.let( + :completed, + OpenAI::Beta::Threads::Message::Status::TaggedSymbol + ) - sig { override.returns(T::Array[OpenAI::Models::Beta::Threads::Message::Status::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[OpenAI::Beta::Threads::Message::Status::TaggedSymbol] + ) + end + def self.values + end end end end diff --git a/rbi/openai/models/beta/threads/message_content.rbi b/rbi/openai/models/beta/threads/message_content.rbi index 99a0c488..5b159a12 100644 --- a/rbi/openai/models/beta/threads/message_content.rbi +++ b/rbi/openai/models/beta/threads/message_content.rbi @@ -9,13 +9,23 @@ module OpenAI module MessageContent extend OpenAI::Internal::Type::Union - sig do - override - .returns( - [OpenAI::Models::Beta::Threads::ImageFileContentBlock, OpenAI::Models::Beta::Threads::ImageURLContentBlock, OpenAI::Models::Beta::Threads::TextContentBlock, OpenAI::Models::Beta::Threads::RefusalContentBlock] + Variants = + T.type_alias do + T.any( + OpenAI::Beta::Threads::ImageFileContentBlock, + OpenAI::Beta::Threads::ImageURLContentBlock, + OpenAI::Beta::Threads::TextContentBlock, + OpenAI::Beta::Threads::RefusalContentBlock ) + end + + sig do + override.returns( + T::Array[OpenAI::Beta::Threads::MessageContent::Variants] + ) + end + def self.variants end - def self.variants; end end end end diff --git a/rbi/openai/models/beta/threads/message_content_delta.rbi b/rbi/openai/models/beta/threads/message_content_delta.rbi index a6ad0c14..4ed6646b 100644 --- a/rbi/openai/models/beta/threads/message_content_delta.rbi +++ b/rbi/openai/models/beta/threads/message_content_delta.rbi @@ -9,13 +9,23 @@ module OpenAI module MessageContentDelta extend OpenAI::Internal::Type::Union - sig do - override - .returns( - [OpenAI::Models::Beta::Threads::ImageFileDeltaBlock, OpenAI::Models::Beta::Threads::TextDeltaBlock, OpenAI::Models::Beta::Threads::RefusalDeltaBlock, OpenAI::Models::Beta::Threads::ImageURLDeltaBlock] + Variants = + T.type_alias do + T.any( + OpenAI::Beta::Threads::ImageFileDeltaBlock, + OpenAI::Beta::Threads::TextDeltaBlock, + OpenAI::Beta::Threads::RefusalDeltaBlock, + OpenAI::Beta::Threads::ImageURLDeltaBlock ) + end + + sig do + override.returns( + T::Array[OpenAI::Beta::Threads::MessageContentDelta::Variants] + ) + end + def self.variants end - def self.variants; end end end end diff --git a/rbi/openai/models/beta/threads/message_content_part_param.rbi b/rbi/openai/models/beta/threads/message_content_part_param.rbi index fbe37283..38daf411 100644 --- a/rbi/openai/models/beta/threads/message_content_part_param.rbi +++ b/rbi/openai/models/beta/threads/message_content_part_param.rbi @@ -9,13 +9,22 @@ module OpenAI module MessageContentPartParam extend OpenAI::Internal::Type::Union - sig do - override - .returns( - [OpenAI::Models::Beta::Threads::ImageFileContentBlock, OpenAI::Models::Beta::Threads::ImageURLContentBlock, OpenAI::Models::Beta::Threads::TextContentBlockParam] + Variants = + T.type_alias do + T.any( + OpenAI::Beta::Threads::ImageFileContentBlock, + OpenAI::Beta::Threads::ImageURLContentBlock, + OpenAI::Beta::Threads::TextContentBlockParam ) + end + + sig do + override.returns( + T::Array[OpenAI::Beta::Threads::MessageContentPartParam::Variants] + ) + end + def self.variants end - def self.variants; end end end end diff --git a/rbi/openai/models/beta/threads/message_create_params.rbi b/rbi/openai/models/beta/threads/message_create_params.rbi index 326dc671..60fb47c0 100644 --- a/rbi/openai/models/beta/threads/message_create_params.rbi +++ b/rbi/openai/models/beta/threads/message_create_params.rbi @@ -8,6 +8,9 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The text contents of the message. sig do returns( @@ -15,9 +18,9 @@ module OpenAI String, T::Array[ T.any( - OpenAI::Models::Beta::Threads::ImageFileContentBlock, - OpenAI::Models::Beta::Threads::ImageURLContentBlock, - OpenAI::Models::Beta::Threads::TextContentBlockParam + OpenAI::Beta::Threads::ImageFileContentBlock, + OpenAI::Beta::Threads::ImageURLContentBlock, + OpenAI::Beta::Threads::TextContentBlockParam ) ] ) @@ -31,11 +34,19 @@ module OpenAI # most cases to represent user-generated messages. # - `assistant`: Indicates the message is generated by the assistant. Use this # value to insert messages from the assistant into the conversation. - sig { returns(OpenAI::Models::Beta::Threads::MessageCreateParams::Role::OrSymbol) } + sig do + returns(OpenAI::Beta::Threads::MessageCreateParams::Role::OrSymbol) + end attr_accessor :role # A list of files attached to the message, and the tools they should be added to. - sig { returns(T.nilable(T::Array[OpenAI::Models::Beta::Threads::MessageCreateParams::Attachment])) } + sig do + returns( + T.nilable( + T::Array[OpenAI::Beta::Threads::MessageCreateParams::Attachment] + ) + ) + end attr_accessor :attachments # Set of 16 key-value pairs that can be attached to an object. This can be useful @@ -49,25 +60,27 @@ module OpenAI sig do params( - content: T.any( - String, - T::Array[ - T.any( - OpenAI::Models::Beta::Threads::ImageFileContentBlock, - OpenAI::Internal::AnyHash, - OpenAI::Models::Beta::Threads::ImageURLContentBlock, - OpenAI::Models::Beta::Threads::TextContentBlockParam - ) - ] - ), - role: OpenAI::Models::Beta::Threads::MessageCreateParams::Role::OrSymbol, - attachments: T.nilable( - T::Array[T.any(OpenAI::Models::Beta::Threads::MessageCreateParams::Attachment, OpenAI::Internal::AnyHash)] - ), + content: + T.any( + String, + T::Array[ + T.any( + OpenAI::Beta::Threads::ImageFileContentBlock::OrHash, + OpenAI::Beta::Threads::ImageURLContentBlock::OrHash, + OpenAI::Beta::Threads::TextContentBlockParam::OrHash + ) + ] + ), + role: OpenAI::Beta::Threads::MessageCreateParams::Role::OrSymbol, + attachments: + T.nilable( + T::Array[ + OpenAI::Beta::Threads::MessageCreateParams::Attachment::OrHash + ] + ), metadata: T.nilable(T::Hash[Symbol, String]), - request_options: T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash) - ) - .returns(T.attached_class) + request_options: OpenAI::RequestOptions::OrHash + ).returns(T.attached_class) end def self.new( # The text contents of the message. @@ -89,54 +102,72 @@ module OpenAI # a maximum length of 512 characters. metadata: nil, request_options: {} - ); end + ) + end + sig do - override - .returns( - { - content: T.any( + override.returns( + { + content: + T.any( String, T::Array[ T.any( - OpenAI::Models::Beta::Threads::ImageFileContentBlock, - OpenAI::Models::Beta::Threads::ImageURLContentBlock, - OpenAI::Models::Beta::Threads::TextContentBlockParam + OpenAI::Beta::Threads::ImageFileContentBlock, + OpenAI::Beta::Threads::ImageURLContentBlock, + OpenAI::Beta::Threads::TextContentBlockParam ) ] ), - role: OpenAI::Models::Beta::Threads::MessageCreateParams::Role::OrSymbol, - attachments: T.nilable(T::Array[OpenAI::Models::Beta::Threads::MessageCreateParams::Attachment]), - metadata: T.nilable(T::Hash[Symbol, String]), - request_options: OpenAI::RequestOptions - } - ) + role: + OpenAI::Beta::Threads::MessageCreateParams::Role::OrSymbol, + attachments: + T.nilable( + T::Array[ + OpenAI::Beta::Threads::MessageCreateParams::Attachment + ] + ), + metadata: T.nilable(T::Hash[Symbol, String]), + request_options: OpenAI::RequestOptions + } + ) + end + def to_hash end - def to_hash; end # The text contents of the message. module Content extend OpenAI::Internal::Type::Union - sig do - override - .returns( - [ - String, - T::Array[ - T.any( - OpenAI::Models::Beta::Threads::ImageFileContentBlock, - OpenAI::Models::Beta::Threads::ImageURLContentBlock, - OpenAI::Models::Beta::Threads::TextContentBlockParam - ) - ] + Variants = + T.type_alias do + T.any( + String, + T::Array[ + T.any( + OpenAI::Beta::Threads::ImageFileContentBlock, + OpenAI::Beta::Threads::ImageURLContentBlock, + OpenAI::Beta::Threads::TextContentBlockParam + ) ] ) + end + + sig do + override.returns( + T::Array[ + OpenAI::Beta::Threads::MessageCreateParams::Content::Variants + ] + ) + end + def self.variants end - def self.variants; end MessageContentPartParamArray = T.let( - OpenAI::Internal::Type::ArrayOf[union: OpenAI::Models::Beta::Threads::MessageContentPartParam], + OpenAI::Internal::Type::ArrayOf[ + union: OpenAI::Beta::Threads::MessageContentPartParam + ], OpenAI::Internal::Type::Converter ) end @@ -150,17 +181,38 @@ module OpenAI module Role extend OpenAI::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::Beta::Threads::MessageCreateParams::Role) } + TaggedSymbol = + T.type_alias do + T.all(Symbol, OpenAI::Beta::Threads::MessageCreateParams::Role) + end OrSymbol = T.type_alias { T.any(Symbol, String) } - USER = T.let(:user, OpenAI::Models::Beta::Threads::MessageCreateParams::Role::TaggedSymbol) - ASSISTANT = T.let(:assistant, OpenAI::Models::Beta::Threads::MessageCreateParams::Role::TaggedSymbol) + USER = + T.let( + :user, + OpenAI::Beta::Threads::MessageCreateParams::Role::TaggedSymbol + ) + ASSISTANT = + T.let( + :assistant, + OpenAI::Beta::Threads::MessageCreateParams::Role::TaggedSymbol + ) - sig { override.returns(T::Array[OpenAI::Models::Beta::Threads::MessageCreateParams::Role::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[ + OpenAI::Beta::Threads::MessageCreateParams::Role::TaggedSymbol + ] + ) + end + def self.values + end end class Attachment < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The ID of the file to attach to the message. sig { returns(T.nilable(String)) } attr_reader :file_id @@ -174,8 +226,8 @@ module OpenAI T.nilable( T::Array[ T.any( - OpenAI::Models::Beta::CodeInterpreterTool, - OpenAI::Models::Beta::Threads::MessageCreateParams::Attachment::Tool::FileSearch + OpenAI::Beta::CodeInterpreterTool, + OpenAI::Beta::Threads::MessageCreateParams::Attachment::Tool::FileSearch ) ] ) @@ -185,57 +237,69 @@ module OpenAI sig do params( - tools: T::Array[ - T.any( - OpenAI::Models::Beta::CodeInterpreterTool, - OpenAI::Internal::AnyHash, - OpenAI::Models::Beta::Threads::MessageCreateParams::Attachment::Tool::FileSearch - ) - ] - ) - .void + tools: + T::Array[ + T.any( + OpenAI::Beta::CodeInterpreterTool::OrHash, + OpenAI::Beta::Threads::MessageCreateParams::Attachment::Tool::FileSearch::OrHash + ) + ] + ).void end attr_writer :tools sig do params( file_id: String, - tools: T::Array[ - T.any( - OpenAI::Models::Beta::CodeInterpreterTool, - OpenAI::Internal::AnyHash, - OpenAI::Models::Beta::Threads::MessageCreateParams::Attachment::Tool::FileSearch - ) - ] - ) - .returns(T.attached_class) + tools: + T::Array[ + T.any( + OpenAI::Beta::CodeInterpreterTool::OrHash, + OpenAI::Beta::Threads::MessageCreateParams::Attachment::Tool::FileSearch::OrHash + ) + ] + ).returns(T.attached_class) end def self.new( # The ID of the file to attach to the message. file_id: nil, # The tools to add this file to. tools: nil - ); end + ) + end + sig do - override - .returns( - { - file_id: String, - tools: T::Array[ + override.returns( + { + file_id: String, + tools: + T::Array[ T.any( - OpenAI::Models::Beta::CodeInterpreterTool, - OpenAI::Models::Beta::Threads::MessageCreateParams::Attachment::Tool::FileSearch + OpenAI::Beta::CodeInterpreterTool, + OpenAI::Beta::Threads::MessageCreateParams::Attachment::Tool::FileSearch ) ] - } - ) + } + ) + end + def to_hash end - def to_hash; end module Tool extend OpenAI::Internal::Type::Union + Variants = + T.type_alias do + T.any( + OpenAI::Beta::CodeInterpreterTool, + OpenAI::Beta::Threads::MessageCreateParams::Attachment::Tool::FileSearch + ) + end + class FileSearch < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The type of tool being defined: `file_search` sig { returns(Symbol) } attr_accessor :type @@ -244,18 +308,23 @@ module OpenAI def self.new( # The type of tool being defined: `file_search` type: :file_search - ); end - sig { override.returns({type: Symbol}) } - def to_hash; end + ) + end + + sig { override.returns({ type: Symbol }) } + def to_hash + end end sig do - override - .returns( - [OpenAI::Models::Beta::CodeInterpreterTool, OpenAI::Models::Beta::Threads::MessageCreateParams::Attachment::Tool::FileSearch] - ) + override.returns( + T::Array[ + OpenAI::Beta::Threads::MessageCreateParams::Attachment::Tool::Variants + ] + ) + end + def self.variants end - def self.variants; end end end end diff --git a/rbi/openai/models/beta/threads/message_delete_params.rbi b/rbi/openai/models/beta/threads/message_delete_params.rbi index 8f25de1b..0811af43 100644 --- a/rbi/openai/models/beta/threads/message_delete_params.rbi +++ b/rbi/openai/models/beta/threads/message_delete_params.rbi @@ -8,23 +8,28 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + sig { returns(String) } attr_accessor :thread_id sig do params( thread_id: String, - request_options: T.any( - OpenAI::RequestOptions, - OpenAI::Internal::AnyHash - ) - ) - .returns(T.attached_class) + request_options: OpenAI::RequestOptions::OrHash + ).returns(T.attached_class) + end + def self.new(thread_id:, request_options: {}) end - def self.new(thread_id:, request_options: {}); end - sig { override.returns({thread_id: String, request_options: OpenAI::RequestOptions}) } - def to_hash; end + sig do + override.returns( + { thread_id: String, request_options: OpenAI::RequestOptions } + ) + end + def to_hash + end end end end diff --git a/rbi/openai/models/beta/threads/message_deleted.rbi b/rbi/openai/models/beta/threads/message_deleted.rbi index b5da3306..73805106 100644 --- a/rbi/openai/models/beta/threads/message_deleted.rbi +++ b/rbi/openai/models/beta/threads/message_deleted.rbi @@ -5,6 +5,9 @@ module OpenAI module Beta module Threads class MessageDeleted < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + sig { returns(String) } attr_accessor :id @@ -14,11 +17,21 @@ module OpenAI sig { returns(Symbol) } attr_accessor :object - sig { params(id: String, deleted: T::Boolean, object: Symbol).returns(T.attached_class) } - def self.new(id:, deleted:, object: :"thread.message.deleted"); end + sig do + params(id: String, deleted: T::Boolean, object: Symbol).returns( + T.attached_class + ) + end + def self.new(id:, deleted:, object: :"thread.message.deleted") + end - sig { override.returns({id: String, deleted: T::Boolean, object: Symbol}) } - def to_hash; end + sig do + override.returns( + { id: String, deleted: T::Boolean, object: Symbol } + ) + end + def to_hash + end end end end diff --git a/rbi/openai/models/beta/threads/message_delta.rbi b/rbi/openai/models/beta/threads/message_delta.rbi index 55f3b251..7278f6d3 100644 --- a/rbi/openai/models/beta/threads/message_delta.rbi +++ b/rbi/openai/models/beta/threads/message_delta.rbi @@ -5,16 +5,19 @@ module OpenAI module Beta module Threads class MessageDelta < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The content of the message in array of text and/or images. sig do returns( T.nilable( T::Array[ T.any( - OpenAI::Models::Beta::Threads::ImageFileDeltaBlock, - OpenAI::Models::Beta::Threads::TextDeltaBlock, - OpenAI::Models::Beta::Threads::RefusalDeltaBlock, - OpenAI::Models::Beta::Threads::ImageURLDeltaBlock + OpenAI::Beta::Threads::ImageFileDeltaBlock, + OpenAI::Beta::Threads::TextDeltaBlock, + OpenAI::Beta::Threads::RefusalDeltaBlock, + OpenAI::Beta::Threads::ImageURLDeltaBlock ) ] ) @@ -24,79 +27,106 @@ module OpenAI sig do params( - content: T::Array[ - T.any( - OpenAI::Models::Beta::Threads::ImageFileDeltaBlock, - OpenAI::Internal::AnyHash, - OpenAI::Models::Beta::Threads::TextDeltaBlock, - OpenAI::Models::Beta::Threads::RefusalDeltaBlock, - OpenAI::Models::Beta::Threads::ImageURLDeltaBlock - ) - ] - ) - .void + content: + T::Array[ + T.any( + OpenAI::Beta::Threads::ImageFileDeltaBlock::OrHash, + OpenAI::Beta::Threads::TextDeltaBlock::OrHash, + OpenAI::Beta::Threads::RefusalDeltaBlock::OrHash, + OpenAI::Beta::Threads::ImageURLDeltaBlock::OrHash + ) + ] + ).void end attr_writer :content # The entity that produced the message. One of `user` or `assistant`. - sig { returns(T.nilable(OpenAI::Models::Beta::Threads::MessageDelta::Role::TaggedSymbol)) } + sig do + returns( + T.nilable(OpenAI::Beta::Threads::MessageDelta::Role::TaggedSymbol) + ) + end attr_reader :role - sig { params(role: OpenAI::Models::Beta::Threads::MessageDelta::Role::OrSymbol).void } + sig do + params( + role: OpenAI::Beta::Threads::MessageDelta::Role::OrSymbol + ).void + end attr_writer :role # The delta containing the fields that have changed on the Message. sig do params( - content: T::Array[ - T.any( - OpenAI::Models::Beta::Threads::ImageFileDeltaBlock, - OpenAI::Internal::AnyHash, - OpenAI::Models::Beta::Threads::TextDeltaBlock, - OpenAI::Models::Beta::Threads::RefusalDeltaBlock, - OpenAI::Models::Beta::Threads::ImageURLDeltaBlock - ) - ], - role: OpenAI::Models::Beta::Threads::MessageDelta::Role::OrSymbol - ) - .returns(T.attached_class) + content: + T::Array[ + T.any( + OpenAI::Beta::Threads::ImageFileDeltaBlock::OrHash, + OpenAI::Beta::Threads::TextDeltaBlock::OrHash, + OpenAI::Beta::Threads::RefusalDeltaBlock::OrHash, + OpenAI::Beta::Threads::ImageURLDeltaBlock::OrHash + ) + ], + role: OpenAI::Beta::Threads::MessageDelta::Role::OrSymbol + ).returns(T.attached_class) end def self.new( # The content of the message in array of text and/or images. content: nil, # The entity that produced the message. One of `user` or `assistant`. role: nil - ); end + ) + end + sig do - override - .returns( - { - content: T::Array[ + override.returns( + { + content: + T::Array[ T.any( - OpenAI::Models::Beta::Threads::ImageFileDeltaBlock, - OpenAI::Models::Beta::Threads::TextDeltaBlock, - OpenAI::Models::Beta::Threads::RefusalDeltaBlock, - OpenAI::Models::Beta::Threads::ImageURLDeltaBlock + OpenAI::Beta::Threads::ImageFileDeltaBlock, + OpenAI::Beta::Threads::TextDeltaBlock, + OpenAI::Beta::Threads::RefusalDeltaBlock, + OpenAI::Beta::Threads::ImageURLDeltaBlock ) ], - role: OpenAI::Models::Beta::Threads::MessageDelta::Role::TaggedSymbol - } - ) + role: OpenAI::Beta::Threads::MessageDelta::Role::TaggedSymbol + } + ) + end + def to_hash end - def to_hash; end # The entity that produced the message. One of `user` or `assistant`. module Role extend OpenAI::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::Beta::Threads::MessageDelta::Role) } + TaggedSymbol = + T.type_alias do + T.all(Symbol, OpenAI::Beta::Threads::MessageDelta::Role) + end OrSymbol = T.type_alias { T.any(Symbol, String) } - USER = T.let(:user, OpenAI::Models::Beta::Threads::MessageDelta::Role::TaggedSymbol) - ASSISTANT = T.let(:assistant, OpenAI::Models::Beta::Threads::MessageDelta::Role::TaggedSymbol) + USER = + T.let( + :user, + OpenAI::Beta::Threads::MessageDelta::Role::TaggedSymbol + ) + ASSISTANT = + T.let( + :assistant, + OpenAI::Beta::Threads::MessageDelta::Role::TaggedSymbol + ) - sig { override.returns(T::Array[OpenAI::Models::Beta::Threads::MessageDelta::Role::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[ + OpenAI::Beta::Threads::MessageDelta::Role::TaggedSymbol + ] + ) + end + def self.values + end end end end diff --git a/rbi/openai/models/beta/threads/message_delta_event.rbi b/rbi/openai/models/beta/threads/message_delta_event.rbi index 4e6d3d17..4a93d6d2 100644 --- a/rbi/openai/models/beta/threads/message_delta_event.rbi +++ b/rbi/openai/models/beta/threads/message_delta_event.rbi @@ -5,15 +5,20 @@ module OpenAI module Beta module Threads class MessageDeltaEvent < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The identifier of the message, which can be referenced in API endpoints. sig { returns(String) } attr_accessor :id # The delta containing the fields that have changed on the Message. - sig { returns(OpenAI::Models::Beta::Threads::MessageDelta) } + sig { returns(OpenAI::Beta::Threads::MessageDelta) } attr_reader :delta - sig { params(delta: T.any(OpenAI::Models::Beta::Threads::MessageDelta, OpenAI::Internal::AnyHash)).void } + sig do + params(delta: OpenAI::Beta::Threads::MessageDelta::OrHash).void + end attr_writer :delta # The object type, which is always `thread.message.delta`. @@ -25,10 +30,9 @@ module OpenAI sig do params( id: String, - delta: T.any(OpenAI::Models::Beta::Threads::MessageDelta, OpenAI::Internal::AnyHash), + delta: OpenAI::Beta::Threads::MessageDelta::OrHash, object: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # The identifier of the message, which can be referenced in API endpoints. @@ -37,9 +41,20 @@ module OpenAI delta:, # The object type, which is always `thread.message.delta`. object: :"thread.message.delta" - ); end - sig { override.returns({id: String, delta: OpenAI::Models::Beta::Threads::MessageDelta, object: Symbol}) } - def to_hash; end + ) + end + + sig do + override.returns( + { + id: String, + delta: OpenAI::Beta::Threads::MessageDelta, + object: Symbol + } + ) + end + def to_hash + end end end end diff --git a/rbi/openai/models/beta/threads/message_list_params.rbi b/rbi/openai/models/beta/threads/message_list_params.rbi index 50cf3829..158f377d 100644 --- a/rbi/openai/models/beta/threads/message_list_params.rbi +++ b/rbi/openai/models/beta/threads/message_list_params.rbi @@ -8,6 +8,9 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # A cursor for use in pagination. `after` is an object ID that defines your place # in the list. For instance, if you make a list request and receive 100 objects, # ending with obj_foo, your subsequent call can include after=obj_foo in order to @@ -38,10 +41,20 @@ module OpenAI # Sort order by the `created_at` timestamp of the objects. `asc` for ascending # order and `desc` for descending order. - sig { returns(T.nilable(OpenAI::Models::Beta::Threads::MessageListParams::Order::OrSymbol)) } + sig do + returns( + T.nilable( + OpenAI::Beta::Threads::MessageListParams::Order::OrSymbol + ) + ) + end attr_reader :order - sig { params(order: OpenAI::Models::Beta::Threads::MessageListParams::Order::OrSymbol).void } + sig do + params( + order: OpenAI::Beta::Threads::MessageListParams::Order::OrSymbol + ).void + end attr_writer :order # Filter messages by the run ID that generated them. @@ -56,11 +69,10 @@ module OpenAI after: String, before: String, limit: Integer, - order: OpenAI::Models::Beta::Threads::MessageListParams::Order::OrSymbol, + order: OpenAI::Beta::Threads::MessageListParams::Order::OrSymbol, run_id: String, - request_options: T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash) - ) - .returns(T.attached_class) + request_options: OpenAI::RequestOptions::OrHash + ).returns(T.attached_class) end def self.new( # A cursor for use in pagination. `after` is an object ID that defines your place @@ -82,35 +94,56 @@ module OpenAI # Filter messages by the run ID that generated them. run_id: nil, request_options: {} - ); end + ) + end + sig do - override - .returns( - { - after: String, - before: String, - limit: Integer, - order: OpenAI::Models::Beta::Threads::MessageListParams::Order::OrSymbol, - run_id: String, - request_options: OpenAI::RequestOptions - } - ) + override.returns( + { + after: String, + before: String, + limit: Integer, + order: + OpenAI::Beta::Threads::MessageListParams::Order::OrSymbol, + run_id: String, + request_options: OpenAI::RequestOptions + } + ) + end + def to_hash end - def to_hash; end # Sort order by the `created_at` timestamp of the objects. `asc` for ascending # order and `desc` for descending order. module Order extend OpenAI::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::Beta::Threads::MessageListParams::Order) } + TaggedSymbol = + T.type_alias do + T.all(Symbol, OpenAI::Beta::Threads::MessageListParams::Order) + end OrSymbol = T.type_alias { T.any(Symbol, String) } - ASC = T.let(:asc, OpenAI::Models::Beta::Threads::MessageListParams::Order::TaggedSymbol) - DESC = T.let(:desc, OpenAI::Models::Beta::Threads::MessageListParams::Order::TaggedSymbol) + ASC = + T.let( + :asc, + OpenAI::Beta::Threads::MessageListParams::Order::TaggedSymbol + ) + DESC = + T.let( + :desc, + OpenAI::Beta::Threads::MessageListParams::Order::TaggedSymbol + ) - sig { override.returns(T::Array[OpenAI::Models::Beta::Threads::MessageListParams::Order::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[ + OpenAI::Beta::Threads::MessageListParams::Order::TaggedSymbol + ] + ) + end + def self.values + end end end end diff --git a/rbi/openai/models/beta/threads/message_retrieve_params.rbi b/rbi/openai/models/beta/threads/message_retrieve_params.rbi index 1818fc76..4a7da6f0 100644 --- a/rbi/openai/models/beta/threads/message_retrieve_params.rbi +++ b/rbi/openai/models/beta/threads/message_retrieve_params.rbi @@ -8,23 +8,28 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + sig { returns(String) } attr_accessor :thread_id sig do params( thread_id: String, - request_options: T.any( - OpenAI::RequestOptions, - OpenAI::Internal::AnyHash - ) - ) - .returns(T.attached_class) + request_options: OpenAI::RequestOptions::OrHash + ).returns(T.attached_class) + end + def self.new(thread_id:, request_options: {}) end - def self.new(thread_id:, request_options: {}); end - sig { override.returns({thread_id: String, request_options: OpenAI::RequestOptions}) } - def to_hash; end + sig do + override.returns( + { thread_id: String, request_options: OpenAI::RequestOptions } + ) + end + def to_hash + end end end end diff --git a/rbi/openai/models/beta/threads/message_update_params.rbi b/rbi/openai/models/beta/threads/message_update_params.rbi index 33d47d32..ecbd63ee 100644 --- a/rbi/openai/models/beta/threads/message_update_params.rbi +++ b/rbi/openai/models/beta/threads/message_update_params.rbi @@ -8,6 +8,9 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + sig { returns(String) } attr_accessor :thread_id @@ -24,9 +27,8 @@ module OpenAI params( thread_id: String, metadata: T.nilable(T::Hash[Symbol, String]), - request_options: T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash) - ) - .returns(T.attached_class) + request_options: OpenAI::RequestOptions::OrHash + ).returns(T.attached_class) end def self.new( thread_id:, @@ -38,18 +40,20 @@ module OpenAI # a maximum length of 512 characters. metadata: nil, request_options: {} - ); end + ) + end + sig do - override - .returns( - { - thread_id: String, - metadata: T.nilable(T::Hash[Symbol, String]), - request_options: OpenAI::RequestOptions - } - ) + override.returns( + { + thread_id: String, + metadata: T.nilable(T::Hash[Symbol, String]), + request_options: OpenAI::RequestOptions + } + ) + end + def to_hash end - def to_hash; end end end end diff --git a/rbi/openai/models/beta/threads/refusal_content_block.rbi b/rbi/openai/models/beta/threads/refusal_content_block.rbi index 70e4dbb9..96ddb8b1 100644 --- a/rbi/openai/models/beta/threads/refusal_content_block.rbi +++ b/rbi/openai/models/beta/threads/refusal_content_block.rbi @@ -5,6 +5,9 @@ module OpenAI module Beta module Threads class RefusalContentBlock < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + sig { returns(String) } attr_accessor :refusal @@ -13,14 +16,19 @@ module OpenAI attr_accessor :type # The refusal content generated by the assistant. - sig { params(refusal: String, type: Symbol).returns(T.attached_class) } + sig do + params(refusal: String, type: Symbol).returns(T.attached_class) + end def self.new( refusal:, # Always `refusal`. type: :refusal - ); end - sig { override.returns({refusal: String, type: Symbol}) } - def to_hash; end + ) + end + + sig { override.returns({ refusal: String, type: Symbol }) } + def to_hash + end end end end diff --git a/rbi/openai/models/beta/threads/refusal_delta_block.rbi b/rbi/openai/models/beta/threads/refusal_delta_block.rbi index 8b3878d9..c6854430 100644 --- a/rbi/openai/models/beta/threads/refusal_delta_block.rbi +++ b/rbi/openai/models/beta/threads/refusal_delta_block.rbi @@ -5,6 +5,9 @@ module OpenAI module Beta module Threads class RefusalDeltaBlock < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The index of the refusal part in the message. sig { returns(Integer) } attr_accessor :index @@ -20,16 +23,25 @@ module OpenAI attr_writer :refusal # The refusal content that is part of a message. - sig { params(index: Integer, refusal: String, type: Symbol).returns(T.attached_class) } + sig do + params(index: Integer, refusal: String, type: Symbol).returns( + T.attached_class + ) + end def self.new( # The index of the refusal part in the message. index:, refusal: nil, # Always `refusal`. type: :refusal - ); end - sig { override.returns({index: Integer, type: Symbol, refusal: String}) } - def to_hash; end + ) + end + + sig do + override.returns({ index: Integer, type: Symbol, refusal: String }) + end + def to_hash + end end end end diff --git a/rbi/openai/models/beta/threads/required_action_function_tool_call.rbi b/rbi/openai/models/beta/threads/required_action_function_tool_call.rbi index b1788c25..c2625cd6 100644 --- a/rbi/openai/models/beta/threads/required_action_function_tool_call.rbi +++ b/rbi/openai/models/beta/threads/required_action_function_tool_call.rbi @@ -5,6 +5,9 @@ module OpenAI module Beta module Threads class RequiredActionFunctionToolCall < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The ID of the tool call. This ID must be referenced when you submit the tool # outputs in using the # [Submit tool outputs to run](https://platform.openai.com/docs/api-reference/runs/submitToolOutputs) @@ -13,14 +16,18 @@ module OpenAI attr_accessor :id # The function definition. - sig { returns(OpenAI::Models::Beta::Threads::RequiredActionFunctionToolCall::Function) } + sig do + returns( + OpenAI::Beta::Threads::RequiredActionFunctionToolCall::Function + ) + end attr_reader :function sig do params( - function: T.any(OpenAI::Models::Beta::Threads::RequiredActionFunctionToolCall::Function, OpenAI::Internal::AnyHash) - ) - .void + function: + OpenAI::Beta::Threads::RequiredActionFunctionToolCall::Function::OrHash + ).void end attr_writer :function @@ -33,10 +40,10 @@ module OpenAI sig do params( id: String, - function: T.any(OpenAI::Models::Beta::Threads::RequiredActionFunctionToolCall::Function, OpenAI::Internal::AnyHash), + function: + OpenAI::Beta::Threads::RequiredActionFunctionToolCall::Function::OrHash, type: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # The ID of the tool call. This ID must be referenced when you submit the tool @@ -49,16 +56,26 @@ module OpenAI # The type of tool call the output is required for. For now, this is always # `function`. type: :function - ); end + ) + end + sig do - override - .returns( - {id: String, function: OpenAI::Models::Beta::Threads::RequiredActionFunctionToolCall::Function, type: Symbol} - ) + override.returns( + { + id: String, + function: + OpenAI::Beta::Threads::RequiredActionFunctionToolCall::Function, + type: Symbol + } + ) + end + def to_hash end - def to_hash; end class Function < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The arguments that the model expects you to pass to the function. sig { returns(String) } attr_accessor :arguments @@ -68,15 +85,20 @@ module OpenAI attr_accessor :name # The function definition. - sig { params(arguments: String, name: String).returns(T.attached_class) } + sig do + params(arguments: String, name: String).returns(T.attached_class) + end def self.new( # The arguments that the model expects you to pass to the function. arguments:, # The name of the function. name: - ); end - sig { override.returns({arguments: String, name: String}) } - def to_hash; end + ) + end + + sig { override.returns({ arguments: String, name: String }) } + def to_hash + end end end end diff --git a/rbi/openai/models/beta/threads/run.rbi b/rbi/openai/models/beta/threads/run.rbi index 102cf828..c769a3f6 100644 --- a/rbi/openai/models/beta/threads/run.rbi +++ b/rbi/openai/models/beta/threads/run.rbi @@ -5,6 +5,9 @@ module OpenAI module Beta module Threads class Run < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The identifier, which can be referenced in API endpoints. sig { returns(String) } attr_accessor :id @@ -37,14 +40,16 @@ module OpenAI # Details on why the run is incomplete. Will be `null` if the run is not # incomplete. - sig { returns(T.nilable(OpenAI::Models::Beta::Threads::Run::IncompleteDetails)) } + sig do + returns(T.nilable(OpenAI::Beta::Threads::Run::IncompleteDetails)) + end attr_reader :incomplete_details sig do params( - incomplete_details: T.nilable(T.any(OpenAI::Models::Beta::Threads::Run::IncompleteDetails, OpenAI::Internal::AnyHash)) - ) - .void + incomplete_details: + T.nilable(OpenAI::Beta::Threads::Run::IncompleteDetails::OrHash) + ).void end attr_writer :incomplete_details @@ -55,14 +60,14 @@ module OpenAI attr_accessor :instructions # The last error associated with this run. Will be `null` if there are no errors. - sig { returns(T.nilable(OpenAI::Models::Beta::Threads::Run::LastError)) } + sig { returns(T.nilable(OpenAI::Beta::Threads::Run::LastError)) } attr_reader :last_error sig do params( - last_error: T.nilable(T.any(OpenAI::Models::Beta::Threads::Run::LastError, OpenAI::Internal::AnyHash)) - ) - .void + last_error: + T.nilable(OpenAI::Beta::Threads::Run::LastError::OrHash) + ).void end attr_writer :last_error @@ -103,14 +108,14 @@ module OpenAI # Details on the action required to continue the run. Will be `null` if no action # is required. - sig { returns(T.nilable(OpenAI::Models::Beta::Threads::Run::RequiredAction)) } + sig { returns(T.nilable(OpenAI::Beta::Threads::Run::RequiredAction)) } attr_reader :required_action sig do params( - required_action: T.nilable(T.any(OpenAI::Models::Beta::Threads::Run::RequiredAction, OpenAI::Internal::AnyHash)) - ) - .void + required_action: + T.nilable(OpenAI::Beta::Threads::Run::RequiredAction::OrHash) + ).void end attr_writer :required_action @@ -139,9 +144,9 @@ module OpenAI T.nilable( T.any( Symbol, - OpenAI::Models::ResponseFormatText, - OpenAI::Models::ResponseFormatJSONObject, - OpenAI::Models::ResponseFormatJSONSchema + OpenAI::ResponseFormatText, + OpenAI::ResponseFormatJSONObject, + OpenAI::ResponseFormatJSONSchema ) ) ) @@ -155,7 +160,7 @@ module OpenAI # The status of the run, which can be either `queued`, `in_progress`, # `requires_action`, `cancelling`, `cancelled`, `failed`, `completed`, # `incomplete`, or `expired`. - sig { returns(OpenAI::Models::Beta::Threads::RunStatus::TaggedSymbol) } + sig { returns(OpenAI::Beta::Threads::RunStatus::TaggedSymbol) } attr_accessor :status # The ID of the [thread](https://platform.openai.com/docs/api-reference/threads) @@ -174,8 +179,8 @@ module OpenAI returns( T.nilable( T.any( - OpenAI::Models::Beta::AssistantToolChoiceOption::Auto::TaggedSymbol, - OpenAI::Models::Beta::AssistantToolChoice + OpenAI::Beta::AssistantToolChoiceOption::Auto::TaggedSymbol, + OpenAI::Beta::AssistantToolChoice ) ) ) @@ -189,9 +194,9 @@ module OpenAI returns( T::Array[ T.any( - OpenAI::Models::Beta::CodeInterpreterTool, - OpenAI::Models::Beta::FileSearchTool, - OpenAI::Models::Beta::FunctionTool + OpenAI::Beta::CodeInterpreterTool, + OpenAI::Beta::FileSearchTool, + OpenAI::Beta::FunctionTool ) ] ) @@ -200,23 +205,31 @@ module OpenAI # Controls for how a thread will be truncated prior to the run. Use this to # control the intial context window of the run. - sig { returns(T.nilable(OpenAI::Models::Beta::Threads::Run::TruncationStrategy)) } + sig do + returns(T.nilable(OpenAI::Beta::Threads::Run::TruncationStrategy)) + end attr_reader :truncation_strategy sig do params( - truncation_strategy: T.nilable(T.any(OpenAI::Models::Beta::Threads::Run::TruncationStrategy, OpenAI::Internal::AnyHash)) - ) - .void + truncation_strategy: + T.nilable( + OpenAI::Beta::Threads::Run::TruncationStrategy::OrHash + ) + ).void end attr_writer :truncation_strategy # Usage statistics related to the run. This value will be `null` if the run is not # in a terminal state (i.e. `in_progress`, `queued`, etc.). - sig { returns(T.nilable(OpenAI::Models::Beta::Threads::Run::Usage)) } + sig { returns(T.nilable(OpenAI::Beta::Threads::Run::Usage)) } attr_reader :usage - sig { params(usage: T.nilable(T.any(OpenAI::Models::Beta::Threads::Run::Usage, OpenAI::Internal::AnyHash))).void } + sig do + params( + usage: T.nilable(OpenAI::Beta::Threads::Run::Usage::OrHash) + ).void + end attr_writer :usage # The sampling temperature used for this run. If not set, defaults to 1. @@ -238,49 +251,56 @@ module OpenAI created_at: Integer, expires_at: T.nilable(Integer), failed_at: T.nilable(Integer), - incomplete_details: T.nilable(T.any(OpenAI::Models::Beta::Threads::Run::IncompleteDetails, OpenAI::Internal::AnyHash)), + incomplete_details: + T.nilable( + OpenAI::Beta::Threads::Run::IncompleteDetails::OrHash + ), instructions: String, - last_error: T.nilable(T.any(OpenAI::Models::Beta::Threads::Run::LastError, OpenAI::Internal::AnyHash)), + last_error: + T.nilable(OpenAI::Beta::Threads::Run::LastError::OrHash), max_completion_tokens: T.nilable(Integer), max_prompt_tokens: T.nilable(Integer), metadata: T.nilable(T::Hash[Symbol, String]), model: String, parallel_tool_calls: T::Boolean, - required_action: T.nilable(T.any(OpenAI::Models::Beta::Threads::Run::RequiredAction, OpenAI::Internal::AnyHash)), - response_format: T.nilable( - T.any( - Symbol, - OpenAI::Models::ResponseFormatText, - OpenAI::Internal::AnyHash, - OpenAI::Models::ResponseFormatJSONObject, - OpenAI::Models::ResponseFormatJSONSchema - ) - ), + required_action: + T.nilable(OpenAI::Beta::Threads::Run::RequiredAction::OrHash), + response_format: + T.nilable( + T.any( + Symbol, + OpenAI::ResponseFormatText::OrHash, + OpenAI::ResponseFormatJSONObject::OrHash, + OpenAI::ResponseFormatJSONSchema::OrHash + ) + ), started_at: T.nilable(Integer), - status: OpenAI::Models::Beta::Threads::RunStatus::OrSymbol, + status: OpenAI::Beta::Threads::RunStatus::OrSymbol, thread_id: String, - tool_choice: T.nilable( - T.any( - OpenAI::Models::Beta::AssistantToolChoiceOption::Auto::OrSymbol, - OpenAI::Models::Beta::AssistantToolChoice, - OpenAI::Internal::AnyHash - ) - ), - tools: T::Array[ - T.any( - OpenAI::Models::Beta::CodeInterpreterTool, - OpenAI::Internal::AnyHash, - OpenAI::Models::Beta::FileSearchTool, - OpenAI::Models::Beta::FunctionTool - ) - ], - truncation_strategy: T.nilable(T.any(OpenAI::Models::Beta::Threads::Run::TruncationStrategy, OpenAI::Internal::AnyHash)), - usage: T.nilable(T.any(OpenAI::Models::Beta::Threads::Run::Usage, OpenAI::Internal::AnyHash)), + tool_choice: + T.nilable( + T.any( + OpenAI::Beta::AssistantToolChoiceOption::Auto::OrSymbol, + OpenAI::Beta::AssistantToolChoice::OrHash + ) + ), + tools: + T::Array[ + T.any( + OpenAI::Beta::CodeInterpreterTool::OrHash, + OpenAI::Beta::FileSearchTool::OrHash, + OpenAI::Beta::FunctionTool::OrHash + ) + ], + truncation_strategy: + T.nilable( + OpenAI::Beta::Threads::Run::TruncationStrategy::OrHash + ), + usage: T.nilable(OpenAI::Beta::Threads::Run::Usage::OrHash), temperature: T.nilable(Float), top_p: T.nilable(Float), object: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # The identifier, which can be referenced in API endpoints. @@ -386,83 +406,117 @@ module OpenAI top_p: nil, # The object type, which is always `thread.run`. object: :"thread.run" - ); end + ) + end + sig do - override - .returns( - { - id: String, - assistant_id: String, - cancelled_at: T.nilable(Integer), - completed_at: T.nilable(Integer), - created_at: Integer, - expires_at: T.nilable(Integer), - failed_at: T.nilable(Integer), - incomplete_details: T.nilable(OpenAI::Models::Beta::Threads::Run::IncompleteDetails), - instructions: String, - last_error: T.nilable(OpenAI::Models::Beta::Threads::Run::LastError), - max_completion_tokens: T.nilable(Integer), - max_prompt_tokens: T.nilable(Integer), - metadata: T.nilable(T::Hash[Symbol, String]), - model: String, - object: Symbol, - parallel_tool_calls: T::Boolean, - required_action: T.nilable(OpenAI::Models::Beta::Threads::Run::RequiredAction), - response_format: T.nilable( + override.returns( + { + id: String, + assistant_id: String, + cancelled_at: T.nilable(Integer), + completed_at: T.nilable(Integer), + created_at: Integer, + expires_at: T.nilable(Integer), + failed_at: T.nilable(Integer), + incomplete_details: + T.nilable(OpenAI::Beta::Threads::Run::IncompleteDetails), + instructions: String, + last_error: T.nilable(OpenAI::Beta::Threads::Run::LastError), + max_completion_tokens: T.nilable(Integer), + max_prompt_tokens: T.nilable(Integer), + metadata: T.nilable(T::Hash[Symbol, String]), + model: String, + object: Symbol, + parallel_tool_calls: T::Boolean, + required_action: + T.nilable(OpenAI::Beta::Threads::Run::RequiredAction), + response_format: + T.nilable( T.any( Symbol, - OpenAI::Models::ResponseFormatText, - OpenAI::Models::ResponseFormatJSONObject, - OpenAI::Models::ResponseFormatJSONSchema + OpenAI::ResponseFormatText, + OpenAI::ResponseFormatJSONObject, + OpenAI::ResponseFormatJSONSchema ) ), - started_at: T.nilable(Integer), - status: OpenAI::Models::Beta::Threads::RunStatus::TaggedSymbol, - thread_id: String, - tool_choice: T.nilable( + started_at: T.nilable(Integer), + status: OpenAI::Beta::Threads::RunStatus::TaggedSymbol, + thread_id: String, + tool_choice: + T.nilable( T.any( - OpenAI::Models::Beta::AssistantToolChoiceOption::Auto::TaggedSymbol, - OpenAI::Models::Beta::AssistantToolChoice + OpenAI::Beta::AssistantToolChoiceOption::Auto::TaggedSymbol, + OpenAI::Beta::AssistantToolChoice ) ), - tools: T::Array[ + tools: + T::Array[ T.any( - OpenAI::Models::Beta::CodeInterpreterTool, - OpenAI::Models::Beta::FileSearchTool, - OpenAI::Models::Beta::FunctionTool + OpenAI::Beta::CodeInterpreterTool, + OpenAI::Beta::FileSearchTool, + OpenAI::Beta::FunctionTool ) ], - truncation_strategy: T.nilable(OpenAI::Models::Beta::Threads::Run::TruncationStrategy), - usage: T.nilable(OpenAI::Models::Beta::Threads::Run::Usage), - temperature: T.nilable(Float), - top_p: T.nilable(Float) - } - ) + truncation_strategy: + T.nilable(OpenAI::Beta::Threads::Run::TruncationStrategy), + usage: T.nilable(OpenAI::Beta::Threads::Run::Usage), + temperature: T.nilable(Float), + top_p: T.nilable(Float) + } + ) + end + def to_hash end - def to_hash; end class IncompleteDetails < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The reason why the run is incomplete. This will point to which specific token # limit was reached over the course of the run. - sig { returns(T.nilable(OpenAI::Models::Beta::Threads::Run::IncompleteDetails::Reason::TaggedSymbol)) } + sig do + returns( + T.nilable( + OpenAI::Beta::Threads::Run::IncompleteDetails::Reason::TaggedSymbol + ) + ) + end attr_reader :reason - sig { params(reason: OpenAI::Models::Beta::Threads::Run::IncompleteDetails::Reason::OrSymbol).void } + sig do + params( + reason: + OpenAI::Beta::Threads::Run::IncompleteDetails::Reason::OrSymbol + ).void + end attr_writer :reason # Details on why the run is incomplete. Will be `null` if the run is not # incomplete. sig do - params(reason: OpenAI::Models::Beta::Threads::Run::IncompleteDetails::Reason::OrSymbol) - .returns(T.attached_class) + params( + reason: + OpenAI::Beta::Threads::Run::IncompleteDetails::Reason::OrSymbol + ).returns(T.attached_class) end def self.new( # The reason why the run is incomplete. This will point to which specific token # limit was reached over the course of the run. reason: nil - ); end - sig { override.returns({reason: OpenAI::Models::Beta::Threads::Run::IncompleteDetails::Reason::TaggedSymbol}) } - def to_hash; end + ) + end + + sig do + override.returns( + { + reason: + OpenAI::Beta::Threads::Run::IncompleteDetails::Reason::TaggedSymbol + } + ) + end + def to_hash + end # The reason why the run is incomplete. This will point to which specific token # limit was reached over the course of the run. @@ -470,22 +524,45 @@ module OpenAI extend OpenAI::Internal::Type::Enum TaggedSymbol = - T.type_alias { T.all(Symbol, OpenAI::Models::Beta::Threads::Run::IncompleteDetails::Reason) } + T.type_alias do + T.all( + Symbol, + OpenAI::Beta::Threads::Run::IncompleteDetails::Reason + ) + end OrSymbol = T.type_alias { T.any(Symbol, String) } MAX_COMPLETION_TOKENS = - T.let(:max_completion_tokens, OpenAI::Models::Beta::Threads::Run::IncompleteDetails::Reason::TaggedSymbol) + T.let( + :max_completion_tokens, + OpenAI::Beta::Threads::Run::IncompleteDetails::Reason::TaggedSymbol + ) MAX_PROMPT_TOKENS = - T.let(:max_prompt_tokens, OpenAI::Models::Beta::Threads::Run::IncompleteDetails::Reason::TaggedSymbol) + T.let( + :max_prompt_tokens, + OpenAI::Beta::Threads::Run::IncompleteDetails::Reason::TaggedSymbol + ) - sig { override.returns(T::Array[OpenAI::Models::Beta::Threads::Run::IncompleteDetails::Reason::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[ + OpenAI::Beta::Threads::Run::IncompleteDetails::Reason::TaggedSymbol + ] + ) + end + def self.values + end end end class LastError < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # One of `server_error`, `rate_limit_exceeded`, or `invalid_prompt`. - sig { returns(OpenAI::Models::Beta::Threads::Run::LastError::Code::TaggedSymbol) } + sig do + returns(OpenAI::Beta::Threads::Run::LastError::Code::TaggedSymbol) + end attr_accessor :code # A human-readable description of the error. @@ -494,49 +571,86 @@ module OpenAI # The last error associated with this run. Will be `null` if there are no errors. sig do - params(code: OpenAI::Models::Beta::Threads::Run::LastError::Code::OrSymbol, message: String) - .returns(T.attached_class) + params( + code: OpenAI::Beta::Threads::Run::LastError::Code::OrSymbol, + message: String + ).returns(T.attached_class) end def self.new( # One of `server_error`, `rate_limit_exceeded`, or `invalid_prompt`. code:, # A human-readable description of the error. message: - ); end + ) + end + sig do - override - .returns({code: OpenAI::Models::Beta::Threads::Run::LastError::Code::TaggedSymbol, message: String}) + override.returns( + { + code: + OpenAI::Beta::Threads::Run::LastError::Code::TaggedSymbol, + message: String + } + ) + end + def to_hash end - def to_hash; end # One of `server_error`, `rate_limit_exceeded`, or `invalid_prompt`. module Code extend OpenAI::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::Beta::Threads::Run::LastError::Code) } + TaggedSymbol = + T.type_alias do + T.all(Symbol, OpenAI::Beta::Threads::Run::LastError::Code) + end OrSymbol = T.type_alias { T.any(Symbol, String) } - SERVER_ERROR = T.let(:server_error, OpenAI::Models::Beta::Threads::Run::LastError::Code::TaggedSymbol) + SERVER_ERROR = + T.let( + :server_error, + OpenAI::Beta::Threads::Run::LastError::Code::TaggedSymbol + ) RATE_LIMIT_EXCEEDED = - T.let(:rate_limit_exceeded, OpenAI::Models::Beta::Threads::Run::LastError::Code::TaggedSymbol) + T.let( + :rate_limit_exceeded, + OpenAI::Beta::Threads::Run::LastError::Code::TaggedSymbol + ) INVALID_PROMPT = - T.let(:invalid_prompt, OpenAI::Models::Beta::Threads::Run::LastError::Code::TaggedSymbol) + T.let( + :invalid_prompt, + OpenAI::Beta::Threads::Run::LastError::Code::TaggedSymbol + ) - sig { override.returns(T::Array[OpenAI::Models::Beta::Threads::Run::LastError::Code::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[ + OpenAI::Beta::Threads::Run::LastError::Code::TaggedSymbol + ] + ) + end + def self.values + end end end class RequiredAction < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Details on the tool outputs needed for this run to continue. - sig { returns(OpenAI::Models::Beta::Threads::Run::RequiredAction::SubmitToolOutputs) } + sig do + returns( + OpenAI::Beta::Threads::Run::RequiredAction::SubmitToolOutputs + ) + end attr_reader :submit_tool_outputs sig do params( - submit_tool_outputs: T.any(OpenAI::Models::Beta::Threads::Run::RequiredAction::SubmitToolOutputs, OpenAI::Internal::AnyHash) - ) - .void + submit_tool_outputs: + OpenAI::Beta::Threads::Run::RequiredAction::SubmitToolOutputs::OrHash + ).void end attr_writer :submit_tool_outputs @@ -548,52 +662,88 @@ module OpenAI # is required. sig do params( - submit_tool_outputs: T.any(OpenAI::Models::Beta::Threads::Run::RequiredAction::SubmitToolOutputs, OpenAI::Internal::AnyHash), + submit_tool_outputs: + OpenAI::Beta::Threads::Run::RequiredAction::SubmitToolOutputs::OrHash, type: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # Details on the tool outputs needed for this run to continue. submit_tool_outputs:, # For now, this is always `submit_tool_outputs`. type: :submit_tool_outputs - ); end + ) + end + sig do - override - .returns( - {submit_tool_outputs: OpenAI::Models::Beta::Threads::Run::RequiredAction::SubmitToolOutputs, type: Symbol} - ) + override.returns( + { + submit_tool_outputs: + OpenAI::Beta::Threads::Run::RequiredAction::SubmitToolOutputs, + type: Symbol + } + ) + end + def to_hash end - def to_hash; end class SubmitToolOutputs < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # A list of the relevant tool calls. - sig { returns(T::Array[OpenAI::Models::Beta::Threads::RequiredActionFunctionToolCall]) } + sig do + returns( + T::Array[ + OpenAI::Beta::Threads::RequiredActionFunctionToolCall + ] + ) + end attr_accessor :tool_calls # Details on the tool outputs needed for this run to continue. sig do params( - tool_calls: T::Array[T.any(OpenAI::Models::Beta::Threads::RequiredActionFunctionToolCall, OpenAI::Internal::AnyHash)] - ) - .returns(T.attached_class) + tool_calls: + T::Array[ + OpenAI::Beta::Threads::RequiredActionFunctionToolCall::OrHash + ] + ).returns(T.attached_class) end def self.new( # A list of the relevant tool calls. tool_calls: - ); end - sig { override.returns({tool_calls: T::Array[OpenAI::Models::Beta::Threads::RequiredActionFunctionToolCall]}) } - def to_hash; end + ) + end + + sig do + override.returns( + { + tool_calls: + T::Array[ + OpenAI::Beta::Threads::RequiredActionFunctionToolCall + ] + } + ) + end + def to_hash + end end end class TruncationStrategy < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The truncation strategy to use for the thread. The default is `auto`. If set to # `last_messages`, the thread will be truncated to the n most recent messages in # the thread. When set to `auto`, messages in the middle of the thread will be # dropped to fit the context length of the model, `max_prompt_tokens`. - sig { returns(OpenAI::Models::Beta::Threads::Run::TruncationStrategy::Type::TaggedSymbol) } + sig do + returns( + OpenAI::Beta::Threads::Run::TruncationStrategy::Type::TaggedSymbol + ) + end attr_accessor :type # The number of most recent messages from the thread when constructing the context @@ -605,10 +755,10 @@ module OpenAI # control the intial context window of the run. sig do params( - type: OpenAI::Models::Beta::Threads::Run::TruncationStrategy::Type::OrSymbol, + type: + OpenAI::Beta::Threads::Run::TruncationStrategy::Type::OrSymbol, last_messages: T.nilable(Integer) - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # The truncation strategy to use for the thread. The default is `auto`. If set to @@ -619,17 +769,20 @@ module OpenAI # The number of most recent messages from the thread when constructing the context # for the run. last_messages: nil - ); end + ) + end + sig do - override - .returns( - { - type: OpenAI::Models::Beta::Threads::Run::TruncationStrategy::Type::TaggedSymbol, - last_messages: T.nilable(Integer) - } - ) + override.returns( + { + type: + OpenAI::Beta::Threads::Run::TruncationStrategy::Type::TaggedSymbol, + last_messages: T.nilable(Integer) + } + ) + end + def to_hash end - def to_hash; end # The truncation strategy to use for the thread. The default is `auto`. If set to # `last_messages`, the thread will be truncated to the n most recent messages in @@ -639,19 +792,41 @@ module OpenAI extend OpenAI::Internal::Type::Enum TaggedSymbol = - T.type_alias { T.all(Symbol, OpenAI::Models::Beta::Threads::Run::TruncationStrategy::Type) } + T.type_alias do + T.all( + Symbol, + OpenAI::Beta::Threads::Run::TruncationStrategy::Type + ) + end OrSymbol = T.type_alias { T.any(Symbol, String) } - AUTO = T.let(:auto, OpenAI::Models::Beta::Threads::Run::TruncationStrategy::Type::TaggedSymbol) + AUTO = + T.let( + :auto, + OpenAI::Beta::Threads::Run::TruncationStrategy::Type::TaggedSymbol + ) LAST_MESSAGES = - T.let(:last_messages, OpenAI::Models::Beta::Threads::Run::TruncationStrategy::Type::TaggedSymbol) + T.let( + :last_messages, + OpenAI::Beta::Threads::Run::TruncationStrategy::Type::TaggedSymbol + ) - sig { override.returns(T::Array[OpenAI::Models::Beta::Threads::Run::TruncationStrategy::Type::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[ + OpenAI::Beta::Threads::Run::TruncationStrategy::Type::TaggedSymbol + ] + ) + end + def self.values + end end end class Usage < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Number of completion tokens used over the course of the run. sig { returns(Integer) } attr_accessor :completion_tokens @@ -680,11 +855,20 @@ module OpenAI prompt_tokens:, # Total number of tokens used (prompt + completion). total_tokens: - ); end + ) + end + sig do - override.returns({completion_tokens: Integer, prompt_tokens: Integer, total_tokens: Integer}) + override.returns( + { + completion_tokens: Integer, + prompt_tokens: Integer, + total_tokens: Integer + } + ) + end + def to_hash end - def to_hash; end end end end diff --git a/rbi/openai/models/beta/threads/run_cancel_params.rbi b/rbi/openai/models/beta/threads/run_cancel_params.rbi index 829a2ec4..1101750b 100644 --- a/rbi/openai/models/beta/threads/run_cancel_params.rbi +++ b/rbi/openai/models/beta/threads/run_cancel_params.rbi @@ -8,23 +8,28 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + sig { returns(String) } attr_accessor :thread_id sig do params( thread_id: String, - request_options: T.any( - OpenAI::RequestOptions, - OpenAI::Internal::AnyHash - ) - ) - .returns(T.attached_class) + request_options: OpenAI::RequestOptions::OrHash + ).returns(T.attached_class) + end + def self.new(thread_id:, request_options: {}) end - def self.new(thread_id:, request_options: {}); end - sig { override.returns({thread_id: String, request_options: OpenAI::RequestOptions}) } - def to_hash; end + sig do + override.returns( + { thread_id: String, request_options: OpenAI::RequestOptions } + ) + end + def to_hash + end end end end diff --git a/rbi/openai/models/beta/threads/run_create_params.rbi b/rbi/openai/models/beta/threads/run_create_params.rbi index 9bee75b3..85823188 100644 --- a/rbi/openai/models/beta/threads/run_create_params.rbi +++ b/rbi/openai/models/beta/threads/run_create_params.rbi @@ -8,6 +8,9 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The ID of the # [assistant](https://platform.openai.com/docs/api-reference/assistants) to use to # execute this run. @@ -21,10 +24,21 @@ module OpenAI # See the # [file search tool documentation](https://platform.openai.com/docs/assistants/tools/file-search#customizing-file-search-settings) # for more information. - sig { returns(T.nilable(T::Array[OpenAI::Models::Beta::Threads::Runs::RunStepInclude::OrSymbol])) } + sig do + returns( + T.nilable( + T::Array[OpenAI::Beta::Threads::Runs::RunStepInclude::OrSymbol] + ) + ) + end attr_reader :include - sig { params(include: T::Array[OpenAI::Models::Beta::Threads::Runs::RunStepInclude::OrSymbol]).void } + sig do + params( + include: + T::Array[OpenAI::Beta::Threads::Runs::RunStepInclude::OrSymbol] + ).void + end attr_writer :include # Appends additional instructions at the end of the instructions for the run. This @@ -34,7 +48,15 @@ module OpenAI attr_accessor :additional_instructions # Adds additional messages to the thread before creating the run. - sig { returns(T.nilable(T::Array[OpenAI::Models::Beta::Threads::RunCreateParams::AdditionalMessage])) } + sig do + returns( + T.nilable( + T::Array[ + OpenAI::Beta::Threads::RunCreateParams::AdditionalMessage + ] + ) + ) + end attr_accessor :additional_messages # Overrides the @@ -72,7 +94,7 @@ module OpenAI # be used to execute this run. If a value is provided here, it will override the # model associated with the assistant. If not, the model associated with the # assistant will be used. - sig { returns(T.nilable(T.any(String, OpenAI::Models::ChatModel::OrSymbol))) } + sig { returns(T.nilable(T.any(String, OpenAI::ChatModel::OrSymbol))) } attr_accessor :model # Whether to enable @@ -90,7 +112,7 @@ module OpenAI # [reasoning models](https://platform.openai.com/docs/guides/reasoning). Currently # supported values are `low`, `medium`, and `high`. Reducing reasoning effort can # result in faster responses and fewer tokens used on reasoning in a response. - sig { returns(T.nilable(OpenAI::Models::ReasoningEffort::OrSymbol)) } + sig { returns(T.nilable(OpenAI::ReasoningEffort::OrSymbol)) } attr_accessor :reasoning_effort # Specifies the format that the model must output. Compatible with @@ -118,9 +140,9 @@ module OpenAI T.nilable( T.any( Symbol, - OpenAI::Models::ResponseFormatText, - OpenAI::Models::ResponseFormatJSONObject, - OpenAI::Models::ResponseFormatJSONSchema + OpenAI::ResponseFormatText, + OpenAI::ResponseFormatJSONObject, + OpenAI::ResponseFormatJSONSchema ) ) ) @@ -144,8 +166,8 @@ module OpenAI returns( T.nilable( T.any( - OpenAI::Models::Beta::AssistantToolChoiceOption::Auto::OrSymbol, - OpenAI::Models::Beta::AssistantToolChoice + OpenAI::Beta::AssistantToolChoiceOption::Auto::OrSymbol, + OpenAI::Beta::AssistantToolChoice ) ) ) @@ -159,9 +181,9 @@ module OpenAI T.nilable( T::Array[ T.any( - OpenAI::Models::Beta::CodeInterpreterTool, - OpenAI::Models::Beta::FileSearchTool, - OpenAI::Models::Beta::FunctionTool + OpenAI::Beta::CodeInterpreterTool, + OpenAI::Beta::FileSearchTool, + OpenAI::Beta::FunctionTool ) ] ) @@ -179,68 +201,78 @@ module OpenAI # Controls for how a thread will be truncated prior to the run. Use this to # control the intial context window of the run. - sig { returns(T.nilable(OpenAI::Models::Beta::Threads::RunCreateParams::TruncationStrategy)) } + sig do + returns( + T.nilable( + OpenAI::Beta::Threads::RunCreateParams::TruncationStrategy + ) + ) + end attr_reader :truncation_strategy sig do params( - truncation_strategy: T.nilable( - T.any(OpenAI::Models::Beta::Threads::RunCreateParams::TruncationStrategy, OpenAI::Internal::AnyHash) - ) - ) - .void + truncation_strategy: + T.nilable( + OpenAI::Beta::Threads::RunCreateParams::TruncationStrategy::OrHash + ) + ).void end attr_writer :truncation_strategy sig do params( assistant_id: String, - include: T::Array[OpenAI::Models::Beta::Threads::Runs::RunStepInclude::OrSymbol], + include: + T::Array[OpenAI::Beta::Threads::Runs::RunStepInclude::OrSymbol], additional_instructions: T.nilable(String), - additional_messages: T.nilable( - T::Array[T.any(OpenAI::Models::Beta::Threads::RunCreateParams::AdditionalMessage, OpenAI::Internal::AnyHash)] - ), + additional_messages: + T.nilable( + T::Array[ + OpenAI::Beta::Threads::RunCreateParams::AdditionalMessage::OrHash + ] + ), instructions: T.nilable(String), max_completion_tokens: T.nilable(Integer), max_prompt_tokens: T.nilable(Integer), metadata: T.nilable(T::Hash[Symbol, String]), - model: T.nilable(T.any(String, OpenAI::Models::ChatModel::OrSymbol)), + model: T.nilable(T.any(String, OpenAI::ChatModel::OrSymbol)), parallel_tool_calls: T::Boolean, - reasoning_effort: T.nilable(OpenAI::Models::ReasoningEffort::OrSymbol), - response_format: T.nilable( - T.any( - Symbol, - OpenAI::Models::ResponseFormatText, - OpenAI::Internal::AnyHash, - OpenAI::Models::ResponseFormatJSONObject, - OpenAI::Models::ResponseFormatJSONSchema - ) - ), + reasoning_effort: T.nilable(OpenAI::ReasoningEffort::OrSymbol), + response_format: + T.nilable( + T.any( + Symbol, + OpenAI::ResponseFormatText::OrHash, + OpenAI::ResponseFormatJSONObject::OrHash, + OpenAI::ResponseFormatJSONSchema::OrHash + ) + ), temperature: T.nilable(Float), - tool_choice: T.nilable( - T.any( - OpenAI::Models::Beta::AssistantToolChoiceOption::Auto::OrSymbol, - OpenAI::Models::Beta::AssistantToolChoice, - OpenAI::Internal::AnyHash - ) - ), - tools: T.nilable( - T::Array[ + tool_choice: + T.nilable( T.any( - OpenAI::Models::Beta::CodeInterpreterTool, - OpenAI::Internal::AnyHash, - OpenAI::Models::Beta::FileSearchTool, - OpenAI::Models::Beta::FunctionTool + OpenAI::Beta::AssistantToolChoiceOption::Auto::OrSymbol, + OpenAI::Beta::AssistantToolChoice::OrHash ) - ] - ), + ), + tools: + T.nilable( + T::Array[ + T.any( + OpenAI::Beta::CodeInterpreterTool::OrHash, + OpenAI::Beta::FileSearchTool::OrHash, + OpenAI::Beta::FunctionTool::OrHash + ) + ] + ), top_p: T.nilable(Float), - truncation_strategy: T.nilable( - T.any(OpenAI::Models::Beta::Threads::RunCreateParams::TruncationStrategy, OpenAI::Internal::AnyHash) - ), - request_options: T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash) - ) - .returns(T.attached_class) + truncation_strategy: + T.nilable( + OpenAI::Beta::Threads::RunCreateParams::TruncationStrategy::OrHash + ), + request_options: OpenAI::RequestOptions::OrHash + ).returns(T.attached_class) end def self.new( # The ID of the @@ -346,55 +378,74 @@ module OpenAI # control the intial context window of the run. truncation_strategy: nil, request_options: {} - ); end + ) + end + sig do - override - .returns( - { - assistant_id: String, - include: T::Array[OpenAI::Models::Beta::Threads::Runs::RunStepInclude::OrSymbol], - additional_instructions: T.nilable(String), - additional_messages: T.nilable(T::Array[OpenAI::Models::Beta::Threads::RunCreateParams::AdditionalMessage]), - instructions: T.nilable(String), - max_completion_tokens: T.nilable(Integer), - max_prompt_tokens: T.nilable(Integer), - metadata: T.nilable(T::Hash[Symbol, String]), - model: T.nilable(T.any(String, OpenAI::Models::ChatModel::OrSymbol)), - parallel_tool_calls: T::Boolean, - reasoning_effort: T.nilable(OpenAI::Models::ReasoningEffort::OrSymbol), - response_format: T.nilable( + override.returns( + { + assistant_id: String, + include: + T::Array[ + OpenAI::Beta::Threads::Runs::RunStepInclude::OrSymbol + ], + additional_instructions: T.nilable(String), + additional_messages: + T.nilable( + T::Array[ + OpenAI::Beta::Threads::RunCreateParams::AdditionalMessage + ] + ), + instructions: T.nilable(String), + max_completion_tokens: T.nilable(Integer), + max_prompt_tokens: T.nilable(Integer), + metadata: T.nilable(T::Hash[Symbol, String]), + model: T.nilable(T.any(String, OpenAI::ChatModel::OrSymbol)), + parallel_tool_calls: T::Boolean, + reasoning_effort: T.nilable(OpenAI::ReasoningEffort::OrSymbol), + response_format: + T.nilable( T.any( Symbol, - OpenAI::Models::ResponseFormatText, - OpenAI::Models::ResponseFormatJSONObject, - OpenAI::Models::ResponseFormatJSONSchema + OpenAI::ResponseFormatText, + OpenAI::ResponseFormatJSONObject, + OpenAI::ResponseFormatJSONSchema ) ), - temperature: T.nilable(Float), - tool_choice: T.nilable( + temperature: T.nilable(Float), + tool_choice: + T.nilable( T.any( - OpenAI::Models::Beta::AssistantToolChoiceOption::Auto::OrSymbol, - OpenAI::Models::Beta::AssistantToolChoice + OpenAI::Beta::AssistantToolChoiceOption::Auto::OrSymbol, + OpenAI::Beta::AssistantToolChoice ) ), - tools: T.nilable( + tools: + T.nilable( T::Array[ T.any( - OpenAI::Models::Beta::CodeInterpreterTool, - OpenAI::Models::Beta::FileSearchTool, - OpenAI::Models::Beta::FunctionTool + OpenAI::Beta::CodeInterpreterTool, + OpenAI::Beta::FileSearchTool, + OpenAI::Beta::FunctionTool ) ] ), - top_p: T.nilable(Float), - truncation_strategy: T.nilable(OpenAI::Models::Beta::Threads::RunCreateParams::TruncationStrategy), - request_options: OpenAI::RequestOptions - } - ) + top_p: T.nilable(Float), + truncation_strategy: + T.nilable( + OpenAI::Beta::Threads::RunCreateParams::TruncationStrategy + ), + request_options: OpenAI::RequestOptions + } + ) + end + def to_hash end - def to_hash; end class AdditionalMessage < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The text contents of the message. sig do returns( @@ -402,9 +453,9 @@ module OpenAI String, T::Array[ T.any( - OpenAI::Models::Beta::Threads::ImageFileContentBlock, - OpenAI::Models::Beta::Threads::ImageURLContentBlock, - OpenAI::Models::Beta::Threads::TextContentBlockParam + OpenAI::Beta::Threads::ImageFileContentBlock, + OpenAI::Beta::Threads::ImageURLContentBlock, + OpenAI::Beta::Threads::TextContentBlockParam ) ] ) @@ -418,13 +469,21 @@ module OpenAI # most cases to represent user-generated messages. # - `assistant`: Indicates the message is generated by the assistant. Use this # value to insert messages from the assistant into the conversation. - sig { returns(OpenAI::Models::Beta::Threads::RunCreateParams::AdditionalMessage::Role::OrSymbol) } + sig do + returns( + OpenAI::Beta::Threads::RunCreateParams::AdditionalMessage::Role::OrSymbol + ) + end attr_accessor :role # A list of files attached to the message, and the tools they should be added to. sig do returns( - T.nilable(T::Array[OpenAI::Models::Beta::Threads::RunCreateParams::AdditionalMessage::Attachment]) + T.nilable( + T::Array[ + OpenAI::Beta::Threads::RunCreateParams::AdditionalMessage::Attachment + ] + ) ) end attr_accessor :attachments @@ -440,29 +499,27 @@ module OpenAI sig do params( - content: T.any( - String, - T::Array[ - T.any( - OpenAI::Models::Beta::Threads::ImageFileContentBlock, - OpenAI::Internal::AnyHash, - OpenAI::Models::Beta::Threads::ImageURLContentBlock, - OpenAI::Models::Beta::Threads::TextContentBlockParam - ) - ] - ), - role: OpenAI::Models::Beta::Threads::RunCreateParams::AdditionalMessage::Role::OrSymbol, - attachments: T.nilable( - T::Array[ - T.any( - OpenAI::Models::Beta::Threads::RunCreateParams::AdditionalMessage::Attachment, - OpenAI::Internal::AnyHash - ) - ] - ), + content: + T.any( + String, + T::Array[ + T.any( + OpenAI::Beta::Threads::ImageFileContentBlock::OrHash, + OpenAI::Beta::Threads::ImageURLContentBlock::OrHash, + OpenAI::Beta::Threads::TextContentBlockParam::OrHash + ) + ] + ), + role: + OpenAI::Beta::Threads::RunCreateParams::AdditionalMessage::Role::OrSymbol, + attachments: + T.nilable( + T::Array[ + OpenAI::Beta::Threads::RunCreateParams::AdditionalMessage::Attachment::OrHash + ] + ), metadata: T.nilable(T::Hash[Symbol, String]) - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # The text contents of the message. @@ -483,53 +540,71 @@ module OpenAI # Keys are strings with a maximum length of 64 characters. Values are strings with # a maximum length of 512 characters. metadata: nil - ); end + ) + end + sig do - override - .returns( - { - content: T.any( + override.returns( + { + content: + T.any( String, T::Array[ T.any( - OpenAI::Models::Beta::Threads::ImageFileContentBlock, - OpenAI::Models::Beta::Threads::ImageURLContentBlock, - OpenAI::Models::Beta::Threads::TextContentBlockParam + OpenAI::Beta::Threads::ImageFileContentBlock, + OpenAI::Beta::Threads::ImageURLContentBlock, + OpenAI::Beta::Threads::TextContentBlockParam ) ] ), - role: OpenAI::Models::Beta::Threads::RunCreateParams::AdditionalMessage::Role::OrSymbol, - attachments: T.nilable(T::Array[OpenAI::Models::Beta::Threads::RunCreateParams::AdditionalMessage::Attachment]), - metadata: T.nilable(T::Hash[Symbol, String]) - } - ) + role: + OpenAI::Beta::Threads::RunCreateParams::AdditionalMessage::Role::OrSymbol, + attachments: + T.nilable( + T::Array[ + OpenAI::Beta::Threads::RunCreateParams::AdditionalMessage::Attachment + ] + ), + metadata: T.nilable(T::Hash[Symbol, String]) + } + ) + end + def to_hash end - def to_hash; end # The text contents of the message. module Content extend OpenAI::Internal::Type::Union - sig do - override - .returns( - [ - String, - T::Array[ - T.any( - OpenAI::Models::Beta::Threads::ImageFileContentBlock, - OpenAI::Models::Beta::Threads::ImageURLContentBlock, - OpenAI::Models::Beta::Threads::TextContentBlockParam - ) - ] + Variants = + T.type_alias do + T.any( + String, + T::Array[ + T.any( + OpenAI::Beta::Threads::ImageFileContentBlock, + OpenAI::Beta::Threads::ImageURLContentBlock, + OpenAI::Beta::Threads::TextContentBlockParam + ) ] ) + end + + sig do + override.returns( + T::Array[ + OpenAI::Beta::Threads::RunCreateParams::AdditionalMessage::Content::Variants + ] + ) + end + def self.variants end - def self.variants; end MessageContentPartParamArray = T.let( - OpenAI::Internal::Type::ArrayOf[union: OpenAI::Models::Beta::Threads::MessageContentPartParam], + OpenAI::Internal::Type::ArrayOf[ + union: OpenAI::Beta::Threads::MessageContentPartParam + ], OpenAI::Internal::Type::Converter ) end @@ -544,22 +619,40 @@ module OpenAI extend OpenAI::Internal::Type::Enum TaggedSymbol = - T.type_alias { T.all(Symbol, OpenAI::Models::Beta::Threads::RunCreateParams::AdditionalMessage::Role) } + T.type_alias do + T.all( + Symbol, + OpenAI::Beta::Threads::RunCreateParams::AdditionalMessage::Role + ) + end OrSymbol = T.type_alias { T.any(Symbol, String) } USER = - T.let(:user, OpenAI::Models::Beta::Threads::RunCreateParams::AdditionalMessage::Role::TaggedSymbol) + T.let( + :user, + OpenAI::Beta::Threads::RunCreateParams::AdditionalMessage::Role::TaggedSymbol + ) ASSISTANT = - T.let(:assistant, OpenAI::Models::Beta::Threads::RunCreateParams::AdditionalMessage::Role::TaggedSymbol) + T.let( + :assistant, + OpenAI::Beta::Threads::RunCreateParams::AdditionalMessage::Role::TaggedSymbol + ) sig do - override - .returns(T::Array[OpenAI::Models::Beta::Threads::RunCreateParams::AdditionalMessage::Role::TaggedSymbol]) + override.returns( + T::Array[ + OpenAI::Beta::Threads::RunCreateParams::AdditionalMessage::Role::TaggedSymbol + ] + ) + end + def self.values end - def self.values; end end class Attachment < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The ID of the file to attach to the message. sig { returns(T.nilable(String)) } attr_reader :file_id @@ -573,8 +666,8 @@ module OpenAI T.nilable( T::Array[ T.any( - OpenAI::Models::Beta::CodeInterpreterTool, - OpenAI::Models::Beta::Threads::RunCreateParams::AdditionalMessage::Attachment::Tool::FileSearch + OpenAI::Beta::CodeInterpreterTool, + OpenAI::Beta::Threads::RunCreateParams::AdditionalMessage::Attachment::Tool::FileSearch ) ] ) @@ -584,57 +677,71 @@ module OpenAI sig do params( - tools: T::Array[ - T.any( - OpenAI::Models::Beta::CodeInterpreterTool, - OpenAI::Internal::AnyHash, - OpenAI::Models::Beta::Threads::RunCreateParams::AdditionalMessage::Attachment::Tool::FileSearch - ) - ] - ) - .void + tools: + T::Array[ + T.any( + OpenAI::Beta::CodeInterpreterTool::OrHash, + OpenAI::Beta::Threads::RunCreateParams::AdditionalMessage::Attachment::Tool::FileSearch::OrHash + ) + ] + ).void end attr_writer :tools sig do params( file_id: String, - tools: T::Array[ - T.any( - OpenAI::Models::Beta::CodeInterpreterTool, - OpenAI::Internal::AnyHash, - OpenAI::Models::Beta::Threads::RunCreateParams::AdditionalMessage::Attachment::Tool::FileSearch - ) - ] - ) - .returns(T.attached_class) + tools: + T::Array[ + T.any( + OpenAI::Beta::CodeInterpreterTool::OrHash, + OpenAI::Beta::Threads::RunCreateParams::AdditionalMessage::Attachment::Tool::FileSearch::OrHash + ) + ] + ).returns(T.attached_class) end def self.new( # The ID of the file to attach to the message. file_id: nil, # The tools to add this file to. tools: nil - ); end + ) + end + sig do - override - .returns( - { - file_id: String, - tools: T::Array[ + override.returns( + { + file_id: String, + tools: + T::Array[ T.any( - OpenAI::Models::Beta::CodeInterpreterTool, - OpenAI::Models::Beta::Threads::RunCreateParams::AdditionalMessage::Attachment::Tool::FileSearch + OpenAI::Beta::CodeInterpreterTool, + OpenAI::Beta::Threads::RunCreateParams::AdditionalMessage::Attachment::Tool::FileSearch ) ] - } - ) + } + ) + end + def to_hash end - def to_hash; end module Tool extend OpenAI::Internal::Type::Union + Variants = + T.type_alias do + T.any( + OpenAI::Beta::CodeInterpreterTool, + OpenAI::Beta::Threads::RunCreateParams::AdditionalMessage::Attachment::Tool::FileSearch + ) + end + class FileSearch < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any(T.self_type, OpenAI::Internal::AnyHash) + end + # The type of tool being defined: `file_search` sig { returns(Symbol) } attr_accessor :type @@ -643,18 +750,23 @@ module OpenAI def self.new( # The type of tool being defined: `file_search` type: :file_search - ); end - sig { override.returns({type: Symbol}) } - def to_hash; end + ) + end + + sig { override.returns({ type: Symbol }) } + def to_hash + end end sig do - override - .returns( - [OpenAI::Models::Beta::CodeInterpreterTool, OpenAI::Models::Beta::Threads::RunCreateParams::AdditionalMessage::Attachment::Tool::FileSearch] - ) + override.returns( + T::Array[ + OpenAI::Beta::Threads::RunCreateParams::AdditionalMessage::Attachment::Tool::Variants + ] + ) + end + def self.variants end - def self.variants; end end end end @@ -666,16 +778,33 @@ module OpenAI module Model extend OpenAI::Internal::Type::Union - sig { override.returns([String, OpenAI::Models::ChatModel::TaggedSymbol]) } - def self.variants; end + Variants = + T.type_alias { T.any(String, OpenAI::ChatModel::TaggedSymbol) } + + sig do + override.returns( + T::Array[ + OpenAI::Beta::Threads::RunCreateParams::Model::Variants + ] + ) + end + def self.variants + end end class TruncationStrategy < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The truncation strategy to use for the thread. The default is `auto`. If set to # `last_messages`, the thread will be truncated to the n most recent messages in # the thread. When set to `auto`, messages in the middle of the thread will be # dropped to fit the context length of the model, `max_prompt_tokens`. - sig { returns(OpenAI::Models::Beta::Threads::RunCreateParams::TruncationStrategy::Type::OrSymbol) } + sig do + returns( + OpenAI::Beta::Threads::RunCreateParams::TruncationStrategy::Type::OrSymbol + ) + end attr_accessor :type # The number of most recent messages from the thread when constructing the context @@ -687,10 +816,10 @@ module OpenAI # control the intial context window of the run. sig do params( - type: OpenAI::Models::Beta::Threads::RunCreateParams::TruncationStrategy::Type::OrSymbol, + type: + OpenAI::Beta::Threads::RunCreateParams::TruncationStrategy::Type::OrSymbol, last_messages: T.nilable(Integer) - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # The truncation strategy to use for the thread. The default is `auto`. If set to @@ -701,17 +830,20 @@ module OpenAI # The number of most recent messages from the thread when constructing the context # for the run. last_messages: nil - ); end + ) + end + sig do - override - .returns( - { - type: OpenAI::Models::Beta::Threads::RunCreateParams::TruncationStrategy::Type::OrSymbol, - last_messages: T.nilable(Integer) - } - ) + override.returns( + { + type: + OpenAI::Beta::Threads::RunCreateParams::TruncationStrategy::Type::OrSymbol, + last_messages: T.nilable(Integer) + } + ) + end + def to_hash end - def to_hash; end # The truncation strategy to use for the thread. The default is `auto`. If set to # `last_messages`, the thread will be truncated to the n most recent messages in @@ -721,22 +853,34 @@ module OpenAI extend OpenAI::Internal::Type::Enum TaggedSymbol = - T.type_alias { T.all(Symbol, OpenAI::Models::Beta::Threads::RunCreateParams::TruncationStrategy::Type) } + T.type_alias do + T.all( + Symbol, + OpenAI::Beta::Threads::RunCreateParams::TruncationStrategy::Type + ) + end OrSymbol = T.type_alias { T.any(Symbol, String) } AUTO = - T.let(:auto, OpenAI::Models::Beta::Threads::RunCreateParams::TruncationStrategy::Type::TaggedSymbol) + T.let( + :auto, + OpenAI::Beta::Threads::RunCreateParams::TruncationStrategy::Type::TaggedSymbol + ) LAST_MESSAGES = T.let( :last_messages, - OpenAI::Models::Beta::Threads::RunCreateParams::TruncationStrategy::Type::TaggedSymbol + OpenAI::Beta::Threads::RunCreateParams::TruncationStrategy::Type::TaggedSymbol ) sig do - override - .returns(T::Array[OpenAI::Models::Beta::Threads::RunCreateParams::TruncationStrategy::Type::TaggedSymbol]) + override.returns( + T::Array[ + OpenAI::Beta::Threads::RunCreateParams::TruncationStrategy::Type::TaggedSymbol + ] + ) + end + def self.values end - def self.values; end end end end diff --git a/rbi/openai/models/beta/threads/run_list_params.rbi b/rbi/openai/models/beta/threads/run_list_params.rbi index 24f6d425..a8904daf 100644 --- a/rbi/openai/models/beta/threads/run_list_params.rbi +++ b/rbi/openai/models/beta/threads/run_list_params.rbi @@ -8,6 +8,9 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # A cursor for use in pagination. `after` is an object ID that defines your place # in the list. For instance, if you make a list request and receive 100 objects, # ending with obj_foo, your subsequent call can include after=obj_foo in order to @@ -38,10 +41,18 @@ module OpenAI # Sort order by the `created_at` timestamp of the objects. `asc` for ascending # order and `desc` for descending order. - sig { returns(T.nilable(OpenAI::Models::Beta::Threads::RunListParams::Order::OrSymbol)) } + sig do + returns( + T.nilable(OpenAI::Beta::Threads::RunListParams::Order::OrSymbol) + ) + end attr_reader :order - sig { params(order: OpenAI::Models::Beta::Threads::RunListParams::Order::OrSymbol).void } + sig do + params( + order: OpenAI::Beta::Threads::RunListParams::Order::OrSymbol + ).void + end attr_writer :order sig do @@ -49,10 +60,9 @@ module OpenAI after: String, before: String, limit: Integer, - order: OpenAI::Models::Beta::Threads::RunListParams::Order::OrSymbol, - request_options: T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash) - ) - .returns(T.attached_class) + order: OpenAI::Beta::Threads::RunListParams::Order::OrSymbol, + request_options: OpenAI::RequestOptions::OrHash + ).returns(T.attached_class) end def self.new( # A cursor for use in pagination. `after` is an object ID that defines your place @@ -72,34 +82,54 @@ module OpenAI # order and `desc` for descending order. order: nil, request_options: {} - ); end + ) + end + sig do - override - .returns( - { - after: String, - before: String, - limit: Integer, - order: OpenAI::Models::Beta::Threads::RunListParams::Order::OrSymbol, - request_options: OpenAI::RequestOptions - } - ) + override.returns( + { + after: String, + before: String, + limit: Integer, + order: OpenAI::Beta::Threads::RunListParams::Order::OrSymbol, + request_options: OpenAI::RequestOptions + } + ) + end + def to_hash end - def to_hash; end # Sort order by the `created_at` timestamp of the objects. `asc` for ascending # order and `desc` for descending order. module Order extend OpenAI::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::Beta::Threads::RunListParams::Order) } + TaggedSymbol = + T.type_alias do + T.all(Symbol, OpenAI::Beta::Threads::RunListParams::Order) + end OrSymbol = T.type_alias { T.any(Symbol, String) } - ASC = T.let(:asc, OpenAI::Models::Beta::Threads::RunListParams::Order::TaggedSymbol) - DESC = T.let(:desc, OpenAI::Models::Beta::Threads::RunListParams::Order::TaggedSymbol) + ASC = + T.let( + :asc, + OpenAI::Beta::Threads::RunListParams::Order::TaggedSymbol + ) + DESC = + T.let( + :desc, + OpenAI::Beta::Threads::RunListParams::Order::TaggedSymbol + ) - sig { override.returns(T::Array[OpenAI::Models::Beta::Threads::RunListParams::Order::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[ + OpenAI::Beta::Threads::RunListParams::Order::TaggedSymbol + ] + ) + end + def self.values + end end end end diff --git a/rbi/openai/models/beta/threads/run_retrieve_params.rbi b/rbi/openai/models/beta/threads/run_retrieve_params.rbi index aa6cb4b9..de4d56da 100644 --- a/rbi/openai/models/beta/threads/run_retrieve_params.rbi +++ b/rbi/openai/models/beta/threads/run_retrieve_params.rbi @@ -8,23 +8,28 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + sig { returns(String) } attr_accessor :thread_id sig do params( thread_id: String, - request_options: T.any( - OpenAI::RequestOptions, - OpenAI::Internal::AnyHash - ) - ) - .returns(T.attached_class) + request_options: OpenAI::RequestOptions::OrHash + ).returns(T.attached_class) + end + def self.new(thread_id:, request_options: {}) end - def self.new(thread_id:, request_options: {}); end - sig { override.returns({thread_id: String, request_options: OpenAI::RequestOptions}) } - def to_hash; end + sig do + override.returns( + { thread_id: String, request_options: OpenAI::RequestOptions } + ) + end + def to_hash + end end end end diff --git a/rbi/openai/models/beta/threads/run_status.rbi b/rbi/openai/models/beta/threads/run_status.rbi index 7eb4d991..ed3ecdb2 100644 --- a/rbi/openai/models/beta/threads/run_status.rbi +++ b/rbi/openai/models/beta/threads/run_status.rbi @@ -10,21 +10,39 @@ module OpenAI module RunStatus extend OpenAI::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::Beta::Threads::RunStatus) } + TaggedSymbol = + T.type_alias { T.all(Symbol, OpenAI::Beta::Threads::RunStatus) } OrSymbol = T.type_alias { T.any(Symbol, String) } - QUEUED = T.let(:queued, OpenAI::Models::Beta::Threads::RunStatus::TaggedSymbol) - IN_PROGRESS = T.let(:in_progress, OpenAI::Models::Beta::Threads::RunStatus::TaggedSymbol) - REQUIRES_ACTION = T.let(:requires_action, OpenAI::Models::Beta::Threads::RunStatus::TaggedSymbol) - CANCELLING = T.let(:cancelling, OpenAI::Models::Beta::Threads::RunStatus::TaggedSymbol) - CANCELLED = T.let(:cancelled, OpenAI::Models::Beta::Threads::RunStatus::TaggedSymbol) - FAILED = T.let(:failed, OpenAI::Models::Beta::Threads::RunStatus::TaggedSymbol) - COMPLETED = T.let(:completed, OpenAI::Models::Beta::Threads::RunStatus::TaggedSymbol) - INCOMPLETE = T.let(:incomplete, OpenAI::Models::Beta::Threads::RunStatus::TaggedSymbol) - EXPIRED = T.let(:expired, OpenAI::Models::Beta::Threads::RunStatus::TaggedSymbol) + QUEUED = + T.let(:queued, OpenAI::Beta::Threads::RunStatus::TaggedSymbol) + IN_PROGRESS = + T.let(:in_progress, OpenAI::Beta::Threads::RunStatus::TaggedSymbol) + REQUIRES_ACTION = + T.let( + :requires_action, + OpenAI::Beta::Threads::RunStatus::TaggedSymbol + ) + CANCELLING = + T.let(:cancelling, OpenAI::Beta::Threads::RunStatus::TaggedSymbol) + CANCELLED = + T.let(:cancelled, OpenAI::Beta::Threads::RunStatus::TaggedSymbol) + FAILED = + T.let(:failed, OpenAI::Beta::Threads::RunStatus::TaggedSymbol) + COMPLETED = + T.let(:completed, OpenAI::Beta::Threads::RunStatus::TaggedSymbol) + INCOMPLETE = + T.let(:incomplete, OpenAI::Beta::Threads::RunStatus::TaggedSymbol) + EXPIRED = + T.let(:expired, OpenAI::Beta::Threads::RunStatus::TaggedSymbol) - sig { override.returns(T::Array[OpenAI::Models::Beta::Threads::RunStatus::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[OpenAI::Beta::Threads::RunStatus::TaggedSymbol] + ) + end + def self.values + end end end end diff --git a/rbi/openai/models/beta/threads/run_submit_tool_outputs_params.rbi b/rbi/openai/models/beta/threads/run_submit_tool_outputs_params.rbi index af244e16..9be1a4b3 100644 --- a/rbi/openai/models/beta/threads/run_submit_tool_outputs_params.rbi +++ b/rbi/openai/models/beta/threads/run_submit_tool_outputs_params.rbi @@ -8,40 +8,59 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + sig { returns(String) } attr_accessor :thread_id # A list of tools for which the outputs are being submitted. - sig { returns(T::Array[OpenAI::Models::Beta::Threads::RunSubmitToolOutputsParams::ToolOutput]) } + sig do + returns( + T::Array[ + OpenAI::Beta::Threads::RunSubmitToolOutputsParams::ToolOutput + ] + ) + end attr_accessor :tool_outputs sig do params( thread_id: String, - tool_outputs: T::Array[T.any(OpenAI::Models::Beta::Threads::RunSubmitToolOutputsParams::ToolOutput, OpenAI::Internal::AnyHash)], - request_options: T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash) - ) - .returns(T.attached_class) + tool_outputs: + T::Array[ + OpenAI::Beta::Threads::RunSubmitToolOutputsParams::ToolOutput::OrHash + ], + request_options: OpenAI::RequestOptions::OrHash + ).returns(T.attached_class) end def self.new( thread_id:, # A list of tools for which the outputs are being submitted. tool_outputs:, request_options: {} - ); end + ) + end + sig do - override - .returns( - { - thread_id: String, - tool_outputs: T::Array[OpenAI::Models::Beta::Threads::RunSubmitToolOutputsParams::ToolOutput], - request_options: OpenAI::RequestOptions - } - ) + override.returns( + { + thread_id: String, + tool_outputs: + T::Array[ + OpenAI::Beta::Threads::RunSubmitToolOutputsParams::ToolOutput + ], + request_options: OpenAI::RequestOptions + } + ) + end + def to_hash end - def to_hash; end class ToolOutput < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The output of the tool call to be submitted to continue the run. sig { returns(T.nilable(String)) } attr_reader :output @@ -57,16 +76,23 @@ module OpenAI sig { params(tool_call_id: String).void } attr_writer :tool_call_id - sig { params(output: String, tool_call_id: String).returns(T.attached_class) } + sig do + params(output: String, tool_call_id: String).returns( + T.attached_class + ) + end def self.new( # The output of the tool call to be submitted to continue the run. output: nil, # The ID of the tool call in the `required_action` object within the run object # the output is being submitted for. tool_call_id: nil - ); end - sig { override.returns({output: String, tool_call_id: String}) } - def to_hash; end + ) + end + + sig { override.returns({ output: String, tool_call_id: String }) } + def to_hash + end end end end diff --git a/rbi/openai/models/beta/threads/run_update_params.rbi b/rbi/openai/models/beta/threads/run_update_params.rbi index 175d4516..c99a7cf2 100644 --- a/rbi/openai/models/beta/threads/run_update_params.rbi +++ b/rbi/openai/models/beta/threads/run_update_params.rbi @@ -8,6 +8,9 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + sig { returns(String) } attr_accessor :thread_id @@ -24,9 +27,8 @@ module OpenAI params( thread_id: String, metadata: T.nilable(T::Hash[Symbol, String]), - request_options: T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash) - ) - .returns(T.attached_class) + request_options: OpenAI::RequestOptions::OrHash + ).returns(T.attached_class) end def self.new( thread_id:, @@ -38,18 +40,20 @@ module OpenAI # a maximum length of 512 characters. metadata: nil, request_options: {} - ); end + ) + end + sig do - override - .returns( - { - thread_id: String, - metadata: T.nilable(T::Hash[Symbol, String]), - request_options: OpenAI::RequestOptions - } - ) + override.returns( + { + thread_id: String, + metadata: T.nilable(T::Hash[Symbol, String]), + request_options: OpenAI::RequestOptions + } + ) + end + def to_hash end - def to_hash; end end end end diff --git a/rbi/openai/models/beta/threads/runs/code_interpreter_logs.rbi b/rbi/openai/models/beta/threads/runs/code_interpreter_logs.rbi index f0b834d2..a48e0434 100644 --- a/rbi/openai/models/beta/threads/runs/code_interpreter_logs.rbi +++ b/rbi/openai/models/beta/threads/runs/code_interpreter_logs.rbi @@ -6,6 +6,9 @@ module OpenAI module Threads module Runs class CodeInterpreterLogs < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The index of the output in the outputs array. sig { returns(Integer) } attr_accessor :index @@ -22,7 +25,11 @@ module OpenAI attr_writer :logs # Text output from the Code Interpreter tool call as part of a run step. - sig { params(index: Integer, logs: String, type: Symbol).returns(T.attached_class) } + sig do + params(index: Integer, logs: String, type: Symbol).returns( + T.attached_class + ) + end def self.new( # The index of the output in the outputs array. index:, @@ -30,9 +37,14 @@ module OpenAI logs: nil, # Always `logs`. type: :logs - ); end - sig { override.returns({index: Integer, type: Symbol, logs: String}) } - def to_hash; end + ) + end + + sig do + override.returns({ index: Integer, type: Symbol, logs: String }) + end + def to_hash + end end end end diff --git a/rbi/openai/models/beta/threads/runs/code_interpreter_output_image.rbi b/rbi/openai/models/beta/threads/runs/code_interpreter_output_image.rbi index 9cadda46..67c7e444 100644 --- a/rbi/openai/models/beta/threads/runs/code_interpreter_output_image.rbi +++ b/rbi/openai/models/beta/threads/runs/code_interpreter_output_image.rbi @@ -6,6 +6,9 @@ module OpenAI module Threads module Runs class CodeInterpreterOutputImage < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The index of the output in the outputs array. sig { returns(Integer) } attr_accessor :index @@ -14,24 +17,30 @@ module OpenAI sig { returns(Symbol) } attr_accessor :type - sig { returns(T.nilable(OpenAI::Models::Beta::Threads::Runs::CodeInterpreterOutputImage::Image)) } + sig do + returns( + T.nilable( + OpenAI::Beta::Threads::Runs::CodeInterpreterOutputImage::Image + ) + ) + end attr_reader :image sig do params( - image: T.any(OpenAI::Models::Beta::Threads::Runs::CodeInterpreterOutputImage::Image, OpenAI::Internal::AnyHash) - ) - .void + image: + OpenAI::Beta::Threads::Runs::CodeInterpreterOutputImage::Image::OrHash + ).void end attr_writer :image sig do params( index: Integer, - image: T.any(OpenAI::Models::Beta::Threads::Runs::CodeInterpreterOutputImage::Image, OpenAI::Internal::AnyHash), + image: + OpenAI::Beta::Threads::Runs::CodeInterpreterOutputImage::Image::OrHash, type: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # The index of the output in the outputs array. @@ -39,16 +48,26 @@ module OpenAI image: nil, # Always `image`. type: :image - ); end + ) + end + sig do - override - .returns( - {index: Integer, type: Symbol, image: OpenAI::Models::Beta::Threads::Runs::CodeInterpreterOutputImage::Image} - ) + override.returns( + { + index: Integer, + type: Symbol, + image: + OpenAI::Beta::Threads::Runs::CodeInterpreterOutputImage::Image + } + ) + end + def to_hash end - def to_hash; end class Image < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The [file](https://platform.openai.com/docs/api-reference/files) ID of the # image. sig { returns(T.nilable(String)) } @@ -62,9 +81,12 @@ module OpenAI # The [file](https://platform.openai.com/docs/api-reference/files) ID of the # image. file_id: nil - ); end - sig { override.returns({file_id: String}) } - def to_hash; end + ) + end + + sig { override.returns({ file_id: String }) } + def to_hash + end end end end diff --git a/rbi/openai/models/beta/threads/runs/code_interpreter_tool_call.rbi b/rbi/openai/models/beta/threads/runs/code_interpreter_tool_call.rbi index 7ea07c11..a1829caf 100644 --- a/rbi/openai/models/beta/threads/runs/code_interpreter_tool_call.rbi +++ b/rbi/openai/models/beta/threads/runs/code_interpreter_tool_call.rbi @@ -6,22 +6,26 @@ module OpenAI module Threads module Runs class CodeInterpreterToolCall < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The ID of the tool call. sig { returns(String) } attr_accessor :id # The Code Interpreter tool call definition. - sig { returns(OpenAI::Models::Beta::Threads::Runs::CodeInterpreterToolCall::CodeInterpreter) } + sig do + returns( + OpenAI::Beta::Threads::Runs::CodeInterpreterToolCall::CodeInterpreter + ) + end attr_reader :code_interpreter sig do params( - code_interpreter: T.any( - OpenAI::Models::Beta::Threads::Runs::CodeInterpreterToolCall::CodeInterpreter, - OpenAI::Internal::AnyHash - ) - ) - .void + code_interpreter: + OpenAI::Beta::Threads::Runs::CodeInterpreterToolCall::CodeInterpreter::OrHash + ).void end attr_writer :code_interpreter @@ -34,13 +38,10 @@ module OpenAI sig do params( id: String, - code_interpreter: T.any( - OpenAI::Models::Beta::Threads::Runs::CodeInterpreterToolCall::CodeInterpreter, - OpenAI::Internal::AnyHash - ), + code_interpreter: + OpenAI::Beta::Threads::Runs::CodeInterpreterToolCall::CodeInterpreter::OrHash, type: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # The ID of the tool call. @@ -50,20 +51,26 @@ module OpenAI # The type of tool call. This is always going to be `code_interpreter` for this # type of tool call. type: :code_interpreter - ); end + ) + end + sig do - override - .returns( - { - id: String, - code_interpreter: OpenAI::Models::Beta::Threads::Runs::CodeInterpreterToolCall::CodeInterpreter, - type: Symbol - } - ) + override.returns( + { + id: String, + code_interpreter: + OpenAI::Beta::Threads::Runs::CodeInterpreterToolCall::CodeInterpreter, + type: Symbol + } + ) + end + def to_hash end - def to_hash; end class CodeInterpreter < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The input to the Code Interpreter tool call. sig { returns(String) } attr_accessor :input @@ -75,8 +82,8 @@ module OpenAI returns( T::Array[ T.any( - OpenAI::Models::Beta::Threads::Runs::CodeInterpreterToolCall::CodeInterpreter::Output::Logs, - OpenAI::Models::Beta::Threads::Runs::CodeInterpreterToolCall::CodeInterpreter::Output::Image + OpenAI::Beta::Threads::Runs::CodeInterpreterToolCall::CodeInterpreter::Output::Logs, + OpenAI::Beta::Threads::Runs::CodeInterpreterToolCall::CodeInterpreter::Output::Image ) ] ) @@ -87,15 +94,14 @@ module OpenAI sig do params( input: String, - outputs: T::Array[ - T.any( - OpenAI::Models::Beta::Threads::Runs::CodeInterpreterToolCall::CodeInterpreter::Output::Logs, - OpenAI::Internal::AnyHash, - OpenAI::Models::Beta::Threads::Runs::CodeInterpreterToolCall::CodeInterpreter::Output::Image - ) - ] - ) - .returns(T.attached_class) + outputs: + T::Array[ + T.any( + OpenAI::Beta::Threads::Runs::CodeInterpreterToolCall::CodeInterpreter::Output::Logs::OrHash, + OpenAI::Beta::Threads::Runs::CodeInterpreterToolCall::CodeInterpreter::Output::Image::OrHash + ) + ] + ).returns(T.attached_class) end def self.new( # The input to the Code Interpreter tool call. @@ -104,28 +110,44 @@ module OpenAI # or more items, including text (`logs`) or images (`image`). Each of these are # represented by a different object type. outputs: - ); end + ) + end + sig do - override - .returns( - { - input: String, - outputs: T::Array[ + override.returns( + { + input: String, + outputs: + T::Array[ T.any( - OpenAI::Models::Beta::Threads::Runs::CodeInterpreterToolCall::CodeInterpreter::Output::Logs, - OpenAI::Models::Beta::Threads::Runs::CodeInterpreterToolCall::CodeInterpreter::Output::Image + OpenAI::Beta::Threads::Runs::CodeInterpreterToolCall::CodeInterpreter::Output::Logs, + OpenAI::Beta::Threads::Runs::CodeInterpreterToolCall::CodeInterpreter::Output::Image ) ] - } - ) + } + ) + end + def to_hash end - def to_hash; end # Text output from the Code Interpreter tool call as part of a run step. module Output extend OpenAI::Internal::Type::Union + Variants = + T.type_alias do + T.any( + OpenAI::Beta::Threads::Runs::CodeInterpreterToolCall::CodeInterpreter::Output::Logs, + OpenAI::Beta::Threads::Runs::CodeInterpreterToolCall::CodeInterpreter::Output::Image + ) + end + class Logs < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any(T.self_type, OpenAI::Internal::AnyHash) + end + # The text output from the Code Interpreter tool call. sig { returns(String) } attr_accessor :logs @@ -135,33 +157,40 @@ module OpenAI attr_accessor :type # Text output from the Code Interpreter tool call as part of a run step. - sig { params(logs: String, type: Symbol).returns(T.attached_class) } + sig do + params(logs: String, type: Symbol).returns(T.attached_class) + end def self.new( # The text output from the Code Interpreter tool call. logs:, # Always `logs`. type: :logs - ); end - sig { override.returns({logs: String, type: Symbol}) } - def to_hash; end + ) + end + + sig { override.returns({ logs: String, type: Symbol }) } + def to_hash + end end class Image < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any(T.self_type, OpenAI::Internal::AnyHash) + end + sig do returns( - OpenAI::Models::Beta::Threads::Runs::CodeInterpreterToolCall::CodeInterpreter::Output::Image::Image + OpenAI::Beta::Threads::Runs::CodeInterpreterToolCall::CodeInterpreter::Output::Image::Image ) end attr_reader :image sig do params( - image: T.any( - OpenAI::Models::Beta::Threads::Runs::CodeInterpreterToolCall::CodeInterpreter::Output::Image::Image, - OpenAI::Internal::AnyHash - ) - ) - .void + image: + OpenAI::Beta::Threads::Runs::CodeInterpreterToolCall::CodeInterpreter::Output::Image::Image::OrHash + ).void end attr_writer :image @@ -171,31 +200,36 @@ module OpenAI sig do params( - image: T.any( - OpenAI::Models::Beta::Threads::Runs::CodeInterpreterToolCall::CodeInterpreter::Output::Image::Image, - OpenAI::Internal::AnyHash - ), + image: + OpenAI::Beta::Threads::Runs::CodeInterpreterToolCall::CodeInterpreter::Output::Image::Image::OrHash, type: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( image:, # Always `image`. type: :image - ); end + ) + end + sig do - override - .returns( - { - image: OpenAI::Models::Beta::Threads::Runs::CodeInterpreterToolCall::CodeInterpreter::Output::Image::Image, - type: Symbol - } - ) + override.returns( + { + image: + OpenAI::Beta::Threads::Runs::CodeInterpreterToolCall::CodeInterpreter::Output::Image::Image, + type: Symbol + } + ) + end + def to_hash end - def to_hash; end class Image < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any(T.self_type, OpenAI::Internal::AnyHash) + end + # The [file](https://platform.openai.com/docs/api-reference/files) ID of the # image. sig { returns(String) } @@ -206,19 +240,24 @@ module OpenAI # The [file](https://platform.openai.com/docs/api-reference/files) ID of the # image. file_id: - ); end - sig { override.returns({file_id: String}) } - def to_hash; end + ) + end + + sig { override.returns({ file_id: String }) } + def to_hash + end end end sig do - override - .returns( - [OpenAI::Models::Beta::Threads::Runs::CodeInterpreterToolCall::CodeInterpreter::Output::Logs, OpenAI::Models::Beta::Threads::Runs::CodeInterpreterToolCall::CodeInterpreter::Output::Image] - ) + override.returns( + T::Array[ + OpenAI::Beta::Threads::Runs::CodeInterpreterToolCall::CodeInterpreter::Output::Variants + ] + ) + end + def self.variants end - def self.variants; end end end end diff --git a/rbi/openai/models/beta/threads/runs/code_interpreter_tool_call_delta.rbi b/rbi/openai/models/beta/threads/runs/code_interpreter_tool_call_delta.rbi index b5314dd2..b1bb2cf1 100644 --- a/rbi/openai/models/beta/threads/runs/code_interpreter_tool_call_delta.rbi +++ b/rbi/openai/models/beta/threads/runs/code_interpreter_tool_call_delta.rbi @@ -6,6 +6,9 @@ module OpenAI module Threads module Runs class CodeInterpreterToolCallDelta < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The index of the tool call in the tool calls array. sig { returns(Integer) } attr_accessor :index @@ -23,17 +26,20 @@ module OpenAI attr_writer :id # The Code Interpreter tool call definition. - sig { returns(T.nilable(OpenAI::Models::Beta::Threads::Runs::CodeInterpreterToolCallDelta::CodeInterpreter)) } + sig do + returns( + T.nilable( + OpenAI::Beta::Threads::Runs::CodeInterpreterToolCallDelta::CodeInterpreter + ) + ) + end attr_reader :code_interpreter sig do params( - code_interpreter: T.any( - OpenAI::Models::Beta::Threads::Runs::CodeInterpreterToolCallDelta::CodeInterpreter, - OpenAI::Internal::AnyHash - ) - ) - .void + code_interpreter: + OpenAI::Beta::Threads::Runs::CodeInterpreterToolCallDelta::CodeInterpreter::OrHash + ).void end attr_writer :code_interpreter @@ -42,13 +48,10 @@ module OpenAI params( index: Integer, id: String, - code_interpreter: T.any( - OpenAI::Models::Beta::Threads::Runs::CodeInterpreterToolCallDelta::CodeInterpreter, - OpenAI::Internal::AnyHash - ), + code_interpreter: + OpenAI::Beta::Threads::Runs::CodeInterpreterToolCallDelta::CodeInterpreter::OrHash, type: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # The index of the tool call in the tool calls array. @@ -60,21 +63,27 @@ module OpenAI # The type of tool call. This is always going to be `code_interpreter` for this # type of tool call. type: :code_interpreter - ); end + ) + end + sig do - override - .returns( - { - index: Integer, - type: Symbol, - id: String, - code_interpreter: OpenAI::Models::Beta::Threads::Runs::CodeInterpreterToolCallDelta::CodeInterpreter - } - ) + override.returns( + { + index: Integer, + type: Symbol, + id: String, + code_interpreter: + OpenAI::Beta::Threads::Runs::CodeInterpreterToolCallDelta::CodeInterpreter + } + ) + end + def to_hash end - def to_hash; end class CodeInterpreter < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The input to the Code Interpreter tool call. sig { returns(T.nilable(String)) } attr_reader :input @@ -90,8 +99,8 @@ module OpenAI T.nilable( T::Array[ T.any( - OpenAI::Models::Beta::Threads::Runs::CodeInterpreterLogs, - OpenAI::Models::Beta::Threads::Runs::CodeInterpreterOutputImage + OpenAI::Beta::Threads::Runs::CodeInterpreterLogs, + OpenAI::Beta::Threads::Runs::CodeInterpreterOutputImage ) ] ) @@ -101,15 +110,14 @@ module OpenAI sig do params( - outputs: T::Array[ - T.any( - OpenAI::Models::Beta::Threads::Runs::CodeInterpreterLogs, - OpenAI::Internal::AnyHash, - OpenAI::Models::Beta::Threads::Runs::CodeInterpreterOutputImage - ) - ] - ) - .void + outputs: + T::Array[ + T.any( + OpenAI::Beta::Threads::Runs::CodeInterpreterLogs::OrHash, + OpenAI::Beta::Threads::Runs::CodeInterpreterOutputImage::OrHash + ) + ] + ).void end attr_writer :outputs @@ -117,15 +125,14 @@ module OpenAI sig do params( input: String, - outputs: T::Array[ - T.any( - OpenAI::Models::Beta::Threads::Runs::CodeInterpreterLogs, - OpenAI::Internal::AnyHash, - OpenAI::Models::Beta::Threads::Runs::CodeInterpreterOutputImage - ) - ] - ) - .returns(T.attached_class) + outputs: + T::Array[ + T.any( + OpenAI::Beta::Threads::Runs::CodeInterpreterLogs::OrHash, + OpenAI::Beta::Threads::Runs::CodeInterpreterOutputImage::OrHash + ) + ] + ).returns(T.attached_class) end def self.new( # The input to the Code Interpreter tool call. @@ -134,34 +141,47 @@ module OpenAI # or more items, including text (`logs`) or images (`image`). Each of these are # represented by a different object type. outputs: nil - ); end + ) + end + sig do - override - .returns( - { - input: String, - outputs: T::Array[ + override.returns( + { + input: String, + outputs: + T::Array[ T.any( - OpenAI::Models::Beta::Threads::Runs::CodeInterpreterLogs, - OpenAI::Models::Beta::Threads::Runs::CodeInterpreterOutputImage + OpenAI::Beta::Threads::Runs::CodeInterpreterLogs, + OpenAI::Beta::Threads::Runs::CodeInterpreterOutputImage ) ] - } - ) + } + ) + end + def to_hash end - def to_hash; end # Text output from the Code Interpreter tool call as part of a run step. module Output extend OpenAI::Internal::Type::Union - sig do - override - .returns( - [OpenAI::Models::Beta::Threads::Runs::CodeInterpreterLogs, OpenAI::Models::Beta::Threads::Runs::CodeInterpreterOutputImage] + Variants = + T.type_alias do + T.any( + OpenAI::Beta::Threads::Runs::CodeInterpreterLogs, + OpenAI::Beta::Threads::Runs::CodeInterpreterOutputImage ) + end + + sig do + override.returns( + T::Array[ + OpenAI::Beta::Threads::Runs::CodeInterpreterToolCallDelta::CodeInterpreter::Output::Variants + ] + ) + end + def self.variants end - def self.variants; end end end end diff --git a/rbi/openai/models/beta/threads/runs/file_search_tool_call.rbi b/rbi/openai/models/beta/threads/runs/file_search_tool_call.rbi index 5fab3990..6ca0cd80 100644 --- a/rbi/openai/models/beta/threads/runs/file_search_tool_call.rbi +++ b/rbi/openai/models/beta/threads/runs/file_search_tool_call.rbi @@ -6,19 +6,26 @@ module OpenAI module Threads module Runs class FileSearchToolCall < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The ID of the tool call object. sig { returns(String) } attr_accessor :id # For now, this is always going to be an empty object. - sig { returns(OpenAI::Models::Beta::Threads::Runs::FileSearchToolCall::FileSearch) } + sig do + returns( + OpenAI::Beta::Threads::Runs::FileSearchToolCall::FileSearch + ) + end attr_reader :file_search sig do params( - file_search: T.any(OpenAI::Models::Beta::Threads::Runs::FileSearchToolCall::FileSearch, OpenAI::Internal::AnyHash) - ) - .void + file_search: + OpenAI::Beta::Threads::Runs::FileSearchToolCall::FileSearch::OrHash + ).void end attr_writer :file_search @@ -30,10 +37,10 @@ module OpenAI sig do params( id: String, - file_search: T.any(OpenAI::Models::Beta::Threads::Runs::FileSearchToolCall::FileSearch, OpenAI::Internal::AnyHash), + file_search: + OpenAI::Beta::Threads::Runs::FileSearchToolCall::FileSearch::OrHash, type: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # The ID of the tool call object. @@ -43,87 +50,109 @@ module OpenAI # The type of tool call. This is always going to be `file_search` for this type of # tool call. type: :file_search - ); end + ) + end + sig do - override - .returns( - {id: String, file_search: OpenAI::Models::Beta::Threads::Runs::FileSearchToolCall::FileSearch, type: Symbol} - ) + override.returns( + { + id: String, + file_search: + OpenAI::Beta::Threads::Runs::FileSearchToolCall::FileSearch, + type: Symbol + } + ) + end + def to_hash end - def to_hash; end class FileSearch < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The ranking options for the file search. - sig { returns(T.nilable(OpenAI::Models::Beta::Threads::Runs::FileSearchToolCall::FileSearch::RankingOptions)) } + sig do + returns( + T.nilable( + OpenAI::Beta::Threads::Runs::FileSearchToolCall::FileSearch::RankingOptions + ) + ) + end attr_reader :ranking_options sig do params( - ranking_options: T.any( - OpenAI::Models::Beta::Threads::Runs::FileSearchToolCall::FileSearch::RankingOptions, - OpenAI::Internal::AnyHash - ) - ) - .void + ranking_options: + OpenAI::Beta::Threads::Runs::FileSearchToolCall::FileSearch::RankingOptions::OrHash + ).void end attr_writer :ranking_options # The results of the file search. - sig { returns(T.nilable(T::Array[OpenAI::Models::Beta::Threads::Runs::FileSearchToolCall::FileSearch::Result])) } + sig do + returns( + T.nilable( + T::Array[ + OpenAI::Beta::Threads::Runs::FileSearchToolCall::FileSearch::Result + ] + ) + ) + end attr_reader :results sig do params( - results: T::Array[ - T.any( - OpenAI::Models::Beta::Threads::Runs::FileSearchToolCall::FileSearch::Result, - OpenAI::Internal::AnyHash - ) - ] - ) - .void + results: + T::Array[ + OpenAI::Beta::Threads::Runs::FileSearchToolCall::FileSearch::Result::OrHash + ] + ).void end attr_writer :results # For now, this is always going to be an empty object. sig do params( - ranking_options: T.any( - OpenAI::Models::Beta::Threads::Runs::FileSearchToolCall::FileSearch::RankingOptions, - OpenAI::Internal::AnyHash - ), - results: T::Array[ - T.any( - OpenAI::Models::Beta::Threads::Runs::FileSearchToolCall::FileSearch::Result, - OpenAI::Internal::AnyHash - ) - ] - ) - .returns(T.attached_class) + ranking_options: + OpenAI::Beta::Threads::Runs::FileSearchToolCall::FileSearch::RankingOptions::OrHash, + results: + T::Array[ + OpenAI::Beta::Threads::Runs::FileSearchToolCall::FileSearch::Result::OrHash + ] + ).returns(T.attached_class) end def self.new( # The ranking options for the file search. ranking_options: nil, # The results of the file search. results: nil - ); end + ) + end + sig do - override - .returns( - { - ranking_options: OpenAI::Models::Beta::Threads::Runs::FileSearchToolCall::FileSearch::RankingOptions, - results: T::Array[OpenAI::Models::Beta::Threads::Runs::FileSearchToolCall::FileSearch::Result] - } - ) + override.returns( + { + ranking_options: + OpenAI::Beta::Threads::Runs::FileSearchToolCall::FileSearch::RankingOptions, + results: + T::Array[ + OpenAI::Beta::Threads::Runs::FileSearchToolCall::FileSearch::Result + ] + } + ) + end + def to_hash end - def to_hash; end class RankingOptions < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The ranker to use for the file search. If not specified will use the `auto` # ranker. sig do returns( - OpenAI::Models::Beta::Threads::Runs::FileSearchToolCall::FileSearch::RankingOptions::Ranker::TaggedSymbol + OpenAI::Beta::Threads::Runs::FileSearchToolCall::FileSearch::RankingOptions::Ranker::TaggedSymbol ) end attr_accessor :ranker @@ -136,10 +165,10 @@ module OpenAI # The ranking options for the file search. sig do params( - ranker: OpenAI::Models::Beta::Threads::Runs::FileSearchToolCall::FileSearch::RankingOptions::Ranker::OrSymbol, + ranker: + OpenAI::Beta::Threads::Runs::FileSearchToolCall::FileSearch::RankingOptions::Ranker::OrSymbol, score_threshold: Float - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # The ranker to use for the file search. If not specified will use the `auto` @@ -148,17 +177,20 @@ module OpenAI # The score threshold for the file search. All values must be a floating point # number between 0 and 1. score_threshold: - ); end + ) + end + sig do - override - .returns( - { - ranker: OpenAI::Models::Beta::Threads::Runs::FileSearchToolCall::FileSearch::RankingOptions::Ranker::TaggedSymbol, - score_threshold: Float - } - ) + override.returns( + { + ranker: + OpenAI::Beta::Threads::Runs::FileSearchToolCall::FileSearch::RankingOptions::Ranker::TaggedSymbol, + score_threshold: Float + } + ) + end + def to_hash end - def to_hash; end # The ranker to use for the file search. If not specified will use the `auto` # ranker. @@ -166,31 +198,41 @@ module OpenAI extend OpenAI::Internal::Type::Enum TaggedSymbol = - T.type_alias { T.all(Symbol, OpenAI::Models::Beta::Threads::Runs::FileSearchToolCall::FileSearch::RankingOptions::Ranker) } + T.type_alias do + T.all( + Symbol, + OpenAI::Beta::Threads::Runs::FileSearchToolCall::FileSearch::RankingOptions::Ranker + ) + end OrSymbol = T.type_alias { T.any(Symbol, String) } AUTO = T.let( :auto, - OpenAI::Models::Beta::Threads::Runs::FileSearchToolCall::FileSearch::RankingOptions::Ranker::TaggedSymbol + OpenAI::Beta::Threads::Runs::FileSearchToolCall::FileSearch::RankingOptions::Ranker::TaggedSymbol ) DEFAULT_2024_08_21 = T.let( :default_2024_08_21, - OpenAI::Models::Beta::Threads::Runs::FileSearchToolCall::FileSearch::RankingOptions::Ranker::TaggedSymbol + OpenAI::Beta::Threads::Runs::FileSearchToolCall::FileSearch::RankingOptions::Ranker::TaggedSymbol ) sig do - override - .returns( - T::Array[OpenAI::Models::Beta::Threads::Runs::FileSearchToolCall::FileSearch::RankingOptions::Ranker::TaggedSymbol] - ) + override.returns( + T::Array[ + OpenAI::Beta::Threads::Runs::FileSearchToolCall::FileSearch::RankingOptions::Ranker::TaggedSymbol + ] + ) + end + def self.values end - def self.values; end end end class Result < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The ID of the file that result was found in. sig { returns(String) } attr_accessor :file_id @@ -208,21 +250,22 @@ module OpenAI # requested via the include query parameter. sig do returns( - T.nilable(T::Array[OpenAI::Models::Beta::Threads::Runs::FileSearchToolCall::FileSearch::Result::Content]) + T.nilable( + T::Array[ + OpenAI::Beta::Threads::Runs::FileSearchToolCall::FileSearch::Result::Content + ] + ) ) end attr_reader :content sig do params( - content: T::Array[ - T.any( - OpenAI::Models::Beta::Threads::Runs::FileSearchToolCall::FileSearch::Result::Content, - OpenAI::Internal::AnyHash - ) - ] - ) - .void + content: + T::Array[ + OpenAI::Beta::Threads::Runs::FileSearchToolCall::FileSearch::Result::Content::OrHash + ] + ).void end attr_writer :content @@ -232,14 +275,11 @@ module OpenAI file_id: String, file_name: String, score: Float, - content: T::Array[ - T.any( - OpenAI::Models::Beta::Threads::Runs::FileSearchToolCall::FileSearch::Result::Content, - OpenAI::Internal::AnyHash - ) - ] - ) - .returns(T.attached_class) + content: + T::Array[ + OpenAI::Beta::Threads::Runs::FileSearchToolCall::FileSearch::Result::Content::OrHash + ] + ).returns(T.attached_class) end def self.new( # The ID of the file that result was found in. @@ -252,21 +292,31 @@ module OpenAI # The content of the result that was found. The content is only included if # requested via the include query parameter. content: nil - ); end + ) + end + sig do - override - .returns( - { - file_id: String, - file_name: String, - score: Float, - content: T::Array[OpenAI::Models::Beta::Threads::Runs::FileSearchToolCall::FileSearch::Result::Content] - } - ) + override.returns( + { + file_id: String, + file_name: String, + score: Float, + content: + T::Array[ + OpenAI::Beta::Threads::Runs::FileSearchToolCall::FileSearch::Result::Content + ] + } + ) + end + def to_hash end - def to_hash; end class Content < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any(T.self_type, OpenAI::Internal::AnyHash) + end + # The text content of the file. sig { returns(T.nilable(String)) } attr_reader :text @@ -278,7 +328,7 @@ module OpenAI sig do returns( T.nilable( - OpenAI::Models::Beta::Threads::Runs::FileSearchToolCall::FileSearch::Result::Content::Type::TaggedSymbol + OpenAI::Beta::Threads::Runs::FileSearchToolCall::FileSearch::Result::Content::Type::TaggedSymbol ) ) end @@ -286,57 +336,67 @@ module OpenAI sig do params( - type: OpenAI::Models::Beta::Threads::Runs::FileSearchToolCall::FileSearch::Result::Content::Type::OrSymbol - ) - .void + type: + OpenAI::Beta::Threads::Runs::FileSearchToolCall::FileSearch::Result::Content::Type::OrSymbol + ).void end attr_writer :type sig do params( text: String, - type: OpenAI::Models::Beta::Threads::Runs::FileSearchToolCall::FileSearch::Result::Content::Type::OrSymbol - ) - .returns(T.attached_class) + type: + OpenAI::Beta::Threads::Runs::FileSearchToolCall::FileSearch::Result::Content::Type::OrSymbol + ).returns(T.attached_class) end def self.new( # The text content of the file. text: nil, # The type of the content. type: nil - ); end + ) + end + sig do - override - .returns( - { - text: String, - type: OpenAI::Models::Beta::Threads::Runs::FileSearchToolCall::FileSearch::Result::Content::Type::TaggedSymbol - } - ) + override.returns( + { + text: String, + type: + OpenAI::Beta::Threads::Runs::FileSearchToolCall::FileSearch::Result::Content::Type::TaggedSymbol + } + ) + end + def to_hash end - def to_hash; end # The type of the content. module Type extend OpenAI::Internal::Type::Enum TaggedSymbol = - T.type_alias { T.all(Symbol, OpenAI::Models::Beta::Threads::Runs::FileSearchToolCall::FileSearch::Result::Content::Type) } + T.type_alias do + T.all( + Symbol, + OpenAI::Beta::Threads::Runs::FileSearchToolCall::FileSearch::Result::Content::Type + ) + end OrSymbol = T.type_alias { T.any(Symbol, String) } TEXT = T.let( :text, - OpenAI::Models::Beta::Threads::Runs::FileSearchToolCall::FileSearch::Result::Content::Type::TaggedSymbol + OpenAI::Beta::Threads::Runs::FileSearchToolCall::FileSearch::Result::Content::Type::TaggedSymbol ) sig do - override - .returns( - T::Array[OpenAI::Models::Beta::Threads::Runs::FileSearchToolCall::FileSearch::Result::Content::Type::TaggedSymbol] - ) + override.returns( + T::Array[ + OpenAI::Beta::Threads::Runs::FileSearchToolCall::FileSearch::Result::Content::Type::TaggedSymbol + ] + ) + end + def self.values end - def self.values; end end end end diff --git a/rbi/openai/models/beta/threads/runs/file_search_tool_call_delta.rbi b/rbi/openai/models/beta/threads/runs/file_search_tool_call_delta.rbi index 5d6789be..62cd8cb2 100644 --- a/rbi/openai/models/beta/threads/runs/file_search_tool_call_delta.rbi +++ b/rbi/openai/models/beta/threads/runs/file_search_tool_call_delta.rbi @@ -6,6 +6,9 @@ module OpenAI module Threads module Runs class FileSearchToolCallDelta < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # For now, this is always going to be an empty object. sig { returns(T.anything) } attr_accessor :file_search @@ -44,9 +47,21 @@ module OpenAI # The type of tool call. This is always going to be `file_search` for this type of # tool call. type: :file_search - ); end - sig { override.returns({file_search: T.anything, index: Integer, type: Symbol, id: String}) } - def to_hash; end + ) + end + + sig do + override.returns( + { + file_search: T.anything, + index: Integer, + type: Symbol, + id: String + } + ) + end + def to_hash + end end end end diff --git a/rbi/openai/models/beta/threads/runs/function_tool_call.rbi b/rbi/openai/models/beta/threads/runs/function_tool_call.rbi index b3e20062..90fa9db4 100644 --- a/rbi/openai/models/beta/threads/runs/function_tool_call.rbi +++ b/rbi/openai/models/beta/threads/runs/function_tool_call.rbi @@ -6,19 +6,24 @@ module OpenAI module Threads module Runs class FunctionToolCall < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The ID of the tool call object. sig { returns(String) } attr_accessor :id # The definition of the function that was called. - sig { returns(OpenAI::Models::Beta::Threads::Runs::FunctionToolCall::Function) } + sig do + returns(OpenAI::Beta::Threads::Runs::FunctionToolCall::Function) + end attr_reader :function sig do params( - function: T.any(OpenAI::Models::Beta::Threads::Runs::FunctionToolCall::Function, OpenAI::Internal::AnyHash) - ) - .void + function: + OpenAI::Beta::Threads::Runs::FunctionToolCall::Function::OrHash + ).void end attr_writer :function @@ -30,10 +35,10 @@ module OpenAI sig do params( id: String, - function: T.any(OpenAI::Models::Beta::Threads::Runs::FunctionToolCall::Function, OpenAI::Internal::AnyHash), + function: + OpenAI::Beta::Threads::Runs::FunctionToolCall::Function::OrHash, type: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # The ID of the tool call object. @@ -43,16 +48,26 @@ module OpenAI # The type of tool call. This is always going to be `function` for this type of # tool call. type: :function - ); end + ) + end + sig do - override - .returns( - {id: String, function: OpenAI::Models::Beta::Threads::Runs::FunctionToolCall::Function, type: Symbol} - ) + override.returns( + { + id: String, + function: + OpenAI::Beta::Threads::Runs::FunctionToolCall::Function, + type: Symbol + } + ) + end + def to_hash end - def to_hash; end class Function < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The arguments passed to the function. sig { returns(String) } attr_accessor :arguments @@ -69,7 +84,11 @@ module OpenAI # The definition of the function that was called. sig do - params(arguments: String, name: String, output: T.nilable(String)).returns(T.attached_class) + params( + arguments: String, + name: String, + output: T.nilable(String) + ).returns(T.attached_class) end def self.new( # The arguments passed to the function. @@ -80,9 +99,16 @@ module OpenAI # [submitted](https://platform.openai.com/docs/api-reference/runs/submitToolOutputs) # yet. output: - ); end - sig { override.returns({arguments: String, name: String, output: T.nilable(String)}) } - def to_hash; end + ) + end + + sig do + override.returns( + { arguments: String, name: String, output: T.nilable(String) } + ) + end + def to_hash + end end end end diff --git a/rbi/openai/models/beta/threads/runs/function_tool_call_delta.rbi b/rbi/openai/models/beta/threads/runs/function_tool_call_delta.rbi index 3a495934..8b3a5afa 100644 --- a/rbi/openai/models/beta/threads/runs/function_tool_call_delta.rbi +++ b/rbi/openai/models/beta/threads/runs/function_tool_call_delta.rbi @@ -6,6 +6,9 @@ module OpenAI module Threads module Runs class FunctionToolCallDelta < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The index of the tool call in the tool calls array. sig { returns(Integer) } attr_accessor :index @@ -23,14 +26,20 @@ module OpenAI attr_writer :id # The definition of the function that was called. - sig { returns(T.nilable(OpenAI::Models::Beta::Threads::Runs::FunctionToolCallDelta::Function)) } + sig do + returns( + T.nilable( + OpenAI::Beta::Threads::Runs::FunctionToolCallDelta::Function + ) + ) + end attr_reader :function sig do params( - function: T.any(OpenAI::Models::Beta::Threads::Runs::FunctionToolCallDelta::Function, OpenAI::Internal::AnyHash) - ) - .void + function: + OpenAI::Beta::Threads::Runs::FunctionToolCallDelta::Function::OrHash + ).void end attr_writer :function @@ -38,10 +47,10 @@ module OpenAI params( index: Integer, id: String, - function: T.any(OpenAI::Models::Beta::Threads::Runs::FunctionToolCallDelta::Function, OpenAI::Internal::AnyHash), + function: + OpenAI::Beta::Threads::Runs::FunctionToolCallDelta::Function::OrHash, type: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # The index of the tool call in the tool calls array. @@ -53,21 +62,27 @@ module OpenAI # The type of tool call. This is always going to be `function` for this type of # tool call. type: :function - ); end + ) + end + sig do - override - .returns( - { - index: Integer, - type: Symbol, - id: String, - function: OpenAI::Models::Beta::Threads::Runs::FunctionToolCallDelta::Function - } - ) + override.returns( + { + index: Integer, + type: Symbol, + id: String, + function: + OpenAI::Beta::Threads::Runs::FunctionToolCallDelta::Function + } + ) + end + def to_hash end - def to_hash; end class Function < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The arguments passed to the function. sig { returns(T.nilable(String)) } attr_reader :arguments @@ -90,7 +105,11 @@ module OpenAI # The definition of the function that was called. sig do - params(arguments: String, name: String, output: T.nilable(String)).returns(T.attached_class) + params( + arguments: String, + name: String, + output: T.nilable(String) + ).returns(T.attached_class) end def self.new( # The arguments passed to the function. @@ -101,9 +120,16 @@ module OpenAI # [submitted](https://platform.openai.com/docs/api-reference/runs/submitToolOutputs) # yet. output: nil - ); end - sig { override.returns({arguments: String, name: String, output: T.nilable(String)}) } - def to_hash; end + ) + end + + sig do + override.returns( + { arguments: String, name: String, output: T.nilable(String) } + ) + end + def to_hash + end end end end diff --git a/rbi/openai/models/beta/threads/runs/message_creation_step_details.rbi b/rbi/openai/models/beta/threads/runs/message_creation_step_details.rbi index d5358c72..946fb84a 100644 --- a/rbi/openai/models/beta/threads/runs/message_creation_step_details.rbi +++ b/rbi/openai/models/beta/threads/runs/message_creation_step_details.rbi @@ -6,17 +6,21 @@ module OpenAI module Threads module Runs class MessageCreationStepDetails < OpenAI::Internal::Type::BaseModel - sig { returns(OpenAI::Models::Beta::Threads::Runs::MessageCreationStepDetails::MessageCreation) } + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + + sig do + returns( + OpenAI::Beta::Threads::Runs::MessageCreationStepDetails::MessageCreation + ) + end attr_reader :message_creation sig do params( - message_creation: T.any( - OpenAI::Models::Beta::Threads::Runs::MessageCreationStepDetails::MessageCreation, - OpenAI::Internal::AnyHash - ) - ) - .void + message_creation: + OpenAI::Beta::Threads::Runs::MessageCreationStepDetails::MessageCreation::OrHash + ).void end attr_writer :message_creation @@ -27,31 +31,34 @@ module OpenAI # Details of the message creation by the run step. sig do params( - message_creation: T.any( - OpenAI::Models::Beta::Threads::Runs::MessageCreationStepDetails::MessageCreation, - OpenAI::Internal::AnyHash - ), + message_creation: + OpenAI::Beta::Threads::Runs::MessageCreationStepDetails::MessageCreation::OrHash, type: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( message_creation:, # Always `message_creation`. type: :message_creation - ); end + ) + end + sig do - override - .returns( - { - message_creation: OpenAI::Models::Beta::Threads::Runs::MessageCreationStepDetails::MessageCreation, - type: Symbol - } - ) + override.returns( + { + message_creation: + OpenAI::Beta::Threads::Runs::MessageCreationStepDetails::MessageCreation, + type: Symbol + } + ) + end + def to_hash end - def to_hash; end class MessageCreation < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The ID of the message that was created by this run step. sig { returns(String) } attr_accessor :message_id @@ -60,9 +67,12 @@ module OpenAI def self.new( # The ID of the message that was created by this run step. message_id: - ); end - sig { override.returns({message_id: String}) } - def to_hash; end + ) + end + + sig { override.returns({ message_id: String }) } + def to_hash + end end end end diff --git a/rbi/openai/models/beta/threads/runs/run_step.rbi b/rbi/openai/models/beta/threads/runs/run_step.rbi index 86e8b940..9555206e 100644 --- a/rbi/openai/models/beta/threads/runs/run_step.rbi +++ b/rbi/openai/models/beta/threads/runs/run_step.rbi @@ -8,6 +8,9 @@ module OpenAI module Runs class RunStep < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The identifier of the run step, which can be referenced in API endpoints. sig { returns(String) } attr_accessor :id @@ -41,14 +44,20 @@ module OpenAI # The last error associated with this run step. Will be `null` if there are no # errors. - sig { returns(T.nilable(OpenAI::Models::Beta::Threads::Runs::RunStep::LastError)) } + sig do + returns( + T.nilable(OpenAI::Beta::Threads::Runs::RunStep::LastError) + ) + end attr_reader :last_error sig do params( - last_error: T.nilable(T.any(OpenAI::Models::Beta::Threads::Runs::RunStep::LastError, OpenAI::Internal::AnyHash)) - ) - .void + last_error: + T.nilable( + OpenAI::Beta::Threads::Runs::RunStep::LastError::OrHash + ) + ).void end attr_writer :last_error @@ -72,15 +81,19 @@ module OpenAI # The status of the run step, which can be either `in_progress`, `cancelled`, # `failed`, `completed`, or `expired`. - sig { returns(OpenAI::Models::Beta::Threads::Runs::RunStep::Status::TaggedSymbol) } + sig do + returns( + OpenAI::Beta::Threads::Runs::RunStep::Status::TaggedSymbol + ) + end attr_accessor :status # The details of the run step. sig do returns( T.any( - OpenAI::Models::Beta::Threads::Runs::MessageCreationStepDetails, - OpenAI::Models::Beta::Threads::Runs::ToolCallsStepDetails + OpenAI::Beta::Threads::Runs::MessageCreationStepDetails, + OpenAI::Beta::Threads::Runs::ToolCallsStepDetails ) ) end @@ -92,19 +105,23 @@ module OpenAI attr_accessor :thread_id # The type of run step, which can be either `message_creation` or `tool_calls`. - sig { returns(OpenAI::Models::Beta::Threads::Runs::RunStep::Type::TaggedSymbol) } + sig do + returns(OpenAI::Beta::Threads::Runs::RunStep::Type::TaggedSymbol) + end attr_accessor :type # Usage statistics related to the run step. This value will be `null` while the # run step's status is `in_progress`. - sig { returns(T.nilable(OpenAI::Models::Beta::Threads::Runs::RunStep::Usage)) } + sig do + returns(T.nilable(OpenAI::Beta::Threads::Runs::RunStep::Usage)) + end attr_reader :usage sig do params( - usage: T.nilable(T.any(OpenAI::Models::Beta::Threads::Runs::RunStep::Usage, OpenAI::Internal::AnyHash)) - ) - .void + usage: + T.nilable(OpenAI::Beta::Threads::Runs::RunStep::Usage::OrHash) + ).void end attr_writer :usage @@ -118,21 +135,26 @@ module OpenAI created_at: Integer, expired_at: T.nilable(Integer), failed_at: T.nilable(Integer), - last_error: T.nilable(T.any(OpenAI::Models::Beta::Threads::Runs::RunStep::LastError, OpenAI::Internal::AnyHash)), + last_error: + T.nilable( + OpenAI::Beta::Threads::Runs::RunStep::LastError::OrHash + ), metadata: T.nilable(T::Hash[Symbol, String]), run_id: String, - status: OpenAI::Models::Beta::Threads::Runs::RunStep::Status::OrSymbol, - step_details: T.any( - OpenAI::Models::Beta::Threads::Runs::MessageCreationStepDetails, - OpenAI::Internal::AnyHash, - OpenAI::Models::Beta::Threads::Runs::ToolCallsStepDetails - ), + status: OpenAI::Beta::Threads::Runs::RunStep::Status::OrSymbol, + step_details: + T.any( + OpenAI::Beta::Threads::Runs::MessageCreationStepDetails::OrHash, + OpenAI::Beta::Threads::Runs::ToolCallsStepDetails::OrHash + ), thread_id: String, - type: OpenAI::Models::Beta::Threads::Runs::RunStep::Type::OrSymbol, - usage: T.nilable(T.any(OpenAI::Models::Beta::Threads::Runs::RunStep::Usage, OpenAI::Internal::AnyHash)), + type: OpenAI::Beta::Threads::Runs::RunStep::Type::OrSymbol, + usage: + T.nilable( + OpenAI::Beta::Threads::Runs::RunStep::Usage::OrHash + ), object: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # The identifier of the run step, which can be referenced in API endpoints. @@ -180,38 +202,51 @@ module OpenAI usage:, # The object type, which is always `thread.run.step`. object: :"thread.run.step" - ); end + ) + end + sig do - override - .returns( - { - id: String, - assistant_id: String, - cancelled_at: T.nilable(Integer), - completed_at: T.nilable(Integer), - created_at: Integer, - expired_at: T.nilable(Integer), - failed_at: T.nilable(Integer), - last_error: T.nilable(OpenAI::Models::Beta::Threads::Runs::RunStep::LastError), - metadata: T.nilable(T::Hash[Symbol, String]), - object: Symbol, - run_id: String, - status: OpenAI::Models::Beta::Threads::Runs::RunStep::Status::TaggedSymbol, - step_details: T.any( - OpenAI::Models::Beta::Threads::Runs::MessageCreationStepDetails, - OpenAI::Models::Beta::Threads::Runs::ToolCallsStepDetails + override.returns( + { + id: String, + assistant_id: String, + cancelled_at: T.nilable(Integer), + completed_at: T.nilable(Integer), + created_at: Integer, + expired_at: T.nilable(Integer), + failed_at: T.nilable(Integer), + last_error: + T.nilable(OpenAI::Beta::Threads::Runs::RunStep::LastError), + metadata: T.nilable(T::Hash[Symbol, String]), + object: Symbol, + run_id: String, + status: + OpenAI::Beta::Threads::Runs::RunStep::Status::TaggedSymbol, + step_details: + T.any( + OpenAI::Beta::Threads::Runs::MessageCreationStepDetails, + OpenAI::Beta::Threads::Runs::ToolCallsStepDetails ), - thread_id: String, - type: OpenAI::Models::Beta::Threads::Runs::RunStep::Type::TaggedSymbol, - usage: T.nilable(OpenAI::Models::Beta::Threads::Runs::RunStep::Usage) - } - ) + thread_id: String, + type: + OpenAI::Beta::Threads::Runs::RunStep::Type::TaggedSymbol, + usage: T.nilable(OpenAI::Beta::Threads::Runs::RunStep::Usage) + } + ) + end + def to_hash end - def to_hash; end class LastError < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # One of `server_error` or `rate_limit_exceeded`. - sig { returns(OpenAI::Models::Beta::Threads::Runs::RunStep::LastError::Code::TaggedSymbol) } + sig do + returns( + OpenAI::Beta::Threads::Runs::RunStep::LastError::Code::TaggedSymbol + ) + end attr_accessor :code # A human-readable description of the error. @@ -221,38 +256,65 @@ module OpenAI # The last error associated with this run step. Will be `null` if there are no # errors. sig do - params(code: OpenAI::Models::Beta::Threads::Runs::RunStep::LastError::Code::OrSymbol, message: String) - .returns(T.attached_class) + params( + code: + OpenAI::Beta::Threads::Runs::RunStep::LastError::Code::OrSymbol, + message: String + ).returns(T.attached_class) end def self.new( # One of `server_error` or `rate_limit_exceeded`. code:, # A human-readable description of the error. message: - ); end + ) + end + sig do - override - .returns( - {code: OpenAI::Models::Beta::Threads::Runs::RunStep::LastError::Code::TaggedSymbol, message: String} - ) + override.returns( + { + code: + OpenAI::Beta::Threads::Runs::RunStep::LastError::Code::TaggedSymbol, + message: String + } + ) + end + def to_hash end - def to_hash; end # One of `server_error` or `rate_limit_exceeded`. module Code extend OpenAI::Internal::Type::Enum TaggedSymbol = - T.type_alias { T.all(Symbol, OpenAI::Models::Beta::Threads::Runs::RunStep::LastError::Code) } + T.type_alias do + T.all( + Symbol, + OpenAI::Beta::Threads::Runs::RunStep::LastError::Code + ) + end OrSymbol = T.type_alias { T.any(Symbol, String) } SERVER_ERROR = - T.let(:server_error, OpenAI::Models::Beta::Threads::Runs::RunStep::LastError::Code::TaggedSymbol) + T.let( + :server_error, + OpenAI::Beta::Threads::Runs::RunStep::LastError::Code::TaggedSymbol + ) RATE_LIMIT_EXCEEDED = - T.let(:rate_limit_exceeded, OpenAI::Models::Beta::Threads::Runs::RunStep::LastError::Code::TaggedSymbol) + T.let( + :rate_limit_exceeded, + OpenAI::Beta::Threads::Runs::RunStep::LastError::Code::TaggedSymbol + ) - sig { override.returns(T::Array[OpenAI::Models::Beta::Threads::Runs::RunStep::LastError::Code::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[ + OpenAI::Beta::Threads::Runs::RunStep::LastError::Code::TaggedSymbol + ] + ) + end + def self.values + end end end @@ -261,48 +323,108 @@ module OpenAI module Status extend OpenAI::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::Beta::Threads::Runs::RunStep::Status) } + TaggedSymbol = + T.type_alias do + T.all(Symbol, OpenAI::Beta::Threads::Runs::RunStep::Status) + end OrSymbol = T.type_alias { T.any(Symbol, String) } - IN_PROGRESS = T.let(:in_progress, OpenAI::Models::Beta::Threads::Runs::RunStep::Status::TaggedSymbol) - CANCELLED = T.let(:cancelled, OpenAI::Models::Beta::Threads::Runs::RunStep::Status::TaggedSymbol) - FAILED = T.let(:failed, OpenAI::Models::Beta::Threads::Runs::RunStep::Status::TaggedSymbol) - COMPLETED = T.let(:completed, OpenAI::Models::Beta::Threads::Runs::RunStep::Status::TaggedSymbol) - EXPIRED = T.let(:expired, OpenAI::Models::Beta::Threads::Runs::RunStep::Status::TaggedSymbol) + IN_PROGRESS = + T.let( + :in_progress, + OpenAI::Beta::Threads::Runs::RunStep::Status::TaggedSymbol + ) + CANCELLED = + T.let( + :cancelled, + OpenAI::Beta::Threads::Runs::RunStep::Status::TaggedSymbol + ) + FAILED = + T.let( + :failed, + OpenAI::Beta::Threads::Runs::RunStep::Status::TaggedSymbol + ) + COMPLETED = + T.let( + :completed, + OpenAI::Beta::Threads::Runs::RunStep::Status::TaggedSymbol + ) + EXPIRED = + T.let( + :expired, + OpenAI::Beta::Threads::Runs::RunStep::Status::TaggedSymbol + ) - sig { override.returns(T::Array[OpenAI::Models::Beta::Threads::Runs::RunStep::Status::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[ + OpenAI::Beta::Threads::Runs::RunStep::Status::TaggedSymbol + ] + ) + end + def self.values + end end # The details of the run step. module StepDetails extend OpenAI::Internal::Type::Union - sig do - override - .returns( - [OpenAI::Models::Beta::Threads::Runs::MessageCreationStepDetails, OpenAI::Models::Beta::Threads::Runs::ToolCallsStepDetails] + Variants = + T.type_alias do + T.any( + OpenAI::Beta::Threads::Runs::MessageCreationStepDetails, + OpenAI::Beta::Threads::Runs::ToolCallsStepDetails ) + end + + sig do + override.returns( + T::Array[ + OpenAI::Beta::Threads::Runs::RunStep::StepDetails::Variants + ] + ) + end + def self.variants end - def self.variants; end end # The type of run step, which can be either `message_creation` or `tool_calls`. module Type extend OpenAI::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::Beta::Threads::Runs::RunStep::Type) } + TaggedSymbol = + T.type_alias do + T.all(Symbol, OpenAI::Beta::Threads::Runs::RunStep::Type) + end OrSymbol = T.type_alias { T.any(Symbol, String) } MESSAGE_CREATION = - T.let(:message_creation, OpenAI::Models::Beta::Threads::Runs::RunStep::Type::TaggedSymbol) - TOOL_CALLS = T.let(:tool_calls, OpenAI::Models::Beta::Threads::Runs::RunStep::Type::TaggedSymbol) + T.let( + :message_creation, + OpenAI::Beta::Threads::Runs::RunStep::Type::TaggedSymbol + ) + TOOL_CALLS = + T.let( + :tool_calls, + OpenAI::Beta::Threads::Runs::RunStep::Type::TaggedSymbol + ) - sig { override.returns(T::Array[OpenAI::Models::Beta::Threads::Runs::RunStep::Type::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[ + OpenAI::Beta::Threads::Runs::RunStep::Type::TaggedSymbol + ] + ) + end + def self.values + end end class Usage < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Number of completion tokens used over the course of the run step. sig { returns(Integer) } attr_accessor :completion_tokens @@ -331,11 +453,20 @@ module OpenAI prompt_tokens:, # Total number of tokens used (prompt + completion). total_tokens: - ); end + ) + end + sig do - override.returns({completion_tokens: Integer, prompt_tokens: Integer, total_tokens: Integer}) + override.returns( + { + completion_tokens: Integer, + prompt_tokens: Integer, + total_tokens: Integer + } + ) + end + def to_hash end - def to_hash; end end end end diff --git a/rbi/openai/models/beta/threads/runs/run_step_delta.rbi b/rbi/openai/models/beta/threads/runs/run_step_delta.rbi index e70a40af..2f6d25e5 100644 --- a/rbi/openai/models/beta/threads/runs/run_step_delta.rbi +++ b/rbi/openai/models/beta/threads/runs/run_step_delta.rbi @@ -8,13 +8,16 @@ module OpenAI module Runs class RunStepDelta < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The details of the run step. sig do returns( T.nilable( T.any( - OpenAI::Models::Beta::Threads::Runs::RunStepDeltaMessageDelta, - OpenAI::Models::Beta::Threads::Runs::ToolCallDeltaObject + OpenAI::Beta::Threads::Runs::RunStepDeltaMessageDelta, + OpenAI::Beta::Threads::Runs::ToolCallDeltaObject ) ) ) @@ -23,55 +26,66 @@ module OpenAI sig do params( - step_details: T.any( - OpenAI::Models::Beta::Threads::Runs::RunStepDeltaMessageDelta, - OpenAI::Internal::AnyHash, - OpenAI::Models::Beta::Threads::Runs::ToolCallDeltaObject - ) - ) - .void + step_details: + T.any( + OpenAI::Beta::Threads::Runs::RunStepDeltaMessageDelta::OrHash, + OpenAI::Beta::Threads::Runs::ToolCallDeltaObject::OrHash + ) + ).void end attr_writer :step_details # The delta containing the fields that have changed on the run step. sig do params( - step_details: T.any( - OpenAI::Models::Beta::Threads::Runs::RunStepDeltaMessageDelta, - OpenAI::Internal::AnyHash, - OpenAI::Models::Beta::Threads::Runs::ToolCallDeltaObject - ) - ) - .returns(T.attached_class) + step_details: + T.any( + OpenAI::Beta::Threads::Runs::RunStepDeltaMessageDelta::OrHash, + OpenAI::Beta::Threads::Runs::ToolCallDeltaObject::OrHash + ) + ).returns(T.attached_class) end def self.new( # The details of the run step. step_details: nil - ); end + ) + end + sig do - override - .returns( - { - step_details: T.any( - OpenAI::Models::Beta::Threads::Runs::RunStepDeltaMessageDelta, - OpenAI::Models::Beta::Threads::Runs::ToolCallDeltaObject + override.returns( + { + step_details: + T.any( + OpenAI::Beta::Threads::Runs::RunStepDeltaMessageDelta, + OpenAI::Beta::Threads::Runs::ToolCallDeltaObject ) - } - ) + } + ) + end + def to_hash end - def to_hash; end # The details of the run step. module StepDetails extend OpenAI::Internal::Type::Union - sig do - override - .returns( - [OpenAI::Models::Beta::Threads::Runs::RunStepDeltaMessageDelta, OpenAI::Models::Beta::Threads::Runs::ToolCallDeltaObject] + Variants = + T.type_alias do + T.any( + OpenAI::Beta::Threads::Runs::RunStepDeltaMessageDelta, + OpenAI::Beta::Threads::Runs::ToolCallDeltaObject ) + end + + sig do + override.returns( + T::Array[ + OpenAI::Beta::Threads::Runs::RunStepDelta::StepDetails::Variants + ] + ) + end + def self.variants end - def self.variants; end end end end diff --git a/rbi/openai/models/beta/threads/runs/run_step_delta_event.rbi b/rbi/openai/models/beta/threads/runs/run_step_delta_event.rbi index 3828467d..75d170fe 100644 --- a/rbi/openai/models/beta/threads/runs/run_step_delta_event.rbi +++ b/rbi/openai/models/beta/threads/runs/run_step_delta_event.rbi @@ -8,15 +8,22 @@ module OpenAI module Runs class RunStepDeltaEvent < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The identifier of the run step, which can be referenced in API endpoints. sig { returns(String) } attr_accessor :id # The delta containing the fields that have changed on the run step. - sig { returns(OpenAI::Models::Beta::Threads::Runs::RunStepDelta) } + sig { returns(OpenAI::Beta::Threads::Runs::RunStepDelta) } attr_reader :delta - sig { params(delta: T.any(OpenAI::Models::Beta::Threads::Runs::RunStepDelta, OpenAI::Internal::AnyHash)).void } + sig do + params( + delta: OpenAI::Beta::Threads::Runs::RunStepDelta::OrHash + ).void + end attr_writer :delta # The object type, which is always `thread.run.step.delta`. @@ -28,10 +35,9 @@ module OpenAI sig do params( id: String, - delta: T.any(OpenAI::Models::Beta::Threads::Runs::RunStepDelta, OpenAI::Internal::AnyHash), + delta: OpenAI::Beta::Threads::Runs::RunStepDelta::OrHash, object: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # The identifier of the run step, which can be referenced in API endpoints. @@ -40,9 +46,20 @@ module OpenAI delta:, # The object type, which is always `thread.run.step.delta`. object: :"thread.run.step.delta" - ); end - sig { override.returns({id: String, delta: OpenAI::Models::Beta::Threads::Runs::RunStepDelta, object: Symbol}) } - def to_hash; end + ) + end + + sig do + override.returns( + { + id: String, + delta: OpenAI::Beta::Threads::Runs::RunStepDelta, + object: Symbol + } + ) + end + def to_hash + end end end end diff --git a/rbi/openai/models/beta/threads/runs/run_step_delta_message_delta.rbi b/rbi/openai/models/beta/threads/runs/run_step_delta_message_delta.rbi index a05e1586..caad103a 100644 --- a/rbi/openai/models/beta/threads/runs/run_step_delta_message_delta.rbi +++ b/rbi/openai/models/beta/threads/runs/run_step_delta_message_delta.rbi @@ -8,52 +8,61 @@ module OpenAI module Runs class RunStepDeltaMessageDelta < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Always `message_creation`. sig { returns(Symbol) } attr_accessor :type - sig { returns(T.nilable(OpenAI::Models::Beta::Threads::Runs::RunStepDeltaMessageDelta::MessageCreation)) } + sig do + returns( + T.nilable( + OpenAI::Beta::Threads::Runs::RunStepDeltaMessageDelta::MessageCreation + ) + ) + end attr_reader :message_creation sig do params( - message_creation: T.any( - OpenAI::Models::Beta::Threads::Runs::RunStepDeltaMessageDelta::MessageCreation, - OpenAI::Internal::AnyHash - ) - ) - .void + message_creation: + OpenAI::Beta::Threads::Runs::RunStepDeltaMessageDelta::MessageCreation::OrHash + ).void end attr_writer :message_creation # Details of the message creation by the run step. sig do params( - message_creation: T.any( - OpenAI::Models::Beta::Threads::Runs::RunStepDeltaMessageDelta::MessageCreation, - OpenAI::Internal::AnyHash - ), + message_creation: + OpenAI::Beta::Threads::Runs::RunStepDeltaMessageDelta::MessageCreation::OrHash, type: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( message_creation: nil, # Always `message_creation`. type: :message_creation - ); end + ) + end + sig do - override - .returns( - { - type: Symbol, - message_creation: OpenAI::Models::Beta::Threads::Runs::RunStepDeltaMessageDelta::MessageCreation - } - ) + override.returns( + { + type: Symbol, + message_creation: + OpenAI::Beta::Threads::Runs::RunStepDeltaMessageDelta::MessageCreation + } + ) + end + def to_hash end - def to_hash; end class MessageCreation < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The ID of the message that was created by this run step. sig { returns(T.nilable(String)) } attr_reader :message_id @@ -65,9 +74,12 @@ module OpenAI def self.new( # The ID of the message that was created by this run step. message_id: nil - ); end - sig { override.returns({message_id: String}) } - def to_hash; end + ) + end + + sig { override.returns({ message_id: String }) } + def to_hash + end end end end diff --git a/rbi/openai/models/beta/threads/runs/run_step_include.rbi b/rbi/openai/models/beta/threads/runs/run_step_include.rbi index 2b97eb05..1b0fdb68 100644 --- a/rbi/openai/models/beta/threads/runs/run_step_include.rbi +++ b/rbi/openai/models/beta/threads/runs/run_step_include.rbi @@ -10,17 +10,27 @@ module OpenAI module RunStepInclude extend OpenAI::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::Beta::Threads::Runs::RunStepInclude) } + TaggedSymbol = + T.type_alias do + T.all(Symbol, OpenAI::Beta::Threads::Runs::RunStepInclude) + end OrSymbol = T.type_alias { T.any(Symbol, String) } STEP_DETAILS_TOOL_CALLS_FILE_SEARCH_RESULTS_CONTENT = T.let( :"step_details.tool_calls[*].file_search.results[*].content", - OpenAI::Models::Beta::Threads::Runs::RunStepInclude::TaggedSymbol + OpenAI::Beta::Threads::Runs::RunStepInclude::TaggedSymbol ) - sig { override.returns(T::Array[OpenAI::Models::Beta::Threads::Runs::RunStepInclude::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[ + OpenAI::Beta::Threads::Runs::RunStepInclude::TaggedSymbol + ] + ) + end + def self.values + end end end end diff --git a/rbi/openai/models/beta/threads/runs/step_list_params.rbi b/rbi/openai/models/beta/threads/runs/step_list_params.rbi index bda4f8f6..013b8ef3 100644 --- a/rbi/openai/models/beta/threads/runs/step_list_params.rbi +++ b/rbi/openai/models/beta/threads/runs/step_list_params.rbi @@ -9,6 +9,9 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + sig { returns(String) } attr_accessor :thread_id @@ -39,10 +42,25 @@ module OpenAI # See the # [file search tool documentation](https://platform.openai.com/docs/assistants/tools/file-search#customizing-file-search-settings) # for more information. - sig { returns(T.nilable(T::Array[OpenAI::Models::Beta::Threads::Runs::RunStepInclude::OrSymbol])) } + sig do + returns( + T.nilable( + T::Array[ + OpenAI::Beta::Threads::Runs::RunStepInclude::OrSymbol + ] + ) + ) + end attr_reader :include - sig { params(include: T::Array[OpenAI::Models::Beta::Threads::Runs::RunStepInclude::OrSymbol]).void } + sig do + params( + include: + T::Array[ + OpenAI::Beta::Threads::Runs::RunStepInclude::OrSymbol + ] + ).void + end attr_writer :include # A limit on the number of objects to be returned. Limit can range between 1 and @@ -55,10 +73,21 @@ module OpenAI # Sort order by the `created_at` timestamp of the objects. `asc` for ascending # order and `desc` for descending order. - sig { returns(T.nilable(OpenAI::Models::Beta::Threads::Runs::StepListParams::Order::OrSymbol)) } + sig do + returns( + T.nilable( + OpenAI::Beta::Threads::Runs::StepListParams::Order::OrSymbol + ) + ) + end attr_reader :order - sig { params(order: OpenAI::Models::Beta::Threads::Runs::StepListParams::Order::OrSymbol).void } + sig do + params( + order: + OpenAI::Beta::Threads::Runs::StepListParams::Order::OrSymbol + ).void + end attr_writer :order sig do @@ -66,12 +95,15 @@ module OpenAI thread_id: String, after: String, before: String, - include: T::Array[OpenAI::Models::Beta::Threads::Runs::RunStepInclude::OrSymbol], + include: + T::Array[ + OpenAI::Beta::Threads::Runs::RunStepInclude::OrSymbol + ], limit: Integer, - order: OpenAI::Models::Beta::Threads::Runs::StepListParams::Order::OrSymbol, - request_options: T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash) - ) - .returns(T.attached_class) + order: + OpenAI::Beta::Threads::Runs::StepListParams::Order::OrSymbol, + request_options: OpenAI::RequestOptions::OrHash + ).returns(T.attached_class) end def self.new( thread_id:, @@ -100,36 +132,63 @@ module OpenAI # order and `desc` for descending order. order: nil, request_options: {} - ); end + ) + end + sig do - override - .returns( - { - thread_id: String, - after: String, - before: String, - include: T::Array[OpenAI::Models::Beta::Threads::Runs::RunStepInclude::OrSymbol], - limit: Integer, - order: OpenAI::Models::Beta::Threads::Runs::StepListParams::Order::OrSymbol, - request_options: OpenAI::RequestOptions - } - ) + override.returns( + { + thread_id: String, + after: String, + before: String, + include: + T::Array[ + OpenAI::Beta::Threads::Runs::RunStepInclude::OrSymbol + ], + limit: Integer, + order: + OpenAI::Beta::Threads::Runs::StepListParams::Order::OrSymbol, + request_options: OpenAI::RequestOptions + } + ) + end + def to_hash end - def to_hash; end # Sort order by the `created_at` timestamp of the objects. `asc` for ascending # order and `desc` for descending order. module Order extend OpenAI::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::Beta::Threads::Runs::StepListParams::Order) } + TaggedSymbol = + T.type_alias do + T.all( + Symbol, + OpenAI::Beta::Threads::Runs::StepListParams::Order + ) + end OrSymbol = T.type_alias { T.any(Symbol, String) } - ASC = T.let(:asc, OpenAI::Models::Beta::Threads::Runs::StepListParams::Order::TaggedSymbol) - DESC = T.let(:desc, OpenAI::Models::Beta::Threads::Runs::StepListParams::Order::TaggedSymbol) + ASC = + T.let( + :asc, + OpenAI::Beta::Threads::Runs::StepListParams::Order::TaggedSymbol + ) + DESC = + T.let( + :desc, + OpenAI::Beta::Threads::Runs::StepListParams::Order::TaggedSymbol + ) - sig { override.returns(T::Array[OpenAI::Models::Beta::Threads::Runs::StepListParams::Order::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[ + OpenAI::Beta::Threads::Runs::StepListParams::Order::TaggedSymbol + ] + ) + end + def self.values + end end end end diff --git a/rbi/openai/models/beta/threads/runs/step_retrieve_params.rbi b/rbi/openai/models/beta/threads/runs/step_retrieve_params.rbi index a1c6e7c5..bb2bc31f 100644 --- a/rbi/openai/models/beta/threads/runs/step_retrieve_params.rbi +++ b/rbi/openai/models/beta/threads/runs/step_retrieve_params.rbi @@ -9,6 +9,9 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + sig { returns(String) } attr_accessor :thread_id @@ -22,20 +25,37 @@ module OpenAI # See the # [file search tool documentation](https://platform.openai.com/docs/assistants/tools/file-search#customizing-file-search-settings) # for more information. - sig { returns(T.nilable(T::Array[OpenAI::Models::Beta::Threads::Runs::RunStepInclude::OrSymbol])) } + sig do + returns( + T.nilable( + T::Array[ + OpenAI::Beta::Threads::Runs::RunStepInclude::OrSymbol + ] + ) + ) + end attr_reader :include - sig { params(include: T::Array[OpenAI::Models::Beta::Threads::Runs::RunStepInclude::OrSymbol]).void } + sig do + params( + include: + T::Array[ + OpenAI::Beta::Threads::Runs::RunStepInclude::OrSymbol + ] + ).void + end attr_writer :include sig do params( thread_id: String, run_id: String, - include: T::Array[OpenAI::Models::Beta::Threads::Runs::RunStepInclude::OrSymbol], - request_options: T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash) - ) - .returns(T.attached_class) + include: + T::Array[ + OpenAI::Beta::Threads::Runs::RunStepInclude::OrSymbol + ], + request_options: OpenAI::RequestOptions::OrHash + ).returns(T.attached_class) end def self.new( thread_id:, @@ -49,19 +69,24 @@ module OpenAI # for more information. include: nil, request_options: {} - ); end + ) + end + sig do - override - .returns( - { - thread_id: String, - run_id: String, - include: T::Array[OpenAI::Models::Beta::Threads::Runs::RunStepInclude::OrSymbol], - request_options: OpenAI::RequestOptions - } - ) + override.returns( + { + thread_id: String, + run_id: String, + include: + T::Array[ + OpenAI::Beta::Threads::Runs::RunStepInclude::OrSymbol + ], + request_options: OpenAI::RequestOptions + } + ) + end + def to_hash end - def to_hash; end end end end diff --git a/rbi/openai/models/beta/threads/runs/tool_call.rbi b/rbi/openai/models/beta/threads/runs/tool_call.rbi index bd900d9c..a202bb18 100644 --- a/rbi/openai/models/beta/threads/runs/tool_call.rbi +++ b/rbi/openai/models/beta/threads/runs/tool_call.rbi @@ -9,13 +9,22 @@ module OpenAI module ToolCall extend OpenAI::Internal::Type::Union - sig do - override - .returns( - [OpenAI::Models::Beta::Threads::Runs::CodeInterpreterToolCall, OpenAI::Models::Beta::Threads::Runs::FileSearchToolCall, OpenAI::Models::Beta::Threads::Runs::FunctionToolCall] + Variants = + T.type_alias do + T.any( + OpenAI::Beta::Threads::Runs::CodeInterpreterToolCall, + OpenAI::Beta::Threads::Runs::FileSearchToolCall, + OpenAI::Beta::Threads::Runs::FunctionToolCall ) + end + + sig do + override.returns( + T::Array[OpenAI::Beta::Threads::Runs::ToolCall::Variants] + ) + end + def self.variants end - def self.variants; end end end end diff --git a/rbi/openai/models/beta/threads/runs/tool_call_delta.rbi b/rbi/openai/models/beta/threads/runs/tool_call_delta.rbi index 336a93e9..f76f8eaa 100644 --- a/rbi/openai/models/beta/threads/runs/tool_call_delta.rbi +++ b/rbi/openai/models/beta/threads/runs/tool_call_delta.rbi @@ -9,13 +9,22 @@ module OpenAI module ToolCallDelta extend OpenAI::Internal::Type::Union - sig do - override - .returns( - [OpenAI::Models::Beta::Threads::Runs::CodeInterpreterToolCallDelta, OpenAI::Models::Beta::Threads::Runs::FileSearchToolCallDelta, OpenAI::Models::Beta::Threads::Runs::FunctionToolCallDelta] + Variants = + T.type_alias do + T.any( + OpenAI::Beta::Threads::Runs::CodeInterpreterToolCallDelta, + OpenAI::Beta::Threads::Runs::FileSearchToolCallDelta, + OpenAI::Beta::Threads::Runs::FunctionToolCallDelta ) + end + + sig do + override.returns( + T::Array[OpenAI::Beta::Threads::Runs::ToolCallDelta::Variants] + ) + end + def self.variants end - def self.variants; end end end end diff --git a/rbi/openai/models/beta/threads/runs/tool_call_delta_object.rbi b/rbi/openai/models/beta/threads/runs/tool_call_delta_object.rbi index ea795b43..09699ee5 100644 --- a/rbi/openai/models/beta/threads/runs/tool_call_delta_object.rbi +++ b/rbi/openai/models/beta/threads/runs/tool_call_delta_object.rbi @@ -6,6 +6,9 @@ module OpenAI module Threads module Runs class ToolCallDeltaObject < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Always `tool_calls`. sig { returns(Symbol) } attr_accessor :type @@ -18,9 +21,9 @@ module OpenAI T.nilable( T::Array[ T.any( - OpenAI::Models::Beta::Threads::Runs::CodeInterpreterToolCallDelta, - OpenAI::Models::Beta::Threads::Runs::FileSearchToolCallDelta, - OpenAI::Models::Beta::Threads::Runs::FunctionToolCallDelta + OpenAI::Beta::Threads::Runs::CodeInterpreterToolCallDelta, + OpenAI::Beta::Threads::Runs::FileSearchToolCallDelta, + OpenAI::Beta::Threads::Runs::FunctionToolCallDelta ) ] ) @@ -30,33 +33,31 @@ module OpenAI sig do params( - tool_calls: T::Array[ - T.any( - OpenAI::Models::Beta::Threads::Runs::CodeInterpreterToolCallDelta, - OpenAI::Internal::AnyHash, - OpenAI::Models::Beta::Threads::Runs::FileSearchToolCallDelta, - OpenAI::Models::Beta::Threads::Runs::FunctionToolCallDelta - ) - ] - ) - .void + tool_calls: + T::Array[ + T.any( + OpenAI::Beta::Threads::Runs::CodeInterpreterToolCallDelta::OrHash, + OpenAI::Beta::Threads::Runs::FileSearchToolCallDelta::OrHash, + OpenAI::Beta::Threads::Runs::FunctionToolCallDelta::OrHash + ) + ] + ).void end attr_writer :tool_calls # Details of the tool call. sig do params( - tool_calls: T::Array[ - T.any( - OpenAI::Models::Beta::Threads::Runs::CodeInterpreterToolCallDelta, - OpenAI::Internal::AnyHash, - OpenAI::Models::Beta::Threads::Runs::FileSearchToolCallDelta, - OpenAI::Models::Beta::Threads::Runs::FunctionToolCallDelta - ) - ], + tool_calls: + T::Array[ + T.any( + OpenAI::Beta::Threads::Runs::CodeInterpreterToolCallDelta::OrHash, + OpenAI::Beta::Threads::Runs::FileSearchToolCallDelta::OrHash, + OpenAI::Beta::Threads::Runs::FunctionToolCallDelta::OrHash + ) + ], type: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # An array of tool calls the run step was involved in. These can be associated @@ -65,23 +66,26 @@ module OpenAI tool_calls: nil, # Always `tool_calls`. type: :tool_calls - ); end + ) + end + sig do - override - .returns( - { - type: Symbol, - tool_calls: T::Array[ + override.returns( + { + type: Symbol, + tool_calls: + T::Array[ T.any( - OpenAI::Models::Beta::Threads::Runs::CodeInterpreterToolCallDelta, - OpenAI::Models::Beta::Threads::Runs::FileSearchToolCallDelta, - OpenAI::Models::Beta::Threads::Runs::FunctionToolCallDelta + OpenAI::Beta::Threads::Runs::CodeInterpreterToolCallDelta, + OpenAI::Beta::Threads::Runs::FileSearchToolCallDelta, + OpenAI::Beta::Threads::Runs::FunctionToolCallDelta ) ] - } - ) + } + ) + end + def to_hash end - def to_hash; end end end end diff --git a/rbi/openai/models/beta/threads/runs/tool_calls_step_details.rbi b/rbi/openai/models/beta/threads/runs/tool_calls_step_details.rbi index a5240f76..b34c48e7 100644 --- a/rbi/openai/models/beta/threads/runs/tool_calls_step_details.rbi +++ b/rbi/openai/models/beta/threads/runs/tool_calls_step_details.rbi @@ -6,6 +6,9 @@ module OpenAI module Threads module Runs class ToolCallsStepDetails < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # An array of tool calls the run step was involved in. These can be associated # with one of three types of tools: `code_interpreter`, `file_search`, or # `function`. @@ -13,9 +16,9 @@ module OpenAI returns( T::Array[ T.any( - OpenAI::Models::Beta::Threads::Runs::CodeInterpreterToolCall, - OpenAI::Models::Beta::Threads::Runs::FileSearchToolCall, - OpenAI::Models::Beta::Threads::Runs::FunctionToolCall + OpenAI::Beta::Threads::Runs::CodeInterpreterToolCall, + OpenAI::Beta::Threads::Runs::FileSearchToolCall, + OpenAI::Beta::Threads::Runs::FunctionToolCall ) ] ) @@ -29,17 +32,16 @@ module OpenAI # Details of the tool call. sig do params( - tool_calls: T::Array[ - T.any( - OpenAI::Models::Beta::Threads::Runs::CodeInterpreterToolCall, - OpenAI::Internal::AnyHash, - OpenAI::Models::Beta::Threads::Runs::FileSearchToolCall, - OpenAI::Models::Beta::Threads::Runs::FunctionToolCall - ) - ], + tool_calls: + T::Array[ + T.any( + OpenAI::Beta::Threads::Runs::CodeInterpreterToolCall::OrHash, + OpenAI::Beta::Threads::Runs::FileSearchToolCall::OrHash, + OpenAI::Beta::Threads::Runs::FunctionToolCall::OrHash + ) + ], type: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # An array of tool calls the run step was involved in. These can be associated @@ -48,23 +50,26 @@ module OpenAI tool_calls:, # Always `tool_calls`. type: :tool_calls - ); end + ) + end + sig do - override - .returns( - { - tool_calls: T::Array[ + override.returns( + { + tool_calls: + T::Array[ T.any( - OpenAI::Models::Beta::Threads::Runs::CodeInterpreterToolCall, - OpenAI::Models::Beta::Threads::Runs::FileSearchToolCall, - OpenAI::Models::Beta::Threads::Runs::FunctionToolCall + OpenAI::Beta::Threads::Runs::CodeInterpreterToolCall, + OpenAI::Beta::Threads::Runs::FileSearchToolCall, + OpenAI::Beta::Threads::Runs::FunctionToolCall ) ], - type: Symbol - } - ) + type: Symbol + } + ) + end + def to_hash end - def to_hash; end end end end diff --git a/rbi/openai/models/beta/threads/text.rbi b/rbi/openai/models/beta/threads/text.rbi index 64eb1b67..9827491d 100644 --- a/rbi/openai/models/beta/threads/text.rbi +++ b/rbi/openai/models/beta/threads/text.rbi @@ -5,12 +5,15 @@ module OpenAI module Beta module Threads class Text < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + sig do returns( T::Array[ T.any( - OpenAI::Models::Beta::Threads::FileCitationAnnotation, - OpenAI::Models::Beta::Threads::FilePathAnnotation + OpenAI::Beta::Threads::FileCitationAnnotation, + OpenAI::Beta::Threads::FilePathAnnotation ) ] ) @@ -23,37 +26,39 @@ module OpenAI sig do params( - annotations: T::Array[ - T.any( - OpenAI::Models::Beta::Threads::FileCitationAnnotation, - OpenAI::Internal::AnyHash, - OpenAI::Models::Beta::Threads::FilePathAnnotation - ) - ], + annotations: + T::Array[ + T.any( + OpenAI::Beta::Threads::FileCitationAnnotation::OrHash, + OpenAI::Beta::Threads::FilePathAnnotation::OrHash + ) + ], value: String - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( annotations:, # The data that makes up the text. value: - ); end + ) + end + sig do - override - .returns( - { - annotations: T::Array[ + override.returns( + { + annotations: + T::Array[ T.any( - OpenAI::Models::Beta::Threads::FileCitationAnnotation, - OpenAI::Models::Beta::Threads::FilePathAnnotation + OpenAI::Beta::Threads::FileCitationAnnotation, + OpenAI::Beta::Threads::FilePathAnnotation ) ], - value: String - } - ) + value: String + } + ) + end + def to_hash end - def to_hash; end end end end diff --git a/rbi/openai/models/beta/threads/text_content_block.rbi b/rbi/openai/models/beta/threads/text_content_block.rbi index c1c5eb8c..7474675b 100644 --- a/rbi/openai/models/beta/threads/text_content_block.rbi +++ b/rbi/openai/models/beta/threads/text_content_block.rbi @@ -5,10 +5,13 @@ module OpenAI module Beta module Threads class TextContentBlock < OpenAI::Internal::Type::BaseModel - sig { returns(OpenAI::Models::Beta::Threads::Text) } + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + + sig { returns(OpenAI::Beta::Threads::Text) } attr_reader :text - sig { params(text: T.any(OpenAI::Models::Beta::Threads::Text, OpenAI::Internal::AnyHash)).void } + sig { params(text: OpenAI::Beta::Threads::Text::OrHash).void } attr_writer :text # Always `text`. @@ -17,16 +20,25 @@ module OpenAI # The text content that is part of a message. sig do - params(text: T.any(OpenAI::Models::Beta::Threads::Text, OpenAI::Internal::AnyHash), type: Symbol) - .returns(T.attached_class) + params( + text: OpenAI::Beta::Threads::Text::OrHash, + type: Symbol + ).returns(T.attached_class) end def self.new( text:, # Always `text`. type: :text - ); end - sig { override.returns({text: OpenAI::Models::Beta::Threads::Text, type: Symbol}) } - def to_hash; end + ) + end + + sig do + override.returns( + { text: OpenAI::Beta::Threads::Text, type: Symbol } + ) + end + def to_hash + end end end end diff --git a/rbi/openai/models/beta/threads/text_content_block_param.rbi b/rbi/openai/models/beta/threads/text_content_block_param.rbi index 20626187..d96847a2 100644 --- a/rbi/openai/models/beta/threads/text_content_block_param.rbi +++ b/rbi/openai/models/beta/threads/text_content_block_param.rbi @@ -5,6 +5,9 @@ module OpenAI module Beta module Threads class TextContentBlockParam < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Text content to be sent to the model sig { returns(String) } attr_accessor :text @@ -20,9 +23,12 @@ module OpenAI text:, # Always `text`. type: :text - ); end - sig { override.returns({text: String, type: Symbol}) } - def to_hash; end + ) + end + + sig { override.returns({ text: String, type: Symbol }) } + def to_hash + end end end end diff --git a/rbi/openai/models/beta/threads/text_delta.rbi b/rbi/openai/models/beta/threads/text_delta.rbi index 8d384acc..cd39960e 100644 --- a/rbi/openai/models/beta/threads/text_delta.rbi +++ b/rbi/openai/models/beta/threads/text_delta.rbi @@ -5,13 +5,16 @@ module OpenAI module Beta module Threads class TextDelta < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + sig do returns( T.nilable( T::Array[ T.any( - OpenAI::Models::Beta::Threads::FileCitationDeltaAnnotation, - OpenAI::Models::Beta::Threads::FilePathDeltaAnnotation + OpenAI::Beta::Threads::FileCitationDeltaAnnotation, + OpenAI::Beta::Threads::FilePathDeltaAnnotation ) ] ) @@ -21,15 +24,14 @@ module OpenAI sig do params( - annotations: T::Array[ - T.any( - OpenAI::Models::Beta::Threads::FileCitationDeltaAnnotation, - OpenAI::Internal::AnyHash, - OpenAI::Models::Beta::Threads::FilePathDeltaAnnotation - ) - ] - ) - .void + annotations: + T::Array[ + T.any( + OpenAI::Beta::Threads::FileCitationDeltaAnnotation::OrHash, + OpenAI::Beta::Threads::FilePathDeltaAnnotation::OrHash + ) + ] + ).void end attr_writer :annotations @@ -42,37 +44,39 @@ module OpenAI sig do params( - annotations: T::Array[ - T.any( - OpenAI::Models::Beta::Threads::FileCitationDeltaAnnotation, - OpenAI::Internal::AnyHash, - OpenAI::Models::Beta::Threads::FilePathDeltaAnnotation - ) - ], + annotations: + T::Array[ + T.any( + OpenAI::Beta::Threads::FileCitationDeltaAnnotation::OrHash, + OpenAI::Beta::Threads::FilePathDeltaAnnotation::OrHash + ) + ], value: String - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( annotations: nil, # The data that makes up the text. value: nil - ); end + ) + end + sig do - override - .returns( - { - annotations: T::Array[ + override.returns( + { + annotations: + T::Array[ T.any( - OpenAI::Models::Beta::Threads::FileCitationDeltaAnnotation, - OpenAI::Models::Beta::Threads::FilePathDeltaAnnotation + OpenAI::Beta::Threads::FileCitationDeltaAnnotation, + OpenAI::Beta::Threads::FilePathDeltaAnnotation ) ], - value: String - } - ) + value: String + } + ) + end + def to_hash end - def to_hash; end end end end diff --git a/rbi/openai/models/beta/threads/text_delta_block.rbi b/rbi/openai/models/beta/threads/text_delta_block.rbi index e054d1d2..7de27ada 100644 --- a/rbi/openai/models/beta/threads/text_delta_block.rbi +++ b/rbi/openai/models/beta/threads/text_delta_block.rbi @@ -5,6 +5,9 @@ module OpenAI module Beta module Threads class TextDeltaBlock < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The index of the content part in the message. sig { returns(Integer) } attr_accessor :index @@ -13,20 +16,19 @@ module OpenAI sig { returns(Symbol) } attr_accessor :type - sig { returns(T.nilable(OpenAI::Models::Beta::Threads::TextDelta)) } + sig { returns(T.nilable(OpenAI::Beta::Threads::TextDelta)) } attr_reader :text - sig { params(text: T.any(OpenAI::Models::Beta::Threads::TextDelta, OpenAI::Internal::AnyHash)).void } + sig { params(text: OpenAI::Beta::Threads::TextDelta::OrHash).void } attr_writer :text # The text content that is part of a message. sig do params( index: Integer, - text: T.any(OpenAI::Models::Beta::Threads::TextDelta, OpenAI::Internal::AnyHash), + text: OpenAI::Beta::Threads::TextDelta::OrHash, type: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # The index of the content part in the message. @@ -34,9 +36,20 @@ module OpenAI text: nil, # Always `text`. type: :text - ); end - sig { override.returns({index: Integer, type: Symbol, text: OpenAI::Models::Beta::Threads::TextDelta}) } - def to_hash; end + ) + end + + sig do + override.returns( + { + index: Integer, + type: Symbol, + text: OpenAI::Beta::Threads::TextDelta + } + ) + end + def to_hash + end end end end diff --git a/rbi/openai/models/chat/chat_completion.rbi b/rbi/openai/models/chat/chat_completion.rbi index 9986624b..1e90aecc 100644 --- a/rbi/openai/models/chat/chat_completion.rbi +++ b/rbi/openai/models/chat/chat_completion.rbi @@ -6,13 +6,15 @@ module OpenAI module Chat class ChatCompletion < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # A unique identifier for the chat completion. sig { returns(String) } attr_accessor :id # A list of chat completion choices. Can be more than one if `n` is greater # than 1. - sig { returns(T::Array[OpenAI::Models::Chat::ChatCompletion::Choice]) } + sig { returns(T::Array[OpenAI::Chat::ChatCompletion::Choice]) } attr_accessor :choices # The Unix timestamp (in seconds) of when the chat completion was created. @@ -44,7 +46,11 @@ module OpenAI # # When this parameter is set, the response body will include the `service_tier` # utilized. - sig { returns(T.nilable(OpenAI::Models::Chat::ChatCompletion::ServiceTier::TaggedSymbol)) } + sig do + returns( + T.nilable(OpenAI::Chat::ChatCompletion::ServiceTier::TaggedSymbol) + ) + end attr_accessor :service_tier # This fingerprint represents the backend configuration that the model runs with. @@ -58,10 +64,10 @@ module OpenAI attr_writer :system_fingerprint # Usage statistics for the completion request. - sig { returns(T.nilable(OpenAI::Models::CompletionUsage)) } + sig { returns(T.nilable(OpenAI::CompletionUsage)) } attr_reader :usage - sig { params(usage: T.any(OpenAI::Models::CompletionUsage, OpenAI::Internal::AnyHash)).void } + sig { params(usage: OpenAI::CompletionUsage::OrHash).void } attr_writer :usage # Represents a chat completion response returned by model, based on the provided @@ -69,15 +75,15 @@ module OpenAI sig do params( id: String, - choices: T::Array[T.any(OpenAI::Models::Chat::ChatCompletion::Choice, OpenAI::Internal::AnyHash)], + choices: T::Array[OpenAI::Chat::ChatCompletion::Choice::OrHash], created: Integer, model: String, - service_tier: T.nilable(OpenAI::Models::Chat::ChatCompletion::ServiceTier::OrSymbol), + service_tier: + T.nilable(OpenAI::Chat::ChatCompletion::ServiceTier::OrSymbol), system_fingerprint: String, - usage: T.any(OpenAI::Models::CompletionUsage, OpenAI::Internal::AnyHash), + usage: OpenAI::CompletionUsage::OrHash, object: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # A unique identifier for the chat completion. @@ -116,32 +122,44 @@ module OpenAI usage: nil, # The object type, which is always `chat.completion`. object: :"chat.completion" - ); end + ) + end + sig do - override - .returns( - { - id: String, - choices: T::Array[OpenAI::Models::Chat::ChatCompletion::Choice], - created: Integer, - model: String, - object: Symbol, - service_tier: T.nilable(OpenAI::Models::Chat::ChatCompletion::ServiceTier::TaggedSymbol), - system_fingerprint: String, - usage: OpenAI::Models::CompletionUsage - } - ) + override.returns( + { + id: String, + choices: T::Array[OpenAI::Chat::ChatCompletion::Choice], + created: Integer, + model: String, + object: Symbol, + service_tier: + T.nilable( + OpenAI::Chat::ChatCompletion::ServiceTier::TaggedSymbol + ), + system_fingerprint: String, + usage: OpenAI::CompletionUsage + } + ) + end + def to_hash end - def to_hash; end class Choice < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The reason the model stopped generating tokens. This will be `stop` if the model # hit a natural stop point or a provided stop sequence, `length` if the maximum # number of tokens specified in the request was reached, `content_filter` if # content was omitted due to a flag from our content filters, `tool_calls` if the # model called a tool, or `function_call` (deprecated) if the model called a # function. - sig { returns(OpenAI::Models::Chat::ChatCompletion::Choice::FinishReason::TaggedSymbol) } + sig do + returns( + OpenAI::Chat::ChatCompletion::Choice::FinishReason::TaggedSymbol + ) + end attr_accessor :finish_reason # The index of the choice in the list of choices. @@ -149,32 +167,41 @@ module OpenAI attr_accessor :index # Log probability information for the choice. - sig { returns(T.nilable(OpenAI::Models::Chat::ChatCompletion::Choice::Logprobs)) } + sig do + returns(T.nilable(OpenAI::Chat::ChatCompletion::Choice::Logprobs)) + end attr_reader :logprobs sig do params( - logprobs: T.nilable(T.any(OpenAI::Models::Chat::ChatCompletion::Choice::Logprobs, OpenAI::Internal::AnyHash)) - ) - .void + logprobs: + T.nilable( + OpenAI::Chat::ChatCompletion::Choice::Logprobs::OrHash + ) + ).void end attr_writer :logprobs # A chat completion message generated by the model. - sig { returns(OpenAI::Models::Chat::ChatCompletionMessage) } + sig { returns(OpenAI::Chat::ChatCompletionMessage) } attr_reader :message - sig { params(message: T.any(OpenAI::Models::Chat::ChatCompletionMessage, OpenAI::Internal::AnyHash)).void } + sig do + params(message: OpenAI::Chat::ChatCompletionMessage::OrHash).void + end attr_writer :message sig do params( - finish_reason: OpenAI::Models::Chat::ChatCompletion::Choice::FinishReason::OrSymbol, + finish_reason: + OpenAI::Chat::ChatCompletion::Choice::FinishReason::OrSymbol, index: Integer, - logprobs: T.nilable(T.any(OpenAI::Models::Chat::ChatCompletion::Choice::Logprobs, OpenAI::Internal::AnyHash)), - message: T.any(OpenAI::Models::Chat::ChatCompletionMessage, OpenAI::Internal::AnyHash) - ) - .returns(T.attached_class) + logprobs: + T.nilable( + OpenAI::Chat::ChatCompletion::Choice::Logprobs::OrHash + ), + message: OpenAI::Chat::ChatCompletionMessage::OrHash + ).returns(T.attached_class) end def self.new( # The reason the model stopped generating tokens. This will be `stop` if the model @@ -190,19 +217,23 @@ module OpenAI logprobs:, # A chat completion message generated by the model. message: - ); end + ) + end + sig do - override - .returns( - { - finish_reason: OpenAI::Models::Chat::ChatCompletion::Choice::FinishReason::TaggedSymbol, - index: Integer, - logprobs: T.nilable(OpenAI::Models::Chat::ChatCompletion::Choice::Logprobs), - message: OpenAI::Models::Chat::ChatCompletionMessage - } - ) + override.returns( + { + finish_reason: + OpenAI::Chat::ChatCompletion::Choice::FinishReason::TaggedSymbol, + index: Integer, + logprobs: + T.nilable(OpenAI::Chat::ChatCompletion::Choice::Logprobs), + message: OpenAI::Chat::ChatCompletionMessage + } + ) + end + def to_hash end - def to_hash; end # The reason the model stopped generating tokens. This will be `stop` if the model # hit a natural stop point or a provided stop sequence, `length` if the maximum @@ -213,54 +244,109 @@ module OpenAI module FinishReason extend OpenAI::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::Chat::ChatCompletion::Choice::FinishReason) } + TaggedSymbol = + T.type_alias do + T.all( + Symbol, + OpenAI::Chat::ChatCompletion::Choice::FinishReason + ) + end OrSymbol = T.type_alias { T.any(Symbol, String) } - STOP = T.let(:stop, OpenAI::Models::Chat::ChatCompletion::Choice::FinishReason::TaggedSymbol) - LENGTH = T.let(:length, OpenAI::Models::Chat::ChatCompletion::Choice::FinishReason::TaggedSymbol) - TOOL_CALLS = T.let(:tool_calls, OpenAI::Models::Chat::ChatCompletion::Choice::FinishReason::TaggedSymbol) + STOP = + T.let( + :stop, + OpenAI::Chat::ChatCompletion::Choice::FinishReason::TaggedSymbol + ) + LENGTH = + T.let( + :length, + OpenAI::Chat::ChatCompletion::Choice::FinishReason::TaggedSymbol + ) + TOOL_CALLS = + T.let( + :tool_calls, + OpenAI::Chat::ChatCompletion::Choice::FinishReason::TaggedSymbol + ) CONTENT_FILTER = - T.let(:content_filter, OpenAI::Models::Chat::ChatCompletion::Choice::FinishReason::TaggedSymbol) + T.let( + :content_filter, + OpenAI::Chat::ChatCompletion::Choice::FinishReason::TaggedSymbol + ) FUNCTION_CALL = - T.let(:function_call, OpenAI::Models::Chat::ChatCompletion::Choice::FinishReason::TaggedSymbol) + T.let( + :function_call, + OpenAI::Chat::ChatCompletion::Choice::FinishReason::TaggedSymbol + ) - sig { override.returns(T::Array[OpenAI::Models::Chat::ChatCompletion::Choice::FinishReason::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[ + OpenAI::Chat::ChatCompletion::Choice::FinishReason::TaggedSymbol + ] + ) + end + def self.values + end end class Logprobs < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # A list of message content tokens with log probability information. - sig { returns(T.nilable(T::Array[OpenAI::Models::Chat::ChatCompletionTokenLogprob])) } + sig do + returns( + T.nilable(T::Array[OpenAI::Chat::ChatCompletionTokenLogprob]) + ) + end attr_accessor :content # A list of message refusal tokens with log probability information. - sig { returns(T.nilable(T::Array[OpenAI::Models::Chat::ChatCompletionTokenLogprob])) } + sig do + returns( + T.nilable(T::Array[OpenAI::Chat::ChatCompletionTokenLogprob]) + ) + end attr_accessor :refusal # Log probability information for the choice. sig do params( - content: T.nilable(T::Array[T.any(OpenAI::Models::Chat::ChatCompletionTokenLogprob, OpenAI::Internal::AnyHash)]), - refusal: T.nilable(T::Array[T.any(OpenAI::Models::Chat::ChatCompletionTokenLogprob, OpenAI::Internal::AnyHash)]) - ) - .returns(T.attached_class) + content: + T.nilable( + T::Array[OpenAI::Chat::ChatCompletionTokenLogprob::OrHash] + ), + refusal: + T.nilable( + T::Array[OpenAI::Chat::ChatCompletionTokenLogprob::OrHash] + ) + ).returns(T.attached_class) end def self.new( # A list of message content tokens with log probability information. content:, # A list of message refusal tokens with log probability information. refusal: - ); end + ) + end + sig do - override - .returns( - { - content: T.nilable(T::Array[OpenAI::Models::Chat::ChatCompletionTokenLogprob]), - refusal: T.nilable(T::Array[OpenAI::Models::Chat::ChatCompletionTokenLogprob]) - } - ) + override.returns( + { + content: + T.nilable( + T::Array[OpenAI::Chat::ChatCompletionTokenLogprob] + ), + refusal: + T.nilable( + T::Array[OpenAI::Chat::ChatCompletionTokenLogprob] + ) + } + ) + end + def to_hash end - def to_hash; end end end @@ -284,15 +370,35 @@ module OpenAI module ServiceTier extend OpenAI::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::Chat::ChatCompletion::ServiceTier) } + TaggedSymbol = + T.type_alias do + T.all(Symbol, OpenAI::Chat::ChatCompletion::ServiceTier) + end OrSymbol = T.type_alias { T.any(Symbol, String) } - AUTO = T.let(:auto, OpenAI::Models::Chat::ChatCompletion::ServiceTier::TaggedSymbol) - DEFAULT = T.let(:default, OpenAI::Models::Chat::ChatCompletion::ServiceTier::TaggedSymbol) - FLEX = T.let(:flex, OpenAI::Models::Chat::ChatCompletion::ServiceTier::TaggedSymbol) + AUTO = + T.let( + :auto, + OpenAI::Chat::ChatCompletion::ServiceTier::TaggedSymbol + ) + DEFAULT = + T.let( + :default, + OpenAI::Chat::ChatCompletion::ServiceTier::TaggedSymbol + ) + FLEX = + T.let( + :flex, + OpenAI::Chat::ChatCompletion::ServiceTier::TaggedSymbol + ) - sig { override.returns(T::Array[OpenAI::Models::Chat::ChatCompletion::ServiceTier::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[OpenAI::Chat::ChatCompletion::ServiceTier::TaggedSymbol] + ) + end + def self.values + end end end end diff --git a/rbi/openai/models/chat/chat_completion_assistant_message_param.rbi b/rbi/openai/models/chat/chat_completion_assistant_message_param.rbi index 783cdfc2..b56149a1 100644 --- a/rbi/openai/models/chat/chat_completion_assistant_message_param.rbi +++ b/rbi/openai/models/chat/chat_completion_assistant_message_param.rbi @@ -2,26 +2,33 @@ module OpenAI module Models - ChatCompletionAssistantMessageParam = Chat::ChatCompletionAssistantMessageParam + ChatCompletionAssistantMessageParam = + Chat::ChatCompletionAssistantMessageParam module Chat class ChatCompletionAssistantMessageParam < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The role of the messages author, in this case `assistant`. sig { returns(Symbol) } attr_accessor :role # Data about a previous audio response from the model. # [Learn more](https://platform.openai.com/docs/guides/audio). - sig { returns(T.nilable(OpenAI::Models::Chat::ChatCompletionAssistantMessageParam::Audio)) } + sig do + returns( + T.nilable(OpenAI::Chat::ChatCompletionAssistantMessageParam::Audio) + ) + end attr_reader :audio sig do params( - audio: T.nilable( - T.any(OpenAI::Models::Chat::ChatCompletionAssistantMessageParam::Audio, OpenAI::Internal::AnyHash) - ) - ) - .void + audio: + T.nilable( + OpenAI::Chat::ChatCompletionAssistantMessageParam::Audio::OrHash + ) + ).void end attr_writer :audio @@ -34,8 +41,8 @@ module OpenAI String, T::Array[ T.any( - OpenAI::Models::Chat::ChatCompletionContentPartText, - OpenAI::Models::Chat::ChatCompletionContentPartRefusal + OpenAI::Chat::ChatCompletionContentPartText, + OpenAI::Chat::ChatCompletionContentPartRefusal ) ] ) @@ -46,16 +53,22 @@ module OpenAI # Deprecated and replaced by `tool_calls`. The name and arguments of a function # that should be called, as generated by the model. - sig { returns(T.nilable(OpenAI::Models::Chat::ChatCompletionAssistantMessageParam::FunctionCall)) } + sig do + returns( + T.nilable( + OpenAI::Chat::ChatCompletionAssistantMessageParam::FunctionCall + ) + ) + end attr_reader :function_call sig do params( - function_call: T.nilable( - T.any(OpenAI::Models::Chat::ChatCompletionAssistantMessageParam::FunctionCall, OpenAI::Internal::AnyHash) - ) - ) - .void + function_call: + T.nilable( + OpenAI::Chat::ChatCompletionAssistantMessageParam::FunctionCall::OrHash + ) + ).void end attr_writer :function_call @@ -72,44 +85,50 @@ module OpenAI attr_accessor :refusal # The tool calls generated by the model, such as function calls. - sig { returns(T.nilable(T::Array[OpenAI::Models::Chat::ChatCompletionMessageToolCall])) } + sig do + returns( + T.nilable(T::Array[OpenAI::Chat::ChatCompletionMessageToolCall]) + ) + end attr_reader :tool_calls sig do params( - tool_calls: T::Array[T.any(OpenAI::Models::Chat::ChatCompletionMessageToolCall, OpenAI::Internal::AnyHash)] - ) - .void + tool_calls: + T::Array[OpenAI::Chat::ChatCompletionMessageToolCall::OrHash] + ).void end attr_writer :tool_calls # Messages sent by the model in response to user messages. sig do params( - audio: T.nilable( - T.any(OpenAI::Models::Chat::ChatCompletionAssistantMessageParam::Audio, OpenAI::Internal::AnyHash) - ), - content: T.nilable( - T.any( - String, - T::Array[ - T.any( - OpenAI::Models::Chat::ChatCompletionContentPartText, - OpenAI::Internal::AnyHash, - OpenAI::Models::Chat::ChatCompletionContentPartRefusal - ) - ] - ) - ), - function_call: T.nilable( - T.any(OpenAI::Models::Chat::ChatCompletionAssistantMessageParam::FunctionCall, OpenAI::Internal::AnyHash) - ), + audio: + T.nilable( + OpenAI::Chat::ChatCompletionAssistantMessageParam::Audio::OrHash + ), + content: + T.nilable( + T.any( + String, + T::Array[ + T.any( + OpenAI::Chat::ChatCompletionContentPartText::OrHash, + OpenAI::Chat::ChatCompletionContentPartRefusal::OrHash + ) + ] + ) + ), + function_call: + T.nilable( + OpenAI::Chat::ChatCompletionAssistantMessageParam::FunctionCall::OrHash + ), name: String, refusal: T.nilable(String), - tool_calls: T::Array[T.any(OpenAI::Models::Chat::ChatCompletionMessageToolCall, OpenAI::Internal::AnyHash)], + tool_calls: + T::Array[OpenAI::Chat::ChatCompletionMessageToolCall::OrHash], role: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # Data about a previous audio response from the model. @@ -130,34 +149,46 @@ module OpenAI tool_calls: nil, # The role of the messages author, in this case `assistant`. role: :assistant - ); end + ) + end + sig do - override - .returns( - { - role: Symbol, - audio: T.nilable(OpenAI::Models::Chat::ChatCompletionAssistantMessageParam::Audio), - content: T.nilable( + override.returns( + { + role: Symbol, + audio: + T.nilable( + OpenAI::Chat::ChatCompletionAssistantMessageParam::Audio + ), + content: + T.nilable( T.any( String, T::Array[ T.any( - OpenAI::Models::Chat::ChatCompletionContentPartText, - OpenAI::Models::Chat::ChatCompletionContentPartRefusal + OpenAI::Chat::ChatCompletionContentPartText, + OpenAI::Chat::ChatCompletionContentPartRefusal ) ] ) ), - function_call: T.nilable(OpenAI::Models::Chat::ChatCompletionAssistantMessageParam::FunctionCall), - name: String, - refusal: T.nilable(String), - tool_calls: T::Array[OpenAI::Models::Chat::ChatCompletionMessageToolCall] - } - ) + function_call: + T.nilable( + OpenAI::Chat::ChatCompletionAssistantMessageParam::FunctionCall + ), + name: String, + refusal: T.nilable(String), + tool_calls: T::Array[OpenAI::Chat::ChatCompletionMessageToolCall] + } + ) + end + def to_hash end - def to_hash; end class Audio < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Unique identifier for a previous audio response from the model. sig { returns(String) } attr_accessor :id @@ -168,9 +199,12 @@ module OpenAI def self.new( # Unique identifier for a previous audio response from the model. id: - ); end - sig { override.returns({id: String}) } - def to_hash; end + ) + end + + sig { override.returns({ id: String }) } + def to_hash + end end # The contents of the assistant message. Required unless `tool_calls` or @@ -178,44 +212,67 @@ module OpenAI module Content extend OpenAI::Internal::Type::Union + Variants = + T.type_alias do + T.any( + String, + T::Array[ + T.any( + OpenAI::Chat::ChatCompletionContentPartText, + OpenAI::Chat::ChatCompletionContentPartRefusal + ) + ] + ) + end + # Learn about # [text inputs](https://platform.openai.com/docs/guides/text-generation). module ArrayOfContentPart extend OpenAI::Internal::Type::Union - sig do - override - .returns( - [OpenAI::Models::Chat::ChatCompletionContentPartText, OpenAI::Models::Chat::ChatCompletionContentPartRefusal] + Variants = + T.type_alias do + T.any( + OpenAI::Chat::ChatCompletionContentPartText, + OpenAI::Chat::ChatCompletionContentPartRefusal ) + end + + sig do + override.returns( + T::Array[ + OpenAI::Chat::ChatCompletionAssistantMessageParam::Content::ArrayOfContentPart::Variants + ] + ) + end + def self.variants end - def self.variants; end end sig do - override - .returns( - [ - String, - T::Array[ - T.any( - OpenAI::Models::Chat::ChatCompletionContentPartText, - OpenAI::Models::Chat::ChatCompletionContentPartRefusal - ) - ] - ] - ) + override.returns( + T::Array[ + OpenAI::Chat::ChatCompletionAssistantMessageParam::Content::Variants + ] + ) + end + def self.variants end - def self.variants; end ArrayOfContentPartArray = T.let( - OpenAI::Internal::Type::ArrayOf[union: OpenAI::Models::Chat::ChatCompletionAssistantMessageParam::Content::ArrayOfContentPart], + OpenAI::Internal::Type::ArrayOf[ + union: + OpenAI::Chat::ChatCompletionAssistantMessageParam::Content::ArrayOfContentPart + ], OpenAI::Internal::Type::Converter ) end class FunctionCall < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The arguments to call the function with, as generated by the model in JSON # format. Note that the model does not always generate valid JSON, and may # hallucinate parameters not defined by your function schema. Validate the @@ -229,7 +286,9 @@ module OpenAI # Deprecated and replaced by `tool_calls`. The name and arguments of a function # that should be called, as generated by the model. - sig { params(arguments: String, name: String).returns(T.attached_class) } + sig do + params(arguments: String, name: String).returns(T.attached_class) + end def self.new( # The arguments to call the function with, as generated by the model in JSON # format. Note that the model does not always generate valid JSON, and may @@ -238,9 +297,12 @@ module OpenAI arguments:, # The name of the function to call. name: - ); end - sig { override.returns({arguments: String, name: String}) } - def to_hash; end + ) + end + + sig { override.returns({ arguments: String, name: String }) } + def to_hash + end end end end diff --git a/rbi/openai/models/chat/chat_completion_audio.rbi b/rbi/openai/models/chat/chat_completion_audio.rbi index ce531040..34c22c71 100644 --- a/rbi/openai/models/chat/chat_completion_audio.rbi +++ b/rbi/openai/models/chat/chat_completion_audio.rbi @@ -6,6 +6,8 @@ module OpenAI module Chat class ChatCompletionAudio < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Unique identifier for this audio response. sig { returns(String) } attr_accessor :id @@ -28,7 +30,12 @@ module OpenAI # audio response from the model. # [Learn more](https://platform.openai.com/docs/guides/audio). sig do - params(id: String, data: String, expires_at: Integer, transcript: String).returns(T.attached_class) + params( + id: String, + data: String, + expires_at: Integer, + transcript: String + ).returns(T.attached_class) end def self.new( # Unique identifier for this audio response. @@ -41,9 +48,21 @@ module OpenAI expires_at:, # Transcript of the audio generated by the model. transcript: - ); end - sig { override.returns({id: String, data: String, expires_at: Integer, transcript: String}) } - def to_hash; end + ) + end + + sig do + override.returns( + { + id: String, + data: String, + expires_at: Integer, + transcript: String + } + ) + end + def to_hash + end end end end diff --git a/rbi/openai/models/chat/chat_completion_audio_param.rbi b/rbi/openai/models/chat/chat_completion_audio_param.rbi index 2b135efe..03887e62 100644 --- a/rbi/openai/models/chat/chat_completion_audio_param.rbi +++ b/rbi/openai/models/chat/chat_completion_audio_param.rbi @@ -6,14 +6,25 @@ module OpenAI module Chat class ChatCompletionAudioParam < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Specifies the output audio format. Must be one of `wav`, `mp3`, `flac`, `opus`, # or `pcm16`. - sig { returns(OpenAI::Models::Chat::ChatCompletionAudioParam::Format::OrSymbol) } + sig do + returns(OpenAI::Chat::ChatCompletionAudioParam::Format::OrSymbol) + end attr_accessor :format_ # The voice the model uses to respond. Supported voices are `alloy`, `ash`, # `ballad`, `coral`, `echo`, `fable`, `nova`, `onyx`, `sage`, and `shimmer`. - sig { returns(T.any(String, OpenAI::Models::Chat::ChatCompletionAudioParam::Voice::OrSymbol)) } + sig do + returns( + T.any( + String, + OpenAI::Chat::ChatCompletionAudioParam::Voice::OrSymbol + ) + ) + end attr_accessor :voice # Parameters for audio output. Required when audio output is requested with @@ -21,10 +32,13 @@ module OpenAI # [Learn more](https://platform.openai.com/docs/guides/audio). sig do params( - format_: OpenAI::Models::Chat::ChatCompletionAudioParam::Format::OrSymbol, - voice: T.any(String, OpenAI::Models::Chat::ChatCompletionAudioParam::Voice::OrSymbol) - ) - .returns(T.attached_class) + format_: OpenAI::Chat::ChatCompletionAudioParam::Format::OrSymbol, + voice: + T.any( + String, + OpenAI::Chat::ChatCompletionAudioParam::Voice::OrSymbol + ) + ).returns(T.attached_class) end def self.new( # Specifies the output audio format. Must be one of `wav`, `mp3`, `flac`, `opus`, @@ -33,35 +47,75 @@ module OpenAI # The voice the model uses to respond. Supported voices are `alloy`, `ash`, # `ballad`, `coral`, `echo`, `fable`, `nova`, `onyx`, `sage`, and `shimmer`. voice: - ); end + ) + end + sig do - override - .returns( - { - format_: OpenAI::Models::Chat::ChatCompletionAudioParam::Format::OrSymbol, - voice: T.any(String, OpenAI::Models::Chat::ChatCompletionAudioParam::Voice::OrSymbol) - } - ) + override.returns( + { + format_: OpenAI::Chat::ChatCompletionAudioParam::Format::OrSymbol, + voice: + T.any( + String, + OpenAI::Chat::ChatCompletionAudioParam::Voice::OrSymbol + ) + } + ) + end + def to_hash end - def to_hash; end # Specifies the output audio format. Must be one of `wav`, `mp3`, `flac`, `opus`, # or `pcm16`. module Format extend OpenAI::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::Chat::ChatCompletionAudioParam::Format) } + TaggedSymbol = + T.type_alias do + T.all(Symbol, OpenAI::Chat::ChatCompletionAudioParam::Format) + end OrSymbol = T.type_alias { T.any(Symbol, String) } - WAV = T.let(:wav, OpenAI::Models::Chat::ChatCompletionAudioParam::Format::TaggedSymbol) - AAC = T.let(:aac, OpenAI::Models::Chat::ChatCompletionAudioParam::Format::TaggedSymbol) - MP3 = T.let(:mp3, OpenAI::Models::Chat::ChatCompletionAudioParam::Format::TaggedSymbol) - FLAC = T.let(:flac, OpenAI::Models::Chat::ChatCompletionAudioParam::Format::TaggedSymbol) - OPUS = T.let(:opus, OpenAI::Models::Chat::ChatCompletionAudioParam::Format::TaggedSymbol) - PCM16 = T.let(:pcm16, OpenAI::Models::Chat::ChatCompletionAudioParam::Format::TaggedSymbol) + WAV = + T.let( + :wav, + OpenAI::Chat::ChatCompletionAudioParam::Format::TaggedSymbol + ) + AAC = + T.let( + :aac, + OpenAI::Chat::ChatCompletionAudioParam::Format::TaggedSymbol + ) + MP3 = + T.let( + :mp3, + OpenAI::Chat::ChatCompletionAudioParam::Format::TaggedSymbol + ) + FLAC = + T.let( + :flac, + OpenAI::Chat::ChatCompletionAudioParam::Format::TaggedSymbol + ) + OPUS = + T.let( + :opus, + OpenAI::Chat::ChatCompletionAudioParam::Format::TaggedSymbol + ) + PCM16 = + T.let( + :pcm16, + OpenAI::Chat::ChatCompletionAudioParam::Format::TaggedSymbol + ) - sig { override.returns(T::Array[OpenAI::Models::Chat::ChatCompletionAudioParam::Format::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[ + OpenAI::Chat::ChatCompletionAudioParam::Format::TaggedSymbol + ] + ) + end + def self.values + end end # The voice the model uses to respond. Supported voices are `alloy`, `ash`, @@ -69,23 +123,83 @@ module OpenAI module Voice extend OpenAI::Internal::Type::Union - sig { override.returns([String, OpenAI::Models::Chat::ChatCompletionAudioParam::Voice::TaggedSymbol]) } - def self.variants; end + Variants = + T.type_alias do + T.any( + String, + OpenAI::Chat::ChatCompletionAudioParam::Voice::TaggedSymbol + ) + end + + sig do + override.returns( + T::Array[OpenAI::Chat::ChatCompletionAudioParam::Voice::Variants] + ) + end + def self.variants + end - TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::Chat::ChatCompletionAudioParam::Voice) } + TaggedSymbol = + T.type_alias do + T.all(Symbol, OpenAI::Chat::ChatCompletionAudioParam::Voice) + end OrSymbol = T.type_alias { T.any(Symbol, String) } - ALLOY = T.let(:alloy, OpenAI::Models::Chat::ChatCompletionAudioParam::Voice::TaggedSymbol) - ASH = T.let(:ash, OpenAI::Models::Chat::ChatCompletionAudioParam::Voice::TaggedSymbol) - BALLAD = T.let(:ballad, OpenAI::Models::Chat::ChatCompletionAudioParam::Voice::TaggedSymbol) - CORAL = T.let(:coral, OpenAI::Models::Chat::ChatCompletionAudioParam::Voice::TaggedSymbol) - ECHO = T.let(:echo, OpenAI::Models::Chat::ChatCompletionAudioParam::Voice::TaggedSymbol) - FABLE = T.let(:fable, OpenAI::Models::Chat::ChatCompletionAudioParam::Voice::TaggedSymbol) - ONYX = T.let(:onyx, OpenAI::Models::Chat::ChatCompletionAudioParam::Voice::TaggedSymbol) - NOVA = T.let(:nova, OpenAI::Models::Chat::ChatCompletionAudioParam::Voice::TaggedSymbol) - SAGE = T.let(:sage, OpenAI::Models::Chat::ChatCompletionAudioParam::Voice::TaggedSymbol) - SHIMMER = T.let(:shimmer, OpenAI::Models::Chat::ChatCompletionAudioParam::Voice::TaggedSymbol) - VERSE = T.let(:verse, OpenAI::Models::Chat::ChatCompletionAudioParam::Voice::TaggedSymbol) + ALLOY = + T.let( + :alloy, + OpenAI::Chat::ChatCompletionAudioParam::Voice::TaggedSymbol + ) + ASH = + T.let( + :ash, + OpenAI::Chat::ChatCompletionAudioParam::Voice::TaggedSymbol + ) + BALLAD = + T.let( + :ballad, + OpenAI::Chat::ChatCompletionAudioParam::Voice::TaggedSymbol + ) + CORAL = + T.let( + :coral, + OpenAI::Chat::ChatCompletionAudioParam::Voice::TaggedSymbol + ) + ECHO = + T.let( + :echo, + OpenAI::Chat::ChatCompletionAudioParam::Voice::TaggedSymbol + ) + FABLE = + T.let( + :fable, + OpenAI::Chat::ChatCompletionAudioParam::Voice::TaggedSymbol + ) + ONYX = + T.let( + :onyx, + OpenAI::Chat::ChatCompletionAudioParam::Voice::TaggedSymbol + ) + NOVA = + T.let( + :nova, + OpenAI::Chat::ChatCompletionAudioParam::Voice::TaggedSymbol + ) + SAGE = + T.let( + :sage, + OpenAI::Chat::ChatCompletionAudioParam::Voice::TaggedSymbol + ) + SHIMMER = + T.let( + :shimmer, + OpenAI::Chat::ChatCompletionAudioParam::Voice::TaggedSymbol + ) + VERSE = + T.let( + :verse, + OpenAI::Chat::ChatCompletionAudioParam::Voice::TaggedSymbol + ) end end end diff --git a/rbi/openai/models/chat/chat_completion_chunk.rbi b/rbi/openai/models/chat/chat_completion_chunk.rbi index e5905846..c495ed49 100644 --- a/rbi/openai/models/chat/chat_completion_chunk.rbi +++ b/rbi/openai/models/chat/chat_completion_chunk.rbi @@ -6,6 +6,8 @@ module OpenAI module Chat class ChatCompletionChunk < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # A unique identifier for the chat completion. Each chunk has the same ID. sig { returns(String) } attr_accessor :id @@ -13,7 +15,7 @@ module OpenAI # A list of chat completion choices. Can contain more than one elements if `n` is # greater than 1. Can also be empty for the last chunk if you set # `stream_options: {"include_usage": true}`. - sig { returns(T::Array[OpenAI::Models::Chat::ChatCompletionChunk::Choice]) } + sig { returns(T::Array[OpenAI::Chat::ChatCompletionChunk::Choice]) } attr_accessor :choices # The Unix timestamp (in seconds) of when the chat completion was created. Each @@ -46,7 +48,13 @@ module OpenAI # # When this parameter is set, the response body will include the `service_tier` # utilized. - sig { returns(T.nilable(OpenAI::Models::Chat::ChatCompletionChunk::ServiceTier::TaggedSymbol)) } + sig do + returns( + T.nilable( + OpenAI::Chat::ChatCompletionChunk::ServiceTier::TaggedSymbol + ) + ) + end attr_accessor :service_tier # This fingerprint represents the backend configuration that the model runs with. @@ -65,10 +73,10 @@ module OpenAI # # **NOTE:** If the stream is interrupted or cancelled, you may not receive the # final usage chunk which contains the total token usage for the request. - sig { returns(T.nilable(OpenAI::Models::CompletionUsage)) } + sig { returns(T.nilable(OpenAI::CompletionUsage)) } attr_reader :usage - sig { params(usage: T.nilable(T.any(OpenAI::Models::CompletionUsage, OpenAI::Internal::AnyHash))).void } + sig { params(usage: T.nilable(OpenAI::CompletionUsage::OrHash)).void } attr_writer :usage # Represents a streamed chunk of a chat completion response returned by the model, @@ -77,15 +85,18 @@ module OpenAI sig do params( id: String, - choices: T::Array[T.any(OpenAI::Models::Chat::ChatCompletionChunk::Choice, OpenAI::Internal::AnyHash)], + choices: + T::Array[OpenAI::Chat::ChatCompletionChunk::Choice::OrHash], created: Integer, model: String, - service_tier: T.nilable(OpenAI::Models::Chat::ChatCompletionChunk::ServiceTier::OrSymbol), + service_tier: + T.nilable( + OpenAI::Chat::ChatCompletionChunk::ServiceTier::OrSymbol + ), system_fingerprint: String, - usage: T.nilable(T.any(OpenAI::Models::CompletionUsage, OpenAI::Internal::AnyHash)), + usage: T.nilable(OpenAI::CompletionUsage::OrHash), object: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # A unique identifier for the chat completion. Each chunk has the same ID. @@ -131,32 +142,41 @@ module OpenAI usage: nil, # The object type, which is always `chat.completion.chunk`. object: :"chat.completion.chunk" - ); end + ) + end + sig do - override - .returns( - { - id: String, - choices: T::Array[OpenAI::Models::Chat::ChatCompletionChunk::Choice], - created: Integer, - model: String, - object: Symbol, - service_tier: T.nilable(OpenAI::Models::Chat::ChatCompletionChunk::ServiceTier::TaggedSymbol), - system_fingerprint: String, - usage: T.nilable(OpenAI::Models::CompletionUsage) - } - ) + override.returns( + { + id: String, + choices: T::Array[OpenAI::Chat::ChatCompletionChunk::Choice], + created: Integer, + model: String, + object: Symbol, + service_tier: + T.nilable( + OpenAI::Chat::ChatCompletionChunk::ServiceTier::TaggedSymbol + ), + system_fingerprint: String, + usage: T.nilable(OpenAI::CompletionUsage) + } + ) + end + def to_hash end - def to_hash; end class Choice < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # A chat completion delta generated by streamed model responses. - sig { returns(OpenAI::Models::Chat::ChatCompletionChunk::Choice::Delta) } + sig { returns(OpenAI::Chat::ChatCompletionChunk::Choice::Delta) } attr_reader :delta sig do - params(delta: T.any(OpenAI::Models::Chat::ChatCompletionChunk::Choice::Delta, OpenAI::Internal::AnyHash)) - .void + params( + delta: OpenAI::Chat::ChatCompletionChunk::Choice::Delta::OrHash + ).void end attr_writer :delta @@ -166,7 +186,13 @@ module OpenAI # content was omitted due to a flag from our content filters, `tool_calls` if the # model called a tool, or `function_call` (deprecated) if the model called a # function. - sig { returns(T.nilable(OpenAI::Models::Chat::ChatCompletionChunk::Choice::FinishReason::TaggedSymbol)) } + sig do + returns( + T.nilable( + OpenAI::Chat::ChatCompletionChunk::Choice::FinishReason::TaggedSymbol + ) + ) + end attr_accessor :finish_reason # The index of the choice in the list of choices. @@ -174,25 +200,36 @@ module OpenAI attr_accessor :index # Log probability information for the choice. - sig { returns(T.nilable(OpenAI::Models::Chat::ChatCompletionChunk::Choice::Logprobs)) } + sig do + returns( + T.nilable(OpenAI::Chat::ChatCompletionChunk::Choice::Logprobs) + ) + end attr_reader :logprobs sig do params( - logprobs: T.nilable(T.any(OpenAI::Models::Chat::ChatCompletionChunk::Choice::Logprobs, OpenAI::Internal::AnyHash)) - ) - .void + logprobs: + T.nilable( + OpenAI::Chat::ChatCompletionChunk::Choice::Logprobs::OrHash + ) + ).void end attr_writer :logprobs sig do params( - delta: T.any(OpenAI::Models::Chat::ChatCompletionChunk::Choice::Delta, OpenAI::Internal::AnyHash), - finish_reason: T.nilable(OpenAI::Models::Chat::ChatCompletionChunk::Choice::FinishReason::OrSymbol), + delta: OpenAI::Chat::ChatCompletionChunk::Choice::Delta::OrHash, + finish_reason: + T.nilable( + OpenAI::Chat::ChatCompletionChunk::Choice::FinishReason::OrSymbol + ), index: Integer, - logprobs: T.nilable(T.any(OpenAI::Models::Chat::ChatCompletionChunk::Choice::Logprobs, OpenAI::Internal::AnyHash)) - ) - .returns(T.attached_class) + logprobs: + T.nilable( + OpenAI::Chat::ChatCompletionChunk::Choice::Logprobs::OrHash + ) + ).returns(T.attached_class) end def self.new( # A chat completion delta generated by streamed model responses. @@ -208,35 +245,50 @@ module OpenAI index:, # Log probability information for the choice. logprobs: nil - ); end + ) + end + sig do - override - .returns( - { - delta: OpenAI::Models::Chat::ChatCompletionChunk::Choice::Delta, - finish_reason: T.nilable(OpenAI::Models::Chat::ChatCompletionChunk::Choice::FinishReason::TaggedSymbol), - index: Integer, - logprobs: T.nilable(OpenAI::Models::Chat::ChatCompletionChunk::Choice::Logprobs) - } - ) + override.returns( + { + delta: OpenAI::Chat::ChatCompletionChunk::Choice::Delta, + finish_reason: + T.nilable( + OpenAI::Chat::ChatCompletionChunk::Choice::FinishReason::TaggedSymbol + ), + index: Integer, + logprobs: + T.nilable(OpenAI::Chat::ChatCompletionChunk::Choice::Logprobs) + } + ) + end + def to_hash end - def to_hash; end class Delta < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The contents of the chunk message. sig { returns(T.nilable(String)) } attr_accessor :content # Deprecated and replaced by `tool_calls`. The name and arguments of a function # that should be called, as generated by the model. - sig { returns(T.nilable(OpenAI::Models::Chat::ChatCompletionChunk::Choice::Delta::FunctionCall)) } + sig do + returns( + T.nilable( + OpenAI::Chat::ChatCompletionChunk::Choice::Delta::FunctionCall + ) + ) + end attr_reader :function_call sig do params( - function_call: T.any(OpenAI::Models::Chat::ChatCompletionChunk::Choice::Delta::FunctionCall, OpenAI::Internal::AnyHash) - ) - .void + function_call: + OpenAI::Chat::ChatCompletionChunk::Choice::Delta::FunctionCall::OrHash + ).void end attr_writer :function_call @@ -245,20 +297,41 @@ module OpenAI attr_accessor :refusal # The role of the author of this message. - sig { returns(T.nilable(OpenAI::Models::Chat::ChatCompletionChunk::Choice::Delta::Role::TaggedSymbol)) } + sig do + returns( + T.nilable( + OpenAI::Chat::ChatCompletionChunk::Choice::Delta::Role::TaggedSymbol + ) + ) + end attr_reader :role - sig { params(role: OpenAI::Models::Chat::ChatCompletionChunk::Choice::Delta::Role::OrSymbol).void } + sig do + params( + role: + OpenAI::Chat::ChatCompletionChunk::Choice::Delta::Role::OrSymbol + ).void + end attr_writer :role - sig { returns(T.nilable(T::Array[OpenAI::Models::Chat::ChatCompletionChunk::Choice::Delta::ToolCall])) } + sig do + returns( + T.nilable( + T::Array[ + OpenAI::Chat::ChatCompletionChunk::Choice::Delta::ToolCall + ] + ) + ) + end attr_reader :tool_calls sig do params( - tool_calls: T::Array[T.any(OpenAI::Models::Chat::ChatCompletionChunk::Choice::Delta::ToolCall, OpenAI::Internal::AnyHash)] - ) - .void + tool_calls: + T::Array[ + OpenAI::Chat::ChatCompletionChunk::Choice::Delta::ToolCall::OrHash + ] + ).void end attr_writer :tool_calls @@ -266,12 +339,16 @@ module OpenAI sig do params( content: T.nilable(String), - function_call: T.any(OpenAI::Models::Chat::ChatCompletionChunk::Choice::Delta::FunctionCall, OpenAI::Internal::AnyHash), + function_call: + OpenAI::Chat::ChatCompletionChunk::Choice::Delta::FunctionCall::OrHash, refusal: T.nilable(String), - role: OpenAI::Models::Chat::ChatCompletionChunk::Choice::Delta::Role::OrSymbol, - tool_calls: T::Array[T.any(OpenAI::Models::Chat::ChatCompletionChunk::Choice::Delta::ToolCall, OpenAI::Internal::AnyHash)] - ) - .returns(T.attached_class) + role: + OpenAI::Chat::ChatCompletionChunk::Choice::Delta::Role::OrSymbol, + tool_calls: + T::Array[ + OpenAI::Chat::ChatCompletionChunk::Choice::Delta::ToolCall::OrHash + ] + ).returns(T.attached_class) end def self.new( # The contents of the chunk message. @@ -284,22 +361,32 @@ module OpenAI # The role of the author of this message. role: nil, tool_calls: nil - ); end + ) + end + sig do - override - .returns( - { - content: T.nilable(String), - function_call: OpenAI::Models::Chat::ChatCompletionChunk::Choice::Delta::FunctionCall, - refusal: T.nilable(String), - role: OpenAI::Models::Chat::ChatCompletionChunk::Choice::Delta::Role::TaggedSymbol, - tool_calls: T::Array[OpenAI::Models::Chat::ChatCompletionChunk::Choice::Delta::ToolCall] - } - ) + override.returns( + { + content: T.nilable(String), + function_call: + OpenAI::Chat::ChatCompletionChunk::Choice::Delta::FunctionCall, + refusal: T.nilable(String), + role: + OpenAI::Chat::ChatCompletionChunk::Choice::Delta::Role::TaggedSymbol, + tool_calls: + T::Array[ + OpenAI::Chat::ChatCompletionChunk::Choice::Delta::ToolCall + ] + } + ) + end + def to_hash end - def to_hash; end class FunctionCall < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The arguments to call the function with, as generated by the model in JSON # format. Note that the model does not always generate valid JSON, and may # hallucinate parameters not defined by your function schema. Validate the @@ -319,7 +406,11 @@ module OpenAI # Deprecated and replaced by `tool_calls`. The name and arguments of a function # that should be called, as generated by the model. - sig { params(arguments: String, name: String).returns(T.attached_class) } + sig do + params(arguments: String, name: String).returns( + T.attached_class + ) + end def self.new( # The arguments to call the function with, as generated by the model in JSON # format. Note that the model does not always generate valid JSON, and may @@ -328,9 +419,12 @@ module OpenAI arguments: nil, # The name of the function to call. name: nil - ); end - sig { override.returns({arguments: String, name: String}) } - def to_hash; end + ) + end + + sig { override.returns({ arguments: String, name: String }) } + def to_hash + end end # The role of the author of this message. @@ -338,22 +432,55 @@ module OpenAI extend OpenAI::Internal::Type::Enum TaggedSymbol = - T.type_alias { T.all(Symbol, OpenAI::Models::Chat::ChatCompletionChunk::Choice::Delta::Role) } + T.type_alias do + T.all( + Symbol, + OpenAI::Chat::ChatCompletionChunk::Choice::Delta::Role + ) + end OrSymbol = T.type_alias { T.any(Symbol, String) } DEVELOPER = - T.let(:developer, OpenAI::Models::Chat::ChatCompletionChunk::Choice::Delta::Role::TaggedSymbol) - SYSTEM = T.let(:system, OpenAI::Models::Chat::ChatCompletionChunk::Choice::Delta::Role::TaggedSymbol) - USER = T.let(:user, OpenAI::Models::Chat::ChatCompletionChunk::Choice::Delta::Role::TaggedSymbol) + T.let( + :developer, + OpenAI::Chat::ChatCompletionChunk::Choice::Delta::Role::TaggedSymbol + ) + SYSTEM = + T.let( + :system, + OpenAI::Chat::ChatCompletionChunk::Choice::Delta::Role::TaggedSymbol + ) + USER = + T.let( + :user, + OpenAI::Chat::ChatCompletionChunk::Choice::Delta::Role::TaggedSymbol + ) ASSISTANT = - T.let(:assistant, OpenAI::Models::Chat::ChatCompletionChunk::Choice::Delta::Role::TaggedSymbol) - TOOL = T.let(:tool, OpenAI::Models::Chat::ChatCompletionChunk::Choice::Delta::Role::TaggedSymbol) + T.let( + :assistant, + OpenAI::Chat::ChatCompletionChunk::Choice::Delta::Role::TaggedSymbol + ) + TOOL = + T.let( + :tool, + OpenAI::Chat::ChatCompletionChunk::Choice::Delta::Role::TaggedSymbol + ) - sig { override.returns(T::Array[OpenAI::Models::Chat::ChatCompletionChunk::Choice::Delta::Role::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[ + OpenAI::Chat::ChatCompletionChunk::Choice::Delta::Role::TaggedSymbol + ] + ) + end + def self.values + end end class ToolCall < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + sig { returns(Integer) } attr_accessor :index @@ -364,38 +491,50 @@ module OpenAI sig { params(id: String).void } attr_writer :id - sig { returns(T.nilable(OpenAI::Models::Chat::ChatCompletionChunk::Choice::Delta::ToolCall::Function)) } + sig do + returns( + T.nilable( + OpenAI::Chat::ChatCompletionChunk::Choice::Delta::ToolCall::Function + ) + ) + end attr_reader :function sig do params( - function: T.any( - OpenAI::Models::Chat::ChatCompletionChunk::Choice::Delta::ToolCall::Function, - OpenAI::Internal::AnyHash - ) - ) - .void + function: + OpenAI::Chat::ChatCompletionChunk::Choice::Delta::ToolCall::Function::OrHash + ).void end attr_writer :function # The type of the tool. Currently, only `function` is supported. - sig { returns(T.nilable(OpenAI::Models::Chat::ChatCompletionChunk::Choice::Delta::ToolCall::Type::TaggedSymbol)) } + sig do + returns( + T.nilable( + OpenAI::Chat::ChatCompletionChunk::Choice::Delta::ToolCall::Type::TaggedSymbol + ) + ) + end attr_reader :type - sig { params(type: OpenAI::Models::Chat::ChatCompletionChunk::Choice::Delta::ToolCall::Type::OrSymbol).void } + sig do + params( + type: + OpenAI::Chat::ChatCompletionChunk::Choice::Delta::ToolCall::Type::OrSymbol + ).void + end attr_writer :type sig do params( index: Integer, id: String, - function: T.any( - OpenAI::Models::Chat::ChatCompletionChunk::Choice::Delta::ToolCall::Function, - OpenAI::Internal::AnyHash - ), - type: OpenAI::Models::Chat::ChatCompletionChunk::Choice::Delta::ToolCall::Type::OrSymbol - ) - .returns(T.attached_class) + function: + OpenAI::Chat::ChatCompletionChunk::Choice::Delta::ToolCall::Function::OrHash, + type: + OpenAI::Chat::ChatCompletionChunk::Choice::Delta::ToolCall::Type::OrSymbol + ).returns(T.attached_class) end def self.new( index:, @@ -404,21 +543,28 @@ module OpenAI function: nil, # The type of the tool. Currently, only `function` is supported. type: nil - ); end + ) + end + sig do - override - .returns( - { - index: Integer, - id: String, - function: OpenAI::Models::Chat::ChatCompletionChunk::Choice::Delta::ToolCall::Function, - type: OpenAI::Models::Chat::ChatCompletionChunk::Choice::Delta::ToolCall::Type::TaggedSymbol - } - ) + override.returns( + { + index: Integer, + id: String, + function: + OpenAI::Chat::ChatCompletionChunk::Choice::Delta::ToolCall::Function, + type: + OpenAI::Chat::ChatCompletionChunk::Choice::Delta::ToolCall::Type::TaggedSymbol + } + ) + end + def to_hash end - def to_hash; end class Function < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The arguments to call the function with, as generated by the model in JSON # format. Note that the model does not always generate valid JSON, and may # hallucinate parameters not defined by your function schema. Validate the @@ -436,7 +582,11 @@ module OpenAI sig { params(name: String).void } attr_writer :name - sig { params(arguments: String, name: String).returns(T.attached_class) } + sig do + params(arguments: String, name: String).returns( + T.attached_class + ) + end def self.new( # The arguments to call the function with, as generated by the model in JSON # format. Note that the model does not always generate valid JSON, and may @@ -445,9 +595,12 @@ module OpenAI arguments: nil, # The name of the function to call. name: nil - ); end - sig { override.returns({arguments: String, name: String}) } - def to_hash; end + ) + end + + sig { override.returns({ arguments: String, name: String }) } + def to_hash + end end # The type of the tool. Currently, only `function` is supported. @@ -455,17 +608,29 @@ module OpenAI extend OpenAI::Internal::Type::Enum TaggedSymbol = - T.type_alias { T.all(Symbol, OpenAI::Models::Chat::ChatCompletionChunk::Choice::Delta::ToolCall::Type) } + T.type_alias do + T.all( + Symbol, + OpenAI::Chat::ChatCompletionChunk::Choice::Delta::ToolCall::Type + ) + end OrSymbol = T.type_alias { T.any(Symbol, String) } FUNCTION = - T.let(:function, OpenAI::Models::Chat::ChatCompletionChunk::Choice::Delta::ToolCall::Type::TaggedSymbol) + T.let( + :function, + OpenAI::Chat::ChatCompletionChunk::Choice::Delta::ToolCall::Type::TaggedSymbol + ) sig do - override - .returns(T::Array[OpenAI::Models::Chat::ChatCompletionChunk::Choice::Delta::ToolCall::Type::TaggedSymbol]) + override.returns( + T::Array[ + OpenAI::Chat::ChatCompletionChunk::Choice::Delta::ToolCall::Type::TaggedSymbol + ] + ) + end + def self.values end - def self.values; end end end end @@ -480,55 +645,108 @@ module OpenAI extend OpenAI::Internal::Type::Enum TaggedSymbol = - T.type_alias { T.all(Symbol, OpenAI::Models::Chat::ChatCompletionChunk::Choice::FinishReason) } + T.type_alias do + T.all( + Symbol, + OpenAI::Chat::ChatCompletionChunk::Choice::FinishReason + ) + end OrSymbol = T.type_alias { T.any(Symbol, String) } - STOP = T.let(:stop, OpenAI::Models::Chat::ChatCompletionChunk::Choice::FinishReason::TaggedSymbol) - LENGTH = T.let(:length, OpenAI::Models::Chat::ChatCompletionChunk::Choice::FinishReason::TaggedSymbol) + STOP = + T.let( + :stop, + OpenAI::Chat::ChatCompletionChunk::Choice::FinishReason::TaggedSymbol + ) + LENGTH = + T.let( + :length, + OpenAI::Chat::ChatCompletionChunk::Choice::FinishReason::TaggedSymbol + ) TOOL_CALLS = - T.let(:tool_calls, OpenAI::Models::Chat::ChatCompletionChunk::Choice::FinishReason::TaggedSymbol) + T.let( + :tool_calls, + OpenAI::Chat::ChatCompletionChunk::Choice::FinishReason::TaggedSymbol + ) CONTENT_FILTER = - T.let(:content_filter, OpenAI::Models::Chat::ChatCompletionChunk::Choice::FinishReason::TaggedSymbol) + T.let( + :content_filter, + OpenAI::Chat::ChatCompletionChunk::Choice::FinishReason::TaggedSymbol + ) FUNCTION_CALL = - T.let(:function_call, OpenAI::Models::Chat::ChatCompletionChunk::Choice::FinishReason::TaggedSymbol) + T.let( + :function_call, + OpenAI::Chat::ChatCompletionChunk::Choice::FinishReason::TaggedSymbol + ) - sig { override.returns(T::Array[OpenAI::Models::Chat::ChatCompletionChunk::Choice::FinishReason::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[ + OpenAI::Chat::ChatCompletionChunk::Choice::FinishReason::TaggedSymbol + ] + ) + end + def self.values + end end class Logprobs < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # A list of message content tokens with log probability information. - sig { returns(T.nilable(T::Array[OpenAI::Models::Chat::ChatCompletionTokenLogprob])) } + sig do + returns( + T.nilable(T::Array[OpenAI::Chat::ChatCompletionTokenLogprob]) + ) + end attr_accessor :content # A list of message refusal tokens with log probability information. - sig { returns(T.nilable(T::Array[OpenAI::Models::Chat::ChatCompletionTokenLogprob])) } + sig do + returns( + T.nilable(T::Array[OpenAI::Chat::ChatCompletionTokenLogprob]) + ) + end attr_accessor :refusal # Log probability information for the choice. sig do params( - content: T.nilable(T::Array[T.any(OpenAI::Models::Chat::ChatCompletionTokenLogprob, OpenAI::Internal::AnyHash)]), - refusal: T.nilable(T::Array[T.any(OpenAI::Models::Chat::ChatCompletionTokenLogprob, OpenAI::Internal::AnyHash)]) - ) - .returns(T.attached_class) + content: + T.nilable( + T::Array[OpenAI::Chat::ChatCompletionTokenLogprob::OrHash] + ), + refusal: + T.nilable( + T::Array[OpenAI::Chat::ChatCompletionTokenLogprob::OrHash] + ) + ).returns(T.attached_class) end def self.new( # A list of message content tokens with log probability information. content:, # A list of message refusal tokens with log probability information. refusal: - ); end + ) + end + sig do - override - .returns( - { - content: T.nilable(T::Array[OpenAI::Models::Chat::ChatCompletionTokenLogprob]), - refusal: T.nilable(T::Array[OpenAI::Models::Chat::ChatCompletionTokenLogprob]) - } - ) + override.returns( + { + content: + T.nilable( + T::Array[OpenAI::Chat::ChatCompletionTokenLogprob] + ), + refusal: + T.nilable( + T::Array[OpenAI::Chat::ChatCompletionTokenLogprob] + ) + } + ) + end + def to_hash end - def to_hash; end end end @@ -552,15 +770,37 @@ module OpenAI module ServiceTier extend OpenAI::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::Chat::ChatCompletionChunk::ServiceTier) } + TaggedSymbol = + T.type_alias do + T.all(Symbol, OpenAI::Chat::ChatCompletionChunk::ServiceTier) + end OrSymbol = T.type_alias { T.any(Symbol, String) } - AUTO = T.let(:auto, OpenAI::Models::Chat::ChatCompletionChunk::ServiceTier::TaggedSymbol) - DEFAULT = T.let(:default, OpenAI::Models::Chat::ChatCompletionChunk::ServiceTier::TaggedSymbol) - FLEX = T.let(:flex, OpenAI::Models::Chat::ChatCompletionChunk::ServiceTier::TaggedSymbol) + AUTO = + T.let( + :auto, + OpenAI::Chat::ChatCompletionChunk::ServiceTier::TaggedSymbol + ) + DEFAULT = + T.let( + :default, + OpenAI::Chat::ChatCompletionChunk::ServiceTier::TaggedSymbol + ) + FLEX = + T.let( + :flex, + OpenAI::Chat::ChatCompletionChunk::ServiceTier::TaggedSymbol + ) - sig { override.returns(T::Array[OpenAI::Models::Chat::ChatCompletionChunk::ServiceTier::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[ + OpenAI::Chat::ChatCompletionChunk::ServiceTier::TaggedSymbol + ] + ) + end + def self.values + end end end end diff --git a/rbi/openai/models/chat/chat_completion_content_part.rbi b/rbi/openai/models/chat/chat_completion_content_part.rbi index beb80345..dbe8d522 100644 --- a/rbi/openai/models/chat/chat_completion_content_part.rbi +++ b/rbi/openai/models/chat/chat_completion_content_part.rbi @@ -10,15 +10,27 @@ module OpenAI module ChatCompletionContentPart extend OpenAI::Internal::Type::Union + Variants = + T.type_alias do + T.any( + OpenAI::Chat::ChatCompletionContentPartText, + OpenAI::Chat::ChatCompletionContentPartImage, + OpenAI::Chat::ChatCompletionContentPartInputAudio, + OpenAI::Chat::ChatCompletionContentPart::File + ) + end + class File < OpenAI::Internal::Type::BaseModel - sig { returns(OpenAI::Models::Chat::ChatCompletionContentPart::File::File) } + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + + sig { returns(OpenAI::Chat::ChatCompletionContentPart::File::File) } attr_reader :file sig do params( - file: T.any(OpenAI::Models::Chat::ChatCompletionContentPart::File::File, OpenAI::Internal::AnyHash) - ) - .void + file: OpenAI::Chat::ChatCompletionContentPart::File::File::OrHash + ).void end attr_writer :file @@ -30,20 +42,32 @@ module OpenAI # generation. sig do params( - file: T.any(OpenAI::Models::Chat::ChatCompletionContentPart::File::File, OpenAI::Internal::AnyHash), + file: OpenAI::Chat::ChatCompletionContentPart::File::File::OrHash, type: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( file:, # The type of the content part. Always `file`. type: :file - ); end - sig { override.returns({file: OpenAI::Models::Chat::ChatCompletionContentPart::File::File, type: Symbol}) } - def to_hash; end + ) + end + + sig do + override.returns( + { + file: OpenAI::Chat::ChatCompletionContentPart::File::File, + type: Symbol + } + ) + end + def to_hash + end class File < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The base64 encoded file data, used when passing the file to the model as a # string. sig { returns(T.nilable(String)) } @@ -66,7 +90,13 @@ module OpenAI sig { params(filename: String).void } attr_writer :filename - sig { params(file_data: String, file_id: String, filename: String).returns(T.attached_class) } + sig do + params( + file_data: String, + file_id: String, + filename: String + ).returns(T.attached_class) + end def self.new( # The base64 encoded file data, used when passing the file to the model as a # string. @@ -75,19 +105,26 @@ module OpenAI file_id: nil, # The name of the file, used when passing the file to the model as a string. filename: nil - ); end - sig { override.returns({file_data: String, file_id: String, filename: String}) } - def to_hash; end + ) + end + + sig do + override.returns( + { file_data: String, file_id: String, filename: String } + ) + end + def to_hash + end end end sig do - override - .returns( - [OpenAI::Models::Chat::ChatCompletionContentPartText, OpenAI::Models::Chat::ChatCompletionContentPartImage, OpenAI::Models::Chat::ChatCompletionContentPartInputAudio, OpenAI::Models::Chat::ChatCompletionContentPart::File] - ) + override.returns( + T::Array[OpenAI::Chat::ChatCompletionContentPart::Variants] + ) + end + def self.variants end - def self.variants; end end end end diff --git a/rbi/openai/models/chat/chat_completion_content_part_image.rbi b/rbi/openai/models/chat/chat_completion_content_part_image.rbi index 83ae49c3..10b1a355 100644 --- a/rbi/openai/models/chat/chat_completion_content_part_image.rbi +++ b/rbi/openai/models/chat/chat_completion_content_part_image.rbi @@ -6,14 +6,16 @@ module OpenAI module Chat class ChatCompletionContentPartImage < OpenAI::Internal::Type::BaseModel - sig { returns(OpenAI::Models::Chat::ChatCompletionContentPartImage::ImageURL) } + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + + sig { returns(OpenAI::Chat::ChatCompletionContentPartImage::ImageURL) } attr_reader :image_url sig do params( - image_url: T.any(OpenAI::Models::Chat::ChatCompletionContentPartImage::ImageURL, OpenAI::Internal::AnyHash) - ) - .void + image_url: + OpenAI::Chat::ChatCompletionContentPartImage::ImageURL::OrHash + ).void end attr_writer :image_url @@ -24,40 +26,62 @@ module OpenAI # Learn about [image inputs](https://platform.openai.com/docs/guides/vision). sig do params( - image_url: T.any(OpenAI::Models::Chat::ChatCompletionContentPartImage::ImageURL, OpenAI::Internal::AnyHash), + image_url: + OpenAI::Chat::ChatCompletionContentPartImage::ImageURL::OrHash, type: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( image_url:, # The type of the content part. type: :image_url - ); end + ) + end + sig do - override.returns({image_url: OpenAI::Models::Chat::ChatCompletionContentPartImage::ImageURL, type: Symbol}) + override.returns( + { + image_url: OpenAI::Chat::ChatCompletionContentPartImage::ImageURL, + type: Symbol + } + ) + end + def to_hash end - def to_hash; end class ImageURL < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Either a URL of the image or the base64 encoded image data. sig { returns(String) } attr_accessor :url # Specifies the detail level of the image. Learn more in the # [Vision guide](https://platform.openai.com/docs/guides/vision#low-or-high-fidelity-image-understanding). - sig { returns(T.nilable(OpenAI::Models::Chat::ChatCompletionContentPartImage::ImageURL::Detail::OrSymbol)) } + sig do + returns( + T.nilable( + OpenAI::Chat::ChatCompletionContentPartImage::ImageURL::Detail::OrSymbol + ) + ) + end attr_reader :detail - sig { params(detail: OpenAI::Models::Chat::ChatCompletionContentPartImage::ImageURL::Detail::OrSymbol).void } + sig do + params( + detail: + OpenAI::Chat::ChatCompletionContentPartImage::ImageURL::Detail::OrSymbol + ).void + end attr_writer :detail sig do params( url: String, - detail: OpenAI::Models::Chat::ChatCompletionContentPartImage::ImageURL::Detail::OrSymbol - ) - .returns(T.attached_class) + detail: + OpenAI::Chat::ChatCompletionContentPartImage::ImageURL::Detail::OrSymbol + ).returns(T.attached_class) end def self.new( # Either a URL of the image or the base64 encoded image data. @@ -65,14 +89,20 @@ module OpenAI # Specifies the detail level of the image. Learn more in the # [Vision guide](https://platform.openai.com/docs/guides/vision#low-or-high-fidelity-image-understanding). detail: nil - ); end + ) + end + sig do - override - .returns( - {url: String, detail: OpenAI::Models::Chat::ChatCompletionContentPartImage::ImageURL::Detail::OrSymbol} - ) + override.returns( + { + url: String, + detail: + OpenAI::Chat::ChatCompletionContentPartImage::ImageURL::Detail::OrSymbol + } + ) + end + def to_hash end - def to_hash; end # Specifies the detail level of the image. Learn more in the # [Vision guide](https://platform.openai.com/docs/guides/vision#low-or-high-fidelity-image-understanding). @@ -80,18 +110,39 @@ module OpenAI extend OpenAI::Internal::Type::Enum TaggedSymbol = - T.type_alias { T.all(Symbol, OpenAI::Models::Chat::ChatCompletionContentPartImage::ImageURL::Detail) } + T.type_alias do + T.all( + Symbol, + OpenAI::Chat::ChatCompletionContentPartImage::ImageURL::Detail + ) + end OrSymbol = T.type_alias { T.any(Symbol, String) } - AUTO = T.let(:auto, OpenAI::Models::Chat::ChatCompletionContentPartImage::ImageURL::Detail::TaggedSymbol) - LOW = T.let(:low, OpenAI::Models::Chat::ChatCompletionContentPartImage::ImageURL::Detail::TaggedSymbol) - HIGH = T.let(:high, OpenAI::Models::Chat::ChatCompletionContentPartImage::ImageURL::Detail::TaggedSymbol) + AUTO = + T.let( + :auto, + OpenAI::Chat::ChatCompletionContentPartImage::ImageURL::Detail::TaggedSymbol + ) + LOW = + T.let( + :low, + OpenAI::Chat::ChatCompletionContentPartImage::ImageURL::Detail::TaggedSymbol + ) + HIGH = + T.let( + :high, + OpenAI::Chat::ChatCompletionContentPartImage::ImageURL::Detail::TaggedSymbol + ) sig do - override - .returns(T::Array[OpenAI::Models::Chat::ChatCompletionContentPartImage::ImageURL::Detail::TaggedSymbol]) + override.returns( + T::Array[ + OpenAI::Chat::ChatCompletionContentPartImage::ImageURL::Detail::TaggedSymbol + ] + ) + end + def self.values end - def self.values; end end end end diff --git a/rbi/openai/models/chat/chat_completion_content_part_input_audio.rbi b/rbi/openai/models/chat/chat_completion_content_part_input_audio.rbi index 412e8c32..f1f1270c 100644 --- a/rbi/openai/models/chat/chat_completion_content_part_input_audio.rbi +++ b/rbi/openai/models/chat/chat_completion_content_part_input_audio.rbi @@ -2,18 +2,23 @@ module OpenAI module Models - ChatCompletionContentPartInputAudio = Chat::ChatCompletionContentPartInputAudio + ChatCompletionContentPartInputAudio = + Chat::ChatCompletionContentPartInputAudio module Chat class ChatCompletionContentPartInputAudio < OpenAI::Internal::Type::BaseModel - sig { returns(OpenAI::Models::Chat::ChatCompletionContentPartInputAudio::InputAudio) } + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + + sig do + returns(OpenAI::Chat::ChatCompletionContentPartInputAudio::InputAudio) + end attr_reader :input_audio sig do params( - input_audio: T.any(OpenAI::Models::Chat::ChatCompletionContentPartInputAudio::InputAudio, OpenAI::Internal::AnyHash) - ) - .void + input_audio: + OpenAI::Chat::ChatCompletionContentPartInputAudio::InputAudio::OrHash + ).void end attr_writer :input_audio @@ -24,77 +29,106 @@ module OpenAI # Learn about [audio inputs](https://platform.openai.com/docs/guides/audio). sig do params( - input_audio: T.any(OpenAI::Models::Chat::ChatCompletionContentPartInputAudio::InputAudio, OpenAI::Internal::AnyHash), + input_audio: + OpenAI::Chat::ChatCompletionContentPartInputAudio::InputAudio::OrHash, type: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( input_audio:, # The type of the content part. Always `input_audio`. type: :input_audio - ); end + ) + end + sig do - override - .returns( - {input_audio: OpenAI::Models::Chat::ChatCompletionContentPartInputAudio::InputAudio, type: Symbol} - ) + override.returns( + { + input_audio: + OpenAI::Chat::ChatCompletionContentPartInputAudio::InputAudio, + type: Symbol + } + ) + end + def to_hash end - def to_hash; end class InputAudio < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Base64 encoded audio data. sig { returns(String) } attr_accessor :data # The format of the encoded audio data. Currently supports "wav" and "mp3". - sig { returns(OpenAI::Models::Chat::ChatCompletionContentPartInputAudio::InputAudio::Format::OrSymbol) } + sig do + returns( + OpenAI::Chat::ChatCompletionContentPartInputAudio::InputAudio::Format::OrSymbol + ) + end attr_accessor :format_ sig do params( data: String, - format_: OpenAI::Models::Chat::ChatCompletionContentPartInputAudio::InputAudio::Format::OrSymbol - ) - .returns(T.attached_class) + format_: + OpenAI::Chat::ChatCompletionContentPartInputAudio::InputAudio::Format::OrSymbol + ).returns(T.attached_class) end def self.new( # Base64 encoded audio data. data:, # The format of the encoded audio data. Currently supports "wav" and "mp3". format_: - ); end + ) + end + sig do - override - .returns( - { - data: String, - format_: OpenAI::Models::Chat::ChatCompletionContentPartInputAudio::InputAudio::Format::OrSymbol - } - ) + override.returns( + { + data: String, + format_: + OpenAI::Chat::ChatCompletionContentPartInputAudio::InputAudio::Format::OrSymbol + } + ) + end + def to_hash end - def to_hash; end # The format of the encoded audio data. Currently supports "wav" and "mp3". module Format extend OpenAI::Internal::Type::Enum TaggedSymbol = - T.type_alias { T.all(Symbol, OpenAI::Models::Chat::ChatCompletionContentPartInputAudio::InputAudio::Format) } + T.type_alias do + T.all( + Symbol, + OpenAI::Chat::ChatCompletionContentPartInputAudio::InputAudio::Format + ) + end OrSymbol = T.type_alias { T.any(Symbol, String) } WAV = - T.let(:wav, OpenAI::Models::Chat::ChatCompletionContentPartInputAudio::InputAudio::Format::TaggedSymbol) + T.let( + :wav, + OpenAI::Chat::ChatCompletionContentPartInputAudio::InputAudio::Format::TaggedSymbol + ) MP3 = - T.let(:mp3, OpenAI::Models::Chat::ChatCompletionContentPartInputAudio::InputAudio::Format::TaggedSymbol) + T.let( + :mp3, + OpenAI::Chat::ChatCompletionContentPartInputAudio::InputAudio::Format::TaggedSymbol + ) sig do - override - .returns( - T::Array[OpenAI::Models::Chat::ChatCompletionContentPartInputAudio::InputAudio::Format::TaggedSymbol] - ) + override.returns( + T::Array[ + OpenAI::Chat::ChatCompletionContentPartInputAudio::InputAudio::Format::TaggedSymbol + ] + ) + end + def self.values end - def self.values; end end end end diff --git a/rbi/openai/models/chat/chat_completion_content_part_refusal.rbi b/rbi/openai/models/chat/chat_completion_content_part_refusal.rbi index 4dbbaad1..73724c93 100644 --- a/rbi/openai/models/chat/chat_completion_content_part_refusal.rbi +++ b/rbi/openai/models/chat/chat_completion_content_part_refusal.rbi @@ -6,6 +6,8 @@ module OpenAI module Chat class ChatCompletionContentPartRefusal < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The refusal message generated by the model. sig { returns(String) } attr_accessor :refusal @@ -20,9 +22,12 @@ module OpenAI refusal:, # The type of the content part. type: :refusal - ); end - sig { override.returns({refusal: String, type: Symbol}) } - def to_hash; end + ) + end + + sig { override.returns({ refusal: String, type: Symbol }) } + def to_hash + end end end end diff --git a/rbi/openai/models/chat/chat_completion_content_part_text.rbi b/rbi/openai/models/chat/chat_completion_content_part_text.rbi index d9d89cc1..70aea8ec 100644 --- a/rbi/openai/models/chat/chat_completion_content_part_text.rbi +++ b/rbi/openai/models/chat/chat_completion_content_part_text.rbi @@ -6,6 +6,8 @@ module OpenAI module Chat class ChatCompletionContentPartText < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The text content. sig { returns(String) } attr_accessor :text @@ -22,9 +24,12 @@ module OpenAI text:, # The type of the content part. type: :text - ); end - sig { override.returns({text: String, type: Symbol}) } - def to_hash; end + ) + end + + sig { override.returns({ text: String, type: Symbol }) } + def to_hash + end end end end diff --git a/rbi/openai/models/chat/chat_completion_deleted.rbi b/rbi/openai/models/chat/chat_completion_deleted.rbi index 344fb3ef..f63fdc1d 100644 --- a/rbi/openai/models/chat/chat_completion_deleted.rbi +++ b/rbi/openai/models/chat/chat_completion_deleted.rbi @@ -6,6 +6,8 @@ module OpenAI module Chat class ChatCompletionDeleted < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The ID of the chat completion that was deleted. sig { returns(String) } attr_accessor :id @@ -18,7 +20,11 @@ module OpenAI sig { returns(Symbol) } attr_accessor :object - sig { params(id: String, deleted: T::Boolean, object: Symbol).returns(T.attached_class) } + sig do + params(id: String, deleted: T::Boolean, object: Symbol).returns( + T.attached_class + ) + end def self.new( # The ID of the chat completion that was deleted. id:, @@ -26,9 +32,14 @@ module OpenAI deleted:, # The type of object being deleted. object: :"chat.completion.deleted" - ); end - sig { override.returns({id: String, deleted: T::Boolean, object: Symbol}) } - def to_hash; end + ) + end + + sig do + override.returns({ id: String, deleted: T::Boolean, object: Symbol }) + end + def to_hash + end end end end diff --git a/rbi/openai/models/chat/chat_completion_developer_message_param.rbi b/rbi/openai/models/chat/chat_completion_developer_message_param.rbi index 7e1c7e21..956aaabe 100644 --- a/rbi/openai/models/chat/chat_completion_developer_message_param.rbi +++ b/rbi/openai/models/chat/chat_completion_developer_message_param.rbi @@ -2,12 +2,19 @@ module OpenAI module Models - ChatCompletionDeveloperMessageParam = Chat::ChatCompletionDeveloperMessageParam + ChatCompletionDeveloperMessageParam = + Chat::ChatCompletionDeveloperMessageParam module Chat class ChatCompletionDeveloperMessageParam < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The contents of the developer message. - sig { returns(T.any(String, T::Array[OpenAI::Models::Chat::ChatCompletionContentPartText])) } + sig do + returns( + T.any(String, T::Array[OpenAI::Chat::ChatCompletionContentPartText]) + ) + end attr_accessor :content # The role of the messages author, in this case `developer`. @@ -27,14 +34,14 @@ module OpenAI # replace the previous `system` messages. sig do params( - content: T.any( - String, - T::Array[T.any(OpenAI::Models::Chat::ChatCompletionContentPartText, OpenAI::Internal::AnyHash)] - ), + content: + T.any( + String, + T::Array[OpenAI::Chat::ChatCompletionContentPartText::OrHash] + ), name: String, role: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # The contents of the developer message. @@ -44,29 +51,52 @@ module OpenAI name: nil, # The role of the messages author, in this case `developer`. role: :developer - ); end + ) + end + sig do - override - .returns( - { - content: T.any(String, T::Array[OpenAI::Models::Chat::ChatCompletionContentPartText]), - role: Symbol, - name: String - } - ) + override.returns( + { + content: + T.any( + String, + T::Array[OpenAI::Chat::ChatCompletionContentPartText] + ), + role: Symbol, + name: String + } + ) + end + def to_hash end - def to_hash; end # The contents of the developer message. module Content extend OpenAI::Internal::Type::Union - sig { override.returns([String, T::Array[OpenAI::Models::Chat::ChatCompletionContentPartText]]) } - def self.variants; end + Variants = + T.type_alias do + T.any( + String, + T::Array[OpenAI::Chat::ChatCompletionContentPartText] + ) + end + + sig do + override.returns( + T::Array[ + OpenAI::Chat::ChatCompletionDeveloperMessageParam::Content::Variants + ] + ) + end + def self.variants + end ChatCompletionContentPartTextArray = T.let( - OpenAI::Internal::Type::ArrayOf[OpenAI::Models::Chat::ChatCompletionContentPartText], + OpenAI::Internal::Type::ArrayOf[ + OpenAI::Chat::ChatCompletionContentPartText + ], OpenAI::Internal::Type::Converter ) end diff --git a/rbi/openai/models/chat/chat_completion_function_call_option.rbi b/rbi/openai/models/chat/chat_completion_function_call_option.rbi index 56f38623..51a20194 100644 --- a/rbi/openai/models/chat/chat_completion_function_call_option.rbi +++ b/rbi/openai/models/chat/chat_completion_function_call_option.rbi @@ -6,6 +6,8 @@ module OpenAI module Chat class ChatCompletionFunctionCallOption < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The name of the function to call. sig { returns(String) } attr_accessor :name @@ -16,9 +18,12 @@ module OpenAI def self.new( # The name of the function to call. name: - ); end - sig { override.returns({name: String}) } - def to_hash; end + ) + end + + sig { override.returns({ name: String }) } + def to_hash + end end end end diff --git a/rbi/openai/models/chat/chat_completion_function_message_param.rbi b/rbi/openai/models/chat/chat_completion_function_message_param.rbi index 4bfeb555..d5029286 100644 --- a/rbi/openai/models/chat/chat_completion_function_message_param.rbi +++ b/rbi/openai/models/chat/chat_completion_function_message_param.rbi @@ -2,10 +2,13 @@ module OpenAI module Models - ChatCompletionFunctionMessageParam = Chat::ChatCompletionFunctionMessageParam + ChatCompletionFunctionMessageParam = + Chat::ChatCompletionFunctionMessageParam module Chat class ChatCompletionFunctionMessageParam < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The contents of the function message. sig { returns(T.nilable(String)) } attr_accessor :content @@ -18,7 +21,13 @@ module OpenAI sig { returns(Symbol) } attr_accessor :role - sig { params(content: T.nilable(String), name: String, role: Symbol).returns(T.attached_class) } + sig do + params( + content: T.nilable(String), + name: String, + role: Symbol + ).returns(T.attached_class) + end def self.new( # The contents of the function message. content:, @@ -26,9 +35,16 @@ module OpenAI name:, # The role of the messages author, in this case `function`. role: :function - ); end - sig { override.returns({content: T.nilable(String), name: String, role: Symbol}) } - def to_hash; end + ) + end + + sig do + override.returns( + { content: T.nilable(String), name: String, role: Symbol } + ) + end + def to_hash + end end end end diff --git a/rbi/openai/models/chat/chat_completion_message.rbi b/rbi/openai/models/chat/chat_completion_message.rbi index a1c9abf6..a7166480 100644 --- a/rbi/openai/models/chat/chat_completion_message.rbi +++ b/rbi/openai/models/chat/chat_completion_message.rbi @@ -6,6 +6,8 @@ module OpenAI module Chat class ChatCompletionMessage < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The contents of the message. sig { returns(T.nilable(String)) } attr_accessor :content @@ -20,48 +22,62 @@ module OpenAI # Annotations for the message, when applicable, as when using the # [web search tool](https://platform.openai.com/docs/guides/tools-web-search?api-mode=chat). - sig { returns(T.nilable(T::Array[OpenAI::Models::Chat::ChatCompletionMessage::Annotation])) } + sig do + returns( + T.nilable(T::Array[OpenAI::Chat::ChatCompletionMessage::Annotation]) + ) + end attr_reader :annotations sig do params( - annotations: T::Array[T.any(OpenAI::Models::Chat::ChatCompletionMessage::Annotation, OpenAI::Internal::AnyHash)] - ) - .void + annotations: + T::Array[OpenAI::Chat::ChatCompletionMessage::Annotation::OrHash] + ).void end attr_writer :annotations # If the audio output modality is requested, this object contains data about the # audio response from the model. # [Learn more](https://platform.openai.com/docs/guides/audio). - sig { returns(T.nilable(OpenAI::Models::Chat::ChatCompletionAudio)) } + sig { returns(T.nilable(OpenAI::Chat::ChatCompletionAudio)) } attr_reader :audio - sig { params(audio: T.nilable(T.any(OpenAI::Models::Chat::ChatCompletionAudio, OpenAI::Internal::AnyHash))).void } + sig do + params( + audio: T.nilable(OpenAI::Chat::ChatCompletionAudio::OrHash) + ).void + end attr_writer :audio # Deprecated and replaced by `tool_calls`. The name and arguments of a function # that should be called, as generated by the model. - sig { returns(T.nilable(OpenAI::Models::Chat::ChatCompletionMessage::FunctionCall)) } + sig do + returns(T.nilable(OpenAI::Chat::ChatCompletionMessage::FunctionCall)) + end attr_reader :function_call sig do params( - function_call: T.any(OpenAI::Models::Chat::ChatCompletionMessage::FunctionCall, OpenAI::Internal::AnyHash) - ) - .void + function_call: + OpenAI::Chat::ChatCompletionMessage::FunctionCall::OrHash + ).void end attr_writer :function_call # The tool calls generated by the model, such as function calls. - sig { returns(T.nilable(T::Array[OpenAI::Models::Chat::ChatCompletionMessageToolCall])) } + sig do + returns( + T.nilable(T::Array[OpenAI::Chat::ChatCompletionMessageToolCall]) + ) + end attr_reader :tool_calls sig do params( - tool_calls: T::Array[T.any(OpenAI::Models::Chat::ChatCompletionMessageToolCall, OpenAI::Internal::AnyHash)] - ) - .void + tool_calls: + T::Array[OpenAI::Chat::ChatCompletionMessageToolCall::OrHash] + ).void end attr_writer :tool_calls @@ -70,13 +86,15 @@ module OpenAI params( content: T.nilable(String), refusal: T.nilable(String), - annotations: T::Array[T.any(OpenAI::Models::Chat::ChatCompletionMessage::Annotation, OpenAI::Internal::AnyHash)], - audio: T.nilable(T.any(OpenAI::Models::Chat::ChatCompletionAudio, OpenAI::Internal::AnyHash)), - function_call: T.any(OpenAI::Models::Chat::ChatCompletionMessage::FunctionCall, OpenAI::Internal::AnyHash), - tool_calls: T::Array[T.any(OpenAI::Models::Chat::ChatCompletionMessageToolCall, OpenAI::Internal::AnyHash)], + annotations: + T::Array[OpenAI::Chat::ChatCompletionMessage::Annotation::OrHash], + audio: T.nilable(OpenAI::Chat::ChatCompletionAudio::OrHash), + function_call: + OpenAI::Chat::ChatCompletionMessage::FunctionCall::OrHash, + tool_calls: + T::Array[OpenAI::Chat::ChatCompletionMessageToolCall::OrHash], role: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # The contents of the message. @@ -97,63 +115,82 @@ module OpenAI tool_calls: nil, # The role of the author of this message. role: :assistant - ); end + ) + end + sig do - override - .returns( - { - content: T.nilable(String), - refusal: T.nilable(String), - role: Symbol, - annotations: T::Array[OpenAI::Models::Chat::ChatCompletionMessage::Annotation], - audio: T.nilable(OpenAI::Models::Chat::ChatCompletionAudio), - function_call: OpenAI::Models::Chat::ChatCompletionMessage::FunctionCall, - tool_calls: T::Array[OpenAI::Models::Chat::ChatCompletionMessageToolCall] - } - ) + override.returns( + { + content: T.nilable(String), + refusal: T.nilable(String), + role: Symbol, + annotations: + T::Array[OpenAI::Chat::ChatCompletionMessage::Annotation], + audio: T.nilable(OpenAI::Chat::ChatCompletionAudio), + function_call: OpenAI::Chat::ChatCompletionMessage::FunctionCall, + tool_calls: T::Array[OpenAI::Chat::ChatCompletionMessageToolCall] + } + ) + end + def to_hash end - def to_hash; end class Annotation < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The type of the URL citation. Always `url_citation`. sig { returns(Symbol) } attr_accessor :type # A URL citation when using web search. - sig { returns(OpenAI::Models::Chat::ChatCompletionMessage::Annotation::URLCitation) } + sig do + returns( + OpenAI::Chat::ChatCompletionMessage::Annotation::URLCitation + ) + end attr_reader :url_citation sig do params( - url_citation: T.any(OpenAI::Models::Chat::ChatCompletionMessage::Annotation::URLCitation, OpenAI::Internal::AnyHash) - ) - .void + url_citation: + OpenAI::Chat::ChatCompletionMessage::Annotation::URLCitation::OrHash + ).void end attr_writer :url_citation # A URL citation when using web search. sig do params( - url_citation: T.any(OpenAI::Models::Chat::ChatCompletionMessage::Annotation::URLCitation, OpenAI::Internal::AnyHash), + url_citation: + OpenAI::Chat::ChatCompletionMessage::Annotation::URLCitation::OrHash, type: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # A URL citation when using web search. url_citation:, # The type of the URL citation. Always `url_citation`. type: :url_citation - ); end + ) + end + sig do - override - .returns( - {type: Symbol, url_citation: OpenAI::Models::Chat::ChatCompletionMessage::Annotation::URLCitation} - ) + override.returns( + { + type: Symbol, + url_citation: + OpenAI::Chat::ChatCompletionMessage::Annotation::URLCitation + } + ) + end + def to_hash end - def to_hash; end class URLCitation < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The index of the last character of the URL citation in the message. sig { returns(Integer) } attr_accessor :end_index @@ -188,13 +225,28 @@ module OpenAI title:, # The URL of the web resource. url: - ); end - sig { override.returns({end_index: Integer, start_index: Integer, title: String, url: String}) } - def to_hash; end + ) + end + + sig do + override.returns( + { + end_index: Integer, + start_index: Integer, + title: String, + url: String + } + ) + end + def to_hash + end end end class FunctionCall < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The arguments to call the function with, as generated by the model in JSON # format. Note that the model does not always generate valid JSON, and may # hallucinate parameters not defined by your function schema. Validate the @@ -208,7 +260,9 @@ module OpenAI # Deprecated and replaced by `tool_calls`. The name and arguments of a function # that should be called, as generated by the model. - sig { params(arguments: String, name: String).returns(T.attached_class) } + sig do + params(arguments: String, name: String).returns(T.attached_class) + end def self.new( # The arguments to call the function with, as generated by the model in JSON # format. Note that the model does not always generate valid JSON, and may @@ -217,9 +271,12 @@ module OpenAI arguments:, # The name of the function to call. name: - ); end - sig { override.returns({arguments: String, name: String}) } - def to_hash; end + ) + end + + sig { override.returns({ arguments: String, name: String }) } + def to_hash + end end end end diff --git a/rbi/openai/models/chat/chat_completion_message_param.rbi b/rbi/openai/models/chat/chat_completion_message_param.rbi index 8a340084..ae3e1358 100644 --- a/rbi/openai/models/chat/chat_completion_message_param.rbi +++ b/rbi/openai/models/chat/chat_completion_message_param.rbi @@ -11,13 +11,25 @@ module OpenAI module ChatCompletionMessageParam extend OpenAI::Internal::Type::Union - sig do - override - .returns( - [OpenAI::Models::Chat::ChatCompletionDeveloperMessageParam, OpenAI::Models::Chat::ChatCompletionSystemMessageParam, OpenAI::Models::Chat::ChatCompletionUserMessageParam, OpenAI::Models::Chat::ChatCompletionAssistantMessageParam, OpenAI::Models::Chat::ChatCompletionToolMessageParam, OpenAI::Models::Chat::ChatCompletionFunctionMessageParam] + Variants = + T.type_alias do + T.any( + OpenAI::Chat::ChatCompletionDeveloperMessageParam, + OpenAI::Chat::ChatCompletionSystemMessageParam, + OpenAI::Chat::ChatCompletionUserMessageParam, + OpenAI::Chat::ChatCompletionAssistantMessageParam, + OpenAI::Chat::ChatCompletionToolMessageParam, + OpenAI::Chat::ChatCompletionFunctionMessageParam ) + end + + sig do + override.returns( + T::Array[OpenAI::Chat::ChatCompletionMessageParam::Variants] + ) + end + def self.variants end - def self.variants; end end end end diff --git a/rbi/openai/models/chat/chat_completion_message_tool_call.rbi b/rbi/openai/models/chat/chat_completion_message_tool_call.rbi index 85d78135..98f7b380 100644 --- a/rbi/openai/models/chat/chat_completion_message_tool_call.rbi +++ b/rbi/openai/models/chat/chat_completion_message_tool_call.rbi @@ -6,19 +6,21 @@ module OpenAI module Chat class ChatCompletionMessageToolCall < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The ID of the tool call. sig { returns(String) } attr_accessor :id # The function that the model called. - sig { returns(OpenAI::Models::Chat::ChatCompletionMessageToolCall::Function) } + sig { returns(OpenAI::Chat::ChatCompletionMessageToolCall::Function) } attr_reader :function sig do params( - function: T.any(OpenAI::Models::Chat::ChatCompletionMessageToolCall::Function, OpenAI::Internal::AnyHash) - ) - .void + function: + OpenAI::Chat::ChatCompletionMessageToolCall::Function::OrHash + ).void end attr_writer :function @@ -29,10 +31,10 @@ module OpenAI sig do params( id: String, - function: T.any(OpenAI::Models::Chat::ChatCompletionMessageToolCall::Function, OpenAI::Internal::AnyHash), + function: + OpenAI::Chat::ChatCompletionMessageToolCall::Function::OrHash, type: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # The ID of the tool call. @@ -41,16 +43,25 @@ module OpenAI function:, # The type of the tool. Currently, only `function` is supported. type: :function - ); end + ) + end + sig do - override - .returns( - {id: String, function: OpenAI::Models::Chat::ChatCompletionMessageToolCall::Function, type: Symbol} - ) + override.returns( + { + id: String, + function: OpenAI::Chat::ChatCompletionMessageToolCall::Function, + type: Symbol + } + ) + end + def to_hash end - def to_hash; end class Function < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The arguments to call the function with, as generated by the model in JSON # format. Note that the model does not always generate valid JSON, and may # hallucinate parameters not defined by your function schema. Validate the @@ -63,7 +74,9 @@ module OpenAI attr_accessor :name # The function that the model called. - sig { params(arguments: String, name: String).returns(T.attached_class) } + sig do + params(arguments: String, name: String).returns(T.attached_class) + end def self.new( # The arguments to call the function with, as generated by the model in JSON # format. Note that the model does not always generate valid JSON, and may @@ -72,9 +85,12 @@ module OpenAI arguments:, # The name of the function to call. name: - ); end - sig { override.returns({arguments: String, name: String}) } - def to_hash; end + ) + end + + sig { override.returns({ arguments: String, name: String }) } + def to_hash + end end end end diff --git a/rbi/openai/models/chat/chat_completion_modality.rbi b/rbi/openai/models/chat/chat_completion_modality.rbi index de02e647..e65aca82 100644 --- a/rbi/openai/models/chat/chat_completion_modality.rbi +++ b/rbi/openai/models/chat/chat_completion_modality.rbi @@ -8,14 +8,21 @@ module OpenAI module ChatCompletionModality extend OpenAI::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::Chat::ChatCompletionModality) } + TaggedSymbol = + T.type_alias { T.all(Symbol, OpenAI::Chat::ChatCompletionModality) } OrSymbol = T.type_alias { T.any(Symbol, String) } - TEXT = T.let(:text, OpenAI::Models::Chat::ChatCompletionModality::TaggedSymbol) - AUDIO = T.let(:audio, OpenAI::Models::Chat::ChatCompletionModality::TaggedSymbol) + TEXT = T.let(:text, OpenAI::Chat::ChatCompletionModality::TaggedSymbol) + AUDIO = + T.let(:audio, OpenAI::Chat::ChatCompletionModality::TaggedSymbol) - sig { override.returns(T::Array[OpenAI::Models::Chat::ChatCompletionModality::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[OpenAI::Chat::ChatCompletionModality::TaggedSymbol] + ) + end + def self.values + end end end end diff --git a/rbi/openai/models/chat/chat_completion_named_tool_choice.rbi b/rbi/openai/models/chat/chat_completion_named_tool_choice.rbi index 4380546a..42d4f7b5 100644 --- a/rbi/openai/models/chat/chat_completion_named_tool_choice.rbi +++ b/rbi/openai/models/chat/chat_completion_named_tool_choice.rbi @@ -6,14 +6,16 @@ module OpenAI module Chat class ChatCompletionNamedToolChoice < OpenAI::Internal::Type::BaseModel - sig { returns(OpenAI::Models::Chat::ChatCompletionNamedToolChoice::Function) } + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + + sig { returns(OpenAI::Chat::ChatCompletionNamedToolChoice::Function) } attr_reader :function sig do params( - function: T.any(OpenAI::Models::Chat::ChatCompletionNamedToolChoice::Function, OpenAI::Internal::AnyHash) - ) - .void + function: + OpenAI::Chat::ChatCompletionNamedToolChoice::Function::OrHash + ).void end attr_writer :function @@ -25,20 +27,33 @@ module OpenAI # function. sig do params( - function: T.any(OpenAI::Models::Chat::ChatCompletionNamedToolChoice::Function, OpenAI::Internal::AnyHash), + function: + OpenAI::Chat::ChatCompletionNamedToolChoice::Function::OrHash, type: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( function:, # The type of the tool. Currently, only `function` is supported. type: :function - ); end - sig { override.returns({function: OpenAI::Models::Chat::ChatCompletionNamedToolChoice::Function, type: Symbol}) } - def to_hash; end + ) + end + + sig do + override.returns( + { + function: OpenAI::Chat::ChatCompletionNamedToolChoice::Function, + type: Symbol + } + ) + end + def to_hash + end class Function < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The name of the function to call. sig { returns(String) } attr_accessor :name @@ -47,9 +62,12 @@ module OpenAI def self.new( # The name of the function to call. name: - ); end - sig { override.returns({name: String}) } - def to_hash; end + ) + end + + sig { override.returns({ name: String }) } + def to_hash + end end end end diff --git a/rbi/openai/models/chat/chat_completion_prediction_content.rbi b/rbi/openai/models/chat/chat_completion_prediction_content.rbi index 2bc5a26a..fa1a0fba 100644 --- a/rbi/openai/models/chat/chat_completion_prediction_content.rbi +++ b/rbi/openai/models/chat/chat_completion_prediction_content.rbi @@ -6,10 +6,16 @@ module OpenAI module Chat class ChatCompletionPredictionContent < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The content that should be matched when generating a model response. If # generated tokens would match this content, the entire model response can be # returned much more quickly. - sig { returns(T.any(String, T::Array[OpenAI::Models::Chat::ChatCompletionContentPartText])) } + sig do + returns( + T.any(String, T::Array[OpenAI::Chat::ChatCompletionContentPartText]) + ) + end attr_accessor :content # The type of the predicted content you want to provide. This type is currently @@ -21,13 +27,13 @@ module OpenAI # being regenerated. sig do params( - content: T.any( - String, - T::Array[T.any(OpenAI::Models::Chat::ChatCompletionContentPartText, OpenAI::Internal::AnyHash)] - ), + content: + T.any( + String, + T::Array[OpenAI::Chat::ChatCompletionContentPartText::OrHash] + ), type: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # The content that should be matched when generating a model response. If @@ -37,14 +43,23 @@ module OpenAI # The type of the predicted content you want to provide. This type is currently # always `content`. type: :content - ); end + ) + end + sig do - override - .returns( - {content: T.any(String, T::Array[OpenAI::Models::Chat::ChatCompletionContentPartText]), type: Symbol} - ) + override.returns( + { + content: + T.any( + String, + T::Array[OpenAI::Chat::ChatCompletionContentPartText] + ), + type: Symbol + } + ) + end + def to_hash end - def to_hash; end # The content that should be matched when generating a model response. If # generated tokens would match this content, the entire model response can be @@ -52,12 +67,29 @@ module OpenAI module Content extend OpenAI::Internal::Type::Union - sig { override.returns([String, T::Array[OpenAI::Models::Chat::ChatCompletionContentPartText]]) } - def self.variants; end + Variants = + T.type_alias do + T.any( + String, + T::Array[OpenAI::Chat::ChatCompletionContentPartText] + ) + end + + sig do + override.returns( + T::Array[ + OpenAI::Chat::ChatCompletionPredictionContent::Content::Variants + ] + ) + end + def self.variants + end ChatCompletionContentPartTextArray = T.let( - OpenAI::Internal::Type::ArrayOf[OpenAI::Models::Chat::ChatCompletionContentPartText], + OpenAI::Internal::Type::ArrayOf[ + OpenAI::Chat::ChatCompletionContentPartText + ], OpenAI::Internal::Type::Converter ) end diff --git a/rbi/openai/models/chat/chat_completion_role.rbi b/rbi/openai/models/chat/chat_completion_role.rbi index 46776b39..63f5fc3d 100644 --- a/rbi/openai/models/chat/chat_completion_role.rbi +++ b/rbi/openai/models/chat/chat_completion_role.rbi @@ -9,18 +9,27 @@ module OpenAI module ChatCompletionRole extend OpenAI::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::Chat::ChatCompletionRole) } + TaggedSymbol = + T.type_alias { T.all(Symbol, OpenAI::Chat::ChatCompletionRole) } OrSymbol = T.type_alias { T.any(Symbol, String) } - DEVELOPER = T.let(:developer, OpenAI::Models::Chat::ChatCompletionRole::TaggedSymbol) - SYSTEM = T.let(:system, OpenAI::Models::Chat::ChatCompletionRole::TaggedSymbol) - USER = T.let(:user, OpenAI::Models::Chat::ChatCompletionRole::TaggedSymbol) - ASSISTANT = T.let(:assistant, OpenAI::Models::Chat::ChatCompletionRole::TaggedSymbol) - TOOL = T.let(:tool, OpenAI::Models::Chat::ChatCompletionRole::TaggedSymbol) - FUNCTION = T.let(:function, OpenAI::Models::Chat::ChatCompletionRole::TaggedSymbol) + DEVELOPER = + T.let(:developer, OpenAI::Chat::ChatCompletionRole::TaggedSymbol) + SYSTEM = T.let(:system, OpenAI::Chat::ChatCompletionRole::TaggedSymbol) + USER = T.let(:user, OpenAI::Chat::ChatCompletionRole::TaggedSymbol) + ASSISTANT = + T.let(:assistant, OpenAI::Chat::ChatCompletionRole::TaggedSymbol) + TOOL = T.let(:tool, OpenAI::Chat::ChatCompletionRole::TaggedSymbol) + FUNCTION = + T.let(:function, OpenAI::Chat::ChatCompletionRole::TaggedSymbol) - sig { override.returns(T::Array[OpenAI::Models::Chat::ChatCompletionRole::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[OpenAI::Chat::ChatCompletionRole::TaggedSymbol] + ) + end + def self.values + end end end end diff --git a/rbi/openai/models/chat/chat_completion_store_message.rbi b/rbi/openai/models/chat/chat_completion_store_message.rbi index db4cc17e..67c86275 100644 --- a/rbi/openai/models/chat/chat_completion_store_message.rbi +++ b/rbi/openai/models/chat/chat_completion_store_message.rbi @@ -6,6 +6,8 @@ module OpenAI module Chat class ChatCompletionStoreMessage < OpenAI::Models::Chat::ChatCompletionMessage + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The identifier of the chat message. sig { returns(String) } attr_accessor :id @@ -15,9 +17,12 @@ module OpenAI def self.new( # The identifier of the chat message. id: - ); end - sig { override.returns({id: String}) } - def to_hash; end + ) + end + + sig { override.returns({ id: String }) } + def to_hash + end end end end diff --git a/rbi/openai/models/chat/chat_completion_stream_options.rbi b/rbi/openai/models/chat/chat_completion_stream_options.rbi index 8a28c8ab..4ac025c0 100644 --- a/rbi/openai/models/chat/chat_completion_stream_options.rbi +++ b/rbi/openai/models/chat/chat_completion_stream_options.rbi @@ -6,6 +6,8 @@ module OpenAI module Chat class ChatCompletionStreamOptions < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # If set, an additional chunk will be streamed before the `data: [DONE]` message. # The `usage` field on this chunk shows the token usage statistics for the entire # request, and the `choices` field will always be an empty array. @@ -30,9 +32,12 @@ module OpenAI # **NOTE:** If the stream is interrupted, you may not receive the final usage # chunk which contains the total token usage for the request. include_usage: nil - ); end - sig { override.returns({include_usage: T::Boolean}) } - def to_hash; end + ) + end + + sig { override.returns({ include_usage: T::Boolean }) } + def to_hash + end end end end diff --git a/rbi/openai/models/chat/chat_completion_system_message_param.rbi b/rbi/openai/models/chat/chat_completion_system_message_param.rbi index 5578d9e7..099a437a 100644 --- a/rbi/openai/models/chat/chat_completion_system_message_param.rbi +++ b/rbi/openai/models/chat/chat_completion_system_message_param.rbi @@ -6,8 +6,14 @@ module OpenAI module Chat class ChatCompletionSystemMessageParam < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The contents of the system message. - sig { returns(T.any(String, T::Array[OpenAI::Models::Chat::ChatCompletionContentPartText])) } + sig do + returns( + T.any(String, T::Array[OpenAI::Chat::ChatCompletionContentPartText]) + ) + end attr_accessor :content # The role of the messages author, in this case `system`. @@ -27,14 +33,14 @@ module OpenAI # for this purpose instead. sig do params( - content: T.any( - String, - T::Array[T.any(OpenAI::Models::Chat::ChatCompletionContentPartText, OpenAI::Internal::AnyHash)] - ), + content: + T.any( + String, + T::Array[OpenAI::Chat::ChatCompletionContentPartText::OrHash] + ), name: String, role: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # The contents of the system message. @@ -44,29 +50,52 @@ module OpenAI name: nil, # The role of the messages author, in this case `system`. role: :system - ); end + ) + end + sig do - override - .returns( - { - content: T.any(String, T::Array[OpenAI::Models::Chat::ChatCompletionContentPartText]), - role: Symbol, - name: String - } - ) + override.returns( + { + content: + T.any( + String, + T::Array[OpenAI::Chat::ChatCompletionContentPartText] + ), + role: Symbol, + name: String + } + ) + end + def to_hash end - def to_hash; end # The contents of the system message. module Content extend OpenAI::Internal::Type::Union - sig { override.returns([String, T::Array[OpenAI::Models::Chat::ChatCompletionContentPartText]]) } - def self.variants; end + Variants = + T.type_alias do + T.any( + String, + T::Array[OpenAI::Chat::ChatCompletionContentPartText] + ) + end + + sig do + override.returns( + T::Array[ + OpenAI::Chat::ChatCompletionSystemMessageParam::Content::Variants + ] + ) + end + def self.variants + end ChatCompletionContentPartTextArray = T.let( - OpenAI::Internal::Type::ArrayOf[OpenAI::Models::Chat::ChatCompletionContentPartText], + OpenAI::Internal::Type::ArrayOf[ + OpenAI::Chat::ChatCompletionContentPartText + ], OpenAI::Internal::Type::Converter ) end diff --git a/rbi/openai/models/chat/chat_completion_token_logprob.rbi b/rbi/openai/models/chat/chat_completion_token_logprob.rbi index f75eb74c..e38eaadc 100644 --- a/rbi/openai/models/chat/chat_completion_token_logprob.rbi +++ b/rbi/openai/models/chat/chat_completion_token_logprob.rbi @@ -6,6 +6,8 @@ module OpenAI module Chat class ChatCompletionTokenLogprob < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The token. sig { returns(String) } attr_accessor :token @@ -26,7 +28,11 @@ module OpenAI # List of the most likely tokens and their log probability, at this token # position. In rare cases, there may be fewer than the number of requested # `top_logprobs` returned. - sig { returns(T::Array[OpenAI::Models::Chat::ChatCompletionTokenLogprob::TopLogprob]) } + sig do + returns( + T::Array[OpenAI::Chat::ChatCompletionTokenLogprob::TopLogprob] + ) + end attr_accessor :top_logprobs sig do @@ -34,9 +40,11 @@ module OpenAI token: String, bytes: T.nilable(T::Array[Integer]), logprob: Float, - top_logprobs: T::Array[T.any(OpenAI::Models::Chat::ChatCompletionTokenLogprob::TopLogprob, OpenAI::Internal::AnyHash)] - ) - .returns(T.attached_class) + top_logprobs: + T::Array[ + OpenAI::Chat::ChatCompletionTokenLogprob::TopLogprob::OrHash + ] + ).returns(T.attached_class) end def self.new( # The token. @@ -54,21 +62,27 @@ module OpenAI # position. In rare cases, there may be fewer than the number of requested # `top_logprobs` returned. top_logprobs: - ); end + ) + end + sig do - override - .returns( - { - token: String, - bytes: T.nilable(T::Array[Integer]), - logprob: Float, - top_logprobs: T::Array[OpenAI::Models::Chat::ChatCompletionTokenLogprob::TopLogprob] - } - ) + override.returns( + { + token: String, + bytes: T.nilable(T::Array[Integer]), + logprob: Float, + top_logprobs: + T::Array[OpenAI::Chat::ChatCompletionTokenLogprob::TopLogprob] + } + ) + end + def to_hash end - def to_hash; end class TopLogprob < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The token. sig { returns(String) } attr_accessor :token @@ -105,9 +119,20 @@ module OpenAI # tokens. Otherwise, the value `-9999.0` is used to signify that the token is very # unlikely. logprob: - ); end - sig { override.returns({token: String, bytes: T.nilable(T::Array[Integer]), logprob: Float}) } - def to_hash; end + ) + end + + sig do + override.returns( + { + token: String, + bytes: T.nilable(T::Array[Integer]), + logprob: Float + } + ) + end + def to_hash + end end end end diff --git a/rbi/openai/models/chat/chat_completion_tool.rbi b/rbi/openai/models/chat/chat_completion_tool.rbi index 54e45a9a..3ea290d0 100644 --- a/rbi/openai/models/chat/chat_completion_tool.rbi +++ b/rbi/openai/models/chat/chat_completion_tool.rbi @@ -6,10 +6,12 @@ module OpenAI module Chat class ChatCompletionTool < OpenAI::Internal::Type::BaseModel - sig { returns(OpenAI::Models::FunctionDefinition) } + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + + sig { returns(OpenAI::FunctionDefinition) } attr_reader :function - sig { params(function: T.any(OpenAI::Models::FunctionDefinition, OpenAI::Internal::AnyHash)).void } + sig { params(function: OpenAI::FunctionDefinition::OrHash).void } attr_writer :function # The type of the tool. Currently, only `function` is supported. @@ -17,16 +19,25 @@ module OpenAI attr_accessor :type sig do - params(function: T.any(OpenAI::Models::FunctionDefinition, OpenAI::Internal::AnyHash), type: Symbol) - .returns(T.attached_class) + params( + function: OpenAI::FunctionDefinition::OrHash, + type: Symbol + ).returns(T.attached_class) end def self.new( function:, # The type of the tool. Currently, only `function` is supported. type: :function - ); end - sig { override.returns({function: OpenAI::Models::FunctionDefinition, type: Symbol}) } - def to_hash; end + ) + end + + sig do + override.returns( + { function: OpenAI::FunctionDefinition, type: Symbol } + ) + end + def to_hash + end end end end diff --git a/rbi/openai/models/chat/chat_completion_tool_choice_option.rbi b/rbi/openai/models/chat/chat_completion_tool_choice_option.rbi index 090a8a1d..5363a308 100644 --- a/rbi/openai/models/chat/chat_completion_tool_choice_option.rbi +++ b/rbi/openai/models/chat/chat_completion_tool_choice_option.rbi @@ -17,30 +17,60 @@ module OpenAI module ChatCompletionToolChoiceOption extend OpenAI::Internal::Type::Union + Variants = + T.type_alias do + T.any( + OpenAI::Chat::ChatCompletionToolChoiceOption::Auto::TaggedSymbol, + OpenAI::Chat::ChatCompletionNamedToolChoice + ) + end + # `none` means the model will not call any tool and instead generates a message. # `auto` means the model can pick between generating a message or calling one or # more tools. `required` means the model must call one or more tools. module Auto extend OpenAI::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::Chat::ChatCompletionToolChoiceOption::Auto) } + TaggedSymbol = + T.type_alias do + T.all(Symbol, OpenAI::Chat::ChatCompletionToolChoiceOption::Auto) + end OrSymbol = T.type_alias { T.any(Symbol, String) } - NONE = T.let(:none, OpenAI::Models::Chat::ChatCompletionToolChoiceOption::Auto::TaggedSymbol) - AUTO = T.let(:auto, OpenAI::Models::Chat::ChatCompletionToolChoiceOption::Auto::TaggedSymbol) - REQUIRED = T.let(:required, OpenAI::Models::Chat::ChatCompletionToolChoiceOption::Auto::TaggedSymbol) + NONE = + T.let( + :none, + OpenAI::Chat::ChatCompletionToolChoiceOption::Auto::TaggedSymbol + ) + AUTO = + T.let( + :auto, + OpenAI::Chat::ChatCompletionToolChoiceOption::Auto::TaggedSymbol + ) + REQUIRED = + T.let( + :required, + OpenAI::Chat::ChatCompletionToolChoiceOption::Auto::TaggedSymbol + ) - sig { override.returns(T::Array[OpenAI::Models::Chat::ChatCompletionToolChoiceOption::Auto::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[ + OpenAI::Chat::ChatCompletionToolChoiceOption::Auto::TaggedSymbol + ] + ) + end + def self.values + end end sig do - override - .returns( - [OpenAI::Models::Chat::ChatCompletionToolChoiceOption::Auto::TaggedSymbol, OpenAI::Models::Chat::ChatCompletionNamedToolChoice] - ) + override.returns( + T::Array[OpenAI::Chat::ChatCompletionToolChoiceOption::Variants] + ) + end + def self.variants end - def self.variants; end end end end diff --git a/rbi/openai/models/chat/chat_completion_tool_message_param.rbi b/rbi/openai/models/chat/chat_completion_tool_message_param.rbi index 862e00bf..67ab6bc6 100644 --- a/rbi/openai/models/chat/chat_completion_tool_message_param.rbi +++ b/rbi/openai/models/chat/chat_completion_tool_message_param.rbi @@ -6,8 +6,14 @@ module OpenAI module Chat class ChatCompletionToolMessageParam < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The contents of the tool message. - sig { returns(T.any(String, T::Array[OpenAI::Models::Chat::ChatCompletionContentPartText])) } + sig do + returns( + T.any(String, T::Array[OpenAI::Chat::ChatCompletionContentPartText]) + ) + end attr_accessor :content # The role of the messages author, in this case `tool`. @@ -20,14 +26,14 @@ module OpenAI sig do params( - content: T.any( - String, - T::Array[T.any(OpenAI::Models::Chat::ChatCompletionContentPartText, OpenAI::Internal::AnyHash)] - ), + content: + T.any( + String, + T::Array[OpenAI::Chat::ChatCompletionContentPartText::OrHash] + ), tool_call_id: String, role: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # The contents of the tool message. @@ -36,29 +42,52 @@ module OpenAI tool_call_id:, # The role of the messages author, in this case `tool`. role: :tool - ); end + ) + end + sig do - override - .returns( - { - content: T.any(String, T::Array[OpenAI::Models::Chat::ChatCompletionContentPartText]), - role: Symbol, - tool_call_id: String - } - ) + override.returns( + { + content: + T.any( + String, + T::Array[OpenAI::Chat::ChatCompletionContentPartText] + ), + role: Symbol, + tool_call_id: String + } + ) + end + def to_hash end - def to_hash; end # The contents of the tool message. module Content extend OpenAI::Internal::Type::Union - sig { override.returns([String, T::Array[OpenAI::Models::Chat::ChatCompletionContentPartText]]) } - def self.variants; end + Variants = + T.type_alias do + T.any( + String, + T::Array[OpenAI::Chat::ChatCompletionContentPartText] + ) + end + + sig do + override.returns( + T::Array[ + OpenAI::Chat::ChatCompletionToolMessageParam::Content::Variants + ] + ) + end + def self.variants + end ChatCompletionContentPartTextArray = T.let( - OpenAI::Internal::Type::ArrayOf[OpenAI::Models::Chat::ChatCompletionContentPartText], + OpenAI::Internal::Type::ArrayOf[ + OpenAI::Chat::ChatCompletionContentPartText + ], OpenAI::Internal::Type::Converter ) end diff --git a/rbi/openai/models/chat/chat_completion_user_message_param.rbi b/rbi/openai/models/chat/chat_completion_user_message_param.rbi index a9452e5c..2afec258 100644 --- a/rbi/openai/models/chat/chat_completion_user_message_param.rbi +++ b/rbi/openai/models/chat/chat_completion_user_message_param.rbi @@ -6,6 +6,8 @@ module OpenAI module Chat class ChatCompletionUserMessageParam < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The contents of the user message. sig do returns( @@ -13,10 +15,10 @@ module OpenAI String, T::Array[ T.any( - OpenAI::Models::Chat::ChatCompletionContentPartText, - OpenAI::Models::Chat::ChatCompletionContentPartImage, - OpenAI::Models::Chat::ChatCompletionContentPartInputAudio, - OpenAI::Models::Chat::ChatCompletionContentPart::File + OpenAI::Chat::ChatCompletionContentPartText, + OpenAI::Chat::ChatCompletionContentPartImage, + OpenAI::Chat::ChatCompletionContentPartInputAudio, + OpenAI::Chat::ChatCompletionContentPart::File ) ] ) @@ -40,22 +42,21 @@ module OpenAI # information. sig do params( - content: T.any( - String, - T::Array[ - T.any( - OpenAI::Models::Chat::ChatCompletionContentPartText, - OpenAI::Internal::AnyHash, - OpenAI::Models::Chat::ChatCompletionContentPartImage, - OpenAI::Models::Chat::ChatCompletionContentPartInputAudio, - OpenAI::Models::Chat::ChatCompletionContentPart::File - ) - ] - ), + content: + T.any( + String, + T::Array[ + T.any( + OpenAI::Chat::ChatCompletionContentPartText::OrHash, + OpenAI::Chat::ChatCompletionContentPartImage::OrHash, + OpenAI::Chat::ChatCompletionContentPartInputAudio::OrHash, + OpenAI::Chat::ChatCompletionContentPart::File::OrHash + ) + ] + ), name: String, role: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # The contents of the user message. @@ -65,54 +66,66 @@ module OpenAI name: nil, # The role of the messages author, in this case `user`. role: :user - ); end + ) + end + sig do - override - .returns( - { - content: T.any( + override.returns( + { + content: + T.any( String, T::Array[ T.any( - OpenAI::Models::Chat::ChatCompletionContentPartText, - OpenAI::Models::Chat::ChatCompletionContentPartImage, - OpenAI::Models::Chat::ChatCompletionContentPartInputAudio, - OpenAI::Models::Chat::ChatCompletionContentPart::File + OpenAI::Chat::ChatCompletionContentPartText, + OpenAI::Chat::ChatCompletionContentPartImage, + OpenAI::Chat::ChatCompletionContentPartInputAudio, + OpenAI::Chat::ChatCompletionContentPart::File ) ] ), - role: Symbol, - name: String - } - ) + role: Symbol, + name: String + } + ) + end + def to_hash end - def to_hash; end # The contents of the user message. module Content extend OpenAI::Internal::Type::Union - sig do - override - .returns( - [ - String, - T::Array[ - T.any( - OpenAI::Models::Chat::ChatCompletionContentPartText, - OpenAI::Models::Chat::ChatCompletionContentPartImage, - OpenAI::Models::Chat::ChatCompletionContentPartInputAudio, - OpenAI::Models::Chat::ChatCompletionContentPart::File - ) - ] + Variants = + T.type_alias do + T.any( + String, + T::Array[ + T.any( + OpenAI::Chat::ChatCompletionContentPartText, + OpenAI::Chat::ChatCompletionContentPartImage, + OpenAI::Chat::ChatCompletionContentPartInputAudio, + OpenAI::Chat::ChatCompletionContentPart::File + ) ] ) + end + + sig do + override.returns( + T::Array[ + OpenAI::Chat::ChatCompletionUserMessageParam::Content::Variants + ] + ) + end + def self.variants end - def self.variants; end ChatCompletionContentPartArray = T.let( - OpenAI::Internal::Type::ArrayOf[union: OpenAI::Models::Chat::ChatCompletionContentPart], + OpenAI::Internal::Type::ArrayOf[ + union: OpenAI::Chat::ChatCompletionContentPart + ], OpenAI::Internal::Type::Converter ) end diff --git a/rbi/openai/models/chat/completion_create_params.rbi b/rbi/openai/models/chat/completion_create_params.rbi index 2f954588..9e67e729 100644 --- a/rbi/openai/models/chat/completion_create_params.rbi +++ b/rbi/openai/models/chat/completion_create_params.rbi @@ -7,6 +7,8 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # A list of messages comprising the conversation so far. Depending on the # [model](https://platform.openai.com/docs/models) you use, different message # types (modalities) are supported, like @@ -17,12 +19,12 @@ module OpenAI returns( T::Array[ T.any( - OpenAI::Models::Chat::ChatCompletionDeveloperMessageParam, - OpenAI::Models::Chat::ChatCompletionSystemMessageParam, - OpenAI::Models::Chat::ChatCompletionUserMessageParam, - OpenAI::Models::Chat::ChatCompletionAssistantMessageParam, - OpenAI::Models::Chat::ChatCompletionToolMessageParam, - OpenAI::Models::Chat::ChatCompletionFunctionMessageParam + OpenAI::Chat::ChatCompletionDeveloperMessageParam, + OpenAI::Chat::ChatCompletionSystemMessageParam, + OpenAI::Chat::ChatCompletionUserMessageParam, + OpenAI::Chat::ChatCompletionAssistantMessageParam, + OpenAI::Chat::ChatCompletionToolMessageParam, + OpenAI::Chat::ChatCompletionFunctionMessageParam ) ] ) @@ -34,18 +36,19 @@ module OpenAI # and price points. Refer to the # [model guide](https://platform.openai.com/docs/models) to browse and compare # available models. - sig { returns(T.any(String, OpenAI::Models::ChatModel::OrSymbol)) } + sig { returns(T.any(String, OpenAI::ChatModel::OrSymbol)) } attr_accessor :model # Parameters for audio output. Required when audio output is requested with # `modalities: ["audio"]`. # [Learn more](https://platform.openai.com/docs/guides/audio). - sig { returns(T.nilable(OpenAI::Models::Chat::ChatCompletionAudioParam)) } + sig { returns(T.nilable(OpenAI::Chat::ChatCompletionAudioParam)) } attr_reader :audio sig do - params(audio: T.nilable(T.any(OpenAI::Models::Chat::ChatCompletionAudioParam, OpenAI::Internal::AnyHash))) - .void + params( + audio: T.nilable(OpenAI::Chat::ChatCompletionAudioParam::OrHash) + ).void end attr_writer :audio @@ -73,8 +76,8 @@ module OpenAI returns( T.nilable( T.any( - OpenAI::Models::Chat::CompletionCreateParams::FunctionCall::FunctionCallMode::OrSymbol, - OpenAI::Models::Chat::ChatCompletionFunctionCallOption + OpenAI::Chat::CompletionCreateParams::FunctionCall::FunctionCallMode::OrSymbol, + OpenAI::Chat::ChatCompletionFunctionCallOption ) ) ) @@ -83,27 +86,30 @@ module OpenAI sig do params( - function_call: T.any( - OpenAI::Models::Chat::CompletionCreateParams::FunctionCall::FunctionCallMode::OrSymbol, - OpenAI::Models::Chat::ChatCompletionFunctionCallOption, - OpenAI::Internal::AnyHash - ) - ) - .void + function_call: + T.any( + OpenAI::Chat::CompletionCreateParams::FunctionCall::FunctionCallMode::OrSymbol, + OpenAI::Chat::ChatCompletionFunctionCallOption::OrHash + ) + ).void end attr_writer :function_call # Deprecated in favor of `tools`. # # A list of functions the model may generate JSON inputs for. - sig { returns(T.nilable(T::Array[OpenAI::Models::Chat::CompletionCreateParams::Function])) } + sig do + returns( + T.nilable(T::Array[OpenAI::Chat::CompletionCreateParams::Function]) + ) + end attr_reader :functions sig do params( - functions: T::Array[T.any(OpenAI::Models::Chat::CompletionCreateParams::Function, OpenAI::Internal::AnyHash)] - ) - .void + functions: + T::Array[OpenAI::Chat::CompletionCreateParams::Function::OrHash] + ).void end attr_writer :functions @@ -159,7 +165,13 @@ module OpenAI # this model generate both text and audio responses, you can use: # # `["text", "audio"]` - sig { returns(T.nilable(T::Array[OpenAI::Models::Chat::CompletionCreateParams::Modality::OrSymbol])) } + sig do + returns( + T.nilable( + T::Array[OpenAI::Chat::CompletionCreateParams::Modality::OrSymbol] + ) + ) + end attr_accessor :modalities # How many chat completion choices to generate for each input message. Note that @@ -179,14 +191,16 @@ module OpenAI # Static predicted output content, such as the content of a text file that is # being regenerated. - sig { returns(T.nilable(OpenAI::Models::Chat::ChatCompletionPredictionContent)) } + sig do + returns(T.nilable(OpenAI::Chat::ChatCompletionPredictionContent)) + end attr_reader :prediction sig do params( - prediction: T.nilable(T.any(OpenAI::Models::Chat::ChatCompletionPredictionContent, OpenAI::Internal::AnyHash)) - ) - .void + prediction: + T.nilable(OpenAI::Chat::ChatCompletionPredictionContent::OrHash) + ).void end attr_writer :prediction @@ -202,7 +216,7 @@ module OpenAI # [reasoning models](https://platform.openai.com/docs/guides/reasoning). Currently # supported values are `low`, `medium`, and `high`. Reducing reasoning effort can # result in faster responses and fewer tokens used on reasoning in a response. - sig { returns(T.nilable(OpenAI::Models::ReasoningEffort::OrSymbol)) } + sig { returns(T.nilable(OpenAI::ReasoningEffort::OrSymbol)) } attr_accessor :reasoning_effort # An object specifying the format that the model must output. @@ -219,9 +233,9 @@ module OpenAI returns( T.nilable( T.any( - OpenAI::Models::ResponseFormatText, - OpenAI::Models::ResponseFormatJSONSchema, - OpenAI::Models::ResponseFormatJSONObject + OpenAI::ResponseFormatText, + OpenAI::ResponseFormatJSONSchema, + OpenAI::ResponseFormatJSONObject ) ) ) @@ -230,14 +244,13 @@ module OpenAI sig do params( - response_format: T.any( - OpenAI::Models::ResponseFormatText, - OpenAI::Internal::AnyHash, - OpenAI::Models::ResponseFormatJSONSchema, - OpenAI::Models::ResponseFormatJSONObject - ) - ) - .void + response_format: + T.any( + OpenAI::ResponseFormatText::OrHash, + OpenAI::ResponseFormatJSONSchema::OrHash, + OpenAI::ResponseFormatJSONObject::OrHash + ) + ).void end attr_writer :response_format @@ -266,7 +279,13 @@ module OpenAI # # When this parameter is set, the response body will include the `service_tier` # utilized. - sig { returns(T.nilable(OpenAI::Models::Chat::CompletionCreateParams::ServiceTier::OrSymbol)) } + sig do + returns( + T.nilable( + OpenAI::Chat::CompletionCreateParams::ServiceTier::OrSymbol + ) + ) + end attr_accessor :service_tier # Not supported with latest reasoning models `o3` and `o4-mini`. @@ -283,14 +302,14 @@ module OpenAI attr_accessor :store # Options for streaming response. Only set this when you set `stream: true`. - sig { returns(T.nilable(OpenAI::Models::Chat::ChatCompletionStreamOptions)) } + sig { returns(T.nilable(OpenAI::Chat::ChatCompletionStreamOptions)) } attr_reader :stream_options sig do params( - stream_options: T.nilable(T.any(OpenAI::Models::Chat::ChatCompletionStreamOptions, OpenAI::Internal::AnyHash)) - ) - .void + stream_options: + T.nilable(OpenAI::Chat::ChatCompletionStreamOptions::OrHash) + ).void end attr_writer :stream_options @@ -314,8 +333,8 @@ module OpenAI returns( T.nilable( T.any( - OpenAI::Models::Chat::ChatCompletionToolChoiceOption::Auto::OrSymbol, - OpenAI::Models::Chat::ChatCompletionNamedToolChoice + OpenAI::Chat::ChatCompletionToolChoiceOption::Auto::OrSymbol, + OpenAI::Chat::ChatCompletionNamedToolChoice ) ) ) @@ -324,23 +343,24 @@ module OpenAI sig do params( - tool_choice: T.any( - OpenAI::Models::Chat::ChatCompletionToolChoiceOption::Auto::OrSymbol, - OpenAI::Models::Chat::ChatCompletionNamedToolChoice, - OpenAI::Internal::AnyHash - ) - ) - .void + tool_choice: + T.any( + OpenAI::Chat::ChatCompletionToolChoiceOption::Auto::OrSymbol, + OpenAI::Chat::ChatCompletionNamedToolChoice::OrHash + ) + ).void end attr_writer :tool_choice # A list of tools the model may call. Currently, only functions are supported as a # tool. Use this to provide a list of functions the model may generate JSON inputs # for. A max of 128 functions are supported. - sig { returns(T.nilable(T::Array[OpenAI::Models::Chat::ChatCompletionTool])) } + sig { returns(T.nilable(T::Array[OpenAI::Chat::ChatCompletionTool])) } attr_reader :tools - sig { params(tools: T::Array[T.any(OpenAI::Models::Chat::ChatCompletionTool, OpenAI::Internal::AnyHash)]).void } + sig do + params(tools: T::Array[OpenAI::Chat::ChatCompletionTool::OrHash]).void + end attr_writer :tools # An integer between 0 and 20 specifying the number of most likely tokens to @@ -369,75 +389,90 @@ module OpenAI # This tool searches the web for relevant results to use in a response. Learn more # about the # [web search tool](https://platform.openai.com/docs/guides/tools-web-search?api-mode=chat). - sig { returns(T.nilable(OpenAI::Models::Chat::CompletionCreateParams::WebSearchOptions)) } + sig do + returns( + T.nilable(OpenAI::Chat::CompletionCreateParams::WebSearchOptions) + ) + end attr_reader :web_search_options sig do params( - web_search_options: T.any(OpenAI::Models::Chat::CompletionCreateParams::WebSearchOptions, OpenAI::Internal::AnyHash) - ) - .void + web_search_options: + OpenAI::Chat::CompletionCreateParams::WebSearchOptions::OrHash + ).void end attr_writer :web_search_options sig do params( - messages: T::Array[ - T.any( - OpenAI::Models::Chat::ChatCompletionDeveloperMessageParam, - OpenAI::Internal::AnyHash, - OpenAI::Models::Chat::ChatCompletionSystemMessageParam, - OpenAI::Models::Chat::ChatCompletionUserMessageParam, - OpenAI::Models::Chat::ChatCompletionAssistantMessageParam, - OpenAI::Models::Chat::ChatCompletionToolMessageParam, - OpenAI::Models::Chat::ChatCompletionFunctionMessageParam - ) - ], - model: T.any(String, OpenAI::Models::ChatModel::OrSymbol), - audio: T.nilable(T.any(OpenAI::Models::Chat::ChatCompletionAudioParam, OpenAI::Internal::AnyHash)), + messages: + T::Array[ + T.any( + OpenAI::Chat::ChatCompletionDeveloperMessageParam::OrHash, + OpenAI::Chat::ChatCompletionSystemMessageParam::OrHash, + OpenAI::Chat::ChatCompletionUserMessageParam::OrHash, + OpenAI::Chat::ChatCompletionAssistantMessageParam::OrHash, + OpenAI::Chat::ChatCompletionToolMessageParam::OrHash, + OpenAI::Chat::ChatCompletionFunctionMessageParam::OrHash + ) + ], + model: T.any(String, OpenAI::ChatModel::OrSymbol), + audio: T.nilable(OpenAI::Chat::ChatCompletionAudioParam::OrHash), frequency_penalty: T.nilable(Float), - function_call: T.any( - OpenAI::Models::Chat::CompletionCreateParams::FunctionCall::FunctionCallMode::OrSymbol, - OpenAI::Models::Chat::ChatCompletionFunctionCallOption, - OpenAI::Internal::AnyHash - ), - functions: T::Array[T.any(OpenAI::Models::Chat::CompletionCreateParams::Function, OpenAI::Internal::AnyHash)], + function_call: + T.any( + OpenAI::Chat::CompletionCreateParams::FunctionCall::FunctionCallMode::OrSymbol, + OpenAI::Chat::ChatCompletionFunctionCallOption::OrHash + ), + functions: + T::Array[OpenAI::Chat::CompletionCreateParams::Function::OrHash], logit_bias: T.nilable(T::Hash[Symbol, Integer]), logprobs: T.nilable(T::Boolean), max_completion_tokens: T.nilable(Integer), max_tokens: T.nilable(Integer), metadata: T.nilable(T::Hash[Symbol, String]), - modalities: T.nilable(T::Array[OpenAI::Models::Chat::CompletionCreateParams::Modality::OrSymbol]), + modalities: + T.nilable( + T::Array[ + OpenAI::Chat::CompletionCreateParams::Modality::OrSymbol + ] + ), n: T.nilable(Integer), parallel_tool_calls: T::Boolean, - prediction: T.nilable(T.any(OpenAI::Models::Chat::ChatCompletionPredictionContent, OpenAI::Internal::AnyHash)), + prediction: + T.nilable(OpenAI::Chat::ChatCompletionPredictionContent::OrHash), presence_penalty: T.nilable(Float), - reasoning_effort: T.nilable(OpenAI::Models::ReasoningEffort::OrSymbol), - response_format: T.any( - OpenAI::Models::ResponseFormatText, - OpenAI::Internal::AnyHash, - OpenAI::Models::ResponseFormatJSONSchema, - OpenAI::Models::ResponseFormatJSONObject - ), + reasoning_effort: T.nilable(OpenAI::ReasoningEffort::OrSymbol), + response_format: + T.any( + OpenAI::ResponseFormatText::OrHash, + OpenAI::ResponseFormatJSONSchema::OrHash, + OpenAI::ResponseFormatJSONObject::OrHash + ), seed: T.nilable(Integer), - service_tier: T.nilable(OpenAI::Models::Chat::CompletionCreateParams::ServiceTier::OrSymbol), + service_tier: + T.nilable( + OpenAI::Chat::CompletionCreateParams::ServiceTier::OrSymbol + ), stop: T.nilable(T.any(String, T::Array[String])), store: T.nilable(T::Boolean), - stream_options: T.nilable(T.any(OpenAI::Models::Chat::ChatCompletionStreamOptions, OpenAI::Internal::AnyHash)), + stream_options: + T.nilable(OpenAI::Chat::ChatCompletionStreamOptions::OrHash), temperature: T.nilable(Float), - tool_choice: T.any( - OpenAI::Models::Chat::ChatCompletionToolChoiceOption::Auto::OrSymbol, - OpenAI::Models::Chat::ChatCompletionNamedToolChoice, - OpenAI::Internal::AnyHash - ), - tools: T::Array[T.any(OpenAI::Models::Chat::ChatCompletionTool, OpenAI::Internal::AnyHash)], + tool_choice: + T.any( + OpenAI::Chat::ChatCompletionToolChoiceOption::Auto::OrSymbol, + OpenAI::Chat::ChatCompletionNamedToolChoice::OrHash + ), + tools: T::Array[OpenAI::Chat::ChatCompletionTool::OrHash], top_logprobs: T.nilable(Integer), top_p: T.nilable(Float), user: String, - web_search_options: T.any(OpenAI::Models::Chat::CompletionCreateParams::WebSearchOptions, OpenAI::Internal::AnyHash), - request_options: T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash) - ) - .returns(T.attached_class) + web_search_options: + OpenAI::Chat::CompletionCreateParams::WebSearchOptions::OrHash, + request_options: OpenAI::RequestOptions::OrHash + ).returns(T.attached_class) end def self.new( # A list of messages comprising the conversation so far. Depending on the @@ -629,65 +664,83 @@ module OpenAI # [web search tool](https://platform.openai.com/docs/guides/tools-web-search?api-mode=chat). web_search_options: nil, request_options: {} - ); end + ) + end + sig do - override - .returns( - { - messages: T::Array[ + override.returns( + { + messages: + T::Array[ T.any( - OpenAI::Models::Chat::ChatCompletionDeveloperMessageParam, - OpenAI::Models::Chat::ChatCompletionSystemMessageParam, - OpenAI::Models::Chat::ChatCompletionUserMessageParam, - OpenAI::Models::Chat::ChatCompletionAssistantMessageParam, - OpenAI::Models::Chat::ChatCompletionToolMessageParam, - OpenAI::Models::Chat::ChatCompletionFunctionMessageParam + OpenAI::Chat::ChatCompletionDeveloperMessageParam, + OpenAI::Chat::ChatCompletionSystemMessageParam, + OpenAI::Chat::ChatCompletionUserMessageParam, + OpenAI::Chat::ChatCompletionAssistantMessageParam, + OpenAI::Chat::ChatCompletionToolMessageParam, + OpenAI::Chat::ChatCompletionFunctionMessageParam ) ], - model: T.any(String, OpenAI::Models::ChatModel::OrSymbol), - audio: T.nilable(OpenAI::Models::Chat::ChatCompletionAudioParam), - frequency_penalty: T.nilable(Float), - function_call: T.any( - OpenAI::Models::Chat::CompletionCreateParams::FunctionCall::FunctionCallMode::OrSymbol, - OpenAI::Models::Chat::ChatCompletionFunctionCallOption + model: T.any(String, OpenAI::ChatModel::OrSymbol), + audio: T.nilable(OpenAI::Chat::ChatCompletionAudioParam), + frequency_penalty: T.nilable(Float), + function_call: + T.any( + OpenAI::Chat::CompletionCreateParams::FunctionCall::FunctionCallMode::OrSymbol, + OpenAI::Chat::ChatCompletionFunctionCallOption ), - functions: T::Array[OpenAI::Models::Chat::CompletionCreateParams::Function], - logit_bias: T.nilable(T::Hash[Symbol, Integer]), - logprobs: T.nilable(T::Boolean), - max_completion_tokens: T.nilable(Integer), - max_tokens: T.nilable(Integer), - metadata: T.nilable(T::Hash[Symbol, String]), - modalities: T.nilable(T::Array[OpenAI::Models::Chat::CompletionCreateParams::Modality::OrSymbol]), - n: T.nilable(Integer), - parallel_tool_calls: T::Boolean, - prediction: T.nilable(OpenAI::Models::Chat::ChatCompletionPredictionContent), - presence_penalty: T.nilable(Float), - reasoning_effort: T.nilable(OpenAI::Models::ReasoningEffort::OrSymbol), - response_format: T.any( - OpenAI::Models::ResponseFormatText, - OpenAI::Models::ResponseFormatJSONSchema, - OpenAI::Models::ResponseFormatJSONObject + functions: + T::Array[OpenAI::Chat::CompletionCreateParams::Function], + logit_bias: T.nilable(T::Hash[Symbol, Integer]), + logprobs: T.nilable(T::Boolean), + max_completion_tokens: T.nilable(Integer), + max_tokens: T.nilable(Integer), + metadata: T.nilable(T::Hash[Symbol, String]), + modalities: + T.nilable( + T::Array[ + OpenAI::Chat::CompletionCreateParams::Modality::OrSymbol + ] ), - seed: T.nilable(Integer), - service_tier: T.nilable(OpenAI::Models::Chat::CompletionCreateParams::ServiceTier::OrSymbol), - stop: T.nilable(T.any(String, T::Array[String])), - store: T.nilable(T::Boolean), - stream_options: T.nilable(OpenAI::Models::Chat::ChatCompletionStreamOptions), - temperature: T.nilable(Float), - tool_choice: T.any( - OpenAI::Models::Chat::ChatCompletionToolChoiceOption::Auto::OrSymbol, - OpenAI::Models::Chat::ChatCompletionNamedToolChoice + n: T.nilable(Integer), + parallel_tool_calls: T::Boolean, + prediction: + T.nilable(OpenAI::Chat::ChatCompletionPredictionContent), + presence_penalty: T.nilable(Float), + reasoning_effort: T.nilable(OpenAI::ReasoningEffort::OrSymbol), + response_format: + T.any( + OpenAI::ResponseFormatText, + OpenAI::ResponseFormatJSONSchema, + OpenAI::ResponseFormatJSONObject ), - tools: T::Array[OpenAI::Models::Chat::ChatCompletionTool], - top_logprobs: T.nilable(Integer), - top_p: T.nilable(Float), - user: String, - web_search_options: OpenAI::Models::Chat::CompletionCreateParams::WebSearchOptions, - request_options: OpenAI::RequestOptions - } - ) + seed: T.nilable(Integer), + service_tier: + T.nilable( + OpenAI::Chat::CompletionCreateParams::ServiceTier::OrSymbol + ), + stop: T.nilable(T.any(String, T::Array[String])), + store: T.nilable(T::Boolean), + stream_options: + T.nilable(OpenAI::Chat::ChatCompletionStreamOptions), + temperature: T.nilable(Float), + tool_choice: + T.any( + OpenAI::Chat::ChatCompletionToolChoiceOption::Auto::OrSymbol, + OpenAI::Chat::ChatCompletionNamedToolChoice + ), + tools: T::Array[OpenAI::Chat::ChatCompletionTool], + top_logprobs: T.nilable(Integer), + top_p: T.nilable(Float), + user: String, + web_search_options: + OpenAI::Chat::CompletionCreateParams::WebSearchOptions, + request_options: OpenAI::RequestOptions + } + ) + end + def to_hash end - def to_hash; end # Model ID used to generate the response, like `gpt-4o` or `o3`. OpenAI offers a # wide range of models with different capabilities, performance characteristics, @@ -697,8 +750,16 @@ module OpenAI module Model extend OpenAI::Internal::Type::Union - sig { override.returns([String, OpenAI::Models::ChatModel::TaggedSymbol]) } - def self.variants; end + Variants = + T.type_alias { T.any(String, OpenAI::ChatModel::TaggedSymbol) } + + sig do + override.returns( + T::Array[OpenAI::Chat::CompletionCreateParams::Model::Variants] + ) + end + def self.variants + end end # Deprecated in favor of `tool_choice`. @@ -718,6 +779,14 @@ module OpenAI module FunctionCall extend OpenAI::Internal::Type::Union + Variants = + T.type_alias do + T.any( + OpenAI::Chat::CompletionCreateParams::FunctionCall::FunctionCallMode::TaggedSymbol, + OpenAI::Chat::ChatCompletionFunctionCallOption + ) + end + # `none` means the model will not call a function and instead generates a message. # `auto` means the model can pick between generating a message or calling a # function. @@ -725,33 +794,51 @@ module OpenAI extend OpenAI::Internal::Type::Enum TaggedSymbol = - T.type_alias { T.all(Symbol, OpenAI::Models::Chat::CompletionCreateParams::FunctionCall::FunctionCallMode) } + T.type_alias do + T.all( + Symbol, + OpenAI::Chat::CompletionCreateParams::FunctionCall::FunctionCallMode + ) + end OrSymbol = T.type_alias { T.any(Symbol, String) } NONE = - T.let(:none, OpenAI::Models::Chat::CompletionCreateParams::FunctionCall::FunctionCallMode::TaggedSymbol) + T.let( + :none, + OpenAI::Chat::CompletionCreateParams::FunctionCall::FunctionCallMode::TaggedSymbol + ) AUTO = - T.let(:auto, OpenAI::Models::Chat::CompletionCreateParams::FunctionCall::FunctionCallMode::TaggedSymbol) + T.let( + :auto, + OpenAI::Chat::CompletionCreateParams::FunctionCall::FunctionCallMode::TaggedSymbol + ) sig do - override - .returns( - T::Array[OpenAI::Models::Chat::CompletionCreateParams::FunctionCall::FunctionCallMode::TaggedSymbol] - ) + override.returns( + T::Array[ + OpenAI::Chat::CompletionCreateParams::FunctionCall::FunctionCallMode::TaggedSymbol + ] + ) + end + def self.values end - def self.values; end end sig do - override - .returns( - [OpenAI::Models::Chat::CompletionCreateParams::FunctionCall::FunctionCallMode::TaggedSymbol, OpenAI::Models::Chat::ChatCompletionFunctionCallOption] - ) + override.returns( + T::Array[ + OpenAI::Chat::CompletionCreateParams::FunctionCall::Variants + ] + ) + end + def self.variants end - def self.variants; end end class Function < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The name of the function to be called. Must be a-z, A-Z, 0-9, or contain # underscores and dashes, with a maximum length of 64. sig { returns(String) } @@ -779,8 +866,11 @@ module OpenAI attr_writer :parameters sig do - params(name: String, description: String, parameters: T::Hash[Symbol, T.anything]) - .returns(T.attached_class) + params( + name: String, + description: String, + parameters: T::Hash[Symbol, T.anything] + ).returns(T.attached_class) end def self.new( # The name of the function to be called. Must be a-z, A-Z, 0-9, or contain @@ -797,24 +887,51 @@ module OpenAI # # Omitting `parameters` defines a function with an empty parameter list. parameters: nil - ); end + ) + end + sig do - override.returns({name: String, description: String, parameters: T::Hash[Symbol, T.anything]}) + override.returns( + { + name: String, + description: String, + parameters: T::Hash[Symbol, T.anything] + } + ) + end + def to_hash end - def to_hash; end end module Modality extend OpenAI::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::Chat::CompletionCreateParams::Modality) } + TaggedSymbol = + T.type_alias do + T.all(Symbol, OpenAI::Chat::CompletionCreateParams::Modality) + end OrSymbol = T.type_alias { T.any(Symbol, String) } - TEXT = T.let(:text, OpenAI::Models::Chat::CompletionCreateParams::Modality::TaggedSymbol) - AUDIO = T.let(:audio, OpenAI::Models::Chat::CompletionCreateParams::Modality::TaggedSymbol) + TEXT = + T.let( + :text, + OpenAI::Chat::CompletionCreateParams::Modality::TaggedSymbol + ) + AUDIO = + T.let( + :audio, + OpenAI::Chat::CompletionCreateParams::Modality::TaggedSymbol + ) - sig { override.returns(T::Array[OpenAI::Models::Chat::CompletionCreateParams::Modality::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[ + OpenAI::Chat::CompletionCreateParams::Modality::TaggedSymbol + ] + ) + end + def self.values + end end # An object specifying the format that the model must output. @@ -830,13 +947,24 @@ module OpenAI module ResponseFormat extend OpenAI::Internal::Type::Union - sig do - override - .returns( - [OpenAI::Models::ResponseFormatText, OpenAI::Models::ResponseFormatJSONSchema, OpenAI::Models::ResponseFormatJSONObject] + Variants = + T.type_alias do + T.any( + OpenAI::ResponseFormatText, + OpenAI::ResponseFormatJSONSchema, + OpenAI::ResponseFormatJSONObject ) + end + + sig do + override.returns( + T::Array[ + OpenAI::Chat::CompletionCreateParams::ResponseFormat::Variants + ] + ) + end + def self.variants end - def self.variants; end end # Specifies the latency tier to use for processing the request. This parameter is @@ -859,15 +987,37 @@ module OpenAI module ServiceTier extend OpenAI::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::Chat::CompletionCreateParams::ServiceTier) } + TaggedSymbol = + T.type_alias do + T.all(Symbol, OpenAI::Chat::CompletionCreateParams::ServiceTier) + end OrSymbol = T.type_alias { T.any(Symbol, String) } - AUTO = T.let(:auto, OpenAI::Models::Chat::CompletionCreateParams::ServiceTier::TaggedSymbol) - DEFAULT = T.let(:default, OpenAI::Models::Chat::CompletionCreateParams::ServiceTier::TaggedSymbol) - FLEX = T.let(:flex, OpenAI::Models::Chat::CompletionCreateParams::ServiceTier::TaggedSymbol) + AUTO = + T.let( + :auto, + OpenAI::Chat::CompletionCreateParams::ServiceTier::TaggedSymbol + ) + DEFAULT = + T.let( + :default, + OpenAI::Chat::CompletionCreateParams::ServiceTier::TaggedSymbol + ) + FLEX = + T.let( + :flex, + OpenAI::Chat::CompletionCreateParams::ServiceTier::TaggedSymbol + ) - sig { override.returns(T::Array[OpenAI::Models::Chat::CompletionCreateParams::ServiceTier::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[ + OpenAI::Chat::CompletionCreateParams::ServiceTier::TaggedSymbol + ] + ) + end + def self.values + end end # Not supported with latest reasoning models `o3` and `o4-mini`. @@ -877,44 +1027,63 @@ module OpenAI module Stop extend OpenAI::Internal::Type::Union - sig { override.returns([String, T::Array[String]]) } - def self.variants; end + Variants = T.type_alias { T.nilable(T.any(String, T::Array[String])) } - StringArray = T.let(OpenAI::Internal::Type::ArrayOf[String], OpenAI::Internal::Type::Converter) + sig do + override.returns( + T::Array[OpenAI::Chat::CompletionCreateParams::Stop::Variants] + ) + end + def self.variants + end + + StringArray = + T.let( + OpenAI::Internal::Type::ArrayOf[String], + OpenAI::Internal::Type::Converter + ) end class WebSearchOptions < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # High level guidance for the amount of context window space to use for the # search. One of `low`, `medium`, or `high`. `medium` is the default. sig do returns( - T.nilable(OpenAI::Models::Chat::CompletionCreateParams::WebSearchOptions::SearchContextSize::OrSymbol) + T.nilable( + OpenAI::Chat::CompletionCreateParams::WebSearchOptions::SearchContextSize::OrSymbol + ) ) end attr_reader :search_context_size sig do params( - search_context_size: OpenAI::Models::Chat::CompletionCreateParams::WebSearchOptions::SearchContextSize::OrSymbol - ) - .void + search_context_size: + OpenAI::Chat::CompletionCreateParams::WebSearchOptions::SearchContextSize::OrSymbol + ).void end attr_writer :search_context_size # Approximate location parameters for the search. - sig { returns(T.nilable(OpenAI::Models::Chat::CompletionCreateParams::WebSearchOptions::UserLocation)) } + sig do + returns( + T.nilable( + OpenAI::Chat::CompletionCreateParams::WebSearchOptions::UserLocation + ) + ) + end attr_reader :user_location sig do params( - user_location: T.nilable( - T.any( - OpenAI::Models::Chat::CompletionCreateParams::WebSearchOptions::UserLocation, - OpenAI::Internal::AnyHash + user_location: + T.nilable( + OpenAI::Chat::CompletionCreateParams::WebSearchOptions::UserLocation::OrHash ) - ) - ) - .void + ).void end attr_writer :user_location @@ -923,15 +1092,13 @@ module OpenAI # [web search tool](https://platform.openai.com/docs/guides/tools-web-search?api-mode=chat). sig do params( - search_context_size: OpenAI::Models::Chat::CompletionCreateParams::WebSearchOptions::SearchContextSize::OrSymbol, - user_location: T.nilable( - T.any( - OpenAI::Models::Chat::CompletionCreateParams::WebSearchOptions::UserLocation, - OpenAI::Internal::AnyHash + search_context_size: + OpenAI::Chat::CompletionCreateParams::WebSearchOptions::SearchContextSize::OrSymbol, + user_location: + T.nilable( + OpenAI::Chat::CompletionCreateParams::WebSearchOptions::UserLocation::OrHash ) - ) - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # High level guidance for the amount of context window space to use for the @@ -939,17 +1106,23 @@ module OpenAI search_context_size: nil, # Approximate location parameters for the search. user_location: nil - ); end + ) + end + sig do - override - .returns( - { - search_context_size: OpenAI::Models::Chat::CompletionCreateParams::WebSearchOptions::SearchContextSize::OrSymbol, - user_location: T.nilable(OpenAI::Models::Chat::CompletionCreateParams::WebSearchOptions::UserLocation) - } - ) + override.returns( + { + search_context_size: + OpenAI::Chat::CompletionCreateParams::WebSearchOptions::SearchContextSize::OrSymbol, + user_location: + T.nilable( + OpenAI::Chat::CompletionCreateParams::WebSearchOptions::UserLocation + ) + } + ) + end + def to_hash end - def to_hash; end # High level guidance for the amount of context window space to use for the # search. One of `low`, `medium`, or `high`. `medium` is the default. @@ -957,47 +1130,58 @@ module OpenAI extend OpenAI::Internal::Type::Enum TaggedSymbol = - T.type_alias { T.all(Symbol, OpenAI::Models::Chat::CompletionCreateParams::WebSearchOptions::SearchContextSize) } + T.type_alias do + T.all( + Symbol, + OpenAI::Chat::CompletionCreateParams::WebSearchOptions::SearchContextSize + ) + end OrSymbol = T.type_alias { T.any(Symbol, String) } LOW = T.let( :low, - OpenAI::Models::Chat::CompletionCreateParams::WebSearchOptions::SearchContextSize::TaggedSymbol + OpenAI::Chat::CompletionCreateParams::WebSearchOptions::SearchContextSize::TaggedSymbol ) MEDIUM = T.let( :medium, - OpenAI::Models::Chat::CompletionCreateParams::WebSearchOptions::SearchContextSize::TaggedSymbol + OpenAI::Chat::CompletionCreateParams::WebSearchOptions::SearchContextSize::TaggedSymbol ) HIGH = T.let( :high, - OpenAI::Models::Chat::CompletionCreateParams::WebSearchOptions::SearchContextSize::TaggedSymbol + OpenAI::Chat::CompletionCreateParams::WebSearchOptions::SearchContextSize::TaggedSymbol ) sig do - override - .returns( - T::Array[OpenAI::Models::Chat::CompletionCreateParams::WebSearchOptions::SearchContextSize::TaggedSymbol] - ) + override.returns( + T::Array[ + OpenAI::Chat::CompletionCreateParams::WebSearchOptions::SearchContextSize::TaggedSymbol + ] + ) + end + def self.values end - def self.values; end end class UserLocation < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Approximate location parameters for the search. - sig { returns(OpenAI::Models::Chat::CompletionCreateParams::WebSearchOptions::UserLocation::Approximate) } + sig do + returns( + OpenAI::Chat::CompletionCreateParams::WebSearchOptions::UserLocation::Approximate + ) + end attr_reader :approximate sig do params( - approximate: T.any( - OpenAI::Models::Chat::CompletionCreateParams::WebSearchOptions::UserLocation::Approximate, - OpenAI::Internal::AnyHash - ) - ) - .void + approximate: + OpenAI::Chat::CompletionCreateParams::WebSearchOptions::UserLocation::Approximate::OrHash + ).void end attr_writer :approximate @@ -1008,32 +1192,35 @@ module OpenAI # Approximate location parameters for the search. sig do params( - approximate: T.any( - OpenAI::Models::Chat::CompletionCreateParams::WebSearchOptions::UserLocation::Approximate, - OpenAI::Internal::AnyHash - ), + approximate: + OpenAI::Chat::CompletionCreateParams::WebSearchOptions::UserLocation::Approximate::OrHash, type: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # Approximate location parameters for the search. approximate:, # The type of location approximation. Always `approximate`. type: :approximate - ); end + ) + end + sig do - override - .returns( - { - approximate: OpenAI::Models::Chat::CompletionCreateParams::WebSearchOptions::UserLocation::Approximate, - type: Symbol - } - ) + override.returns( + { + approximate: + OpenAI::Chat::CompletionCreateParams::WebSearchOptions::UserLocation::Approximate, + type: Symbol + } + ) + end + def to_hash end - def to_hash; end class Approximate < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Free text input for the city of the user, e.g. `San Francisco`. sig { returns(T.nilable(String)) } attr_reader :city @@ -1084,9 +1271,21 @@ module OpenAI # The [IANA timezone](https://timeapi.io/documentation/iana-timezones) of the # user, e.g. `America/Los_Angeles`. timezone: nil - ); end - sig { override.returns({city: String, country: String, region: String, timezone: String}) } - def to_hash; end + ) + end + + sig do + override.returns( + { + city: String, + country: String, + region: String, + timezone: String + } + ) + end + def to_hash + end end end end diff --git a/rbi/openai/models/chat/completion_delete_params.rbi b/rbi/openai/models/chat/completion_delete_params.rbi index 42ccf3bf..b960e8e9 100644 --- a/rbi/openai/models/chat/completion_delete_params.rbi +++ b/rbi/openai/models/chat/completion_delete_params.rbi @@ -7,18 +7,19 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + sig do - params( - request_options: T.any( - OpenAI::RequestOptions, - OpenAI::Internal::AnyHash - ) - ).returns(T.attached_class) + params(request_options: OpenAI::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: OpenAI::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: OpenAI::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/openai/models/chat/completion_list_params.rbi b/rbi/openai/models/chat/completion_list_params.rbi index 2574d2d6..cf9b4c89 100644 --- a/rbi/openai/models/chat/completion_list_params.rbi +++ b/rbi/openai/models/chat/completion_list_params.rbi @@ -7,6 +7,8 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Identifier for the last chat completion from the previous pagination request. sig { returns(T.nilable(String)) } attr_reader :after @@ -36,10 +38,18 @@ module OpenAI # Sort order for Chat Completions by timestamp. Use `asc` for ascending order or # `desc` for descending order. Defaults to `asc`. - sig { returns(T.nilable(OpenAI::Models::Chat::CompletionListParams::Order::OrSymbol)) } + sig do + returns( + T.nilable(OpenAI::Chat::CompletionListParams::Order::OrSymbol) + ) + end attr_reader :order - sig { params(order: OpenAI::Models::Chat::CompletionListParams::Order::OrSymbol).void } + sig do + params( + order: OpenAI::Chat::CompletionListParams::Order::OrSymbol + ).void + end attr_writer :order sig do @@ -48,10 +58,9 @@ module OpenAI limit: Integer, metadata: T.nilable(T::Hash[Symbol, String]), model: String, - order: OpenAI::Models::Chat::CompletionListParams::Order::OrSymbol, - request_options: T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash) - ) - .returns(T.attached_class) + order: OpenAI::Chat::CompletionListParams::Order::OrSymbol, + request_options: OpenAI::RequestOptions::OrHash + ).returns(T.attached_class) end def self.new( # Identifier for the last chat completion from the previous pagination request. @@ -68,35 +77,50 @@ module OpenAI # `desc` for descending order. Defaults to `asc`. order: nil, request_options: {} - ); end + ) + end + sig do - override - .returns( - { - after: String, - limit: Integer, - metadata: T.nilable(T::Hash[Symbol, String]), - model: String, - order: OpenAI::Models::Chat::CompletionListParams::Order::OrSymbol, - request_options: OpenAI::RequestOptions - } - ) + override.returns( + { + after: String, + limit: Integer, + metadata: T.nilable(T::Hash[Symbol, String]), + model: String, + order: OpenAI::Chat::CompletionListParams::Order::OrSymbol, + request_options: OpenAI::RequestOptions + } + ) + end + def to_hash end - def to_hash; end # Sort order for Chat Completions by timestamp. Use `asc` for ascending order or # `desc` for descending order. Defaults to `asc`. module Order extend OpenAI::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::Chat::CompletionListParams::Order) } + TaggedSymbol = + T.type_alias do + T.all(Symbol, OpenAI::Chat::CompletionListParams::Order) + end OrSymbol = T.type_alias { T.any(Symbol, String) } - ASC = T.let(:asc, OpenAI::Models::Chat::CompletionListParams::Order::TaggedSymbol) - DESC = T.let(:desc, OpenAI::Models::Chat::CompletionListParams::Order::TaggedSymbol) + ASC = + T.let(:asc, OpenAI::Chat::CompletionListParams::Order::TaggedSymbol) + DESC = + T.let( + :desc, + OpenAI::Chat::CompletionListParams::Order::TaggedSymbol + ) - sig { override.returns(T::Array[OpenAI::Models::Chat::CompletionListParams::Order::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[OpenAI::Chat::CompletionListParams::Order::TaggedSymbol] + ) + end + def self.values + end end end end diff --git a/rbi/openai/models/chat/completion_retrieve_params.rbi b/rbi/openai/models/chat/completion_retrieve_params.rbi index 3cb4b992..94561ed0 100644 --- a/rbi/openai/models/chat/completion_retrieve_params.rbi +++ b/rbi/openai/models/chat/completion_retrieve_params.rbi @@ -7,18 +7,19 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + sig do - params( - request_options: T.any( - OpenAI::RequestOptions, - OpenAI::Internal::AnyHash - ) - ).returns(T.attached_class) + params(request_options: OpenAI::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: OpenAI::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: OpenAI::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/openai/models/chat/completion_update_params.rbi b/rbi/openai/models/chat/completion_update_params.rbi index 48669c83..0055be95 100644 --- a/rbi/openai/models/chat/completion_update_params.rbi +++ b/rbi/openai/models/chat/completion_update_params.rbi @@ -7,6 +7,8 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # 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. @@ -19,9 +21,8 @@ module OpenAI sig do params( metadata: T.nilable(T::Hash[Symbol, String]), - request_options: T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash) - ) - .returns(T.attached_class) + request_options: OpenAI::RequestOptions::OrHash + ).returns(T.attached_class) end def self.new( # Set of 16 key-value pairs that can be attached to an object. This can be useful @@ -32,7 +33,9 @@ module OpenAI # a maximum length of 512 characters. metadata:, request_options: {} - ); end + ) + end + sig do override.returns( { @@ -41,7 +44,8 @@ module OpenAI } ) end - def to_hash; end + def to_hash + end end end end diff --git a/rbi/openai/models/chat/completions/message_list_params.rbi b/rbi/openai/models/chat/completions/message_list_params.rbi index aa957ac1..f61f0565 100644 --- a/rbi/openai/models/chat/completions/message_list_params.rbi +++ b/rbi/openai/models/chat/completions/message_list_params.rbi @@ -8,6 +8,9 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Identifier for the last message from the previous pagination request. sig { returns(T.nilable(String)) } attr_reader :after @@ -24,20 +27,31 @@ module OpenAI # Sort order for messages by timestamp. Use `asc` for ascending order or `desc` # for descending order. Defaults to `asc`. - sig { returns(T.nilable(OpenAI::Models::Chat::Completions::MessageListParams::Order::OrSymbol)) } + sig do + returns( + T.nilable( + OpenAI::Chat::Completions::MessageListParams::Order::OrSymbol + ) + ) + end attr_reader :order - sig { params(order: OpenAI::Models::Chat::Completions::MessageListParams::Order::OrSymbol).void } + sig do + params( + order: + OpenAI::Chat::Completions::MessageListParams::Order::OrSymbol + ).void + end attr_writer :order sig do params( after: String, limit: Integer, - order: OpenAI::Models::Chat::Completions::MessageListParams::Order::OrSymbol, - request_options: T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash) - ) - .returns(T.attached_class) + order: + OpenAI::Chat::Completions::MessageListParams::Order::OrSymbol, + request_options: OpenAI::RequestOptions::OrHash + ).returns(T.attached_class) end def self.new( # Identifier for the last message from the previous pagination request. @@ -48,19 +62,22 @@ module OpenAI # for descending order. Defaults to `asc`. order: nil, request_options: {} - ); end + ) + end + sig do - override - .returns( - { - after: String, - limit: Integer, - order: OpenAI::Models::Chat::Completions::MessageListParams::Order::OrSymbol, - request_options: OpenAI::RequestOptions - } - ) + override.returns( + { + after: String, + limit: Integer, + order: + OpenAI::Chat::Completions::MessageListParams::Order::OrSymbol, + request_options: OpenAI::RequestOptions + } + ) + end + def to_hash end - def to_hash; end # Sort order for messages by timestamp. Use `asc` for ascending order or `desc` # for descending order. Defaults to `asc`. @@ -68,14 +85,34 @@ module OpenAI extend OpenAI::Internal::Type::Enum TaggedSymbol = - T.type_alias { T.all(Symbol, OpenAI::Models::Chat::Completions::MessageListParams::Order) } + T.type_alias do + T.all( + Symbol, + OpenAI::Chat::Completions::MessageListParams::Order + ) + end OrSymbol = T.type_alias { T.any(Symbol, String) } - ASC = T.let(:asc, OpenAI::Models::Chat::Completions::MessageListParams::Order::TaggedSymbol) - DESC = T.let(:desc, OpenAI::Models::Chat::Completions::MessageListParams::Order::TaggedSymbol) + ASC = + T.let( + :asc, + OpenAI::Chat::Completions::MessageListParams::Order::TaggedSymbol + ) + DESC = + T.let( + :desc, + OpenAI::Chat::Completions::MessageListParams::Order::TaggedSymbol + ) - sig { override.returns(T::Array[OpenAI::Models::Chat::Completions::MessageListParams::Order::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[ + OpenAI::Chat::Completions::MessageListParams::Order::TaggedSymbol + ] + ) + end + def self.values + end end end end diff --git a/rbi/openai/models/chat_model.rbi b/rbi/openai/models/chat_model.rbi index f4c20501..106901df 100644 --- a/rbi/openai/models/chat_model.rbi +++ b/rbi/openai/models/chat_model.rbi @@ -5,71 +5,113 @@ module OpenAI module ChatModel extend OpenAI::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::ChatModel) } + TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::ChatModel) } OrSymbol = T.type_alias { T.any(Symbol, String) } - GPT_4_1 = T.let(:"gpt-4.1", OpenAI::Models::ChatModel::TaggedSymbol) - GPT_4_1_MINI = T.let(:"gpt-4.1-mini", OpenAI::Models::ChatModel::TaggedSymbol) - GPT_4_1_NANO = T.let(:"gpt-4.1-nano", OpenAI::Models::ChatModel::TaggedSymbol) - GPT_4_1_2025_04_14 = T.let(:"gpt-4.1-2025-04-14", OpenAI::Models::ChatModel::TaggedSymbol) - GPT_4_1_MINI_2025_04_14 = T.let(:"gpt-4.1-mini-2025-04-14", OpenAI::Models::ChatModel::TaggedSymbol) - GPT_4_1_NANO_2025_04_14 = T.let(:"gpt-4.1-nano-2025-04-14", OpenAI::Models::ChatModel::TaggedSymbol) - O4_MINI = T.let(:"o4-mini", OpenAI::Models::ChatModel::TaggedSymbol) - O4_MINI_2025_04_16 = T.let(:"o4-mini-2025-04-16", OpenAI::Models::ChatModel::TaggedSymbol) - O3 = T.let(:o3, OpenAI::Models::ChatModel::TaggedSymbol) - O3_2025_04_16 = T.let(:"o3-2025-04-16", OpenAI::Models::ChatModel::TaggedSymbol) - O3_MINI = T.let(:"o3-mini", OpenAI::Models::ChatModel::TaggedSymbol) - O3_MINI_2025_01_31 = T.let(:"o3-mini-2025-01-31", OpenAI::Models::ChatModel::TaggedSymbol) - O1 = T.let(:o1, OpenAI::Models::ChatModel::TaggedSymbol) - O1_2024_12_17 = T.let(:"o1-2024-12-17", OpenAI::Models::ChatModel::TaggedSymbol) - O1_PREVIEW = T.let(:"o1-preview", OpenAI::Models::ChatModel::TaggedSymbol) - O1_PREVIEW_2024_09_12 = T.let(:"o1-preview-2024-09-12", OpenAI::Models::ChatModel::TaggedSymbol) - O1_MINI = T.let(:"o1-mini", OpenAI::Models::ChatModel::TaggedSymbol) - O1_MINI_2024_09_12 = T.let(:"o1-mini-2024-09-12", OpenAI::Models::ChatModel::TaggedSymbol) - GPT_4O = T.let(:"gpt-4o", OpenAI::Models::ChatModel::TaggedSymbol) - GPT_4O_2024_11_20 = T.let(:"gpt-4o-2024-11-20", OpenAI::Models::ChatModel::TaggedSymbol) - GPT_4O_2024_08_06 = T.let(:"gpt-4o-2024-08-06", OpenAI::Models::ChatModel::TaggedSymbol) - GPT_4O_2024_05_13 = T.let(:"gpt-4o-2024-05-13", OpenAI::Models::ChatModel::TaggedSymbol) - GPT_4O_AUDIO_PREVIEW = T.let(:"gpt-4o-audio-preview", OpenAI::Models::ChatModel::TaggedSymbol) + GPT_4_1 = T.let(:"gpt-4.1", OpenAI::ChatModel::TaggedSymbol) + GPT_4_1_MINI = T.let(:"gpt-4.1-mini", OpenAI::ChatModel::TaggedSymbol) + GPT_4_1_NANO = T.let(:"gpt-4.1-nano", OpenAI::ChatModel::TaggedSymbol) + GPT_4_1_2025_04_14 = + T.let(:"gpt-4.1-2025-04-14", OpenAI::ChatModel::TaggedSymbol) + GPT_4_1_MINI_2025_04_14 = + T.let(:"gpt-4.1-mini-2025-04-14", OpenAI::ChatModel::TaggedSymbol) + GPT_4_1_NANO_2025_04_14 = + T.let(:"gpt-4.1-nano-2025-04-14", OpenAI::ChatModel::TaggedSymbol) + O4_MINI = T.let(:"o4-mini", OpenAI::ChatModel::TaggedSymbol) + O4_MINI_2025_04_16 = + T.let(:"o4-mini-2025-04-16", OpenAI::ChatModel::TaggedSymbol) + O3 = T.let(:o3, OpenAI::ChatModel::TaggedSymbol) + O3_2025_04_16 = T.let(:"o3-2025-04-16", OpenAI::ChatModel::TaggedSymbol) + O3_MINI = T.let(:"o3-mini", OpenAI::ChatModel::TaggedSymbol) + O3_MINI_2025_01_31 = + T.let(:"o3-mini-2025-01-31", OpenAI::ChatModel::TaggedSymbol) + O1 = T.let(:o1, OpenAI::ChatModel::TaggedSymbol) + O1_2024_12_17 = T.let(:"o1-2024-12-17", OpenAI::ChatModel::TaggedSymbol) + O1_PREVIEW = T.let(:"o1-preview", OpenAI::ChatModel::TaggedSymbol) + O1_PREVIEW_2024_09_12 = + T.let(:"o1-preview-2024-09-12", OpenAI::ChatModel::TaggedSymbol) + O1_MINI = T.let(:"o1-mini", OpenAI::ChatModel::TaggedSymbol) + O1_MINI_2024_09_12 = + T.let(:"o1-mini-2024-09-12", OpenAI::ChatModel::TaggedSymbol) + GPT_4O = T.let(:"gpt-4o", OpenAI::ChatModel::TaggedSymbol) + GPT_4O_2024_11_20 = + T.let(:"gpt-4o-2024-11-20", OpenAI::ChatModel::TaggedSymbol) + GPT_4O_2024_08_06 = + T.let(:"gpt-4o-2024-08-06", OpenAI::ChatModel::TaggedSymbol) + GPT_4O_2024_05_13 = + T.let(:"gpt-4o-2024-05-13", OpenAI::ChatModel::TaggedSymbol) + GPT_4O_AUDIO_PREVIEW = + T.let(:"gpt-4o-audio-preview", OpenAI::ChatModel::TaggedSymbol) GPT_4O_AUDIO_PREVIEW_2024_10_01 = - T.let(:"gpt-4o-audio-preview-2024-10-01", OpenAI::Models::ChatModel::TaggedSymbol) + T.let( + :"gpt-4o-audio-preview-2024-10-01", + OpenAI::ChatModel::TaggedSymbol + ) GPT_4O_AUDIO_PREVIEW_2024_12_17 = - T.let(:"gpt-4o-audio-preview-2024-12-17", OpenAI::Models::ChatModel::TaggedSymbol) - GPT_4O_MINI_AUDIO_PREVIEW = T.let(:"gpt-4o-mini-audio-preview", OpenAI::Models::ChatModel::TaggedSymbol) + T.let( + :"gpt-4o-audio-preview-2024-12-17", + OpenAI::ChatModel::TaggedSymbol + ) + GPT_4O_MINI_AUDIO_PREVIEW = + T.let(:"gpt-4o-mini-audio-preview", OpenAI::ChatModel::TaggedSymbol) GPT_4O_MINI_AUDIO_PREVIEW_2024_12_17 = - T.let(:"gpt-4o-mini-audio-preview-2024-12-17", OpenAI::Models::ChatModel::TaggedSymbol) - GPT_4O_SEARCH_PREVIEW = T.let(:"gpt-4o-search-preview", OpenAI::Models::ChatModel::TaggedSymbol) + T.let( + :"gpt-4o-mini-audio-preview-2024-12-17", + OpenAI::ChatModel::TaggedSymbol + ) + GPT_4O_SEARCH_PREVIEW = + T.let(:"gpt-4o-search-preview", OpenAI::ChatModel::TaggedSymbol) GPT_4O_MINI_SEARCH_PREVIEW = - T.let(:"gpt-4o-mini-search-preview", OpenAI::Models::ChatModel::TaggedSymbol) + T.let(:"gpt-4o-mini-search-preview", OpenAI::ChatModel::TaggedSymbol) GPT_4O_SEARCH_PREVIEW_2025_03_11 = - T.let(:"gpt-4o-search-preview-2025-03-11", OpenAI::Models::ChatModel::TaggedSymbol) + T.let( + :"gpt-4o-search-preview-2025-03-11", + OpenAI::ChatModel::TaggedSymbol + ) GPT_4O_MINI_SEARCH_PREVIEW_2025_03_11 = - T.let(:"gpt-4o-mini-search-preview-2025-03-11", OpenAI::Models::ChatModel::TaggedSymbol) - CHATGPT_4O_LATEST = T.let(:"chatgpt-4o-latest", OpenAI::Models::ChatModel::TaggedSymbol) - GPT_4O_MINI = T.let(:"gpt-4o-mini", OpenAI::Models::ChatModel::TaggedSymbol) - GPT_4O_MINI_2024_07_18 = T.let(:"gpt-4o-mini-2024-07-18", OpenAI::Models::ChatModel::TaggedSymbol) - GPT_4_TURBO = T.let(:"gpt-4-turbo", OpenAI::Models::ChatModel::TaggedSymbol) - GPT_4_TURBO_2024_04_09 = T.let(:"gpt-4-turbo-2024-04-09", OpenAI::Models::ChatModel::TaggedSymbol) - GPT_4_0125_PREVIEW = T.let(:"gpt-4-0125-preview", OpenAI::Models::ChatModel::TaggedSymbol) - GPT_4_TURBO_PREVIEW = T.let(:"gpt-4-turbo-preview", OpenAI::Models::ChatModel::TaggedSymbol) - GPT_4_1106_PREVIEW = T.let(:"gpt-4-1106-preview", OpenAI::Models::ChatModel::TaggedSymbol) - GPT_4_VISION_PREVIEW = T.let(:"gpt-4-vision-preview", OpenAI::Models::ChatModel::TaggedSymbol) - GPT_4 = T.let(:"gpt-4", OpenAI::Models::ChatModel::TaggedSymbol) - GPT_4_0314 = T.let(:"gpt-4-0314", OpenAI::Models::ChatModel::TaggedSymbol) - GPT_4_0613 = T.let(:"gpt-4-0613", OpenAI::Models::ChatModel::TaggedSymbol) - GPT_4_32K = T.let(:"gpt-4-32k", OpenAI::Models::ChatModel::TaggedSymbol) - GPT_4_32K_0314 = T.let(:"gpt-4-32k-0314", OpenAI::Models::ChatModel::TaggedSymbol) - GPT_4_32K_0613 = T.let(:"gpt-4-32k-0613", OpenAI::Models::ChatModel::TaggedSymbol) - GPT_3_5_TURBO = T.let(:"gpt-3.5-turbo", OpenAI::Models::ChatModel::TaggedSymbol) - GPT_3_5_TURBO_16K = T.let(:"gpt-3.5-turbo-16k", OpenAI::Models::ChatModel::TaggedSymbol) - GPT_3_5_TURBO_0301 = T.let(:"gpt-3.5-turbo-0301", OpenAI::Models::ChatModel::TaggedSymbol) - GPT_3_5_TURBO_0613 = T.let(:"gpt-3.5-turbo-0613", OpenAI::Models::ChatModel::TaggedSymbol) - GPT_3_5_TURBO_1106 = T.let(:"gpt-3.5-turbo-1106", OpenAI::Models::ChatModel::TaggedSymbol) - GPT_3_5_TURBO_0125 = T.let(:"gpt-3.5-turbo-0125", OpenAI::Models::ChatModel::TaggedSymbol) - GPT_3_5_TURBO_16K_0613 = T.let(:"gpt-3.5-turbo-16k-0613", OpenAI::Models::ChatModel::TaggedSymbol) + T.let( + :"gpt-4o-mini-search-preview-2025-03-11", + OpenAI::ChatModel::TaggedSymbol + ) + CHATGPT_4O_LATEST = + T.let(:"chatgpt-4o-latest", OpenAI::ChatModel::TaggedSymbol) + GPT_4O_MINI = T.let(:"gpt-4o-mini", OpenAI::ChatModel::TaggedSymbol) + GPT_4O_MINI_2024_07_18 = + T.let(:"gpt-4o-mini-2024-07-18", OpenAI::ChatModel::TaggedSymbol) + GPT_4_TURBO = T.let(:"gpt-4-turbo", OpenAI::ChatModel::TaggedSymbol) + GPT_4_TURBO_2024_04_09 = + T.let(:"gpt-4-turbo-2024-04-09", OpenAI::ChatModel::TaggedSymbol) + GPT_4_0125_PREVIEW = + T.let(:"gpt-4-0125-preview", OpenAI::ChatModel::TaggedSymbol) + GPT_4_TURBO_PREVIEW = + T.let(:"gpt-4-turbo-preview", OpenAI::ChatModel::TaggedSymbol) + GPT_4_1106_PREVIEW = + T.let(:"gpt-4-1106-preview", OpenAI::ChatModel::TaggedSymbol) + GPT_4_VISION_PREVIEW = + T.let(:"gpt-4-vision-preview", OpenAI::ChatModel::TaggedSymbol) + GPT_4 = T.let(:"gpt-4", OpenAI::ChatModel::TaggedSymbol) + GPT_4_0314 = T.let(:"gpt-4-0314", OpenAI::ChatModel::TaggedSymbol) + GPT_4_0613 = T.let(:"gpt-4-0613", OpenAI::ChatModel::TaggedSymbol) + GPT_4_32K = T.let(:"gpt-4-32k", OpenAI::ChatModel::TaggedSymbol) + GPT_4_32K_0314 = T.let(:"gpt-4-32k-0314", OpenAI::ChatModel::TaggedSymbol) + GPT_4_32K_0613 = T.let(:"gpt-4-32k-0613", OpenAI::ChatModel::TaggedSymbol) + GPT_3_5_TURBO = T.let(:"gpt-3.5-turbo", OpenAI::ChatModel::TaggedSymbol) + GPT_3_5_TURBO_16K = + T.let(:"gpt-3.5-turbo-16k", OpenAI::ChatModel::TaggedSymbol) + GPT_3_5_TURBO_0301 = + T.let(:"gpt-3.5-turbo-0301", OpenAI::ChatModel::TaggedSymbol) + GPT_3_5_TURBO_0613 = + T.let(:"gpt-3.5-turbo-0613", OpenAI::ChatModel::TaggedSymbol) + GPT_3_5_TURBO_1106 = + T.let(:"gpt-3.5-turbo-1106", OpenAI::ChatModel::TaggedSymbol) + GPT_3_5_TURBO_0125 = + T.let(:"gpt-3.5-turbo-0125", OpenAI::ChatModel::TaggedSymbol) + GPT_3_5_TURBO_16K_0613 = + T.let(:"gpt-3.5-turbo-16k-0613", OpenAI::ChatModel::TaggedSymbol) - sig { override.returns(T::Array[OpenAI::Models::ChatModel::TaggedSymbol]) } - def self.values; end + sig { override.returns(T::Array[OpenAI::ChatModel::TaggedSymbol]) } + def self.values + end end end end diff --git a/rbi/openai/models/comparison_filter.rbi b/rbi/openai/models/comparison_filter.rbi index 43b5c434..3030e3c5 100644 --- a/rbi/openai/models/comparison_filter.rbi +++ b/rbi/openai/models/comparison_filter.rbi @@ -3,6 +3,8 @@ module OpenAI module Models class ComparisonFilter < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The key to compare against the value. sig { returns(String) } attr_accessor :key @@ -15,7 +17,7 @@ module OpenAI # - `gte`: greater than or equal # - `lt`: less than # - `lte`: less than or equal - sig { returns(OpenAI::Models::ComparisonFilter::Type::OrSymbol) } + sig { returns(OpenAI::ComparisonFilter::Type::OrSymbol) } attr_accessor :type # The value to compare against the attribute key; supports string, number, or @@ -28,10 +30,9 @@ module OpenAI sig do params( key: String, - type: OpenAI::Models::ComparisonFilter::Type::OrSymbol, + type: OpenAI::ComparisonFilter::Type::OrSymbol, value: T.any(String, Float, T::Boolean) - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # The key to compare against the value. @@ -48,14 +49,20 @@ module OpenAI # The value to compare against the attribute key; supports string, number, or # boolean types. value: - ); end + ) + end + sig do - override - .returns( - {key: String, type: OpenAI::Models::ComparisonFilter::Type::OrSymbol, value: T.any(String, Float, T::Boolean)} - ) + override.returns( + { + key: String, + type: OpenAI::ComparisonFilter::Type::OrSymbol, + value: T.any(String, Float, T::Boolean) + } + ) + end + def to_hash end - def to_hash; end # Specifies the comparison operator: `eq`, `ne`, `gt`, `gte`, `lt`, `lte`. # @@ -68,18 +75,24 @@ module OpenAI module Type extend OpenAI::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::ComparisonFilter::Type) } + TaggedSymbol = + T.type_alias { T.all(Symbol, OpenAI::ComparisonFilter::Type) } OrSymbol = T.type_alias { T.any(Symbol, String) } - EQ = T.let(:eq, OpenAI::Models::ComparisonFilter::Type::TaggedSymbol) - NE = T.let(:ne, OpenAI::Models::ComparisonFilter::Type::TaggedSymbol) - GT = T.let(:gt, OpenAI::Models::ComparisonFilter::Type::TaggedSymbol) - GTE = T.let(:gte, OpenAI::Models::ComparisonFilter::Type::TaggedSymbol) - LT = T.let(:lt, OpenAI::Models::ComparisonFilter::Type::TaggedSymbol) - LTE = T.let(:lte, OpenAI::Models::ComparisonFilter::Type::TaggedSymbol) + EQ = T.let(:eq, OpenAI::ComparisonFilter::Type::TaggedSymbol) + NE = T.let(:ne, OpenAI::ComparisonFilter::Type::TaggedSymbol) + GT = T.let(:gt, OpenAI::ComparisonFilter::Type::TaggedSymbol) + GTE = T.let(:gte, OpenAI::ComparisonFilter::Type::TaggedSymbol) + LT = T.let(:lt, OpenAI::ComparisonFilter::Type::TaggedSymbol) + LTE = T.let(:lte, OpenAI::ComparisonFilter::Type::TaggedSymbol) - sig { override.returns(T::Array[OpenAI::Models::ComparisonFilter::Type::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[OpenAI::ComparisonFilter::Type::TaggedSymbol] + ) + end + def self.values + end end # The value to compare against the attribute key; supports string, number, or @@ -87,8 +100,13 @@ module OpenAI module Value extend OpenAI::Internal::Type::Union - sig { override.returns([String, Float, T::Boolean]) } - def self.variants; end + Variants = T.type_alias { T.any(String, Float, T::Boolean) } + + sig do + override.returns(T::Array[OpenAI::ComparisonFilter::Value::Variants]) + end + def self.variants + end end end end diff --git a/rbi/openai/models/completion.rbi b/rbi/openai/models/completion.rbi index 4cc82449..9eab71d9 100644 --- a/rbi/openai/models/completion.rbi +++ b/rbi/openai/models/completion.rbi @@ -3,12 +3,14 @@ module OpenAI module Models class Completion < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # A unique identifier for the completion. sig { returns(String) } attr_accessor :id # The list of completion choices the model generated for the input prompt. - sig { returns(T::Array[OpenAI::Models::CompletionChoice]) } + sig { returns(T::Array[OpenAI::CompletionChoice]) } attr_accessor :choices # The Unix timestamp (in seconds) of when the completion was created. @@ -34,10 +36,10 @@ module OpenAI attr_writer :system_fingerprint # Usage statistics for the completion request. - sig { returns(T.nilable(OpenAI::Models::CompletionUsage)) } + sig { returns(T.nilable(OpenAI::CompletionUsage)) } attr_reader :usage - sig { params(usage: T.any(OpenAI::Models::CompletionUsage, OpenAI::Internal::AnyHash)).void } + sig { params(usage: OpenAI::CompletionUsage::OrHash).void } attr_writer :usage # Represents a completion response from the API. Note: both the streamed and @@ -45,14 +47,13 @@ module OpenAI sig do params( id: String, - choices: T::Array[T.any(OpenAI::Models::CompletionChoice, OpenAI::Internal::AnyHash)], + choices: T::Array[OpenAI::CompletionChoice::OrHash], created: Integer, model: String, system_fingerprint: String, - usage: T.any(OpenAI::Models::CompletionUsage, OpenAI::Internal::AnyHash), + usage: OpenAI::CompletionUsage::OrHash, object: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # A unique identifier for the completion. @@ -72,22 +73,24 @@ module OpenAI usage: nil, # The object type, which is always "text_completion" object: :text_completion - ); end + ) + end + sig do - override - .returns( - { - id: String, - choices: T::Array[OpenAI::Models::CompletionChoice], - created: Integer, - model: String, - object: Symbol, - system_fingerprint: String, - usage: OpenAI::Models::CompletionUsage - } - ) + override.returns( + { + id: String, + choices: T::Array[OpenAI::CompletionChoice], + created: Integer, + model: String, + object: Symbol, + system_fingerprint: String, + usage: OpenAI::CompletionUsage + } + ) + end + def to_hash end - def to_hash; end end end end diff --git a/rbi/openai/models/completion_choice.rbi b/rbi/openai/models/completion_choice.rbi index 5eaba069..17b28983 100644 --- a/rbi/openai/models/completion_choice.rbi +++ b/rbi/openai/models/completion_choice.rbi @@ -3,22 +3,25 @@ module OpenAI module Models class CompletionChoice < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The reason the model stopped generating tokens. This will be `stop` if the model # hit a natural stop point or a provided stop sequence, `length` if the maximum # number of tokens specified in the request was reached, or `content_filter` if # content was omitted due to a flag from our content filters. - sig { returns(OpenAI::Models::CompletionChoice::FinishReason::TaggedSymbol) } + sig { returns(OpenAI::CompletionChoice::FinishReason::TaggedSymbol) } attr_accessor :finish_reason sig { returns(Integer) } attr_accessor :index - sig { returns(T.nilable(OpenAI::Models::CompletionChoice::Logprobs)) } + sig { returns(T.nilable(OpenAI::CompletionChoice::Logprobs)) } attr_reader :logprobs sig do - params(logprobs: T.nilable(T.any(OpenAI::Models::CompletionChoice::Logprobs, OpenAI::Internal::AnyHash))) - .void + params( + logprobs: T.nilable(OpenAI::CompletionChoice::Logprobs::OrHash) + ).void end attr_writer :logprobs @@ -27,12 +30,11 @@ module OpenAI sig do params( - finish_reason: OpenAI::Models::CompletionChoice::FinishReason::OrSymbol, + finish_reason: OpenAI::CompletionChoice::FinishReason::OrSymbol, index: Integer, - logprobs: T.nilable(T.any(OpenAI::Models::CompletionChoice::Logprobs, OpenAI::Internal::AnyHash)), + logprobs: T.nilable(OpenAI::CompletionChoice::Logprobs::OrHash), text: String - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # The reason the model stopped generating tokens. This will be `stop` if the model @@ -43,19 +45,21 @@ module OpenAI index:, logprobs:, text: - ); end + ) + end + sig do - override - .returns( - { - finish_reason: OpenAI::Models::CompletionChoice::FinishReason::TaggedSymbol, - index: Integer, - logprobs: T.nilable(OpenAI::Models::CompletionChoice::Logprobs), - text: String - } - ) + override.returns( + { + finish_reason: OpenAI::CompletionChoice::FinishReason::TaggedSymbol, + index: Integer, + logprobs: T.nilable(OpenAI::CompletionChoice::Logprobs), + text: String + } + ) + end + def to_hash end - def to_hash; end # The reason the model stopped generating tokens. This will be `stop` if the model # hit a natural stop point or a provided stop sequence, `length` if the maximum @@ -64,18 +68,32 @@ module OpenAI module FinishReason extend OpenAI::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::CompletionChoice::FinishReason) } + TaggedSymbol = + T.type_alias { T.all(Symbol, OpenAI::CompletionChoice::FinishReason) } OrSymbol = T.type_alias { T.any(Symbol, String) } - STOP = T.let(:stop, OpenAI::Models::CompletionChoice::FinishReason::TaggedSymbol) - LENGTH = T.let(:length, OpenAI::Models::CompletionChoice::FinishReason::TaggedSymbol) - CONTENT_FILTER = T.let(:content_filter, OpenAI::Models::CompletionChoice::FinishReason::TaggedSymbol) + STOP = + T.let(:stop, OpenAI::CompletionChoice::FinishReason::TaggedSymbol) + LENGTH = + T.let(:length, OpenAI::CompletionChoice::FinishReason::TaggedSymbol) + CONTENT_FILTER = + T.let( + :content_filter, + OpenAI::CompletionChoice::FinishReason::TaggedSymbol + ) - sig { override.returns(T::Array[OpenAI::Models::CompletionChoice::FinishReason::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[OpenAI::CompletionChoice::FinishReason::TaggedSymbol] + ) + end + def self.values + end end class Logprobs < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + sig { returns(T.nilable(T::Array[Integer])) } attr_reader :text_offset @@ -106,23 +124,28 @@ module OpenAI token_logprobs: T::Array[Float], tokens: T::Array[String], top_logprobs: T::Array[T::Hash[Symbol, Float]] - ) - .returns(T.attached_class) + ).returns(T.attached_class) + end + def self.new( + text_offset: nil, + token_logprobs: nil, + tokens: nil, + top_logprobs: nil + ) end - def self.new(text_offset: nil, token_logprobs: nil, tokens: nil, top_logprobs: nil); end sig do - override - .returns( - { - text_offset: T::Array[Integer], - token_logprobs: T::Array[Float], - tokens: T::Array[String], - top_logprobs: T::Array[T::Hash[Symbol, Float]] - } - ) + override.returns( + { + text_offset: T::Array[Integer], + token_logprobs: T::Array[Float], + tokens: T::Array[String], + top_logprobs: T::Array[T::Hash[Symbol, Float]] + } + ) + end + def to_hash end - def to_hash; end end end end diff --git a/rbi/openai/models/completion_create_params.rbi b/rbi/openai/models/completion_create_params.rbi index 058662fd..efe5336e 100644 --- a/rbi/openai/models/completion_create_params.rbi +++ b/rbi/openai/models/completion_create_params.rbi @@ -6,12 +6,16 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # ID of the model to use. You can use the # [List models](https://platform.openai.com/docs/api-reference/models/list) API to # see all of your available models, or see our # [Model overview](https://platform.openai.com/docs/models) for descriptions of # them. - sig { returns(T.any(String, OpenAI::Models::CompletionCreateParams::Model::OrSymbol)) } + sig do + returns(T.any(String, OpenAI::CompletionCreateParams::Model::OrSymbol)) + end attr_accessor :model # The prompt(s) to generate completions for, encoded as a string, array of @@ -21,7 +25,16 @@ module OpenAI # training, so if a prompt is not specified the model will generate as if from the # beginning of a new document. sig do - returns(T.nilable(T.any(String, T::Array[String], T::Array[Integer], T::Array[T::Array[Integer]]))) + returns( + T.nilable( + T.any( + String, + T::Array[String], + T::Array[Integer], + T::Array[T::Array[Integer]] + ) + ) + ) end attr_accessor :prompt @@ -116,14 +129,14 @@ module OpenAI attr_accessor :stop # Options for streaming response. Only set this when you set `stream: true`. - sig { returns(T.nilable(OpenAI::Models::Chat::ChatCompletionStreamOptions)) } + sig { returns(T.nilable(OpenAI::Chat::ChatCompletionStreamOptions)) } attr_reader :stream_options sig do params( - stream_options: T.nilable(T.any(OpenAI::Models::Chat::ChatCompletionStreamOptions, OpenAI::Internal::AnyHash)) - ) - .void + stream_options: + T.nilable(OpenAI::Chat::ChatCompletionStreamOptions::OrHash) + ).void end attr_writer :stream_options @@ -160,8 +173,16 @@ module OpenAI sig do params( - model: T.any(String, OpenAI::Models::CompletionCreateParams::Model::OrSymbol), - prompt: T.nilable(T.any(String, T::Array[String], T::Array[Integer], T::Array[T::Array[Integer]])), + model: T.any(String, OpenAI::CompletionCreateParams::Model::OrSymbol), + prompt: + T.nilable( + T.any( + String, + T::Array[String], + T::Array[Integer], + T::Array[T::Array[Integer]] + ) + ), best_of: T.nilable(Integer), echo: T.nilable(T::Boolean), frequency_penalty: T.nilable(Float), @@ -172,14 +193,14 @@ module OpenAI presence_penalty: T.nilable(Float), seed: T.nilable(Integer), stop: T.nilable(T.any(String, T::Array[String])), - stream_options: T.nilable(T.any(OpenAI::Models::Chat::ChatCompletionStreamOptions, OpenAI::Internal::AnyHash)), + stream_options: + T.nilable(OpenAI::Chat::ChatCompletionStreamOptions::OrHash), suffix: T.nilable(String), temperature: T.nilable(Float), top_p: T.nilable(Float), user: String, - request_options: T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash) - ) - .returns(T.attached_class) + request_options: OpenAI::RequestOptions::OrHash + ).returns(T.attached_class) end def self.new( # ID of the model to use. You can use the @@ -288,13 +309,16 @@ module OpenAI # [Learn more](https://platform.openai.com/docs/guides/safety-best-practices#end-user-ids). user: nil, request_options: {} - ); end + ) + end + sig do - override - .returns( - { - model: T.any(String, OpenAI::Models::CompletionCreateParams::Model::OrSymbol), - prompt: T.nilable( + override.returns( + { + model: + T.any(String, OpenAI::CompletionCreateParams::Model::OrSymbol), + prompt: + T.nilable( T.any( String, T::Array[String], @@ -302,26 +326,28 @@ module OpenAI T::Array[T::Array[Integer]] ) ), - best_of: T.nilable(Integer), - echo: T.nilable(T::Boolean), - frequency_penalty: T.nilable(Float), - logit_bias: T.nilable(T::Hash[Symbol, Integer]), - logprobs: T.nilable(Integer), - max_tokens: T.nilable(Integer), - n: T.nilable(Integer), - presence_penalty: T.nilable(Float), - seed: T.nilable(Integer), - stop: T.nilable(T.any(String, T::Array[String])), - stream_options: T.nilable(OpenAI::Models::Chat::ChatCompletionStreamOptions), - suffix: T.nilable(String), - temperature: T.nilable(Float), - top_p: T.nilable(Float), - user: String, - request_options: OpenAI::RequestOptions - } - ) + best_of: T.nilable(Integer), + echo: T.nilable(T::Boolean), + frequency_penalty: T.nilable(Float), + logit_bias: T.nilable(T::Hash[Symbol, Integer]), + logprobs: T.nilable(Integer), + max_tokens: T.nilable(Integer), + n: T.nilable(Integer), + presence_penalty: T.nilable(Float), + seed: T.nilable(Integer), + stop: T.nilable(T.any(String, T::Array[String])), + stream_options: + T.nilable(OpenAI::Chat::ChatCompletionStreamOptions), + suffix: T.nilable(String), + temperature: T.nilable(Float), + top_p: T.nilable(Float), + user: String, + request_options: OpenAI::RequestOptions + } + ) + end + def to_hash end - def to_hash; end # ID of the model to use. You can use the # [List models](https://platform.openai.com/docs/api-reference/models/list) API to @@ -331,16 +357,38 @@ module OpenAI module Model extend OpenAI::Internal::Type::Union - sig { override.returns([String, OpenAI::Models::CompletionCreateParams::Model::TaggedSymbol]) } - def self.variants; end + Variants = + T.type_alias do + T.any(String, OpenAI::CompletionCreateParams::Model::TaggedSymbol) + end - TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::CompletionCreateParams::Model) } + sig do + override.returns( + T::Array[OpenAI::CompletionCreateParams::Model::Variants] + ) + end + def self.variants + end + + TaggedSymbol = + T.type_alias { T.all(Symbol, OpenAI::CompletionCreateParams::Model) } OrSymbol = T.type_alias { T.any(Symbol, String) } GPT_3_5_TURBO_INSTRUCT = - T.let(:"gpt-3.5-turbo-instruct", OpenAI::Models::CompletionCreateParams::Model::TaggedSymbol) - DAVINCI_002 = T.let(:"davinci-002", OpenAI::Models::CompletionCreateParams::Model::TaggedSymbol) - BABBAGE_002 = T.let(:"babbage-002", OpenAI::Models::CompletionCreateParams::Model::TaggedSymbol) + T.let( + :"gpt-3.5-turbo-instruct", + OpenAI::CompletionCreateParams::Model::TaggedSymbol + ) + DAVINCI_002 = + T.let( + :"davinci-002", + OpenAI::CompletionCreateParams::Model::TaggedSymbol + ) + BABBAGE_002 = + T.let( + :"babbage-002", + OpenAI::CompletionCreateParams::Model::TaggedSymbol + ) end # The prompt(s) to generate completions for, encoded as a string, array of @@ -352,16 +400,41 @@ module OpenAI module Prompt extend OpenAI::Internal::Type::Union - sig { override.returns([String, T::Array[String], T::Array[Integer], T::Array[T::Array[Integer]]]) } - def self.variants; end + Variants = + T.type_alias do + T.any( + String, + T::Array[String], + T::Array[Integer], + T::Array[T::Array[Integer]] + ) + end + + sig do + override.returns( + T::Array[OpenAI::CompletionCreateParams::Prompt::Variants] + ) + end + def self.variants + end - StringArray = T.let(OpenAI::Internal::Type::ArrayOf[String], OpenAI::Internal::Type::Converter) + StringArray = + T.let( + OpenAI::Internal::Type::ArrayOf[String], + OpenAI::Internal::Type::Converter + ) - IntegerArray = T.let(OpenAI::Internal::Type::ArrayOf[Integer], OpenAI::Internal::Type::Converter) + IntegerArray = + T.let( + OpenAI::Internal::Type::ArrayOf[Integer], + OpenAI::Internal::Type::Converter + ) ArrayOfToken2DArray = T.let( - OpenAI::Internal::Type::ArrayOf[OpenAI::Internal::Type::ArrayOf[Integer]], + OpenAI::Internal::Type::ArrayOf[ + OpenAI::Internal::Type::ArrayOf[Integer] + ], OpenAI::Internal::Type::Converter ) end @@ -373,10 +446,21 @@ module OpenAI module Stop extend OpenAI::Internal::Type::Union - sig { override.returns([String, T::Array[String]]) } - def self.variants; end + Variants = T.type_alias { T.nilable(T.any(String, T::Array[String])) } + + sig do + override.returns( + T::Array[OpenAI::CompletionCreateParams::Stop::Variants] + ) + end + def self.variants + end - StringArray = T.let(OpenAI::Internal::Type::ArrayOf[String], OpenAI::Internal::Type::Converter) + StringArray = + T.let( + OpenAI::Internal::Type::ArrayOf[String], + OpenAI::Internal::Type::Converter + ) end end end diff --git a/rbi/openai/models/completion_usage.rbi b/rbi/openai/models/completion_usage.rbi index 48f31d88..4e3dbbf3 100644 --- a/rbi/openai/models/completion_usage.rbi +++ b/rbi/openai/models/completion_usage.rbi @@ -3,6 +3,8 @@ module OpenAI module Models class CompletionUsage < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Number of tokens in the generated completion. sig { returns(Integer) } attr_accessor :completion_tokens @@ -16,26 +18,28 @@ module OpenAI attr_accessor :total_tokens # Breakdown of tokens used in a completion. - sig { returns(T.nilable(OpenAI::Models::CompletionUsage::CompletionTokensDetails)) } + sig do + returns(T.nilable(OpenAI::CompletionUsage::CompletionTokensDetails)) + end attr_reader :completion_tokens_details sig do params( - completion_tokens_details: T.any(OpenAI::Models::CompletionUsage::CompletionTokensDetails, OpenAI::Internal::AnyHash) - ) - .void + completion_tokens_details: + OpenAI::CompletionUsage::CompletionTokensDetails::OrHash + ).void end attr_writer :completion_tokens_details # Breakdown of tokens used in the prompt. - sig { returns(T.nilable(OpenAI::Models::CompletionUsage::PromptTokensDetails)) } + sig { returns(T.nilable(OpenAI::CompletionUsage::PromptTokensDetails)) } attr_reader :prompt_tokens_details sig do params( - prompt_tokens_details: T.any(OpenAI::Models::CompletionUsage::PromptTokensDetails, OpenAI::Internal::AnyHash) - ) - .void + prompt_tokens_details: + OpenAI::CompletionUsage::PromptTokensDetails::OrHash + ).void end attr_writer :prompt_tokens_details @@ -45,10 +49,11 @@ module OpenAI completion_tokens: Integer, prompt_tokens: Integer, total_tokens: Integer, - completion_tokens_details: T.any(OpenAI::Models::CompletionUsage::CompletionTokensDetails, OpenAI::Internal::AnyHash), - prompt_tokens_details: T.any(OpenAI::Models::CompletionUsage::PromptTokensDetails, OpenAI::Internal::AnyHash) - ) - .returns(T.attached_class) + completion_tokens_details: + OpenAI::CompletionUsage::CompletionTokensDetails::OrHash, + prompt_tokens_details: + OpenAI::CompletionUsage::PromptTokensDetails::OrHash + ).returns(T.attached_class) end def self.new( # Number of tokens in the generated completion. @@ -61,22 +66,27 @@ module OpenAI completion_tokens_details: nil, # Breakdown of tokens used in the prompt. prompt_tokens_details: nil - ); end + ) + end + sig do - override - .returns( - { - completion_tokens: Integer, - prompt_tokens: Integer, - total_tokens: Integer, - completion_tokens_details: OpenAI::Models::CompletionUsage::CompletionTokensDetails, - prompt_tokens_details: OpenAI::Models::CompletionUsage::PromptTokensDetails - } - ) + override.returns( + { + completion_tokens: Integer, + prompt_tokens: Integer, + total_tokens: Integer, + completion_tokens_details: + OpenAI::CompletionUsage::CompletionTokensDetails, + prompt_tokens_details: OpenAI::CompletionUsage::PromptTokensDetails + } + ) + end + def to_hash end - def to_hash; end class CompletionTokensDetails < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # When using Predicted Outputs, the number of tokens in the prediction that # appeared in the completion. sig { returns(T.nilable(Integer)) } @@ -116,8 +126,7 @@ module OpenAI audio_tokens: Integer, reasoning_tokens: Integer, rejected_prediction_tokens: Integer - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # When using Predicted Outputs, the number of tokens in the prediction that @@ -132,22 +141,26 @@ module OpenAI # still counted in the total completion tokens for purposes of billing, output, # and context window limits. rejected_prediction_tokens: nil - ); end + ) + end + sig do - override - .returns( - { - accepted_prediction_tokens: Integer, - audio_tokens: Integer, - reasoning_tokens: Integer, - rejected_prediction_tokens: Integer - } - ) + override.returns( + { + accepted_prediction_tokens: Integer, + audio_tokens: Integer, + reasoning_tokens: Integer, + rejected_prediction_tokens: Integer + } + ) + end + def to_hash end - def to_hash; end end class PromptTokensDetails < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Audio input tokens present in the prompt. sig { returns(T.nilable(Integer)) } attr_reader :audio_tokens @@ -163,15 +176,24 @@ module OpenAI attr_writer :cached_tokens # Breakdown of tokens used in the prompt. - sig { params(audio_tokens: Integer, cached_tokens: Integer).returns(T.attached_class) } + sig do + params(audio_tokens: Integer, cached_tokens: Integer).returns( + T.attached_class + ) + end def self.new( # Audio input tokens present in the prompt. audio_tokens: nil, # Cached tokens present in the prompt. cached_tokens: nil - ); end - sig { override.returns({audio_tokens: Integer, cached_tokens: Integer}) } - def to_hash; end + ) + end + + sig do + override.returns({ audio_tokens: Integer, cached_tokens: Integer }) + end + def to_hash + end end end end diff --git a/rbi/openai/models/compound_filter.rbi b/rbi/openai/models/compound_filter.rbi index 19966d7a..b8972c6d 100644 --- a/rbi/openai/models/compound_filter.rbi +++ b/rbi/openai/models/compound_filter.rbi @@ -3,22 +3,24 @@ module OpenAI module Models class CompoundFilter < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Array of filters to combine. Items can be `ComparisonFilter` or # `CompoundFilter`. - sig { returns(T::Array[T.any(OpenAI::Models::ComparisonFilter, T.anything)]) } + sig { returns(T::Array[T.any(OpenAI::ComparisonFilter, T.anything)]) } attr_accessor :filters # Type of operation: `and` or `or`. - sig { returns(OpenAI::Models::CompoundFilter::Type::OrSymbol) } + sig { returns(OpenAI::CompoundFilter::Type::OrSymbol) } attr_accessor :type # Combine multiple filters using `and` or `or`. sig do params( - filters: T::Array[T.any(OpenAI::Models::ComparisonFilter, OpenAI::Internal::AnyHash, T.anything)], - type: OpenAI::Models::CompoundFilter::Type::OrSymbol - ) - .returns(T.attached_class) + filters: + T::Array[T.any(OpenAI::ComparisonFilter::OrHash, T.anything)], + type: OpenAI::CompoundFilter::Type::OrSymbol + ).returns(T.attached_class) end def self.new( # Array of filters to combine. Items can be `ComparisonFilter` or @@ -26,39 +28,50 @@ module OpenAI filters:, # Type of operation: `and` or `or`. type: - ); end + ) + end + sig do - override - .returns( - { - filters: T::Array[T.any(OpenAI::Models::ComparisonFilter, T.anything)], - type: OpenAI::Models::CompoundFilter::Type::OrSymbol - } - ) + override.returns( + { + filters: T::Array[T.any(OpenAI::ComparisonFilter, T.anything)], + type: OpenAI::CompoundFilter::Type::OrSymbol + } + ) + end + def to_hash end - def to_hash; end # A filter used to compare a specified attribute key to a given value using a # defined comparison operation. module Filter extend OpenAI::Internal::Type::Union - sig { override.returns([OpenAI::Models::ComparisonFilter, T.anything]) } - def self.variants; end + Variants = T.type_alias { T.any(OpenAI::ComparisonFilter, T.anything) } + + sig do + override.returns(T::Array[OpenAI::CompoundFilter::Filter::Variants]) + end + def self.variants + end end # Type of operation: `and` or `or`. module Type extend OpenAI::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::CompoundFilter::Type) } + TaggedSymbol = + T.type_alias { T.all(Symbol, OpenAI::CompoundFilter::Type) } OrSymbol = T.type_alias { T.any(Symbol, String) } - AND = T.let(:and, OpenAI::Models::CompoundFilter::Type::TaggedSymbol) - OR = T.let(:or, OpenAI::Models::CompoundFilter::Type::TaggedSymbol) + AND = T.let(:and, OpenAI::CompoundFilter::Type::TaggedSymbol) + OR = T.let(:or, OpenAI::CompoundFilter::Type::TaggedSymbol) - sig { override.returns(T::Array[OpenAI::Models::CompoundFilter::Type::TaggedSymbol]) } - def self.values; end + sig do + override.returns(T::Array[OpenAI::CompoundFilter::Type::TaggedSymbol]) + end + def self.values + end end end end diff --git a/rbi/openai/models/create_embedding_response.rbi b/rbi/openai/models/create_embedding_response.rbi index 4ebe2aee..cf00c902 100644 --- a/rbi/openai/models/create_embedding_response.rbi +++ b/rbi/openai/models/create_embedding_response.rbi @@ -3,8 +3,10 @@ module OpenAI module Models class CreateEmbeddingResponse < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The list of embeddings generated by the model. - sig { returns(T::Array[OpenAI::Models::Embedding]) } + sig { returns(T::Array[OpenAI::Embedding]) } attr_accessor :data # The name of the model used to generate the embedding. @@ -16,20 +18,19 @@ module OpenAI attr_accessor :object # The usage information for the request. - sig { returns(OpenAI::Models::CreateEmbeddingResponse::Usage) } + sig { returns(OpenAI::CreateEmbeddingResponse::Usage) } attr_reader :usage - sig { params(usage: T.any(OpenAI::Models::CreateEmbeddingResponse::Usage, OpenAI::Internal::AnyHash)).void } + sig { params(usage: OpenAI::CreateEmbeddingResponse::Usage::OrHash).void } attr_writer :usage sig do params( - data: T::Array[T.any(OpenAI::Models::Embedding, OpenAI::Internal::AnyHash)], + data: T::Array[OpenAI::Embedding::OrHash], model: String, - usage: T.any(OpenAI::Models::CreateEmbeddingResponse::Usage, OpenAI::Internal::AnyHash), + usage: OpenAI::CreateEmbeddingResponse::Usage::OrHash, object: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # The list of embeddings generated by the model. @@ -40,21 +41,25 @@ module OpenAI usage:, # The object type, which is always "list". object: :list - ); end + ) + end + sig do - override - .returns( - { - data: T::Array[OpenAI::Models::Embedding], - model: String, - object: Symbol, - usage: OpenAI::Models::CreateEmbeddingResponse::Usage - } - ) + override.returns( + { + data: T::Array[OpenAI::Embedding], + model: String, + object: Symbol, + usage: OpenAI::CreateEmbeddingResponse::Usage + } + ) + end + def to_hash end - def to_hash; end class Usage < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The number of tokens used by the prompt. sig { returns(Integer) } attr_accessor :prompt_tokens @@ -64,15 +69,24 @@ module OpenAI attr_accessor :total_tokens # The usage information for the request. - sig { params(prompt_tokens: Integer, total_tokens: Integer).returns(T.attached_class) } + sig do + params(prompt_tokens: Integer, total_tokens: Integer).returns( + T.attached_class + ) + end def self.new( # The number of tokens used by the prompt. prompt_tokens:, # The total number of tokens used by the request. total_tokens: - ); end - sig { override.returns({prompt_tokens: Integer, total_tokens: Integer}) } - def to_hash; end + ) + end + + sig do + override.returns({ prompt_tokens: Integer, total_tokens: Integer }) + end + def to_hash + end end end end diff --git a/rbi/openai/models/embedding.rbi b/rbi/openai/models/embedding.rbi index 9c78d508..aa3abb7e 100644 --- a/rbi/openai/models/embedding.rbi +++ b/rbi/openai/models/embedding.rbi @@ -3,6 +3,8 @@ module OpenAI module Models class Embedding < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The embedding vector, which is a list of floats. The length of vector depends on # the model as listed in the # [embedding guide](https://platform.openai.com/docs/guides/embeddings). @@ -18,7 +20,13 @@ module OpenAI attr_accessor :object # Represents an embedding vector returned by embedding endpoint. - sig { params(embedding: T::Array[Float], index: Integer, object: Symbol).returns(T.attached_class) } + sig do + params( + embedding: T::Array[Float], + index: Integer, + object: Symbol + ).returns(T.attached_class) + end def self.new( # The embedding vector, which is a list of floats. The length of vector depends on # the model as listed in the @@ -28,9 +36,16 @@ module OpenAI index:, # The object type, which is always "embedding". object: :embedding - ); end - sig { override.returns({embedding: T::Array[Float], index: Integer, object: Symbol}) } - def to_hash; end + ) + end + + sig do + override.returns( + { embedding: T::Array[Float], index: Integer, object: Symbol } + ) + end + def to_hash + end end end end diff --git a/rbi/openai/models/embedding_create_params.rbi b/rbi/openai/models/embedding_create_params.rbi index 22c4e6b8..a4452287 100644 --- a/rbi/openai/models/embedding_create_params.rbi +++ b/rbi/openai/models/embedding_create_params.rbi @@ -6,6 +6,8 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Input text to embed, encoded as a string or array of tokens. To embed multiple # inputs in a single request, pass an array of strings or array of token arrays. # The input must not exceed the max input tokens for the model (8192 tokens for @@ -14,7 +16,16 @@ module OpenAI # [Example Python code](https://cookbook.openai.com/examples/how_to_count_tokens_with_tiktoken) # for counting tokens. Some models may also impose a limit on total number of # tokens summed across inputs. - sig { returns(T.any(String, T::Array[String], T::Array[Integer], T::Array[T::Array[Integer]])) } + sig do + returns( + T.any( + String, + T::Array[String], + T::Array[Integer], + T::Array[T::Array[Integer]] + ) + ) + end attr_accessor :input # ID of the model to use. You can use the @@ -22,7 +33,7 @@ module OpenAI # see all of your available models, or see our # [Model overview](https://platform.openai.com/docs/models) for descriptions of # them. - sig { returns(T.any(String, OpenAI::Models::EmbeddingModel::OrSymbol)) } + sig { returns(T.any(String, OpenAI::EmbeddingModel::OrSymbol)) } attr_accessor :model # The number of dimensions the resulting output embeddings should have. Only @@ -35,10 +46,19 @@ module OpenAI # The format to return the embeddings in. Can be either `float` or # [`base64`](https://pypi.org/project/pybase64/). - sig { returns(T.nilable(OpenAI::Models::EmbeddingCreateParams::EncodingFormat::OrSymbol)) } + sig do + returns( + T.nilable(OpenAI::EmbeddingCreateParams::EncodingFormat::OrSymbol) + ) + end attr_reader :encoding_format - sig { params(encoding_format: OpenAI::Models::EmbeddingCreateParams::EncodingFormat::OrSymbol).void } + sig do + params( + encoding_format: + OpenAI::EmbeddingCreateParams::EncodingFormat::OrSymbol + ).void + end attr_writer :encoding_format # A unique identifier representing your end-user, which can help OpenAI to monitor @@ -52,14 +72,20 @@ module OpenAI sig do params( - input: T.any(String, T::Array[String], T::Array[Integer], T::Array[T::Array[Integer]]), - model: T.any(String, OpenAI::Models::EmbeddingModel::OrSymbol), + input: + T.any( + String, + T::Array[String], + T::Array[Integer], + T::Array[T::Array[Integer]] + ), + model: T.any(String, OpenAI::EmbeddingModel::OrSymbol), dimensions: Integer, - encoding_format: OpenAI::Models::EmbeddingCreateParams::EncodingFormat::OrSymbol, + encoding_format: + OpenAI::EmbeddingCreateParams::EncodingFormat::OrSymbol, user: String, - request_options: T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash) - ) - .returns(T.attached_class) + request_options: OpenAI::RequestOptions::OrHash + ).returns(T.attached_class) end def self.new( # Input text to embed, encoded as a string or array of tokens. To embed multiple @@ -88,21 +114,30 @@ module OpenAI # [Learn more](https://platform.openai.com/docs/guides/safety-best-practices#end-user-ids). user: nil, request_options: {} - ); end + ) + end + sig do - override - .returns( - { - input: T.any(String, T::Array[String], T::Array[Integer], T::Array[T::Array[Integer]]), - model: T.any(String, OpenAI::Models::EmbeddingModel::OrSymbol), - dimensions: Integer, - encoding_format: OpenAI::Models::EmbeddingCreateParams::EncodingFormat::OrSymbol, - user: String, - request_options: OpenAI::RequestOptions - } - ) + override.returns( + { + input: + T.any( + String, + T::Array[String], + T::Array[Integer], + T::Array[T::Array[Integer]] + ), + model: T.any(String, OpenAI::EmbeddingModel::OrSymbol), + dimensions: Integer, + encoding_format: + OpenAI::EmbeddingCreateParams::EncodingFormat::OrSymbol, + user: String, + request_options: OpenAI::RequestOptions + } + ) + end + def to_hash end - def to_hash; end # Input text to embed, encoded as a string or array of tokens. To embed multiple # inputs in a single request, pass an array of strings or array of token arrays. @@ -115,16 +150,41 @@ module OpenAI module Input extend OpenAI::Internal::Type::Union - sig { override.returns([String, T::Array[String], T::Array[Integer], T::Array[T::Array[Integer]]]) } - def self.variants; end + Variants = + T.type_alias do + T.any( + String, + T::Array[String], + T::Array[Integer], + T::Array[T::Array[Integer]] + ) + end + + sig do + override.returns( + T::Array[OpenAI::EmbeddingCreateParams::Input::Variants] + ) + end + def self.variants + end - StringArray = T.let(OpenAI::Internal::Type::ArrayOf[String], OpenAI::Internal::Type::Converter) + StringArray = + T.let( + OpenAI::Internal::Type::ArrayOf[String], + OpenAI::Internal::Type::Converter + ) - IntegerArray = T.let(OpenAI::Internal::Type::ArrayOf[Integer], OpenAI::Internal::Type::Converter) + IntegerArray = + T.let( + OpenAI::Internal::Type::ArrayOf[Integer], + OpenAI::Internal::Type::Converter + ) ArrayOfToken2DArray = T.let( - OpenAI::Internal::Type::ArrayOf[OpenAI::Internal::Type::ArrayOf[Integer]], + OpenAI::Internal::Type::ArrayOf[ + OpenAI::Internal::Type::ArrayOf[Integer] + ], OpenAI::Internal::Type::Converter ) end @@ -137,8 +197,16 @@ module OpenAI module Model extend OpenAI::Internal::Type::Union - sig { override.returns([String, OpenAI::Models::EmbeddingModel::TaggedSymbol]) } - def self.variants; end + Variants = + T.type_alias { T.any(String, OpenAI::EmbeddingModel::TaggedSymbol) } + + sig do + override.returns( + T::Array[OpenAI::EmbeddingCreateParams::Model::Variants] + ) + end + def self.variants + end end # The format to return the embeddings in. Can be either `float` or @@ -146,14 +214,32 @@ module OpenAI module EncodingFormat extend OpenAI::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::EmbeddingCreateParams::EncodingFormat) } + TaggedSymbol = + T.type_alias do + T.all(Symbol, OpenAI::EmbeddingCreateParams::EncodingFormat) + end OrSymbol = T.type_alias { T.any(Symbol, String) } - FLOAT = T.let(:float, OpenAI::Models::EmbeddingCreateParams::EncodingFormat::TaggedSymbol) - BASE64 = T.let(:base64, OpenAI::Models::EmbeddingCreateParams::EncodingFormat::TaggedSymbol) + FLOAT = + T.let( + :float, + OpenAI::EmbeddingCreateParams::EncodingFormat::TaggedSymbol + ) + BASE64 = + T.let( + :base64, + OpenAI::EmbeddingCreateParams::EncodingFormat::TaggedSymbol + ) - sig { override.returns(T::Array[OpenAI::Models::EmbeddingCreateParams::EncodingFormat::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[ + OpenAI::EmbeddingCreateParams::EncodingFormat::TaggedSymbol + ] + ) + end + def self.values + end end end end diff --git a/rbi/openai/models/embedding_model.rbi b/rbi/openai/models/embedding_model.rbi index bbaaae0a..42bc7b6f 100644 --- a/rbi/openai/models/embedding_model.rbi +++ b/rbi/openai/models/embedding_model.rbi @@ -5,15 +5,19 @@ module OpenAI module EmbeddingModel extend OpenAI::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::EmbeddingModel) } + TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::EmbeddingModel) } OrSymbol = T.type_alias { T.any(Symbol, String) } - TEXT_EMBEDDING_ADA_002 = T.let(:"text-embedding-ada-002", OpenAI::Models::EmbeddingModel::TaggedSymbol) - TEXT_EMBEDDING_3_SMALL = T.let(:"text-embedding-3-small", OpenAI::Models::EmbeddingModel::TaggedSymbol) - TEXT_EMBEDDING_3_LARGE = T.let(:"text-embedding-3-large", OpenAI::Models::EmbeddingModel::TaggedSymbol) + TEXT_EMBEDDING_ADA_002 = + T.let(:"text-embedding-ada-002", OpenAI::EmbeddingModel::TaggedSymbol) + TEXT_EMBEDDING_3_SMALL = + T.let(:"text-embedding-3-small", OpenAI::EmbeddingModel::TaggedSymbol) + TEXT_EMBEDDING_3_LARGE = + T.let(:"text-embedding-3-large", OpenAI::EmbeddingModel::TaggedSymbol) - sig { override.returns(T::Array[OpenAI::Models::EmbeddingModel::TaggedSymbol]) } - def self.values; end + sig { override.returns(T::Array[OpenAI::EmbeddingModel::TaggedSymbol]) } + def self.values + end end end end diff --git a/rbi/openai/models/error_object.rbi b/rbi/openai/models/error_object.rbi index 4dc767bd..5f923ecc 100644 --- a/rbi/openai/models/error_object.rbi +++ b/rbi/openai/models/error_object.rbi @@ -3,6 +3,8 @@ module OpenAI module Models class ErrorObject < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + sig { returns(T.nilable(String)) } attr_accessor :code @@ -16,15 +18,28 @@ module OpenAI attr_accessor :type sig do - params(code: T.nilable(String), message: String, param: T.nilable(String), type: String) - .returns(T.attached_class) + params( + code: T.nilable(String), + message: String, + param: T.nilable(String), + type: String + ).returns(T.attached_class) + end + def self.new(code:, message:, param:, type:) end - def self.new(code:, message:, param:, type:); end sig do - override.returns({code: T.nilable(String), message: String, param: T.nilable(String), type: String}) + override.returns( + { + code: T.nilable(String), + message: String, + param: T.nilable(String), + type: String + } + ) + end + def to_hash end - def to_hash; end end end end diff --git a/rbi/openai/models/eval_create_params.rbi b/rbi/openai/models/eval_create_params.rbi index af1d1784..77dd005f 100644 --- a/rbi/openai/models/eval_create_params.rbi +++ b/rbi/openai/models/eval_create_params.rbi @@ -6,12 +6,14 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The configuration for the data source used for the evaluation runs. sig do returns( T.any( - OpenAI::Models::EvalCreateParams::DataSourceConfig::Custom, - OpenAI::Models::EvalCreateParams::DataSourceConfig::Logs + OpenAI::EvalCreateParams::DataSourceConfig::Custom, + OpenAI::EvalCreateParams::DataSourceConfig::Logs ) ) end @@ -22,11 +24,11 @@ module OpenAI returns( T::Array[ T.any( - OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel, - OpenAI::Models::EvalStringCheckGrader, - OpenAI::Models::EvalTextSimilarityGrader, - OpenAI::Models::EvalCreateParams::TestingCriterion::Python, - OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel + OpenAI::EvalCreateParams::TestingCriterion::LabelModel, + OpenAI::EvalStringCheckGrader, + OpenAI::EvalTextSimilarityGrader, + OpenAI::EvalCreateParams::TestingCriterion::Python, + OpenAI::EvalCreateParams::TestingCriterion::ScoreModel ) ] ) @@ -51,26 +53,25 @@ module OpenAI sig do params( - data_source_config: T.any( - OpenAI::Models::EvalCreateParams::DataSourceConfig::Custom, - OpenAI::Internal::AnyHash, - OpenAI::Models::EvalCreateParams::DataSourceConfig::Logs - ), - testing_criteria: T::Array[ + data_source_config: T.any( - OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel, - OpenAI::Internal::AnyHash, - OpenAI::Models::EvalStringCheckGrader, - OpenAI::Models::EvalTextSimilarityGrader, - OpenAI::Models::EvalCreateParams::TestingCriterion::Python, - OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel - ) - ], + OpenAI::EvalCreateParams::DataSourceConfig::Custom::OrHash, + OpenAI::EvalCreateParams::DataSourceConfig::Logs::OrHash + ), + testing_criteria: + T::Array[ + T.any( + OpenAI::EvalCreateParams::TestingCriterion::LabelModel::OrHash, + OpenAI::EvalStringCheckGrader::OrHash, + OpenAI::EvalTextSimilarityGrader::OrHash, + OpenAI::EvalCreateParams::TestingCriterion::Python::OrHash, + OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::OrHash + ) + ], metadata: T.nilable(T::Hash[Symbol, String]), name: String, - request_options: T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash) - ) - .returns(T.attached_class) + request_options: OpenAI::RequestOptions::OrHash + ).returns(T.attached_class) end def self.new( # The configuration for the data source used for the evaluation runs. @@ -87,37 +88,52 @@ module OpenAI # The name of the evaluation. name: nil, request_options: {} - ); end + ) + end + sig do - override - .returns( - { - data_source_config: T.any( - OpenAI::Models::EvalCreateParams::DataSourceConfig::Custom, - OpenAI::Models::EvalCreateParams::DataSourceConfig::Logs + override.returns( + { + data_source_config: + T.any( + OpenAI::EvalCreateParams::DataSourceConfig::Custom, + OpenAI::EvalCreateParams::DataSourceConfig::Logs ), - testing_criteria: T::Array[ + testing_criteria: + T::Array[ T.any( - OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel, - OpenAI::Models::EvalStringCheckGrader, - OpenAI::Models::EvalTextSimilarityGrader, - OpenAI::Models::EvalCreateParams::TestingCriterion::Python, - OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel + OpenAI::EvalCreateParams::TestingCriterion::LabelModel, + OpenAI::EvalStringCheckGrader, + OpenAI::EvalTextSimilarityGrader, + OpenAI::EvalCreateParams::TestingCriterion::Python, + OpenAI::EvalCreateParams::TestingCriterion::ScoreModel ) ], - metadata: T.nilable(T::Hash[Symbol, String]), - name: String, - request_options: OpenAI::RequestOptions - } - ) + metadata: T.nilable(T::Hash[Symbol, String]), + name: String, + request_options: OpenAI::RequestOptions + } + ) + end + def to_hash end - def to_hash; end # The configuration for the data source used for the evaluation runs. module DataSourceConfig extend OpenAI::Internal::Type::Union + Variants = + T.type_alias do + T.any( + OpenAI::EvalCreateParams::DataSourceConfig::Custom, + OpenAI::EvalCreateParams::DataSourceConfig::Logs + ) + end + class Custom < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The json schema for each row in the data source. sig { returns(T::Hash[Symbol, T.anything]) } attr_accessor :item_schema @@ -141,8 +157,11 @@ module OpenAI # - Used to define your testing criteria and # - What data is required when creating a run sig do - params(item_schema: T::Hash[Symbol, T.anything], include_sample_schema: T::Boolean, type: Symbol) - .returns(T.attached_class) + params( + item_schema: T::Hash[Symbol, T.anything], + include_sample_schema: T::Boolean, + type: Symbol + ).returns(T.attached_class) end def self.new( # The json schema for each row in the data source. @@ -152,19 +171,26 @@ module OpenAI include_sample_schema: nil, # The type of data source. Always `custom`. type: :custom - ); end + ) + end + sig do - override - .returns({ - item_schema: T::Hash[Symbol, T.anything], - type: Symbol, - include_sample_schema: T::Boolean - }) + override.returns( + { + item_schema: T::Hash[Symbol, T.anything], + type: Symbol, + include_sample_schema: T::Boolean + } + ) + end + def to_hash end - def to_hash; end end class Logs < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The type of data source. Always `logs`. sig { returns(Symbol) } attr_accessor :type @@ -179,24 +205,35 @@ module OpenAI # A data source config which specifies the metadata property of your stored # completions query. This is usually metadata like `usecase=chatbot` or # `prompt-version=v2`, etc. - sig { params(metadata: T::Hash[Symbol, T.anything], type: Symbol).returns(T.attached_class) } + sig do + params(metadata: T::Hash[Symbol, T.anything], type: Symbol).returns( + T.attached_class + ) + end def self.new( # Metadata filters for the logs data source. metadata: nil, # The type of data source. Always `logs`. type: :logs - ); end - sig { override.returns({type: Symbol, metadata: T::Hash[Symbol, T.anything]}) } - def to_hash; end + ) + end + + sig do + override.returns( + { type: Symbol, metadata: T::Hash[Symbol, T.anything] } + ) + end + def to_hash + end end sig do - override - .returns( - [OpenAI::Models::EvalCreateParams::DataSourceConfig::Custom, OpenAI::Models::EvalCreateParams::DataSourceConfig::Logs] - ) + override.returns( + T::Array[OpenAI::EvalCreateParams::DataSourceConfig::Variants] + ) + end + def self.variants end - def self.variants; end end # A LabelModelGrader object which uses a model to assign labels to each item in @@ -204,15 +241,29 @@ module OpenAI module TestingCriterion extend OpenAI::Internal::Type::Union + Variants = + T.type_alias do + T.any( + OpenAI::EvalCreateParams::TestingCriterion::LabelModel, + OpenAI::EvalStringCheckGrader, + OpenAI::EvalTextSimilarityGrader, + OpenAI::EvalCreateParams::TestingCriterion::Python, + OpenAI::EvalCreateParams::TestingCriterion::ScoreModel + ) + end + class LabelModel < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # A list of chat messages forming the prompt or context. May include variable # references to the "item" namespace, ie {{item.name}}. sig do returns( T::Array[ T.any( - OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::SimpleInputMessage, - OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem + OpenAI::EvalCreateParams::TestingCriterion::LabelModel::Input::SimpleInputMessage, + OpenAI::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem ) ] ) @@ -243,20 +294,19 @@ module OpenAI # the evaluation. sig do params( - input: T::Array[ - T.any( - OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::SimpleInputMessage, - OpenAI::Internal::AnyHash, - OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem - ) - ], + input: + T::Array[ + T.any( + OpenAI::EvalCreateParams::TestingCriterion::LabelModel::Input::SimpleInputMessage::OrHash, + OpenAI::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::OrHash + ) + ], labels: T::Array[String], model: String, name: String, passing_labels: T::Array[String], type: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # A list of chat messages forming the prompt or context. May include variable @@ -272,33 +322,47 @@ module OpenAI passing_labels:, # The object type, which is always `label_model`. type: :label_model - ); end + ) + end + sig do - override - .returns( - { - input: T::Array[ + override.returns( + { + input: + T::Array[ T.any( - OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::SimpleInputMessage, - OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem + OpenAI::EvalCreateParams::TestingCriterion::LabelModel::Input::SimpleInputMessage, + OpenAI::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem ) ], - labels: T::Array[String], - model: String, - name: String, - passing_labels: T::Array[String], - type: Symbol - } - ) + labels: T::Array[String], + model: String, + name: String, + passing_labels: T::Array[String], + type: Symbol + } + ) + end + def to_hash end - def to_hash; end # A chat message that makes up the prompt or context. May include variable # references to the "item" namespace, ie {{item.name}}. module Input extend OpenAI::Internal::Type::Union + Variants = + T.type_alias do + T.any( + OpenAI::EvalCreateParams::TestingCriterion::LabelModel::Input::SimpleInputMessage, + OpenAI::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem + ) + end + class SimpleInputMessage < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The content of the message. sig { returns(String) } attr_accessor :content @@ -307,25 +371,33 @@ module OpenAI sig { returns(String) } attr_accessor :role - sig { params(content: String, role: String).returns(T.attached_class) } + sig do + params(content: String, role: String).returns(T.attached_class) + end def self.new( # The content of the message. content:, # The role of the message (e.g. "system", "assistant", "user"). role: - ); end - sig { override.returns({content: String, role: String}) } - def to_hash; end + ) + end + + sig { override.returns({ content: String, role: String }) } + def to_hash + end end class EvalItem < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Text inputs to the model - can contain template strings. sig do returns( T.any( String, - OpenAI::Models::Responses::ResponseInputText, - OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::Content::OutputText + OpenAI::Responses::ResponseInputText, + OpenAI::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::Content::OutputText ) ) end @@ -333,22 +405,28 @@ module OpenAI # The role of the message input. One of `user`, `assistant`, `system`, or # `developer`. - sig { returns(OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::Role::OrSymbol) } + sig do + returns( + OpenAI::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::Role::OrSymbol + ) + end attr_accessor :role # The type of the message input. Always `message`. sig do returns( - T.nilable(OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::Type::OrSymbol) + T.nilable( + OpenAI::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::Type::OrSymbol + ) ) end attr_reader :type sig do params( - type: OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::Type::OrSymbol - ) - .void + type: + OpenAI::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::Type::OrSymbol + ).void end attr_writer :type @@ -359,16 +437,17 @@ module OpenAI # interactions. sig do params( - content: T.any( - String, - OpenAI::Models::Responses::ResponseInputText, - OpenAI::Internal::AnyHash, - OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::Content::OutputText - ), - role: OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::Role::OrSymbol, - type: OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::Type::OrSymbol - ) - .returns(T.attached_class) + content: + T.any( + String, + OpenAI::Responses::ResponseInputText::OrHash, + OpenAI::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::Content::OutputText::OrHash + ), + role: + OpenAI::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::Role::OrSymbol, + type: + OpenAI::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::Type::OrSymbol + ).returns(T.attached_class) end def self.new( # Text inputs to the model - can contain template strings. @@ -378,28 +457,47 @@ module OpenAI role:, # The type of the message input. Always `message`. type: nil - ); end + ) + end + sig do - override - .returns( - { - content: T.any( + override.returns( + { + content: + T.any( String, - OpenAI::Models::Responses::ResponseInputText, - OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::Content::OutputText + OpenAI::Responses::ResponseInputText, + OpenAI::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::Content::OutputText ), - role: OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::Role::OrSymbol, - type: OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::Type::OrSymbol - } - ) + role: + OpenAI::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::Role::OrSymbol, + type: + OpenAI::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::Type::OrSymbol + } + ) + end + def to_hash end - def to_hash; end # Text inputs to the model - can contain template strings. module Content extend OpenAI::Internal::Type::Union + Variants = + T.type_alias do + T.any( + String, + OpenAI::Responses::ResponseInputText, + OpenAI::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::Content::OutputText + ) + end + class OutputText < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any(T.self_type, OpenAI::Internal::AnyHash) + end + # The text output from the model. sig { returns(String) } attr_accessor :text @@ -409,24 +507,31 @@ module OpenAI attr_accessor :type # A text output from the model. - sig { params(text: String, type: Symbol).returns(T.attached_class) } + sig do + params(text: String, type: Symbol).returns(T.attached_class) + end def self.new( # The text output from the model. text:, # The type of the output text. Always `output_text`. type: :output_text - ); end - sig { override.returns({text: String, type: Symbol}) } - def to_hash; end + ) + end + + sig { override.returns({ text: String, type: Symbol }) } + def to_hash + end end sig do - override - .returns( - [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::Content::OutputText] - ) + override.returns( + T::Array[ + OpenAI::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::Content::Variants + ] + ) + end + def self.variants end - def self.variants; end end # The role of the message input. One of `user`, `assistant`, `system`, or @@ -435,37 +540,44 @@ module OpenAI extend OpenAI::Internal::Type::Enum TaggedSymbol = - T.type_alias { T.all(Symbol, OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::Role) } + T.type_alias do + T.all( + Symbol, + OpenAI::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::Role + ) + end OrSymbol = T.type_alias { T.any(Symbol, String) } USER = T.let( :user, - OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::Role::TaggedSymbol + OpenAI::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::Role::TaggedSymbol ) ASSISTANT = T.let( :assistant, - OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::Role::TaggedSymbol + OpenAI::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::Role::TaggedSymbol ) SYSTEM = T.let( :system, - OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::Role::TaggedSymbol + OpenAI::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::Role::TaggedSymbol ) DEVELOPER = T.let( :developer, - OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::Role::TaggedSymbol + OpenAI::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::Role::TaggedSymbol ) sig do - override - .returns( - T::Array[OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::Role::TaggedSymbol] - ) + override.returns( + T::Array[ + OpenAI::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::Role::TaggedSymbol + ] + ) + end + def self.values end - def self.values; end end # The type of the message input. Always `message`. @@ -473,36 +585,48 @@ module OpenAI extend OpenAI::Internal::Type::Enum TaggedSymbol = - T.type_alias { T.all(Symbol, OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::Type) } + T.type_alias do + T.all( + Symbol, + OpenAI::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::Type + ) + end OrSymbol = T.type_alias { T.any(Symbol, String) } MESSAGE = T.let( :message, - OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::Type::TaggedSymbol + OpenAI::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::Type::TaggedSymbol ) sig do - override - .returns( - T::Array[OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::Type::TaggedSymbol] - ) + override.returns( + T::Array[ + OpenAI::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::Type::TaggedSymbol + ] + ) + end + def self.values end - def self.values; end end end sig do - override - .returns( - [OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::SimpleInputMessage, OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem] - ) + override.returns( + T::Array[ + OpenAI::EvalCreateParams::TestingCriterion::LabelModel::Input::Variants + ] + ) + end + def self.variants end - def self.variants; end end end class Python < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The name of the grader. sig { returns(String) } attr_accessor :name @@ -531,8 +655,13 @@ module OpenAI # A PythonGrader object that runs a python script on the input. sig do - params(name: String, source: String, image_tag: String, pass_threshold: Float, type: Symbol) - .returns(T.attached_class) + params( + name: String, + source: String, + image_tag: String, + pass_threshold: Float, + type: Symbol + ).returns(T.attached_class) end def self.new( # The name of the grader. @@ -545,7 +674,9 @@ module OpenAI pass_threshold: nil, # The object type, which is always `python`. type: :python - ); end + ) + end + sig do override.returns( { @@ -557,12 +688,22 @@ module OpenAI } ) end - def to_hash; end + def to_hash + end end class ScoreModel < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The input text. This may include template strings. - sig { returns(T::Array[OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input]) } + sig do + returns( + T::Array[ + OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input + ] + ) + end attr_accessor :input # The model to use for the evaluation. @@ -601,15 +742,17 @@ module OpenAI # A ScoreModelGrader object that uses a model to assign a score to the input. sig do params( - input: T::Array[T.any(OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input, OpenAI::Internal::AnyHash)], + input: + T::Array[ + OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input::OrHash + ], model: String, name: String, pass_threshold: Float, range: T::Array[Float], sampling_params: T.anything, type: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # The input text. This may include template strings. @@ -626,31 +769,39 @@ module OpenAI sampling_params: nil, # The object type, which is always `score_model`. type: :score_model - ); end + ) + end + sig do - override - .returns( - { - input: T::Array[OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input], - model: String, - name: String, - type: Symbol, - pass_threshold: Float, - range: T::Array[Float], - sampling_params: T.anything - } - ) + override.returns( + { + input: + T::Array[ + OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input + ], + model: String, + name: String, + type: Symbol, + pass_threshold: Float, + range: T::Array[Float], + sampling_params: T.anything + } + ) + end + def to_hash end - def to_hash; end class Input < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Text inputs to the model - can contain template strings. sig do returns( T.any( String, - OpenAI::Models::Responses::ResponseInputText, - OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input::Content::OutputText + OpenAI::Responses::ResponseInputText, + OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input::Content::OutputText ) ) end @@ -658,14 +809,29 @@ module OpenAI # The role of the message input. One of `user`, `assistant`, `system`, or # `developer`. - sig { returns(OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input::Role::OrSymbol) } + sig do + returns( + OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input::Role::OrSymbol + ) + end attr_accessor :role # The type of the message input. Always `message`. - sig { returns(T.nilable(OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input::Type::OrSymbol)) } + sig do + returns( + T.nilable( + OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input::Type::OrSymbol + ) + ) + end attr_reader :type - sig { params(type: OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input::Type::OrSymbol).void } + sig do + params( + type: + OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input::Type::OrSymbol + ).void + end attr_writer :type # A message input to the model with a role indicating instruction following @@ -675,16 +841,17 @@ module OpenAI # interactions. sig do params( - content: T.any( - String, - OpenAI::Models::Responses::ResponseInputText, - OpenAI::Internal::AnyHash, - OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input::Content::OutputText - ), - role: OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input::Role::OrSymbol, - type: OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input::Type::OrSymbol - ) - .returns(T.attached_class) + content: + T.any( + String, + OpenAI::Responses::ResponseInputText::OrHash, + OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input::Content::OutputText::OrHash + ), + role: + OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input::Role::OrSymbol, + type: + OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input::Type::OrSymbol + ).returns(T.attached_class) end def self.new( # Text inputs to the model - can contain template strings. @@ -694,28 +861,45 @@ module OpenAI role:, # The type of the message input. Always `message`. type: nil - ); end + ) + end + sig do - override - .returns( - { - content: T.any( + override.returns( + { + content: + T.any( String, - OpenAI::Models::Responses::ResponseInputText, - OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input::Content::OutputText + OpenAI::Responses::ResponseInputText, + OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input::Content::OutputText ), - role: OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input::Role::OrSymbol, - type: OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input::Type::OrSymbol - } - ) + role: + OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input::Role::OrSymbol, + type: + OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input::Type::OrSymbol + } + ) + end + def to_hash end - def to_hash; end # Text inputs to the model - can contain template strings. module Content extend OpenAI::Internal::Type::Union + Variants = + T.type_alias do + T.any( + String, + OpenAI::Responses::ResponseInputText, + OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input::Content::OutputText + ) + end + class OutputText < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The text output from the model. sig { returns(String) } attr_accessor :text @@ -725,24 +909,31 @@ module OpenAI attr_accessor :type # A text output from the model. - sig { params(text: String, type: Symbol).returns(T.attached_class) } + sig do + params(text: String, type: Symbol).returns(T.attached_class) + end def self.new( # The text output from the model. text:, # The type of the output text. Always `output_text`. type: :output_text - ); end - sig { override.returns({text: String, type: Symbol}) } - def to_hash; end + ) + end + + sig { override.returns({ text: String, type: Symbol }) } + def to_hash + end end sig do - override - .returns( - [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input::Content::OutputText] - ) + override.returns( + T::Array[ + OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input::Content::Variants + ] + ) + end + def self.variants end - def self.variants; end end # The role of the message input. One of `user`, `assistant`, `system`, or @@ -751,31 +942,44 @@ module OpenAI extend OpenAI::Internal::Type::Enum TaggedSymbol = - T.type_alias { T.all(Symbol, OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input::Role) } + T.type_alias do + T.all( + Symbol, + OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input::Role + ) + end OrSymbol = T.type_alias { T.any(Symbol, String) } USER = - T.let(:user, OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input::Role::TaggedSymbol) + T.let( + :user, + OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input::Role::TaggedSymbol + ) ASSISTANT = T.let( :assistant, - OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input::Role::TaggedSymbol + OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input::Role::TaggedSymbol ) SYSTEM = - T.let(:system, OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input::Role::TaggedSymbol) + T.let( + :system, + OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input::Role::TaggedSymbol + ) DEVELOPER = T.let( :developer, - OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input::Role::TaggedSymbol + OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input::Role::TaggedSymbol ) sig do - override - .returns( - T::Array[OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input::Role::TaggedSymbol] - ) + override.returns( + T::Array[ + OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input::Role::TaggedSymbol + ] + ) + end + def self.values end - def self.values; end end # The type of the message input. Always `message`. @@ -783,30 +987,40 @@ module OpenAI extend OpenAI::Internal::Type::Enum TaggedSymbol = - T.type_alias { T.all(Symbol, OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input::Type) } + T.type_alias do + T.all( + Symbol, + OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input::Type + ) + end OrSymbol = T.type_alias { T.any(Symbol, String) } MESSAGE = - T.let(:message, OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input::Type::TaggedSymbol) + T.let( + :message, + OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input::Type::TaggedSymbol + ) sig do - override - .returns( - T::Array[OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input::Type::TaggedSymbol] - ) + override.returns( + T::Array[ + OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input::Type::TaggedSymbol + ] + ) + end + def self.values end - def self.values; end end end end sig do - override - .returns( - [OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel, OpenAI::Models::EvalStringCheckGrader, OpenAI::Models::EvalTextSimilarityGrader, OpenAI::Models::EvalCreateParams::TestingCriterion::Python, OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel] - ) + override.returns( + T::Array[OpenAI::EvalCreateParams::TestingCriterion::Variants] + ) + end + def self.variants end - def self.variants; end end end end diff --git a/rbi/openai/models/eval_create_response.rbi b/rbi/openai/models/eval_create_response.rbi index d0304e79..97b8fa5b 100644 --- a/rbi/openai/models/eval_create_response.rbi +++ b/rbi/openai/models/eval_create_response.rbi @@ -3,6 +3,8 @@ module OpenAI module Models class EvalCreateResponse < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Unique identifier for the evaluation. sig { returns(String) } attr_accessor :id @@ -14,7 +16,10 @@ module OpenAI # Configuration of data sources used in runs of the evaluation. sig do returns( - T.any(OpenAI::Models::EvalCustomDataSourceConfig, OpenAI::Models::EvalStoredCompletionsDataSourceConfig) + T.any( + OpenAI::EvalCustomDataSourceConfig, + OpenAI::EvalStoredCompletionsDataSourceConfig + ) ) end attr_accessor :data_source_config @@ -41,9 +46,9 @@ module OpenAI returns( T::Array[ T.any( - OpenAI::Models::EvalLabelModelGrader, - OpenAI::Models::EvalStringCheckGrader, - OpenAI::Models::EvalTextSimilarityGrader, + OpenAI::EvalLabelModelGrader, + OpenAI::EvalStringCheckGrader, + OpenAI::EvalTextSimilarityGrader, OpenAI::Models::EvalCreateResponse::TestingCriterion::Python, OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel ) @@ -62,26 +67,25 @@ module OpenAI params( id: String, created_at: Integer, - data_source_config: T.any( - OpenAI::Models::EvalCustomDataSourceConfig, - OpenAI::Internal::AnyHash, - OpenAI::Models::EvalStoredCompletionsDataSourceConfig - ), + data_source_config: + T.any( + OpenAI::EvalCustomDataSourceConfig::OrHash, + OpenAI::EvalStoredCompletionsDataSourceConfig::OrHash + ), metadata: T.nilable(T::Hash[Symbol, String]), name: String, - testing_criteria: T::Array[ - T.any( - OpenAI::Models::EvalLabelModelGrader, - OpenAI::Internal::AnyHash, - OpenAI::Models::EvalStringCheckGrader, - OpenAI::Models::EvalTextSimilarityGrader, - OpenAI::Models::EvalCreateResponse::TestingCriterion::Python, - OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel - ) - ], + testing_criteria: + T::Array[ + T.any( + OpenAI::EvalLabelModelGrader::OrHash, + OpenAI::EvalStringCheckGrader::OrHash, + OpenAI::EvalTextSimilarityGrader::OrHash, + OpenAI::Models::EvalCreateResponse::TestingCriterion::Python::OrHash, + OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::OrHash + ) + ], object: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # Unique identifier for the evaluation. @@ -103,42 +107,59 @@ module OpenAI testing_criteria:, # The object type. object: :eval - ); end + ) + end + sig do - override - .returns( - { - id: String, - created_at: Integer, - data_source_config: T.any(OpenAI::Models::EvalCustomDataSourceConfig, OpenAI::Models::EvalStoredCompletionsDataSourceConfig), - metadata: T.nilable(T::Hash[Symbol, String]), - name: String, - object: Symbol, - testing_criteria: T::Array[ + override.returns( + { + id: String, + created_at: Integer, + data_source_config: + T.any( + OpenAI::EvalCustomDataSourceConfig, + OpenAI::EvalStoredCompletionsDataSourceConfig + ), + metadata: T.nilable(T::Hash[Symbol, String]), + name: String, + object: Symbol, + testing_criteria: + T::Array[ T.any( - OpenAI::Models::EvalLabelModelGrader, - OpenAI::Models::EvalStringCheckGrader, - OpenAI::Models::EvalTextSimilarityGrader, + OpenAI::EvalLabelModelGrader, + OpenAI::EvalStringCheckGrader, + OpenAI::EvalTextSimilarityGrader, OpenAI::Models::EvalCreateResponse::TestingCriterion::Python, OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel ) ] - } - ) + } + ) + end + def to_hash end - def to_hash; end # Configuration of data sources used in runs of the evaluation. module DataSourceConfig extend OpenAI::Internal::Type::Union - sig do - override - .returns( - [OpenAI::Models::EvalCustomDataSourceConfig, OpenAI::Models::EvalStoredCompletionsDataSourceConfig] + Variants = + T.type_alias do + T.any( + OpenAI::EvalCustomDataSourceConfig, + OpenAI::EvalStoredCompletionsDataSourceConfig ) + end + + sig do + override.returns( + T::Array[ + OpenAI::Models::EvalCreateResponse::DataSourceConfig::Variants + ] + ) + end + def self.variants end - def self.variants; end end # A LabelModelGrader object which uses a model to assign labels to each item in @@ -146,7 +167,21 @@ module OpenAI module TestingCriterion extend OpenAI::Internal::Type::Union + Variants = + T.type_alias do + T.any( + OpenAI::EvalLabelModelGrader, + OpenAI::EvalStringCheckGrader, + OpenAI::EvalTextSimilarityGrader, + OpenAI::Models::EvalCreateResponse::TestingCriterion::Python, + OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel + ) + end + class Python < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The name of the grader. sig { returns(String) } attr_accessor :name @@ -175,8 +210,13 @@ module OpenAI # A PythonGrader object that runs a python script on the input. sig do - params(name: String, source: String, image_tag: String, pass_threshold: Float, type: Symbol) - .returns(T.attached_class) + params( + name: String, + source: String, + image_tag: String, + pass_threshold: Float, + type: Symbol + ).returns(T.attached_class) end def self.new( # The name of the grader. @@ -189,7 +229,9 @@ module OpenAI pass_threshold: nil, # The object type, which is always `python`. type: :python - ); end + ) + end + sig do override.returns( { @@ -201,12 +243,22 @@ module OpenAI } ) end - def to_hash; end + def to_hash + end end class ScoreModel < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The input text. This may include template strings. - sig { returns(T::Array[OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input]) } + sig do + returns( + T::Array[ + OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input + ] + ) + end attr_accessor :input # The model to use for the evaluation. @@ -245,15 +297,17 @@ module OpenAI # A ScoreModelGrader object that uses a model to assign a score to the input. sig do params( - input: T::Array[T.any(OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input, OpenAI::Internal::AnyHash)], + input: + T::Array[ + OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::OrHash + ], model: String, name: String, pass_threshold: Float, range: T::Array[Float], sampling_params: T.anything, type: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # The input text. This may include template strings. @@ -270,30 +324,38 @@ module OpenAI sampling_params: nil, # The object type, which is always `score_model`. type: :score_model - ); end + ) + end + sig do - override - .returns( - { - input: T::Array[OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input], - model: String, - name: String, - type: Symbol, - pass_threshold: Float, - range: T::Array[Float], - sampling_params: T.anything - } - ) + override.returns( + { + input: + T::Array[ + OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input + ], + model: String, + name: String, + type: Symbol, + pass_threshold: Float, + range: T::Array[Float], + sampling_params: T.anything + } + ) + end + def to_hash end - def to_hash; end class Input < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Text inputs to the model - can contain template strings. sig do returns( T.any( String, - OpenAI::Models::Responses::ResponseInputText, + OpenAI::Responses::ResponseInputText, OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Content::OutputText ) ) @@ -302,18 +364,29 @@ module OpenAI # The role of the message input. One of `user`, `assistant`, `system`, or # `developer`. - sig { returns(OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Role::TaggedSymbol) } + sig do + returns( + OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Role::TaggedSymbol + ) + end attr_accessor :role # The type of the message input. Always `message`. sig do returns( - T.nilable(OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Type::TaggedSymbol) + T.nilable( + OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Type::TaggedSymbol + ) ) end attr_reader :type - sig { params(type: OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Type::OrSymbol).void } + sig do + params( + type: + OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Type::OrSymbol + ).void + end attr_writer :type # A message input to the model with a role indicating instruction following @@ -323,16 +396,17 @@ module OpenAI # interactions. sig do params( - content: T.any( - String, - OpenAI::Models::Responses::ResponseInputText, - OpenAI::Internal::AnyHash, - OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Content::OutputText - ), - role: OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Role::OrSymbol, - type: OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Type::OrSymbol - ) - .returns(T.attached_class) + content: + T.any( + String, + OpenAI::Responses::ResponseInputText::OrHash, + OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Content::OutputText::OrHash + ), + role: + OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Role::OrSymbol, + type: + OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Type::OrSymbol + ).returns(T.attached_class) end def self.new( # Text inputs to the model - can contain template strings. @@ -342,28 +416,45 @@ module OpenAI role:, # The type of the message input. Always `message`. type: nil - ); end + ) + end + sig do - override - .returns( - { - content: T.any( + override.returns( + { + content: + T.any( String, - OpenAI::Models::Responses::ResponseInputText, + OpenAI::Responses::ResponseInputText, OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Content::OutputText ), - role: OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Role::TaggedSymbol, - type: OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Type::TaggedSymbol - } - ) + role: + OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Role::TaggedSymbol, + type: + OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Type::TaggedSymbol + } + ) + end + def to_hash end - def to_hash; end # Text inputs to the model - can contain template strings. module Content extend OpenAI::Internal::Type::Union + Variants = + T.type_alias do + T.any( + String, + OpenAI::Responses::ResponseInputText, + OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Content::OutputText + ) + end + class OutputText < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The text output from the model. sig { returns(String) } attr_accessor :text @@ -373,24 +464,31 @@ module OpenAI attr_accessor :type # A text output from the model. - sig { params(text: String, type: Symbol).returns(T.attached_class) } + sig do + params(text: String, type: Symbol).returns(T.attached_class) + end def self.new( # The text output from the model. text:, # The type of the output text. Always `output_text`. type: :output_text - ); end - sig { override.returns({text: String, type: Symbol}) } - def to_hash; end + ) + end + + sig { override.returns({ text: String, type: Symbol }) } + def to_hash + end end sig do - override - .returns( - [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Content::OutputText] - ) + override.returns( + T::Array[ + OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Content::Variants + ] + ) + end + def self.variants end - def self.variants; end end # The role of the message input. One of `user`, `assistant`, `system`, or @@ -399,11 +497,19 @@ module OpenAI extend OpenAI::Internal::Type::Enum TaggedSymbol = - T.type_alias { T.all(Symbol, OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Role) } + T.type_alias do + T.all( + Symbol, + OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Role + ) + end OrSymbol = T.type_alias { T.any(Symbol, String) } USER = - T.let(:user, OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Role::TaggedSymbol) + T.let( + :user, + OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Role::TaggedSymbol + ) ASSISTANT = T.let( :assistant, @@ -421,12 +527,14 @@ module OpenAI ) sig do - override - .returns( - T::Array[OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Role::TaggedSymbol] - ) + override.returns( + T::Array[ + OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Role::TaggedSymbol + ] + ) + end + def self.values end - def self.values; end end # The type of the message input. Always `message`. @@ -434,7 +542,12 @@ module OpenAI extend OpenAI::Internal::Type::Enum TaggedSymbol = - T.type_alias { T.all(Symbol, OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Type) } + T.type_alias do + T.all( + Symbol, + OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Type + ) + end OrSymbol = T.type_alias { T.any(Symbol, String) } MESSAGE = @@ -444,23 +557,27 @@ module OpenAI ) sig do - override - .returns( - T::Array[OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Type::TaggedSymbol] - ) + override.returns( + T::Array[ + OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Type::TaggedSymbol + ] + ) + end + def self.values end - def self.values; end end end end sig do - override - .returns( - [OpenAI::Models::EvalLabelModelGrader, OpenAI::Models::EvalStringCheckGrader, OpenAI::Models::EvalTextSimilarityGrader, OpenAI::Models::EvalCreateResponse::TestingCriterion::Python, OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel] - ) + override.returns( + T::Array[ + OpenAI::Models::EvalCreateResponse::TestingCriterion::Variants + ] + ) + end + def self.variants end - def self.variants; end end end end diff --git a/rbi/openai/models/eval_custom_data_source_config.rbi b/rbi/openai/models/eval_custom_data_source_config.rbi index 2c76acf3..6725b324 100644 --- a/rbi/openai/models/eval_custom_data_source_config.rbi +++ b/rbi/openai/models/eval_custom_data_source_config.rbi @@ -3,6 +3,8 @@ module OpenAI module Models class EvalCustomDataSourceConfig < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The json schema for the run data source items. Learn how to build JSON schemas # [here](https://json-schema.org/). sig { returns(T::Hash[Symbol, T.anything]) } @@ -18,16 +20,25 @@ module OpenAI # # - Used to define your testing criteria and # - What data is required when creating a run - sig { params(schema: T::Hash[Symbol, T.anything], type: Symbol).returns(T.attached_class) } + sig do + params(schema: T::Hash[Symbol, T.anything], type: Symbol).returns( + T.attached_class + ) + end def self.new( # The json schema for the run data source items. Learn how to build JSON schemas # [here](https://json-schema.org/). schema:, # The type of data source. Always `custom`. type: :custom - ); end - sig { override.returns({schema: T::Hash[Symbol, T.anything], type: Symbol}) } - def to_hash; end + ) + end + + sig do + override.returns({ schema: T::Hash[Symbol, T.anything], type: Symbol }) + end + def to_hash + end end end end diff --git a/rbi/openai/models/eval_delete_params.rbi b/rbi/openai/models/eval_delete_params.rbi index 14cbeaac..e5ead349 100644 --- a/rbi/openai/models/eval_delete_params.rbi +++ b/rbi/openai/models/eval_delete_params.rbi @@ -6,18 +6,19 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + sig do - params( - request_options: T.any( - OpenAI::RequestOptions, - OpenAI::Internal::AnyHash - ) - ).returns(T.attached_class) + params(request_options: OpenAI::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: OpenAI::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: OpenAI::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/openai/models/eval_delete_response.rbi b/rbi/openai/models/eval_delete_response.rbi index 72e1edf4..5ed757c3 100644 --- a/rbi/openai/models/eval_delete_response.rbi +++ b/rbi/openai/models/eval_delete_response.rbi @@ -3,6 +3,8 @@ module OpenAI module Models class EvalDeleteResponse < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + sig { returns(T::Boolean) } attr_accessor :deleted @@ -12,11 +14,21 @@ module OpenAI sig { returns(String) } attr_accessor :object - sig { params(deleted: T::Boolean, eval_id: String, object: String).returns(T.attached_class) } - def self.new(deleted:, eval_id:, object:); end + sig do + params(deleted: T::Boolean, eval_id: String, object: String).returns( + T.attached_class + ) + end + def self.new(deleted:, eval_id:, object:) + end - sig { override.returns({deleted: T::Boolean, eval_id: String, object: String}) } - def to_hash; end + sig do + override.returns( + { deleted: T::Boolean, eval_id: String, object: String } + ) + end + def to_hash + end end end end diff --git a/rbi/openai/models/eval_label_model_grader.rbi b/rbi/openai/models/eval_label_model_grader.rbi index 1a12db15..df283285 100644 --- a/rbi/openai/models/eval_label_model_grader.rbi +++ b/rbi/openai/models/eval_label_model_grader.rbi @@ -3,7 +3,9 @@ module OpenAI module Models class EvalLabelModelGrader < OpenAI::Internal::Type::BaseModel - sig { returns(T::Array[OpenAI::Models::EvalLabelModelGrader::Input]) } + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + + sig { returns(T::Array[OpenAI::EvalLabelModelGrader::Input]) } attr_accessor :input # The labels to assign to each item in the evaluation. @@ -30,14 +32,13 @@ module OpenAI # the evaluation. sig do params( - input: T::Array[T.any(OpenAI::Models::EvalLabelModelGrader::Input, OpenAI::Internal::AnyHash)], + input: T::Array[OpenAI::EvalLabelModelGrader::Input::OrHash], labels: T::Array[String], model: String, name: String, passing_labels: T::Array[String], type: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( input:, @@ -51,30 +52,34 @@ module OpenAI passing_labels:, # The object type, which is always `label_model`. type: :label_model - ); end + ) + end + sig do - override - .returns( - { - input: T::Array[OpenAI::Models::EvalLabelModelGrader::Input], - labels: T::Array[String], - model: String, - name: String, - passing_labels: T::Array[String], - type: Symbol - } - ) + override.returns( + { + input: T::Array[OpenAI::EvalLabelModelGrader::Input], + labels: T::Array[String], + model: String, + name: String, + passing_labels: T::Array[String], + type: Symbol + } + ) + end + def to_hash end - def to_hash; end class Input < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Text inputs to the model - can contain template strings. sig do returns( T.any( String, - OpenAI::Models::Responses::ResponseInputText, - OpenAI::Models::EvalLabelModelGrader::Input::Content::OutputText + OpenAI::Responses::ResponseInputText, + OpenAI::EvalLabelModelGrader::Input::Content::OutputText ) ) end @@ -82,14 +87,20 @@ module OpenAI # The role of the message input. One of `user`, `assistant`, `system`, or # `developer`. - sig { returns(OpenAI::Models::EvalLabelModelGrader::Input::Role::TaggedSymbol) } + sig { returns(OpenAI::EvalLabelModelGrader::Input::Role::TaggedSymbol) } attr_accessor :role # The type of the message input. Always `message`. - sig { returns(T.nilable(OpenAI::Models::EvalLabelModelGrader::Input::Type::TaggedSymbol)) } + sig do + returns( + T.nilable(OpenAI::EvalLabelModelGrader::Input::Type::TaggedSymbol) + ) + end attr_reader :type - sig { params(type: OpenAI::Models::EvalLabelModelGrader::Input::Type::OrSymbol).void } + sig do + params(type: OpenAI::EvalLabelModelGrader::Input::Type::OrSymbol).void + end attr_writer :type # A message input to the model with a role indicating instruction following @@ -99,16 +110,15 @@ module OpenAI # interactions. sig do params( - content: T.any( - String, - OpenAI::Models::Responses::ResponseInputText, - OpenAI::Internal::AnyHash, - OpenAI::Models::EvalLabelModelGrader::Input::Content::OutputText - ), - role: OpenAI::Models::EvalLabelModelGrader::Input::Role::OrSymbol, - type: OpenAI::Models::EvalLabelModelGrader::Input::Type::OrSymbol - ) - .returns(T.attached_class) + content: + T.any( + String, + OpenAI::Responses::ResponseInputText::OrHash, + OpenAI::EvalLabelModelGrader::Input::Content::OutputText::OrHash + ), + role: OpenAI::EvalLabelModelGrader::Input::Role::OrSymbol, + type: OpenAI::EvalLabelModelGrader::Input::Type::OrSymbol + ).returns(T.attached_class) end def self.new( # Text inputs to the model - can contain template strings. @@ -118,28 +128,43 @@ module OpenAI role:, # The type of the message input. Always `message`. type: nil - ); end + ) + end + sig do - override - .returns( - { - content: T.any( + override.returns( + { + content: + T.any( String, - OpenAI::Models::Responses::ResponseInputText, - OpenAI::Models::EvalLabelModelGrader::Input::Content::OutputText + OpenAI::Responses::ResponseInputText, + OpenAI::EvalLabelModelGrader::Input::Content::OutputText ), - role: OpenAI::Models::EvalLabelModelGrader::Input::Role::TaggedSymbol, - type: OpenAI::Models::EvalLabelModelGrader::Input::Type::TaggedSymbol - } - ) + role: OpenAI::EvalLabelModelGrader::Input::Role::TaggedSymbol, + type: OpenAI::EvalLabelModelGrader::Input::Type::TaggedSymbol + } + ) + end + def to_hash end - def to_hash; end # Text inputs to the model - can contain template strings. module Content extend OpenAI::Internal::Type::Union + Variants = + T.type_alias do + T.any( + String, + OpenAI::Responses::ResponseInputText, + OpenAI::EvalLabelModelGrader::Input::Content::OutputText + ) + end + class OutputText < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The text output from the model. sig { returns(String) } attr_accessor :text @@ -155,18 +180,21 @@ module OpenAI text:, # The type of the output text. Always `output_text`. type: :output_text - ); end - sig { override.returns({text: String, type: Symbol}) } - def to_hash; end + ) + end + + sig { override.returns({ text: String, type: Symbol }) } + def to_hash + end end sig do - override - .returns( - [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::EvalLabelModelGrader::Input::Content::OutputText] - ) + override.returns( + T::Array[OpenAI::EvalLabelModelGrader::Input::Content::Variants] + ) + end + def self.variants end - def self.variants; end end # The role of the message input. One of `user`, `assistant`, `system`, or @@ -174,29 +202,65 @@ module OpenAI module Role extend OpenAI::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::EvalLabelModelGrader::Input::Role) } + TaggedSymbol = + T.type_alias do + T.all(Symbol, OpenAI::EvalLabelModelGrader::Input::Role) + end OrSymbol = T.type_alias { T.any(Symbol, String) } - USER = T.let(:user, OpenAI::Models::EvalLabelModelGrader::Input::Role::TaggedSymbol) - ASSISTANT = T.let(:assistant, OpenAI::Models::EvalLabelModelGrader::Input::Role::TaggedSymbol) - SYSTEM = T.let(:system, OpenAI::Models::EvalLabelModelGrader::Input::Role::TaggedSymbol) - DEVELOPER = T.let(:developer, OpenAI::Models::EvalLabelModelGrader::Input::Role::TaggedSymbol) + USER = + T.let( + :user, + OpenAI::EvalLabelModelGrader::Input::Role::TaggedSymbol + ) + ASSISTANT = + T.let( + :assistant, + OpenAI::EvalLabelModelGrader::Input::Role::TaggedSymbol + ) + SYSTEM = + T.let( + :system, + OpenAI::EvalLabelModelGrader::Input::Role::TaggedSymbol + ) + DEVELOPER = + T.let( + :developer, + OpenAI::EvalLabelModelGrader::Input::Role::TaggedSymbol + ) - sig { override.returns(T::Array[OpenAI::Models::EvalLabelModelGrader::Input::Role::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[OpenAI::EvalLabelModelGrader::Input::Role::TaggedSymbol] + ) + end + def self.values + end end # The type of the message input. Always `message`. module Type extend OpenAI::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::EvalLabelModelGrader::Input::Type) } + TaggedSymbol = + T.type_alias do + T.all(Symbol, OpenAI::EvalLabelModelGrader::Input::Type) + end OrSymbol = T.type_alias { T.any(Symbol, String) } - MESSAGE = T.let(:message, OpenAI::Models::EvalLabelModelGrader::Input::Type::TaggedSymbol) + MESSAGE = + T.let( + :message, + OpenAI::EvalLabelModelGrader::Input::Type::TaggedSymbol + ) - sig { override.returns(T::Array[OpenAI::Models::EvalLabelModelGrader::Input::Type::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[OpenAI::EvalLabelModelGrader::Input::Type::TaggedSymbol] + ) + end + def self.values + end end end end diff --git a/rbi/openai/models/eval_list_params.rbi b/rbi/openai/models/eval_list_params.rbi index 0ef48b7c..5b1a38f4 100644 --- a/rbi/openai/models/eval_list_params.rbi +++ b/rbi/openai/models/eval_list_params.rbi @@ -6,6 +6,8 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Identifier for the last eval from the previous pagination request. sig { returns(T.nilable(String)) } attr_reader :after @@ -22,29 +24,28 @@ module OpenAI # Sort order for evals by timestamp. Use `asc` for ascending order or `desc` for # descending order. - sig { returns(T.nilable(OpenAI::Models::EvalListParams::Order::OrSymbol)) } + sig { returns(T.nilable(OpenAI::EvalListParams::Order::OrSymbol)) } attr_reader :order - sig { params(order: OpenAI::Models::EvalListParams::Order::OrSymbol).void } + sig { params(order: OpenAI::EvalListParams::Order::OrSymbol).void } attr_writer :order # Evals can be ordered by creation time or last updated time. Use `created_at` for # creation time or `updated_at` for last updated time. - sig { returns(T.nilable(OpenAI::Models::EvalListParams::OrderBy::OrSymbol)) } + sig { returns(T.nilable(OpenAI::EvalListParams::OrderBy::OrSymbol)) } attr_reader :order_by - sig { params(order_by: OpenAI::Models::EvalListParams::OrderBy::OrSymbol).void } + sig { params(order_by: OpenAI::EvalListParams::OrderBy::OrSymbol).void } attr_writer :order_by sig do params( after: String, limit: Integer, - order: OpenAI::Models::EvalListParams::Order::OrSymbol, - order_by: OpenAI::Models::EvalListParams::OrderBy::OrSymbol, - request_options: T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash) - ) - .returns(T.attached_class) + order: OpenAI::EvalListParams::Order::OrSymbol, + order_by: OpenAI::EvalListParams::OrderBy::OrSymbol, + request_options: OpenAI::RequestOptions::OrHash + ).returns(T.attached_class) end def self.new( # Identifier for the last eval from the previous pagination request. @@ -58,34 +59,42 @@ module OpenAI # creation time or `updated_at` for last updated time. order_by: nil, request_options: {} - ); end + ) + end + sig do - override - .returns( - { - after: String, - limit: Integer, - order: OpenAI::Models::EvalListParams::Order::OrSymbol, - order_by: OpenAI::Models::EvalListParams::OrderBy::OrSymbol, - request_options: OpenAI::RequestOptions - } - ) + override.returns( + { + after: String, + limit: Integer, + order: OpenAI::EvalListParams::Order::OrSymbol, + order_by: OpenAI::EvalListParams::OrderBy::OrSymbol, + request_options: OpenAI::RequestOptions + } + ) + end + def to_hash end - def to_hash; end # Sort order for evals by timestamp. Use `asc` for ascending order or `desc` for # descending order. module Order extend OpenAI::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::EvalListParams::Order) } + TaggedSymbol = + T.type_alias { T.all(Symbol, OpenAI::EvalListParams::Order) } OrSymbol = T.type_alias { T.any(Symbol, String) } - ASC = T.let(:asc, OpenAI::Models::EvalListParams::Order::TaggedSymbol) - DESC = T.let(:desc, OpenAI::Models::EvalListParams::Order::TaggedSymbol) + ASC = T.let(:asc, OpenAI::EvalListParams::Order::TaggedSymbol) + DESC = T.let(:desc, OpenAI::EvalListParams::Order::TaggedSymbol) - sig { override.returns(T::Array[OpenAI::Models::EvalListParams::Order::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[OpenAI::EvalListParams::Order::TaggedSymbol] + ) + end + def self.values + end end # Evals can be ordered by creation time or last updated time. Use `created_at` for @@ -93,14 +102,22 @@ module OpenAI module OrderBy extend OpenAI::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::EvalListParams::OrderBy) } + TaggedSymbol = + T.type_alias { T.all(Symbol, OpenAI::EvalListParams::OrderBy) } OrSymbol = T.type_alias { T.any(Symbol, String) } - CREATED_AT = T.let(:created_at, OpenAI::Models::EvalListParams::OrderBy::TaggedSymbol) - UPDATED_AT = T.let(:updated_at, OpenAI::Models::EvalListParams::OrderBy::TaggedSymbol) + CREATED_AT = + T.let(:created_at, OpenAI::EvalListParams::OrderBy::TaggedSymbol) + UPDATED_AT = + T.let(:updated_at, OpenAI::EvalListParams::OrderBy::TaggedSymbol) - sig { override.returns(T::Array[OpenAI::Models::EvalListParams::OrderBy::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[OpenAI::EvalListParams::OrderBy::TaggedSymbol] + ) + end + def self.values + end end end end diff --git a/rbi/openai/models/eval_list_response.rbi b/rbi/openai/models/eval_list_response.rbi index e1614678..b59f14c9 100644 --- a/rbi/openai/models/eval_list_response.rbi +++ b/rbi/openai/models/eval_list_response.rbi @@ -3,6 +3,8 @@ module OpenAI module Models class EvalListResponse < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Unique identifier for the evaluation. sig { returns(String) } attr_accessor :id @@ -14,7 +16,10 @@ module OpenAI # Configuration of data sources used in runs of the evaluation. sig do returns( - T.any(OpenAI::Models::EvalCustomDataSourceConfig, OpenAI::Models::EvalStoredCompletionsDataSourceConfig) + T.any( + OpenAI::EvalCustomDataSourceConfig, + OpenAI::EvalStoredCompletionsDataSourceConfig + ) ) end attr_accessor :data_source_config @@ -41,9 +46,9 @@ module OpenAI returns( T::Array[ T.any( - OpenAI::Models::EvalLabelModelGrader, - OpenAI::Models::EvalStringCheckGrader, - OpenAI::Models::EvalTextSimilarityGrader, + OpenAI::EvalLabelModelGrader, + OpenAI::EvalStringCheckGrader, + OpenAI::EvalTextSimilarityGrader, OpenAI::Models::EvalListResponse::TestingCriterion::Python, OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel ) @@ -62,26 +67,25 @@ module OpenAI params( id: String, created_at: Integer, - data_source_config: T.any( - OpenAI::Models::EvalCustomDataSourceConfig, - OpenAI::Internal::AnyHash, - OpenAI::Models::EvalStoredCompletionsDataSourceConfig - ), + data_source_config: + T.any( + OpenAI::EvalCustomDataSourceConfig::OrHash, + OpenAI::EvalStoredCompletionsDataSourceConfig::OrHash + ), metadata: T.nilable(T::Hash[Symbol, String]), name: String, - testing_criteria: T::Array[ - T.any( - OpenAI::Models::EvalLabelModelGrader, - OpenAI::Internal::AnyHash, - OpenAI::Models::EvalStringCheckGrader, - OpenAI::Models::EvalTextSimilarityGrader, - OpenAI::Models::EvalListResponse::TestingCriterion::Python, - OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel - ) - ], + testing_criteria: + T::Array[ + T.any( + OpenAI::EvalLabelModelGrader::OrHash, + OpenAI::EvalStringCheckGrader::OrHash, + OpenAI::EvalTextSimilarityGrader::OrHash, + OpenAI::Models::EvalListResponse::TestingCriterion::Python::OrHash, + OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::OrHash + ) + ], object: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # Unique identifier for the evaluation. @@ -103,42 +107,59 @@ module OpenAI testing_criteria:, # The object type. object: :eval - ); end + ) + end + sig do - override - .returns( - { - id: String, - created_at: Integer, - data_source_config: T.any(OpenAI::Models::EvalCustomDataSourceConfig, OpenAI::Models::EvalStoredCompletionsDataSourceConfig), - metadata: T.nilable(T::Hash[Symbol, String]), - name: String, - object: Symbol, - testing_criteria: T::Array[ + override.returns( + { + id: String, + created_at: Integer, + data_source_config: + T.any( + OpenAI::EvalCustomDataSourceConfig, + OpenAI::EvalStoredCompletionsDataSourceConfig + ), + metadata: T.nilable(T::Hash[Symbol, String]), + name: String, + object: Symbol, + testing_criteria: + T::Array[ T.any( - OpenAI::Models::EvalLabelModelGrader, - OpenAI::Models::EvalStringCheckGrader, - OpenAI::Models::EvalTextSimilarityGrader, + OpenAI::EvalLabelModelGrader, + OpenAI::EvalStringCheckGrader, + OpenAI::EvalTextSimilarityGrader, OpenAI::Models::EvalListResponse::TestingCriterion::Python, OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel ) ] - } - ) + } + ) + end + def to_hash end - def to_hash; end # Configuration of data sources used in runs of the evaluation. module DataSourceConfig extend OpenAI::Internal::Type::Union - sig do - override - .returns( - [OpenAI::Models::EvalCustomDataSourceConfig, OpenAI::Models::EvalStoredCompletionsDataSourceConfig] + Variants = + T.type_alias do + T.any( + OpenAI::EvalCustomDataSourceConfig, + OpenAI::EvalStoredCompletionsDataSourceConfig ) + end + + sig do + override.returns( + T::Array[ + OpenAI::Models::EvalListResponse::DataSourceConfig::Variants + ] + ) + end + def self.variants end - def self.variants; end end # A LabelModelGrader object which uses a model to assign labels to each item in @@ -146,7 +167,21 @@ module OpenAI module TestingCriterion extend OpenAI::Internal::Type::Union + Variants = + T.type_alias do + T.any( + OpenAI::EvalLabelModelGrader, + OpenAI::EvalStringCheckGrader, + OpenAI::EvalTextSimilarityGrader, + OpenAI::Models::EvalListResponse::TestingCriterion::Python, + OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel + ) + end + class Python < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The name of the grader. sig { returns(String) } attr_accessor :name @@ -175,8 +210,13 @@ module OpenAI # A PythonGrader object that runs a python script on the input. sig do - params(name: String, source: String, image_tag: String, pass_threshold: Float, type: Symbol) - .returns(T.attached_class) + params( + name: String, + source: String, + image_tag: String, + pass_threshold: Float, + type: Symbol + ).returns(T.attached_class) end def self.new( # The name of the grader. @@ -189,7 +229,9 @@ module OpenAI pass_threshold: nil, # The object type, which is always `python`. type: :python - ); end + ) + end + sig do override.returns( { @@ -201,12 +243,22 @@ module OpenAI } ) end - def to_hash; end + def to_hash + end end class ScoreModel < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The input text. This may include template strings. - sig { returns(T::Array[OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input]) } + sig do + returns( + T::Array[ + OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input + ] + ) + end attr_accessor :input # The model to use for the evaluation. @@ -245,15 +297,17 @@ module OpenAI # A ScoreModelGrader object that uses a model to assign a score to the input. sig do params( - input: T::Array[T.any(OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input, OpenAI::Internal::AnyHash)], + input: + T::Array[ + OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::OrHash + ], model: String, name: String, pass_threshold: Float, range: T::Array[Float], sampling_params: T.anything, type: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # The input text. This may include template strings. @@ -270,30 +324,38 @@ module OpenAI sampling_params: nil, # The object type, which is always `score_model`. type: :score_model - ); end + ) + end + sig do - override - .returns( - { - input: T::Array[OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input], - model: String, - name: String, - type: Symbol, - pass_threshold: Float, - range: T::Array[Float], - sampling_params: T.anything - } - ) + override.returns( + { + input: + T::Array[ + OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input + ], + model: String, + name: String, + type: Symbol, + pass_threshold: Float, + range: T::Array[Float], + sampling_params: T.anything + } + ) + end + def to_hash end - def to_hash; end class Input < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Text inputs to the model - can contain template strings. sig do returns( T.any( String, - OpenAI::Models::Responses::ResponseInputText, + OpenAI::Responses::ResponseInputText, OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Content::OutputText ) ) @@ -302,18 +364,29 @@ module OpenAI # The role of the message input. One of `user`, `assistant`, `system`, or # `developer`. - sig { returns(OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Role::TaggedSymbol) } + sig do + returns( + OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Role::TaggedSymbol + ) + end attr_accessor :role # The type of the message input. Always `message`. sig do returns( - T.nilable(OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Type::TaggedSymbol) + T.nilable( + OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Type::TaggedSymbol + ) ) end attr_reader :type - sig { params(type: OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Type::OrSymbol).void } + sig do + params( + type: + OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Type::OrSymbol + ).void + end attr_writer :type # A message input to the model with a role indicating instruction following @@ -323,16 +396,17 @@ module OpenAI # interactions. sig do params( - content: T.any( - String, - OpenAI::Models::Responses::ResponseInputText, - OpenAI::Internal::AnyHash, - OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Content::OutputText - ), - role: OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Role::OrSymbol, - type: OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Type::OrSymbol - ) - .returns(T.attached_class) + content: + T.any( + String, + OpenAI::Responses::ResponseInputText::OrHash, + OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Content::OutputText::OrHash + ), + role: + OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Role::OrSymbol, + type: + OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Type::OrSymbol + ).returns(T.attached_class) end def self.new( # Text inputs to the model - can contain template strings. @@ -342,28 +416,45 @@ module OpenAI role:, # The type of the message input. Always `message`. type: nil - ); end + ) + end + sig do - override - .returns( - { - content: T.any( + override.returns( + { + content: + T.any( String, - OpenAI::Models::Responses::ResponseInputText, + OpenAI::Responses::ResponseInputText, OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Content::OutputText ), - role: OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Role::TaggedSymbol, - type: OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Type::TaggedSymbol - } - ) + role: + OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Role::TaggedSymbol, + type: + OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Type::TaggedSymbol + } + ) + end + def to_hash end - def to_hash; end # Text inputs to the model - can contain template strings. module Content extend OpenAI::Internal::Type::Union + Variants = + T.type_alias do + T.any( + String, + OpenAI::Responses::ResponseInputText, + OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Content::OutputText + ) + end + class OutputText < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The text output from the model. sig { returns(String) } attr_accessor :text @@ -373,24 +464,31 @@ module OpenAI attr_accessor :type # A text output from the model. - sig { params(text: String, type: Symbol).returns(T.attached_class) } + sig do + params(text: String, type: Symbol).returns(T.attached_class) + end def self.new( # The text output from the model. text:, # The type of the output text. Always `output_text`. type: :output_text - ); end - sig { override.returns({text: String, type: Symbol}) } - def to_hash; end + ) + end + + sig { override.returns({ text: String, type: Symbol }) } + def to_hash + end end sig do - override - .returns( - [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Content::OutputText] - ) + override.returns( + T::Array[ + OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Content::Variants + ] + ) + end + def self.variants end - def self.variants; end end # The role of the message input. One of `user`, `assistant`, `system`, or @@ -399,18 +497,29 @@ module OpenAI extend OpenAI::Internal::Type::Enum TaggedSymbol = - T.type_alias { T.all(Symbol, OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Role) } + T.type_alias do + T.all( + Symbol, + OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Role + ) + end OrSymbol = T.type_alias { T.any(Symbol, String) } USER = - T.let(:user, OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Role::TaggedSymbol) + T.let( + :user, + OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Role::TaggedSymbol + ) ASSISTANT = T.let( :assistant, OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Role::TaggedSymbol ) SYSTEM = - T.let(:system, OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Role::TaggedSymbol) + T.let( + :system, + OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Role::TaggedSymbol + ) DEVELOPER = T.let( :developer, @@ -418,12 +527,14 @@ module OpenAI ) sig do - override - .returns( - T::Array[OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Role::TaggedSymbol] - ) + override.returns( + T::Array[ + OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Role::TaggedSymbol + ] + ) + end + def self.values end - def self.values; end end # The type of the message input. Always `message`. @@ -431,30 +542,42 @@ module OpenAI extend OpenAI::Internal::Type::Enum TaggedSymbol = - T.type_alias { T.all(Symbol, OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Type) } + T.type_alias do + T.all( + Symbol, + OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Type + ) + end OrSymbol = T.type_alias { T.any(Symbol, String) } MESSAGE = - T.let(:message, OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Type::TaggedSymbol) + T.let( + :message, + OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Type::TaggedSymbol + ) sig do - override - .returns( - T::Array[OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Type::TaggedSymbol] - ) + override.returns( + T::Array[ + OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Type::TaggedSymbol + ] + ) + end + def self.values end - def self.values; end end end end sig do - override - .returns( - [OpenAI::Models::EvalLabelModelGrader, OpenAI::Models::EvalStringCheckGrader, OpenAI::Models::EvalTextSimilarityGrader, OpenAI::Models::EvalListResponse::TestingCriterion::Python, OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel] - ) + override.returns( + T::Array[ + OpenAI::Models::EvalListResponse::TestingCriterion::Variants + ] + ) + end + def self.variants end - def self.variants; end end end end diff --git a/rbi/openai/models/eval_retrieve_params.rbi b/rbi/openai/models/eval_retrieve_params.rbi index 33cfd174..c75e1ad6 100644 --- a/rbi/openai/models/eval_retrieve_params.rbi +++ b/rbi/openai/models/eval_retrieve_params.rbi @@ -6,18 +6,19 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + sig do - params( - request_options: T.any( - OpenAI::RequestOptions, - OpenAI::Internal::AnyHash - ) - ).returns(T.attached_class) + params(request_options: OpenAI::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: OpenAI::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: OpenAI::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/openai/models/eval_retrieve_response.rbi b/rbi/openai/models/eval_retrieve_response.rbi index 8e47cfe9..b6216729 100644 --- a/rbi/openai/models/eval_retrieve_response.rbi +++ b/rbi/openai/models/eval_retrieve_response.rbi @@ -3,6 +3,8 @@ module OpenAI module Models class EvalRetrieveResponse < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Unique identifier for the evaluation. sig { returns(String) } attr_accessor :id @@ -14,7 +16,10 @@ module OpenAI # Configuration of data sources used in runs of the evaluation. sig do returns( - T.any(OpenAI::Models::EvalCustomDataSourceConfig, OpenAI::Models::EvalStoredCompletionsDataSourceConfig) + T.any( + OpenAI::EvalCustomDataSourceConfig, + OpenAI::EvalStoredCompletionsDataSourceConfig + ) ) end attr_accessor :data_source_config @@ -41,9 +46,9 @@ module OpenAI returns( T::Array[ T.any( - OpenAI::Models::EvalLabelModelGrader, - OpenAI::Models::EvalStringCheckGrader, - OpenAI::Models::EvalTextSimilarityGrader, + OpenAI::EvalLabelModelGrader, + OpenAI::EvalStringCheckGrader, + OpenAI::EvalTextSimilarityGrader, OpenAI::Models::EvalRetrieveResponse::TestingCriterion::Python, OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel ) @@ -62,26 +67,25 @@ module OpenAI params( id: String, created_at: Integer, - data_source_config: T.any( - OpenAI::Models::EvalCustomDataSourceConfig, - OpenAI::Internal::AnyHash, - OpenAI::Models::EvalStoredCompletionsDataSourceConfig - ), + data_source_config: + T.any( + OpenAI::EvalCustomDataSourceConfig::OrHash, + OpenAI::EvalStoredCompletionsDataSourceConfig::OrHash + ), metadata: T.nilable(T::Hash[Symbol, String]), name: String, - testing_criteria: T::Array[ - T.any( - OpenAI::Models::EvalLabelModelGrader, - OpenAI::Internal::AnyHash, - OpenAI::Models::EvalStringCheckGrader, - OpenAI::Models::EvalTextSimilarityGrader, - OpenAI::Models::EvalRetrieveResponse::TestingCriterion::Python, - OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel - ) - ], + testing_criteria: + T::Array[ + T.any( + OpenAI::EvalLabelModelGrader::OrHash, + OpenAI::EvalStringCheckGrader::OrHash, + OpenAI::EvalTextSimilarityGrader::OrHash, + OpenAI::Models::EvalRetrieveResponse::TestingCriterion::Python::OrHash, + OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::OrHash + ) + ], object: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # Unique identifier for the evaluation. @@ -103,42 +107,59 @@ module OpenAI testing_criteria:, # The object type. object: :eval - ); end + ) + end + sig do - override - .returns( - { - id: String, - created_at: Integer, - data_source_config: T.any(OpenAI::Models::EvalCustomDataSourceConfig, OpenAI::Models::EvalStoredCompletionsDataSourceConfig), - metadata: T.nilable(T::Hash[Symbol, String]), - name: String, - object: Symbol, - testing_criteria: T::Array[ + override.returns( + { + id: String, + created_at: Integer, + data_source_config: + T.any( + OpenAI::EvalCustomDataSourceConfig, + OpenAI::EvalStoredCompletionsDataSourceConfig + ), + metadata: T.nilable(T::Hash[Symbol, String]), + name: String, + object: Symbol, + testing_criteria: + T::Array[ T.any( - OpenAI::Models::EvalLabelModelGrader, - OpenAI::Models::EvalStringCheckGrader, - OpenAI::Models::EvalTextSimilarityGrader, + OpenAI::EvalLabelModelGrader, + OpenAI::EvalStringCheckGrader, + OpenAI::EvalTextSimilarityGrader, OpenAI::Models::EvalRetrieveResponse::TestingCriterion::Python, OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel ) ] - } - ) + } + ) + end + def to_hash end - def to_hash; end # Configuration of data sources used in runs of the evaluation. module DataSourceConfig extend OpenAI::Internal::Type::Union - sig do - override - .returns( - [OpenAI::Models::EvalCustomDataSourceConfig, OpenAI::Models::EvalStoredCompletionsDataSourceConfig] + Variants = + T.type_alias do + T.any( + OpenAI::EvalCustomDataSourceConfig, + OpenAI::EvalStoredCompletionsDataSourceConfig ) + end + + sig do + override.returns( + T::Array[ + OpenAI::Models::EvalRetrieveResponse::DataSourceConfig::Variants + ] + ) + end + def self.variants end - def self.variants; end end # A LabelModelGrader object which uses a model to assign labels to each item in @@ -146,7 +167,21 @@ module OpenAI module TestingCriterion extend OpenAI::Internal::Type::Union + Variants = + T.type_alias do + T.any( + OpenAI::EvalLabelModelGrader, + OpenAI::EvalStringCheckGrader, + OpenAI::EvalTextSimilarityGrader, + OpenAI::Models::EvalRetrieveResponse::TestingCriterion::Python, + OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel + ) + end + class Python < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The name of the grader. sig { returns(String) } attr_accessor :name @@ -175,8 +210,13 @@ module OpenAI # A PythonGrader object that runs a python script on the input. sig do - params(name: String, source: String, image_tag: String, pass_threshold: Float, type: Symbol) - .returns(T.attached_class) + params( + name: String, + source: String, + image_tag: String, + pass_threshold: Float, + type: Symbol + ).returns(T.attached_class) end def self.new( # The name of the grader. @@ -189,7 +229,9 @@ module OpenAI pass_threshold: nil, # The object type, which is always `python`. type: :python - ); end + ) + end + sig do override.returns( { @@ -201,12 +243,22 @@ module OpenAI } ) end - def to_hash; end + def to_hash + end end class ScoreModel < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The input text. This may include template strings. - sig { returns(T::Array[OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input]) } + sig do + returns( + T::Array[ + OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input + ] + ) + end attr_accessor :input # The model to use for the evaluation. @@ -245,20 +297,17 @@ module OpenAI # A ScoreModelGrader object that uses a model to assign a score to the input. sig do params( - input: T::Array[ - T.any( - OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input, - OpenAI::Internal::AnyHash - ) - ], + input: + T::Array[ + OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::OrHash + ], model: String, name: String, pass_threshold: Float, range: T::Array[Float], sampling_params: T.anything, type: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # The input text. This may include template strings. @@ -275,30 +324,38 @@ module OpenAI sampling_params: nil, # The object type, which is always `score_model`. type: :score_model - ); end + ) + end + sig do - override - .returns( - { - input: T::Array[OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input], - model: String, - name: String, - type: Symbol, - pass_threshold: Float, - range: T::Array[Float], - sampling_params: T.anything - } - ) + override.returns( + { + input: + T::Array[ + OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input + ], + model: String, + name: String, + type: Symbol, + pass_threshold: Float, + range: T::Array[Float], + sampling_params: T.anything + } + ) + end + def to_hash end - def to_hash; end class Input < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Text inputs to the model - can contain template strings. sig do returns( T.any( String, - OpenAI::Models::Responses::ResponseInputText, + OpenAI::Responses::ResponseInputText, OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Content::OutputText ) ) @@ -307,20 +364,28 @@ module OpenAI # The role of the message input. One of `user`, `assistant`, `system`, or # `developer`. - sig { returns(OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Role::TaggedSymbol) } + sig do + returns( + OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Role::TaggedSymbol + ) + end attr_accessor :role # The type of the message input. Always `message`. sig do returns( - T.nilable(OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Type::TaggedSymbol) + T.nilable( + OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Type::TaggedSymbol + ) ) end attr_reader :type sig do - params(type: OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Type::OrSymbol) - .void + params( + type: + OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Type::OrSymbol + ).void end attr_writer :type @@ -331,16 +396,17 @@ module OpenAI # interactions. sig do params( - content: T.any( - String, - OpenAI::Models::Responses::ResponseInputText, - OpenAI::Internal::AnyHash, - OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Content::OutputText - ), - role: OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Role::OrSymbol, - type: OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Type::OrSymbol - ) - .returns(T.attached_class) + content: + T.any( + String, + OpenAI::Responses::ResponseInputText::OrHash, + OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Content::OutputText::OrHash + ), + role: + OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Role::OrSymbol, + type: + OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Type::OrSymbol + ).returns(T.attached_class) end def self.new( # Text inputs to the model - can contain template strings. @@ -350,28 +416,45 @@ module OpenAI role:, # The type of the message input. Always `message`. type: nil - ); end + ) + end + sig do - override - .returns( - { - content: T.any( + override.returns( + { + content: + T.any( String, - OpenAI::Models::Responses::ResponseInputText, + OpenAI::Responses::ResponseInputText, OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Content::OutputText ), - role: OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Role::TaggedSymbol, - type: OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Type::TaggedSymbol - } - ) + role: + OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Role::TaggedSymbol, + type: + OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Type::TaggedSymbol + } + ) + end + def to_hash end - def to_hash; end # Text inputs to the model - can contain template strings. module Content extend OpenAI::Internal::Type::Union + Variants = + T.type_alias do + T.any( + String, + OpenAI::Responses::ResponseInputText, + OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Content::OutputText + ) + end + class OutputText < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The text output from the model. sig { returns(String) } attr_accessor :text @@ -381,24 +464,31 @@ module OpenAI attr_accessor :type # A text output from the model. - sig { params(text: String, type: Symbol).returns(T.attached_class) } + sig do + params(text: String, type: Symbol).returns(T.attached_class) + end def self.new( # The text output from the model. text:, # The type of the output text. Always `output_text`. type: :output_text - ); end - sig { override.returns({text: String, type: Symbol}) } - def to_hash; end + ) + end + + sig { override.returns({ text: String, type: Symbol }) } + def to_hash + end end sig do - override - .returns( - [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Content::OutputText] - ) + override.returns( + T::Array[ + OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Content::Variants + ] + ) + end + def self.variants end - def self.variants; end end # The role of the message input. One of `user`, `assistant`, `system`, or @@ -407,7 +497,12 @@ module OpenAI extend OpenAI::Internal::Type::Enum TaggedSymbol = - T.type_alias { T.all(Symbol, OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Role) } + T.type_alias do + T.all( + Symbol, + OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Role + ) + end OrSymbol = T.type_alias { T.any(Symbol, String) } USER = @@ -432,12 +527,14 @@ module OpenAI ) sig do - override - .returns( - T::Array[OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Role::TaggedSymbol] - ) + override.returns( + T::Array[ + OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Role::TaggedSymbol + ] + ) + end + def self.values end - def self.values; end end # The type of the message input. Always `message`. @@ -445,7 +542,12 @@ module OpenAI extend OpenAI::Internal::Type::Enum TaggedSymbol = - T.type_alias { T.all(Symbol, OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Type) } + T.type_alias do + T.all( + Symbol, + OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Type + ) + end OrSymbol = T.type_alias { T.any(Symbol, String) } MESSAGE = @@ -455,23 +557,27 @@ module OpenAI ) sig do - override - .returns( - T::Array[OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Type::TaggedSymbol] - ) + override.returns( + T::Array[ + OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Type::TaggedSymbol + ] + ) + end + def self.values end - def self.values; end end end end sig do - override - .returns( - [OpenAI::Models::EvalLabelModelGrader, OpenAI::Models::EvalStringCheckGrader, OpenAI::Models::EvalTextSimilarityGrader, OpenAI::Models::EvalRetrieveResponse::TestingCriterion::Python, OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel] - ) + override.returns( + T::Array[ + OpenAI::Models::EvalRetrieveResponse::TestingCriterion::Variants + ] + ) + end + def self.variants end - def self.variants; end end end end diff --git a/rbi/openai/models/eval_stored_completions_data_source_config.rbi b/rbi/openai/models/eval_stored_completions_data_source_config.rbi index 2c6fd596..99f736f1 100644 --- a/rbi/openai/models/eval_stored_completions_data_source_config.rbi +++ b/rbi/openai/models/eval_stored_completions_data_source_config.rbi @@ -3,6 +3,8 @@ module OpenAI module Models class EvalStoredCompletionsDataSourceConfig < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The json schema for the run data source items. Learn how to build JSON schemas # [here](https://json-schema.org/). sig { returns(T::Hash[Symbol, T.anything]) } @@ -31,8 +33,7 @@ module OpenAI schema: T::Hash[Symbol, T.anything], metadata: T.nilable(T::Hash[Symbol, String]), type: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # The json schema for the run data source items. Learn how to build JSON schemas @@ -47,16 +48,20 @@ module OpenAI metadata: nil, # The type of data source. Always `stored_completions`. type: :stored_completions - ); end + ) + end + sig do - override - .returns({ - schema: T::Hash[Symbol, T.anything], - type: Symbol, - metadata: T.nilable(T::Hash[Symbol, String]) - }) + override.returns( + { + schema: T::Hash[Symbol, T.anything], + type: Symbol, + metadata: T.nilable(T::Hash[Symbol, String]) + } + ) + end + def to_hash end - def to_hash; end end end end diff --git a/rbi/openai/models/eval_string_check_grader.rbi b/rbi/openai/models/eval_string_check_grader.rbi index cf0301de..b22c1497 100644 --- a/rbi/openai/models/eval_string_check_grader.rbi +++ b/rbi/openai/models/eval_string_check_grader.rbi @@ -3,6 +3,8 @@ module OpenAI module Models class EvalStringCheckGrader < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The input text. This may include template strings. sig { returns(String) } attr_accessor :input @@ -12,7 +14,7 @@ module OpenAI attr_accessor :name # The string check operation to perform. One of `eq`, `ne`, `like`, or `ilike`. - sig { returns(OpenAI::Models::EvalStringCheckGrader::Operation::OrSymbol) } + sig { returns(OpenAI::EvalStringCheckGrader::Operation::OrSymbol) } attr_accessor :operation # The reference text. This may include template strings. @@ -29,11 +31,10 @@ module OpenAI params( input: String, name: String, - operation: OpenAI::Models::EvalStringCheckGrader::Operation::OrSymbol, + operation: OpenAI::EvalStringCheckGrader::Operation::OrSymbol, reference: String, type: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # The input text. This may include template strings. @@ -46,35 +47,47 @@ module OpenAI reference:, # The object type, which is always `string_check`. type: :string_check - ); end + ) + end + sig do - override - .returns( - { - input: String, - name: String, - operation: OpenAI::Models::EvalStringCheckGrader::Operation::OrSymbol, - reference: String, - type: Symbol - } - ) + override.returns( + { + input: String, + name: String, + operation: OpenAI::EvalStringCheckGrader::Operation::OrSymbol, + reference: String, + type: Symbol + } + ) + end + def to_hash end - def to_hash; end # The string check operation to perform. One of `eq`, `ne`, `like`, or `ilike`. module Operation extend OpenAI::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::EvalStringCheckGrader::Operation) } + TaggedSymbol = + T.type_alias do + T.all(Symbol, OpenAI::EvalStringCheckGrader::Operation) + end OrSymbol = T.type_alias { T.any(Symbol, String) } - EQ = T.let(:eq, OpenAI::Models::EvalStringCheckGrader::Operation::TaggedSymbol) - NE = T.let(:ne, OpenAI::Models::EvalStringCheckGrader::Operation::TaggedSymbol) - LIKE = T.let(:like, OpenAI::Models::EvalStringCheckGrader::Operation::TaggedSymbol) - ILIKE = T.let(:ilike, OpenAI::Models::EvalStringCheckGrader::Operation::TaggedSymbol) + EQ = T.let(:eq, OpenAI::EvalStringCheckGrader::Operation::TaggedSymbol) + NE = T.let(:ne, OpenAI::EvalStringCheckGrader::Operation::TaggedSymbol) + LIKE = + T.let(:like, OpenAI::EvalStringCheckGrader::Operation::TaggedSymbol) + ILIKE = + T.let(:ilike, OpenAI::EvalStringCheckGrader::Operation::TaggedSymbol) - sig { override.returns(T::Array[OpenAI::Models::EvalStringCheckGrader::Operation::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[OpenAI::EvalStringCheckGrader::Operation::TaggedSymbol] + ) + end + def self.values + end end end end diff --git a/rbi/openai/models/eval_text_similarity_grader.rbi b/rbi/openai/models/eval_text_similarity_grader.rbi index 6b1c6e54..fad82523 100644 --- a/rbi/openai/models/eval_text_similarity_grader.rbi +++ b/rbi/openai/models/eval_text_similarity_grader.rbi @@ -3,9 +3,13 @@ module OpenAI module Models class EvalTextSimilarityGrader < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The evaluation metric to use. One of `fuzzy_match`, `bleu`, `gleu`, `meteor`, # `rouge_1`, `rouge_2`, `rouge_3`, `rouge_4`, `rouge_5`, or `rouge_l`. - sig { returns(OpenAI::Models::EvalTextSimilarityGrader::EvaluationMetric::OrSymbol) } + sig do + returns(OpenAI::EvalTextSimilarityGrader::EvaluationMetric::OrSymbol) + end attr_accessor :evaluation_metric # The text being graded. @@ -34,14 +38,14 @@ module OpenAI # A TextSimilarityGrader object which grades text based on similarity metrics. sig do params( - evaluation_metric: OpenAI::Models::EvalTextSimilarityGrader::EvaluationMetric::OrSymbol, + evaluation_metric: + OpenAI::EvalTextSimilarityGrader::EvaluationMetric::OrSymbol, input: String, pass_threshold: Float, reference: String, name: String, type: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # The evaluation metric to use. One of `fuzzy_match`, `bleu`, `gleu`, `meteor`, @@ -57,44 +61,96 @@ module OpenAI name: nil, # The type of grader. type: :text_similarity - ); end + ) + end + sig do - override - .returns( - { - evaluation_metric: OpenAI::Models::EvalTextSimilarityGrader::EvaluationMetric::OrSymbol, - input: String, - pass_threshold: Float, - reference: String, - type: Symbol, - name: String - } - ) + override.returns( + { + evaluation_metric: + OpenAI::EvalTextSimilarityGrader::EvaluationMetric::OrSymbol, + input: String, + pass_threshold: Float, + reference: String, + type: Symbol, + name: String + } + ) + end + def to_hash end - def to_hash; end # The evaluation metric to use. One of `fuzzy_match`, `bleu`, `gleu`, `meteor`, # `rouge_1`, `rouge_2`, `rouge_3`, `rouge_4`, `rouge_5`, or `rouge_l`. module EvaluationMetric extend OpenAI::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::EvalTextSimilarityGrader::EvaluationMetric) } + TaggedSymbol = + T.type_alias do + T.all(Symbol, OpenAI::EvalTextSimilarityGrader::EvaluationMetric) + end OrSymbol = T.type_alias { T.any(Symbol, String) } FUZZY_MATCH = - T.let(:fuzzy_match, OpenAI::Models::EvalTextSimilarityGrader::EvaluationMetric::TaggedSymbol) - BLEU = T.let(:bleu, OpenAI::Models::EvalTextSimilarityGrader::EvaluationMetric::TaggedSymbol) - GLEU = T.let(:gleu, OpenAI::Models::EvalTextSimilarityGrader::EvaluationMetric::TaggedSymbol) - METEOR = T.let(:meteor, OpenAI::Models::EvalTextSimilarityGrader::EvaluationMetric::TaggedSymbol) - ROUGE_1 = T.let(:rouge_1, OpenAI::Models::EvalTextSimilarityGrader::EvaluationMetric::TaggedSymbol) - ROUGE_2 = T.let(:rouge_2, OpenAI::Models::EvalTextSimilarityGrader::EvaluationMetric::TaggedSymbol) - ROUGE_3 = T.let(:rouge_3, OpenAI::Models::EvalTextSimilarityGrader::EvaluationMetric::TaggedSymbol) - ROUGE_4 = T.let(:rouge_4, OpenAI::Models::EvalTextSimilarityGrader::EvaluationMetric::TaggedSymbol) - ROUGE_5 = T.let(:rouge_5, OpenAI::Models::EvalTextSimilarityGrader::EvaluationMetric::TaggedSymbol) - ROUGE_L = T.let(:rouge_l, OpenAI::Models::EvalTextSimilarityGrader::EvaluationMetric::TaggedSymbol) + T.let( + :fuzzy_match, + OpenAI::EvalTextSimilarityGrader::EvaluationMetric::TaggedSymbol + ) + BLEU = + T.let( + :bleu, + OpenAI::EvalTextSimilarityGrader::EvaluationMetric::TaggedSymbol + ) + GLEU = + T.let( + :gleu, + OpenAI::EvalTextSimilarityGrader::EvaluationMetric::TaggedSymbol + ) + METEOR = + T.let( + :meteor, + OpenAI::EvalTextSimilarityGrader::EvaluationMetric::TaggedSymbol + ) + ROUGE_1 = + T.let( + :rouge_1, + OpenAI::EvalTextSimilarityGrader::EvaluationMetric::TaggedSymbol + ) + ROUGE_2 = + T.let( + :rouge_2, + OpenAI::EvalTextSimilarityGrader::EvaluationMetric::TaggedSymbol + ) + ROUGE_3 = + T.let( + :rouge_3, + OpenAI::EvalTextSimilarityGrader::EvaluationMetric::TaggedSymbol + ) + ROUGE_4 = + T.let( + :rouge_4, + OpenAI::EvalTextSimilarityGrader::EvaluationMetric::TaggedSymbol + ) + ROUGE_5 = + T.let( + :rouge_5, + OpenAI::EvalTextSimilarityGrader::EvaluationMetric::TaggedSymbol + ) + ROUGE_L = + T.let( + :rouge_l, + OpenAI::EvalTextSimilarityGrader::EvaluationMetric::TaggedSymbol + ) - sig { override.returns(T::Array[OpenAI::Models::EvalTextSimilarityGrader::EvaluationMetric::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[ + OpenAI::EvalTextSimilarityGrader::EvaluationMetric::TaggedSymbol + ] + ) + end + def self.values + end end end end diff --git a/rbi/openai/models/eval_update_params.rbi b/rbi/openai/models/eval_update_params.rbi index 857900a1..a5bbc2a7 100644 --- a/rbi/openai/models/eval_update_params.rbi +++ b/rbi/openai/models/eval_update_params.rbi @@ -6,6 +6,8 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # 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. @@ -26,9 +28,8 @@ module OpenAI params( metadata: T.nilable(T::Hash[Symbol, String]), name: String, - request_options: T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash) - ) - .returns(T.attached_class) + request_options: OpenAI::RequestOptions::OrHash + ).returns(T.attached_class) end def self.new( # Set of 16 key-value pairs that can be attached to an object. This can be useful @@ -41,18 +42,20 @@ module OpenAI # Rename the evaluation. name: nil, request_options: {} - ); end + ) + end + sig do - override - .returns( - { - metadata: T.nilable(T::Hash[Symbol, String]), - name: String, - request_options: OpenAI::RequestOptions - } - ) + override.returns( + { + metadata: T.nilable(T::Hash[Symbol, String]), + name: String, + request_options: OpenAI::RequestOptions + } + ) + end + def to_hash end - def to_hash; end end end end diff --git a/rbi/openai/models/eval_update_response.rbi b/rbi/openai/models/eval_update_response.rbi index 83a8e983..b3c85236 100644 --- a/rbi/openai/models/eval_update_response.rbi +++ b/rbi/openai/models/eval_update_response.rbi @@ -3,6 +3,8 @@ module OpenAI module Models class EvalUpdateResponse < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Unique identifier for the evaluation. sig { returns(String) } attr_accessor :id @@ -14,7 +16,10 @@ module OpenAI # Configuration of data sources used in runs of the evaluation. sig do returns( - T.any(OpenAI::Models::EvalCustomDataSourceConfig, OpenAI::Models::EvalStoredCompletionsDataSourceConfig) + T.any( + OpenAI::EvalCustomDataSourceConfig, + OpenAI::EvalStoredCompletionsDataSourceConfig + ) ) end attr_accessor :data_source_config @@ -41,9 +46,9 @@ module OpenAI returns( T::Array[ T.any( - OpenAI::Models::EvalLabelModelGrader, - OpenAI::Models::EvalStringCheckGrader, - OpenAI::Models::EvalTextSimilarityGrader, + OpenAI::EvalLabelModelGrader, + OpenAI::EvalStringCheckGrader, + OpenAI::EvalTextSimilarityGrader, OpenAI::Models::EvalUpdateResponse::TestingCriterion::Python, OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel ) @@ -62,26 +67,25 @@ module OpenAI params( id: String, created_at: Integer, - data_source_config: T.any( - OpenAI::Models::EvalCustomDataSourceConfig, - OpenAI::Internal::AnyHash, - OpenAI::Models::EvalStoredCompletionsDataSourceConfig - ), + data_source_config: + T.any( + OpenAI::EvalCustomDataSourceConfig::OrHash, + OpenAI::EvalStoredCompletionsDataSourceConfig::OrHash + ), metadata: T.nilable(T::Hash[Symbol, String]), name: String, - testing_criteria: T::Array[ - T.any( - OpenAI::Models::EvalLabelModelGrader, - OpenAI::Internal::AnyHash, - OpenAI::Models::EvalStringCheckGrader, - OpenAI::Models::EvalTextSimilarityGrader, - OpenAI::Models::EvalUpdateResponse::TestingCriterion::Python, - OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel - ) - ], + testing_criteria: + T::Array[ + T.any( + OpenAI::EvalLabelModelGrader::OrHash, + OpenAI::EvalStringCheckGrader::OrHash, + OpenAI::EvalTextSimilarityGrader::OrHash, + OpenAI::Models::EvalUpdateResponse::TestingCriterion::Python::OrHash, + OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::OrHash + ) + ], object: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # Unique identifier for the evaluation. @@ -103,42 +107,59 @@ module OpenAI testing_criteria:, # The object type. object: :eval - ); end + ) + end + sig do - override - .returns( - { - id: String, - created_at: Integer, - data_source_config: T.any(OpenAI::Models::EvalCustomDataSourceConfig, OpenAI::Models::EvalStoredCompletionsDataSourceConfig), - metadata: T.nilable(T::Hash[Symbol, String]), - name: String, - object: Symbol, - testing_criteria: T::Array[ + override.returns( + { + id: String, + created_at: Integer, + data_source_config: + T.any( + OpenAI::EvalCustomDataSourceConfig, + OpenAI::EvalStoredCompletionsDataSourceConfig + ), + metadata: T.nilable(T::Hash[Symbol, String]), + name: String, + object: Symbol, + testing_criteria: + T::Array[ T.any( - OpenAI::Models::EvalLabelModelGrader, - OpenAI::Models::EvalStringCheckGrader, - OpenAI::Models::EvalTextSimilarityGrader, + OpenAI::EvalLabelModelGrader, + OpenAI::EvalStringCheckGrader, + OpenAI::EvalTextSimilarityGrader, OpenAI::Models::EvalUpdateResponse::TestingCriterion::Python, OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel ) ] - } - ) + } + ) + end + def to_hash end - def to_hash; end # Configuration of data sources used in runs of the evaluation. module DataSourceConfig extend OpenAI::Internal::Type::Union - sig do - override - .returns( - [OpenAI::Models::EvalCustomDataSourceConfig, OpenAI::Models::EvalStoredCompletionsDataSourceConfig] + Variants = + T.type_alias do + T.any( + OpenAI::EvalCustomDataSourceConfig, + OpenAI::EvalStoredCompletionsDataSourceConfig ) + end + + sig do + override.returns( + T::Array[ + OpenAI::Models::EvalUpdateResponse::DataSourceConfig::Variants + ] + ) + end + def self.variants end - def self.variants; end end # A LabelModelGrader object which uses a model to assign labels to each item in @@ -146,7 +167,21 @@ module OpenAI module TestingCriterion extend OpenAI::Internal::Type::Union + Variants = + T.type_alias do + T.any( + OpenAI::EvalLabelModelGrader, + OpenAI::EvalStringCheckGrader, + OpenAI::EvalTextSimilarityGrader, + OpenAI::Models::EvalUpdateResponse::TestingCriterion::Python, + OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel + ) + end + class Python < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The name of the grader. sig { returns(String) } attr_accessor :name @@ -175,8 +210,13 @@ module OpenAI # A PythonGrader object that runs a python script on the input. sig do - params(name: String, source: String, image_tag: String, pass_threshold: Float, type: Symbol) - .returns(T.attached_class) + params( + name: String, + source: String, + image_tag: String, + pass_threshold: Float, + type: Symbol + ).returns(T.attached_class) end def self.new( # The name of the grader. @@ -189,7 +229,9 @@ module OpenAI pass_threshold: nil, # The object type, which is always `python`. type: :python - ); end + ) + end + sig do override.returns( { @@ -201,12 +243,22 @@ module OpenAI } ) end - def to_hash; end + def to_hash + end end class ScoreModel < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The input text. This may include template strings. - sig { returns(T::Array[OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input]) } + sig do + returns( + T::Array[ + OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input + ] + ) + end attr_accessor :input # The model to use for the evaluation. @@ -245,15 +297,17 @@ module OpenAI # A ScoreModelGrader object that uses a model to assign a score to the input. sig do params( - input: T::Array[T.any(OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input, OpenAI::Internal::AnyHash)], + input: + T::Array[ + OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::OrHash + ], model: String, name: String, pass_threshold: Float, range: T::Array[Float], sampling_params: T.anything, type: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # The input text. This may include template strings. @@ -270,30 +324,38 @@ module OpenAI sampling_params: nil, # The object type, which is always `score_model`. type: :score_model - ); end + ) + end + sig do - override - .returns( - { - input: T::Array[OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input], - model: String, - name: String, - type: Symbol, - pass_threshold: Float, - range: T::Array[Float], - sampling_params: T.anything - } - ) + override.returns( + { + input: + T::Array[ + OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input + ], + model: String, + name: String, + type: Symbol, + pass_threshold: Float, + range: T::Array[Float], + sampling_params: T.anything + } + ) + end + def to_hash end - def to_hash; end class Input < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Text inputs to the model - can contain template strings. sig do returns( T.any( String, - OpenAI::Models::Responses::ResponseInputText, + OpenAI::Responses::ResponseInputText, OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Content::OutputText ) ) @@ -302,18 +364,29 @@ module OpenAI # The role of the message input. One of `user`, `assistant`, `system`, or # `developer`. - sig { returns(OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Role::TaggedSymbol) } + sig do + returns( + OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Role::TaggedSymbol + ) + end attr_accessor :role # The type of the message input. Always `message`. sig do returns( - T.nilable(OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Type::TaggedSymbol) + T.nilable( + OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Type::TaggedSymbol + ) ) end attr_reader :type - sig { params(type: OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Type::OrSymbol).void } + sig do + params( + type: + OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Type::OrSymbol + ).void + end attr_writer :type # A message input to the model with a role indicating instruction following @@ -323,16 +396,17 @@ module OpenAI # interactions. sig do params( - content: T.any( - String, - OpenAI::Models::Responses::ResponseInputText, - OpenAI::Internal::AnyHash, - OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Content::OutputText - ), - role: OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Role::OrSymbol, - type: OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Type::OrSymbol - ) - .returns(T.attached_class) + content: + T.any( + String, + OpenAI::Responses::ResponseInputText::OrHash, + OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Content::OutputText::OrHash + ), + role: + OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Role::OrSymbol, + type: + OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Type::OrSymbol + ).returns(T.attached_class) end def self.new( # Text inputs to the model - can contain template strings. @@ -342,28 +416,45 @@ module OpenAI role:, # The type of the message input. Always `message`. type: nil - ); end + ) + end + sig do - override - .returns( - { - content: T.any( + override.returns( + { + content: + T.any( String, - OpenAI::Models::Responses::ResponseInputText, + OpenAI::Responses::ResponseInputText, OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Content::OutputText ), - role: OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Role::TaggedSymbol, - type: OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Type::TaggedSymbol - } - ) + role: + OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Role::TaggedSymbol, + type: + OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Type::TaggedSymbol + } + ) + end + def to_hash end - def to_hash; end # Text inputs to the model - can contain template strings. module Content extend OpenAI::Internal::Type::Union + Variants = + T.type_alias do + T.any( + String, + OpenAI::Responses::ResponseInputText, + OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Content::OutputText + ) + end + class OutputText < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The text output from the model. sig { returns(String) } attr_accessor :text @@ -373,24 +464,31 @@ module OpenAI attr_accessor :type # A text output from the model. - sig { params(text: String, type: Symbol).returns(T.attached_class) } + sig do + params(text: String, type: Symbol).returns(T.attached_class) + end def self.new( # The text output from the model. text:, # The type of the output text. Always `output_text`. type: :output_text - ); end - sig { override.returns({text: String, type: Symbol}) } - def to_hash; end + ) + end + + sig { override.returns({ text: String, type: Symbol }) } + def to_hash + end end sig do - override - .returns( - [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Content::OutputText] - ) + override.returns( + T::Array[ + OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Content::Variants + ] + ) + end + def self.variants end - def self.variants; end end # The role of the message input. One of `user`, `assistant`, `system`, or @@ -399,11 +497,19 @@ module OpenAI extend OpenAI::Internal::Type::Enum TaggedSymbol = - T.type_alias { T.all(Symbol, OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Role) } + T.type_alias do + T.all( + Symbol, + OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Role + ) + end OrSymbol = T.type_alias { T.any(Symbol, String) } USER = - T.let(:user, OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Role::TaggedSymbol) + T.let( + :user, + OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Role::TaggedSymbol + ) ASSISTANT = T.let( :assistant, @@ -421,12 +527,14 @@ module OpenAI ) sig do - override - .returns( - T::Array[OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Role::TaggedSymbol] - ) + override.returns( + T::Array[ + OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Role::TaggedSymbol + ] + ) + end + def self.values end - def self.values; end end # The type of the message input. Always `message`. @@ -434,7 +542,12 @@ module OpenAI extend OpenAI::Internal::Type::Enum TaggedSymbol = - T.type_alias { T.all(Symbol, OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Type) } + T.type_alias do + T.all( + Symbol, + OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Type + ) + end OrSymbol = T.type_alias { T.any(Symbol, String) } MESSAGE = @@ -444,23 +557,27 @@ module OpenAI ) sig do - override - .returns( - T::Array[OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Type::TaggedSymbol] - ) + override.returns( + T::Array[ + OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Type::TaggedSymbol + ] + ) + end + def self.values end - def self.values; end end end end sig do - override - .returns( - [OpenAI::Models::EvalLabelModelGrader, OpenAI::Models::EvalStringCheckGrader, OpenAI::Models::EvalTextSimilarityGrader, OpenAI::Models::EvalUpdateResponse::TestingCriterion::Python, OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel] - ) + override.returns( + T::Array[ + OpenAI::Models::EvalUpdateResponse::TestingCriterion::Variants + ] + ) + end + def self.variants end - def self.variants; end end end end diff --git a/rbi/openai/models/evals/create_eval_completions_run_data_source.rbi b/rbi/openai/models/evals/create_eval_completions_run_data_source.rbi index 6ac91b72..c3f2299e 100644 --- a/rbi/openai/models/evals/create_eval_completions_run_data_source.rbi +++ b/rbi/openai/models/evals/create_eval_completions_run_data_source.rbi @@ -4,28 +4,34 @@ module OpenAI module Models module Evals class CreateEvalCompletionsRunDataSource < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # A StoredCompletionsRunDataSource configuration describing a set of filters sig do returns( T.any( - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Source::FileContent, - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Source::FileID, - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Source::StoredCompletions + OpenAI::Evals::CreateEvalCompletionsRunDataSource::Source::FileContent, + OpenAI::Evals::CreateEvalCompletionsRunDataSource::Source::FileID, + OpenAI::Evals::CreateEvalCompletionsRunDataSource::Source::StoredCompletions ) ) end attr_accessor :source # The type of run data source. Always `completions`. - sig { returns(OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Type::OrSymbol) } + sig do + returns( + OpenAI::Evals::CreateEvalCompletionsRunDataSource::Type::OrSymbol + ) + end attr_accessor :type sig do returns( T.nilable( T.any( - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template, - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::ItemReference + OpenAI::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template, + OpenAI::Evals::CreateEvalCompletionsRunDataSource::InputMessages::ItemReference ) ) ) @@ -34,13 +40,12 @@ module OpenAI sig do params( - input_messages: T.any( - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template, - OpenAI::Internal::AnyHash, - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::ItemReference - ) - ) - .void + input_messages: + T.any( + OpenAI::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::OrHash, + OpenAI::Evals::CreateEvalCompletionsRunDataSource::InputMessages::ItemReference::OrHash + ) + ).void end attr_writer :input_messages @@ -51,42 +56,43 @@ module OpenAI sig { params(model: String).void } attr_writer :model - sig { returns(T.nilable(OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::SamplingParams)) } + sig do + returns( + T.nilable( + OpenAI::Evals::CreateEvalCompletionsRunDataSource::SamplingParams + ) + ) + end attr_reader :sampling_params sig do params( - sampling_params: T.any( - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::SamplingParams, - OpenAI::Internal::AnyHash - ) - ) - .void + sampling_params: + OpenAI::Evals::CreateEvalCompletionsRunDataSource::SamplingParams::OrHash + ).void end attr_writer :sampling_params # A CompletionsRunDataSource object describing a model sampling configuration. sig do params( - source: T.any( - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Source::FileContent, - OpenAI::Internal::AnyHash, - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Source::FileID, - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Source::StoredCompletions - ), - type: OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Type::OrSymbol, - input_messages: T.any( - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template, - OpenAI::Internal::AnyHash, - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::ItemReference - ), + source: + T.any( + OpenAI::Evals::CreateEvalCompletionsRunDataSource::Source::FileContent::OrHash, + OpenAI::Evals::CreateEvalCompletionsRunDataSource::Source::FileID::OrHash, + OpenAI::Evals::CreateEvalCompletionsRunDataSource::Source::StoredCompletions::OrHash + ), + type: + OpenAI::Evals::CreateEvalCompletionsRunDataSource::Type::OrSymbol, + input_messages: + T.any( + OpenAI::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::OrHash, + OpenAI::Evals::CreateEvalCompletionsRunDataSource::InputMessages::ItemReference::OrHash + ), model: String, - sampling_params: T.any( - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::SamplingParams, - OpenAI::Internal::AnyHash - ) - ) - .returns(T.attached_class) + sampling_params: + OpenAI::Evals::CreateEvalCompletionsRunDataSource::SamplingParams::OrHash + ).returns(T.attached_class) end def self.new( # A StoredCompletionsRunDataSource configuration describing a set of filters @@ -97,35 +103,59 @@ module OpenAI # The name of the model to use for generating completions (e.g. "o3-mini"). model: nil, sampling_params: nil - ); end + ) + end + sig do - override - .returns( - { - source: T.any( - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Source::FileContent, - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Source::FileID, - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Source::StoredCompletions + override.returns( + { + source: + T.any( + OpenAI::Evals::CreateEvalCompletionsRunDataSource::Source::FileContent, + OpenAI::Evals::CreateEvalCompletionsRunDataSource::Source::FileID, + OpenAI::Evals::CreateEvalCompletionsRunDataSource::Source::StoredCompletions ), - type: OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Type::OrSymbol, - input_messages: T.any( - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template, - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::ItemReference + type: + OpenAI::Evals::CreateEvalCompletionsRunDataSource::Type::OrSymbol, + input_messages: + T.any( + OpenAI::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template, + OpenAI::Evals::CreateEvalCompletionsRunDataSource::InputMessages::ItemReference ), - model: String, - sampling_params: OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::SamplingParams - } - ) + model: String, + sampling_params: + OpenAI::Evals::CreateEvalCompletionsRunDataSource::SamplingParams + } + ) + end + def to_hash end - def to_hash; end # A StoredCompletionsRunDataSource configuration describing a set of filters module Source extend OpenAI::Internal::Type::Union + Variants = + T.type_alias do + T.any( + OpenAI::Evals::CreateEvalCompletionsRunDataSource::Source::FileContent, + OpenAI::Evals::CreateEvalCompletionsRunDataSource::Source::FileID, + OpenAI::Evals::CreateEvalCompletionsRunDataSource::Source::StoredCompletions + ) + end + class FileContent < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The content of the jsonl file. - sig { returns(T::Array[OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Source::FileContent::Content]) } + sig do + returns( + T::Array[ + OpenAI::Evals::CreateEvalCompletionsRunDataSource::Source::FileContent::Content + ] + ) + end attr_accessor :content # The type of jsonl source. Always `file_content`. @@ -134,34 +164,39 @@ module OpenAI sig do params( - content: T::Array[ - T.any( - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Source::FileContent::Content, - OpenAI::Internal::AnyHash - ) - ], + content: + T::Array[ + OpenAI::Evals::CreateEvalCompletionsRunDataSource::Source::FileContent::Content::OrHash + ], type: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # The content of the jsonl file. content:, # The type of jsonl source. Always `file_content`. type: :file_content - ); end + ) + end + sig do - override - .returns( - { - content: T::Array[OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Source::FileContent::Content], - type: Symbol - } - ) + override.returns( + { + content: + T::Array[ + OpenAI::Evals::CreateEvalCompletionsRunDataSource::Source::FileContent::Content + ], + type: Symbol + } + ) + end + def to_hash end - def to_hash; end class Content < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + sig { returns(T::Hash[Symbol, T.anything]) } attr_accessor :item @@ -177,16 +212,26 @@ module OpenAI sample: T::Hash[Symbol, T.anything] ).returns(T.attached_class) end - def self.new(item:, sample: nil); end + def self.new(item:, sample: nil) + end sig do - override.returns({item: T::Hash[Symbol, T.anything], sample: T::Hash[Symbol, T.anything]}) + override.returns( + { + item: T::Hash[Symbol, T.anything], + sample: T::Hash[Symbol, T.anything] + } + ) + end + def to_hash end - def to_hash; end end end class FileID < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The identifier of the file. sig { returns(String) } attr_accessor :id @@ -201,12 +246,18 @@ module OpenAI id:, # The type of jsonl source. Always `file_id`. type: :file_id - ); end - sig { override.returns({id: String, type: Symbol}) } - def to_hash; end + ) + end + + sig { override.returns({ id: String, type: Symbol }) } + def to_hash + end end class StoredCompletions < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The type of source. Always `stored_completions`. sig { returns(Symbol) } attr_accessor :type @@ -245,8 +296,7 @@ module OpenAI metadata: T.nilable(T::Hash[Symbol, String]), model: T.nilable(String), type: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # An optional Unix timestamp to filter items created after this time. @@ -266,30 +316,34 @@ module OpenAI model: nil, # The type of source. Always `stored_completions`. type: :stored_completions - ); end + ) + end + sig do - override - .returns( - { - type: Symbol, - created_after: T.nilable(Integer), - created_before: T.nilable(Integer), - limit: T.nilable(Integer), - metadata: T.nilable(T::Hash[Symbol, String]), - model: T.nilable(String) - } - ) + override.returns( + { + type: Symbol, + created_after: T.nilable(Integer), + created_before: T.nilable(Integer), + limit: T.nilable(Integer), + metadata: T.nilable(T::Hash[Symbol, String]), + model: T.nilable(String) + } + ) + end + def to_hash end - def to_hash; end end sig do - override - .returns( - [OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Source::FileContent, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Source::FileID, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Source::StoredCompletions] - ) + override.returns( + T::Array[ + OpenAI::Evals::CreateEvalCompletionsRunDataSource::Source::Variants + ] + ) + end + def self.variants end - def self.variants; end end # The type of run data source. Always `completions`. @@ -297,28 +351,54 @@ module OpenAI extend OpenAI::Internal::Type::Enum TaggedSymbol = - T.type_alias { T.all(Symbol, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Type) } + T.type_alias do + T.all( + Symbol, + OpenAI::Evals::CreateEvalCompletionsRunDataSource::Type + ) + end OrSymbol = T.type_alias { T.any(Symbol, String) } COMPLETIONS = - T.let(:completions, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Type::TaggedSymbol) + T.let( + :completions, + OpenAI::Evals::CreateEvalCompletionsRunDataSource::Type::TaggedSymbol + ) - sig { override.returns(T::Array[OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Type::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[ + OpenAI::Evals::CreateEvalCompletionsRunDataSource::Type::TaggedSymbol + ] + ) + end + def self.values + end end module InputMessages extend OpenAI::Internal::Type::Union + Variants = + T.type_alias do + T.any( + OpenAI::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template, + OpenAI::Evals::CreateEvalCompletionsRunDataSource::InputMessages::ItemReference + ) + end + class Template < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # A list of chat messages forming the prompt or context. May include variable # references to the "item" namespace, ie {{item.name}}. sig do returns( T::Array[ T.any( - OpenAI::Models::Responses::EasyInputMessage, - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message + OpenAI::Responses::EasyInputMessage, + OpenAI::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message ) ] ) @@ -331,16 +411,15 @@ module OpenAI sig do params( - template: T::Array[ - T.any( - OpenAI::Models::Responses::EasyInputMessage, - OpenAI::Internal::AnyHash, - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message - ) - ], + template: + T::Array[ + T.any( + OpenAI::Responses::EasyInputMessage::OrHash, + OpenAI::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::OrHash + ) + ], type: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # A list of chat messages forming the prompt or context. May include variable @@ -348,22 +427,25 @@ module OpenAI template:, # The type of input messages. Always `template`. type: :template - ); end + ) + end + sig do - override - .returns( - { - template: T::Array[ + override.returns( + { + template: + T::Array[ T.any( - OpenAI::Models::Responses::EasyInputMessage, - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message + OpenAI::Responses::EasyInputMessage, + OpenAI::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message ) ], - type: Symbol - } - ) + type: Symbol + } + ) + end + def to_hash end - def to_hash; end # A message input to the model with a role indicating instruction following # hierarchy. Instructions given with the `developer` or `system` role take @@ -373,14 +455,25 @@ module OpenAI module Template extend OpenAI::Internal::Type::Union + Variants = + T.type_alias do + T.any( + OpenAI::Responses::EasyInputMessage, + OpenAI::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message + ) + end + class Message < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Text inputs to the model - can contain template strings. sig do returns( T.any( String, - OpenAI::Models::Responses::ResponseInputText, - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::Content::OutputText + OpenAI::Responses::ResponseInputText, + OpenAI::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::Content::OutputText ) ) end @@ -390,7 +483,7 @@ module OpenAI # `developer`. sig do returns( - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::Role::OrSymbol + OpenAI::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::Role::OrSymbol ) end attr_accessor :role @@ -399,7 +492,7 @@ module OpenAI sig do returns( T.nilable( - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::Type::OrSymbol + OpenAI::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::Type::OrSymbol ) ) end @@ -407,9 +500,9 @@ module OpenAI sig do params( - type: OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::Type::OrSymbol - ) - .void + type: + OpenAI::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::Type::OrSymbol + ).void end attr_writer :type @@ -420,16 +513,17 @@ module OpenAI # interactions. sig do params( - content: T.any( - String, - OpenAI::Models::Responses::ResponseInputText, - OpenAI::Internal::AnyHash, - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::Content::OutputText - ), - role: OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::Role::OrSymbol, - type: OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::Type::OrSymbol - ) - .returns(T.attached_class) + content: + T.any( + String, + OpenAI::Responses::ResponseInputText::OrHash, + OpenAI::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::Content::OutputText::OrHash + ), + role: + OpenAI::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::Role::OrSymbol, + type: + OpenAI::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::Type::OrSymbol + ).returns(T.attached_class) end def self.new( # Text inputs to the model - can contain template strings. @@ -439,28 +533,47 @@ module OpenAI role:, # The type of the message input. Always `message`. type: nil - ); end + ) + end + sig do - override - .returns( - { - content: T.any( + override.returns( + { + content: + T.any( String, - OpenAI::Models::Responses::ResponseInputText, - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::Content::OutputText + OpenAI::Responses::ResponseInputText, + OpenAI::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::Content::OutputText ), - role: OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::Role::OrSymbol, - type: OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::Type::OrSymbol - } - ) + role: + OpenAI::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::Role::OrSymbol, + type: + OpenAI::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::Type::OrSymbol + } + ) + end + def to_hash end - def to_hash; end # Text inputs to the model - can contain template strings. module Content extend OpenAI::Internal::Type::Union + Variants = + T.type_alias do + T.any( + String, + OpenAI::Responses::ResponseInputText, + OpenAI::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::Content::OutputText + ) + end + class OutputText < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any(T.self_type, OpenAI::Internal::AnyHash) + end + # The text output from the model. sig { returns(String) } attr_accessor :text @@ -470,24 +583,33 @@ module OpenAI attr_accessor :type # A text output from the model. - sig { params(text: String, type: Symbol).returns(T.attached_class) } + sig do + params(text: String, type: Symbol).returns( + T.attached_class + ) + end def self.new( # The text output from the model. text:, # The type of the output text. Always `output_text`. type: :output_text - ); end - sig { override.returns({text: String, type: Symbol}) } - def to_hash; end + ) + end + + sig { override.returns({ text: String, type: Symbol }) } + def to_hash + end end sig do - override - .returns( - [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::Content::OutputText] - ) + override.returns( + T::Array[ + OpenAI::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::Content::Variants + ] + ) + end + def self.variants end - def self.variants; end end # The role of the message input. One of `user`, `assistant`, `system`, or @@ -497,40 +619,43 @@ module OpenAI TaggedSymbol = T.type_alias do - T.all(Symbol, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::Role) + T.all( + Symbol, + OpenAI::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::Role + ) end OrSymbol = T.type_alias { T.any(Symbol, String) } USER = T.let( :user, - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::Role::TaggedSymbol + OpenAI::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::Role::TaggedSymbol ) ASSISTANT = T.let( :assistant, - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::Role::TaggedSymbol + OpenAI::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::Role::TaggedSymbol ) SYSTEM = T.let( :system, - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::Role::TaggedSymbol + OpenAI::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::Role::TaggedSymbol ) DEVELOPER = T.let( :developer, - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::Role::TaggedSymbol + OpenAI::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::Role::TaggedSymbol ) sig do - override - .returns( - T::Array[ - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::Role::TaggedSymbol - ] - ) + override.returns( + T::Array[ + OpenAI::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::Role::TaggedSymbol + ] + ) + end + def self.values end - def self.values; end end # The type of the message input. Always `message`. @@ -539,39 +664,47 @@ module OpenAI TaggedSymbol = T.type_alias do - T.all(Symbol, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::Type) + T.all( + Symbol, + OpenAI::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::Type + ) end OrSymbol = T.type_alias { T.any(Symbol, String) } MESSAGE = T.let( :message, - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::Type::TaggedSymbol + OpenAI::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::Type::TaggedSymbol ) sig do - override - .returns( - T::Array[ - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::Type::TaggedSymbol - ] - ) + override.returns( + T::Array[ + OpenAI::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::Type::TaggedSymbol + ] + ) + end + def self.values end - def self.values; end end end sig do - override - .returns( - [OpenAI::Models::Responses::EasyInputMessage, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message] - ) + override.returns( + T::Array[ + OpenAI::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Variants + ] + ) + end + def self.variants end - def self.variants; end end end class ItemReference < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # A reference to a variable in the "item" namespace. Ie, "item.name" sig { returns(String) } attr_accessor :item_reference @@ -580,27 +713,39 @@ module OpenAI sig { returns(Symbol) } attr_accessor :type - sig { params(item_reference: String, type: Symbol).returns(T.attached_class) } + sig do + params(item_reference: String, type: Symbol).returns( + T.attached_class + ) + end def self.new( # A reference to a variable in the "item" namespace. Ie, "item.name" item_reference:, # The type of input messages. Always `item_reference`. type: :item_reference - ); end - sig { override.returns({item_reference: String, type: Symbol}) } - def to_hash; end + ) + end + + sig { override.returns({ item_reference: String, type: Symbol }) } + def to_hash + end end sig do - override - .returns( - [OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::ItemReference] - ) + override.returns( + T::Array[ + OpenAI::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Variants + ] + ) + end + def self.variants end - def self.variants; end end class SamplingParams < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The maximum number of tokens in the generated output. sig { returns(T.nilable(Integer)) } attr_reader :max_completion_tokens @@ -630,8 +775,12 @@ module OpenAI attr_writer :top_p sig do - params(max_completion_tokens: Integer, seed: Integer, temperature: Float, top_p: Float) - .returns(T.attached_class) + params( + max_completion_tokens: Integer, + seed: Integer, + temperature: Float, + top_p: Float + ).returns(T.attached_class) end def self.new( # The maximum number of tokens in the generated output. @@ -642,7 +791,9 @@ module OpenAI temperature: nil, # An alternative to temperature for nucleus sampling; 1.0 includes all tokens. top_p: nil - ); end + ) + end + sig do override.returns( { @@ -653,7 +804,8 @@ module OpenAI } ) end - def to_hash; end + def to_hash + end end end end diff --git a/rbi/openai/models/evals/create_eval_jsonl_run_data_source.rbi b/rbi/openai/models/evals/create_eval_jsonl_run_data_source.rbi index 66df840b..e9715934 100644 --- a/rbi/openai/models/evals/create_eval_jsonl_run_data_source.rbi +++ b/rbi/openai/models/evals/create_eval_jsonl_run_data_source.rbi @@ -4,11 +4,13 @@ module OpenAI module Models module Evals class CreateEvalJSONLRunDataSource < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + sig do returns( T.any( - OpenAI::Models::Evals::CreateEvalJSONLRunDataSource::Source::FileContent, - OpenAI::Models::Evals::CreateEvalJSONLRunDataSource::Source::FileID + OpenAI::Evals::CreateEvalJSONLRunDataSource::Source::FileContent, + OpenAI::Evals::CreateEvalJSONLRunDataSource::Source::FileID ) ) end @@ -22,40 +24,59 @@ module OpenAI # eval sig do params( - source: T.any( - OpenAI::Models::Evals::CreateEvalJSONLRunDataSource::Source::FileContent, - OpenAI::Internal::AnyHash, - OpenAI::Models::Evals::CreateEvalJSONLRunDataSource::Source::FileID - ), + source: + T.any( + OpenAI::Evals::CreateEvalJSONLRunDataSource::Source::FileContent::OrHash, + OpenAI::Evals::CreateEvalJSONLRunDataSource::Source::FileID::OrHash + ), type: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( source:, # The type of data source. Always `jsonl`. type: :jsonl - ); end + ) + end + sig do - override - .returns( - { - source: T.any( - OpenAI::Models::Evals::CreateEvalJSONLRunDataSource::Source::FileContent, - OpenAI::Models::Evals::CreateEvalJSONLRunDataSource::Source::FileID + override.returns( + { + source: + T.any( + OpenAI::Evals::CreateEvalJSONLRunDataSource::Source::FileContent, + OpenAI::Evals::CreateEvalJSONLRunDataSource::Source::FileID ), - type: Symbol - } - ) + type: Symbol + } + ) + end + def to_hash end - def to_hash; end module Source extend OpenAI::Internal::Type::Union + Variants = + T.type_alias do + T.any( + OpenAI::Evals::CreateEvalJSONLRunDataSource::Source::FileContent, + OpenAI::Evals::CreateEvalJSONLRunDataSource::Source::FileID + ) + end + class FileContent < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The content of the jsonl file. - sig { returns(T::Array[OpenAI::Models::Evals::CreateEvalJSONLRunDataSource::Source::FileContent::Content]) } + sig do + returns( + T::Array[ + OpenAI::Evals::CreateEvalJSONLRunDataSource::Source::FileContent::Content + ] + ) + end attr_accessor :content # The type of jsonl source. Always `file_content`. @@ -64,34 +85,39 @@ module OpenAI sig do params( - content: T::Array[ - T.any( - OpenAI::Models::Evals::CreateEvalJSONLRunDataSource::Source::FileContent::Content, - OpenAI::Internal::AnyHash - ) - ], + content: + T::Array[ + OpenAI::Evals::CreateEvalJSONLRunDataSource::Source::FileContent::Content::OrHash + ], type: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # The content of the jsonl file. content:, # The type of jsonl source. Always `file_content`. type: :file_content - ); end + ) + end + sig do - override - .returns( - { - content: T::Array[OpenAI::Models::Evals::CreateEvalJSONLRunDataSource::Source::FileContent::Content], - type: Symbol - } - ) + override.returns( + { + content: + T::Array[ + OpenAI::Evals::CreateEvalJSONLRunDataSource::Source::FileContent::Content + ], + type: Symbol + } + ) + end + def to_hash end - def to_hash; end class Content < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + sig { returns(T::Hash[Symbol, T.anything]) } attr_accessor :item @@ -107,16 +133,26 @@ module OpenAI sample: T::Hash[Symbol, T.anything] ).returns(T.attached_class) end - def self.new(item:, sample: nil); end + def self.new(item:, sample: nil) + end sig do - override.returns({item: T::Hash[Symbol, T.anything], sample: T::Hash[Symbol, T.anything]}) + override.returns( + { + item: T::Hash[Symbol, T.anything], + sample: T::Hash[Symbol, T.anything] + } + ) + end + def to_hash end - def to_hash; end end end class FileID < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The identifier of the file. sig { returns(String) } attr_accessor :id @@ -131,18 +167,23 @@ module OpenAI id:, # The type of jsonl source. Always `file_id`. type: :file_id - ); end - sig { override.returns({id: String, type: Symbol}) } - def to_hash; end + ) + end + + sig { override.returns({ id: String, type: Symbol }) } + def to_hash + end end sig do - override - .returns( - [OpenAI::Models::Evals::CreateEvalJSONLRunDataSource::Source::FileContent, OpenAI::Models::Evals::CreateEvalJSONLRunDataSource::Source::FileID] - ) + override.returns( + T::Array[ + OpenAI::Evals::CreateEvalJSONLRunDataSource::Source::Variants + ] + ) + end + def self.variants end - def self.variants; end end end end diff --git a/rbi/openai/models/evals/eval_api_error.rbi b/rbi/openai/models/evals/eval_api_error.rbi index 906200ec..153211d5 100644 --- a/rbi/openai/models/evals/eval_api_error.rbi +++ b/rbi/openai/models/evals/eval_api_error.rbi @@ -6,6 +6,8 @@ module OpenAI module Evals class EvalAPIError < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The error code. sig { returns(String) } attr_accessor :code @@ -21,9 +23,12 @@ module OpenAI code:, # The error message. message: - ); end - sig { override.returns({code: String, message: String}) } - def to_hash; end + ) + end + + sig { override.returns({ code: String, message: String }) } + def to_hash + end end end end diff --git a/rbi/openai/models/evals/run_cancel_params.rbi b/rbi/openai/models/evals/run_cancel_params.rbi index 4d5aae07..0dd60f39 100644 --- a/rbi/openai/models/evals/run_cancel_params.rbi +++ b/rbi/openai/models/evals/run_cancel_params.rbi @@ -7,17 +7,27 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + sig { returns(String) } attr_accessor :eval_id sig do - params(eval_id: String, request_options: T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash)) - .returns(T.attached_class) + params( + eval_id: String, + request_options: OpenAI::RequestOptions::OrHash + ).returns(T.attached_class) + end + def self.new(eval_id:, request_options: {}) end - def self.new(eval_id:, request_options: {}); end - sig { override.returns({eval_id: String, request_options: OpenAI::RequestOptions}) } - def to_hash; end + sig do + override.returns( + { eval_id: String, request_options: OpenAI::RequestOptions } + ) + end + def to_hash + end end end end diff --git a/rbi/openai/models/evals/run_cancel_response.rbi b/rbi/openai/models/evals/run_cancel_response.rbi index 41ea134d..923b2437 100644 --- a/rbi/openai/models/evals/run_cancel_response.rbi +++ b/rbi/openai/models/evals/run_cancel_response.rbi @@ -4,6 +4,8 @@ module OpenAI module Models module Evals class RunCancelResponse < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Unique identifier for the evaluation run. sig { returns(String) } attr_accessor :id @@ -16,8 +18,8 @@ module OpenAI sig do returns( T.any( - OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource, + OpenAI::Evals::CreateEvalJSONLRunDataSource, + OpenAI::Evals::CreateEvalCompletionsRunDataSource, OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions ) ) @@ -25,10 +27,10 @@ module OpenAI attr_accessor :data_source # An object representing an error response from the Eval API. - sig { returns(OpenAI::Models::Evals::EvalAPIError) } + sig { returns(OpenAI::Evals::EvalAPIError) } attr_reader :error - sig { params(error: T.any(OpenAI::Models::Evals::EvalAPIError, OpenAI::Internal::AnyHash)).void } + sig { params(error: OpenAI::Evals::EvalAPIError::OrHash).void } attr_writer :error # The identifier of the associated evaluation. @@ -57,11 +59,21 @@ module OpenAI attr_accessor :object # Usage statistics for each model during the evaluation run. - sig { returns(T::Array[OpenAI::Models::Evals::RunCancelResponse::PerModelUsage]) } + sig do + returns( + T::Array[OpenAI::Models::Evals::RunCancelResponse::PerModelUsage] + ) + end attr_accessor :per_model_usage # Results per testing criteria applied during the evaluation run. - sig { returns(T::Array[OpenAI::Models::Evals::RunCancelResponse::PerTestingCriteriaResult]) } + sig do + returns( + T::Array[ + OpenAI::Models::Evals::RunCancelResponse::PerTestingCriteriaResult + ] + ) + end attr_accessor :per_testing_criteria_results # The URL to the rendered evaluation run report on the UI dashboard. @@ -74,9 +86,9 @@ module OpenAI sig do params( - result_counts: T.any(OpenAI::Models::Evals::RunCancelResponse::ResultCounts, OpenAI::Internal::AnyHash) - ) - .void + result_counts: + OpenAI::Models::Evals::RunCancelResponse::ResultCounts::OrHash + ).void end attr_writer :result_counts @@ -89,25 +101,31 @@ module OpenAI params( id: String, created_at: Integer, - data_source: T.any( - OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, - OpenAI::Internal::AnyHash, - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource, - OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions - ), - error: T.any(OpenAI::Models::Evals::EvalAPIError, OpenAI::Internal::AnyHash), + data_source: + T.any( + OpenAI::Evals::CreateEvalJSONLRunDataSource::OrHash, + OpenAI::Evals::CreateEvalCompletionsRunDataSource::OrHash, + OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::OrHash + ), + error: OpenAI::Evals::EvalAPIError::OrHash, eval_id: String, metadata: T.nilable(T::Hash[Symbol, String]), model: String, name: String, - per_model_usage: T::Array[T.any(OpenAI::Models::Evals::RunCancelResponse::PerModelUsage, OpenAI::Internal::AnyHash)], - per_testing_criteria_results: T::Array[T.any(OpenAI::Models::Evals::RunCancelResponse::PerTestingCriteriaResult, OpenAI::Internal::AnyHash)], + per_model_usage: + T::Array[ + OpenAI::Models::Evals::RunCancelResponse::PerModelUsage::OrHash + ], + per_testing_criteria_results: + T::Array[ + OpenAI::Models::Evals::RunCancelResponse::PerTestingCriteriaResult::OrHash + ], report_url: String, - result_counts: T.any(OpenAI::Models::Evals::RunCancelResponse::ResultCounts, OpenAI::Internal::AnyHash), + result_counts: + OpenAI::Models::Evals::RunCancelResponse::ResultCounts::OrHash, status: String, object: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # Unique identifier for the evaluation run. @@ -143,39 +161,61 @@ module OpenAI status:, # The type of the object. Always "eval.run". object: :"eval.run" - ); end + ) + end + sig do - override - .returns( - { - id: String, - created_at: Integer, - data_source: T.any( - OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource, + override.returns( + { + id: String, + created_at: Integer, + data_source: + T.any( + OpenAI::Evals::CreateEvalJSONLRunDataSource, + OpenAI::Evals::CreateEvalCompletionsRunDataSource, OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions ), - error: OpenAI::Models::Evals::EvalAPIError, - eval_id: String, - metadata: T.nilable(T::Hash[Symbol, String]), - model: String, - name: String, - object: Symbol, - per_model_usage: T::Array[OpenAI::Models::Evals::RunCancelResponse::PerModelUsage], - per_testing_criteria_results: T::Array[OpenAI::Models::Evals::RunCancelResponse::PerTestingCriteriaResult], - report_url: String, - result_counts: OpenAI::Models::Evals::RunCancelResponse::ResultCounts, - status: String - } - ) + error: OpenAI::Evals::EvalAPIError, + eval_id: String, + metadata: T.nilable(T::Hash[Symbol, String]), + model: String, + name: String, + object: Symbol, + per_model_usage: + T::Array[ + OpenAI::Models::Evals::RunCancelResponse::PerModelUsage + ], + per_testing_criteria_results: + T::Array[ + OpenAI::Models::Evals::RunCancelResponse::PerTestingCriteriaResult + ], + report_url: String, + result_counts: + OpenAI::Models::Evals::RunCancelResponse::ResultCounts, + status: String + } + ) + end + def to_hash end - def to_hash; end # Information about the run's data source. module DataSource extend OpenAI::Internal::Type::Union + Variants = + T.type_alias do + T.any( + OpenAI::Evals::CreateEvalJSONLRunDataSource, + OpenAI::Evals::CreateEvalCompletionsRunDataSource, + OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions + ) + end + class Completions < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # A EvalResponsesSource object describing a run data source configuration. sig do returns( @@ -206,13 +246,12 @@ module OpenAI sig do params( - input_messages: T.any( - OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template, - OpenAI::Internal::AnyHash, - OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::ItemReference - ) - ) - .void + input_messages: + T.any( + OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::OrHash, + OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::ItemReference::OrHash + ) + ).void end attr_writer :input_messages @@ -223,42 +262,42 @@ module OpenAI sig { params(model: String).void } attr_writer :model - sig { returns(T.nilable(OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::SamplingParams)) } + sig do + returns( + T.nilable( + OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::SamplingParams + ) + ) + end attr_reader :sampling_params sig do params( - sampling_params: T.any( - OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::SamplingParams, - OpenAI::Internal::AnyHash - ) - ) - .void + sampling_params: + OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::SamplingParams::OrHash + ).void end attr_writer :sampling_params # A ResponsesRunDataSource object describing a model sampling configuration. sig do params( - source: T.any( - OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::Source::FileContent, - OpenAI::Internal::AnyHash, - OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::Source::FileID, - OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::Source::Responses - ), - input_messages: T.any( - OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template, - OpenAI::Internal::AnyHash, - OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::ItemReference - ), + source: + T.any( + OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::Source::FileContent::OrHash, + OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::Source::FileID::OrHash, + OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::Source::Responses::OrHash + ), + input_messages: + T.any( + OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::OrHash, + OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::ItemReference::OrHash + ), model: String, - sampling_params: T.any( - OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::SamplingParams, - OpenAI::Internal::AnyHash - ), + sampling_params: + OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::SamplingParams::OrHash, type: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # A EvalResponsesSource object describing a run data source configuration. @@ -269,37 +308,56 @@ module OpenAI sampling_params: nil, # The type of run data source. Always `completions`. type: :completions - ); end + ) + end + sig do - override - .returns( - { - source: T.any( + override.returns( + { + source: + T.any( OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::Source::FileContent, OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::Source::FileID, OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::Source::Responses ), - type: Symbol, - input_messages: T.any( + type: Symbol, + input_messages: + T.any( OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template, OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::ItemReference ), - model: String, - sampling_params: OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::SamplingParams - } - ) + model: String, + sampling_params: + OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::SamplingParams + } + ) + end + def to_hash end - def to_hash; end # A EvalResponsesSource object describing a run data source configuration. module Source extend OpenAI::Internal::Type::Union + Variants = + T.type_alias do + T.any( + OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::Source::FileContent, + OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::Source::FileID, + OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::Source::Responses + ) + end + class FileContent < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The content of the jsonl file. sig do returns( - T::Array[OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::Source::FileContent::Content] + T::Array[ + OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::Source::FileContent::Content + ] ) end attr_accessor :content @@ -310,34 +368,41 @@ module OpenAI sig do params( - content: T::Array[ - T.any( - OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::Source::FileContent::Content, - OpenAI::Internal::AnyHash - ) - ], + content: + T::Array[ + OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::Source::FileContent::Content::OrHash + ], type: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # The content of the jsonl file. content:, # The type of jsonl source. Always `file_content`. type: :file_content - ); end + ) + end + sig do - override - .returns( - { - content: T::Array[OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::Source::FileContent::Content], - type: Symbol - } - ) + override.returns( + { + content: + T::Array[ + OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::Source::FileContent::Content + ], + type: Symbol + } + ) + end + def to_hash end - def to_hash; end class Content < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any(T.self_type, OpenAI::Internal::AnyHash) + end + sig { returns(T::Hash[Symbol, T.anything]) } attr_accessor :item @@ -350,20 +415,29 @@ module OpenAI sig do params( item: T::Hash[Symbol, T.anything], - sample: T::Hash[Symbol, - T.anything] + sample: T::Hash[Symbol, T.anything] ).returns(T.attached_class) end - def self.new(item:, sample: nil); end + def self.new(item:, sample: nil) + end sig do - override.returns({item: T::Hash[Symbol, T.anything], sample: T::Hash[Symbol, T.anything]}) + override.returns( + { + item: T::Hash[Symbol, T.anything], + sample: T::Hash[Symbol, T.anything] + } + ) + end + def to_hash end - def to_hash; end end end class FileID < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The identifier of the file. sig { returns(String) } attr_accessor :id @@ -372,18 +446,26 @@ module OpenAI sig { returns(Symbol) } attr_accessor :type - sig { params(id: String, type: Symbol).returns(T.attached_class) } + sig do + params(id: String, type: Symbol).returns(T.attached_class) + end def self.new( # The identifier of the file. id:, # The type of jsonl source. Always `file_id`. type: :file_id - ); end - sig { override.returns({id: String, type: Symbol}) } - def to_hash; end + ) + end + + sig { override.returns({ id: String, type: Symbol }) } + def to_hash + end end class Responses < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The type of run data source. Always `responses`. sig { returns(Symbol) } attr_accessor :type @@ -425,7 +507,9 @@ module OpenAI # Optional reasoning effort parameter. This is a query parameter used to select # responses. - sig { returns(T.nilable(OpenAI::Models::ReasoningEffort::TaggedSymbol)) } + sig do + returns(T.nilable(OpenAI::ReasoningEffort::TaggedSymbol)) + end attr_accessor :reasoning_effort # Sampling temperature. This is a query parameter used to select responses. @@ -450,13 +534,13 @@ module OpenAI instructions_search: T.nilable(String), metadata: T.nilable(T.anything), model: T.nilable(String), - reasoning_effort: T.nilable(OpenAI::Models::ReasoningEffort::OrSymbol), + reasoning_effort: + T.nilable(OpenAI::ReasoningEffort::OrSymbol), temperature: T.nilable(Float), top_p: T.nilable(Float), users: T.nilable(T::Array[String]), type: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # Whether to allow parallel tool calls. This is a query parameter used to select @@ -491,42 +575,58 @@ module OpenAI users: nil, # The type of run data source. Always `responses`. type: :responses - ); end + ) + end + sig do - override - .returns( - { - type: Symbol, - allow_parallel_tool_calls: T.nilable(T::Boolean), - created_after: T.nilable(Integer), - created_before: T.nilable(Integer), - has_tool_calls: T.nilable(T::Boolean), - instructions_search: T.nilable(String), - metadata: T.nilable(T.anything), - model: T.nilable(String), - reasoning_effort: T.nilable(OpenAI::Models::ReasoningEffort::TaggedSymbol), - temperature: T.nilable(Float), - top_p: T.nilable(Float), - users: T.nilable(T::Array[String]) - } - ) + override.returns( + { + type: Symbol, + allow_parallel_tool_calls: T.nilable(T::Boolean), + created_after: T.nilable(Integer), + created_before: T.nilable(Integer), + has_tool_calls: T.nilable(T::Boolean), + instructions_search: T.nilable(String), + metadata: T.nilable(T.anything), + model: T.nilable(String), + reasoning_effort: + T.nilable(OpenAI::ReasoningEffort::TaggedSymbol), + temperature: T.nilable(Float), + top_p: T.nilable(Float), + users: T.nilable(T::Array[String]) + } + ) + end + def to_hash end - def to_hash; end end sig do - override - .returns( - [OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::Source::FileContent, OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::Source::FileID, OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::Source::Responses] - ) + override.returns( + T::Array[ + OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::Source::Variants + ] + ) + end + def self.variants end - def self.variants; end end module InputMessages extend OpenAI::Internal::Type::Union + Variants = + T.type_alias do + T.any( + OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template, + OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::ItemReference + ) + end + class Template < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # A list of chat messages forming the prompt or context. May include variable # references to the "item" namespace, ie {{item.name}}. sig do @@ -547,16 +647,15 @@ module OpenAI sig do params( - template: T::Array[ - T.any( - OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::ChatMessage, - OpenAI::Internal::AnyHash, - OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem - ) - ], + template: + T::Array[ + T.any( + OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::ChatMessage::OrHash, + OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::OrHash + ) + ], type: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # A list of chat messages forming the prompt or context. May include variable @@ -564,22 +663,25 @@ module OpenAI template:, # The type of input messages. Always `template`. type: :template - ); end + ) + end + sig do - override - .returns( - { - template: T::Array[ + override.returns( + { + template: + T::Array[ T.any( OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::ChatMessage, OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem ) ], - type: Symbol - } - ) + type: Symbol + } + ) + end + def to_hash end - def to_hash; end # A message input to the model with a role indicating instruction following # hierarchy. Instructions given with the `developer` or `system` role take @@ -589,7 +691,20 @@ module OpenAI module Template extend OpenAI::Internal::Type::Union + Variants = + T.type_alias do + T.any( + OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::ChatMessage, + OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem + ) + end + class ChatMessage < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any(T.self_type, OpenAI::Internal::AnyHash) + end + # The content of the message. sig { returns(String) } attr_accessor :content @@ -598,24 +713,36 @@ module OpenAI sig { returns(String) } attr_accessor :role - sig { params(content: String, role: String).returns(T.attached_class) } + sig do + params(content: String, role: String).returns( + T.attached_class + ) + end def self.new( # The content of the message. content:, # The role of the message (e.g. "system", "assistant", "user"). role: - ); end - sig { override.returns({content: String, role: String}) } - def to_hash; end + ) + end + + sig { override.returns({ content: String, role: String }) } + def to_hash + end end class EvalItem < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any(T.self_type, OpenAI::Internal::AnyHash) + end + # Text inputs to the model - can contain template strings. sig do returns( T.any( String, - OpenAI::Models::Responses::ResponseInputText, + OpenAI::Responses::ResponseInputText, OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText ) ) @@ -643,9 +770,9 @@ module OpenAI sig do params( - type: OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Type::OrSymbol - ) - .void + type: + OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Type::OrSymbol + ).void end attr_writer :type @@ -656,16 +783,17 @@ module OpenAI # interactions. sig do params( - content: T.any( - String, - OpenAI::Models::Responses::ResponseInputText, - OpenAI::Internal::AnyHash, - OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText - ), - role: OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Role::OrSymbol, - type: OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Type::OrSymbol - ) - .returns(T.attached_class) + content: + T.any( + String, + OpenAI::Responses::ResponseInputText::OrHash, + OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText::OrHash + ), + role: + OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Role::OrSymbol, + type: + OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Type::OrSymbol + ).returns(T.attached_class) end def self.new( # Text inputs to the model - can contain template strings. @@ -675,28 +803,47 @@ module OpenAI role:, # The type of the message input. Always `message`. type: nil - ); end + ) + end + sig do - override - .returns( - { - content: T.any( + override.returns( + { + content: + T.any( String, - OpenAI::Models::Responses::ResponseInputText, + OpenAI::Responses::ResponseInputText, OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText ), - role: OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Role::TaggedSymbol, - type: OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Type::TaggedSymbol - } - ) + role: + OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Role::TaggedSymbol, + type: + OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Type::TaggedSymbol + } + ) + end + def to_hash end - def to_hash; end # Text inputs to the model - can contain template strings. module Content extend OpenAI::Internal::Type::Union + Variants = + T.type_alias do + T.any( + String, + OpenAI::Responses::ResponseInputText, + OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText + ) + end + class OutputText < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any(T.self_type, OpenAI::Internal::AnyHash) + end + # The text output from the model. sig { returns(String) } attr_accessor :text @@ -706,24 +853,33 @@ module OpenAI attr_accessor :type # A text output from the model. - sig { params(text: String, type: Symbol).returns(T.attached_class) } + sig do + params(text: String, type: Symbol).returns( + T.attached_class + ) + end def self.new( # The text output from the model. text:, # The type of the output text. Always `output_text`. type: :output_text - ); end - sig { override.returns({text: String, type: Symbol}) } - def to_hash; end + ) + end + + sig { override.returns({ text: String, type: Symbol }) } + def to_hash + end end sig do - override - .returns( - [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText] - ) + override.returns( + T::Array[ + OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::Variants + ] + ) + end + def self.variants end - def self.variants; end end # The role of the message input. One of `user`, `assistant`, `system`, or @@ -733,7 +889,10 @@ module OpenAI TaggedSymbol = T.type_alias do - T.all(Symbol, OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Role) + T.all( + Symbol, + OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Role + ) end OrSymbol = T.type_alias { T.any(Symbol, String) } @@ -759,14 +918,14 @@ module OpenAI ) sig do - override - .returns( - T::Array[ - OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Role::TaggedSymbol - ] - ) + override.returns( + T::Array[ + OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Role::TaggedSymbol + ] + ) + end + def self.values end - def self.values; end end # The type of the message input. Always `message`. @@ -775,7 +934,10 @@ module OpenAI TaggedSymbol = T.type_alias do - T.all(Symbol, OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Type) + T.all( + Symbol, + OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Type + ) end OrSymbol = T.type_alias { T.any(Symbol, String) } @@ -786,28 +948,33 @@ module OpenAI ) sig do - override - .returns( - T::Array[ - OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Type::TaggedSymbol - ] - ) + override.returns( + T::Array[ + OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Type::TaggedSymbol + ] + ) + end + def self.values end - def self.values; end end end sig do - override - .returns( - [OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::ChatMessage, OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem] - ) + override.returns( + T::Array[ + OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::Variants + ] + ) + end + def self.variants end - def self.variants; end end end class ItemReference < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # A reference to a variable in the "item" namespace. Ie, "item.name" sig { returns(String) } attr_accessor :item_reference @@ -816,27 +983,41 @@ module OpenAI sig { returns(Symbol) } attr_accessor :type - sig { params(item_reference: String, type: Symbol).returns(T.attached_class) } + sig do + params(item_reference: String, type: Symbol).returns( + T.attached_class + ) + end def self.new( # A reference to a variable in the "item" namespace. Ie, "item.name" item_reference:, # The type of input messages. Always `item_reference`. type: :item_reference - ); end - sig { override.returns({item_reference: String, type: Symbol}) } - def to_hash; end + ) + end + + sig do + override.returns({ item_reference: String, type: Symbol }) + end + def to_hash + end end sig do - override - .returns( - [OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template, OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::ItemReference] - ) + override.returns( + T::Array[ + OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Variants + ] + ) + end + def self.variants end - def self.variants; end end class SamplingParams < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The maximum number of tokens in the generated output. sig { returns(T.nilable(Integer)) } attr_reader :max_completion_tokens @@ -866,8 +1047,12 @@ module OpenAI attr_writer :top_p sig do - params(max_completion_tokens: Integer, seed: Integer, temperature: Float, top_p: Float) - .returns(T.attached_class) + params( + max_completion_tokens: Integer, + seed: Integer, + temperature: Float, + top_p: Float + ).returns(T.attached_class) end def self.new( # The maximum number of tokens in the generated output. @@ -878,7 +1063,9 @@ module OpenAI temperature: nil, # An alternative to temperature for nucleus sampling; 1.0 includes all tokens. top_p: nil - ); end + ) + end + sig do override.returns( { @@ -889,20 +1076,26 @@ module OpenAI } ) end - def to_hash; end + def to_hash + end end end sig do - override - .returns( - [OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource, OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions] - ) + override.returns( + T::Array[ + OpenAI::Models::Evals::RunCancelResponse::DataSource::Variants + ] + ) + end + def self.variants end - def self.variants; end end class PerModelUsage < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The number of tokens retrieved from cache. sig { returns(Integer) } attr_accessor :cached_tokens @@ -935,8 +1128,7 @@ module OpenAI model_name: String, prompt_tokens: Integer, total_tokens: Integer - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # The number of tokens retrieved from cache. @@ -951,24 +1143,29 @@ module OpenAI prompt_tokens:, # The total number of tokens used. total_tokens: - ); end + ) + end + sig do - override - .returns( - { - cached_tokens: Integer, - completion_tokens: Integer, - invocation_count: Integer, - model_name: String, - prompt_tokens: Integer, - total_tokens: Integer - } - ) + override.returns( + { + cached_tokens: Integer, + completion_tokens: Integer, + invocation_count: Integer, + model_name: String, + prompt_tokens: Integer, + total_tokens: Integer + } + ) + end + def to_hash end - def to_hash; end end class PerTestingCriteriaResult < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Number of tests failed for this criteria. sig { returns(Integer) } attr_accessor :failed @@ -981,7 +1178,13 @@ module OpenAI sig { returns(String) } attr_accessor :testing_criteria - sig { params(failed: Integer, passed: Integer, testing_criteria: String).returns(T.attached_class) } + sig do + params( + failed: Integer, + passed: Integer, + testing_criteria: String + ).returns(T.attached_class) + end def self.new( # Number of tests failed for this criteria. failed:, @@ -989,12 +1192,22 @@ module OpenAI passed:, # A description of the testing criteria. testing_criteria: - ); end - sig { override.returns({failed: Integer, passed: Integer, testing_criteria: String}) } - def to_hash; end + ) + end + + sig do + override.returns( + { failed: Integer, passed: Integer, testing_criteria: String } + ) + end + def to_hash + end end class ResultCounts < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Number of output items that resulted in an error. sig { returns(Integer) } attr_accessor :errored @@ -1029,9 +1242,21 @@ module OpenAI passed:, # Total number of executed output items. total: - ); end - sig { override.returns({errored: Integer, failed: Integer, passed: Integer, total: Integer}) } - def to_hash; end + ) + end + + sig do + override.returns( + { + errored: Integer, + failed: Integer, + passed: Integer, + total: Integer + } + ) + end + def to_hash + end end end end diff --git a/rbi/openai/models/evals/run_create_params.rbi b/rbi/openai/models/evals/run_create_params.rbi index 4a286695..b1f07b5d 100644 --- a/rbi/openai/models/evals/run_create_params.rbi +++ b/rbi/openai/models/evals/run_create_params.rbi @@ -7,13 +7,15 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Details about the run's data source. sig do returns( T.any( - OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource, - OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource + OpenAI::Evals::CreateEvalJSONLRunDataSource, + OpenAI::Evals::CreateEvalCompletionsRunDataSource, + OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource ) ) end @@ -37,17 +39,16 @@ module OpenAI sig do params( - data_source: T.any( - OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, - OpenAI::Internal::AnyHash, - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource, - OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource - ), + data_source: + T.any( + OpenAI::Evals::CreateEvalJSONLRunDataSource::OrHash, + OpenAI::Evals::CreateEvalCompletionsRunDataSource::OrHash, + OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::OrHash + ), metadata: T.nilable(T::Hash[Symbol, String]), name: String, - request_options: T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash) - ) - .returns(T.attached_class) + request_options: OpenAI::RequestOptions::OrHash + ).returns(T.attached_class) end def self.new( # Details about the run's data source. @@ -62,36 +63,51 @@ module OpenAI # The name of the run. name: nil, request_options: {} - ); end + ) + end + sig do - override - .returns( - { - data_source: T.any( - OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource, - OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource + override.returns( + { + data_source: + T.any( + OpenAI::Evals::CreateEvalJSONLRunDataSource, + OpenAI::Evals::CreateEvalCompletionsRunDataSource, + OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource ), - metadata: T.nilable(T::Hash[Symbol, String]), - name: String, - request_options: OpenAI::RequestOptions - } - ) + metadata: T.nilable(T::Hash[Symbol, String]), + name: String, + request_options: OpenAI::RequestOptions + } + ) + end + def to_hash end - def to_hash; end # Details about the run's data source. module DataSource extend OpenAI::Internal::Type::Union + Variants = + T.type_alias do + T.any( + OpenAI::Evals::CreateEvalJSONLRunDataSource, + OpenAI::Evals::CreateEvalCompletionsRunDataSource, + OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource + ) + end + class CreateEvalResponsesRunDataSource < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # A EvalResponsesSource object describing a run data source configuration. sig do returns( T.any( - OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::FileContent, - OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::FileID, - OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::Responses + OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::FileContent, + OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::FileID, + OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::Responses ) ) end @@ -100,7 +116,7 @@ module OpenAI # The type of run data source. Always `completions`. sig do returns( - OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Type::OrSymbol + OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Type::OrSymbol ) end attr_accessor :type @@ -109,8 +125,8 @@ module OpenAI returns( T.nilable( T.any( - OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template, - OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::ItemReference + OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template, + OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::ItemReference ) ) ) @@ -119,13 +135,12 @@ module OpenAI sig do params( - input_messages: T.any( - OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template, - OpenAI::Internal::AnyHash, - OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::ItemReference - ) - ) - .void + input_messages: + T.any( + OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::OrHash, + OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::ItemReference::OrHash + ) + ).void end attr_writer :input_messages @@ -139,7 +154,7 @@ module OpenAI sig do returns( T.nilable( - OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::SamplingParams + OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::SamplingParams ) ) end @@ -147,37 +162,32 @@ module OpenAI sig do params( - sampling_params: T.any( - OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::SamplingParams, - OpenAI::Internal::AnyHash - ) - ) - .void + sampling_params: + OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::SamplingParams::OrHash + ).void end attr_writer :sampling_params # A ResponsesRunDataSource object describing a model sampling configuration. sig do params( - source: T.any( - OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::FileContent, - OpenAI::Internal::AnyHash, - OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::FileID, - OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::Responses - ), - type: OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Type::OrSymbol, - input_messages: T.any( - OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template, - OpenAI::Internal::AnyHash, - OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::ItemReference - ), + source: + T.any( + OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::FileContent::OrHash, + OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::FileID::OrHash, + OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::Responses::OrHash + ), + type: + OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Type::OrSymbol, + input_messages: + T.any( + OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::OrHash, + OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::ItemReference::OrHash + ), model: String, - sampling_params: T.any( - OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::SamplingParams, - OpenAI::Internal::AnyHash - ) - ) - .returns(T.attached_class) + sampling_params: + OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::SamplingParams::OrHash + ).returns(T.attached_class) end def self.new( # A EvalResponsesSource object describing a run data source configuration. @@ -188,38 +198,56 @@ module OpenAI # The name of the model to use for generating completions (e.g. "o3-mini"). model: nil, sampling_params: nil - ); end + ) + end + sig do - override - .returns( - { - source: T.any( - OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::FileContent, - OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::FileID, - OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::Responses + override.returns( + { + source: + T.any( + OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::FileContent, + OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::FileID, + OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::Responses ), - type: OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Type::OrSymbol, - input_messages: T.any( - OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template, - OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::ItemReference + type: + OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Type::OrSymbol, + input_messages: + T.any( + OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template, + OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::ItemReference ), - model: String, - sampling_params: OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::SamplingParams - } - ) + model: String, + sampling_params: + OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::SamplingParams + } + ) + end + def to_hash end - def to_hash; end # A EvalResponsesSource object describing a run data source configuration. module Source extend OpenAI::Internal::Type::Union + Variants = + T.type_alias do + T.any( + OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::FileContent, + OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::FileID, + OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::Responses + ) + end + class FileContent < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The content of the jsonl file. sig do returns( T::Array[ - OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::FileContent::Content + OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::FileContent::Content ] ) end @@ -231,36 +259,41 @@ module OpenAI sig do params( - content: T::Array[ - T.any( - OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::FileContent::Content, - OpenAI::Internal::AnyHash - ) - ], + content: + T::Array[ + OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::FileContent::Content::OrHash + ], type: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # The content of the jsonl file. content:, # The type of jsonl source. Always `file_content`. type: :file_content - ); end + ) + end + sig do - override - .returns( - { - content: T::Array[ - OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::FileContent::Content + override.returns( + { + content: + T::Array[ + OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::FileContent::Content ], - type: Symbol - } - ) + type: Symbol + } + ) + end + def to_hash end - def to_hash; end class Content < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any(T.self_type, OpenAI::Internal::AnyHash) + end + sig { returns(T::Hash[Symbol, T.anything]) } attr_accessor :item @@ -273,20 +306,29 @@ module OpenAI sig do params( item: T::Hash[Symbol, T.anything], - sample: T::Hash[Symbol, - T.anything] + sample: T::Hash[Symbol, T.anything] ).returns(T.attached_class) end - def self.new(item:, sample: nil); end + def self.new(item:, sample: nil) + end sig do - override.returns({item: T::Hash[Symbol, T.anything], sample: T::Hash[Symbol, T.anything]}) + override.returns( + { + item: T::Hash[Symbol, T.anything], + sample: T::Hash[Symbol, T.anything] + } + ) + end + def to_hash end - def to_hash; end end end class FileID < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The identifier of the file. sig { returns(String) } attr_accessor :id @@ -295,18 +337,26 @@ module OpenAI sig { returns(Symbol) } attr_accessor :type - sig { params(id: String, type: Symbol).returns(T.attached_class) } + sig do + params(id: String, type: Symbol).returns(T.attached_class) + end def self.new( # The identifier of the file. id:, # The type of jsonl source. Always `file_id`. type: :file_id - ); end - sig { override.returns({id: String, type: Symbol}) } - def to_hash; end + ) + end + + sig { override.returns({ id: String, type: Symbol }) } + def to_hash + end end class Responses < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The type of run data source. Always `responses`. sig { returns(Symbol) } attr_accessor :type @@ -348,7 +398,7 @@ module OpenAI # Optional reasoning effort parameter. This is a query parameter used to select # responses. - sig { returns(T.nilable(OpenAI::Models::ReasoningEffort::OrSymbol)) } + sig { returns(T.nilable(OpenAI::ReasoningEffort::OrSymbol)) } attr_accessor :reasoning_effort # Sampling temperature. This is a query parameter used to select responses. @@ -373,13 +423,13 @@ module OpenAI instructions_search: T.nilable(String), metadata: T.nilable(T.anything), model: T.nilable(String), - reasoning_effort: T.nilable(OpenAI::Models::ReasoningEffort::OrSymbol), + reasoning_effort: + T.nilable(OpenAI::ReasoningEffort::OrSymbol), temperature: T.nilable(Float), top_p: T.nilable(Float), users: T.nilable(T::Array[String]), type: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # Whether to allow parallel tool calls. This is a query parameter used to select @@ -414,36 +464,41 @@ module OpenAI users: nil, # The type of run data source. Always `responses`. type: :responses - ); end + ) + end + sig do - override - .returns( - { - type: Symbol, - allow_parallel_tool_calls: T.nilable(T::Boolean), - created_after: T.nilable(Integer), - created_before: T.nilable(Integer), - has_tool_calls: T.nilable(T::Boolean), - instructions_search: T.nilable(String), - metadata: T.nilable(T.anything), - model: T.nilable(String), - reasoning_effort: T.nilable(OpenAI::Models::ReasoningEffort::OrSymbol), - temperature: T.nilable(Float), - top_p: T.nilable(Float), - users: T.nilable(T::Array[String]) - } - ) + override.returns( + { + type: Symbol, + allow_parallel_tool_calls: T.nilable(T::Boolean), + created_after: T.nilable(Integer), + created_before: T.nilable(Integer), + has_tool_calls: T.nilable(T::Boolean), + instructions_search: T.nilable(String), + metadata: T.nilable(T.anything), + model: T.nilable(String), + reasoning_effort: + T.nilable(OpenAI::ReasoningEffort::OrSymbol), + temperature: T.nilable(Float), + top_p: T.nilable(Float), + users: T.nilable(T::Array[String]) + } + ) + end + def to_hash end - def to_hash; end end sig do - override - .returns( - [OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::FileContent, OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::FileID, OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::Responses] - ) + override.returns( + T::Array[ + OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::Variants + ] + ) + end + def self.variants end - def self.variants; end end # The type of run data source. Always `completions`. @@ -451,36 +506,54 @@ module OpenAI extend OpenAI::Internal::Type::Enum TaggedSymbol = - T.type_alias { T.all(Symbol, OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Type) } + T.type_alias do + T.all( + Symbol, + OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Type + ) + end OrSymbol = T.type_alias { T.any(Symbol, String) } COMPLETIONS = T.let( :completions, - OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Type::TaggedSymbol + OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Type::TaggedSymbol ) sig do - override - .returns( - T::Array[OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Type::TaggedSymbol] - ) + override.returns( + T::Array[ + OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Type::TaggedSymbol + ] + ) + end + def self.values end - def self.values; end end module InputMessages extend OpenAI::Internal::Type::Union + Variants = + T.type_alias do + T.any( + OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template, + OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::ItemReference + ) + end + class Template < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # A list of chat messages forming the prompt or context. May include variable # references to the "item" namespace, ie {{item.name}}. sig do returns( T::Array[ T.any( - OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::ChatMessage, - OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem + OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::ChatMessage, + OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem ) ] ) @@ -493,16 +566,15 @@ module OpenAI sig do params( - template: T::Array[ - T.any( - OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::ChatMessage, - OpenAI::Internal::AnyHash, - OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem - ) - ], + template: + T::Array[ + T.any( + OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::ChatMessage::OrHash, + OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::OrHash + ) + ], type: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # A list of chat messages forming the prompt or context. May include variable @@ -510,22 +582,25 @@ module OpenAI template:, # The type of input messages. Always `template`. type: :template - ); end + ) + end + sig do - override - .returns( - { - template: T::Array[ + override.returns( + { + template: + T::Array[ T.any( - OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::ChatMessage, - OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem + OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::ChatMessage, + OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem ) ], - type: Symbol - } - ) + type: Symbol + } + ) + end + def to_hash end - def to_hash; end # A message input to the model with a role indicating instruction following # hierarchy. Instructions given with the `developer` or `system` role take @@ -535,7 +610,20 @@ module OpenAI module Template extend OpenAI::Internal::Type::Union + Variants = + T.type_alias do + T.any( + OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::ChatMessage, + OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem + ) + end + class ChatMessage < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any(T.self_type, OpenAI::Internal::AnyHash) + end + # The content of the message. sig { returns(String) } attr_accessor :content @@ -544,25 +632,37 @@ module OpenAI sig { returns(String) } attr_accessor :role - sig { params(content: String, role: String).returns(T.attached_class) } + sig do + params(content: String, role: String).returns( + T.attached_class + ) + end def self.new( # The content of the message. content:, # The role of the message (e.g. "system", "assistant", "user"). role: - ); end - sig { override.returns({content: String, role: String}) } - def to_hash; end + ) + end + + sig { override.returns({ content: String, role: String }) } + def to_hash + end end class EvalItem < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any(T.self_type, OpenAI::Internal::AnyHash) + end + # Text inputs to the model - can contain template strings. sig do returns( T.any( String, - OpenAI::Models::Responses::ResponseInputText, - OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::Content::OutputText + OpenAI::Responses::ResponseInputText, + OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::Content::OutputText ) ) end @@ -572,7 +672,7 @@ module OpenAI # `developer`. sig do returns( - OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::Role::OrSymbol + OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::Role::OrSymbol ) end attr_accessor :role @@ -581,7 +681,7 @@ module OpenAI sig do returns( T.nilable( - OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::Type::OrSymbol + OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::Type::OrSymbol ) ) end @@ -589,9 +689,9 @@ module OpenAI sig do params( - type: OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::Type::OrSymbol - ) - .void + type: + OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::Type::OrSymbol + ).void end attr_writer :type @@ -602,16 +702,17 @@ module OpenAI # interactions. sig do params( - content: T.any( - String, - OpenAI::Models::Responses::ResponseInputText, - OpenAI::Internal::AnyHash, - OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::Content::OutputText - ), - role: OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::Role::OrSymbol, - type: OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::Type::OrSymbol - ) - .returns(T.attached_class) + content: + T.any( + String, + OpenAI::Responses::ResponseInputText::OrHash, + OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::Content::OutputText::OrHash + ), + role: + OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::Role::OrSymbol, + type: + OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::Type::OrSymbol + ).returns(T.attached_class) end def self.new( # Text inputs to the model - can contain template strings. @@ -621,28 +722,47 @@ module OpenAI role:, # The type of the message input. Always `message`. type: nil - ); end + ) + end + sig do - override - .returns( - { - content: T.any( + override.returns( + { + content: + T.any( String, - OpenAI::Models::Responses::ResponseInputText, - OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::Content::OutputText + OpenAI::Responses::ResponseInputText, + OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::Content::OutputText ), - role: OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::Role::OrSymbol, - type: OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::Type::OrSymbol - } - ) + role: + OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::Role::OrSymbol, + type: + OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::Type::OrSymbol + } + ) + end + def to_hash end - def to_hash; end # Text inputs to the model - can contain template strings. module Content extend OpenAI::Internal::Type::Union + Variants = + T.type_alias do + T.any( + String, + OpenAI::Responses::ResponseInputText, + OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::Content::OutputText + ) + end + class OutputText < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any(T.self_type, OpenAI::Internal::AnyHash) + end + # The text output from the model. sig { returns(String) } attr_accessor :text @@ -652,24 +772,33 @@ module OpenAI attr_accessor :type # A text output from the model. - sig { params(text: String, type: Symbol).returns(T.attached_class) } + sig do + params(text: String, type: Symbol).returns( + T.attached_class + ) + end def self.new( # The text output from the model. text:, # The type of the output text. Always `output_text`. type: :output_text - ); end - sig { override.returns({text: String, type: Symbol}) } - def to_hash; end + ) + end + + sig { override.returns({ text: String, type: Symbol }) } + def to_hash + end end sig do - override - .returns( - [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::Content::OutputText] - ) + override.returns( + T::Array[ + OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::Content::Variants + ] + ) + end + def self.variants end - def self.variants; end end # The role of the message input. One of `user`, `assistant`, `system`, or @@ -679,40 +808,43 @@ module OpenAI TaggedSymbol = T.type_alias do - T.all(Symbol, OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::Role) + T.all( + Symbol, + OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::Role + ) end OrSymbol = T.type_alias { T.any(Symbol, String) } USER = T.let( :user, - OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::Role::TaggedSymbol + OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::Role::TaggedSymbol ) ASSISTANT = T.let( :assistant, - OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::Role::TaggedSymbol + OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::Role::TaggedSymbol ) SYSTEM = T.let( :system, - OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::Role::TaggedSymbol + OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::Role::TaggedSymbol ) DEVELOPER = T.let( :developer, - OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::Role::TaggedSymbol + OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::Role::TaggedSymbol ) sig do - override - .returns( - T::Array[ - OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::Role::TaggedSymbol - ] - ) + override.returns( + T::Array[ + OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::Role::TaggedSymbol + ] + ) + end + def self.values end - def self.values; end end # The type of the message input. Always `message`. @@ -721,39 +853,47 @@ module OpenAI TaggedSymbol = T.type_alias do - T.all(Symbol, OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::Type) + T.all( + Symbol, + OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::Type + ) end OrSymbol = T.type_alias { T.any(Symbol, String) } MESSAGE = T.let( :message, - OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::Type::TaggedSymbol + OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::Type::TaggedSymbol ) sig do - override - .returns( - T::Array[ - OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::Type::TaggedSymbol - ] - ) + override.returns( + T::Array[ + OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::Type::TaggedSymbol + ] + ) + end + def self.values end - def self.values; end end end sig do - override - .returns( - [OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::ChatMessage, OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem] - ) + override.returns( + T::Array[ + OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::Variants + ] + ) + end + def self.variants end - def self.variants; end end end class ItemReference < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # A reference to a variable in the "item" namespace. Ie, "item.name" sig { returns(String) } attr_accessor :item_reference @@ -762,27 +902,41 @@ module OpenAI sig { returns(Symbol) } attr_accessor :type - sig { params(item_reference: String, type: Symbol).returns(T.attached_class) } + sig do + params(item_reference: String, type: Symbol).returns( + T.attached_class + ) + end def self.new( # A reference to a variable in the "item" namespace. Ie, "item.name" item_reference:, # The type of input messages. Always `item_reference`. type: :item_reference - ); end - sig { override.returns({item_reference: String, type: Symbol}) } - def to_hash; end + ) + end + + sig do + override.returns({ item_reference: String, type: Symbol }) + end + def to_hash + end end sig do - override - .returns( - [OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template, OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::ItemReference] - ) + override.returns( + T::Array[ + OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Variants + ] + ) + end + def self.variants end - def self.variants; end end class SamplingParams < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The maximum number of tokens in the generated output. sig { returns(T.nilable(Integer)) } attr_reader :max_completion_tokens @@ -812,8 +966,12 @@ module OpenAI attr_writer :top_p sig do - params(max_completion_tokens: Integer, seed: Integer, temperature: Float, top_p: Float) - .returns(T.attached_class) + params( + max_completion_tokens: Integer, + seed: Integer, + temperature: Float, + top_p: Float + ).returns(T.attached_class) end def self.new( # The maximum number of tokens in the generated output. @@ -824,7 +982,9 @@ module OpenAI temperature: nil, # An alternative to temperature for nucleus sampling; 1.0 includes all tokens. top_p: nil - ); end + ) + end + sig do override.returns( { @@ -835,17 +995,18 @@ module OpenAI } ) end - def to_hash; end + def to_hash + end end end sig do - override - .returns( - [OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource, OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource] - ) + override.returns( + T::Array[OpenAI::Evals::RunCreateParams::DataSource::Variants] + ) + end + def self.variants end - def self.variants; end end end end diff --git a/rbi/openai/models/evals/run_create_response.rbi b/rbi/openai/models/evals/run_create_response.rbi index cebc26ac..6c3c64f6 100644 --- a/rbi/openai/models/evals/run_create_response.rbi +++ b/rbi/openai/models/evals/run_create_response.rbi @@ -4,6 +4,8 @@ module OpenAI module Models module Evals class RunCreateResponse < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Unique identifier for the evaluation run. sig { returns(String) } attr_accessor :id @@ -16,8 +18,8 @@ module OpenAI sig do returns( T.any( - OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource, + OpenAI::Evals::CreateEvalJSONLRunDataSource, + OpenAI::Evals::CreateEvalCompletionsRunDataSource, OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions ) ) @@ -25,10 +27,10 @@ module OpenAI attr_accessor :data_source # An object representing an error response from the Eval API. - sig { returns(OpenAI::Models::Evals::EvalAPIError) } + sig { returns(OpenAI::Evals::EvalAPIError) } attr_reader :error - sig { params(error: T.any(OpenAI::Models::Evals::EvalAPIError, OpenAI::Internal::AnyHash)).void } + sig { params(error: OpenAI::Evals::EvalAPIError::OrHash).void } attr_writer :error # The identifier of the associated evaluation. @@ -57,11 +59,21 @@ module OpenAI attr_accessor :object # Usage statistics for each model during the evaluation run. - sig { returns(T::Array[OpenAI::Models::Evals::RunCreateResponse::PerModelUsage]) } + sig do + returns( + T::Array[OpenAI::Models::Evals::RunCreateResponse::PerModelUsage] + ) + end attr_accessor :per_model_usage # Results per testing criteria applied during the evaluation run. - sig { returns(T::Array[OpenAI::Models::Evals::RunCreateResponse::PerTestingCriteriaResult]) } + sig do + returns( + T::Array[ + OpenAI::Models::Evals::RunCreateResponse::PerTestingCriteriaResult + ] + ) + end attr_accessor :per_testing_criteria_results # The URL to the rendered evaluation run report on the UI dashboard. @@ -74,9 +86,9 @@ module OpenAI sig do params( - result_counts: T.any(OpenAI::Models::Evals::RunCreateResponse::ResultCounts, OpenAI::Internal::AnyHash) - ) - .void + result_counts: + OpenAI::Models::Evals::RunCreateResponse::ResultCounts::OrHash + ).void end attr_writer :result_counts @@ -89,25 +101,31 @@ module OpenAI params( id: String, created_at: Integer, - data_source: T.any( - OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, - OpenAI::Internal::AnyHash, - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource, - OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions - ), - error: T.any(OpenAI::Models::Evals::EvalAPIError, OpenAI::Internal::AnyHash), + data_source: + T.any( + OpenAI::Evals::CreateEvalJSONLRunDataSource::OrHash, + OpenAI::Evals::CreateEvalCompletionsRunDataSource::OrHash, + OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::OrHash + ), + error: OpenAI::Evals::EvalAPIError::OrHash, eval_id: String, metadata: T.nilable(T::Hash[Symbol, String]), model: String, name: String, - per_model_usage: T::Array[T.any(OpenAI::Models::Evals::RunCreateResponse::PerModelUsage, OpenAI::Internal::AnyHash)], - per_testing_criteria_results: T::Array[T.any(OpenAI::Models::Evals::RunCreateResponse::PerTestingCriteriaResult, OpenAI::Internal::AnyHash)], + per_model_usage: + T::Array[ + OpenAI::Models::Evals::RunCreateResponse::PerModelUsage::OrHash + ], + per_testing_criteria_results: + T::Array[ + OpenAI::Models::Evals::RunCreateResponse::PerTestingCriteriaResult::OrHash + ], report_url: String, - result_counts: T.any(OpenAI::Models::Evals::RunCreateResponse::ResultCounts, OpenAI::Internal::AnyHash), + result_counts: + OpenAI::Models::Evals::RunCreateResponse::ResultCounts::OrHash, status: String, object: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # Unique identifier for the evaluation run. @@ -143,39 +161,61 @@ module OpenAI status:, # The type of the object. Always "eval.run". object: :"eval.run" - ); end + ) + end + sig do - override - .returns( - { - id: String, - created_at: Integer, - data_source: T.any( - OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource, + override.returns( + { + id: String, + created_at: Integer, + data_source: + T.any( + OpenAI::Evals::CreateEvalJSONLRunDataSource, + OpenAI::Evals::CreateEvalCompletionsRunDataSource, OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions ), - error: OpenAI::Models::Evals::EvalAPIError, - eval_id: String, - metadata: T.nilable(T::Hash[Symbol, String]), - model: String, - name: String, - object: Symbol, - per_model_usage: T::Array[OpenAI::Models::Evals::RunCreateResponse::PerModelUsage], - per_testing_criteria_results: T::Array[OpenAI::Models::Evals::RunCreateResponse::PerTestingCriteriaResult], - report_url: String, - result_counts: OpenAI::Models::Evals::RunCreateResponse::ResultCounts, - status: String - } - ) + error: OpenAI::Evals::EvalAPIError, + eval_id: String, + metadata: T.nilable(T::Hash[Symbol, String]), + model: String, + name: String, + object: Symbol, + per_model_usage: + T::Array[ + OpenAI::Models::Evals::RunCreateResponse::PerModelUsage + ], + per_testing_criteria_results: + T::Array[ + OpenAI::Models::Evals::RunCreateResponse::PerTestingCriteriaResult + ], + report_url: String, + result_counts: + OpenAI::Models::Evals::RunCreateResponse::ResultCounts, + status: String + } + ) + end + def to_hash end - def to_hash; end # Information about the run's data source. module DataSource extend OpenAI::Internal::Type::Union + Variants = + T.type_alias do + T.any( + OpenAI::Evals::CreateEvalJSONLRunDataSource, + OpenAI::Evals::CreateEvalCompletionsRunDataSource, + OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions + ) + end + class Completions < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # A EvalResponsesSource object describing a run data source configuration. sig do returns( @@ -206,13 +246,12 @@ module OpenAI sig do params( - input_messages: T.any( - OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template, - OpenAI::Internal::AnyHash, - OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::ItemReference - ) - ) - .void + input_messages: + T.any( + OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::OrHash, + OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::ItemReference::OrHash + ) + ).void end attr_writer :input_messages @@ -223,42 +262,42 @@ module OpenAI sig { params(model: String).void } attr_writer :model - sig { returns(T.nilable(OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::SamplingParams)) } + sig do + returns( + T.nilable( + OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::SamplingParams + ) + ) + end attr_reader :sampling_params sig do params( - sampling_params: T.any( - OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::SamplingParams, - OpenAI::Internal::AnyHash - ) - ) - .void + sampling_params: + OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::SamplingParams::OrHash + ).void end attr_writer :sampling_params # A ResponsesRunDataSource object describing a model sampling configuration. sig do params( - source: T.any( - OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::Source::FileContent, - OpenAI::Internal::AnyHash, - OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::Source::FileID, - OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::Source::Responses - ), - input_messages: T.any( - OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template, - OpenAI::Internal::AnyHash, - OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::ItemReference - ), + source: + T.any( + OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::Source::FileContent::OrHash, + OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::Source::FileID::OrHash, + OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::Source::Responses::OrHash + ), + input_messages: + T.any( + OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::OrHash, + OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::ItemReference::OrHash + ), model: String, - sampling_params: T.any( - OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::SamplingParams, - OpenAI::Internal::AnyHash - ), + sampling_params: + OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::SamplingParams::OrHash, type: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # A EvalResponsesSource object describing a run data source configuration. @@ -269,37 +308,56 @@ module OpenAI sampling_params: nil, # The type of run data source. Always `completions`. type: :completions - ); end + ) + end + sig do - override - .returns( - { - source: T.any( + override.returns( + { + source: + T.any( OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::Source::FileContent, OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::Source::FileID, OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::Source::Responses ), - type: Symbol, - input_messages: T.any( + type: Symbol, + input_messages: + T.any( OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template, OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::ItemReference ), - model: String, - sampling_params: OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::SamplingParams - } - ) + model: String, + sampling_params: + OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::SamplingParams + } + ) + end + def to_hash end - def to_hash; end # A EvalResponsesSource object describing a run data source configuration. module Source extend OpenAI::Internal::Type::Union + Variants = + T.type_alias do + T.any( + OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::Source::FileContent, + OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::Source::FileID, + OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::Source::Responses + ) + end + class FileContent < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The content of the jsonl file. sig do returns( - T::Array[OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::Source::FileContent::Content] + T::Array[ + OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::Source::FileContent::Content + ] ) end attr_accessor :content @@ -310,34 +368,41 @@ module OpenAI sig do params( - content: T::Array[ - T.any( - OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::Source::FileContent::Content, - OpenAI::Internal::AnyHash - ) - ], + content: + T::Array[ + OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::Source::FileContent::Content::OrHash + ], type: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # The content of the jsonl file. content:, # The type of jsonl source. Always `file_content`. type: :file_content - ); end + ) + end + sig do - override - .returns( - { - content: T::Array[OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::Source::FileContent::Content], - type: Symbol - } - ) + override.returns( + { + content: + T::Array[ + OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::Source::FileContent::Content + ], + type: Symbol + } + ) + end + def to_hash end - def to_hash; end class Content < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any(T.self_type, OpenAI::Internal::AnyHash) + end + sig { returns(T::Hash[Symbol, T.anything]) } attr_accessor :item @@ -350,20 +415,29 @@ module OpenAI sig do params( item: T::Hash[Symbol, T.anything], - sample: T::Hash[Symbol, - T.anything] + sample: T::Hash[Symbol, T.anything] ).returns(T.attached_class) end - def self.new(item:, sample: nil); end + def self.new(item:, sample: nil) + end sig do - override.returns({item: T::Hash[Symbol, T.anything], sample: T::Hash[Symbol, T.anything]}) + override.returns( + { + item: T::Hash[Symbol, T.anything], + sample: T::Hash[Symbol, T.anything] + } + ) + end + def to_hash end - def to_hash; end end end class FileID < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The identifier of the file. sig { returns(String) } attr_accessor :id @@ -372,18 +446,26 @@ module OpenAI sig { returns(Symbol) } attr_accessor :type - sig { params(id: String, type: Symbol).returns(T.attached_class) } + sig do + params(id: String, type: Symbol).returns(T.attached_class) + end def self.new( # The identifier of the file. id:, # The type of jsonl source. Always `file_id`. type: :file_id - ); end - sig { override.returns({id: String, type: Symbol}) } - def to_hash; end + ) + end + + sig { override.returns({ id: String, type: Symbol }) } + def to_hash + end end class Responses < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The type of run data source. Always `responses`. sig { returns(Symbol) } attr_accessor :type @@ -425,7 +507,9 @@ module OpenAI # Optional reasoning effort parameter. This is a query parameter used to select # responses. - sig { returns(T.nilable(OpenAI::Models::ReasoningEffort::TaggedSymbol)) } + sig do + returns(T.nilable(OpenAI::ReasoningEffort::TaggedSymbol)) + end attr_accessor :reasoning_effort # Sampling temperature. This is a query parameter used to select responses. @@ -450,13 +534,13 @@ module OpenAI instructions_search: T.nilable(String), metadata: T.nilable(T.anything), model: T.nilable(String), - reasoning_effort: T.nilable(OpenAI::Models::ReasoningEffort::OrSymbol), + reasoning_effort: + T.nilable(OpenAI::ReasoningEffort::OrSymbol), temperature: T.nilable(Float), top_p: T.nilable(Float), users: T.nilable(T::Array[String]), type: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # Whether to allow parallel tool calls. This is a query parameter used to select @@ -491,42 +575,58 @@ module OpenAI users: nil, # The type of run data source. Always `responses`. type: :responses - ); end + ) + end + sig do - override - .returns( - { - type: Symbol, - allow_parallel_tool_calls: T.nilable(T::Boolean), - created_after: T.nilable(Integer), - created_before: T.nilable(Integer), - has_tool_calls: T.nilable(T::Boolean), - instructions_search: T.nilable(String), - metadata: T.nilable(T.anything), - model: T.nilable(String), - reasoning_effort: T.nilable(OpenAI::Models::ReasoningEffort::TaggedSymbol), - temperature: T.nilable(Float), - top_p: T.nilable(Float), - users: T.nilable(T::Array[String]) - } - ) + override.returns( + { + type: Symbol, + allow_parallel_tool_calls: T.nilable(T::Boolean), + created_after: T.nilable(Integer), + created_before: T.nilable(Integer), + has_tool_calls: T.nilable(T::Boolean), + instructions_search: T.nilable(String), + metadata: T.nilable(T.anything), + model: T.nilable(String), + reasoning_effort: + T.nilable(OpenAI::ReasoningEffort::TaggedSymbol), + temperature: T.nilable(Float), + top_p: T.nilable(Float), + users: T.nilable(T::Array[String]) + } + ) + end + def to_hash end - def to_hash; end end sig do - override - .returns( - [OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::Source::FileContent, OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::Source::FileID, OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::Source::Responses] - ) + override.returns( + T::Array[ + OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::Source::Variants + ] + ) + end + def self.variants end - def self.variants; end end module InputMessages extend OpenAI::Internal::Type::Union + Variants = + T.type_alias do + T.any( + OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template, + OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::ItemReference + ) + end + class Template < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # A list of chat messages forming the prompt or context. May include variable # references to the "item" namespace, ie {{item.name}}. sig do @@ -547,16 +647,15 @@ module OpenAI sig do params( - template: T::Array[ - T.any( - OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::ChatMessage, - OpenAI::Internal::AnyHash, - OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem - ) - ], + template: + T::Array[ + T.any( + OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::ChatMessage::OrHash, + OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::OrHash + ) + ], type: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # A list of chat messages forming the prompt or context. May include variable @@ -564,22 +663,25 @@ module OpenAI template:, # The type of input messages. Always `template`. type: :template - ); end + ) + end + sig do - override - .returns( - { - template: T::Array[ + override.returns( + { + template: + T::Array[ T.any( OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::ChatMessage, OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem ) ], - type: Symbol - } - ) + type: Symbol + } + ) + end + def to_hash end - def to_hash; end # A message input to the model with a role indicating instruction following # hierarchy. Instructions given with the `developer` or `system` role take @@ -589,7 +691,20 @@ module OpenAI module Template extend OpenAI::Internal::Type::Union + Variants = + T.type_alias do + T.any( + OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::ChatMessage, + OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem + ) + end + class ChatMessage < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any(T.self_type, OpenAI::Internal::AnyHash) + end + # The content of the message. sig { returns(String) } attr_accessor :content @@ -598,24 +713,36 @@ module OpenAI sig { returns(String) } attr_accessor :role - sig { params(content: String, role: String).returns(T.attached_class) } + sig do + params(content: String, role: String).returns( + T.attached_class + ) + end def self.new( # The content of the message. content:, # The role of the message (e.g. "system", "assistant", "user"). role: - ); end - sig { override.returns({content: String, role: String}) } - def to_hash; end + ) + end + + sig { override.returns({ content: String, role: String }) } + def to_hash + end end class EvalItem < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any(T.self_type, OpenAI::Internal::AnyHash) + end + # Text inputs to the model - can contain template strings. sig do returns( T.any( String, - OpenAI::Models::Responses::ResponseInputText, + OpenAI::Responses::ResponseInputText, OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText ) ) @@ -643,9 +770,9 @@ module OpenAI sig do params( - type: OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Type::OrSymbol - ) - .void + type: + OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Type::OrSymbol + ).void end attr_writer :type @@ -656,16 +783,17 @@ module OpenAI # interactions. sig do params( - content: T.any( - String, - OpenAI::Models::Responses::ResponseInputText, - OpenAI::Internal::AnyHash, - OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText - ), - role: OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Role::OrSymbol, - type: OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Type::OrSymbol - ) - .returns(T.attached_class) + content: + T.any( + String, + OpenAI::Responses::ResponseInputText::OrHash, + OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText::OrHash + ), + role: + OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Role::OrSymbol, + type: + OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Type::OrSymbol + ).returns(T.attached_class) end def self.new( # Text inputs to the model - can contain template strings. @@ -675,28 +803,47 @@ module OpenAI role:, # The type of the message input. Always `message`. type: nil - ); end + ) + end + sig do - override - .returns( - { - content: T.any( + override.returns( + { + content: + T.any( String, - OpenAI::Models::Responses::ResponseInputText, + OpenAI::Responses::ResponseInputText, OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText ), - role: OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Role::TaggedSymbol, - type: OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Type::TaggedSymbol - } - ) + role: + OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Role::TaggedSymbol, + type: + OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Type::TaggedSymbol + } + ) + end + def to_hash end - def to_hash; end # Text inputs to the model - can contain template strings. module Content extend OpenAI::Internal::Type::Union + Variants = + T.type_alias do + T.any( + String, + OpenAI::Responses::ResponseInputText, + OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText + ) + end + class OutputText < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any(T.self_type, OpenAI::Internal::AnyHash) + end + # The text output from the model. sig { returns(String) } attr_accessor :text @@ -706,24 +853,33 @@ module OpenAI attr_accessor :type # A text output from the model. - sig { params(text: String, type: Symbol).returns(T.attached_class) } + sig do + params(text: String, type: Symbol).returns( + T.attached_class + ) + end def self.new( # The text output from the model. text:, # The type of the output text. Always `output_text`. type: :output_text - ); end - sig { override.returns({text: String, type: Symbol}) } - def to_hash; end + ) + end + + sig { override.returns({ text: String, type: Symbol }) } + def to_hash + end end sig do - override - .returns( - [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText] - ) + override.returns( + T::Array[ + OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::Variants + ] + ) + end + def self.variants end - def self.variants; end end # The role of the message input. One of `user`, `assistant`, `system`, or @@ -733,7 +889,10 @@ module OpenAI TaggedSymbol = T.type_alias do - T.all(Symbol, OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Role) + T.all( + Symbol, + OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Role + ) end OrSymbol = T.type_alias { T.any(Symbol, String) } @@ -759,14 +918,14 @@ module OpenAI ) sig do - override - .returns( - T::Array[ - OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Role::TaggedSymbol - ] - ) + override.returns( + T::Array[ + OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Role::TaggedSymbol + ] + ) + end + def self.values end - def self.values; end end # The type of the message input. Always `message`. @@ -775,7 +934,10 @@ module OpenAI TaggedSymbol = T.type_alias do - T.all(Symbol, OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Type) + T.all( + Symbol, + OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Type + ) end OrSymbol = T.type_alias { T.any(Symbol, String) } @@ -786,28 +948,33 @@ module OpenAI ) sig do - override - .returns( - T::Array[ - OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Type::TaggedSymbol - ] - ) + override.returns( + T::Array[ + OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Type::TaggedSymbol + ] + ) + end + def self.values end - def self.values; end end end sig do - override - .returns( - [OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::ChatMessage, OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem] - ) + override.returns( + T::Array[ + OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::Variants + ] + ) + end + def self.variants end - def self.variants; end end end class ItemReference < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # A reference to a variable in the "item" namespace. Ie, "item.name" sig { returns(String) } attr_accessor :item_reference @@ -816,27 +983,41 @@ module OpenAI sig { returns(Symbol) } attr_accessor :type - sig { params(item_reference: String, type: Symbol).returns(T.attached_class) } + sig do + params(item_reference: String, type: Symbol).returns( + T.attached_class + ) + end def self.new( # A reference to a variable in the "item" namespace. Ie, "item.name" item_reference:, # The type of input messages. Always `item_reference`. type: :item_reference - ); end - sig { override.returns({item_reference: String, type: Symbol}) } - def to_hash; end + ) + end + + sig do + override.returns({ item_reference: String, type: Symbol }) + end + def to_hash + end end sig do - override - .returns( - [OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template, OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::ItemReference] - ) + override.returns( + T::Array[ + OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Variants + ] + ) + end + def self.variants end - def self.variants; end end class SamplingParams < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The maximum number of tokens in the generated output. sig { returns(T.nilable(Integer)) } attr_reader :max_completion_tokens @@ -866,8 +1047,12 @@ module OpenAI attr_writer :top_p sig do - params(max_completion_tokens: Integer, seed: Integer, temperature: Float, top_p: Float) - .returns(T.attached_class) + params( + max_completion_tokens: Integer, + seed: Integer, + temperature: Float, + top_p: Float + ).returns(T.attached_class) end def self.new( # The maximum number of tokens in the generated output. @@ -878,7 +1063,9 @@ module OpenAI temperature: nil, # An alternative to temperature for nucleus sampling; 1.0 includes all tokens. top_p: nil - ); end + ) + end + sig do override.returns( { @@ -889,20 +1076,26 @@ module OpenAI } ) end - def to_hash; end + def to_hash + end end end sig do - override - .returns( - [OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource, OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions] - ) + override.returns( + T::Array[ + OpenAI::Models::Evals::RunCreateResponse::DataSource::Variants + ] + ) + end + def self.variants end - def self.variants; end end class PerModelUsage < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The number of tokens retrieved from cache. sig { returns(Integer) } attr_accessor :cached_tokens @@ -935,8 +1128,7 @@ module OpenAI model_name: String, prompt_tokens: Integer, total_tokens: Integer - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # The number of tokens retrieved from cache. @@ -951,24 +1143,29 @@ module OpenAI prompt_tokens:, # The total number of tokens used. total_tokens: - ); end + ) + end + sig do - override - .returns( - { - cached_tokens: Integer, - completion_tokens: Integer, - invocation_count: Integer, - model_name: String, - prompt_tokens: Integer, - total_tokens: Integer - } - ) + override.returns( + { + cached_tokens: Integer, + completion_tokens: Integer, + invocation_count: Integer, + model_name: String, + prompt_tokens: Integer, + total_tokens: Integer + } + ) + end + def to_hash end - def to_hash; end end class PerTestingCriteriaResult < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Number of tests failed for this criteria. sig { returns(Integer) } attr_accessor :failed @@ -981,7 +1178,13 @@ module OpenAI sig { returns(String) } attr_accessor :testing_criteria - sig { params(failed: Integer, passed: Integer, testing_criteria: String).returns(T.attached_class) } + sig do + params( + failed: Integer, + passed: Integer, + testing_criteria: String + ).returns(T.attached_class) + end def self.new( # Number of tests failed for this criteria. failed:, @@ -989,12 +1192,22 @@ module OpenAI passed:, # A description of the testing criteria. testing_criteria: - ); end - sig { override.returns({failed: Integer, passed: Integer, testing_criteria: String}) } - def to_hash; end + ) + end + + sig do + override.returns( + { failed: Integer, passed: Integer, testing_criteria: String } + ) + end + def to_hash + end end class ResultCounts < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Number of output items that resulted in an error. sig { returns(Integer) } attr_accessor :errored @@ -1029,9 +1242,21 @@ module OpenAI passed:, # Total number of executed output items. total: - ); end - sig { override.returns({errored: Integer, failed: Integer, passed: Integer, total: Integer}) } - def to_hash; end + ) + end + + sig do + override.returns( + { + errored: Integer, + failed: Integer, + passed: Integer, + total: Integer + } + ) + end + def to_hash + end end end end diff --git a/rbi/openai/models/evals/run_delete_params.rbi b/rbi/openai/models/evals/run_delete_params.rbi index 6f4f786a..3fa9908b 100644 --- a/rbi/openai/models/evals/run_delete_params.rbi +++ b/rbi/openai/models/evals/run_delete_params.rbi @@ -7,17 +7,27 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + sig { returns(String) } attr_accessor :eval_id sig do - params(eval_id: String, request_options: T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash)) - .returns(T.attached_class) + params( + eval_id: String, + request_options: OpenAI::RequestOptions::OrHash + ).returns(T.attached_class) + end + def self.new(eval_id:, request_options: {}) end - def self.new(eval_id:, request_options: {}); end - sig { override.returns({eval_id: String, request_options: OpenAI::RequestOptions}) } - def to_hash; end + sig do + override.returns( + { eval_id: String, request_options: OpenAI::RequestOptions } + ) + end + def to_hash + end end end end diff --git a/rbi/openai/models/evals/run_delete_response.rbi b/rbi/openai/models/evals/run_delete_response.rbi index 2130f09b..b7556eda 100644 --- a/rbi/openai/models/evals/run_delete_response.rbi +++ b/rbi/openai/models/evals/run_delete_response.rbi @@ -4,6 +4,8 @@ module OpenAI module Models module Evals class RunDeleteResponse < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + sig { returns(T.nilable(T::Boolean)) } attr_reader :deleted @@ -22,11 +24,21 @@ module OpenAI sig { params(run_id: String).void } attr_writer :run_id - sig { params(deleted: T::Boolean, object: String, run_id: String).returns(T.attached_class) } - def self.new(deleted: nil, object: nil, run_id: nil); end - - sig { override.returns({deleted: T::Boolean, object: String, run_id: String}) } - def to_hash; end + sig do + params(deleted: T::Boolean, object: String, run_id: String).returns( + T.attached_class + ) + end + def self.new(deleted: nil, object: nil, run_id: nil) + end + + sig do + override.returns( + { deleted: T::Boolean, object: String, run_id: String } + ) + end + def to_hash + end end end end diff --git a/rbi/openai/models/evals/run_list_params.rbi b/rbi/openai/models/evals/run_list_params.rbi index aa4151ed..a442bc5d 100644 --- a/rbi/openai/models/evals/run_list_params.rbi +++ b/rbi/openai/models/evals/run_list_params.rbi @@ -7,6 +7,8 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Identifier for the last run from the previous pagination request. sig { returns(T.nilable(String)) } attr_reader :after @@ -23,29 +25,36 @@ module OpenAI # Sort order for runs by timestamp. Use `asc` for ascending order or `desc` for # descending order. Defaults to `asc`. - sig { returns(T.nilable(OpenAI::Models::Evals::RunListParams::Order::OrSymbol)) } + sig do + returns(T.nilable(OpenAI::Evals::RunListParams::Order::OrSymbol)) + end attr_reader :order - sig { params(order: OpenAI::Models::Evals::RunListParams::Order::OrSymbol).void } + sig do + params(order: OpenAI::Evals::RunListParams::Order::OrSymbol).void + end attr_writer :order # Filter runs by status. One of `queued` | `in_progress` | `failed` | `completed` # | `canceled`. - sig { returns(T.nilable(OpenAI::Models::Evals::RunListParams::Status::OrSymbol)) } + sig do + returns(T.nilable(OpenAI::Evals::RunListParams::Status::OrSymbol)) + end attr_reader :status - sig { params(status: OpenAI::Models::Evals::RunListParams::Status::OrSymbol).void } + sig do + params(status: OpenAI::Evals::RunListParams::Status::OrSymbol).void + end attr_writer :status sig do params( after: String, limit: Integer, - order: OpenAI::Models::Evals::RunListParams::Order::OrSymbol, - status: OpenAI::Models::Evals::RunListParams::Status::OrSymbol, - request_options: T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash) - ) - .returns(T.attached_class) + order: OpenAI::Evals::RunListParams::Order::OrSymbol, + status: OpenAI::Evals::RunListParams::Status::OrSymbol, + request_options: OpenAI::RequestOptions::OrHash + ).returns(T.attached_class) end def self.new( # Identifier for the last run from the previous pagination request. @@ -59,34 +68,42 @@ module OpenAI # | `canceled`. status: nil, request_options: {} - ); end + ) + end + sig do - override - .returns( - { - after: String, - limit: Integer, - order: OpenAI::Models::Evals::RunListParams::Order::OrSymbol, - status: OpenAI::Models::Evals::RunListParams::Status::OrSymbol, - request_options: OpenAI::RequestOptions - } - ) + override.returns( + { + after: String, + limit: Integer, + order: OpenAI::Evals::RunListParams::Order::OrSymbol, + status: OpenAI::Evals::RunListParams::Status::OrSymbol, + request_options: OpenAI::RequestOptions + } + ) + end + def to_hash end - def to_hash; end # Sort order for runs by timestamp. Use `asc` for ascending order or `desc` for # descending order. Defaults to `asc`. module Order extend OpenAI::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::Evals::RunListParams::Order) } + TaggedSymbol = + T.type_alias { T.all(Symbol, OpenAI::Evals::RunListParams::Order) } OrSymbol = T.type_alias { T.any(Symbol, String) } - ASC = T.let(:asc, OpenAI::Models::Evals::RunListParams::Order::TaggedSymbol) - DESC = T.let(:desc, OpenAI::Models::Evals::RunListParams::Order::TaggedSymbol) + ASC = T.let(:asc, OpenAI::Evals::RunListParams::Order::TaggedSymbol) + DESC = T.let(:desc, OpenAI::Evals::RunListParams::Order::TaggedSymbol) - sig { override.returns(T::Array[OpenAI::Models::Evals::RunListParams::Order::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[OpenAI::Evals::RunListParams::Order::TaggedSymbol] + ) + end + def self.values + end end # Filter runs by status. One of `queued` | `in_progress` | `failed` | `completed` @@ -94,17 +111,34 @@ module OpenAI module Status extend OpenAI::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::Evals::RunListParams::Status) } + TaggedSymbol = + T.type_alias { T.all(Symbol, OpenAI::Evals::RunListParams::Status) } OrSymbol = T.type_alias { T.any(Symbol, String) } - QUEUED = T.let(:queued, OpenAI::Models::Evals::RunListParams::Status::TaggedSymbol) - IN_PROGRESS = T.let(:in_progress, OpenAI::Models::Evals::RunListParams::Status::TaggedSymbol) - COMPLETED = T.let(:completed, OpenAI::Models::Evals::RunListParams::Status::TaggedSymbol) - CANCELED = T.let(:canceled, OpenAI::Models::Evals::RunListParams::Status::TaggedSymbol) - FAILED = T.let(:failed, OpenAI::Models::Evals::RunListParams::Status::TaggedSymbol) - - sig { override.returns(T::Array[OpenAI::Models::Evals::RunListParams::Status::TaggedSymbol]) } - def self.values; end + QUEUED = + T.let(:queued, OpenAI::Evals::RunListParams::Status::TaggedSymbol) + IN_PROGRESS = + T.let( + :in_progress, + OpenAI::Evals::RunListParams::Status::TaggedSymbol + ) + COMPLETED = + T.let( + :completed, + OpenAI::Evals::RunListParams::Status::TaggedSymbol + ) + CANCELED = + T.let(:canceled, OpenAI::Evals::RunListParams::Status::TaggedSymbol) + FAILED = + T.let(:failed, OpenAI::Evals::RunListParams::Status::TaggedSymbol) + + sig do + override.returns( + T::Array[OpenAI::Evals::RunListParams::Status::TaggedSymbol] + ) + end + def self.values + end end end end diff --git a/rbi/openai/models/evals/run_list_response.rbi b/rbi/openai/models/evals/run_list_response.rbi index e00b1471..8bce072b 100644 --- a/rbi/openai/models/evals/run_list_response.rbi +++ b/rbi/openai/models/evals/run_list_response.rbi @@ -4,6 +4,8 @@ module OpenAI module Models module Evals class RunListResponse < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Unique identifier for the evaluation run. sig { returns(String) } attr_accessor :id @@ -16,8 +18,8 @@ module OpenAI sig do returns( T.any( - OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource, + OpenAI::Evals::CreateEvalJSONLRunDataSource, + OpenAI::Evals::CreateEvalCompletionsRunDataSource, OpenAI::Models::Evals::RunListResponse::DataSource::Completions ) ) @@ -25,10 +27,10 @@ module OpenAI attr_accessor :data_source # An object representing an error response from the Eval API. - sig { returns(OpenAI::Models::Evals::EvalAPIError) } + sig { returns(OpenAI::Evals::EvalAPIError) } attr_reader :error - sig { params(error: T.any(OpenAI::Models::Evals::EvalAPIError, OpenAI::Internal::AnyHash)).void } + sig { params(error: OpenAI::Evals::EvalAPIError::OrHash).void } attr_writer :error # The identifier of the associated evaluation. @@ -57,11 +59,21 @@ module OpenAI attr_accessor :object # Usage statistics for each model during the evaluation run. - sig { returns(T::Array[OpenAI::Models::Evals::RunListResponse::PerModelUsage]) } + sig do + returns( + T::Array[OpenAI::Models::Evals::RunListResponse::PerModelUsage] + ) + end attr_accessor :per_model_usage # Results per testing criteria applied during the evaluation run. - sig { returns(T::Array[OpenAI::Models::Evals::RunListResponse::PerTestingCriteriaResult]) } + sig do + returns( + T::Array[ + OpenAI::Models::Evals::RunListResponse::PerTestingCriteriaResult + ] + ) + end attr_accessor :per_testing_criteria_results # The URL to the rendered evaluation run report on the UI dashboard. @@ -74,9 +86,9 @@ module OpenAI sig do params( - result_counts: T.any(OpenAI::Models::Evals::RunListResponse::ResultCounts, OpenAI::Internal::AnyHash) - ) - .void + result_counts: + OpenAI::Models::Evals::RunListResponse::ResultCounts::OrHash + ).void end attr_writer :result_counts @@ -89,25 +101,31 @@ module OpenAI params( id: String, created_at: Integer, - data_source: T.any( - OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, - OpenAI::Internal::AnyHash, - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource, - OpenAI::Models::Evals::RunListResponse::DataSource::Completions - ), - error: T.any(OpenAI::Models::Evals::EvalAPIError, OpenAI::Internal::AnyHash), + data_source: + T.any( + OpenAI::Evals::CreateEvalJSONLRunDataSource::OrHash, + OpenAI::Evals::CreateEvalCompletionsRunDataSource::OrHash, + OpenAI::Models::Evals::RunListResponse::DataSource::Completions::OrHash + ), + error: OpenAI::Evals::EvalAPIError::OrHash, eval_id: String, metadata: T.nilable(T::Hash[Symbol, String]), model: String, name: String, - per_model_usage: T::Array[T.any(OpenAI::Models::Evals::RunListResponse::PerModelUsage, OpenAI::Internal::AnyHash)], - per_testing_criteria_results: T::Array[T.any(OpenAI::Models::Evals::RunListResponse::PerTestingCriteriaResult, OpenAI::Internal::AnyHash)], + per_model_usage: + T::Array[ + OpenAI::Models::Evals::RunListResponse::PerModelUsage::OrHash + ], + per_testing_criteria_results: + T::Array[ + OpenAI::Models::Evals::RunListResponse::PerTestingCriteriaResult::OrHash + ], report_url: String, - result_counts: T.any(OpenAI::Models::Evals::RunListResponse::ResultCounts, OpenAI::Internal::AnyHash), + result_counts: + OpenAI::Models::Evals::RunListResponse::ResultCounts::OrHash, status: String, object: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # Unique identifier for the evaluation run. @@ -143,39 +161,59 @@ module OpenAI status:, # The type of the object. Always "eval.run". object: :"eval.run" - ); end + ) + end + sig do - override - .returns( - { - id: String, - created_at: Integer, - data_source: T.any( - OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource, + override.returns( + { + id: String, + created_at: Integer, + data_source: + T.any( + OpenAI::Evals::CreateEvalJSONLRunDataSource, + OpenAI::Evals::CreateEvalCompletionsRunDataSource, OpenAI::Models::Evals::RunListResponse::DataSource::Completions ), - error: OpenAI::Models::Evals::EvalAPIError, - eval_id: String, - metadata: T.nilable(T::Hash[Symbol, String]), - model: String, - name: String, - object: Symbol, - per_model_usage: T::Array[OpenAI::Models::Evals::RunListResponse::PerModelUsage], - per_testing_criteria_results: T::Array[OpenAI::Models::Evals::RunListResponse::PerTestingCriteriaResult], - report_url: String, - result_counts: OpenAI::Models::Evals::RunListResponse::ResultCounts, - status: String - } - ) + error: OpenAI::Evals::EvalAPIError, + eval_id: String, + metadata: T.nilable(T::Hash[Symbol, String]), + model: String, + name: String, + object: Symbol, + per_model_usage: + T::Array[OpenAI::Models::Evals::RunListResponse::PerModelUsage], + per_testing_criteria_results: + T::Array[ + OpenAI::Models::Evals::RunListResponse::PerTestingCriteriaResult + ], + report_url: String, + result_counts: + OpenAI::Models::Evals::RunListResponse::ResultCounts, + status: String + } + ) + end + def to_hash end - def to_hash; end # Information about the run's data source. module DataSource extend OpenAI::Internal::Type::Union + Variants = + T.type_alias do + T.any( + OpenAI::Evals::CreateEvalJSONLRunDataSource, + OpenAI::Evals::CreateEvalCompletionsRunDataSource, + OpenAI::Models::Evals::RunListResponse::DataSource::Completions + ) + end + class Completions < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # A EvalResponsesSource object describing a run data source configuration. sig do returns( @@ -206,13 +244,12 @@ module OpenAI sig do params( - input_messages: T.any( - OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template, - OpenAI::Internal::AnyHash, - OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::ItemReference - ) - ) - .void + input_messages: + T.any( + OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::OrHash, + OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::ItemReference::OrHash + ) + ).void end attr_writer :input_messages @@ -223,42 +260,42 @@ module OpenAI sig { params(model: String).void } attr_writer :model - sig { returns(T.nilable(OpenAI::Models::Evals::RunListResponse::DataSource::Completions::SamplingParams)) } + sig do + returns( + T.nilable( + OpenAI::Models::Evals::RunListResponse::DataSource::Completions::SamplingParams + ) + ) + end attr_reader :sampling_params sig do params( - sampling_params: T.any( - OpenAI::Models::Evals::RunListResponse::DataSource::Completions::SamplingParams, - OpenAI::Internal::AnyHash - ) - ) - .void + sampling_params: + OpenAI::Models::Evals::RunListResponse::DataSource::Completions::SamplingParams::OrHash + ).void end attr_writer :sampling_params # A ResponsesRunDataSource object describing a model sampling configuration. sig do params( - source: T.any( - OpenAI::Models::Evals::RunListResponse::DataSource::Completions::Source::FileContent, - OpenAI::Internal::AnyHash, - OpenAI::Models::Evals::RunListResponse::DataSource::Completions::Source::FileID, - OpenAI::Models::Evals::RunListResponse::DataSource::Completions::Source::Responses - ), - input_messages: T.any( - OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template, - OpenAI::Internal::AnyHash, - OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::ItemReference - ), + source: + T.any( + OpenAI::Models::Evals::RunListResponse::DataSource::Completions::Source::FileContent::OrHash, + OpenAI::Models::Evals::RunListResponse::DataSource::Completions::Source::FileID::OrHash, + OpenAI::Models::Evals::RunListResponse::DataSource::Completions::Source::Responses::OrHash + ), + input_messages: + T.any( + OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::OrHash, + OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::ItemReference::OrHash + ), model: String, - sampling_params: T.any( - OpenAI::Models::Evals::RunListResponse::DataSource::Completions::SamplingParams, - OpenAI::Internal::AnyHash - ), + sampling_params: + OpenAI::Models::Evals::RunListResponse::DataSource::Completions::SamplingParams::OrHash, type: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # A EvalResponsesSource object describing a run data source configuration. @@ -269,37 +306,56 @@ module OpenAI sampling_params: nil, # The type of run data source. Always `completions`. type: :completions - ); end + ) + end + sig do - override - .returns( - { - source: T.any( + override.returns( + { + source: + T.any( OpenAI::Models::Evals::RunListResponse::DataSource::Completions::Source::FileContent, OpenAI::Models::Evals::RunListResponse::DataSource::Completions::Source::FileID, OpenAI::Models::Evals::RunListResponse::DataSource::Completions::Source::Responses ), - type: Symbol, - input_messages: T.any( + type: Symbol, + input_messages: + T.any( OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template, OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::ItemReference ), - model: String, - sampling_params: OpenAI::Models::Evals::RunListResponse::DataSource::Completions::SamplingParams - } - ) + model: String, + sampling_params: + OpenAI::Models::Evals::RunListResponse::DataSource::Completions::SamplingParams + } + ) + end + def to_hash end - def to_hash; end # A EvalResponsesSource object describing a run data source configuration. module Source extend OpenAI::Internal::Type::Union + Variants = + T.type_alias do + T.any( + OpenAI::Models::Evals::RunListResponse::DataSource::Completions::Source::FileContent, + OpenAI::Models::Evals::RunListResponse::DataSource::Completions::Source::FileID, + OpenAI::Models::Evals::RunListResponse::DataSource::Completions::Source::Responses + ) + end + class FileContent < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The content of the jsonl file. sig do returns( - T::Array[OpenAI::Models::Evals::RunListResponse::DataSource::Completions::Source::FileContent::Content] + T::Array[ + OpenAI::Models::Evals::RunListResponse::DataSource::Completions::Source::FileContent::Content + ] ) end attr_accessor :content @@ -310,34 +366,41 @@ module OpenAI sig do params( - content: T::Array[ - T.any( - OpenAI::Models::Evals::RunListResponse::DataSource::Completions::Source::FileContent::Content, - OpenAI::Internal::AnyHash - ) - ], + content: + T::Array[ + OpenAI::Models::Evals::RunListResponse::DataSource::Completions::Source::FileContent::Content::OrHash + ], type: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # The content of the jsonl file. content:, # The type of jsonl source. Always `file_content`. type: :file_content - ); end + ) + end + sig do - override - .returns( - { - content: T::Array[OpenAI::Models::Evals::RunListResponse::DataSource::Completions::Source::FileContent::Content], - type: Symbol - } - ) + override.returns( + { + content: + T::Array[ + OpenAI::Models::Evals::RunListResponse::DataSource::Completions::Source::FileContent::Content + ], + type: Symbol + } + ) + end + def to_hash end - def to_hash; end class Content < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any(T.self_type, OpenAI::Internal::AnyHash) + end + sig { returns(T::Hash[Symbol, T.anything]) } attr_accessor :item @@ -350,20 +413,29 @@ module OpenAI sig do params( item: T::Hash[Symbol, T.anything], - sample: T::Hash[Symbol, - T.anything] + sample: T::Hash[Symbol, T.anything] ).returns(T.attached_class) end - def self.new(item:, sample: nil); end + def self.new(item:, sample: nil) + end sig do - override.returns({item: T::Hash[Symbol, T.anything], sample: T::Hash[Symbol, T.anything]}) + override.returns( + { + item: T::Hash[Symbol, T.anything], + sample: T::Hash[Symbol, T.anything] + } + ) + end + def to_hash end - def to_hash; end end end class FileID < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The identifier of the file. sig { returns(String) } attr_accessor :id @@ -372,18 +444,26 @@ module OpenAI sig { returns(Symbol) } attr_accessor :type - sig { params(id: String, type: Symbol).returns(T.attached_class) } + sig do + params(id: String, type: Symbol).returns(T.attached_class) + end def self.new( # The identifier of the file. id:, # The type of jsonl source. Always `file_id`. type: :file_id - ); end - sig { override.returns({id: String, type: Symbol}) } - def to_hash; end + ) + end + + sig { override.returns({ id: String, type: Symbol }) } + def to_hash + end end class Responses < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The type of run data source. Always `responses`. sig { returns(Symbol) } attr_accessor :type @@ -425,7 +505,9 @@ module OpenAI # Optional reasoning effort parameter. This is a query parameter used to select # responses. - sig { returns(T.nilable(OpenAI::Models::ReasoningEffort::TaggedSymbol)) } + sig do + returns(T.nilable(OpenAI::ReasoningEffort::TaggedSymbol)) + end attr_accessor :reasoning_effort # Sampling temperature. This is a query parameter used to select responses. @@ -450,13 +532,13 @@ module OpenAI instructions_search: T.nilable(String), metadata: T.nilable(T.anything), model: T.nilable(String), - reasoning_effort: T.nilable(OpenAI::Models::ReasoningEffort::OrSymbol), + reasoning_effort: + T.nilable(OpenAI::ReasoningEffort::OrSymbol), temperature: T.nilable(Float), top_p: T.nilable(Float), users: T.nilable(T::Array[String]), type: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # Whether to allow parallel tool calls. This is a query parameter used to select @@ -491,42 +573,58 @@ module OpenAI users: nil, # The type of run data source. Always `responses`. type: :responses - ); end + ) + end + sig do - override - .returns( - { - type: Symbol, - allow_parallel_tool_calls: T.nilable(T::Boolean), - created_after: T.nilable(Integer), - created_before: T.nilable(Integer), - has_tool_calls: T.nilable(T::Boolean), - instructions_search: T.nilable(String), - metadata: T.nilable(T.anything), - model: T.nilable(String), - reasoning_effort: T.nilable(OpenAI::Models::ReasoningEffort::TaggedSymbol), - temperature: T.nilable(Float), - top_p: T.nilable(Float), - users: T.nilable(T::Array[String]) - } - ) + override.returns( + { + type: Symbol, + allow_parallel_tool_calls: T.nilable(T::Boolean), + created_after: T.nilable(Integer), + created_before: T.nilable(Integer), + has_tool_calls: T.nilable(T::Boolean), + instructions_search: T.nilable(String), + metadata: T.nilable(T.anything), + model: T.nilable(String), + reasoning_effort: + T.nilable(OpenAI::ReasoningEffort::TaggedSymbol), + temperature: T.nilable(Float), + top_p: T.nilable(Float), + users: T.nilable(T::Array[String]) + } + ) + end + def to_hash end - def to_hash; end end sig do - override - .returns( - [OpenAI::Models::Evals::RunListResponse::DataSource::Completions::Source::FileContent, OpenAI::Models::Evals::RunListResponse::DataSource::Completions::Source::FileID, OpenAI::Models::Evals::RunListResponse::DataSource::Completions::Source::Responses] - ) + override.returns( + T::Array[ + OpenAI::Models::Evals::RunListResponse::DataSource::Completions::Source::Variants + ] + ) + end + def self.variants end - def self.variants; end end module InputMessages extend OpenAI::Internal::Type::Union + Variants = + T.type_alias do + T.any( + OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template, + OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::ItemReference + ) + end + class Template < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # A list of chat messages forming the prompt or context. May include variable # references to the "item" namespace, ie {{item.name}}. sig do @@ -547,16 +645,15 @@ module OpenAI sig do params( - template: T::Array[ - T.any( - OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::ChatMessage, - OpenAI::Internal::AnyHash, - OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem - ) - ], + template: + T::Array[ + T.any( + OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::ChatMessage::OrHash, + OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::OrHash + ) + ], type: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # A list of chat messages forming the prompt or context. May include variable @@ -564,22 +661,25 @@ module OpenAI template:, # The type of input messages. Always `template`. type: :template - ); end + ) + end + sig do - override - .returns( - { - template: T::Array[ + override.returns( + { + template: + T::Array[ T.any( OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::ChatMessage, OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem ) ], - type: Symbol - } - ) + type: Symbol + } + ) + end + def to_hash end - def to_hash; end # A message input to the model with a role indicating instruction following # hierarchy. Instructions given with the `developer` or `system` role take @@ -589,7 +689,20 @@ module OpenAI module Template extend OpenAI::Internal::Type::Union + Variants = + T.type_alias do + T.any( + OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::ChatMessage, + OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem + ) + end + class ChatMessage < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any(T.self_type, OpenAI::Internal::AnyHash) + end + # The content of the message. sig { returns(String) } attr_accessor :content @@ -598,24 +711,36 @@ module OpenAI sig { returns(String) } attr_accessor :role - sig { params(content: String, role: String).returns(T.attached_class) } + sig do + params(content: String, role: String).returns( + T.attached_class + ) + end def self.new( # The content of the message. content:, # The role of the message (e.g. "system", "assistant", "user"). role: - ); end - sig { override.returns({content: String, role: String}) } - def to_hash; end + ) + end + + sig { override.returns({ content: String, role: String }) } + def to_hash + end end class EvalItem < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any(T.self_type, OpenAI::Internal::AnyHash) + end + # Text inputs to the model - can contain template strings. sig do returns( T.any( String, - OpenAI::Models::Responses::ResponseInputText, + OpenAI::Responses::ResponseInputText, OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText ) ) @@ -643,9 +768,9 @@ module OpenAI sig do params( - type: OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Type::OrSymbol - ) - .void + type: + OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Type::OrSymbol + ).void end attr_writer :type @@ -656,16 +781,17 @@ module OpenAI # interactions. sig do params( - content: T.any( - String, - OpenAI::Models::Responses::ResponseInputText, - OpenAI::Internal::AnyHash, - OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText - ), - role: OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Role::OrSymbol, - type: OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Type::OrSymbol - ) - .returns(T.attached_class) + content: + T.any( + String, + OpenAI::Responses::ResponseInputText::OrHash, + OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText::OrHash + ), + role: + OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Role::OrSymbol, + type: + OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Type::OrSymbol + ).returns(T.attached_class) end def self.new( # Text inputs to the model - can contain template strings. @@ -675,28 +801,47 @@ module OpenAI role:, # The type of the message input. Always `message`. type: nil - ); end + ) + end + sig do - override - .returns( - { - content: T.any( + override.returns( + { + content: + T.any( String, - OpenAI::Models::Responses::ResponseInputText, + OpenAI::Responses::ResponseInputText, OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText ), - role: OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Role::TaggedSymbol, - type: OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Type::TaggedSymbol - } - ) + role: + OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Role::TaggedSymbol, + type: + OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Type::TaggedSymbol + } + ) + end + def to_hash end - def to_hash; end # Text inputs to the model - can contain template strings. module Content extend OpenAI::Internal::Type::Union + Variants = + T.type_alias do + T.any( + String, + OpenAI::Responses::ResponseInputText, + OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText + ) + end + class OutputText < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any(T.self_type, OpenAI::Internal::AnyHash) + end + # The text output from the model. sig { returns(String) } attr_accessor :text @@ -706,24 +851,33 @@ module OpenAI attr_accessor :type # A text output from the model. - sig { params(text: String, type: Symbol).returns(T.attached_class) } + sig do + params(text: String, type: Symbol).returns( + T.attached_class + ) + end def self.new( # The text output from the model. text:, # The type of the output text. Always `output_text`. type: :output_text - ); end - sig { override.returns({text: String, type: Symbol}) } - def to_hash; end + ) + end + + sig { override.returns({ text: String, type: Symbol }) } + def to_hash + end end sig do - override - .returns( - [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText] - ) + override.returns( + T::Array[ + OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::Variants + ] + ) + end + def self.variants end - def self.variants; end end # The role of the message input. One of `user`, `assistant`, `system`, or @@ -733,7 +887,10 @@ module OpenAI TaggedSymbol = T.type_alias do - T.all(Symbol, OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Role) + T.all( + Symbol, + OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Role + ) end OrSymbol = T.type_alias { T.any(Symbol, String) } @@ -759,14 +916,14 @@ module OpenAI ) sig do - override - .returns( - T::Array[ - OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Role::TaggedSymbol - ] - ) + override.returns( + T::Array[ + OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Role::TaggedSymbol + ] + ) + end + def self.values end - def self.values; end end # The type of the message input. Always `message`. @@ -775,7 +932,10 @@ module OpenAI TaggedSymbol = T.type_alias do - T.all(Symbol, OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Type) + T.all( + Symbol, + OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Type + ) end OrSymbol = T.type_alias { T.any(Symbol, String) } @@ -786,28 +946,33 @@ module OpenAI ) sig do - override - .returns( - T::Array[ - OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Type::TaggedSymbol - ] - ) + override.returns( + T::Array[ + OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Type::TaggedSymbol + ] + ) + end + def self.values end - def self.values; end end end sig do - override - .returns( - [OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::ChatMessage, OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem] - ) + override.returns( + T::Array[ + OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::Variants + ] + ) + end + def self.variants end - def self.variants; end end end class ItemReference < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # A reference to a variable in the "item" namespace. Ie, "item.name" sig { returns(String) } attr_accessor :item_reference @@ -816,27 +981,41 @@ module OpenAI sig { returns(Symbol) } attr_accessor :type - sig { params(item_reference: String, type: Symbol).returns(T.attached_class) } + sig do + params(item_reference: String, type: Symbol).returns( + T.attached_class + ) + end def self.new( # A reference to a variable in the "item" namespace. Ie, "item.name" item_reference:, # The type of input messages. Always `item_reference`. type: :item_reference - ); end - sig { override.returns({item_reference: String, type: Symbol}) } - def to_hash; end + ) + end + + sig do + override.returns({ item_reference: String, type: Symbol }) + end + def to_hash + end end sig do - override - .returns( - [OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template, OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::ItemReference] - ) + override.returns( + T::Array[ + OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Variants + ] + ) + end + def self.variants end - def self.variants; end end class SamplingParams < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The maximum number of tokens in the generated output. sig { returns(T.nilable(Integer)) } attr_reader :max_completion_tokens @@ -866,8 +1045,12 @@ module OpenAI attr_writer :top_p sig do - params(max_completion_tokens: Integer, seed: Integer, temperature: Float, top_p: Float) - .returns(T.attached_class) + params( + max_completion_tokens: Integer, + seed: Integer, + temperature: Float, + top_p: Float + ).returns(T.attached_class) end def self.new( # The maximum number of tokens in the generated output. @@ -878,7 +1061,9 @@ module OpenAI temperature: nil, # An alternative to temperature for nucleus sampling; 1.0 includes all tokens. top_p: nil - ); end + ) + end + sig do override.returns( { @@ -889,20 +1074,26 @@ module OpenAI } ) end - def to_hash; end + def to_hash + end end end sig do - override - .returns( - [OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource, OpenAI::Models::Evals::RunListResponse::DataSource::Completions] - ) + override.returns( + T::Array[ + OpenAI::Models::Evals::RunListResponse::DataSource::Variants + ] + ) + end + def self.variants end - def self.variants; end end class PerModelUsage < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The number of tokens retrieved from cache. sig { returns(Integer) } attr_accessor :cached_tokens @@ -935,8 +1126,7 @@ module OpenAI model_name: String, prompt_tokens: Integer, total_tokens: Integer - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # The number of tokens retrieved from cache. @@ -951,24 +1141,29 @@ module OpenAI prompt_tokens:, # The total number of tokens used. total_tokens: - ); end + ) + end + sig do - override - .returns( - { - cached_tokens: Integer, - completion_tokens: Integer, - invocation_count: Integer, - model_name: String, - prompt_tokens: Integer, - total_tokens: Integer - } - ) + override.returns( + { + cached_tokens: Integer, + completion_tokens: Integer, + invocation_count: Integer, + model_name: String, + prompt_tokens: Integer, + total_tokens: Integer + } + ) + end + def to_hash end - def to_hash; end end class PerTestingCriteriaResult < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Number of tests failed for this criteria. sig { returns(Integer) } attr_accessor :failed @@ -981,7 +1176,13 @@ module OpenAI sig { returns(String) } attr_accessor :testing_criteria - sig { params(failed: Integer, passed: Integer, testing_criteria: String).returns(T.attached_class) } + sig do + params( + failed: Integer, + passed: Integer, + testing_criteria: String + ).returns(T.attached_class) + end def self.new( # Number of tests failed for this criteria. failed:, @@ -989,12 +1190,22 @@ module OpenAI passed:, # A description of the testing criteria. testing_criteria: - ); end - sig { override.returns({failed: Integer, passed: Integer, testing_criteria: String}) } - def to_hash; end + ) + end + + sig do + override.returns( + { failed: Integer, passed: Integer, testing_criteria: String } + ) + end + def to_hash + end end class ResultCounts < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Number of output items that resulted in an error. sig { returns(Integer) } attr_accessor :errored @@ -1029,9 +1240,21 @@ module OpenAI passed:, # Total number of executed output items. total: - ); end - sig { override.returns({errored: Integer, failed: Integer, passed: Integer, total: Integer}) } - def to_hash; end + ) + end + + sig do + override.returns( + { + errored: Integer, + failed: Integer, + passed: Integer, + total: Integer + } + ) + end + def to_hash + end end end end diff --git a/rbi/openai/models/evals/run_retrieve_params.rbi b/rbi/openai/models/evals/run_retrieve_params.rbi index 7dd9ed20..ad837ffe 100644 --- a/rbi/openai/models/evals/run_retrieve_params.rbi +++ b/rbi/openai/models/evals/run_retrieve_params.rbi @@ -7,17 +7,27 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + sig { returns(String) } attr_accessor :eval_id sig do - params(eval_id: String, request_options: T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash)) - .returns(T.attached_class) + params( + eval_id: String, + request_options: OpenAI::RequestOptions::OrHash + ).returns(T.attached_class) + end + def self.new(eval_id:, request_options: {}) end - def self.new(eval_id:, request_options: {}); end - sig { override.returns({eval_id: String, request_options: OpenAI::RequestOptions}) } - def to_hash; end + sig do + override.returns( + { eval_id: String, request_options: OpenAI::RequestOptions } + ) + end + def to_hash + end end end end diff --git a/rbi/openai/models/evals/run_retrieve_response.rbi b/rbi/openai/models/evals/run_retrieve_response.rbi index 70df1bc9..d1770d9c 100644 --- a/rbi/openai/models/evals/run_retrieve_response.rbi +++ b/rbi/openai/models/evals/run_retrieve_response.rbi @@ -4,6 +4,8 @@ module OpenAI module Models module Evals class RunRetrieveResponse < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Unique identifier for the evaluation run. sig { returns(String) } attr_accessor :id @@ -16,8 +18,8 @@ module OpenAI sig do returns( T.any( - OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource, + OpenAI::Evals::CreateEvalJSONLRunDataSource, + OpenAI::Evals::CreateEvalCompletionsRunDataSource, OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions ) ) @@ -25,10 +27,10 @@ module OpenAI attr_accessor :data_source # An object representing an error response from the Eval API. - sig { returns(OpenAI::Models::Evals::EvalAPIError) } + sig { returns(OpenAI::Evals::EvalAPIError) } attr_reader :error - sig { params(error: T.any(OpenAI::Models::Evals::EvalAPIError, OpenAI::Internal::AnyHash)).void } + sig { params(error: OpenAI::Evals::EvalAPIError::OrHash).void } attr_writer :error # The identifier of the associated evaluation. @@ -57,11 +59,21 @@ module OpenAI attr_accessor :object # Usage statistics for each model during the evaluation run. - sig { returns(T::Array[OpenAI::Models::Evals::RunRetrieveResponse::PerModelUsage]) } + sig do + returns( + T::Array[OpenAI::Models::Evals::RunRetrieveResponse::PerModelUsage] + ) + end attr_accessor :per_model_usage # Results per testing criteria applied during the evaluation run. - sig { returns(T::Array[OpenAI::Models::Evals::RunRetrieveResponse::PerTestingCriteriaResult]) } + sig do + returns( + T::Array[ + OpenAI::Models::Evals::RunRetrieveResponse::PerTestingCriteriaResult + ] + ) + end attr_accessor :per_testing_criteria_results # The URL to the rendered evaluation run report on the UI dashboard. @@ -69,14 +81,16 @@ module OpenAI attr_accessor :report_url # Counters summarizing the outcomes of the evaluation run. - sig { returns(OpenAI::Models::Evals::RunRetrieveResponse::ResultCounts) } + sig do + returns(OpenAI::Models::Evals::RunRetrieveResponse::ResultCounts) + end attr_reader :result_counts sig do params( - result_counts: T.any(OpenAI::Models::Evals::RunRetrieveResponse::ResultCounts, OpenAI::Internal::AnyHash) - ) - .void + result_counts: + OpenAI::Models::Evals::RunRetrieveResponse::ResultCounts::OrHash + ).void end attr_writer :result_counts @@ -89,25 +103,31 @@ module OpenAI params( id: String, created_at: Integer, - data_source: T.any( - OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, - OpenAI::Internal::AnyHash, - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource, - OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions - ), - error: T.any(OpenAI::Models::Evals::EvalAPIError, OpenAI::Internal::AnyHash), + data_source: + T.any( + OpenAI::Evals::CreateEvalJSONLRunDataSource::OrHash, + OpenAI::Evals::CreateEvalCompletionsRunDataSource::OrHash, + OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::OrHash + ), + error: OpenAI::Evals::EvalAPIError::OrHash, eval_id: String, metadata: T.nilable(T::Hash[Symbol, String]), model: String, name: String, - per_model_usage: T::Array[T.any(OpenAI::Models::Evals::RunRetrieveResponse::PerModelUsage, OpenAI::Internal::AnyHash)], - per_testing_criteria_results: T::Array[T.any(OpenAI::Models::Evals::RunRetrieveResponse::PerTestingCriteriaResult, OpenAI::Internal::AnyHash)], + per_model_usage: + T::Array[ + OpenAI::Models::Evals::RunRetrieveResponse::PerModelUsage::OrHash + ], + per_testing_criteria_results: + T::Array[ + OpenAI::Models::Evals::RunRetrieveResponse::PerTestingCriteriaResult::OrHash + ], report_url: String, - result_counts: T.any(OpenAI::Models::Evals::RunRetrieveResponse::ResultCounts, OpenAI::Internal::AnyHash), + result_counts: + OpenAI::Models::Evals::RunRetrieveResponse::ResultCounts::OrHash, status: String, object: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # Unique identifier for the evaluation run. @@ -143,39 +163,61 @@ module OpenAI status:, # The type of the object. Always "eval.run". object: :"eval.run" - ); end + ) + end + sig do - override - .returns( - { - id: String, - created_at: Integer, - data_source: T.any( - OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource, + override.returns( + { + id: String, + created_at: Integer, + data_source: + T.any( + OpenAI::Evals::CreateEvalJSONLRunDataSource, + OpenAI::Evals::CreateEvalCompletionsRunDataSource, OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions ), - error: OpenAI::Models::Evals::EvalAPIError, - eval_id: String, - metadata: T.nilable(T::Hash[Symbol, String]), - model: String, - name: String, - object: Symbol, - per_model_usage: T::Array[OpenAI::Models::Evals::RunRetrieveResponse::PerModelUsage], - per_testing_criteria_results: T::Array[OpenAI::Models::Evals::RunRetrieveResponse::PerTestingCriteriaResult], - report_url: String, - result_counts: OpenAI::Models::Evals::RunRetrieveResponse::ResultCounts, - status: String - } - ) + error: OpenAI::Evals::EvalAPIError, + eval_id: String, + metadata: T.nilable(T::Hash[Symbol, String]), + model: String, + name: String, + object: Symbol, + per_model_usage: + T::Array[ + OpenAI::Models::Evals::RunRetrieveResponse::PerModelUsage + ], + per_testing_criteria_results: + T::Array[ + OpenAI::Models::Evals::RunRetrieveResponse::PerTestingCriteriaResult + ], + report_url: String, + result_counts: + OpenAI::Models::Evals::RunRetrieveResponse::ResultCounts, + status: String + } + ) + end + def to_hash end - def to_hash; end # Information about the run's data source. module DataSource extend OpenAI::Internal::Type::Union + Variants = + T.type_alias do + T.any( + OpenAI::Evals::CreateEvalJSONLRunDataSource, + OpenAI::Evals::CreateEvalCompletionsRunDataSource, + OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions + ) + end + class Completions < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # A EvalResponsesSource object describing a run data source configuration. sig do returns( @@ -206,13 +248,12 @@ module OpenAI sig do params( - input_messages: T.any( - OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template, - OpenAI::Internal::AnyHash, - OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::ItemReference - ) - ) - .void + input_messages: + T.any( + OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::OrHash, + OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::ItemReference::OrHash + ) + ).void end attr_writer :input_messages @@ -223,42 +264,42 @@ module OpenAI sig { params(model: String).void } attr_writer :model - sig { returns(T.nilable(OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::SamplingParams)) } + sig do + returns( + T.nilable( + OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::SamplingParams + ) + ) + end attr_reader :sampling_params sig do params( - sampling_params: T.any( - OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::SamplingParams, - OpenAI::Internal::AnyHash - ) - ) - .void + sampling_params: + OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::SamplingParams::OrHash + ).void end attr_writer :sampling_params # A ResponsesRunDataSource object describing a model sampling configuration. sig do params( - source: T.any( - OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::Source::FileContent, - OpenAI::Internal::AnyHash, - OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::Source::FileID, - OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::Source::Responses - ), - input_messages: T.any( - OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template, - OpenAI::Internal::AnyHash, - OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::ItemReference - ), + source: + T.any( + OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::Source::FileContent::OrHash, + OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::Source::FileID::OrHash, + OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::Source::Responses::OrHash + ), + input_messages: + T.any( + OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::OrHash, + OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::ItemReference::OrHash + ), model: String, - sampling_params: T.any( - OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::SamplingParams, - OpenAI::Internal::AnyHash - ), + sampling_params: + OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::SamplingParams::OrHash, type: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # A EvalResponsesSource object describing a run data source configuration. @@ -269,37 +310,56 @@ module OpenAI sampling_params: nil, # The type of run data source. Always `completions`. type: :completions - ); end + ) + end + sig do - override - .returns( - { - source: T.any( + override.returns( + { + source: + T.any( OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::Source::FileContent, OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::Source::FileID, OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::Source::Responses ), - type: Symbol, - input_messages: T.any( + type: Symbol, + input_messages: + T.any( OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template, OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::ItemReference ), - model: String, - sampling_params: OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::SamplingParams - } - ) + model: String, + sampling_params: + OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::SamplingParams + } + ) + end + def to_hash end - def to_hash; end # A EvalResponsesSource object describing a run data source configuration. module Source extend OpenAI::Internal::Type::Union + Variants = + T.type_alias do + T.any( + OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::Source::FileContent, + OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::Source::FileID, + OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::Source::Responses + ) + end + class FileContent < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The content of the jsonl file. sig do returns( - T::Array[OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::Source::FileContent::Content] + T::Array[ + OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::Source::FileContent::Content + ] ) end attr_accessor :content @@ -310,34 +370,41 @@ module OpenAI sig do params( - content: T::Array[ - T.any( - OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::Source::FileContent::Content, - OpenAI::Internal::AnyHash - ) - ], + content: + T::Array[ + OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::Source::FileContent::Content::OrHash + ], type: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # The content of the jsonl file. content:, # The type of jsonl source. Always `file_content`. type: :file_content - ); end + ) + end + sig do - override - .returns( - { - content: T::Array[OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::Source::FileContent::Content], - type: Symbol - } - ) + override.returns( + { + content: + T::Array[ + OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::Source::FileContent::Content + ], + type: Symbol + } + ) + end + def to_hash end - def to_hash; end class Content < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any(T.self_type, OpenAI::Internal::AnyHash) + end + sig { returns(T::Hash[Symbol, T.anything]) } attr_accessor :item @@ -350,20 +417,29 @@ module OpenAI sig do params( item: T::Hash[Symbol, T.anything], - sample: T::Hash[Symbol, - T.anything] + sample: T::Hash[Symbol, T.anything] ).returns(T.attached_class) end - def self.new(item:, sample: nil); end + def self.new(item:, sample: nil) + end sig do - override.returns({item: T::Hash[Symbol, T.anything], sample: T::Hash[Symbol, T.anything]}) + override.returns( + { + item: T::Hash[Symbol, T.anything], + sample: T::Hash[Symbol, T.anything] + } + ) + end + def to_hash end - def to_hash; end end end class FileID < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The identifier of the file. sig { returns(String) } attr_accessor :id @@ -372,18 +448,26 @@ module OpenAI sig { returns(Symbol) } attr_accessor :type - sig { params(id: String, type: Symbol).returns(T.attached_class) } + sig do + params(id: String, type: Symbol).returns(T.attached_class) + end def self.new( # The identifier of the file. id:, # The type of jsonl source. Always `file_id`. type: :file_id - ); end - sig { override.returns({id: String, type: Symbol}) } - def to_hash; end + ) + end + + sig { override.returns({ id: String, type: Symbol }) } + def to_hash + end end class Responses < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The type of run data source. Always `responses`. sig { returns(Symbol) } attr_accessor :type @@ -425,7 +509,9 @@ module OpenAI # Optional reasoning effort parameter. This is a query parameter used to select # responses. - sig { returns(T.nilable(OpenAI::Models::ReasoningEffort::TaggedSymbol)) } + sig do + returns(T.nilable(OpenAI::ReasoningEffort::TaggedSymbol)) + end attr_accessor :reasoning_effort # Sampling temperature. This is a query parameter used to select responses. @@ -450,13 +536,13 @@ module OpenAI instructions_search: T.nilable(String), metadata: T.nilable(T.anything), model: T.nilable(String), - reasoning_effort: T.nilable(OpenAI::Models::ReasoningEffort::OrSymbol), + reasoning_effort: + T.nilable(OpenAI::ReasoningEffort::OrSymbol), temperature: T.nilable(Float), top_p: T.nilable(Float), users: T.nilable(T::Array[String]), type: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # Whether to allow parallel tool calls. This is a query parameter used to select @@ -491,42 +577,58 @@ module OpenAI users: nil, # The type of run data source. Always `responses`. type: :responses - ); end + ) + end + sig do - override - .returns( - { - type: Symbol, - allow_parallel_tool_calls: T.nilable(T::Boolean), - created_after: T.nilable(Integer), - created_before: T.nilable(Integer), - has_tool_calls: T.nilable(T::Boolean), - instructions_search: T.nilable(String), - metadata: T.nilable(T.anything), - model: T.nilable(String), - reasoning_effort: T.nilable(OpenAI::Models::ReasoningEffort::TaggedSymbol), - temperature: T.nilable(Float), - top_p: T.nilable(Float), - users: T.nilable(T::Array[String]) - } - ) + override.returns( + { + type: Symbol, + allow_parallel_tool_calls: T.nilable(T::Boolean), + created_after: T.nilable(Integer), + created_before: T.nilable(Integer), + has_tool_calls: T.nilable(T::Boolean), + instructions_search: T.nilable(String), + metadata: T.nilable(T.anything), + model: T.nilable(String), + reasoning_effort: + T.nilable(OpenAI::ReasoningEffort::TaggedSymbol), + temperature: T.nilable(Float), + top_p: T.nilable(Float), + users: T.nilable(T::Array[String]) + } + ) + end + def to_hash end - def to_hash; end end sig do - override - .returns( - [OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::Source::FileContent, OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::Source::FileID, OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::Source::Responses] - ) + override.returns( + T::Array[ + OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::Source::Variants + ] + ) + end + def self.variants end - def self.variants; end end module InputMessages extend OpenAI::Internal::Type::Union + Variants = + T.type_alias do + T.any( + OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template, + OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::ItemReference + ) + end + class Template < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # A list of chat messages forming the prompt or context. May include variable # references to the "item" namespace, ie {{item.name}}. sig do @@ -547,16 +649,15 @@ module OpenAI sig do params( - template: T::Array[ - T.any( - OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::ChatMessage, - OpenAI::Internal::AnyHash, - OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem - ) - ], + template: + T::Array[ + T.any( + OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::ChatMessage::OrHash, + OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::OrHash + ) + ], type: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # A list of chat messages forming the prompt or context. May include variable @@ -564,22 +665,25 @@ module OpenAI template:, # The type of input messages. Always `template`. type: :template - ); end + ) + end + sig do - override - .returns( - { - template: T::Array[ + override.returns( + { + template: + T::Array[ T.any( OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::ChatMessage, OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem ) ], - type: Symbol - } - ) + type: Symbol + } + ) + end + def to_hash end - def to_hash; end # A message input to the model with a role indicating instruction following # hierarchy. Instructions given with the `developer` or `system` role take @@ -589,7 +693,20 @@ module OpenAI module Template extend OpenAI::Internal::Type::Union + Variants = + T.type_alias do + T.any( + OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::ChatMessage, + OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem + ) + end + class ChatMessage < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any(T.self_type, OpenAI::Internal::AnyHash) + end + # The content of the message. sig { returns(String) } attr_accessor :content @@ -598,24 +715,36 @@ module OpenAI sig { returns(String) } attr_accessor :role - sig { params(content: String, role: String).returns(T.attached_class) } + sig do + params(content: String, role: String).returns( + T.attached_class + ) + end def self.new( # The content of the message. content:, # The role of the message (e.g. "system", "assistant", "user"). role: - ); end - sig { override.returns({content: String, role: String}) } - def to_hash; end + ) + end + + sig { override.returns({ content: String, role: String }) } + def to_hash + end end class EvalItem < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any(T.self_type, OpenAI::Internal::AnyHash) + end + # Text inputs to the model - can contain template strings. sig do returns( T.any( String, - OpenAI::Models::Responses::ResponseInputText, + OpenAI::Responses::ResponseInputText, OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText ) ) @@ -643,9 +772,9 @@ module OpenAI sig do params( - type: OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Type::OrSymbol - ) - .void + type: + OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Type::OrSymbol + ).void end attr_writer :type @@ -656,16 +785,17 @@ module OpenAI # interactions. sig do params( - content: T.any( - String, - OpenAI::Models::Responses::ResponseInputText, - OpenAI::Internal::AnyHash, - OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText - ), - role: OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Role::OrSymbol, - type: OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Type::OrSymbol - ) - .returns(T.attached_class) + content: + T.any( + String, + OpenAI::Responses::ResponseInputText::OrHash, + OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText::OrHash + ), + role: + OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Role::OrSymbol, + type: + OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Type::OrSymbol + ).returns(T.attached_class) end def self.new( # Text inputs to the model - can contain template strings. @@ -675,28 +805,47 @@ module OpenAI role:, # The type of the message input. Always `message`. type: nil - ); end + ) + end + sig do - override - .returns( - { - content: T.any( + override.returns( + { + content: + T.any( String, - OpenAI::Models::Responses::ResponseInputText, + OpenAI::Responses::ResponseInputText, OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText ), - role: OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Role::TaggedSymbol, - type: OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Type::TaggedSymbol - } - ) + role: + OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Role::TaggedSymbol, + type: + OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Type::TaggedSymbol + } + ) + end + def to_hash end - def to_hash; end # Text inputs to the model - can contain template strings. module Content extend OpenAI::Internal::Type::Union + Variants = + T.type_alias do + T.any( + String, + OpenAI::Responses::ResponseInputText, + OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText + ) + end + class OutputText < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias do + T.any(T.self_type, OpenAI::Internal::AnyHash) + end + # The text output from the model. sig { returns(String) } attr_accessor :text @@ -706,24 +855,33 @@ module OpenAI attr_accessor :type # A text output from the model. - sig { params(text: String, type: Symbol).returns(T.attached_class) } + sig do + params(text: String, type: Symbol).returns( + T.attached_class + ) + end def self.new( # The text output from the model. text:, # The type of the output text. Always `output_text`. type: :output_text - ); end - sig { override.returns({text: String, type: Symbol}) } - def to_hash; end + ) + end + + sig { override.returns({ text: String, type: Symbol }) } + def to_hash + end end sig do - override - .returns( - [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText] - ) + override.returns( + T::Array[ + OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::Variants + ] + ) + end + def self.variants end - def self.variants; end end # The role of the message input. One of `user`, `assistant`, `system`, or @@ -733,7 +891,10 @@ module OpenAI TaggedSymbol = T.type_alias do - T.all(Symbol, OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Role) + T.all( + Symbol, + OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Role + ) end OrSymbol = T.type_alias { T.any(Symbol, String) } @@ -759,14 +920,14 @@ module OpenAI ) sig do - override - .returns( - T::Array[ - OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Role::TaggedSymbol - ] - ) + override.returns( + T::Array[ + OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Role::TaggedSymbol + ] + ) + end + def self.values end - def self.values; end end # The type of the message input. Always `message`. @@ -775,7 +936,10 @@ module OpenAI TaggedSymbol = T.type_alias do - T.all(Symbol, OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Type) + T.all( + Symbol, + OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Type + ) end OrSymbol = T.type_alias { T.any(Symbol, String) } @@ -786,28 +950,33 @@ module OpenAI ) sig do - override - .returns( - T::Array[ - OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Type::TaggedSymbol - ] - ) + override.returns( + T::Array[ + OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Type::TaggedSymbol + ] + ) + end + def self.values end - def self.values; end end end sig do - override - .returns( - [OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::ChatMessage, OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem] - ) + override.returns( + T::Array[ + OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::Variants + ] + ) + end + def self.variants end - def self.variants; end end end class ItemReference < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # A reference to a variable in the "item" namespace. Ie, "item.name" sig { returns(String) } attr_accessor :item_reference @@ -816,27 +985,41 @@ module OpenAI sig { returns(Symbol) } attr_accessor :type - sig { params(item_reference: String, type: Symbol).returns(T.attached_class) } + sig do + params(item_reference: String, type: Symbol).returns( + T.attached_class + ) + end def self.new( # A reference to a variable in the "item" namespace. Ie, "item.name" item_reference:, # The type of input messages. Always `item_reference`. type: :item_reference - ); end - sig { override.returns({item_reference: String, type: Symbol}) } - def to_hash; end + ) + end + + sig do + override.returns({ item_reference: String, type: Symbol }) + end + def to_hash + end end sig do - override - .returns( - [OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template, OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::ItemReference] - ) + override.returns( + T::Array[ + OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Variants + ] + ) + end + def self.variants end - def self.variants; end end class SamplingParams < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The maximum number of tokens in the generated output. sig { returns(T.nilable(Integer)) } attr_reader :max_completion_tokens @@ -866,8 +1049,12 @@ module OpenAI attr_writer :top_p sig do - params(max_completion_tokens: Integer, seed: Integer, temperature: Float, top_p: Float) - .returns(T.attached_class) + params( + max_completion_tokens: Integer, + seed: Integer, + temperature: Float, + top_p: Float + ).returns(T.attached_class) end def self.new( # The maximum number of tokens in the generated output. @@ -878,7 +1065,9 @@ module OpenAI temperature: nil, # An alternative to temperature for nucleus sampling; 1.0 includes all tokens. top_p: nil - ); end + ) + end + sig do override.returns( { @@ -889,20 +1078,26 @@ module OpenAI } ) end - def to_hash; end + def to_hash + end end end sig do - override - .returns( - [OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource, OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions] - ) + override.returns( + T::Array[ + OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Variants + ] + ) + end + def self.variants end - def self.variants; end end class PerModelUsage < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The number of tokens retrieved from cache. sig { returns(Integer) } attr_accessor :cached_tokens @@ -935,8 +1130,7 @@ module OpenAI model_name: String, prompt_tokens: Integer, total_tokens: Integer - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # The number of tokens retrieved from cache. @@ -951,24 +1145,29 @@ module OpenAI prompt_tokens:, # The total number of tokens used. total_tokens: - ); end + ) + end + sig do - override - .returns( - { - cached_tokens: Integer, - completion_tokens: Integer, - invocation_count: Integer, - model_name: String, - prompt_tokens: Integer, - total_tokens: Integer - } - ) + override.returns( + { + cached_tokens: Integer, + completion_tokens: Integer, + invocation_count: Integer, + model_name: String, + prompt_tokens: Integer, + total_tokens: Integer + } + ) + end + def to_hash end - def to_hash; end end class PerTestingCriteriaResult < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Number of tests failed for this criteria. sig { returns(Integer) } attr_accessor :failed @@ -981,7 +1180,13 @@ module OpenAI sig { returns(String) } attr_accessor :testing_criteria - sig { params(failed: Integer, passed: Integer, testing_criteria: String).returns(T.attached_class) } + sig do + params( + failed: Integer, + passed: Integer, + testing_criteria: String + ).returns(T.attached_class) + end def self.new( # Number of tests failed for this criteria. failed:, @@ -989,12 +1194,22 @@ module OpenAI passed:, # A description of the testing criteria. testing_criteria: - ); end - sig { override.returns({failed: Integer, passed: Integer, testing_criteria: String}) } - def to_hash; end + ) + end + + sig do + override.returns( + { failed: Integer, passed: Integer, testing_criteria: String } + ) + end + def to_hash + end end class ResultCounts < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Number of output items that resulted in an error. sig { returns(Integer) } attr_accessor :errored @@ -1029,9 +1244,21 @@ module OpenAI passed:, # Total number of executed output items. total: - ); end - sig { override.returns({errored: Integer, failed: Integer, passed: Integer, total: Integer}) } - def to_hash; end + ) + end + + sig do + override.returns( + { + errored: Integer, + failed: Integer, + passed: Integer, + total: Integer + } + ) + end + def to_hash + end end end end diff --git a/rbi/openai/models/evals/runs/output_item_list_params.rbi b/rbi/openai/models/evals/runs/output_item_list_params.rbi index e6931f3d..52a091de 100644 --- a/rbi/openai/models/evals/runs/output_item_list_params.rbi +++ b/rbi/openai/models/evals/runs/output_item_list_params.rbi @@ -8,6 +8,9 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + sig { returns(String) } attr_accessor :eval_id @@ -27,18 +30,39 @@ module OpenAI # Sort order for output items by timestamp. Use `asc` for ascending order or # `desc` for descending order. Defaults to `asc`. - sig { returns(T.nilable(OpenAI::Models::Evals::Runs::OutputItemListParams::Order::OrSymbol)) } + sig do + returns( + T.nilable( + OpenAI::Evals::Runs::OutputItemListParams::Order::OrSymbol + ) + ) + end attr_reader :order - sig { params(order: OpenAI::Models::Evals::Runs::OutputItemListParams::Order::OrSymbol).void } + sig do + params( + order: OpenAI::Evals::Runs::OutputItemListParams::Order::OrSymbol + ).void + end attr_writer :order # Filter output items by status. Use `failed` to filter by failed output items or # `pass` to filter by passed output items. - sig { returns(T.nilable(OpenAI::Models::Evals::Runs::OutputItemListParams::Status::OrSymbol)) } + sig do + returns( + T.nilable( + OpenAI::Evals::Runs::OutputItemListParams::Status::OrSymbol + ) + ) + end attr_reader :status - sig { params(status: OpenAI::Models::Evals::Runs::OutputItemListParams::Status::OrSymbol).void } + sig do + params( + status: + OpenAI::Evals::Runs::OutputItemListParams::Status::OrSymbol + ).void + end attr_writer :status sig do @@ -46,11 +70,11 @@ module OpenAI eval_id: String, after: String, limit: Integer, - order: OpenAI::Models::Evals::Runs::OutputItemListParams::Order::OrSymbol, - status: OpenAI::Models::Evals::Runs::OutputItemListParams::Status::OrSymbol, - request_options: T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash) - ) - .returns(T.attached_class) + order: OpenAI::Evals::Runs::OutputItemListParams::Order::OrSymbol, + status: + OpenAI::Evals::Runs::OutputItemListParams::Status::OrSymbol, + request_options: OpenAI::RequestOptions::OrHash + ).returns(T.attached_class) end def self.new( eval_id:, @@ -65,35 +89,57 @@ module OpenAI # `pass` to filter by passed output items. status: nil, request_options: {} - ); end + ) + end + sig do - override - .returns( - { - eval_id: String, - after: String, - limit: Integer, - order: OpenAI::Models::Evals::Runs::OutputItemListParams::Order::OrSymbol, - status: OpenAI::Models::Evals::Runs::OutputItemListParams::Status::OrSymbol, - request_options: OpenAI::RequestOptions - } - ) + override.returns( + { + eval_id: String, + after: String, + limit: Integer, + order: + OpenAI::Evals::Runs::OutputItemListParams::Order::OrSymbol, + status: + OpenAI::Evals::Runs::OutputItemListParams::Status::OrSymbol, + request_options: OpenAI::RequestOptions + } + ) + end + def to_hash end - def to_hash; end # Sort order for output items by timestamp. Use `asc` for ascending order or # `desc` for descending order. Defaults to `asc`. module Order extend OpenAI::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::Evals::Runs::OutputItemListParams::Order) } + TaggedSymbol = + T.type_alias do + T.all(Symbol, OpenAI::Evals::Runs::OutputItemListParams::Order) + end OrSymbol = T.type_alias { T.any(Symbol, String) } - ASC = T.let(:asc, OpenAI::Models::Evals::Runs::OutputItemListParams::Order::TaggedSymbol) - DESC = T.let(:desc, OpenAI::Models::Evals::Runs::OutputItemListParams::Order::TaggedSymbol) + ASC = + T.let( + :asc, + OpenAI::Evals::Runs::OutputItemListParams::Order::TaggedSymbol + ) + DESC = + T.let( + :desc, + OpenAI::Evals::Runs::OutputItemListParams::Order::TaggedSymbol + ) - sig { override.returns(T::Array[OpenAI::Models::Evals::Runs::OutputItemListParams::Order::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[ + OpenAI::Evals::Runs::OutputItemListParams::Order::TaggedSymbol + ] + ) + end + def self.values + end end # Filter output items by status. Use `failed` to filter by failed output items or @@ -101,14 +147,32 @@ module OpenAI module Status extend OpenAI::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::Evals::Runs::OutputItemListParams::Status) } + TaggedSymbol = + T.type_alias do + T.all(Symbol, OpenAI::Evals::Runs::OutputItemListParams::Status) + end OrSymbol = T.type_alias { T.any(Symbol, String) } - FAIL = T.let(:fail, OpenAI::Models::Evals::Runs::OutputItemListParams::Status::TaggedSymbol) - PASS = T.let(:pass, OpenAI::Models::Evals::Runs::OutputItemListParams::Status::TaggedSymbol) + FAIL = + T.let( + :fail, + OpenAI::Evals::Runs::OutputItemListParams::Status::TaggedSymbol + ) + PASS = + T.let( + :pass, + OpenAI::Evals::Runs::OutputItemListParams::Status::TaggedSymbol + ) - sig { override.returns(T::Array[OpenAI::Models::Evals::Runs::OutputItemListParams::Status::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[ + OpenAI::Evals::Runs::OutputItemListParams::Status::TaggedSymbol + ] + ) + end + def self.values + end end end end diff --git a/rbi/openai/models/evals/runs/output_item_list_response.rbi b/rbi/openai/models/evals/runs/output_item_list_response.rbi index 027b0dd3..6f5cd696 100644 --- a/rbi/openai/models/evals/runs/output_item_list_response.rbi +++ b/rbi/openai/models/evals/runs/output_item_list_response.rbi @@ -5,6 +5,9 @@ module OpenAI module Evals module Runs class OutputItemListResponse < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Unique identifier for the evaluation run output item. sig { returns(String) } attr_accessor :id @@ -38,14 +41,16 @@ module OpenAI attr_accessor :run_id # A sample containing the input and output of the evaluation run. - sig { returns(OpenAI::Models::Evals::Runs::OutputItemListResponse::Sample) } + sig do + returns(OpenAI::Models::Evals::Runs::OutputItemListResponse::Sample) + end attr_reader :sample sig do params( - sample: T.any(OpenAI::Models::Evals::Runs::OutputItemListResponse::Sample, OpenAI::Internal::AnyHash) - ) - .void + sample: + OpenAI::Models::Evals::Runs::OutputItemListResponse::Sample::OrHash + ).void end attr_writer :sample @@ -63,11 +68,11 @@ module OpenAI eval_id: String, results: T::Array[T::Hash[Symbol, T.anything]], run_id: String, - sample: T.any(OpenAI::Models::Evals::Runs::OutputItemListResponse::Sample, OpenAI::Internal::AnyHash), + sample: + OpenAI::Models::Evals::Runs::OutputItemListResponse::Sample::OrHash, status: String, object: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # Unique identifier for the evaluation run output item. @@ -90,32 +95,38 @@ module OpenAI status:, # The type of the object. Always "eval.run.output_item". object: :"eval.run.output_item" - ); end + ) + end + sig do - override - .returns( - { - id: String, - created_at: Integer, - datasource_item: T::Hash[Symbol, T.anything], - datasource_item_id: Integer, - eval_id: String, - object: Symbol, - results: T::Array[T::Hash[Symbol, T.anything]], - run_id: String, - sample: OpenAI::Models::Evals::Runs::OutputItemListResponse::Sample, - status: String - } - ) + override.returns( + { + id: String, + created_at: Integer, + datasource_item: T::Hash[Symbol, T.anything], + datasource_item_id: Integer, + eval_id: String, + object: Symbol, + results: T::Array[T::Hash[Symbol, T.anything]], + run_id: String, + sample: + OpenAI::Models::Evals::Runs::OutputItemListResponse::Sample, + status: String + } + ) + end + def to_hash end - def to_hash; end class Sample < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # An object representing an error response from the Eval API. - sig { returns(OpenAI::Models::Evals::EvalAPIError) } + sig { returns(OpenAI::Evals::EvalAPIError) } attr_reader :error - sig { params(error: T.any(OpenAI::Models::Evals::EvalAPIError, OpenAI::Internal::AnyHash)).void } + sig { params(error: OpenAI::Evals::EvalAPIError::OrHash).void } attr_writer :error # The reason why the sample generation was finished. @@ -123,7 +134,13 @@ module OpenAI attr_accessor :finish_reason # An array of input messages. - sig { returns(T::Array[OpenAI::Models::Evals::Runs::OutputItemListResponse::Sample::Input]) } + sig do + returns( + T::Array[ + OpenAI::Models::Evals::Runs::OutputItemListResponse::Sample::Input + ] + ) + end attr_accessor :input # The maximum number of tokens allowed for completion. @@ -135,7 +152,13 @@ module OpenAI attr_accessor :model # An array of output messages. - sig { returns(T::Array[OpenAI::Models::Evals::Runs::OutputItemListResponse::Sample::Output]) } + sig do + returns( + T::Array[ + OpenAI::Models::Evals::Runs::OutputItemListResponse::Sample::Output + ] + ) + end attr_accessor :output # The seed used for generating the sample. @@ -151,32 +174,42 @@ module OpenAI attr_accessor :top_p # Token usage details for the sample. - sig { returns(OpenAI::Models::Evals::Runs::OutputItemListResponse::Sample::Usage) } + sig do + returns( + OpenAI::Models::Evals::Runs::OutputItemListResponse::Sample::Usage + ) + end attr_reader :usage sig do params( - usage: T.any(OpenAI::Models::Evals::Runs::OutputItemListResponse::Sample::Usage, OpenAI::Internal::AnyHash) - ) - .void + usage: + OpenAI::Models::Evals::Runs::OutputItemListResponse::Sample::Usage::OrHash + ).void end attr_writer :usage # A sample containing the input and output of the evaluation run. sig do params( - error: T.any(OpenAI::Models::Evals::EvalAPIError, OpenAI::Internal::AnyHash), + error: OpenAI::Evals::EvalAPIError::OrHash, finish_reason: String, - input: T::Array[T.any(OpenAI::Models::Evals::Runs::OutputItemListResponse::Sample::Input, OpenAI::Internal::AnyHash)], + input: + T::Array[ + OpenAI::Models::Evals::Runs::OutputItemListResponse::Sample::Input::OrHash + ], max_completion_tokens: Integer, model: String, - output: T::Array[T.any(OpenAI::Models::Evals::Runs::OutputItemListResponse::Sample::Output, OpenAI::Internal::AnyHash)], + output: + T::Array[ + OpenAI::Models::Evals::Runs::OutputItemListResponse::Sample::Output::OrHash + ], seed: Integer, temperature: Float, top_p: Float, - usage: T.any(OpenAI::Models::Evals::Runs::OutputItemListResponse::Sample::Usage, OpenAI::Internal::AnyHash) - ) - .returns(T.attached_class) + usage: + OpenAI::Models::Evals::Runs::OutputItemListResponse::Sample::Usage::OrHash + ).returns(T.attached_class) end def self.new( # An object representing an error response from the Eval API. @@ -199,27 +232,39 @@ module OpenAI top_p:, # Token usage details for the sample. usage: - ); end + ) + end + sig do - override - .returns( - { - error: OpenAI::Models::Evals::EvalAPIError, - finish_reason: String, - input: T::Array[OpenAI::Models::Evals::Runs::OutputItemListResponse::Sample::Input], - max_completion_tokens: Integer, - model: String, - output: T::Array[OpenAI::Models::Evals::Runs::OutputItemListResponse::Sample::Output], - seed: Integer, - temperature: Float, - top_p: Float, - usage: OpenAI::Models::Evals::Runs::OutputItemListResponse::Sample::Usage - } - ) + override.returns( + { + error: OpenAI::Evals::EvalAPIError, + finish_reason: String, + input: + T::Array[ + OpenAI::Models::Evals::Runs::OutputItemListResponse::Sample::Input + ], + max_completion_tokens: Integer, + model: String, + output: + T::Array[ + OpenAI::Models::Evals::Runs::OutputItemListResponse::Sample::Output + ], + seed: Integer, + temperature: Float, + top_p: Float, + usage: + OpenAI::Models::Evals::Runs::OutputItemListResponse::Sample::Usage + } + ) + end + def to_hash end - def to_hash; end class Input < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The content of the message. sig { returns(String) } attr_accessor :content @@ -229,18 +274,26 @@ module OpenAI attr_accessor :role # An input message. - sig { params(content: String, role: String).returns(T.attached_class) } + sig do + params(content: String, role: String).returns(T.attached_class) + end def self.new( # The content of the message. content:, # The role of the message sender (e.g., system, user, developer). role: - ); end - sig { override.returns({content: String, role: String}) } - def to_hash; end + ) + end + + sig { override.returns({ content: String, role: String }) } + def to_hash + end end class Output < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The content of the message. sig { returns(T.nilable(String)) } attr_reader :content @@ -255,18 +308,26 @@ module OpenAI sig { params(role: String).void } attr_writer :role - sig { params(content: String, role: String).returns(T.attached_class) } + sig do + params(content: String, role: String).returns(T.attached_class) + end def self.new( # The content of the message. content: nil, # The role of the message (e.g. "system", "assistant", "user"). role: nil - ); end - sig { override.returns({content: String, role: String}) } - def to_hash; end + ) + end + + sig { override.returns({ content: String, role: String }) } + def to_hash + end end class Usage < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The number of tokens retrieved from cache. sig { returns(Integer) } attr_accessor :cached_tokens @@ -290,8 +351,7 @@ module OpenAI completion_tokens: Integer, prompt_tokens: Integer, total_tokens: Integer - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # The number of tokens retrieved from cache. @@ -302,19 +362,21 @@ module OpenAI prompt_tokens:, # The total number of tokens used. total_tokens: - ); end + ) + end + sig do - override - .returns( - { - cached_tokens: Integer, - completion_tokens: Integer, - prompt_tokens: Integer, - total_tokens: Integer - } - ) + override.returns( + { + cached_tokens: Integer, + completion_tokens: Integer, + prompt_tokens: Integer, + total_tokens: Integer + } + ) + end + def to_hash end - def to_hash; end end end end diff --git a/rbi/openai/models/evals/runs/output_item_retrieve_params.rbi b/rbi/openai/models/evals/runs/output_item_retrieve_params.rbi index 6a3eb80e..77adecd0 100644 --- a/rbi/openai/models/evals/runs/output_item_retrieve_params.rbi +++ b/rbi/openai/models/evals/runs/output_item_retrieve_params.rbi @@ -8,6 +8,9 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + sig { returns(String) } attr_accessor :eval_id @@ -18,14 +21,23 @@ module OpenAI params( eval_id: String, run_id: String, - request_options: T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash) - ) - .returns(T.attached_class) + request_options: OpenAI::RequestOptions::OrHash + ).returns(T.attached_class) + end + def self.new(eval_id:, run_id:, request_options: {}) end - def self.new(eval_id:, run_id:, request_options: {}); end - sig { override.returns({eval_id: String, run_id: String, request_options: OpenAI::RequestOptions}) } - def to_hash; end + sig do + override.returns( + { + eval_id: String, + run_id: String, + request_options: OpenAI::RequestOptions + } + ) + end + def to_hash + end end end end diff --git a/rbi/openai/models/evals/runs/output_item_retrieve_response.rbi b/rbi/openai/models/evals/runs/output_item_retrieve_response.rbi index 69bee6f1..2e7053a5 100644 --- a/rbi/openai/models/evals/runs/output_item_retrieve_response.rbi +++ b/rbi/openai/models/evals/runs/output_item_retrieve_response.rbi @@ -5,6 +5,9 @@ module OpenAI module Evals module Runs class OutputItemRetrieveResponse < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Unique identifier for the evaluation run output item. sig { returns(String) } attr_accessor :id @@ -38,14 +41,18 @@ module OpenAI attr_accessor :run_id # A sample containing the input and output of the evaluation run. - sig { returns(OpenAI::Models::Evals::Runs::OutputItemRetrieveResponse::Sample) } + sig do + returns( + OpenAI::Models::Evals::Runs::OutputItemRetrieveResponse::Sample + ) + end attr_reader :sample sig do params( - sample: T.any(OpenAI::Models::Evals::Runs::OutputItemRetrieveResponse::Sample, OpenAI::Internal::AnyHash) - ) - .void + sample: + OpenAI::Models::Evals::Runs::OutputItemRetrieveResponse::Sample::OrHash + ).void end attr_writer :sample @@ -63,11 +70,11 @@ module OpenAI eval_id: String, results: T::Array[T::Hash[Symbol, T.anything]], run_id: String, - sample: T.any(OpenAI::Models::Evals::Runs::OutputItemRetrieveResponse::Sample, OpenAI::Internal::AnyHash), + sample: + OpenAI::Models::Evals::Runs::OutputItemRetrieveResponse::Sample::OrHash, status: String, object: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # Unique identifier for the evaluation run output item. @@ -90,32 +97,38 @@ module OpenAI status:, # The type of the object. Always "eval.run.output_item". object: :"eval.run.output_item" - ); end + ) + end + sig do - override - .returns( - { - id: String, - created_at: Integer, - datasource_item: T::Hash[Symbol, T.anything], - datasource_item_id: Integer, - eval_id: String, - object: Symbol, - results: T::Array[T::Hash[Symbol, T.anything]], - run_id: String, - sample: OpenAI::Models::Evals::Runs::OutputItemRetrieveResponse::Sample, - status: String - } - ) + override.returns( + { + id: String, + created_at: Integer, + datasource_item: T::Hash[Symbol, T.anything], + datasource_item_id: Integer, + eval_id: String, + object: Symbol, + results: T::Array[T::Hash[Symbol, T.anything]], + run_id: String, + sample: + OpenAI::Models::Evals::Runs::OutputItemRetrieveResponse::Sample, + status: String + } + ) + end + def to_hash end - def to_hash; end class Sample < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # An object representing an error response from the Eval API. - sig { returns(OpenAI::Models::Evals::EvalAPIError) } + sig { returns(OpenAI::Evals::EvalAPIError) } attr_reader :error - sig { params(error: T.any(OpenAI::Models::Evals::EvalAPIError, OpenAI::Internal::AnyHash)).void } + sig { params(error: OpenAI::Evals::EvalAPIError::OrHash).void } attr_writer :error # The reason why the sample generation was finished. @@ -123,7 +136,13 @@ module OpenAI attr_accessor :finish_reason # An array of input messages. - sig { returns(T::Array[OpenAI::Models::Evals::Runs::OutputItemRetrieveResponse::Sample::Input]) } + sig do + returns( + T::Array[ + OpenAI::Models::Evals::Runs::OutputItemRetrieveResponse::Sample::Input + ] + ) + end attr_accessor :input # The maximum number of tokens allowed for completion. @@ -135,7 +154,13 @@ module OpenAI attr_accessor :model # An array of output messages. - sig { returns(T::Array[OpenAI::Models::Evals::Runs::OutputItemRetrieveResponse::Sample::Output]) } + sig do + returns( + T::Array[ + OpenAI::Models::Evals::Runs::OutputItemRetrieveResponse::Sample::Output + ] + ) + end attr_accessor :output # The seed used for generating the sample. @@ -151,32 +176,42 @@ module OpenAI attr_accessor :top_p # Token usage details for the sample. - sig { returns(OpenAI::Models::Evals::Runs::OutputItemRetrieveResponse::Sample::Usage) } + sig do + returns( + OpenAI::Models::Evals::Runs::OutputItemRetrieveResponse::Sample::Usage + ) + end attr_reader :usage sig do params( - usage: T.any(OpenAI::Models::Evals::Runs::OutputItemRetrieveResponse::Sample::Usage, OpenAI::Internal::AnyHash) - ) - .void + usage: + OpenAI::Models::Evals::Runs::OutputItemRetrieveResponse::Sample::Usage::OrHash + ).void end attr_writer :usage # A sample containing the input and output of the evaluation run. sig do params( - error: T.any(OpenAI::Models::Evals::EvalAPIError, OpenAI::Internal::AnyHash), + error: OpenAI::Evals::EvalAPIError::OrHash, finish_reason: String, - input: T::Array[T.any(OpenAI::Models::Evals::Runs::OutputItemRetrieveResponse::Sample::Input, OpenAI::Internal::AnyHash)], + input: + T::Array[ + OpenAI::Models::Evals::Runs::OutputItemRetrieveResponse::Sample::Input::OrHash + ], max_completion_tokens: Integer, model: String, - output: T::Array[T.any(OpenAI::Models::Evals::Runs::OutputItemRetrieveResponse::Sample::Output, OpenAI::Internal::AnyHash)], + output: + T::Array[ + OpenAI::Models::Evals::Runs::OutputItemRetrieveResponse::Sample::Output::OrHash + ], seed: Integer, temperature: Float, top_p: Float, - usage: T.any(OpenAI::Models::Evals::Runs::OutputItemRetrieveResponse::Sample::Usage, OpenAI::Internal::AnyHash) - ) - .returns(T.attached_class) + usage: + OpenAI::Models::Evals::Runs::OutputItemRetrieveResponse::Sample::Usage::OrHash + ).returns(T.attached_class) end def self.new( # An object representing an error response from the Eval API. @@ -199,27 +234,39 @@ module OpenAI top_p:, # Token usage details for the sample. usage: - ); end + ) + end + sig do - override - .returns( - { - error: OpenAI::Models::Evals::EvalAPIError, - finish_reason: String, - input: T::Array[OpenAI::Models::Evals::Runs::OutputItemRetrieveResponse::Sample::Input], - max_completion_tokens: Integer, - model: String, - output: T::Array[OpenAI::Models::Evals::Runs::OutputItemRetrieveResponse::Sample::Output], - seed: Integer, - temperature: Float, - top_p: Float, - usage: OpenAI::Models::Evals::Runs::OutputItemRetrieveResponse::Sample::Usage - } - ) + override.returns( + { + error: OpenAI::Evals::EvalAPIError, + finish_reason: String, + input: + T::Array[ + OpenAI::Models::Evals::Runs::OutputItemRetrieveResponse::Sample::Input + ], + max_completion_tokens: Integer, + model: String, + output: + T::Array[ + OpenAI::Models::Evals::Runs::OutputItemRetrieveResponse::Sample::Output + ], + seed: Integer, + temperature: Float, + top_p: Float, + usage: + OpenAI::Models::Evals::Runs::OutputItemRetrieveResponse::Sample::Usage + } + ) + end + def to_hash end - def to_hash; end class Input < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The content of the message. sig { returns(String) } attr_accessor :content @@ -229,18 +276,26 @@ module OpenAI attr_accessor :role # An input message. - sig { params(content: String, role: String).returns(T.attached_class) } + sig do + params(content: String, role: String).returns(T.attached_class) + end def self.new( # The content of the message. content:, # The role of the message sender (e.g., system, user, developer). role: - ); end - sig { override.returns({content: String, role: String}) } - def to_hash; end + ) + end + + sig { override.returns({ content: String, role: String }) } + def to_hash + end end class Output < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The content of the message. sig { returns(T.nilable(String)) } attr_reader :content @@ -255,18 +310,26 @@ module OpenAI sig { params(role: String).void } attr_writer :role - sig { params(content: String, role: String).returns(T.attached_class) } + sig do + params(content: String, role: String).returns(T.attached_class) + end def self.new( # The content of the message. content: nil, # The role of the message (e.g. "system", "assistant", "user"). role: nil - ); end - sig { override.returns({content: String, role: String}) } - def to_hash; end + ) + end + + sig { override.returns({ content: String, role: String }) } + def to_hash + end end class Usage < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The number of tokens retrieved from cache. sig { returns(Integer) } attr_accessor :cached_tokens @@ -290,8 +353,7 @@ module OpenAI completion_tokens: Integer, prompt_tokens: Integer, total_tokens: Integer - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # The number of tokens retrieved from cache. @@ -302,19 +364,21 @@ module OpenAI prompt_tokens:, # The total number of tokens used. total_tokens: - ); end + ) + end + sig do - override - .returns( - { - cached_tokens: Integer, - completion_tokens: Integer, - prompt_tokens: Integer, - total_tokens: Integer - } - ) + override.returns( + { + cached_tokens: Integer, + completion_tokens: Integer, + prompt_tokens: Integer, + total_tokens: Integer + } + ) + end + def to_hash end - def to_hash; end end end end diff --git a/rbi/openai/models/file_chunking_strategy.rbi b/rbi/openai/models/file_chunking_strategy.rbi index b05dd510..74e488c7 100644 --- a/rbi/openai/models/file_chunking_strategy.rbi +++ b/rbi/openai/models/file_chunking_strategy.rbi @@ -6,13 +6,17 @@ module OpenAI module FileChunkingStrategy extend OpenAI::Internal::Type::Union - sig do - override - .returns( - [OpenAI::Models::StaticFileChunkingStrategyObject, OpenAI::Models::OtherFileChunkingStrategyObject] + Variants = + T.type_alias do + T.any( + OpenAI::StaticFileChunkingStrategyObject, + OpenAI::OtherFileChunkingStrategyObject ) + end + + sig { override.returns(T::Array[OpenAI::FileChunkingStrategy::Variants]) } + def self.variants end - def self.variants; end end end end diff --git a/rbi/openai/models/file_chunking_strategy_param.rbi b/rbi/openai/models/file_chunking_strategy_param.rbi index ca7b56c4..d8588bdf 100644 --- a/rbi/openai/models/file_chunking_strategy_param.rbi +++ b/rbi/openai/models/file_chunking_strategy_param.rbi @@ -7,13 +7,19 @@ module OpenAI module FileChunkingStrategyParam extend OpenAI::Internal::Type::Union - sig do - override - .returns( - [OpenAI::Models::AutoFileChunkingStrategyParam, OpenAI::Models::StaticFileChunkingStrategyObjectParam] + Variants = + T.type_alias do + T.any( + OpenAI::AutoFileChunkingStrategyParam, + OpenAI::StaticFileChunkingStrategyObjectParam ) + end + + sig do + override.returns(T::Array[OpenAI::FileChunkingStrategyParam::Variants]) + end + def self.variants end - def self.variants; end end end end diff --git a/rbi/openai/models/file_content_params.rbi b/rbi/openai/models/file_content_params.rbi index 97fa8439..4790429d 100644 --- a/rbi/openai/models/file_content_params.rbi +++ b/rbi/openai/models/file_content_params.rbi @@ -6,18 +6,19 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + sig do - params( - request_options: T.any( - OpenAI::RequestOptions, - OpenAI::Internal::AnyHash - ) - ).returns(T.attached_class) + params(request_options: OpenAI::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: OpenAI::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: OpenAI::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/openai/models/file_create_params.rbi b/rbi/openai/models/file_create_params.rbi index 675c3c74..db0074ca 100644 --- a/rbi/openai/models/file_create_params.rbi +++ b/rbi/openai/models/file_create_params.rbi @@ -6,6 +6,8 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The File object (not file name) to be uploaded. sig { returns(T.any(Pathname, StringIO, IO, OpenAI::FilePart)) } attr_accessor :file @@ -14,16 +16,15 @@ module OpenAI # Assistants API - `batch`: Used in the Batch API - `fine-tune`: Used for # fine-tuning - `vision`: Images used for vision fine-tuning - `user_data`: # Flexible file type for any purpose - `evals`: Used for eval data sets - sig { returns(OpenAI::Models::FilePurpose::OrSymbol) } + sig { returns(OpenAI::FilePurpose::OrSymbol) } attr_accessor :purpose sig do params( file: T.any(Pathname, StringIO, IO, OpenAI::FilePart), - purpose: OpenAI::Models::FilePurpose::OrSymbol, - request_options: T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash) - ) - .returns(T.attached_class) + purpose: OpenAI::FilePurpose::OrSymbol, + request_options: OpenAI::RequestOptions::OrHash + ).returns(T.attached_class) end def self.new( # The File object (not file name) to be uploaded. @@ -34,18 +35,20 @@ module OpenAI # Flexible file type for any purpose - `evals`: Used for eval data sets purpose:, request_options: {} - ); end + ) + end + sig do - override - .returns( - { - file: T.any(Pathname, StringIO, IO, OpenAI::FilePart), - purpose: OpenAI::Models::FilePurpose::OrSymbol, - request_options: OpenAI::RequestOptions - } - ) + override.returns( + { + file: T.any(Pathname, StringIO, IO, OpenAI::FilePart), + purpose: OpenAI::FilePurpose::OrSymbol, + request_options: OpenAI::RequestOptions + } + ) + end + def to_hash end - def to_hash; end end end end diff --git a/rbi/openai/models/file_delete_params.rbi b/rbi/openai/models/file_delete_params.rbi index 2d359dc0..32e8c812 100644 --- a/rbi/openai/models/file_delete_params.rbi +++ b/rbi/openai/models/file_delete_params.rbi @@ -6,18 +6,19 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + sig do - params( - request_options: T.any( - OpenAI::RequestOptions, - OpenAI::Internal::AnyHash - ) - ).returns(T.attached_class) + params(request_options: OpenAI::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: OpenAI::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: OpenAI::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/openai/models/file_deleted.rbi b/rbi/openai/models/file_deleted.rbi index 60dd5163..afff0670 100644 --- a/rbi/openai/models/file_deleted.rbi +++ b/rbi/openai/models/file_deleted.rbi @@ -3,6 +3,8 @@ module OpenAI module Models class FileDeleted < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + sig { returns(String) } attr_accessor :id @@ -12,11 +14,19 @@ module OpenAI sig { returns(Symbol) } attr_accessor :object - sig { params(id: String, deleted: T::Boolean, object: Symbol).returns(T.attached_class) } - def self.new(id:, deleted:, object: :file); end + sig do + params(id: String, deleted: T::Boolean, object: Symbol).returns( + T.attached_class + ) + end + def self.new(id:, deleted:, object: :file) + end - sig { override.returns({id: String, deleted: T::Boolean, object: Symbol}) } - def to_hash; end + sig do + override.returns({ id: String, deleted: T::Boolean, object: Symbol }) + end + def to_hash + end end end end diff --git a/rbi/openai/models/file_list_params.rbi b/rbi/openai/models/file_list_params.rbi index b33289b5..03836c50 100644 --- a/rbi/openai/models/file_list_params.rbi +++ b/rbi/openai/models/file_list_params.rbi @@ -6,6 +6,8 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # A cursor for use in pagination. `after` is an object ID that defines your place # in the list. For instance, if you make a list request and receive 100 objects, # ending with obj_foo, your subsequent call can include after=obj_foo in order to @@ -26,10 +28,10 @@ module OpenAI # Sort order by the `created_at` timestamp of the objects. `asc` for ascending # order and `desc` for descending order. - sig { returns(T.nilable(OpenAI::Models::FileListParams::Order::OrSymbol)) } + sig { returns(T.nilable(OpenAI::FileListParams::Order::OrSymbol)) } attr_reader :order - sig { params(order: OpenAI::Models::FileListParams::Order::OrSymbol).void } + sig { params(order: OpenAI::FileListParams::Order::OrSymbol).void } attr_writer :order # Only return files with the given purpose. @@ -43,11 +45,10 @@ module OpenAI params( after: String, limit: Integer, - order: OpenAI::Models::FileListParams::Order::OrSymbol, + order: OpenAI::FileListParams::Order::OrSymbol, purpose: String, - request_options: T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash) - ) - .returns(T.attached_class) + request_options: OpenAI::RequestOptions::OrHash + ).returns(T.attached_class) end def self.new( # A cursor for use in pagination. `after` is an object ID that defines your place @@ -64,34 +65,42 @@ module OpenAI # Only return files with the given purpose. purpose: nil, request_options: {} - ); end + ) + end + sig do - override - .returns( - { - after: String, - limit: Integer, - order: OpenAI::Models::FileListParams::Order::OrSymbol, - purpose: String, - request_options: OpenAI::RequestOptions - } - ) + override.returns( + { + after: String, + limit: Integer, + order: OpenAI::FileListParams::Order::OrSymbol, + purpose: String, + request_options: OpenAI::RequestOptions + } + ) + end + def to_hash end - def to_hash; end # Sort order by the `created_at` timestamp of the objects. `asc` for ascending # order and `desc` for descending order. module Order extend OpenAI::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::FileListParams::Order) } + TaggedSymbol = + T.type_alias { T.all(Symbol, OpenAI::FileListParams::Order) } OrSymbol = T.type_alias { T.any(Symbol, String) } - ASC = T.let(:asc, OpenAI::Models::FileListParams::Order::TaggedSymbol) - DESC = T.let(:desc, OpenAI::Models::FileListParams::Order::TaggedSymbol) + ASC = T.let(:asc, OpenAI::FileListParams::Order::TaggedSymbol) + DESC = T.let(:desc, OpenAI::FileListParams::Order::TaggedSymbol) - sig { override.returns(T::Array[OpenAI::Models::FileListParams::Order::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[OpenAI::FileListParams::Order::TaggedSymbol] + ) + end + def self.values + end end end end diff --git a/rbi/openai/models/file_object.rbi b/rbi/openai/models/file_object.rbi index af7989d6..829cee09 100644 --- a/rbi/openai/models/file_object.rbi +++ b/rbi/openai/models/file_object.rbi @@ -3,6 +3,8 @@ module OpenAI module Models class FileObject < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The file identifier, which can be referenced in the API endpoints. sig { returns(String) } attr_accessor :id @@ -26,12 +28,12 @@ module OpenAI # The intended purpose of the file. Supported values are `assistants`, # `assistants_output`, `batch`, `batch_output`, `fine-tune`, `fine-tune-results` # and `vision`. - sig { returns(OpenAI::Models::FileObject::Purpose::TaggedSymbol) } + sig { returns(OpenAI::FileObject::Purpose::TaggedSymbol) } attr_accessor :purpose # Deprecated. The current status of the file, which can be either `uploaded`, # `processed`, or `error`. - sig { returns(OpenAI::Models::FileObject::Status::TaggedSymbol) } + sig { returns(OpenAI::FileObject::Status::TaggedSymbol) } attr_accessor :status # The Unix timestamp (in seconds) for when the file will expire. @@ -56,13 +58,12 @@ module OpenAI bytes: Integer, created_at: Integer, filename: String, - purpose: OpenAI::Models::FileObject::Purpose::OrSymbol, - status: OpenAI::Models::FileObject::Status::OrSymbol, + purpose: OpenAI::FileObject::Purpose::OrSymbol, + status: OpenAI::FileObject::Status::OrSymbol, expires_at: Integer, status_details: String, object: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # The file identifier, which can be referenced in the API endpoints. @@ -87,24 +88,26 @@ module OpenAI status_details: nil, # The object type, which is always `file`. object: :file - ); end + ) + end + sig do - override - .returns( - { - id: String, - bytes: Integer, - created_at: Integer, - filename: String, - object: Symbol, - purpose: OpenAI::Models::FileObject::Purpose::TaggedSymbol, - status: OpenAI::Models::FileObject::Status::TaggedSymbol, - expires_at: Integer, - status_details: String - } - ) + override.returns( + { + id: String, + bytes: Integer, + created_at: Integer, + filename: String, + object: Symbol, + purpose: OpenAI::FileObject::Purpose::TaggedSymbol, + status: OpenAI::FileObject::Status::TaggedSymbol, + expires_at: Integer, + status_details: String + } + ) + end + def to_hash end - def to_hash; end # The intended purpose of the file. Supported values are `assistants`, # `assistants_output`, `batch`, `batch_output`, `fine-tune`, `fine-tune-results` @@ -112,19 +115,28 @@ module OpenAI module Purpose extend OpenAI::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::FileObject::Purpose) } + TaggedSymbol = + T.type_alias { T.all(Symbol, OpenAI::FileObject::Purpose) } OrSymbol = T.type_alias { T.any(Symbol, String) } - ASSISTANTS = T.let(:assistants, OpenAI::Models::FileObject::Purpose::TaggedSymbol) - ASSISTANTS_OUTPUT = T.let(:assistants_output, OpenAI::Models::FileObject::Purpose::TaggedSymbol) - BATCH = T.let(:batch, OpenAI::Models::FileObject::Purpose::TaggedSymbol) - BATCH_OUTPUT = T.let(:batch_output, OpenAI::Models::FileObject::Purpose::TaggedSymbol) - FINE_TUNE = T.let(:"fine-tune", OpenAI::Models::FileObject::Purpose::TaggedSymbol) - FINE_TUNE_RESULTS = T.let(:"fine-tune-results", OpenAI::Models::FileObject::Purpose::TaggedSymbol) - VISION = T.let(:vision, OpenAI::Models::FileObject::Purpose::TaggedSymbol) - - sig { override.returns(T::Array[OpenAI::Models::FileObject::Purpose::TaggedSymbol]) } - def self.values; end + ASSISTANTS = + T.let(:assistants, OpenAI::FileObject::Purpose::TaggedSymbol) + ASSISTANTS_OUTPUT = + T.let(:assistants_output, OpenAI::FileObject::Purpose::TaggedSymbol) + BATCH = T.let(:batch, OpenAI::FileObject::Purpose::TaggedSymbol) + BATCH_OUTPUT = + T.let(:batch_output, OpenAI::FileObject::Purpose::TaggedSymbol) + FINE_TUNE = + T.let(:"fine-tune", OpenAI::FileObject::Purpose::TaggedSymbol) + FINE_TUNE_RESULTS = + T.let(:"fine-tune-results", OpenAI::FileObject::Purpose::TaggedSymbol) + VISION = T.let(:vision, OpenAI::FileObject::Purpose::TaggedSymbol) + + sig do + override.returns(T::Array[OpenAI::FileObject::Purpose::TaggedSymbol]) + end + def self.values + end end # Deprecated. The current status of the file, which can be either `uploaded`, @@ -132,15 +144,19 @@ module OpenAI module Status extend OpenAI::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::FileObject::Status) } + TaggedSymbol = + T.type_alias { T.all(Symbol, OpenAI::FileObject::Status) } OrSymbol = T.type_alias { T.any(Symbol, String) } - UPLOADED = T.let(:uploaded, OpenAI::Models::FileObject::Status::TaggedSymbol) - PROCESSED = T.let(:processed, OpenAI::Models::FileObject::Status::TaggedSymbol) - ERROR = T.let(:error, OpenAI::Models::FileObject::Status::TaggedSymbol) + UPLOADED = T.let(:uploaded, OpenAI::FileObject::Status::TaggedSymbol) + PROCESSED = T.let(:processed, OpenAI::FileObject::Status::TaggedSymbol) + ERROR = T.let(:error, OpenAI::FileObject::Status::TaggedSymbol) - sig { override.returns(T::Array[OpenAI::Models::FileObject::Status::TaggedSymbol]) } - def self.values; end + sig do + override.returns(T::Array[OpenAI::FileObject::Status::TaggedSymbol]) + end + def self.values + end end end end diff --git a/rbi/openai/models/file_purpose.rbi b/rbi/openai/models/file_purpose.rbi index 7d3a2d58..6b9af2cd 100644 --- a/rbi/openai/models/file_purpose.rbi +++ b/rbi/openai/models/file_purpose.rbi @@ -9,18 +9,19 @@ module OpenAI module FilePurpose extend OpenAI::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::FilePurpose) } + TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::FilePurpose) } OrSymbol = T.type_alias { T.any(Symbol, String) } - ASSISTANTS = T.let(:assistants, OpenAI::Models::FilePurpose::TaggedSymbol) - BATCH = T.let(:batch, OpenAI::Models::FilePurpose::TaggedSymbol) - FINE_TUNE = T.let(:"fine-tune", OpenAI::Models::FilePurpose::TaggedSymbol) - VISION = T.let(:vision, OpenAI::Models::FilePurpose::TaggedSymbol) - USER_DATA = T.let(:user_data, OpenAI::Models::FilePurpose::TaggedSymbol) - EVALS = T.let(:evals, OpenAI::Models::FilePurpose::TaggedSymbol) + ASSISTANTS = T.let(:assistants, OpenAI::FilePurpose::TaggedSymbol) + BATCH = T.let(:batch, OpenAI::FilePurpose::TaggedSymbol) + FINE_TUNE = T.let(:"fine-tune", OpenAI::FilePurpose::TaggedSymbol) + VISION = T.let(:vision, OpenAI::FilePurpose::TaggedSymbol) + USER_DATA = T.let(:user_data, OpenAI::FilePurpose::TaggedSymbol) + EVALS = T.let(:evals, OpenAI::FilePurpose::TaggedSymbol) - sig { override.returns(T::Array[OpenAI::Models::FilePurpose::TaggedSymbol]) } - def self.values; end + sig { override.returns(T::Array[OpenAI::FilePurpose::TaggedSymbol]) } + def self.values + end end end end diff --git a/rbi/openai/models/file_retrieve_params.rbi b/rbi/openai/models/file_retrieve_params.rbi index 90bf8337..ed8a974f 100644 --- a/rbi/openai/models/file_retrieve_params.rbi +++ b/rbi/openai/models/file_retrieve_params.rbi @@ -6,18 +6,19 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + sig do - params( - request_options: T.any( - OpenAI::RequestOptions, - OpenAI::Internal::AnyHash - ) - ).returns(T.attached_class) + params(request_options: OpenAI::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: OpenAI::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: OpenAI::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/openai/models/fine_tuning/checkpoints/permission_create_params.rbi b/rbi/openai/models/fine_tuning/checkpoints/permission_create_params.rbi index b8e4f73d..bb260bea 100644 --- a/rbi/openai/models/fine_tuning/checkpoints/permission_create_params.rbi +++ b/rbi/openai/models/fine_tuning/checkpoints/permission_create_params.rbi @@ -8,6 +8,9 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The project identifiers to grant access to. sig { returns(T::Array[String]) } attr_accessor :project_ids @@ -15,17 +18,26 @@ module OpenAI sig do params( project_ids: T::Array[String], - request_options: T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash) - ) - .returns(T.attached_class) + request_options: OpenAI::RequestOptions::OrHash + ).returns(T.attached_class) end def self.new( # The project identifiers to grant access to. project_ids:, request_options: {} - ); end - sig { override.returns({project_ids: T::Array[String], request_options: OpenAI::RequestOptions}) } - def to_hash; end + ) + end + + sig do + override.returns( + { + project_ids: T::Array[String], + request_options: OpenAI::RequestOptions + } + ) + end + def to_hash + end end end end diff --git a/rbi/openai/models/fine_tuning/checkpoints/permission_create_response.rbi b/rbi/openai/models/fine_tuning/checkpoints/permission_create_response.rbi index 6dadadac..c17f2d89 100644 --- a/rbi/openai/models/fine_tuning/checkpoints/permission_create_response.rbi +++ b/rbi/openai/models/fine_tuning/checkpoints/permission_create_response.rbi @@ -5,6 +5,9 @@ module OpenAI module FineTuning module Checkpoints class PermissionCreateResponse < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The permission identifier, which can be referenced in the API endpoints. sig { returns(String) } attr_accessor :id @@ -40,9 +43,21 @@ module OpenAI project_id:, # The object type, which is always "checkpoint.permission". object: :"checkpoint.permission" - ); end - sig { override.returns({id: String, created_at: Integer, object: Symbol, project_id: String}) } - def to_hash; end + ) + end + + sig do + override.returns( + { + id: String, + created_at: Integer, + object: Symbol, + project_id: String + } + ) + end + def to_hash + end end end end diff --git a/rbi/openai/models/fine_tuning/checkpoints/permission_delete_params.rbi b/rbi/openai/models/fine_tuning/checkpoints/permission_delete_params.rbi index b762881f..0be64531 100644 --- a/rbi/openai/models/fine_tuning/checkpoints/permission_delete_params.rbi +++ b/rbi/openai/models/fine_tuning/checkpoints/permission_delete_params.rbi @@ -8,22 +8,31 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + sig { returns(String) } attr_accessor :fine_tuned_model_checkpoint sig do params( fine_tuned_model_checkpoint: String, - request_options: T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash) - ) - .returns(T.attached_class) + request_options: OpenAI::RequestOptions::OrHash + ).returns(T.attached_class) + end + def self.new(fine_tuned_model_checkpoint:, request_options: {}) end - def self.new(fine_tuned_model_checkpoint:, request_options: {}); end sig do - override.returns({fine_tuned_model_checkpoint: String, request_options: OpenAI::RequestOptions}) + override.returns( + { + fine_tuned_model_checkpoint: String, + request_options: OpenAI::RequestOptions + } + ) + end + def to_hash end - def to_hash; end end end end diff --git a/rbi/openai/models/fine_tuning/checkpoints/permission_delete_response.rbi b/rbi/openai/models/fine_tuning/checkpoints/permission_delete_response.rbi index 6bc5d73b..f84b6fea 100644 --- a/rbi/openai/models/fine_tuning/checkpoints/permission_delete_response.rbi +++ b/rbi/openai/models/fine_tuning/checkpoints/permission_delete_response.rbi @@ -5,6 +5,9 @@ module OpenAI module FineTuning module Checkpoints class PermissionDeleteResponse < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The ID of the fine-tuned model checkpoint permission that was deleted. sig { returns(String) } attr_accessor :id @@ -17,7 +20,11 @@ module OpenAI sig { returns(Symbol) } attr_accessor :object - sig { params(id: String, deleted: T::Boolean, object: Symbol).returns(T.attached_class) } + sig do + params(id: String, deleted: T::Boolean, object: Symbol).returns( + T.attached_class + ) + end def self.new( # The ID of the fine-tuned model checkpoint permission that was deleted. id:, @@ -25,9 +32,16 @@ module OpenAI deleted:, # The object type, which is always "checkpoint.permission". object: :"checkpoint.permission" - ); end - sig { override.returns({id: String, deleted: T::Boolean, object: Symbol}) } - def to_hash; end + ) + end + + sig do + override.returns( + { id: String, deleted: T::Boolean, object: Symbol } + ) + end + def to_hash + end end end end diff --git a/rbi/openai/models/fine_tuning/checkpoints/permission_retrieve_params.rbi b/rbi/openai/models/fine_tuning/checkpoints/permission_retrieve_params.rbi index 04da40a3..84601eba 100644 --- a/rbi/openai/models/fine_tuning/checkpoints/permission_retrieve_params.rbi +++ b/rbi/openai/models/fine_tuning/checkpoints/permission_retrieve_params.rbi @@ -8,6 +8,9 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Identifier for the last permission ID from the previous pagination request. sig { returns(T.nilable(String)) } attr_reader :after @@ -23,10 +26,21 @@ module OpenAI attr_writer :limit # The order in which to retrieve permissions. - sig { returns(T.nilable(OpenAI::Models::FineTuning::Checkpoints::PermissionRetrieveParams::Order::OrSymbol)) } + sig do + returns( + T.nilable( + OpenAI::FineTuning::Checkpoints::PermissionRetrieveParams::Order::OrSymbol + ) + ) + end attr_reader :order - sig { params(order: OpenAI::Models::FineTuning::Checkpoints::PermissionRetrieveParams::Order::OrSymbol).void } + sig do + params( + order: + OpenAI::FineTuning::Checkpoints::PermissionRetrieveParams::Order::OrSymbol + ).void + end attr_writer :order # The ID of the project to get permissions for. @@ -40,11 +54,11 @@ module OpenAI params( after: String, limit: Integer, - order: OpenAI::Models::FineTuning::Checkpoints::PermissionRetrieveParams::Order::OrSymbol, + order: + OpenAI::FineTuning::Checkpoints::PermissionRetrieveParams::Order::OrSymbol, project_id: String, - request_options: T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash) - ) - .returns(T.attached_class) + request_options: OpenAI::RequestOptions::OrHash + ).returns(T.attached_class) end def self.new( # Identifier for the last permission ID from the previous pagination request. @@ -56,39 +70,57 @@ module OpenAI # The ID of the project to get permissions for. project_id: nil, request_options: {} - ); end + ) + end + sig do - override - .returns( - { - after: String, - limit: Integer, - order: OpenAI::Models::FineTuning::Checkpoints::PermissionRetrieveParams::Order::OrSymbol, - project_id: String, - request_options: OpenAI::RequestOptions - } - ) + override.returns( + { + after: String, + limit: Integer, + order: + OpenAI::FineTuning::Checkpoints::PermissionRetrieveParams::Order::OrSymbol, + project_id: String, + request_options: OpenAI::RequestOptions + } + ) + end + def to_hash end - def to_hash; end # The order in which to retrieve permissions. module Order extend OpenAI::Internal::Type::Enum TaggedSymbol = - T.type_alias { T.all(Symbol, OpenAI::Models::FineTuning::Checkpoints::PermissionRetrieveParams::Order) } + T.type_alias do + T.all( + Symbol, + OpenAI::FineTuning::Checkpoints::PermissionRetrieveParams::Order + ) + end OrSymbol = T.type_alias { T.any(Symbol, String) } ASCENDING = - T.let(:ascending, OpenAI::Models::FineTuning::Checkpoints::PermissionRetrieveParams::Order::TaggedSymbol) + T.let( + :ascending, + OpenAI::FineTuning::Checkpoints::PermissionRetrieveParams::Order::TaggedSymbol + ) DESCENDING = - T.let(:descending, OpenAI::Models::FineTuning::Checkpoints::PermissionRetrieveParams::Order::TaggedSymbol) + T.let( + :descending, + OpenAI::FineTuning::Checkpoints::PermissionRetrieveParams::Order::TaggedSymbol + ) sig do - override - .returns(T::Array[OpenAI::Models::FineTuning::Checkpoints::PermissionRetrieveParams::Order::TaggedSymbol]) + override.returns( + T::Array[ + OpenAI::FineTuning::Checkpoints::PermissionRetrieveParams::Order::TaggedSymbol + ] + ) + end + def self.values end - def self.values; end end end end diff --git a/rbi/openai/models/fine_tuning/checkpoints/permission_retrieve_response.rbi b/rbi/openai/models/fine_tuning/checkpoints/permission_retrieve_response.rbi index 95aa5332..3c65d481 100644 --- a/rbi/openai/models/fine_tuning/checkpoints/permission_retrieve_response.rbi +++ b/rbi/openai/models/fine_tuning/checkpoints/permission_retrieve_response.rbi @@ -5,7 +5,16 @@ module OpenAI module FineTuning module Checkpoints class PermissionRetrieveResponse < OpenAI::Internal::Type::BaseModel - sig { returns(T::Array[OpenAI::Models::FineTuning::Checkpoints::PermissionRetrieveResponse::Data]) } + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + + sig do + returns( + T::Array[ + OpenAI::Models::FineTuning::Checkpoints::PermissionRetrieveResponse::Data + ] + ) + end attr_accessor :data sig { returns(T::Boolean) } @@ -22,36 +31,46 @@ module OpenAI sig do params( - data: T::Array[ - T.any( - OpenAI::Models::FineTuning::Checkpoints::PermissionRetrieveResponse::Data, - OpenAI::Internal::AnyHash - ) - ], + data: + T::Array[ + OpenAI::Models::FineTuning::Checkpoints::PermissionRetrieveResponse::Data::OrHash + ], has_more: T::Boolean, first_id: T.nilable(String), last_id: T.nilable(String), object: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) + end + def self.new( + data:, + has_more:, + first_id: nil, + last_id: nil, + object: :list + ) end - def self.new(data:, has_more:, first_id: nil, last_id: nil, object: :list); end sig do - override - .returns( - { - data: T::Array[OpenAI::Models::FineTuning::Checkpoints::PermissionRetrieveResponse::Data], - has_more: T::Boolean, - object: Symbol, - first_id: T.nilable(String), - last_id: T.nilable(String) - } - ) + override.returns( + { + data: + T::Array[ + OpenAI::Models::FineTuning::Checkpoints::PermissionRetrieveResponse::Data + ], + has_more: T::Boolean, + object: Symbol, + first_id: T.nilable(String), + last_id: T.nilable(String) + } + ) + end + def to_hash end - def to_hash; end class Data < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The permission identifier, which can be referenced in the API endpoints. sig { returns(String) } attr_accessor :id @@ -87,9 +106,21 @@ module OpenAI project_id:, # The object type, which is always "checkpoint.permission". object: :"checkpoint.permission" - ); end - sig { override.returns({id: String, created_at: Integer, object: Symbol, project_id: String}) } - def to_hash; end + ) + end + + sig do + override.returns( + { + id: String, + created_at: Integer, + object: Symbol, + project_id: String + } + ) + end + def to_hash + end end end end diff --git a/rbi/openai/models/fine_tuning/fine_tuning_job.rbi b/rbi/openai/models/fine_tuning/fine_tuning_job.rbi index 3036f3a4..ccd100af 100644 --- a/rbi/openai/models/fine_tuning/fine_tuning_job.rbi +++ b/rbi/openai/models/fine_tuning/fine_tuning_job.rbi @@ -6,6 +6,8 @@ module OpenAI module FineTuning class FineTuningJob < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The object identifier, which can be referenced in the API endpoints. sig { returns(String) } attr_accessor :id @@ -16,14 +18,13 @@ module OpenAI # For fine-tuning jobs that have `failed`, this will contain more information on # the cause of the failure. - sig { returns(T.nilable(OpenAI::Models::FineTuning::FineTuningJob::Error)) } + sig { returns(T.nilable(OpenAI::FineTuning::FineTuningJob::Error)) } attr_reader :error sig do params( - error: T.nilable(T.any(OpenAI::Models::FineTuning::FineTuningJob::Error, OpenAI::Internal::AnyHash)) - ) - .void + error: T.nilable(OpenAI::FineTuning::FineTuningJob::Error::OrHash) + ).void end attr_writer :error @@ -39,14 +40,14 @@ module OpenAI # The hyperparameters used for the fine-tuning job. This value will only be # returned when running `supervised` jobs. - sig { returns(OpenAI::Models::FineTuning::FineTuningJob::Hyperparameters) } + sig { returns(OpenAI::FineTuning::FineTuningJob::Hyperparameters) } attr_reader :hyperparameters sig do params( - hyperparameters: T.any(OpenAI::Models::FineTuning::FineTuningJob::Hyperparameters, OpenAI::Internal::AnyHash) - ) - .void + hyperparameters: + OpenAI::FineTuning::FineTuningJob::Hyperparameters::OrHash + ).void end attr_writer :hyperparameters @@ -74,7 +75,7 @@ module OpenAI # The current status of the fine-tuning job, which can be either # `validating_files`, `queued`, `running`, `succeeded`, `failed`, or `cancelled`. - sig { returns(OpenAI::Models::FineTuning::FineTuningJob::Status::TaggedSymbol) } + sig { returns(OpenAI::FineTuning::FineTuningJob::Status::TaggedSymbol) } attr_accessor :status # The total number of billable tokens processed by this fine-tuning job. The value @@ -99,7 +100,13 @@ module OpenAI attr_accessor :estimated_finish # A list of integrations to enable for this fine-tuning job. - sig { returns(T.nilable(T::Array[OpenAI::Models::FineTuning::FineTuningJobWandbIntegrationObject])) } + sig do + returns( + T.nilable( + T::Array[OpenAI::FineTuning::FineTuningJobWandbIntegrationObject] + ) + ) + end attr_accessor :integrations # Set of 16 key-value pairs that can be attached to an object. This can be useful @@ -112,10 +119,14 @@ module OpenAI attr_accessor :metadata # The method used for fine-tuning. - sig { returns(T.nilable(OpenAI::Models::FineTuning::FineTuningJob::Method)) } + sig { returns(T.nilable(OpenAI::FineTuning::FineTuningJob::Method)) } attr_reader :method_ - sig { params(method_: T.any(OpenAI::Models::FineTuning::FineTuningJob::Method, OpenAI::Internal::AnyHash)).void } + sig do + params( + method_: OpenAI::FineTuning::FineTuningJob::Method::OrHash + ).void + end attr_writer :method_ # The `fine_tuning.job` object represents a fine-tuning job that has been created @@ -124,27 +135,30 @@ module OpenAI params( id: String, created_at: Integer, - error: T.nilable(T.any(OpenAI::Models::FineTuning::FineTuningJob::Error, OpenAI::Internal::AnyHash)), + error: T.nilable(OpenAI::FineTuning::FineTuningJob::Error::OrHash), fine_tuned_model: T.nilable(String), finished_at: T.nilable(Integer), - hyperparameters: T.any(OpenAI::Models::FineTuning::FineTuningJob::Hyperparameters, OpenAI::Internal::AnyHash), + hyperparameters: + OpenAI::FineTuning::FineTuningJob::Hyperparameters::OrHash, model: String, organization_id: String, result_files: T::Array[String], seed: Integer, - status: OpenAI::Models::FineTuning::FineTuningJob::Status::OrSymbol, + status: OpenAI::FineTuning::FineTuningJob::Status::OrSymbol, trained_tokens: T.nilable(Integer), training_file: String, validation_file: T.nilable(String), estimated_finish: T.nilable(Integer), - integrations: T.nilable( - T::Array[T.any(OpenAI::Models::FineTuning::FineTuningJobWandbIntegrationObject, OpenAI::Internal::AnyHash)] - ), + integrations: + T.nilable( + T::Array[ + OpenAI::FineTuning::FineTuningJobWandbIntegrationObject::OrHash + ] + ), metadata: T.nilable(T::Hash[Symbol, String]), - method_: T.any(OpenAI::Models::FineTuning::FineTuningJob::Method, OpenAI::Internal::AnyHash), + method_: OpenAI::FineTuning::FineTuningJob::Method::OrHash, object: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # The object identifier, which can be referenced in the API endpoints. @@ -202,36 +216,47 @@ module OpenAI method_: nil, # The object type, which is always "fine_tuning.job". object: :"fine_tuning.job" - ); end + ) + end + sig do - override - .returns( - { - id: String, - created_at: Integer, - error: T.nilable(OpenAI::Models::FineTuning::FineTuningJob::Error), - fine_tuned_model: T.nilable(String), - finished_at: T.nilable(Integer), - hyperparameters: OpenAI::Models::FineTuning::FineTuningJob::Hyperparameters, - model: String, - object: Symbol, - organization_id: String, - result_files: T::Array[String], - seed: Integer, - status: OpenAI::Models::FineTuning::FineTuningJob::Status::TaggedSymbol, - trained_tokens: T.nilable(Integer), - training_file: String, - validation_file: T.nilable(String), - estimated_finish: T.nilable(Integer), - integrations: T.nilable(T::Array[OpenAI::Models::FineTuning::FineTuningJobWandbIntegrationObject]), - metadata: T.nilable(T::Hash[Symbol, String]), - method_: OpenAI::Models::FineTuning::FineTuningJob::Method - } - ) + override.returns( + { + id: String, + created_at: Integer, + error: T.nilable(OpenAI::FineTuning::FineTuningJob::Error), + fine_tuned_model: T.nilable(String), + finished_at: T.nilable(Integer), + hyperparameters: + OpenAI::FineTuning::FineTuningJob::Hyperparameters, + model: String, + object: Symbol, + organization_id: String, + result_files: T::Array[String], + seed: Integer, + status: OpenAI::FineTuning::FineTuningJob::Status::TaggedSymbol, + trained_tokens: T.nilable(Integer), + training_file: String, + validation_file: T.nilable(String), + estimated_finish: T.nilable(Integer), + integrations: + T.nilable( + T::Array[ + OpenAI::FineTuning::FineTuningJobWandbIntegrationObject + ] + ), + metadata: T.nilable(T::Hash[Symbol, String]), + method_: OpenAI::FineTuning::FineTuningJob::Method + } + ) + end + def to_hash end - def to_hash; end class Error < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # A machine-readable error code. sig { returns(String) } attr_accessor :code @@ -247,7 +272,13 @@ module OpenAI # For fine-tuning jobs that have `failed`, this will contain more information on # the cause of the failure. - sig { params(code: String, message: String, param: T.nilable(String)).returns(T.attached_class) } + sig do + params( + code: String, + message: String, + param: T.nilable(String) + ).returns(T.attached_class) + end def self.new( # A machine-readable error code. code:, @@ -256,12 +287,22 @@ module OpenAI # The parameter that was invalid, usually `training_file` or `validation_file`. # This field will be null if the failure was not parameter-specific. param: - ); end - sig { override.returns({code: String, message: String, param: T.nilable(String)}) } - def to_hash; end + ) + end + + sig do + override.returns( + { code: String, message: String, param: T.nilable(String) } + ) + end + def to_hash + end end class Hyperparameters < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Number of examples in each batch. A larger batch size means that model # parameters are updated less frequently, but with lower variance. sig { returns(T.nilable(T.any(Symbol, Integer))) } @@ -293,8 +334,7 @@ module OpenAI batch_size: T.any(Symbol, Integer), learning_rate_multiplier: T.any(Symbol, Float), n_epochs: T.any(Symbol, Integer) - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # Number of examples in each batch. A larger batch size means that model @@ -306,26 +346,37 @@ module OpenAI # The number of epochs to train the model for. An epoch refers to one full cycle # through the training dataset. n_epochs: nil - ); end + ) + end + sig do - override - .returns( - { - batch_size: T.any(Symbol, Integer), - learning_rate_multiplier: T.any(Symbol, Float), - n_epochs: T.any(Symbol, Integer) - } - ) + override.returns( + { + batch_size: T.any(Symbol, Integer), + learning_rate_multiplier: T.any(Symbol, Float), + n_epochs: T.any(Symbol, Integer) + } + ) + end + def to_hash end - def to_hash; end # Number of examples in each batch. A larger batch size means that model # parameters are updated less frequently, but with lower variance. module BatchSize extend OpenAI::Internal::Type::Union - sig { override.returns([Symbol, Integer]) } - def self.variants; end + Variants = T.type_alias { T.any(Symbol, Integer) } + + sig do + override.returns( + T::Array[ + OpenAI::FineTuning::FineTuningJob::Hyperparameters::BatchSize::Variants + ] + ) + end + def self.variants + end end # Scaling factor for the learning rate. A smaller learning rate may be useful to @@ -333,8 +384,17 @@ module OpenAI module LearningRateMultiplier extend OpenAI::Internal::Type::Union - sig { override.returns([Symbol, Float]) } - def self.variants; end + Variants = T.type_alias { T.any(Symbol, Float) } + + sig do + override.returns( + T::Array[ + OpenAI::FineTuning::FineTuningJob::Hyperparameters::LearningRateMultiplier::Variants + ] + ) + end + def self.variants + end end # The number of epochs to train the model for. An epoch refers to one full cycle @@ -342,8 +402,17 @@ module OpenAI module NEpochs extend OpenAI::Internal::Type::Union - sig { override.returns([Symbol, Integer]) } - def self.variants; end + Variants = T.type_alias { T.any(Symbol, Integer) } + + sig do + override.returns( + T::Array[ + OpenAI::FineTuning::FineTuningJob::Hyperparameters::NEpochs::Variants + ] + ) + end + def self.variants + end end end @@ -352,56 +421,110 @@ module OpenAI module Status extend OpenAI::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::FineTuning::FineTuningJob::Status) } + TaggedSymbol = + T.type_alias do + T.all(Symbol, OpenAI::FineTuning::FineTuningJob::Status) + end OrSymbol = T.type_alias { T.any(Symbol, String) } VALIDATING_FILES = - T.let(:validating_files, OpenAI::Models::FineTuning::FineTuningJob::Status::TaggedSymbol) - QUEUED = T.let(:queued, OpenAI::Models::FineTuning::FineTuningJob::Status::TaggedSymbol) - RUNNING = T.let(:running, OpenAI::Models::FineTuning::FineTuningJob::Status::TaggedSymbol) - SUCCEEDED = T.let(:succeeded, OpenAI::Models::FineTuning::FineTuningJob::Status::TaggedSymbol) - FAILED = T.let(:failed, OpenAI::Models::FineTuning::FineTuningJob::Status::TaggedSymbol) - CANCELLED = T.let(:cancelled, OpenAI::Models::FineTuning::FineTuningJob::Status::TaggedSymbol) - - sig { override.returns(T::Array[OpenAI::Models::FineTuning::FineTuningJob::Status::TaggedSymbol]) } - def self.values; end + T.let( + :validating_files, + OpenAI::FineTuning::FineTuningJob::Status::TaggedSymbol + ) + QUEUED = + T.let( + :queued, + OpenAI::FineTuning::FineTuningJob::Status::TaggedSymbol + ) + RUNNING = + T.let( + :running, + OpenAI::FineTuning::FineTuningJob::Status::TaggedSymbol + ) + SUCCEEDED = + T.let( + :succeeded, + OpenAI::FineTuning::FineTuningJob::Status::TaggedSymbol + ) + FAILED = + T.let( + :failed, + OpenAI::FineTuning::FineTuningJob::Status::TaggedSymbol + ) + CANCELLED = + T.let( + :cancelled, + OpenAI::FineTuning::FineTuningJob::Status::TaggedSymbol + ) + + sig do + override.returns( + T::Array[OpenAI::FineTuning::FineTuningJob::Status::TaggedSymbol] + ) + end + def self.values + end end class Method < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Configuration for the DPO fine-tuning method. - sig { returns(T.nilable(OpenAI::Models::FineTuning::FineTuningJob::Method::Dpo)) } + sig do + returns(T.nilable(OpenAI::FineTuning::FineTuningJob::Method::Dpo)) + end attr_reader :dpo - sig { params(dpo: T.any(OpenAI::Models::FineTuning::FineTuningJob::Method::Dpo, OpenAI::Internal::AnyHash)).void } + sig do + params( + dpo: OpenAI::FineTuning::FineTuningJob::Method::Dpo::OrHash + ).void + end attr_writer :dpo # Configuration for the supervised fine-tuning method. - sig { returns(T.nilable(OpenAI::Models::FineTuning::FineTuningJob::Method::Supervised)) } + sig do + returns( + T.nilable(OpenAI::FineTuning::FineTuningJob::Method::Supervised) + ) + end attr_reader :supervised sig do params( - supervised: T.any(OpenAI::Models::FineTuning::FineTuningJob::Method::Supervised, OpenAI::Internal::AnyHash) - ) - .void + supervised: + OpenAI::FineTuning::FineTuningJob::Method::Supervised::OrHash + ).void end attr_writer :supervised # The type of method. Is either `supervised` or `dpo`. - sig { returns(T.nilable(OpenAI::Models::FineTuning::FineTuningJob::Method::Type::TaggedSymbol)) } + sig do + returns( + T.nilable( + OpenAI::FineTuning::FineTuningJob::Method::Type::TaggedSymbol + ) + ) + end attr_reader :type - sig { params(type: OpenAI::Models::FineTuning::FineTuningJob::Method::Type::OrSymbol).void } + sig do + params( + type: OpenAI::FineTuning::FineTuningJob::Method::Type::OrSymbol + ).void + end attr_writer :type # The method used for fine-tuning. sig do params( - dpo: T.any(OpenAI::Models::FineTuning::FineTuningJob::Method::Dpo, OpenAI::Internal::AnyHash), - supervised: T.any(OpenAI::Models::FineTuning::FineTuningJob::Method::Supervised, OpenAI::Internal::AnyHash), - type: OpenAI::Models::FineTuning::FineTuningJob::Method::Type::OrSymbol - ) - .returns(T.attached_class) + dpo: OpenAI::FineTuning::FineTuningJob::Method::Dpo::OrHash, + supervised: + OpenAI::FineTuning::FineTuningJob::Method::Supervised::OrHash, + type: OpenAI::FineTuning::FineTuningJob::Method::Type::OrSymbol + ).returns(T.attached_class) end def self.new( # Configuration for the DPO fine-tuning method. @@ -410,50 +533,73 @@ module OpenAI supervised: nil, # The type of method. Is either `supervised` or `dpo`. type: nil - ); end + ) + end + sig do - override - .returns( - { - dpo: OpenAI::Models::FineTuning::FineTuningJob::Method::Dpo, - supervised: OpenAI::Models::FineTuning::FineTuningJob::Method::Supervised, - type: OpenAI::Models::FineTuning::FineTuningJob::Method::Type::TaggedSymbol - } - ) + override.returns( + { + dpo: OpenAI::FineTuning::FineTuningJob::Method::Dpo, + supervised: + OpenAI::FineTuning::FineTuningJob::Method::Supervised, + type: + OpenAI::FineTuning::FineTuningJob::Method::Type::TaggedSymbol + } + ) + end + def to_hash end - def to_hash; end class Dpo < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The hyperparameters used for the fine-tuning job. - sig { returns(T.nilable(OpenAI::Models::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters)) } + sig do + returns( + T.nilable( + OpenAI::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters + ) + ) + end attr_reader :hyperparameters sig do params( - hyperparameters: T.any(OpenAI::Models::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters, OpenAI::Internal::AnyHash) - ) - .void + hyperparameters: + OpenAI::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters::OrHash + ).void end attr_writer :hyperparameters # Configuration for the DPO fine-tuning method. sig do params( - hyperparameters: T.any(OpenAI::Models::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters, OpenAI::Internal::AnyHash) - ) - .returns(T.attached_class) + hyperparameters: + OpenAI::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters::OrHash + ).returns(T.attached_class) end def self.new( # The hyperparameters used for the fine-tuning job. hyperparameters: nil - ); end + ) + end + sig do - override - .returns({hyperparameters: OpenAI::Models::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters}) + override.returns( + { + hyperparameters: + OpenAI::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters + } + ) + end + def to_hash end - def to_hash; end class Hyperparameters < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Number of examples in each batch. A larger batch size means that model # parameters are updated less frequently, but with lower variance. sig { returns(T.nilable(T.any(Symbol, Integer))) } @@ -475,7 +621,9 @@ module OpenAI sig { returns(T.nilable(T.any(Symbol, Float))) } attr_reader :learning_rate_multiplier - sig { params(learning_rate_multiplier: T.any(Symbol, Float)).void } + sig do + params(learning_rate_multiplier: T.any(Symbol, Float)).void + end attr_writer :learning_rate_multiplier # The number of epochs to train the model for. An epoch refers to one full cycle @@ -493,8 +641,7 @@ module OpenAI beta: T.any(Symbol, Float), learning_rate_multiplier: T.any(Symbol, Float), n_epochs: T.any(Symbol, Integer) - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # Number of examples in each batch. A larger batch size means that model @@ -509,27 +656,38 @@ module OpenAI # The number of epochs to train the model for. An epoch refers to one full cycle # through the training dataset. n_epochs: nil - ); end + ) + end + sig do - override - .returns( - { - batch_size: T.any(Symbol, Integer), - beta: T.any(Symbol, Float), - learning_rate_multiplier: T.any(Symbol, Float), - n_epochs: T.any(Symbol, Integer) - } - ) + override.returns( + { + batch_size: T.any(Symbol, Integer), + beta: T.any(Symbol, Float), + learning_rate_multiplier: T.any(Symbol, Float), + n_epochs: T.any(Symbol, Integer) + } + ) + end + def to_hash end - def to_hash; end # Number of examples in each batch. A larger batch size means that model # parameters are updated less frequently, but with lower variance. module BatchSize extend OpenAI::Internal::Type::Union - sig { override.returns([Symbol, Integer]) } - def self.variants; end + Variants = T.type_alias { T.any(Symbol, Integer) } + + sig do + override.returns( + T::Array[ + OpenAI::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters::BatchSize::Variants + ] + ) + end + def self.variants + end end # The beta value for the DPO method. A higher beta value will increase the weight @@ -537,8 +695,17 @@ module OpenAI module Beta extend OpenAI::Internal::Type::Union - sig { override.returns([Symbol, Float]) } - def self.variants; end + Variants = T.type_alias { T.any(Symbol, Float) } + + sig do + override.returns( + T::Array[ + OpenAI::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters::Beta::Variants + ] + ) + end + def self.variants + end end # Scaling factor for the learning rate. A smaller learning rate may be useful to @@ -546,8 +713,17 @@ module OpenAI module LearningRateMultiplier extend OpenAI::Internal::Type::Union - sig { override.returns([Symbol, Float]) } - def self.variants; end + Variants = T.type_alias { T.any(Symbol, Float) } + + sig do + override.returns( + T::Array[ + OpenAI::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters::LearningRateMultiplier::Variants + ] + ) + end + def self.variants + end end # The number of epochs to train the model for. An epoch refers to one full cycle @@ -555,49 +731,71 @@ module OpenAI module NEpochs extend OpenAI::Internal::Type::Union - sig { override.returns([Symbol, Integer]) } - def self.variants; end + Variants = T.type_alias { T.any(Symbol, Integer) } + + sig do + override.returns( + T::Array[ + OpenAI::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters::NEpochs::Variants + ] + ) + end + def self.variants + end end end end class Supervised < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The hyperparameters used for the fine-tuning job. - sig { returns(T.nilable(OpenAI::Models::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters)) } + sig do + returns( + T.nilable( + OpenAI::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters + ) + ) + end attr_reader :hyperparameters sig do params( - hyperparameters: T.any( - OpenAI::Models::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters, - OpenAI::Internal::AnyHash - ) - ) - .void + hyperparameters: + OpenAI::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters::OrHash + ).void end attr_writer :hyperparameters # Configuration for the supervised fine-tuning method. sig do params( - hyperparameters: T.any( - OpenAI::Models::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters, - OpenAI::Internal::AnyHash - ) - ) - .returns(T.attached_class) + hyperparameters: + OpenAI::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters::OrHash + ).returns(T.attached_class) end def self.new( # The hyperparameters used for the fine-tuning job. hyperparameters: nil - ); end + ) + end + sig do - override - .returns({hyperparameters: OpenAI::Models::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters}) + override.returns( + { + hyperparameters: + OpenAI::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters + } + ) + end + def to_hash end - def to_hash; end class Hyperparameters < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Number of examples in each batch. A larger batch size means that model # parameters are updated less frequently, but with lower variance. sig { returns(T.nilable(T.any(Symbol, Integer))) } @@ -611,7 +809,9 @@ module OpenAI sig { returns(T.nilable(T.any(Symbol, Float))) } attr_reader :learning_rate_multiplier - sig { params(learning_rate_multiplier: T.any(Symbol, Float)).void } + sig do + params(learning_rate_multiplier: T.any(Symbol, Float)).void + end attr_writer :learning_rate_multiplier # The number of epochs to train the model for. An epoch refers to one full cycle @@ -628,8 +828,7 @@ module OpenAI batch_size: T.any(Symbol, Integer), learning_rate_multiplier: T.any(Symbol, Float), n_epochs: T.any(Symbol, Integer) - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # Number of examples in each batch. A larger batch size means that model @@ -641,26 +840,37 @@ module OpenAI # The number of epochs to train the model for. An epoch refers to one full cycle # through the training dataset. n_epochs: nil - ); end + ) + end + sig do - override - .returns( - { - batch_size: T.any(Symbol, Integer), - learning_rate_multiplier: T.any(Symbol, Float), - n_epochs: T.any(Symbol, Integer) - } - ) + override.returns( + { + batch_size: T.any(Symbol, Integer), + learning_rate_multiplier: T.any(Symbol, Float), + n_epochs: T.any(Symbol, Integer) + } + ) + end + def to_hash end - def to_hash; end # Number of examples in each batch. A larger batch size means that model # parameters are updated less frequently, but with lower variance. module BatchSize extend OpenAI::Internal::Type::Union - sig { override.returns([Symbol, Integer]) } - def self.variants; end + Variants = T.type_alias { T.any(Symbol, Integer) } + + sig do + override.returns( + T::Array[ + OpenAI::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters::BatchSize::Variants + ] + ) + end + def self.variants + end end # Scaling factor for the learning rate. A smaller learning rate may be useful to @@ -668,8 +878,17 @@ module OpenAI module LearningRateMultiplier extend OpenAI::Internal::Type::Union - sig { override.returns([Symbol, Float]) } - def self.variants; end + Variants = T.type_alias { T.any(Symbol, Float) } + + sig do + override.returns( + T::Array[ + OpenAI::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters::LearningRateMultiplier::Variants + ] + ) + end + def self.variants + end end # The number of epochs to train the model for. An epoch refers to one full cycle @@ -677,8 +896,17 @@ module OpenAI module NEpochs extend OpenAI::Internal::Type::Union - sig { override.returns([Symbol, Integer]) } - def self.variants; end + Variants = T.type_alias { T.any(Symbol, Integer) } + + sig do + override.returns( + T::Array[ + OpenAI::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters::NEpochs::Variants + ] + ) + end + def self.variants + end end end end @@ -687,14 +915,32 @@ module OpenAI module Type extend OpenAI::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::FineTuning::FineTuningJob::Method::Type) } + TaggedSymbol = + T.type_alias do + T.all(Symbol, OpenAI::FineTuning::FineTuningJob::Method::Type) + end OrSymbol = T.type_alias { T.any(Symbol, String) } - SUPERVISED = T.let(:supervised, OpenAI::Models::FineTuning::FineTuningJob::Method::Type::TaggedSymbol) - DPO = T.let(:dpo, OpenAI::Models::FineTuning::FineTuningJob::Method::Type::TaggedSymbol) + SUPERVISED = + T.let( + :supervised, + OpenAI::FineTuning::FineTuningJob::Method::Type::TaggedSymbol + ) + DPO = + T.let( + :dpo, + OpenAI::FineTuning::FineTuningJob::Method::Type::TaggedSymbol + ) - sig { override.returns(T::Array[OpenAI::Models::FineTuning::FineTuningJob::Method::Type::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[ + OpenAI::FineTuning::FineTuningJob::Method::Type::TaggedSymbol + ] + ) + end + def self.values + end end end end diff --git a/rbi/openai/models/fine_tuning/fine_tuning_job_event.rbi b/rbi/openai/models/fine_tuning/fine_tuning_job_event.rbi index f034e524..4cee296b 100644 --- a/rbi/openai/models/fine_tuning/fine_tuning_job_event.rbi +++ b/rbi/openai/models/fine_tuning/fine_tuning_job_event.rbi @@ -6,6 +6,8 @@ module OpenAI module FineTuning class FineTuningJobEvent < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The object identifier. sig { returns(String) } attr_accessor :id @@ -15,7 +17,9 @@ module OpenAI attr_accessor :created_at # The log level of the event. - sig { returns(OpenAI::Models::FineTuning::FineTuningJobEvent::Level::TaggedSymbol) } + sig do + returns(OpenAI::FineTuning::FineTuningJobEvent::Level::TaggedSymbol) + end attr_accessor :level # The message of the event. @@ -34,10 +38,20 @@ module OpenAI attr_writer :data # The type of event. - sig { returns(T.nilable(OpenAI::Models::FineTuning::FineTuningJobEvent::Type::TaggedSymbol)) } + sig do + returns( + T.nilable( + OpenAI::FineTuning::FineTuningJobEvent::Type::TaggedSymbol + ) + ) + end attr_reader :type - sig { params(type: OpenAI::Models::FineTuning::FineTuningJobEvent::Type::OrSymbol).void } + sig do + params( + type: OpenAI::FineTuning::FineTuningJobEvent::Type::OrSymbol + ).void + end attr_writer :type # Fine-tuning job event object @@ -45,13 +59,12 @@ module OpenAI params( id: String, created_at: Integer, - level: OpenAI::Models::FineTuning::FineTuningJobEvent::Level::OrSymbol, + level: OpenAI::FineTuning::FineTuningJobEvent::Level::OrSymbol, message: String, data: T.anything, - type: OpenAI::Models::FineTuning::FineTuningJobEvent::Type::OrSymbol, + type: OpenAI::FineTuning::FineTuningJobEvent::Type::OrSymbol, object: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # The object identifier. @@ -68,50 +81,93 @@ module OpenAI type: nil, # The object type, which is always "fine_tuning.job.event". object: :"fine_tuning.job.event" - ); end + ) + end + sig do - override - .returns( - { - id: String, - created_at: Integer, - level: OpenAI::Models::FineTuning::FineTuningJobEvent::Level::TaggedSymbol, - message: String, - object: Symbol, - data: T.anything, - type: OpenAI::Models::FineTuning::FineTuningJobEvent::Type::TaggedSymbol - } - ) + override.returns( + { + id: String, + created_at: Integer, + level: + OpenAI::FineTuning::FineTuningJobEvent::Level::TaggedSymbol, + message: String, + object: Symbol, + data: T.anything, + type: OpenAI::FineTuning::FineTuningJobEvent::Type::TaggedSymbol + } + ) + end + def to_hash end - def to_hash; end # The log level of the event. module Level extend OpenAI::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::FineTuning::FineTuningJobEvent::Level) } + TaggedSymbol = + T.type_alias do + T.all(Symbol, OpenAI::FineTuning::FineTuningJobEvent::Level) + end OrSymbol = T.type_alias { T.any(Symbol, String) } - INFO = T.let(:info, OpenAI::Models::FineTuning::FineTuningJobEvent::Level::TaggedSymbol) - WARN = T.let(:warn, OpenAI::Models::FineTuning::FineTuningJobEvent::Level::TaggedSymbol) - ERROR = T.let(:error, OpenAI::Models::FineTuning::FineTuningJobEvent::Level::TaggedSymbol) + INFO = + T.let( + :info, + OpenAI::FineTuning::FineTuningJobEvent::Level::TaggedSymbol + ) + WARN = + T.let( + :warn, + OpenAI::FineTuning::FineTuningJobEvent::Level::TaggedSymbol + ) + ERROR = + T.let( + :error, + OpenAI::FineTuning::FineTuningJobEvent::Level::TaggedSymbol + ) - sig { override.returns(T::Array[OpenAI::Models::FineTuning::FineTuningJobEvent::Level::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[ + OpenAI::FineTuning::FineTuningJobEvent::Level::TaggedSymbol + ] + ) + end + def self.values + end end # The type of event. module Type extend OpenAI::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::FineTuning::FineTuningJobEvent::Type) } + TaggedSymbol = + T.type_alias do + T.all(Symbol, OpenAI::FineTuning::FineTuningJobEvent::Type) + end OrSymbol = T.type_alias { T.any(Symbol, String) } - MESSAGE = T.let(:message, OpenAI::Models::FineTuning::FineTuningJobEvent::Type::TaggedSymbol) - METRICS = T.let(:metrics, OpenAI::Models::FineTuning::FineTuningJobEvent::Type::TaggedSymbol) + MESSAGE = + T.let( + :message, + OpenAI::FineTuning::FineTuningJobEvent::Type::TaggedSymbol + ) + METRICS = + T.let( + :metrics, + OpenAI::FineTuning::FineTuningJobEvent::Type::TaggedSymbol + ) - sig { override.returns(T::Array[OpenAI::Models::FineTuning::FineTuningJobEvent::Type::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[ + OpenAI::FineTuning::FineTuningJobEvent::Type::TaggedSymbol + ] + ) + end + def self.values + end end end end diff --git a/rbi/openai/models/fine_tuning/fine_tuning_job_integration.rbi b/rbi/openai/models/fine_tuning/fine_tuning_job_integration.rbi index 9ae1ecd5..a2e8e306 100644 --- a/rbi/openai/models/fine_tuning/fine_tuning_job_integration.rbi +++ b/rbi/openai/models/fine_tuning/fine_tuning_job_integration.rbi @@ -5,7 +5,8 @@ module OpenAI FineTuningJobIntegration = FineTuning::FineTuningJobIntegration module FineTuning - FineTuningJobIntegration = OpenAI::Models::FineTuning::FineTuningJobWandbIntegrationObject + FineTuningJobIntegration = + OpenAI::Models::FineTuning::FineTuningJobWandbIntegrationObject end end end diff --git a/rbi/openai/models/fine_tuning/fine_tuning_job_wandb_integration.rbi b/rbi/openai/models/fine_tuning/fine_tuning_job_wandb_integration.rbi index fb541aa4..c5b719f8 100644 --- a/rbi/openai/models/fine_tuning/fine_tuning_job_wandb_integration.rbi +++ b/rbi/openai/models/fine_tuning/fine_tuning_job_wandb_integration.rbi @@ -6,6 +6,8 @@ module OpenAI module FineTuning class FineTuningJobWandbIntegration < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The name of the project that the new run will be created under. sig { returns(String) } attr_accessor :project @@ -35,8 +37,12 @@ module OpenAI # explicit display name for your run, add tags to your run, and set a default # entity (team, username, etc) to be associated with your run. sig do - params(project: String, entity: T.nilable(String), name: T.nilable(String), tags: T::Array[String]) - .returns(T.attached_class) + params( + project: String, + entity: T.nilable(String), + name: T.nilable(String), + tags: T::Array[String] + ).returns(T.attached_class) end def self.new( # The name of the project that the new run will be created under. @@ -52,17 +58,21 @@ module OpenAI # through directly to WandB. Some default tags are generated by OpenAI: # "openai/finetune", "openai/{base-model}", "openai/{ftjob-abcdef}". tags: nil - ); end + ) + end + sig do - override - .returns({ - project: String, - entity: T.nilable(String), - name: T.nilable(String), - tags: T::Array[String] - }) + override.returns( + { + project: String, + entity: T.nilable(String), + name: T.nilable(String), + tags: T::Array[String] + } + ) + end + def to_hash end - def to_hash; end end end end diff --git a/rbi/openai/models/fine_tuning/fine_tuning_job_wandb_integration_object.rbi b/rbi/openai/models/fine_tuning/fine_tuning_job_wandb_integration_object.rbi index c17319c1..934a2242 100644 --- a/rbi/openai/models/fine_tuning/fine_tuning_job_wandb_integration_object.rbi +++ b/rbi/openai/models/fine_tuning/fine_tuning_job_wandb_integration_object.rbi @@ -2,10 +2,13 @@ module OpenAI module Models - FineTuningJobWandbIntegrationObject = FineTuning::FineTuningJobWandbIntegrationObject + FineTuningJobWandbIntegrationObject = + FineTuning::FineTuningJobWandbIntegrationObject module FineTuning class FineTuningJobWandbIntegrationObject < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The type of the integration being enabled for the fine-tuning job sig { returns(Symbol) } attr_accessor :type @@ -14,21 +17,21 @@ module OpenAI # specifies the project that metrics will be sent to. Optionally, you can set an # explicit display name for your run, add tags to your run, and set a default # entity (team, username, etc) to be associated with your run. - sig { returns(OpenAI::Models::FineTuning::FineTuningJobWandbIntegration) } + sig { returns(OpenAI::FineTuning::FineTuningJobWandbIntegration) } attr_reader :wandb sig do - params(wandb: T.any(OpenAI::Models::FineTuning::FineTuningJobWandbIntegration, OpenAI::Internal::AnyHash)) - .void + params( + wandb: OpenAI::FineTuning::FineTuningJobWandbIntegration::OrHash + ).void end attr_writer :wandb sig do params( - wandb: T.any(OpenAI::Models::FineTuning::FineTuningJobWandbIntegration, OpenAI::Internal::AnyHash), + wandb: OpenAI::FineTuning::FineTuningJobWandbIntegration::OrHash, type: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # The settings for your integration with Weights and Biases. This payload @@ -38,9 +41,19 @@ module OpenAI wandb:, # The type of the integration being enabled for the fine-tuning job type: :wandb - ); end - sig { override.returns({type: Symbol, wandb: OpenAI::Models::FineTuning::FineTuningJobWandbIntegration}) } - def to_hash; end + ) + end + + sig do + override.returns( + { + type: Symbol, + wandb: OpenAI::FineTuning::FineTuningJobWandbIntegration + } + ) + end + def to_hash + end end end end diff --git a/rbi/openai/models/fine_tuning/job_cancel_params.rbi b/rbi/openai/models/fine_tuning/job_cancel_params.rbi index 9976752d..92f99a73 100644 --- a/rbi/openai/models/fine_tuning/job_cancel_params.rbi +++ b/rbi/openai/models/fine_tuning/job_cancel_params.rbi @@ -7,18 +7,19 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + sig do - params( - request_options: T.any( - OpenAI::RequestOptions, - OpenAI::Internal::AnyHash - ) - ).returns(T.attached_class) + params(request_options: OpenAI::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: OpenAI::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: OpenAI::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/openai/models/fine_tuning/job_create_params.rbi b/rbi/openai/models/fine_tuning/job_create_params.rbi index af70cdc3..eaa8cb24 100644 --- a/rbi/openai/models/fine_tuning/job_create_params.rbi +++ b/rbi/openai/models/fine_tuning/job_create_params.rbi @@ -7,9 +7,15 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The name of the model to fine-tune. You can select one of the # [supported models](https://platform.openai.com/docs/guides/fine-tuning#which-models-can-be-fine-tuned). - sig { returns(T.any(String, OpenAI::Models::FineTuning::JobCreateParams::Model::OrSymbol)) } + sig do + returns( + T.any(String, OpenAI::FineTuning::JobCreateParams::Model::OrSymbol) + ) + end attr_accessor :model # The ID of an uploaded file that contains training data. @@ -34,19 +40,29 @@ module OpenAI # The hyperparameters used for the fine-tuning job. This value is now deprecated # in favor of `method`, and should be passed in under the `method` parameter. - sig { returns(T.nilable(OpenAI::Models::FineTuning::JobCreateParams::Hyperparameters)) } + sig do + returns( + T.nilable(OpenAI::FineTuning::JobCreateParams::Hyperparameters) + ) + end attr_reader :hyperparameters sig do params( - hyperparameters: T.any(OpenAI::Models::FineTuning::JobCreateParams::Hyperparameters, OpenAI::Internal::AnyHash) - ) - .void + hyperparameters: + OpenAI::FineTuning::JobCreateParams::Hyperparameters::OrHash + ).void end attr_writer :hyperparameters # A list of integrations to enable for your fine-tuning job. - sig { returns(T.nilable(T::Array[OpenAI::Models::FineTuning::JobCreateParams::Integration])) } + sig do + returns( + T.nilable( + T::Array[OpenAI::FineTuning::JobCreateParams::Integration] + ) + ) + end attr_accessor :integrations # Set of 16 key-value pairs that can be attached to an object. This can be useful @@ -59,11 +75,13 @@ module OpenAI attr_accessor :metadata # The method used for fine-tuning. - sig { returns(T.nilable(OpenAI::Models::FineTuning::JobCreateParams::Method)) } + sig { returns(T.nilable(OpenAI::FineTuning::JobCreateParams::Method)) } attr_reader :method_ sig do - params(method_: T.any(OpenAI::Models::FineTuning::JobCreateParams::Method, OpenAI::Internal::AnyHash)).void + params( + method_: OpenAI::FineTuning::JobCreateParams::Method::OrHash + ).void end attr_writer :method_ @@ -98,20 +116,27 @@ module OpenAI sig do params( - model: T.any(String, OpenAI::Models::FineTuning::JobCreateParams::Model::OrSymbol), + model: + T.any( + String, + OpenAI::FineTuning::JobCreateParams::Model::OrSymbol + ), training_file: String, - hyperparameters: T.any(OpenAI::Models::FineTuning::JobCreateParams::Hyperparameters, OpenAI::Internal::AnyHash), - integrations: T.nilable( - T::Array[T.any(OpenAI::Models::FineTuning::JobCreateParams::Integration, OpenAI::Internal::AnyHash)] - ), + hyperparameters: + OpenAI::FineTuning::JobCreateParams::Hyperparameters::OrHash, + integrations: + T.nilable( + T::Array[ + OpenAI::FineTuning::JobCreateParams::Integration::OrHash + ] + ), metadata: T.nilable(T::Hash[Symbol, String]), - method_: T.any(OpenAI::Models::FineTuning::JobCreateParams::Method, OpenAI::Internal::AnyHash), + method_: OpenAI::FineTuning::JobCreateParams::Method::OrHash, seed: T.nilable(Integer), suffix: T.nilable(String), validation_file: T.nilable(String), - request_options: T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash) - ) - .returns(T.attached_class) + request_options: OpenAI::RequestOptions::OrHash + ).returns(T.attached_class) end def self.new( # The name of the model to fine-tune. You can select one of the @@ -173,44 +198,89 @@ module OpenAI # for more details. validation_file: nil, request_options: {} - ); end + ) + end + sig do - override - .returns( - { - model: T.any(String, OpenAI::Models::FineTuning::JobCreateParams::Model::OrSymbol), - training_file: String, - hyperparameters: OpenAI::Models::FineTuning::JobCreateParams::Hyperparameters, - integrations: T.nilable(T::Array[OpenAI::Models::FineTuning::JobCreateParams::Integration]), - metadata: T.nilable(T::Hash[Symbol, String]), - method_: OpenAI::Models::FineTuning::JobCreateParams::Method, - seed: T.nilable(Integer), - suffix: T.nilable(String), - validation_file: T.nilable(String), - request_options: OpenAI::RequestOptions - } - ) + override.returns( + { + model: + T.any( + String, + OpenAI::FineTuning::JobCreateParams::Model::OrSymbol + ), + training_file: String, + hyperparameters: + OpenAI::FineTuning::JobCreateParams::Hyperparameters, + integrations: + T.nilable( + T::Array[OpenAI::FineTuning::JobCreateParams::Integration] + ), + metadata: T.nilable(T::Hash[Symbol, String]), + method_: OpenAI::FineTuning::JobCreateParams::Method, + seed: T.nilable(Integer), + suffix: T.nilable(String), + validation_file: T.nilable(String), + request_options: OpenAI::RequestOptions + } + ) + end + def to_hash end - def to_hash; end # The name of the model to fine-tune. You can select one of the # [supported models](https://platform.openai.com/docs/guides/fine-tuning#which-models-can-be-fine-tuned). module Model extend OpenAI::Internal::Type::Union - sig { override.returns([String, OpenAI::Models::FineTuning::JobCreateParams::Model::TaggedSymbol]) } - def self.variants; end + Variants = + T.type_alias do + T.any( + String, + OpenAI::FineTuning::JobCreateParams::Model::TaggedSymbol + ) + end - TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::FineTuning::JobCreateParams::Model) } + sig do + override.returns( + T::Array[OpenAI::FineTuning::JobCreateParams::Model::Variants] + ) + end + def self.variants + end + + TaggedSymbol = + T.type_alias do + T.all(Symbol, OpenAI::FineTuning::JobCreateParams::Model) + end OrSymbol = T.type_alias { T.any(Symbol, String) } - BABBAGE_002 = T.let(:"babbage-002", OpenAI::Models::FineTuning::JobCreateParams::Model::TaggedSymbol) - DAVINCI_002 = T.let(:"davinci-002", OpenAI::Models::FineTuning::JobCreateParams::Model::TaggedSymbol) - GPT_3_5_TURBO = T.let(:"gpt-3.5-turbo", OpenAI::Models::FineTuning::JobCreateParams::Model::TaggedSymbol) - GPT_4O_MINI = T.let(:"gpt-4o-mini", OpenAI::Models::FineTuning::JobCreateParams::Model::TaggedSymbol) + BABBAGE_002 = + T.let( + :"babbage-002", + OpenAI::FineTuning::JobCreateParams::Model::TaggedSymbol + ) + DAVINCI_002 = + T.let( + :"davinci-002", + OpenAI::FineTuning::JobCreateParams::Model::TaggedSymbol + ) + GPT_3_5_TURBO = + T.let( + :"gpt-3.5-turbo", + OpenAI::FineTuning::JobCreateParams::Model::TaggedSymbol + ) + GPT_4O_MINI = + T.let( + :"gpt-4o-mini", + OpenAI::FineTuning::JobCreateParams::Model::TaggedSymbol + ) end class Hyperparameters < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Number of examples in each batch. A larger batch size means that model # parameters are updated less frequently, but with lower variance. sig { returns(T.nilable(T.any(Symbol, Integer))) } @@ -242,8 +312,7 @@ module OpenAI batch_size: T.any(Symbol, Integer), learning_rate_multiplier: T.any(Symbol, Float), n_epochs: T.any(Symbol, Integer) - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # Number of examples in each batch. A larger batch size means that model @@ -255,26 +324,37 @@ module OpenAI # The number of epochs to train the model for. An epoch refers to one full cycle # through the training dataset. n_epochs: nil - ); end + ) + end + sig do - override - .returns( - { - batch_size: T.any(Symbol, Integer), - learning_rate_multiplier: T.any(Symbol, Float), - n_epochs: T.any(Symbol, Integer) - } - ) + override.returns( + { + batch_size: T.any(Symbol, Integer), + learning_rate_multiplier: T.any(Symbol, Float), + n_epochs: T.any(Symbol, Integer) + } + ) + end + def to_hash end - def to_hash; end # Number of examples in each batch. A larger batch size means that model # parameters are updated less frequently, but with lower variance. module BatchSize extend OpenAI::Internal::Type::Union - sig { override.returns([Symbol, Integer]) } - def self.variants; end + Variants = T.type_alias { T.any(Symbol, Integer) } + + sig do + override.returns( + T::Array[ + OpenAI::FineTuning::JobCreateParams::Hyperparameters::BatchSize::Variants + ] + ) + end + def self.variants + end end # Scaling factor for the learning rate. A smaller learning rate may be useful to @@ -282,8 +362,17 @@ module OpenAI module LearningRateMultiplier extend OpenAI::Internal::Type::Union - sig { override.returns([Symbol, Float]) } - def self.variants; end + Variants = T.type_alias { T.any(Symbol, Float) } + + sig do + override.returns( + T::Array[ + OpenAI::FineTuning::JobCreateParams::Hyperparameters::LearningRateMultiplier::Variants + ] + ) + end + def self.variants + end end # The number of epochs to train the model for. An epoch refers to one full cycle @@ -291,12 +380,24 @@ module OpenAI module NEpochs extend OpenAI::Internal::Type::Union - sig { override.returns([Symbol, Integer]) } - def self.variants; end + Variants = T.type_alias { T.any(Symbol, Integer) } + + sig do + override.returns( + T::Array[ + OpenAI::FineTuning::JobCreateParams::Hyperparameters::NEpochs::Variants + ] + ) + end + def self.variants + end end end class Integration < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The type of integration to enable. Currently, only "wandb" (Weights and Biases) # is supported. sig { returns(Symbol) } @@ -306,23 +407,25 @@ module OpenAI # specifies the project that metrics will be sent to. Optionally, you can set an # explicit display name for your run, add tags to your run, and set a default # entity (team, username, etc) to be associated with your run. - sig { returns(OpenAI::Models::FineTuning::JobCreateParams::Integration::Wandb) } + sig do + returns(OpenAI::FineTuning::JobCreateParams::Integration::Wandb) + end attr_reader :wandb sig do params( - wandb: T.any(OpenAI::Models::FineTuning::JobCreateParams::Integration::Wandb, OpenAI::Internal::AnyHash) - ) - .void + wandb: + OpenAI::FineTuning::JobCreateParams::Integration::Wandb::OrHash + ).void end attr_writer :wandb sig do params( - wandb: T.any(OpenAI::Models::FineTuning::JobCreateParams::Integration::Wandb, OpenAI::Internal::AnyHash), + wandb: + OpenAI::FineTuning::JobCreateParams::Integration::Wandb::OrHash, type: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # The settings for your integration with Weights and Biases. This payload @@ -333,11 +436,24 @@ module OpenAI # The type of integration to enable. Currently, only "wandb" (Weights and Biases) # is supported. type: :wandb - ); end - sig { override.returns({type: Symbol, wandb: OpenAI::Models::FineTuning::JobCreateParams::Integration::Wandb}) } - def to_hash; end + ) + end + + sig do + override.returns( + { + type: Symbol, + wandb: OpenAI::FineTuning::JobCreateParams::Integration::Wandb + } + ) + end + def to_hash + end class Wandb < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The name of the project that the new run will be created under. sig { returns(String) } attr_accessor :project @@ -372,8 +488,7 @@ module OpenAI entity: T.nilable(String), name: T.nilable(String), tags: T::Array[String] - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # The name of the project that the new run will be created under. @@ -389,58 +504,82 @@ module OpenAI # through directly to WandB. Some default tags are generated by OpenAI: # "openai/finetune", "openai/{base-model}", "openai/{ftjob-abcdef}". tags: nil - ); end + ) + end + sig do - override - .returns({ - project: String, - entity: T.nilable(String), - name: T.nilable(String), - tags: T::Array[String] - }) + override.returns( + { + project: String, + entity: T.nilable(String), + name: T.nilable(String), + tags: T::Array[String] + } + ) + end + def to_hash end - def to_hash; end end end class Method < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Configuration for the DPO fine-tuning method. - sig { returns(T.nilable(OpenAI::Models::FineTuning::JobCreateParams::Method::Dpo)) } + sig do + returns(T.nilable(OpenAI::FineTuning::JobCreateParams::Method::Dpo)) + end attr_reader :dpo sig do - params(dpo: T.any(OpenAI::Models::FineTuning::JobCreateParams::Method::Dpo, OpenAI::Internal::AnyHash)) - .void + params( + dpo: OpenAI::FineTuning::JobCreateParams::Method::Dpo::OrHash + ).void end attr_writer :dpo # Configuration for the supervised fine-tuning method. - sig { returns(T.nilable(OpenAI::Models::FineTuning::JobCreateParams::Method::Supervised)) } + sig do + returns( + T.nilable(OpenAI::FineTuning::JobCreateParams::Method::Supervised) + ) + end attr_reader :supervised sig do params( - supervised: T.any(OpenAI::Models::FineTuning::JobCreateParams::Method::Supervised, OpenAI::Internal::AnyHash) - ) - .void + supervised: + OpenAI::FineTuning::JobCreateParams::Method::Supervised::OrHash + ).void end attr_writer :supervised # The type of method. Is either `supervised` or `dpo`. - sig { returns(T.nilable(OpenAI::Models::FineTuning::JobCreateParams::Method::Type::OrSymbol)) } + sig do + returns( + T.nilable( + OpenAI::FineTuning::JobCreateParams::Method::Type::OrSymbol + ) + ) + end attr_reader :type - sig { params(type: OpenAI::Models::FineTuning::JobCreateParams::Method::Type::OrSymbol).void } + sig do + params( + type: OpenAI::FineTuning::JobCreateParams::Method::Type::OrSymbol + ).void + end attr_writer :type # The method used for fine-tuning. sig do params( - dpo: T.any(OpenAI::Models::FineTuning::JobCreateParams::Method::Dpo, OpenAI::Internal::AnyHash), - supervised: T.any(OpenAI::Models::FineTuning::JobCreateParams::Method::Supervised, OpenAI::Internal::AnyHash), - type: OpenAI::Models::FineTuning::JobCreateParams::Method::Type::OrSymbol - ) - .returns(T.attached_class) + dpo: OpenAI::FineTuning::JobCreateParams::Method::Dpo::OrHash, + supervised: + OpenAI::FineTuning::JobCreateParams::Method::Supervised::OrHash, + type: OpenAI::FineTuning::JobCreateParams::Method::Type::OrSymbol + ).returns(T.attached_class) end def self.new( # Configuration for the DPO fine-tuning method. @@ -449,56 +588,73 @@ module OpenAI supervised: nil, # The type of method. Is either `supervised` or `dpo`. type: nil - ); end + ) + end + sig do - override - .returns( - { - dpo: OpenAI::Models::FineTuning::JobCreateParams::Method::Dpo, - supervised: OpenAI::Models::FineTuning::JobCreateParams::Method::Supervised, - type: OpenAI::Models::FineTuning::JobCreateParams::Method::Type::OrSymbol - } - ) + override.returns( + { + dpo: OpenAI::FineTuning::JobCreateParams::Method::Dpo, + supervised: + OpenAI::FineTuning::JobCreateParams::Method::Supervised, + type: + OpenAI::FineTuning::JobCreateParams::Method::Type::OrSymbol + } + ) + end + def to_hash end - def to_hash; end class Dpo < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The hyperparameters used for the fine-tuning job. - sig { returns(T.nilable(OpenAI::Models::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters)) } + sig do + returns( + T.nilable( + OpenAI::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters + ) + ) + end attr_reader :hyperparameters sig do params( - hyperparameters: T.any( - OpenAI::Models::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters, - OpenAI::Internal::AnyHash - ) - ) - .void + hyperparameters: + OpenAI::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters::OrHash + ).void end attr_writer :hyperparameters # Configuration for the DPO fine-tuning method. sig do params( - hyperparameters: T.any( - OpenAI::Models::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters, - OpenAI::Internal::AnyHash - ) - ) - .returns(T.attached_class) + hyperparameters: + OpenAI::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters::OrHash + ).returns(T.attached_class) end def self.new( # The hyperparameters used for the fine-tuning job. hyperparameters: nil - ); end + ) + end + sig do - override - .returns({hyperparameters: OpenAI::Models::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters}) + override.returns( + { + hyperparameters: + OpenAI::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters + } + ) + end + def to_hash end - def to_hash; end class Hyperparameters < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Number of examples in each batch. A larger batch size means that model # parameters are updated less frequently, but with lower variance. sig { returns(T.nilable(T.any(Symbol, Integer))) } @@ -520,7 +676,9 @@ module OpenAI sig { returns(T.nilable(T.any(Symbol, Float))) } attr_reader :learning_rate_multiplier - sig { params(learning_rate_multiplier: T.any(Symbol, Float)).void } + sig do + params(learning_rate_multiplier: T.any(Symbol, Float)).void + end attr_writer :learning_rate_multiplier # The number of epochs to train the model for. An epoch refers to one full cycle @@ -538,8 +696,7 @@ module OpenAI beta: T.any(Symbol, Float), learning_rate_multiplier: T.any(Symbol, Float), n_epochs: T.any(Symbol, Integer) - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # Number of examples in each batch. A larger batch size means that model @@ -554,27 +711,38 @@ module OpenAI # The number of epochs to train the model for. An epoch refers to one full cycle # through the training dataset. n_epochs: nil - ); end + ) + end + sig do - override - .returns( - { - batch_size: T.any(Symbol, Integer), - beta: T.any(Symbol, Float), - learning_rate_multiplier: T.any(Symbol, Float), - n_epochs: T.any(Symbol, Integer) - } - ) + override.returns( + { + batch_size: T.any(Symbol, Integer), + beta: T.any(Symbol, Float), + learning_rate_multiplier: T.any(Symbol, Float), + n_epochs: T.any(Symbol, Integer) + } + ) + end + def to_hash end - def to_hash; end # Number of examples in each batch. A larger batch size means that model # parameters are updated less frequently, but with lower variance. module BatchSize extend OpenAI::Internal::Type::Union - sig { override.returns([Symbol, Integer]) } - def self.variants; end + Variants = T.type_alias { T.any(Symbol, Integer) } + + sig do + override.returns( + T::Array[ + OpenAI::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters::BatchSize::Variants + ] + ) + end + def self.variants + end end # The beta value for the DPO method. A higher beta value will increase the weight @@ -582,8 +750,17 @@ module OpenAI module Beta extend OpenAI::Internal::Type::Union - sig { override.returns([Symbol, Float]) } - def self.variants; end + Variants = T.type_alias { T.any(Symbol, Float) } + + sig do + override.returns( + T::Array[ + OpenAI::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters::Beta::Variants + ] + ) + end + def self.variants + end end # Scaling factor for the learning rate. A smaller learning rate may be useful to @@ -591,8 +768,17 @@ module OpenAI module LearningRateMultiplier extend OpenAI::Internal::Type::Union - sig { override.returns([Symbol, Float]) } - def self.variants; end + Variants = T.type_alias { T.any(Symbol, Float) } + + sig do + override.returns( + T::Array[ + OpenAI::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters::LearningRateMultiplier::Variants + ] + ) + end + def self.variants + end end # The number of epochs to train the model for. An epoch refers to one full cycle @@ -600,51 +786,71 @@ module OpenAI module NEpochs extend OpenAI::Internal::Type::Union - sig { override.returns([Symbol, Integer]) } - def self.variants; end + Variants = T.type_alias { T.any(Symbol, Integer) } + + sig do + override.returns( + T::Array[ + OpenAI::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters::NEpochs::Variants + ] + ) + end + def self.variants + end end end end class Supervised < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The hyperparameters used for the fine-tuning job. - sig { returns(T.nilable(OpenAI::Models::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters)) } + sig do + returns( + T.nilable( + OpenAI::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters + ) + ) + end attr_reader :hyperparameters sig do params( - hyperparameters: T.any( - OpenAI::Models::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters, - OpenAI::Internal::AnyHash - ) - ) - .void + hyperparameters: + OpenAI::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters::OrHash + ).void end attr_writer :hyperparameters # Configuration for the supervised fine-tuning method. sig do params( - hyperparameters: T.any( - OpenAI::Models::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters, - OpenAI::Internal::AnyHash - ) - ) - .returns(T.attached_class) + hyperparameters: + OpenAI::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters::OrHash + ).returns(T.attached_class) end def self.new( # The hyperparameters used for the fine-tuning job. hyperparameters: nil - ); end + ) + end + sig do - override - .returns( - {hyperparameters: OpenAI::Models::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters} - ) + override.returns( + { + hyperparameters: + OpenAI::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters + } + ) + end + def to_hash end - def to_hash; end class Hyperparameters < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Number of examples in each batch. A larger batch size means that model # parameters are updated less frequently, but with lower variance. sig { returns(T.nilable(T.any(Symbol, Integer))) } @@ -658,7 +864,9 @@ module OpenAI sig { returns(T.nilable(T.any(Symbol, Float))) } attr_reader :learning_rate_multiplier - sig { params(learning_rate_multiplier: T.any(Symbol, Float)).void } + sig do + params(learning_rate_multiplier: T.any(Symbol, Float)).void + end attr_writer :learning_rate_multiplier # The number of epochs to train the model for. An epoch refers to one full cycle @@ -675,8 +883,7 @@ module OpenAI batch_size: T.any(Symbol, Integer), learning_rate_multiplier: T.any(Symbol, Float), n_epochs: T.any(Symbol, Integer) - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # Number of examples in each batch. A larger batch size means that model @@ -688,26 +895,37 @@ module OpenAI # The number of epochs to train the model for. An epoch refers to one full cycle # through the training dataset. n_epochs: nil - ); end + ) + end + sig do - override - .returns( - { - batch_size: T.any(Symbol, Integer), - learning_rate_multiplier: T.any(Symbol, Float), - n_epochs: T.any(Symbol, Integer) - } - ) + override.returns( + { + batch_size: T.any(Symbol, Integer), + learning_rate_multiplier: T.any(Symbol, Float), + n_epochs: T.any(Symbol, Integer) + } + ) + end + def to_hash end - def to_hash; end # Number of examples in each batch. A larger batch size means that model # parameters are updated less frequently, but with lower variance. module BatchSize extend OpenAI::Internal::Type::Union - sig { override.returns([Symbol, Integer]) } - def self.variants; end + Variants = T.type_alias { T.any(Symbol, Integer) } + + sig do + override.returns( + T::Array[ + OpenAI::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters::BatchSize::Variants + ] + ) + end + def self.variants + end end # Scaling factor for the learning rate. A smaller learning rate may be useful to @@ -715,8 +933,17 @@ module OpenAI module LearningRateMultiplier extend OpenAI::Internal::Type::Union - sig { override.returns([Symbol, Float]) } - def self.variants; end + Variants = T.type_alias { T.any(Symbol, Float) } + + sig do + override.returns( + T::Array[ + OpenAI::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters::LearningRateMultiplier::Variants + ] + ) + end + def self.variants + end end # The number of epochs to train the model for. An epoch refers to one full cycle @@ -724,8 +951,17 @@ module OpenAI module NEpochs extend OpenAI::Internal::Type::Union - sig { override.returns([Symbol, Integer]) } - def self.variants; end + Variants = T.type_alias { T.any(Symbol, Integer) } + + sig do + override.returns( + T::Array[ + OpenAI::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters::NEpochs::Variants + ] + ) + end + def self.variants + end end end end @@ -734,14 +970,32 @@ module OpenAI module Type extend OpenAI::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::FineTuning::JobCreateParams::Method::Type) } + TaggedSymbol = + T.type_alias do + T.all(Symbol, OpenAI::FineTuning::JobCreateParams::Method::Type) + end OrSymbol = T.type_alias { T.any(Symbol, String) } - SUPERVISED = T.let(:supervised, OpenAI::Models::FineTuning::JobCreateParams::Method::Type::TaggedSymbol) - DPO = T.let(:dpo, OpenAI::Models::FineTuning::JobCreateParams::Method::Type::TaggedSymbol) + SUPERVISED = + T.let( + :supervised, + OpenAI::FineTuning::JobCreateParams::Method::Type::TaggedSymbol + ) + DPO = + T.let( + :dpo, + OpenAI::FineTuning::JobCreateParams::Method::Type::TaggedSymbol + ) - sig { override.returns(T::Array[OpenAI::Models::FineTuning::JobCreateParams::Method::Type::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[ + OpenAI::FineTuning::JobCreateParams::Method::Type::TaggedSymbol + ] + ) + end + def self.values + end end end end diff --git a/rbi/openai/models/fine_tuning/job_list_events_params.rbi b/rbi/openai/models/fine_tuning/job_list_events_params.rbi index 9bfe0d0a..60c32908 100644 --- a/rbi/openai/models/fine_tuning/job_list_events_params.rbi +++ b/rbi/openai/models/fine_tuning/job_list_events_params.rbi @@ -7,6 +7,8 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Identifier for the last event from the previous pagination request. sig { returns(T.nilable(String)) } attr_reader :after @@ -25,9 +27,8 @@ module OpenAI params( after: String, limit: Integer, - request_options: T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash) - ) - .returns(T.attached_class) + request_options: OpenAI::RequestOptions::OrHash + ).returns(T.attached_class) end def self.new( # Identifier for the last event from the previous pagination request. @@ -35,9 +36,20 @@ module OpenAI # Number of events to retrieve. limit: nil, request_options: {} - ); end - sig { override.returns({after: String, limit: Integer, request_options: OpenAI::RequestOptions}) } - def to_hash; end + ) + end + + sig do + override.returns( + { + after: String, + limit: Integer, + request_options: OpenAI::RequestOptions + } + ) + end + def to_hash + end end end end diff --git a/rbi/openai/models/fine_tuning/job_list_params.rbi b/rbi/openai/models/fine_tuning/job_list_params.rbi index 21062f5c..03b6a56d 100644 --- a/rbi/openai/models/fine_tuning/job_list_params.rbi +++ b/rbi/openai/models/fine_tuning/job_list_params.rbi @@ -7,6 +7,8 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Identifier for the last job from the previous pagination request. sig { returns(T.nilable(String)) } attr_reader :after @@ -31,9 +33,8 @@ module OpenAI after: String, limit: Integer, metadata: T.nilable(T::Hash[Symbol, String]), - request_options: T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash) - ) - .returns(T.attached_class) + request_options: OpenAI::RequestOptions::OrHash + ).returns(T.attached_class) end def self.new( # Identifier for the last job from the previous pagination request. @@ -44,19 +45,21 @@ module OpenAI # Alternatively, set `metadata=null` to indicate no metadata. metadata: nil, request_options: {} - ); end + ) + end + sig do - override - .returns( - { - after: String, - limit: Integer, - metadata: T.nilable(T::Hash[Symbol, String]), - request_options: OpenAI::RequestOptions - } - ) + override.returns( + { + after: String, + limit: Integer, + metadata: T.nilable(T::Hash[Symbol, String]), + request_options: OpenAI::RequestOptions + } + ) + end + def to_hash end - def to_hash; end end end end diff --git a/rbi/openai/models/fine_tuning/job_retrieve_params.rbi b/rbi/openai/models/fine_tuning/job_retrieve_params.rbi index ca938301..2d5d4a41 100644 --- a/rbi/openai/models/fine_tuning/job_retrieve_params.rbi +++ b/rbi/openai/models/fine_tuning/job_retrieve_params.rbi @@ -7,18 +7,19 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + sig do - params( - request_options: T.any( - OpenAI::RequestOptions, - OpenAI::Internal::AnyHash - ) - ).returns(T.attached_class) + params(request_options: OpenAI::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: OpenAI::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: OpenAI::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/openai/models/fine_tuning/jobs/checkpoint_list_params.rbi b/rbi/openai/models/fine_tuning/jobs/checkpoint_list_params.rbi index 27afbe12..29a595b3 100644 --- a/rbi/openai/models/fine_tuning/jobs/checkpoint_list_params.rbi +++ b/rbi/openai/models/fine_tuning/jobs/checkpoint_list_params.rbi @@ -8,6 +8,9 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Identifier for the last checkpoint ID from the previous pagination request. sig { returns(T.nilable(String)) } attr_reader :after @@ -26,9 +29,8 @@ module OpenAI params( after: String, limit: Integer, - request_options: T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash) - ) - .returns(T.attached_class) + request_options: OpenAI::RequestOptions::OrHash + ).returns(T.attached_class) end def self.new( # Identifier for the last checkpoint ID from the previous pagination request. @@ -36,9 +38,20 @@ module OpenAI # Number of checkpoints to retrieve. limit: nil, request_options: {} - ); end - sig { override.returns({after: String, limit: Integer, request_options: OpenAI::RequestOptions}) } - def to_hash; end + ) + end + + sig do + override.returns( + { + after: String, + limit: Integer, + request_options: OpenAI::RequestOptions + } + ) + end + def to_hash + end end end end diff --git a/rbi/openai/models/fine_tuning/jobs/fine_tuning_job_checkpoint.rbi b/rbi/openai/models/fine_tuning/jobs/fine_tuning_job_checkpoint.rbi index 527bf6e5..80b8eb71 100644 --- a/rbi/openai/models/fine_tuning/jobs/fine_tuning_job_checkpoint.rbi +++ b/rbi/openai/models/fine_tuning/jobs/fine_tuning_job_checkpoint.rbi @@ -5,6 +5,9 @@ module OpenAI module FineTuning module Jobs class FineTuningJobCheckpoint < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The checkpoint identifier, which can be referenced in the API endpoints. sig { returns(String) } attr_accessor :id @@ -22,14 +25,16 @@ module OpenAI attr_accessor :fine_tuning_job_id # Metrics at the step number during the fine-tuning job. - sig { returns(OpenAI::Models::FineTuning::Jobs::FineTuningJobCheckpoint::Metrics) } + sig do + returns(OpenAI::FineTuning::Jobs::FineTuningJobCheckpoint::Metrics) + end attr_reader :metrics sig do params( - metrics: T.any(OpenAI::Models::FineTuning::Jobs::FineTuningJobCheckpoint::Metrics, OpenAI::Internal::AnyHash) - ) - .void + metrics: + OpenAI::FineTuning::Jobs::FineTuningJobCheckpoint::Metrics::OrHash + ).void end attr_writer :metrics @@ -49,11 +54,11 @@ module OpenAI created_at: Integer, fine_tuned_model_checkpoint: String, fine_tuning_job_id: String, - metrics: T.any(OpenAI::Models::FineTuning::Jobs::FineTuningJobCheckpoint::Metrics, OpenAI::Internal::AnyHash), + metrics: + OpenAI::FineTuning::Jobs::FineTuningJobCheckpoint::Metrics::OrHash, step_number: Integer, object: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # The checkpoint identifier, which can be referenced in the API endpoints. @@ -70,24 +75,30 @@ module OpenAI step_number:, # The object type, which is always "fine_tuning.job.checkpoint". object: :"fine_tuning.job.checkpoint" - ); end + ) + end + sig do - override - .returns( - { - id: String, - created_at: Integer, - fine_tuned_model_checkpoint: String, - fine_tuning_job_id: String, - metrics: OpenAI::Models::FineTuning::Jobs::FineTuningJobCheckpoint::Metrics, - object: Symbol, - step_number: Integer - } - ) + override.returns( + { + id: String, + created_at: Integer, + fine_tuned_model_checkpoint: String, + fine_tuning_job_id: String, + metrics: + OpenAI::FineTuning::Jobs::FineTuningJobCheckpoint::Metrics, + object: Symbol, + step_number: Integer + } + ) + end + def to_hash end - def to_hash; end class Metrics < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + sig { returns(T.nilable(Float)) } attr_reader :full_valid_loss @@ -140,8 +151,7 @@ module OpenAI train_mean_token_accuracy: Float, valid_loss: Float, valid_mean_token_accuracy: Float - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( full_valid_loss: nil, @@ -151,22 +161,24 @@ module OpenAI train_mean_token_accuracy: nil, valid_loss: nil, valid_mean_token_accuracy: nil - ); end + ) + end + sig do - override - .returns( - { - full_valid_loss: Float, - full_valid_mean_token_accuracy: Float, - step: Float, - train_loss: Float, - train_mean_token_accuracy: Float, - valid_loss: Float, - valid_mean_token_accuracy: Float - } - ) + override.returns( + { + full_valid_loss: Float, + full_valid_mean_token_accuracy: Float, + step: Float, + train_loss: Float, + train_mean_token_accuracy: Float, + valid_loss: Float, + valid_mean_token_accuracy: Float + } + ) + end + def to_hash end - def to_hash; end end end end diff --git a/rbi/openai/models/function_definition.rbi b/rbi/openai/models/function_definition.rbi index bed3cc2c..66649eae 100644 --- a/rbi/openai/models/function_definition.rbi +++ b/rbi/openai/models/function_definition.rbi @@ -3,6 +3,8 @@ module OpenAI module Models class FunctionDefinition < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The name of the function to be called. Must be a-z, A-Z, 0-9, or contain # underscores and dashes, with a maximum length of 64. sig { returns(String) } @@ -43,8 +45,7 @@ module OpenAI description: String, parameters: T::Hash[Symbol, T.anything], strict: T.nilable(T::Boolean) - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # The name of the function to be called. Must be a-z, A-Z, 0-9, or contain @@ -67,19 +68,21 @@ module OpenAI # more about Structured Outputs in the # [function calling guide](docs/guides/function-calling). strict: nil - ); end + ) + end + sig do - override - .returns( - { - name: String, - description: String, - parameters: T::Hash[Symbol, T.anything], - strict: T.nilable(T::Boolean) - } - ) + override.returns( + { + name: String, + description: String, + parameters: T::Hash[Symbol, T.anything], + strict: T.nilable(T::Boolean) + } + ) + end + def to_hash end - def to_hash; end end end end diff --git a/rbi/openai/models/image.rbi b/rbi/openai/models/image.rbi index fa3f7278..867722c0 100644 --- a/rbi/openai/models/image.rbi +++ b/rbi/openai/models/image.rbi @@ -3,6 +3,8 @@ module OpenAI module Models class Image < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The base64-encoded JSON of the generated image. Default value for `gpt-image-1`, # and only present if `response_format` is set to `b64_json` for `dall-e-2` and # `dall-e-3`. @@ -29,7 +31,11 @@ module OpenAI attr_writer :url # Represents the content or the URL of an image generated by the OpenAI API. - sig { params(b64_json: String, revised_prompt: String, url: String).returns(T.attached_class) } + sig do + params(b64_json: String, revised_prompt: String, url: String).returns( + T.attached_class + ) + end def self.new( # The base64-encoded JSON of the generated image. Default value for `gpt-image-1`, # and only present if `response_format` is set to `b64_json` for `dall-e-2` and @@ -41,9 +47,16 @@ module OpenAI # `response_format` is set to `url` (default value). Unsupported for # `gpt-image-1`. url: nil - ); end - sig { override.returns({b64_json: String, revised_prompt: String, url: String}) } - def to_hash; end + ) + end + + sig do + override.returns( + { b64_json: String, revised_prompt: String, url: String } + ) + end + def to_hash + end end end end diff --git a/rbi/openai/models/image_create_variation_params.rbi b/rbi/openai/models/image_create_variation_params.rbi index 361f3512..9c31879a 100644 --- a/rbi/openai/models/image_create_variation_params.rbi +++ b/rbi/openai/models/image_create_variation_params.rbi @@ -6,6 +6,8 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The image to use as the basis for the variation(s). Must be a valid PNG file, # less than 4MB, and square. sig { returns(T.any(Pathname, StringIO, IO, OpenAI::FilePart)) } @@ -13,7 +15,7 @@ module OpenAI # The model to use for image generation. Only `dall-e-2` is supported at this # time. - sig { returns(T.nilable(T.any(String, OpenAI::Models::ImageModel::OrSymbol))) } + sig { returns(T.nilable(T.any(String, OpenAI::ImageModel::OrSymbol))) } attr_accessor :model # The number of images to generate. Must be between 1 and 10. @@ -23,12 +25,20 @@ module OpenAI # The format in which the generated images are returned. Must be one of `url` or # `b64_json`. URLs are only valid for 60 minutes after the image has been # generated. - sig { returns(T.nilable(OpenAI::Models::ImageCreateVariationParams::ResponseFormat::OrSymbol)) } + sig do + returns( + T.nilable( + OpenAI::ImageCreateVariationParams::ResponseFormat::OrSymbol + ) + ) + end attr_accessor :response_format # The size of the generated images. Must be one of `256x256`, `512x512`, or # `1024x1024`. - sig { returns(T.nilable(OpenAI::Models::ImageCreateVariationParams::Size::OrSymbol)) } + sig do + returns(T.nilable(OpenAI::ImageCreateVariationParams::Size::OrSymbol)) + end attr_accessor :size # A unique identifier representing your end-user, which can help OpenAI to monitor @@ -43,14 +53,16 @@ module OpenAI sig do params( image: T.any(Pathname, StringIO, IO, OpenAI::FilePart), - model: T.nilable(T.any(String, OpenAI::Models::ImageModel::OrSymbol)), + model: T.nilable(T.any(String, OpenAI::ImageModel::OrSymbol)), n: T.nilable(Integer), - response_format: T.nilable(OpenAI::Models::ImageCreateVariationParams::ResponseFormat::OrSymbol), - size: T.nilable(OpenAI::Models::ImageCreateVariationParams::Size::OrSymbol), + response_format: + T.nilable( + OpenAI::ImageCreateVariationParams::ResponseFormat::OrSymbol + ), + size: T.nilable(OpenAI::ImageCreateVariationParams::Size::OrSymbol), user: String, - request_options: T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash) - ) - .returns(T.attached_class) + request_options: OpenAI::RequestOptions::OrHash + ).returns(T.attached_class) end def self.new( # The image to use as the basis for the variation(s). Must be a valid PNG file, @@ -73,30 +85,43 @@ module OpenAI # [Learn more](https://platform.openai.com/docs/guides/safety-best-practices#end-user-ids). user: nil, request_options: {} - ); end + ) + end + sig do - override - .returns( - { - image: T.any(Pathname, StringIO, IO, OpenAI::FilePart), - model: T.nilable(T.any(String, OpenAI::Models::ImageModel::OrSymbol)), - n: T.nilable(Integer), - response_format: T.nilable(OpenAI::Models::ImageCreateVariationParams::ResponseFormat::OrSymbol), - size: T.nilable(OpenAI::Models::ImageCreateVariationParams::Size::OrSymbol), - user: String, - request_options: OpenAI::RequestOptions - } - ) + override.returns( + { + image: T.any(Pathname, StringIO, IO, OpenAI::FilePart), + model: T.nilable(T.any(String, OpenAI::ImageModel::OrSymbol)), + n: T.nilable(Integer), + response_format: + T.nilable( + OpenAI::ImageCreateVariationParams::ResponseFormat::OrSymbol + ), + size: T.nilable(OpenAI::ImageCreateVariationParams::Size::OrSymbol), + user: String, + request_options: OpenAI::RequestOptions + } + ) + end + def to_hash end - def to_hash; end # The model to use for image generation. Only `dall-e-2` is supported at this # time. module Model extend OpenAI::Internal::Type::Union - sig { override.returns([String, OpenAI::Models::ImageModel::TaggedSymbol]) } - def self.variants; end + Variants = + T.type_alias { T.any(String, OpenAI::ImageModel::TaggedSymbol) } + + sig do + override.returns( + T::Array[OpenAI::ImageCreateVariationParams::Model::Variants] + ) + end + def self.variants + end end # The format in which the generated images are returned. Must be one of `url` or @@ -105,14 +130,32 @@ module OpenAI module ResponseFormat extend OpenAI::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::ImageCreateVariationParams::ResponseFormat) } + TaggedSymbol = + T.type_alias do + T.all(Symbol, OpenAI::ImageCreateVariationParams::ResponseFormat) + end OrSymbol = T.type_alias { T.any(Symbol, String) } - URL = T.let(:url, OpenAI::Models::ImageCreateVariationParams::ResponseFormat::TaggedSymbol) - B64_JSON = T.let(:b64_json, OpenAI::Models::ImageCreateVariationParams::ResponseFormat::TaggedSymbol) + URL = + T.let( + :url, + OpenAI::ImageCreateVariationParams::ResponseFormat::TaggedSymbol + ) + B64_JSON = + T.let( + :b64_json, + OpenAI::ImageCreateVariationParams::ResponseFormat::TaggedSymbol + ) - sig { override.returns(T::Array[OpenAI::Models::ImageCreateVariationParams::ResponseFormat::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[ + OpenAI::ImageCreateVariationParams::ResponseFormat::TaggedSymbol + ] + ) + end + def self.values + end end # The size of the generated images. Must be one of `256x256`, `512x512`, or @@ -120,15 +163,35 @@ module OpenAI module Size extend OpenAI::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::ImageCreateVariationParams::Size) } + TaggedSymbol = + T.type_alias do + T.all(Symbol, OpenAI::ImageCreateVariationParams::Size) + end OrSymbol = T.type_alias { T.any(Symbol, String) } - SIZE_256X256 = T.let(:"256x256", OpenAI::Models::ImageCreateVariationParams::Size::TaggedSymbol) - SIZE_512X512 = T.let(:"512x512", OpenAI::Models::ImageCreateVariationParams::Size::TaggedSymbol) - SIZE_1024X1024 = T.let(:"1024x1024", OpenAI::Models::ImageCreateVariationParams::Size::TaggedSymbol) + SIZE_256X256 = + T.let( + :"256x256", + OpenAI::ImageCreateVariationParams::Size::TaggedSymbol + ) + SIZE_512X512 = + T.let( + :"512x512", + OpenAI::ImageCreateVariationParams::Size::TaggedSymbol + ) + SIZE_1024X1024 = + T.let( + :"1024x1024", + OpenAI::ImageCreateVariationParams::Size::TaggedSymbol + ) - sig { override.returns(T::Array[OpenAI::Models::ImageCreateVariationParams::Size::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[OpenAI::ImageCreateVariationParams::Size::TaggedSymbol] + ) + end + def self.values + end end end end diff --git a/rbi/openai/models/image_edit_params.rbi b/rbi/openai/models/image_edit_params.rbi index 54150702..6fd55690 100644 --- a/rbi/openai/models/image_edit_params.rbi +++ b/rbi/openai/models/image_edit_params.rbi @@ -6,6 +6,8 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The image(s) to edit. Must be a supported image file or an array of images. # # For `gpt-image-1`, each image should be a `png`, `webp`, or `jpg` file less than @@ -38,14 +40,16 @@ module OpenAI # # If `transparent`, the output format needs to support transparency, so it should # be set to either `png` (default value) or `webp`. - sig { returns(T.nilable(OpenAI::Models::ImageEditParams::Background::OrSymbol)) } + sig { returns(T.nilable(OpenAI::ImageEditParams::Background::OrSymbol)) } attr_accessor :background # An additional image whose fully transparent areas (e.g. where alpha is zero) # indicate where `image` should be edited. If there are multiple images provided, # the mask will be applied on the first image. Must be a valid PNG file, less than # 4MB, and have the same dimensions as `image`. - sig { returns(T.nilable(T.any(Pathname, StringIO, IO, OpenAI::FilePart))) } + sig do + returns(T.nilable(T.any(Pathname, StringIO, IO, OpenAI::FilePart))) + end attr_reader :mask sig { params(mask: T.any(Pathname, StringIO, IO, OpenAI::FilePart)).void } @@ -54,7 +58,7 @@ module OpenAI # The model to use for image generation. Only `dall-e-2` and `gpt-image-1` are # supported. Defaults to `dall-e-2` unless a parameter specific to `gpt-image-1` # is used. - sig { returns(T.nilable(T.any(String, OpenAI::Models::ImageModel::OrSymbol))) } + sig { returns(T.nilable(T.any(String, OpenAI::ImageModel::OrSymbol))) } attr_accessor :model # The number of images to generate. Must be between 1 and 10. @@ -64,20 +68,22 @@ module OpenAI # The quality of the image that will be generated. `high`, `medium` and `low` are # only supported for `gpt-image-1`. `dall-e-2` only supports `standard` quality. # Defaults to `auto`. - sig { returns(T.nilable(OpenAI::Models::ImageEditParams::Quality::OrSymbol)) } + sig { returns(T.nilable(OpenAI::ImageEditParams::Quality::OrSymbol)) } attr_accessor :quality # The format in which the generated images are returned. Must be one of `url` or # `b64_json`. URLs are only valid for 60 minutes after the image has been # generated. This parameter is only supported for `dall-e-2`, as `gpt-image-1` # will always return base64-encoded images. - sig { returns(T.nilable(OpenAI::Models::ImageEditParams::ResponseFormat::OrSymbol)) } + sig do + returns(T.nilable(OpenAI::ImageEditParams::ResponseFormat::OrSymbol)) + end attr_accessor :response_format # The size of the generated images. Must be one of `1024x1024`, `1536x1024` # (landscape), `1024x1536` (portrait), or `auto` (default value) for # `gpt-image-1`, and one of `256x256`, `512x512`, or `1024x1024` for `dall-e-2`. - sig { returns(T.nilable(OpenAI::Models::ImageEditParams::Size::OrSymbol)) } + sig { returns(T.nilable(OpenAI::ImageEditParams::Size::OrSymbol)) } attr_accessor :size # A unique identifier representing your end-user, which can help OpenAI to monitor @@ -91,25 +97,26 @@ module OpenAI sig do params( - image: T.any( - Pathname, - StringIO, - IO, - OpenAI::FilePart, - T::Array[T.any(Pathname, StringIO, IO, OpenAI::FilePart)] - ), + image: + T.any( + Pathname, + StringIO, + IO, + OpenAI::FilePart, + T::Array[T.any(Pathname, StringIO, IO, OpenAI::FilePart)] + ), prompt: String, - background: T.nilable(OpenAI::Models::ImageEditParams::Background::OrSymbol), + background: T.nilable(OpenAI::ImageEditParams::Background::OrSymbol), mask: T.any(Pathname, StringIO, IO, OpenAI::FilePart), - model: T.nilable(T.any(String, OpenAI::Models::ImageModel::OrSymbol)), + model: T.nilable(T.any(String, OpenAI::ImageModel::OrSymbol)), n: T.nilable(Integer), - quality: T.nilable(OpenAI::Models::ImageEditParams::Quality::OrSymbol), - response_format: T.nilable(OpenAI::Models::ImageEditParams::ResponseFormat::OrSymbol), - size: T.nilable(OpenAI::Models::ImageEditParams::Size::OrSymbol), + quality: T.nilable(OpenAI::ImageEditParams::Quality::OrSymbol), + response_format: + T.nilable(OpenAI::ImageEditParams::ResponseFormat::OrSymbol), + size: T.nilable(OpenAI::ImageEditParams::Size::OrSymbol), user: String, - request_options: T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash) - ) - .returns(T.attached_class) + request_options: OpenAI::RequestOptions::OrHash + ).returns(T.attached_class) end def self.new( # The image(s) to edit. Must be a supported image file or an array of images. @@ -160,32 +167,37 @@ module OpenAI # [Learn more](https://platform.openai.com/docs/guides/safety-best-practices#end-user-ids). user: nil, request_options: {} - ); end + ) + end + sig do - override - .returns( - { - image: T.any( + override.returns( + { + image: + T.any( Pathname, StringIO, IO, OpenAI::FilePart, T::Array[T.any(Pathname, StringIO, IO, OpenAI::FilePart)] ), - prompt: String, - background: T.nilable(OpenAI::Models::ImageEditParams::Background::OrSymbol), - mask: T.any(Pathname, StringIO, IO, OpenAI::FilePart), - model: T.nilable(T.any(String, OpenAI::Models::ImageModel::OrSymbol)), - n: T.nilable(Integer), - quality: T.nilable(OpenAI::Models::ImageEditParams::Quality::OrSymbol), - response_format: T.nilable(OpenAI::Models::ImageEditParams::ResponseFormat::OrSymbol), - size: T.nilable(OpenAI::Models::ImageEditParams::Size::OrSymbol), - user: String, - request_options: OpenAI::RequestOptions - } - ) + prompt: String, + background: + T.nilable(OpenAI::ImageEditParams::Background::OrSymbol), + mask: T.any(Pathname, StringIO, IO, OpenAI::FilePart), + model: T.nilable(T.any(String, OpenAI::ImageModel::OrSymbol)), + n: T.nilable(Integer), + quality: T.nilable(OpenAI::ImageEditParams::Quality::OrSymbol), + response_format: + T.nilable(OpenAI::ImageEditParams::ResponseFormat::OrSymbol), + size: T.nilable(OpenAI::ImageEditParams::Size::OrSymbol), + user: String, + request_options: OpenAI::RequestOptions + } + ) + end + def to_hash end - def to_hash; end # The image(s) to edit. Must be a supported image file or an array of images. # @@ -197,8 +209,13 @@ module OpenAI module Image extend OpenAI::Internal::Type::Union - sig { override.returns([StringIO, T::Array[StringIO]]) } - def self.variants; end + Variants = T.type_alias { T.any(StringIO, T::Array[StringIO]) } + + sig do + override.returns(T::Array[OpenAI::ImageEditParams::Image::Variants]) + end + def self.variants + end StringArray = T.let( @@ -217,15 +234,23 @@ module OpenAI module Background extend OpenAI::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::ImageEditParams::Background) } + TaggedSymbol = + T.type_alias { T.all(Symbol, OpenAI::ImageEditParams::Background) } OrSymbol = T.type_alias { T.any(Symbol, String) } - TRANSPARENT = T.let(:transparent, OpenAI::Models::ImageEditParams::Background::TaggedSymbol) - OPAQUE = T.let(:opaque, OpenAI::Models::ImageEditParams::Background::TaggedSymbol) - AUTO = T.let(:auto, OpenAI::Models::ImageEditParams::Background::TaggedSymbol) + TRANSPARENT = + T.let(:transparent, OpenAI::ImageEditParams::Background::TaggedSymbol) + OPAQUE = + T.let(:opaque, OpenAI::ImageEditParams::Background::TaggedSymbol) + AUTO = T.let(:auto, OpenAI::ImageEditParams::Background::TaggedSymbol) - sig { override.returns(T::Array[OpenAI::Models::ImageEditParams::Background::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[OpenAI::ImageEditParams::Background::TaggedSymbol] + ) + end + def self.values + end end # The model to use for image generation. Only `dall-e-2` and `gpt-image-1` are @@ -234,8 +259,14 @@ module OpenAI module Model extend OpenAI::Internal::Type::Union - sig { override.returns([String, OpenAI::Models::ImageModel::TaggedSymbol]) } - def self.variants; end + Variants = + T.type_alias { T.any(String, OpenAI::ImageModel::TaggedSymbol) } + + sig do + override.returns(T::Array[OpenAI::ImageEditParams::Model::Variants]) + end + def self.variants + end end # The quality of the image that will be generated. `high`, `medium` and `low` are @@ -244,17 +275,24 @@ module OpenAI module Quality extend OpenAI::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::ImageEditParams::Quality) } + TaggedSymbol = + T.type_alias { T.all(Symbol, OpenAI::ImageEditParams::Quality) } OrSymbol = T.type_alias { T.any(Symbol, String) } - STANDARD = T.let(:standard, OpenAI::Models::ImageEditParams::Quality::TaggedSymbol) - LOW = T.let(:low, OpenAI::Models::ImageEditParams::Quality::TaggedSymbol) - MEDIUM = T.let(:medium, OpenAI::Models::ImageEditParams::Quality::TaggedSymbol) - HIGH = T.let(:high, OpenAI::Models::ImageEditParams::Quality::TaggedSymbol) - AUTO = T.let(:auto, OpenAI::Models::ImageEditParams::Quality::TaggedSymbol) + STANDARD = + T.let(:standard, OpenAI::ImageEditParams::Quality::TaggedSymbol) + LOW = T.let(:low, OpenAI::ImageEditParams::Quality::TaggedSymbol) + MEDIUM = T.let(:medium, OpenAI::ImageEditParams::Quality::TaggedSymbol) + HIGH = T.let(:high, OpenAI::ImageEditParams::Quality::TaggedSymbol) + AUTO = T.let(:auto, OpenAI::ImageEditParams::Quality::TaggedSymbol) - sig { override.returns(T::Array[OpenAI::Models::ImageEditParams::Quality::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[OpenAI::ImageEditParams::Quality::TaggedSymbol] + ) + end + def self.values + end end # The format in which the generated images are returned. Must be one of `url` or @@ -264,14 +302,26 @@ module OpenAI module ResponseFormat extend OpenAI::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::ImageEditParams::ResponseFormat) } + TaggedSymbol = + T.type_alias do + T.all(Symbol, OpenAI::ImageEditParams::ResponseFormat) + end OrSymbol = T.type_alias { T.any(Symbol, String) } - URL = T.let(:url, OpenAI::Models::ImageEditParams::ResponseFormat::TaggedSymbol) - B64_JSON = T.let(:b64_json, OpenAI::Models::ImageEditParams::ResponseFormat::TaggedSymbol) + URL = T.let(:url, OpenAI::ImageEditParams::ResponseFormat::TaggedSymbol) + B64_JSON = + T.let( + :b64_json, + OpenAI::ImageEditParams::ResponseFormat::TaggedSymbol + ) - sig { override.returns(T::Array[OpenAI::Models::ImageEditParams::ResponseFormat::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[OpenAI::ImageEditParams::ResponseFormat::TaggedSymbol] + ) + end + def self.values + end end # The size of the generated images. Must be one of `1024x1024`, `1536x1024` @@ -280,18 +330,29 @@ module OpenAI module Size extend OpenAI::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::ImageEditParams::Size) } + TaggedSymbol = + T.type_alias { T.all(Symbol, OpenAI::ImageEditParams::Size) } OrSymbol = T.type_alias { T.any(Symbol, String) } - SIZE_256X256 = T.let(:"256x256", OpenAI::Models::ImageEditParams::Size::TaggedSymbol) - SIZE_512X512 = T.let(:"512x512", OpenAI::Models::ImageEditParams::Size::TaggedSymbol) - SIZE_1024X1024 = T.let(:"1024x1024", OpenAI::Models::ImageEditParams::Size::TaggedSymbol) - SIZE_1536X1024 = T.let(:"1536x1024", OpenAI::Models::ImageEditParams::Size::TaggedSymbol) - SIZE_1024X1536 = T.let(:"1024x1536", OpenAI::Models::ImageEditParams::Size::TaggedSymbol) - AUTO = T.let(:auto, OpenAI::Models::ImageEditParams::Size::TaggedSymbol) - - sig { override.returns(T::Array[OpenAI::Models::ImageEditParams::Size::TaggedSymbol]) } - def self.values; end + SIZE_256X256 = + T.let(:"256x256", OpenAI::ImageEditParams::Size::TaggedSymbol) + SIZE_512X512 = + T.let(:"512x512", OpenAI::ImageEditParams::Size::TaggedSymbol) + SIZE_1024X1024 = + T.let(:"1024x1024", OpenAI::ImageEditParams::Size::TaggedSymbol) + SIZE_1536X1024 = + T.let(:"1536x1024", OpenAI::ImageEditParams::Size::TaggedSymbol) + SIZE_1024X1536 = + T.let(:"1024x1536", OpenAI::ImageEditParams::Size::TaggedSymbol) + AUTO = T.let(:auto, OpenAI::ImageEditParams::Size::TaggedSymbol) + + sig do + override.returns( + T::Array[OpenAI::ImageEditParams::Size::TaggedSymbol] + ) + end + def self.values + end end end end diff --git a/rbi/openai/models/image_generate_params.rbi b/rbi/openai/models/image_generate_params.rbi index 3dd3c2e4..72894e72 100644 --- a/rbi/openai/models/image_generate_params.rbi +++ b/rbi/openai/models/image_generate_params.rbi @@ -6,6 +6,8 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # A text description of the desired image(s). The maximum length is 32000 # characters for `gpt-image-1`, 1000 characters for `dall-e-2` and 4000 characters # for `dall-e-3`. @@ -19,18 +21,22 @@ module OpenAI # # If `transparent`, the output format needs to support transparency, so it should # be set to either `png` (default value) or `webp`. - sig { returns(T.nilable(OpenAI::Models::ImageGenerateParams::Background::OrSymbol)) } + sig do + returns(T.nilable(OpenAI::ImageGenerateParams::Background::OrSymbol)) + end attr_accessor :background # The model to use for image generation. One of `dall-e-2`, `dall-e-3`, or # `gpt-image-1`. Defaults to `dall-e-2` unless a parameter specific to # `gpt-image-1` is used. - sig { returns(T.nilable(T.any(String, OpenAI::Models::ImageModel::OrSymbol))) } + sig { returns(T.nilable(T.any(String, OpenAI::ImageModel::OrSymbol))) } attr_accessor :model # Control the content-moderation level for images generated by `gpt-image-1`. Must # be either `low` for less restrictive filtering or `auto` (default value). - sig { returns(T.nilable(OpenAI::Models::ImageGenerateParams::Moderation::OrSymbol)) } + sig do + returns(T.nilable(OpenAI::ImageGenerateParams::Moderation::OrSymbol)) + end attr_accessor :moderation # The number of images to generate. Must be between 1 and 10. For `dall-e-3`, only @@ -46,7 +52,9 @@ module OpenAI # The format in which the generated images are returned. This parameter is only # supported for `gpt-image-1`. Must be one of `png`, `jpeg`, or `webp`. - sig { returns(T.nilable(OpenAI::Models::ImageGenerateParams::OutputFormat::OrSymbol)) } + sig do + returns(T.nilable(OpenAI::ImageGenerateParams::OutputFormat::OrSymbol)) + end attr_accessor :output_format # The quality of the image that will be generated. @@ -56,28 +64,32 @@ module OpenAI # - `high`, `medium` and `low` are supported for `gpt-image-1`. # - `hd` and `standard` are supported for `dall-e-3`. # - `standard` is the only option for `dall-e-2`. - sig { returns(T.nilable(OpenAI::Models::ImageGenerateParams::Quality::OrSymbol)) } + sig { returns(T.nilable(OpenAI::ImageGenerateParams::Quality::OrSymbol)) } attr_accessor :quality # The format in which generated images with `dall-e-2` and `dall-e-3` are # returned. Must be one of `url` or `b64_json`. URLs are only valid for 60 minutes # after the image has been generated. This parameter isn't supported for # `gpt-image-1` which will always return base64-encoded images. - sig { returns(T.nilable(OpenAI::Models::ImageGenerateParams::ResponseFormat::OrSymbol)) } + sig do + returns( + T.nilable(OpenAI::ImageGenerateParams::ResponseFormat::OrSymbol) + ) + end attr_accessor :response_format # The size of the generated images. Must be one of `1024x1024`, `1536x1024` # (landscape), `1024x1536` (portrait), or `auto` (default value) for # `gpt-image-1`, one of `256x256`, `512x512`, or `1024x1024` for `dall-e-2`, and # one of `1024x1024`, `1792x1024`, or `1024x1792` for `dall-e-3`. - sig { returns(T.nilable(OpenAI::Models::ImageGenerateParams::Size::OrSymbol)) } + sig { returns(T.nilable(OpenAI::ImageGenerateParams::Size::OrSymbol)) } attr_accessor :size # The style of the generated images. This parameter is only supported for # `dall-e-3`. Must be one of `vivid` or `natural`. Vivid causes the model to lean # towards generating hyper-real and dramatic images. Natural causes the model to # produce more natural, less hyper-real looking images. - sig { returns(T.nilable(OpenAI::Models::ImageGenerateParams::Style::OrSymbol)) } + sig { returns(T.nilable(OpenAI::ImageGenerateParams::Style::OrSymbol)) } attr_accessor :style # A unique identifier representing your end-user, which can help OpenAI to monitor @@ -92,20 +104,23 @@ module OpenAI sig do params( prompt: String, - background: T.nilable(OpenAI::Models::ImageGenerateParams::Background::OrSymbol), - model: T.nilable(T.any(String, OpenAI::Models::ImageModel::OrSymbol)), - moderation: T.nilable(OpenAI::Models::ImageGenerateParams::Moderation::OrSymbol), + background: + T.nilable(OpenAI::ImageGenerateParams::Background::OrSymbol), + model: T.nilable(T.any(String, OpenAI::ImageModel::OrSymbol)), + moderation: + T.nilable(OpenAI::ImageGenerateParams::Moderation::OrSymbol), n: T.nilable(Integer), output_compression: T.nilable(Integer), - output_format: T.nilable(OpenAI::Models::ImageGenerateParams::OutputFormat::OrSymbol), - quality: T.nilable(OpenAI::Models::ImageGenerateParams::Quality::OrSymbol), - response_format: T.nilable(OpenAI::Models::ImageGenerateParams::ResponseFormat::OrSymbol), - size: T.nilable(OpenAI::Models::ImageGenerateParams::Size::OrSymbol), - style: T.nilable(OpenAI::Models::ImageGenerateParams::Style::OrSymbol), + output_format: + T.nilable(OpenAI::ImageGenerateParams::OutputFormat::OrSymbol), + quality: T.nilable(OpenAI::ImageGenerateParams::Quality::OrSymbol), + response_format: + T.nilable(OpenAI::ImageGenerateParams::ResponseFormat::OrSymbol), + size: T.nilable(OpenAI::ImageGenerateParams::Size::OrSymbol), + style: T.nilable(OpenAI::ImageGenerateParams::Style::OrSymbol), user: String, - request_options: T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash) - ) - .returns(T.attached_class) + request_options: OpenAI::RequestOptions::OrHash + ).returns(T.attached_class) end def self.new( # A text description of the desired image(s). The maximum length is 32000 @@ -165,28 +180,34 @@ module OpenAI # [Learn more](https://platform.openai.com/docs/guides/safety-best-practices#end-user-ids). user: nil, request_options: {} - ); end + ) + end + sig do - override - .returns( - { - prompt: String, - background: T.nilable(OpenAI::Models::ImageGenerateParams::Background::OrSymbol), - model: T.nilable(T.any(String, OpenAI::Models::ImageModel::OrSymbol)), - moderation: T.nilable(OpenAI::Models::ImageGenerateParams::Moderation::OrSymbol), - n: T.nilable(Integer), - output_compression: T.nilable(Integer), - output_format: T.nilable(OpenAI::Models::ImageGenerateParams::OutputFormat::OrSymbol), - quality: T.nilable(OpenAI::Models::ImageGenerateParams::Quality::OrSymbol), - response_format: T.nilable(OpenAI::Models::ImageGenerateParams::ResponseFormat::OrSymbol), - size: T.nilable(OpenAI::Models::ImageGenerateParams::Size::OrSymbol), - style: T.nilable(OpenAI::Models::ImageGenerateParams::Style::OrSymbol), - user: String, - request_options: OpenAI::RequestOptions - } - ) + override.returns( + { + prompt: String, + background: + T.nilable(OpenAI::ImageGenerateParams::Background::OrSymbol), + model: T.nilable(T.any(String, OpenAI::ImageModel::OrSymbol)), + moderation: + T.nilable(OpenAI::ImageGenerateParams::Moderation::OrSymbol), + n: T.nilable(Integer), + output_compression: T.nilable(Integer), + output_format: + T.nilable(OpenAI::ImageGenerateParams::OutputFormat::OrSymbol), + quality: T.nilable(OpenAI::ImageGenerateParams::Quality::OrSymbol), + response_format: + T.nilable(OpenAI::ImageGenerateParams::ResponseFormat::OrSymbol), + size: T.nilable(OpenAI::ImageGenerateParams::Size::OrSymbol), + style: T.nilable(OpenAI::ImageGenerateParams::Style::OrSymbol), + user: String, + request_options: OpenAI::RequestOptions + } + ) + end + def to_hash end - def to_hash; end # Allows to set transparency for the background of the generated image(s). This # parameter is only supported for `gpt-image-1`. Must be one of `transparent`, @@ -198,15 +219,29 @@ module OpenAI module Background extend OpenAI::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::ImageGenerateParams::Background) } + TaggedSymbol = + T.type_alias do + T.all(Symbol, OpenAI::ImageGenerateParams::Background) + end OrSymbol = T.type_alias { T.any(Symbol, String) } - TRANSPARENT = T.let(:transparent, OpenAI::Models::ImageGenerateParams::Background::TaggedSymbol) - OPAQUE = T.let(:opaque, OpenAI::Models::ImageGenerateParams::Background::TaggedSymbol) - AUTO = T.let(:auto, OpenAI::Models::ImageGenerateParams::Background::TaggedSymbol) - - sig { override.returns(T::Array[OpenAI::Models::ImageGenerateParams::Background::TaggedSymbol]) } - def self.values; end + TRANSPARENT = + T.let( + :transparent, + OpenAI::ImageGenerateParams::Background::TaggedSymbol + ) + OPAQUE = + T.let(:opaque, OpenAI::ImageGenerateParams::Background::TaggedSymbol) + AUTO = + T.let(:auto, OpenAI::ImageGenerateParams::Background::TaggedSymbol) + + sig do + override.returns( + T::Array[OpenAI::ImageGenerateParams::Background::TaggedSymbol] + ) + end + def self.values + end end # The model to use for image generation. One of `dall-e-2`, `dall-e-3`, or @@ -215,8 +250,16 @@ module OpenAI module Model extend OpenAI::Internal::Type::Union - sig { override.returns([String, OpenAI::Models::ImageModel::TaggedSymbol]) } - def self.variants; end + Variants = + T.type_alias { T.any(String, OpenAI::ImageModel::TaggedSymbol) } + + sig do + override.returns( + T::Array[OpenAI::ImageGenerateParams::Model::Variants] + ) + end + def self.variants + end end # Control the content-moderation level for images generated by `gpt-image-1`. Must @@ -224,14 +267,23 @@ module OpenAI module Moderation extend OpenAI::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::ImageGenerateParams::Moderation) } + TaggedSymbol = + T.type_alias do + T.all(Symbol, OpenAI::ImageGenerateParams::Moderation) + end OrSymbol = T.type_alias { T.any(Symbol, String) } - LOW = T.let(:low, OpenAI::Models::ImageGenerateParams::Moderation::TaggedSymbol) - AUTO = T.let(:auto, OpenAI::Models::ImageGenerateParams::Moderation::TaggedSymbol) + LOW = T.let(:low, OpenAI::ImageGenerateParams::Moderation::TaggedSymbol) + AUTO = + T.let(:auto, OpenAI::ImageGenerateParams::Moderation::TaggedSymbol) - sig { override.returns(T::Array[OpenAI::Models::ImageGenerateParams::Moderation::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[OpenAI::ImageGenerateParams::Moderation::TaggedSymbol] + ) + end + def self.values + end end # The format in which the generated images are returned. This parameter is only @@ -239,15 +291,26 @@ module OpenAI module OutputFormat extend OpenAI::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::ImageGenerateParams::OutputFormat) } + TaggedSymbol = + T.type_alias do + T.all(Symbol, OpenAI::ImageGenerateParams::OutputFormat) + end OrSymbol = T.type_alias { T.any(Symbol, String) } - PNG = T.let(:png, OpenAI::Models::ImageGenerateParams::OutputFormat::TaggedSymbol) - JPEG = T.let(:jpeg, OpenAI::Models::ImageGenerateParams::OutputFormat::TaggedSymbol) - WEBP = T.let(:webp, OpenAI::Models::ImageGenerateParams::OutputFormat::TaggedSymbol) + PNG = + T.let(:png, OpenAI::ImageGenerateParams::OutputFormat::TaggedSymbol) + JPEG = + T.let(:jpeg, OpenAI::ImageGenerateParams::OutputFormat::TaggedSymbol) + WEBP = + T.let(:webp, OpenAI::ImageGenerateParams::OutputFormat::TaggedSymbol) - sig { override.returns(T::Array[OpenAI::Models::ImageGenerateParams::OutputFormat::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[OpenAI::ImageGenerateParams::OutputFormat::TaggedSymbol] + ) + end + def self.values + end end # The quality of the image that will be generated. @@ -260,18 +323,26 @@ module OpenAI module Quality extend OpenAI::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::ImageGenerateParams::Quality) } + TaggedSymbol = + T.type_alias { T.all(Symbol, OpenAI::ImageGenerateParams::Quality) } OrSymbol = T.type_alias { T.any(Symbol, String) } - STANDARD = T.let(:standard, OpenAI::Models::ImageGenerateParams::Quality::TaggedSymbol) - HD = T.let(:hd, OpenAI::Models::ImageGenerateParams::Quality::TaggedSymbol) - LOW = T.let(:low, OpenAI::Models::ImageGenerateParams::Quality::TaggedSymbol) - MEDIUM = T.let(:medium, OpenAI::Models::ImageGenerateParams::Quality::TaggedSymbol) - HIGH = T.let(:high, OpenAI::Models::ImageGenerateParams::Quality::TaggedSymbol) - AUTO = T.let(:auto, OpenAI::Models::ImageGenerateParams::Quality::TaggedSymbol) - - sig { override.returns(T::Array[OpenAI::Models::ImageGenerateParams::Quality::TaggedSymbol]) } - def self.values; end + STANDARD = + T.let(:standard, OpenAI::ImageGenerateParams::Quality::TaggedSymbol) + HD = T.let(:hd, OpenAI::ImageGenerateParams::Quality::TaggedSymbol) + LOW = T.let(:low, OpenAI::ImageGenerateParams::Quality::TaggedSymbol) + MEDIUM = + T.let(:medium, OpenAI::ImageGenerateParams::Quality::TaggedSymbol) + HIGH = T.let(:high, OpenAI::ImageGenerateParams::Quality::TaggedSymbol) + AUTO = T.let(:auto, OpenAI::ImageGenerateParams::Quality::TaggedSymbol) + + sig do + override.returns( + T::Array[OpenAI::ImageGenerateParams::Quality::TaggedSymbol] + ) + end + def self.values + end end # The format in which generated images with `dall-e-2` and `dall-e-3` are @@ -281,14 +352,27 @@ module OpenAI module ResponseFormat extend OpenAI::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::ImageGenerateParams::ResponseFormat) } + TaggedSymbol = + T.type_alias do + T.all(Symbol, OpenAI::ImageGenerateParams::ResponseFormat) + end OrSymbol = T.type_alias { T.any(Symbol, String) } - URL = T.let(:url, OpenAI::Models::ImageGenerateParams::ResponseFormat::TaggedSymbol) - B64_JSON = T.let(:b64_json, OpenAI::Models::ImageGenerateParams::ResponseFormat::TaggedSymbol) + URL = + T.let(:url, OpenAI::ImageGenerateParams::ResponseFormat::TaggedSymbol) + B64_JSON = + T.let( + :b64_json, + OpenAI::ImageGenerateParams::ResponseFormat::TaggedSymbol + ) - sig { override.returns(T::Array[OpenAI::Models::ImageGenerateParams::ResponseFormat::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[OpenAI::ImageGenerateParams::ResponseFormat::TaggedSymbol] + ) + end + def self.values + end end # The size of the generated images. Must be one of `1024x1024`, `1536x1024` @@ -298,20 +382,33 @@ module OpenAI module Size extend OpenAI::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::ImageGenerateParams::Size) } + TaggedSymbol = + T.type_alias { T.all(Symbol, OpenAI::ImageGenerateParams::Size) } OrSymbol = T.type_alias { T.any(Symbol, String) } - AUTO = T.let(:auto, OpenAI::Models::ImageGenerateParams::Size::TaggedSymbol) - SIZE_1024X1024 = T.let(:"1024x1024", OpenAI::Models::ImageGenerateParams::Size::TaggedSymbol) - SIZE_1536X1024 = T.let(:"1536x1024", OpenAI::Models::ImageGenerateParams::Size::TaggedSymbol) - SIZE_1024X1536 = T.let(:"1024x1536", OpenAI::Models::ImageGenerateParams::Size::TaggedSymbol) - SIZE_256X256 = T.let(:"256x256", OpenAI::Models::ImageGenerateParams::Size::TaggedSymbol) - SIZE_512X512 = T.let(:"512x512", OpenAI::Models::ImageGenerateParams::Size::TaggedSymbol) - SIZE_1792X1024 = T.let(:"1792x1024", OpenAI::Models::ImageGenerateParams::Size::TaggedSymbol) - SIZE_1024X1792 = T.let(:"1024x1792", OpenAI::Models::ImageGenerateParams::Size::TaggedSymbol) - - sig { override.returns(T::Array[OpenAI::Models::ImageGenerateParams::Size::TaggedSymbol]) } - def self.values; end + AUTO = T.let(:auto, OpenAI::ImageGenerateParams::Size::TaggedSymbol) + SIZE_1024X1024 = + T.let(:"1024x1024", OpenAI::ImageGenerateParams::Size::TaggedSymbol) + SIZE_1536X1024 = + T.let(:"1536x1024", OpenAI::ImageGenerateParams::Size::TaggedSymbol) + SIZE_1024X1536 = + T.let(:"1024x1536", OpenAI::ImageGenerateParams::Size::TaggedSymbol) + SIZE_256X256 = + T.let(:"256x256", OpenAI::ImageGenerateParams::Size::TaggedSymbol) + SIZE_512X512 = + T.let(:"512x512", OpenAI::ImageGenerateParams::Size::TaggedSymbol) + SIZE_1792X1024 = + T.let(:"1792x1024", OpenAI::ImageGenerateParams::Size::TaggedSymbol) + SIZE_1024X1792 = + T.let(:"1024x1792", OpenAI::ImageGenerateParams::Size::TaggedSymbol) + + sig do + override.returns( + T::Array[OpenAI::ImageGenerateParams::Size::TaggedSymbol] + ) + end + def self.values + end end # The style of the generated images. This parameter is only supported for @@ -321,14 +418,21 @@ module OpenAI module Style extend OpenAI::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::ImageGenerateParams::Style) } + TaggedSymbol = + T.type_alias { T.all(Symbol, OpenAI::ImageGenerateParams::Style) } OrSymbol = T.type_alias { T.any(Symbol, String) } - VIVID = T.let(:vivid, OpenAI::Models::ImageGenerateParams::Style::TaggedSymbol) - NATURAL = T.let(:natural, OpenAI::Models::ImageGenerateParams::Style::TaggedSymbol) + VIVID = T.let(:vivid, OpenAI::ImageGenerateParams::Style::TaggedSymbol) + NATURAL = + T.let(:natural, OpenAI::ImageGenerateParams::Style::TaggedSymbol) - sig { override.returns(T::Array[OpenAI::Models::ImageGenerateParams::Style::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[OpenAI::ImageGenerateParams::Style::TaggedSymbol] + ) + end + def self.values + end end end end diff --git a/rbi/openai/models/image_model.rbi b/rbi/openai/models/image_model.rbi index bf52f382..dabb10a7 100644 --- a/rbi/openai/models/image_model.rbi +++ b/rbi/openai/models/image_model.rbi @@ -5,15 +5,16 @@ module OpenAI module ImageModel extend OpenAI::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::ImageModel) } + TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::ImageModel) } OrSymbol = T.type_alias { T.any(Symbol, String) } - DALL_E_2 = T.let(:"dall-e-2", OpenAI::Models::ImageModel::TaggedSymbol) - DALL_E_3 = T.let(:"dall-e-3", OpenAI::Models::ImageModel::TaggedSymbol) - GPT_IMAGE_1 = T.let(:"gpt-image-1", OpenAI::Models::ImageModel::TaggedSymbol) + DALL_E_2 = T.let(:"dall-e-2", OpenAI::ImageModel::TaggedSymbol) + DALL_E_3 = T.let(:"dall-e-3", OpenAI::ImageModel::TaggedSymbol) + GPT_IMAGE_1 = T.let(:"gpt-image-1", OpenAI::ImageModel::TaggedSymbol) - sig { override.returns(T::Array[OpenAI::Models::ImageModel::TaggedSymbol]) } - def self.values; end + sig { override.returns(T::Array[OpenAI::ImageModel::TaggedSymbol]) } + def self.values + end end end end diff --git a/rbi/openai/models/images_response.rbi b/rbi/openai/models/images_response.rbi index cdfcd65f..86766493 100644 --- a/rbi/openai/models/images_response.rbi +++ b/rbi/openai/models/images_response.rbi @@ -3,32 +3,33 @@ module OpenAI module Models class ImagesResponse < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The Unix timestamp (in seconds) of when the image was created. sig { returns(Integer) } attr_accessor :created # The list of generated images. - sig { returns(T.nilable(T::Array[OpenAI::Models::Image])) } + sig { returns(T.nilable(T::Array[OpenAI::Image])) } attr_reader :data - sig { params(data: T::Array[T.any(OpenAI::Models::Image, OpenAI::Internal::AnyHash)]).void } + sig { params(data: T::Array[OpenAI::Image::OrHash]).void } attr_writer :data # For `gpt-image-1` only, the token usage information for the image generation. - sig { returns(T.nilable(OpenAI::Models::ImagesResponse::Usage)) } + sig { returns(T.nilable(OpenAI::ImagesResponse::Usage)) } attr_reader :usage - sig { params(usage: T.any(OpenAI::Models::ImagesResponse::Usage, OpenAI::Internal::AnyHash)).void } + sig { params(usage: OpenAI::ImagesResponse::Usage::OrHash).void } attr_writer :usage # The response from the image generation endpoint. sig do params( created: Integer, - data: T::Array[T.any(OpenAI::Models::Image, OpenAI::Internal::AnyHash)], - usage: T.any(OpenAI::Models::ImagesResponse::Usage, OpenAI::Internal::AnyHash) - ) - .returns(T.attached_class) + data: T::Array[OpenAI::Image::OrHash], + usage: OpenAI::ImagesResponse::Usage::OrHash + ).returns(T.attached_class) end def self.new( # The Unix timestamp (in seconds) of when the image was created. @@ -37,29 +38,37 @@ module OpenAI data: nil, # For `gpt-image-1` only, the token usage information for the image generation. usage: nil - ); end + ) + end + sig do - override - .returns( - {created: Integer, data: T::Array[OpenAI::Models::Image], usage: OpenAI::Models::ImagesResponse::Usage} - ) + override.returns( + { + created: Integer, + data: T::Array[OpenAI::Image], + usage: OpenAI::ImagesResponse::Usage + } + ) + end + def to_hash end - def to_hash; end class Usage < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The number of tokens (images and text) in the input prompt. sig { returns(Integer) } attr_accessor :input_tokens # The input tokens detailed information for the image generation. - sig { returns(OpenAI::Models::ImagesResponse::Usage::InputTokensDetails) } + sig { returns(OpenAI::ImagesResponse::Usage::InputTokensDetails) } attr_reader :input_tokens_details sig do params( - input_tokens_details: T.any(OpenAI::Models::ImagesResponse::Usage::InputTokensDetails, OpenAI::Internal::AnyHash) - ) - .void + input_tokens_details: + OpenAI::ImagesResponse::Usage::InputTokensDetails::OrHash + ).void end attr_writer :input_tokens_details @@ -75,11 +84,11 @@ module OpenAI sig do params( input_tokens: Integer, - input_tokens_details: T.any(OpenAI::Models::ImagesResponse::Usage::InputTokensDetails, OpenAI::Internal::AnyHash), + input_tokens_details: + OpenAI::ImagesResponse::Usage::InputTokensDetails::OrHash, output_tokens: Integer, total_tokens: Integer - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # The number of tokens (images and text) in the input prompt. @@ -90,21 +99,27 @@ module OpenAI output_tokens:, # The total number of tokens (images and text) used for the image generation. total_tokens: - ); end + ) + end + sig do - override - .returns( - { - input_tokens: Integer, - input_tokens_details: OpenAI::Models::ImagesResponse::Usage::InputTokensDetails, - output_tokens: Integer, - total_tokens: Integer - } - ) + override.returns( + { + input_tokens: Integer, + input_tokens_details: + OpenAI::ImagesResponse::Usage::InputTokensDetails, + output_tokens: Integer, + total_tokens: Integer + } + ) + end + def to_hash end - def to_hash; end class InputTokensDetails < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The number of image tokens in the input prompt. sig { returns(Integer) } attr_accessor :image_tokens @@ -114,15 +129,24 @@ module OpenAI attr_accessor :text_tokens # The input tokens detailed information for the image generation. - sig { params(image_tokens: Integer, text_tokens: Integer).returns(T.attached_class) } + sig do + params(image_tokens: Integer, text_tokens: Integer).returns( + T.attached_class + ) + end def self.new( # The number of image tokens in the input prompt. image_tokens:, # The number of text tokens in the input prompt. text_tokens: - ); end - sig { override.returns({image_tokens: Integer, text_tokens: Integer}) } - def to_hash; end + ) + end + + sig do + override.returns({ image_tokens: Integer, text_tokens: Integer }) + end + def to_hash + end end end end diff --git a/rbi/openai/models/metadata.rbi b/rbi/openai/models/metadata.rbi index 04102855..82208718 100644 --- a/rbi/openai/models/metadata.rbi +++ b/rbi/openai/models/metadata.rbi @@ -2,6 +2,10 @@ module OpenAI module Models - Metadata = T.let(OpenAI::Internal::Type::HashOf[String], OpenAI::Internal::Type::Converter) + Metadata = + T.let( + OpenAI::Internal::Type::HashOf[String], + OpenAI::Internal::Type::Converter + ) end end diff --git a/rbi/openai/models/model.rbi b/rbi/openai/models/model.rbi index 06ccb9b5..3e2886a8 100644 --- a/rbi/openai/models/model.rbi +++ b/rbi/openai/models/model.rbi @@ -3,6 +3,8 @@ module OpenAI module Models class Model < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The model identifier, which can be referenced in the API endpoints. sig { returns(String) } attr_accessor :id @@ -20,7 +22,14 @@ module OpenAI attr_accessor :owned_by # Describes an OpenAI model offering that can be used with the API. - sig { params(id: String, created: Integer, owned_by: String, object: Symbol).returns(T.attached_class) } + sig do + params( + id: String, + created: Integer, + owned_by: String, + object: Symbol + ).returns(T.attached_class) + end def self.new( # The model identifier, which can be referenced in the API endpoints. id:, @@ -30,9 +39,16 @@ module OpenAI owned_by:, # The object type, which is always "model". object: :model - ); end - sig { override.returns({id: String, created: Integer, object: Symbol, owned_by: String}) } - def to_hash; end + ) + end + + sig do + override.returns( + { id: String, created: Integer, object: Symbol, owned_by: String } + ) + end + def to_hash + end end end end diff --git a/rbi/openai/models/model_delete_params.rbi b/rbi/openai/models/model_delete_params.rbi index 9a19e392..34aa523d 100644 --- a/rbi/openai/models/model_delete_params.rbi +++ b/rbi/openai/models/model_delete_params.rbi @@ -6,18 +6,19 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + sig do - params( - request_options: T.any( - OpenAI::RequestOptions, - OpenAI::Internal::AnyHash - ) - ).returns(T.attached_class) + params(request_options: OpenAI::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: OpenAI::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: OpenAI::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/openai/models/model_deleted.rbi b/rbi/openai/models/model_deleted.rbi index e5b41780..61571ba3 100644 --- a/rbi/openai/models/model_deleted.rbi +++ b/rbi/openai/models/model_deleted.rbi @@ -3,6 +3,8 @@ module OpenAI module Models class ModelDeleted < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + sig { returns(String) } attr_accessor :id @@ -12,11 +14,19 @@ module OpenAI sig { returns(String) } attr_accessor :object - sig { params(id: String, deleted: T::Boolean, object: String).returns(T.attached_class) } - def self.new(id:, deleted:, object:); end + sig do + params(id: String, deleted: T::Boolean, object: String).returns( + T.attached_class + ) + end + def self.new(id:, deleted:, object:) + end - sig { override.returns({id: String, deleted: T::Boolean, object: String}) } - def to_hash; end + sig do + override.returns({ id: String, deleted: T::Boolean, object: String }) + end + def to_hash + end end end end diff --git a/rbi/openai/models/model_list_params.rbi b/rbi/openai/models/model_list_params.rbi index 6ecd8a67..6b5c0602 100644 --- a/rbi/openai/models/model_list_params.rbi +++ b/rbi/openai/models/model_list_params.rbi @@ -6,18 +6,19 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + sig do - params( - request_options: T.any( - OpenAI::RequestOptions, - OpenAI::Internal::AnyHash - ) - ).returns(T.attached_class) + params(request_options: OpenAI::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: OpenAI::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: OpenAI::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/openai/models/model_retrieve_params.rbi b/rbi/openai/models/model_retrieve_params.rbi index 1b835b5d..69b847c8 100644 --- a/rbi/openai/models/model_retrieve_params.rbi +++ b/rbi/openai/models/model_retrieve_params.rbi @@ -6,18 +6,19 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + sig do - params( - request_options: T.any( - OpenAI::RequestOptions, - OpenAI::Internal::AnyHash - ) - ).returns(T.attached_class) + params(request_options: OpenAI::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: OpenAI::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: OpenAI::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/openai/models/moderation.rbi b/rbi/openai/models/moderation.rbi index 8f8c32af..d069ca8a 100644 --- a/rbi/openai/models/moderation.rbi +++ b/rbi/openai/models/moderation.rbi @@ -3,30 +3,34 @@ module OpenAI module Models class Moderation < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # A list of the categories, and whether they are flagged or not. - sig { returns(OpenAI::Models::Moderation::Categories) } + sig { returns(OpenAI::Moderation::Categories) } attr_reader :categories - sig { params(categories: T.any(OpenAI::Models::Moderation::Categories, OpenAI::Internal::AnyHash)).void } + sig { params(categories: OpenAI::Moderation::Categories::OrHash).void } attr_writer :categories # A list of the categories along with the input type(s) that the score applies to. - sig { returns(OpenAI::Models::Moderation::CategoryAppliedInputTypes) } + sig { returns(OpenAI::Moderation::CategoryAppliedInputTypes) } attr_reader :category_applied_input_types sig do params( - category_applied_input_types: T.any(OpenAI::Models::Moderation::CategoryAppliedInputTypes, OpenAI::Internal::AnyHash) - ) - .void + category_applied_input_types: + OpenAI::Moderation::CategoryAppliedInputTypes::OrHash + ).void end attr_writer :category_applied_input_types # A list of the categories along with their scores as predicted by model. - sig { returns(OpenAI::Models::Moderation::CategoryScores) } + sig { returns(OpenAI::Moderation::CategoryScores) } attr_reader :category_scores - sig { params(category_scores: T.any(OpenAI::Models::Moderation::CategoryScores, OpenAI::Internal::AnyHash)).void } + sig do + params(category_scores: OpenAI::Moderation::CategoryScores::OrHash).void + end attr_writer :category_scores # Whether any of the below categories are flagged. @@ -35,12 +39,12 @@ module OpenAI sig do params( - categories: T.any(OpenAI::Models::Moderation::Categories, OpenAI::Internal::AnyHash), - category_applied_input_types: T.any(OpenAI::Models::Moderation::CategoryAppliedInputTypes, OpenAI::Internal::AnyHash), - category_scores: T.any(OpenAI::Models::Moderation::CategoryScores, OpenAI::Internal::AnyHash), + categories: OpenAI::Moderation::Categories::OrHash, + category_applied_input_types: + OpenAI::Moderation::CategoryAppliedInputTypes::OrHash, + category_scores: OpenAI::Moderation::CategoryScores::OrHash, flagged: T::Boolean - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # A list of the categories, and whether they are flagged or not. @@ -51,21 +55,26 @@ module OpenAI category_scores:, # Whether any of the below categories are flagged. flagged: - ); end + ) + end + sig do - override - .returns( - { - categories: OpenAI::Models::Moderation::Categories, - category_applied_input_types: OpenAI::Models::Moderation::CategoryAppliedInputTypes, - category_scores: OpenAI::Models::Moderation::CategoryScores, - flagged: T::Boolean - } - ) + override.returns( + { + categories: OpenAI::Moderation::Categories, + category_applied_input_types: + OpenAI::Moderation::CategoryAppliedInputTypes, + category_scores: OpenAI::Moderation::CategoryScores, + flagged: T::Boolean + } + ) + end + def to_hash end - def to_hash; end class Categories < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Content that expresses, incites, or promotes harassing language towards any # target. sig { returns(T::Boolean) } @@ -151,8 +160,7 @@ module OpenAI sexual_minors: T::Boolean, violence: T::Boolean, violence_graphic: T::Boolean - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # Content that expresses, incites, or promotes harassing language towards any @@ -198,109 +206,221 @@ module OpenAI violence:, # Content that depicts death, violence, or physical injury in graphic detail. violence_graphic: - ); end + ) + end + sig do - override - .returns( - { - harassment: T::Boolean, - harassment_threatening: T::Boolean, - hate: T::Boolean, - hate_threatening: T::Boolean, - illicit: T.nilable(T::Boolean), - illicit_violent: T.nilable(T::Boolean), - self_harm: T::Boolean, - self_harm_instructions: T::Boolean, - self_harm_intent: T::Boolean, - sexual: T::Boolean, - sexual_minors: T::Boolean, - violence: T::Boolean, - violence_graphic: T::Boolean - } - ) - end - def to_hash; end + override.returns( + { + harassment: T::Boolean, + harassment_threatening: T::Boolean, + hate: T::Boolean, + hate_threatening: T::Boolean, + illicit: T.nilable(T::Boolean), + illicit_violent: T.nilable(T::Boolean), + self_harm: T::Boolean, + self_harm_instructions: T::Boolean, + self_harm_intent: T::Boolean, + sexual: T::Boolean, + sexual_minors: T::Boolean, + violence: T::Boolean, + violence_graphic: T::Boolean + } + ) + end + def to_hash + end end class CategoryAppliedInputTypes < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The applied input type(s) for the category 'harassment'. - sig { returns(T::Array[OpenAI::Models::Moderation::CategoryAppliedInputTypes::Harassment::TaggedSymbol]) } + sig do + returns( + T::Array[ + OpenAI::Moderation::CategoryAppliedInputTypes::Harassment::TaggedSymbol + ] + ) + end attr_accessor :harassment # The applied input type(s) for the category 'harassment/threatening'. sig do returns( - T::Array[OpenAI::Models::Moderation::CategoryAppliedInputTypes::HarassmentThreatening::TaggedSymbol] + T::Array[ + OpenAI::Moderation::CategoryAppliedInputTypes::HarassmentThreatening::TaggedSymbol + ] ) end attr_accessor :harassment_threatening # The applied input type(s) for the category 'hate'. - sig { returns(T::Array[OpenAI::Models::Moderation::CategoryAppliedInputTypes::Hate::TaggedSymbol]) } + sig do + returns( + T::Array[ + OpenAI::Moderation::CategoryAppliedInputTypes::Hate::TaggedSymbol + ] + ) + end attr_accessor :hate # The applied input type(s) for the category 'hate/threatening'. - sig { returns(T::Array[OpenAI::Models::Moderation::CategoryAppliedInputTypes::HateThreatening::TaggedSymbol]) } + sig do + returns( + T::Array[ + OpenAI::Moderation::CategoryAppliedInputTypes::HateThreatening::TaggedSymbol + ] + ) + end attr_accessor :hate_threatening # The applied input type(s) for the category 'illicit'. - sig { returns(T::Array[OpenAI::Models::Moderation::CategoryAppliedInputTypes::Illicit::TaggedSymbol]) } + sig do + returns( + T::Array[ + OpenAI::Moderation::CategoryAppliedInputTypes::Illicit::TaggedSymbol + ] + ) + end attr_accessor :illicit # The applied input type(s) for the category 'illicit/violent'. - sig { returns(T::Array[OpenAI::Models::Moderation::CategoryAppliedInputTypes::IllicitViolent::TaggedSymbol]) } + sig do + returns( + T::Array[ + OpenAI::Moderation::CategoryAppliedInputTypes::IllicitViolent::TaggedSymbol + ] + ) + end attr_accessor :illicit_violent # The applied input type(s) for the category 'self-harm'. - sig { returns(T::Array[OpenAI::Models::Moderation::CategoryAppliedInputTypes::SelfHarm::TaggedSymbol]) } + sig do + returns( + T::Array[ + OpenAI::Moderation::CategoryAppliedInputTypes::SelfHarm::TaggedSymbol + ] + ) + end attr_accessor :self_harm # The applied input type(s) for the category 'self-harm/instructions'. sig do returns( - T::Array[OpenAI::Models::Moderation::CategoryAppliedInputTypes::SelfHarmInstruction::TaggedSymbol] + T::Array[ + OpenAI::Moderation::CategoryAppliedInputTypes::SelfHarmInstruction::TaggedSymbol + ] ) end attr_accessor :self_harm_instructions # The applied input type(s) for the category 'self-harm/intent'. - sig { returns(T::Array[OpenAI::Models::Moderation::CategoryAppliedInputTypes::SelfHarmIntent::TaggedSymbol]) } + sig do + returns( + T::Array[ + OpenAI::Moderation::CategoryAppliedInputTypes::SelfHarmIntent::TaggedSymbol + ] + ) + end attr_accessor :self_harm_intent # The applied input type(s) for the category 'sexual'. - sig { returns(T::Array[OpenAI::Models::Moderation::CategoryAppliedInputTypes::Sexual::TaggedSymbol]) } + sig do + returns( + T::Array[ + OpenAI::Moderation::CategoryAppliedInputTypes::Sexual::TaggedSymbol + ] + ) + end attr_accessor :sexual # The applied input type(s) for the category 'sexual/minors'. - sig { returns(T::Array[OpenAI::Models::Moderation::CategoryAppliedInputTypes::SexualMinor::TaggedSymbol]) } + sig do + returns( + T::Array[ + OpenAI::Moderation::CategoryAppliedInputTypes::SexualMinor::TaggedSymbol + ] + ) + end attr_accessor :sexual_minors # The applied input type(s) for the category 'violence'. - sig { returns(T::Array[OpenAI::Models::Moderation::CategoryAppliedInputTypes::Violence::TaggedSymbol]) } + sig do + returns( + T::Array[ + OpenAI::Moderation::CategoryAppliedInputTypes::Violence::TaggedSymbol + ] + ) + end attr_accessor :violence # The applied input type(s) for the category 'violence/graphic'. - sig { returns(T::Array[OpenAI::Models::Moderation::CategoryAppliedInputTypes::ViolenceGraphic::TaggedSymbol]) } + sig do + returns( + T::Array[ + OpenAI::Moderation::CategoryAppliedInputTypes::ViolenceGraphic::TaggedSymbol + ] + ) + end attr_accessor :violence_graphic # A list of the categories along with the input type(s) that the score applies to. sig do params( - harassment: T::Array[OpenAI::Models::Moderation::CategoryAppliedInputTypes::Harassment::OrSymbol], - harassment_threatening: T::Array[OpenAI::Models::Moderation::CategoryAppliedInputTypes::HarassmentThreatening::OrSymbol], - hate: T::Array[OpenAI::Models::Moderation::CategoryAppliedInputTypes::Hate::OrSymbol], - hate_threatening: T::Array[OpenAI::Models::Moderation::CategoryAppliedInputTypes::HateThreatening::OrSymbol], - illicit: T::Array[OpenAI::Models::Moderation::CategoryAppliedInputTypes::Illicit::OrSymbol], - illicit_violent: T::Array[OpenAI::Models::Moderation::CategoryAppliedInputTypes::IllicitViolent::OrSymbol], - self_harm: T::Array[OpenAI::Models::Moderation::CategoryAppliedInputTypes::SelfHarm::OrSymbol], - self_harm_instructions: T::Array[OpenAI::Models::Moderation::CategoryAppliedInputTypes::SelfHarmInstruction::OrSymbol], - self_harm_intent: T::Array[OpenAI::Models::Moderation::CategoryAppliedInputTypes::SelfHarmIntent::OrSymbol], - sexual: T::Array[OpenAI::Models::Moderation::CategoryAppliedInputTypes::Sexual::OrSymbol], - sexual_minors: T::Array[OpenAI::Models::Moderation::CategoryAppliedInputTypes::SexualMinor::OrSymbol], - violence: T::Array[OpenAI::Models::Moderation::CategoryAppliedInputTypes::Violence::OrSymbol], - violence_graphic: T::Array[OpenAI::Models::Moderation::CategoryAppliedInputTypes::ViolenceGraphic::OrSymbol] - ) - .returns(T.attached_class) + harassment: + T::Array[ + OpenAI::Moderation::CategoryAppliedInputTypes::Harassment::OrSymbol + ], + harassment_threatening: + T::Array[ + OpenAI::Moderation::CategoryAppliedInputTypes::HarassmentThreatening::OrSymbol + ], + hate: + T::Array[ + OpenAI::Moderation::CategoryAppliedInputTypes::Hate::OrSymbol + ], + hate_threatening: + T::Array[ + OpenAI::Moderation::CategoryAppliedInputTypes::HateThreatening::OrSymbol + ], + illicit: + T::Array[ + OpenAI::Moderation::CategoryAppliedInputTypes::Illicit::OrSymbol + ], + illicit_violent: + T::Array[ + OpenAI::Moderation::CategoryAppliedInputTypes::IllicitViolent::OrSymbol + ], + self_harm: + T::Array[ + OpenAI::Moderation::CategoryAppliedInputTypes::SelfHarm::OrSymbol + ], + self_harm_instructions: + T::Array[ + OpenAI::Moderation::CategoryAppliedInputTypes::SelfHarmInstruction::OrSymbol + ], + self_harm_intent: + T::Array[ + OpenAI::Moderation::CategoryAppliedInputTypes::SelfHarmIntent::OrSymbol + ], + sexual: + T::Array[ + OpenAI::Moderation::CategoryAppliedInputTypes::Sexual::OrSymbol + ], + sexual_minors: + T::Array[ + OpenAI::Moderation::CategoryAppliedInputTypes::SexualMinor::OrSymbol + ], + violence: + T::Array[ + OpenAI::Moderation::CategoryAppliedInputTypes::Violence::OrSymbol + ], + violence_graphic: + T::Array[ + OpenAI::Moderation::CategoryAppliedInputTypes::ViolenceGraphic::OrSymbol + ] + ).returns(T.attached_class) end def self.new( # The applied input type(s) for the category 'harassment'. @@ -329,238 +449,478 @@ module OpenAI violence:, # The applied input type(s) for the category 'violence/graphic'. violence_graphic: - ); end + ) + end + sig do - override - .returns( - { - harassment: T::Array[OpenAI::Models::Moderation::CategoryAppliedInputTypes::Harassment::TaggedSymbol], - harassment_threatening: T::Array[OpenAI::Models::Moderation::CategoryAppliedInputTypes::HarassmentThreatening::TaggedSymbol], - hate: T::Array[OpenAI::Models::Moderation::CategoryAppliedInputTypes::Hate::TaggedSymbol], - hate_threatening: T::Array[OpenAI::Models::Moderation::CategoryAppliedInputTypes::HateThreatening::TaggedSymbol], - illicit: T::Array[OpenAI::Models::Moderation::CategoryAppliedInputTypes::Illicit::TaggedSymbol], - illicit_violent: T::Array[OpenAI::Models::Moderation::CategoryAppliedInputTypes::IllicitViolent::TaggedSymbol], - self_harm: T::Array[OpenAI::Models::Moderation::CategoryAppliedInputTypes::SelfHarm::TaggedSymbol], - self_harm_instructions: T::Array[OpenAI::Models::Moderation::CategoryAppliedInputTypes::SelfHarmInstruction::TaggedSymbol], - self_harm_intent: T::Array[OpenAI::Models::Moderation::CategoryAppliedInputTypes::SelfHarmIntent::TaggedSymbol], - sexual: T::Array[OpenAI::Models::Moderation::CategoryAppliedInputTypes::Sexual::TaggedSymbol], - sexual_minors: T::Array[OpenAI::Models::Moderation::CategoryAppliedInputTypes::SexualMinor::TaggedSymbol], - violence: T::Array[OpenAI::Models::Moderation::CategoryAppliedInputTypes::Violence::TaggedSymbol], - violence_graphic: T::Array[OpenAI::Models::Moderation::CategoryAppliedInputTypes::ViolenceGraphic::TaggedSymbol] - } - ) - end - def to_hash; end + override.returns( + { + harassment: + T::Array[ + OpenAI::Moderation::CategoryAppliedInputTypes::Harassment::TaggedSymbol + ], + harassment_threatening: + T::Array[ + OpenAI::Moderation::CategoryAppliedInputTypes::HarassmentThreatening::TaggedSymbol + ], + hate: + T::Array[ + OpenAI::Moderation::CategoryAppliedInputTypes::Hate::TaggedSymbol + ], + hate_threatening: + T::Array[ + OpenAI::Moderation::CategoryAppliedInputTypes::HateThreatening::TaggedSymbol + ], + illicit: + T::Array[ + OpenAI::Moderation::CategoryAppliedInputTypes::Illicit::TaggedSymbol + ], + illicit_violent: + T::Array[ + OpenAI::Moderation::CategoryAppliedInputTypes::IllicitViolent::TaggedSymbol + ], + self_harm: + T::Array[ + OpenAI::Moderation::CategoryAppliedInputTypes::SelfHarm::TaggedSymbol + ], + self_harm_instructions: + T::Array[ + OpenAI::Moderation::CategoryAppliedInputTypes::SelfHarmInstruction::TaggedSymbol + ], + self_harm_intent: + T::Array[ + OpenAI::Moderation::CategoryAppliedInputTypes::SelfHarmIntent::TaggedSymbol + ], + sexual: + T::Array[ + OpenAI::Moderation::CategoryAppliedInputTypes::Sexual::TaggedSymbol + ], + sexual_minors: + T::Array[ + OpenAI::Moderation::CategoryAppliedInputTypes::SexualMinor::TaggedSymbol + ], + violence: + T::Array[ + OpenAI::Moderation::CategoryAppliedInputTypes::Violence::TaggedSymbol + ], + violence_graphic: + T::Array[ + OpenAI::Moderation::CategoryAppliedInputTypes::ViolenceGraphic::TaggedSymbol + ] + } + ) + end + def to_hash + end module Harassment extend OpenAI::Internal::Type::Enum TaggedSymbol = - T.type_alias { T.all(Symbol, OpenAI::Models::Moderation::CategoryAppliedInputTypes::Harassment) } + T.type_alias do + T.all( + Symbol, + OpenAI::Moderation::CategoryAppliedInputTypes::Harassment + ) + end OrSymbol = T.type_alias { T.any(Symbol, String) } - TEXT = T.let(:text, OpenAI::Models::Moderation::CategoryAppliedInputTypes::Harassment::TaggedSymbol) + TEXT = + T.let( + :text, + OpenAI::Moderation::CategoryAppliedInputTypes::Harassment::TaggedSymbol + ) sig do - override.returns(T::Array[OpenAI::Models::Moderation::CategoryAppliedInputTypes::Harassment::TaggedSymbol]) + override.returns( + T::Array[ + OpenAI::Moderation::CategoryAppliedInputTypes::Harassment::TaggedSymbol + ] + ) + end + def self.values end - def self.values; end end module HarassmentThreatening extend OpenAI::Internal::Type::Enum TaggedSymbol = - T.type_alias { T.all(Symbol, OpenAI::Models::Moderation::CategoryAppliedInputTypes::HarassmentThreatening) } + T.type_alias do + T.all( + Symbol, + OpenAI::Moderation::CategoryAppliedInputTypes::HarassmentThreatening + ) + end OrSymbol = T.type_alias { T.any(Symbol, String) } TEXT = - T.let(:text, OpenAI::Models::Moderation::CategoryAppliedInputTypes::HarassmentThreatening::TaggedSymbol) + T.let( + :text, + OpenAI::Moderation::CategoryAppliedInputTypes::HarassmentThreatening::TaggedSymbol + ) sig do - override - .returns( - T::Array[OpenAI::Models::Moderation::CategoryAppliedInputTypes::HarassmentThreatening::TaggedSymbol] - ) + override.returns( + T::Array[ + OpenAI::Moderation::CategoryAppliedInputTypes::HarassmentThreatening::TaggedSymbol + ] + ) + end + def self.values end - def self.values; end end module Hate extend OpenAI::Internal::Type::Enum TaggedSymbol = - T.type_alias { T.all(Symbol, OpenAI::Models::Moderation::CategoryAppliedInputTypes::Hate) } + T.type_alias do + T.all(Symbol, OpenAI::Moderation::CategoryAppliedInputTypes::Hate) + end OrSymbol = T.type_alias { T.any(Symbol, String) } - TEXT = T.let(:text, OpenAI::Models::Moderation::CategoryAppliedInputTypes::Hate::TaggedSymbol) + TEXT = + T.let( + :text, + OpenAI::Moderation::CategoryAppliedInputTypes::Hate::TaggedSymbol + ) - sig { override.returns(T::Array[OpenAI::Models::Moderation::CategoryAppliedInputTypes::Hate::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[ + OpenAI::Moderation::CategoryAppliedInputTypes::Hate::TaggedSymbol + ] + ) + end + def self.values + end end module HateThreatening extend OpenAI::Internal::Type::Enum TaggedSymbol = - T.type_alias { T.all(Symbol, OpenAI::Models::Moderation::CategoryAppliedInputTypes::HateThreatening) } + T.type_alias do + T.all( + Symbol, + OpenAI::Moderation::CategoryAppliedInputTypes::HateThreatening + ) + end OrSymbol = T.type_alias { T.any(Symbol, String) } - TEXT = T.let(:text, OpenAI::Models::Moderation::CategoryAppliedInputTypes::HateThreatening::TaggedSymbol) + TEXT = + T.let( + :text, + OpenAI::Moderation::CategoryAppliedInputTypes::HateThreatening::TaggedSymbol + ) sig do - override - .returns(T::Array[OpenAI::Models::Moderation::CategoryAppliedInputTypes::HateThreatening::TaggedSymbol]) + override.returns( + T::Array[ + OpenAI::Moderation::CategoryAppliedInputTypes::HateThreatening::TaggedSymbol + ] + ) + end + def self.values end - def self.values; end end module Illicit extend OpenAI::Internal::Type::Enum TaggedSymbol = - T.type_alias { T.all(Symbol, OpenAI::Models::Moderation::CategoryAppliedInputTypes::Illicit) } + T.type_alias do + T.all( + Symbol, + OpenAI::Moderation::CategoryAppliedInputTypes::Illicit + ) + end OrSymbol = T.type_alias { T.any(Symbol, String) } - TEXT = T.let(:text, OpenAI::Models::Moderation::CategoryAppliedInputTypes::Illicit::TaggedSymbol) + TEXT = + T.let( + :text, + OpenAI::Moderation::CategoryAppliedInputTypes::Illicit::TaggedSymbol + ) - sig { override.returns(T::Array[OpenAI::Models::Moderation::CategoryAppliedInputTypes::Illicit::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[ + OpenAI::Moderation::CategoryAppliedInputTypes::Illicit::TaggedSymbol + ] + ) + end + def self.values + end end module IllicitViolent extend OpenAI::Internal::Type::Enum TaggedSymbol = - T.type_alias { T.all(Symbol, OpenAI::Models::Moderation::CategoryAppliedInputTypes::IllicitViolent) } + T.type_alias do + T.all( + Symbol, + OpenAI::Moderation::CategoryAppliedInputTypes::IllicitViolent + ) + end OrSymbol = T.type_alias { T.any(Symbol, String) } - TEXT = T.let(:text, OpenAI::Models::Moderation::CategoryAppliedInputTypes::IllicitViolent::TaggedSymbol) + TEXT = + T.let( + :text, + OpenAI::Moderation::CategoryAppliedInputTypes::IllicitViolent::TaggedSymbol + ) sig do - override - .returns(T::Array[OpenAI::Models::Moderation::CategoryAppliedInputTypes::IllicitViolent::TaggedSymbol]) + override.returns( + T::Array[ + OpenAI::Moderation::CategoryAppliedInputTypes::IllicitViolent::TaggedSymbol + ] + ) + end + def self.values end - def self.values; end end module SelfHarm extend OpenAI::Internal::Type::Enum TaggedSymbol = - T.type_alias { T.all(Symbol, OpenAI::Models::Moderation::CategoryAppliedInputTypes::SelfHarm) } + T.type_alias do + T.all( + Symbol, + OpenAI::Moderation::CategoryAppliedInputTypes::SelfHarm + ) + end OrSymbol = T.type_alias { T.any(Symbol, String) } - TEXT = T.let(:text, OpenAI::Models::Moderation::CategoryAppliedInputTypes::SelfHarm::TaggedSymbol) - IMAGE = T.let(:image, OpenAI::Models::Moderation::CategoryAppliedInputTypes::SelfHarm::TaggedSymbol) + TEXT = + T.let( + :text, + OpenAI::Moderation::CategoryAppliedInputTypes::SelfHarm::TaggedSymbol + ) + IMAGE = + T.let( + :image, + OpenAI::Moderation::CategoryAppliedInputTypes::SelfHarm::TaggedSymbol + ) - sig { override.returns(T::Array[OpenAI::Models::Moderation::CategoryAppliedInputTypes::SelfHarm::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[ + OpenAI::Moderation::CategoryAppliedInputTypes::SelfHarm::TaggedSymbol + ] + ) + end + def self.values + end end module SelfHarmInstruction extend OpenAI::Internal::Type::Enum TaggedSymbol = - T.type_alias { T.all(Symbol, OpenAI::Models::Moderation::CategoryAppliedInputTypes::SelfHarmInstruction) } + T.type_alias do + T.all( + Symbol, + OpenAI::Moderation::CategoryAppliedInputTypes::SelfHarmInstruction + ) + end OrSymbol = T.type_alias { T.any(Symbol, String) } TEXT = - T.let(:text, OpenAI::Models::Moderation::CategoryAppliedInputTypes::SelfHarmInstruction::TaggedSymbol) + T.let( + :text, + OpenAI::Moderation::CategoryAppliedInputTypes::SelfHarmInstruction::TaggedSymbol + ) IMAGE = - T.let(:image, OpenAI::Models::Moderation::CategoryAppliedInputTypes::SelfHarmInstruction::TaggedSymbol) + T.let( + :image, + OpenAI::Moderation::CategoryAppliedInputTypes::SelfHarmInstruction::TaggedSymbol + ) sig do - override - .returns( - T::Array[OpenAI::Models::Moderation::CategoryAppliedInputTypes::SelfHarmInstruction::TaggedSymbol] - ) + override.returns( + T::Array[ + OpenAI::Moderation::CategoryAppliedInputTypes::SelfHarmInstruction::TaggedSymbol + ] + ) + end + def self.values end - def self.values; end end module SelfHarmIntent extend OpenAI::Internal::Type::Enum TaggedSymbol = - T.type_alias { T.all(Symbol, OpenAI::Models::Moderation::CategoryAppliedInputTypes::SelfHarmIntent) } + T.type_alias do + T.all( + Symbol, + OpenAI::Moderation::CategoryAppliedInputTypes::SelfHarmIntent + ) + end OrSymbol = T.type_alias { T.any(Symbol, String) } - TEXT = T.let(:text, OpenAI::Models::Moderation::CategoryAppliedInputTypes::SelfHarmIntent::TaggedSymbol) + TEXT = + T.let( + :text, + OpenAI::Moderation::CategoryAppliedInputTypes::SelfHarmIntent::TaggedSymbol + ) IMAGE = - T.let(:image, OpenAI::Models::Moderation::CategoryAppliedInputTypes::SelfHarmIntent::TaggedSymbol) + T.let( + :image, + OpenAI::Moderation::CategoryAppliedInputTypes::SelfHarmIntent::TaggedSymbol + ) sig do - override - .returns(T::Array[OpenAI::Models::Moderation::CategoryAppliedInputTypes::SelfHarmIntent::TaggedSymbol]) + override.returns( + T::Array[ + OpenAI::Moderation::CategoryAppliedInputTypes::SelfHarmIntent::TaggedSymbol + ] + ) + end + def self.values end - def self.values; end end module Sexual extend OpenAI::Internal::Type::Enum TaggedSymbol = - T.type_alias { T.all(Symbol, OpenAI::Models::Moderation::CategoryAppliedInputTypes::Sexual) } + T.type_alias do + T.all( + Symbol, + OpenAI::Moderation::CategoryAppliedInputTypes::Sexual + ) + end OrSymbol = T.type_alias { T.any(Symbol, String) } - TEXT = T.let(:text, OpenAI::Models::Moderation::CategoryAppliedInputTypes::Sexual::TaggedSymbol) - IMAGE = T.let(:image, OpenAI::Models::Moderation::CategoryAppliedInputTypes::Sexual::TaggedSymbol) + TEXT = + T.let( + :text, + OpenAI::Moderation::CategoryAppliedInputTypes::Sexual::TaggedSymbol + ) + IMAGE = + T.let( + :image, + OpenAI::Moderation::CategoryAppliedInputTypes::Sexual::TaggedSymbol + ) - sig { override.returns(T::Array[OpenAI::Models::Moderation::CategoryAppliedInputTypes::Sexual::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[ + OpenAI::Moderation::CategoryAppliedInputTypes::Sexual::TaggedSymbol + ] + ) + end + def self.values + end end module SexualMinor extend OpenAI::Internal::Type::Enum TaggedSymbol = - T.type_alias { T.all(Symbol, OpenAI::Models::Moderation::CategoryAppliedInputTypes::SexualMinor) } + T.type_alias do + T.all( + Symbol, + OpenAI::Moderation::CategoryAppliedInputTypes::SexualMinor + ) + end OrSymbol = T.type_alias { T.any(Symbol, String) } - TEXT = T.let(:text, OpenAI::Models::Moderation::CategoryAppliedInputTypes::SexualMinor::TaggedSymbol) + TEXT = + T.let( + :text, + OpenAI::Moderation::CategoryAppliedInputTypes::SexualMinor::TaggedSymbol + ) sig do - override - .returns(T::Array[OpenAI::Models::Moderation::CategoryAppliedInputTypes::SexualMinor::TaggedSymbol]) + override.returns( + T::Array[ + OpenAI::Moderation::CategoryAppliedInputTypes::SexualMinor::TaggedSymbol + ] + ) + end + def self.values end - def self.values; end end module Violence extend OpenAI::Internal::Type::Enum TaggedSymbol = - T.type_alias { T.all(Symbol, OpenAI::Models::Moderation::CategoryAppliedInputTypes::Violence) } + T.type_alias do + T.all( + Symbol, + OpenAI::Moderation::CategoryAppliedInputTypes::Violence + ) + end OrSymbol = T.type_alias { T.any(Symbol, String) } - TEXT = T.let(:text, OpenAI::Models::Moderation::CategoryAppliedInputTypes::Violence::TaggedSymbol) - IMAGE = T.let(:image, OpenAI::Models::Moderation::CategoryAppliedInputTypes::Violence::TaggedSymbol) + TEXT = + T.let( + :text, + OpenAI::Moderation::CategoryAppliedInputTypes::Violence::TaggedSymbol + ) + IMAGE = + T.let( + :image, + OpenAI::Moderation::CategoryAppliedInputTypes::Violence::TaggedSymbol + ) - sig { override.returns(T::Array[OpenAI::Models::Moderation::CategoryAppliedInputTypes::Violence::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[ + OpenAI::Moderation::CategoryAppliedInputTypes::Violence::TaggedSymbol + ] + ) + end + def self.values + end end module ViolenceGraphic extend OpenAI::Internal::Type::Enum TaggedSymbol = - T.type_alias { T.all(Symbol, OpenAI::Models::Moderation::CategoryAppliedInputTypes::ViolenceGraphic) } + T.type_alias do + T.all( + Symbol, + OpenAI::Moderation::CategoryAppliedInputTypes::ViolenceGraphic + ) + end OrSymbol = T.type_alias { T.any(Symbol, String) } - TEXT = T.let(:text, OpenAI::Models::Moderation::CategoryAppliedInputTypes::ViolenceGraphic::TaggedSymbol) + TEXT = + T.let( + :text, + OpenAI::Moderation::CategoryAppliedInputTypes::ViolenceGraphic::TaggedSymbol + ) IMAGE = - T.let(:image, OpenAI::Models::Moderation::CategoryAppliedInputTypes::ViolenceGraphic::TaggedSymbol) + T.let( + :image, + OpenAI::Moderation::CategoryAppliedInputTypes::ViolenceGraphic::TaggedSymbol + ) sig do - override - .returns(T::Array[OpenAI::Models::Moderation::CategoryAppliedInputTypes::ViolenceGraphic::TaggedSymbol]) + override.returns( + T::Array[ + OpenAI::Moderation::CategoryAppliedInputTypes::ViolenceGraphic::TaggedSymbol + ] + ) + end + def self.values end - def self.values; end end end class CategoryScores < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The score for the category 'harassment'. sig { returns(Float) } attr_accessor :harassment @@ -629,8 +989,7 @@ module OpenAI sexual_minors: Float, violence: Float, violence_graphic: Float - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # The score for the category 'harassment'. @@ -659,28 +1018,30 @@ module OpenAI violence:, # The score for the category 'violence/graphic'. violence_graphic: - ); end + ) + end + sig do - override - .returns( - { - harassment: Float, - harassment_threatening: Float, - hate: Float, - hate_threatening: Float, - illicit: Float, - illicit_violent: Float, - self_harm: Float, - self_harm_instructions: Float, - self_harm_intent: Float, - sexual: Float, - sexual_minors: Float, - violence: Float, - violence_graphic: Float - } - ) - end - def to_hash; end + override.returns( + { + harassment: Float, + harassment_threatening: Float, + hate: Float, + hate_threatening: Float, + illicit: Float, + illicit_violent: Float, + self_harm: Float, + self_harm_instructions: Float, + self_harm_intent: Float, + sexual: Float, + sexual_minors: Float, + violence: Float, + violence_graphic: Float + } + ) + end + def to_hash + end end end end diff --git a/rbi/openai/models/moderation_create_params.rbi b/rbi/openai/models/moderation_create_params.rbi index 527e104f..7644e955 100644 --- a/rbi/openai/models/moderation_create_params.rbi +++ b/rbi/openai/models/moderation_create_params.rbi @@ -6,6 +6,8 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Input (or inputs) to classify. Can be a single string, an array of strings, or # an array of multi-modal input objects similar to other models. sig do @@ -13,7 +15,12 @@ module OpenAI T.any( String, T::Array[String], - T::Array[T.any(OpenAI::Models::ModerationImageURLInput, OpenAI::Models::ModerationTextInput)] + T::Array[ + T.any( + OpenAI::ModerationImageURLInput, + OpenAI::ModerationTextInput + ) + ] ) ) end @@ -23,29 +30,32 @@ module OpenAI # [the moderation guide](https://platform.openai.com/docs/guides/moderation), and # learn about available models # [here](https://platform.openai.com/docs/models#moderation). - sig { returns(T.nilable(T.any(String, OpenAI::Models::ModerationModel::OrSymbol))) } + sig do + returns(T.nilable(T.any(String, OpenAI::ModerationModel::OrSymbol))) + end attr_reader :model - sig { params(model: T.any(String, OpenAI::Models::ModerationModel::OrSymbol)).void } + sig do + params(model: T.any(String, OpenAI::ModerationModel::OrSymbol)).void + end attr_writer :model sig do params( - input: T.any( - String, - T::Array[String], - T::Array[ - T.any( - OpenAI::Models::ModerationImageURLInput, - OpenAI::Internal::AnyHash, - OpenAI::Models::ModerationTextInput - ) - ] - ), - model: T.any(String, OpenAI::Models::ModerationModel::OrSymbol), - request_options: T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash) - ) - .returns(T.attached_class) + input: + T.any( + String, + T::Array[String], + T::Array[ + T.any( + OpenAI::ModerationImageURLInput::OrHash, + OpenAI::ModerationTextInput::OrHash + ) + ] + ), + model: T.any(String, OpenAI::ModerationModel::OrSymbol), + request_options: OpenAI::RequestOptions::OrHash + ).returns(T.attached_class) end def self.new( # Input (or inputs) to classify. Can be a single string, an array of strings, or @@ -57,41 +67,69 @@ module OpenAI # [here](https://platform.openai.com/docs/models#moderation). model: nil, request_options: {} - ); end + ) + end + sig do - override - .returns( - { - input: T.any( + override.returns( + { + input: + T.any( String, T::Array[String], - T::Array[T.any(OpenAI::Models::ModerationImageURLInput, OpenAI::Models::ModerationTextInput)] + T::Array[ + T.any( + OpenAI::ModerationImageURLInput, + OpenAI::ModerationTextInput + ) + ] ), - model: T.any(String, OpenAI::Models::ModerationModel::OrSymbol), - request_options: OpenAI::RequestOptions - } - ) + model: T.any(String, OpenAI::ModerationModel::OrSymbol), + request_options: OpenAI::RequestOptions + } + ) + end + def to_hash end - def to_hash; end # Input (or inputs) to classify. Can be a single string, an array of strings, or # an array of multi-modal input objects similar to other models. module Input extend OpenAI::Internal::Type::Union - sig do - override - .returns( - [String, T::Array[String], T::Array[T.any(OpenAI::Models::ModerationImageURLInput, OpenAI::Models::ModerationTextInput)]] + Variants = + T.type_alias do + T.any( + String, + T::Array[String], + T::Array[ + T.any( + OpenAI::ModerationImageURLInput, + OpenAI::ModerationTextInput + ) + ] ) + end + + sig do + override.returns( + T::Array[OpenAI::ModerationCreateParams::Input::Variants] + ) + end + def self.variants end - def self.variants; end - StringArray = T.let(OpenAI::Internal::Type::ArrayOf[String], OpenAI::Internal::Type::Converter) + StringArray = + T.let( + OpenAI::Internal::Type::ArrayOf[String], + OpenAI::Internal::Type::Converter + ) ModerationMultiModalInputArray = T.let( - OpenAI::Internal::Type::ArrayOf[union: OpenAI::Models::ModerationMultiModalInput], + OpenAI::Internal::Type::ArrayOf[ + union: OpenAI::ModerationMultiModalInput + ], OpenAI::Internal::Type::Converter ) end @@ -103,8 +141,16 @@ module OpenAI module Model extend OpenAI::Internal::Type::Union - sig { override.returns([String, OpenAI::Models::ModerationModel::TaggedSymbol]) } - def self.variants; end + Variants = + T.type_alias { T.any(String, OpenAI::ModerationModel::TaggedSymbol) } + + sig do + override.returns( + T::Array[OpenAI::ModerationCreateParams::Model::Variants] + ) + end + def self.variants + end end end end diff --git a/rbi/openai/models/moderation_create_response.rbi b/rbi/openai/models/moderation_create_response.rbi index 7e78a995..0da4c5b3 100644 --- a/rbi/openai/models/moderation_create_response.rbi +++ b/rbi/openai/models/moderation_create_response.rbi @@ -3,6 +3,8 @@ module OpenAI module Models class ModerationCreateResponse < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The unique identifier for the moderation request. sig { returns(String) } attr_accessor :id @@ -12,7 +14,7 @@ module OpenAI attr_accessor :model # A list of moderation objects. - sig { returns(T::Array[OpenAI::Models::Moderation]) } + sig { returns(T::Array[OpenAI::Moderation]) } attr_accessor :results # Represents if a given text input is potentially harmful. @@ -20,9 +22,8 @@ module OpenAI params( id: String, model: String, - results: T::Array[T.any(OpenAI::Models::Moderation, OpenAI::Internal::AnyHash)] - ) - .returns(T.attached_class) + results: T::Array[OpenAI::Moderation::OrHash] + ).returns(T.attached_class) end def self.new( # The unique identifier for the moderation request. @@ -31,9 +32,16 @@ module OpenAI model:, # A list of moderation objects. results: - ); end - sig { override.returns({id: String, model: String, results: T::Array[OpenAI::Models::Moderation]}) } - def to_hash; end + ) + end + + sig do + override.returns( + { id: String, model: String, results: T::Array[OpenAI::Moderation] } + ) + end + def to_hash + end end end end diff --git a/rbi/openai/models/moderation_image_url_input.rbi b/rbi/openai/models/moderation_image_url_input.rbi index 091d5263..df96e516 100644 --- a/rbi/openai/models/moderation_image_url_input.rbi +++ b/rbi/openai/models/moderation_image_url_input.rbi @@ -3,12 +3,16 @@ module OpenAI module Models class ModerationImageURLInput < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Contains either an image URL or a data URL for a base64 encoded image. - sig { returns(OpenAI::Models::ModerationImageURLInput::ImageURL) } + sig { returns(OpenAI::ModerationImageURLInput::ImageURL) } attr_reader :image_url sig do - params(image_url: T.any(OpenAI::Models::ModerationImageURLInput::ImageURL, OpenAI::Internal::AnyHash)).void + params( + image_url: OpenAI::ModerationImageURLInput::ImageURL::OrHash + ).void end attr_writer :image_url @@ -19,21 +23,29 @@ module OpenAI # An object describing an image to classify. sig do params( - image_url: T.any(OpenAI::Models::ModerationImageURLInput::ImageURL, OpenAI::Internal::AnyHash), + image_url: OpenAI::ModerationImageURLInput::ImageURL::OrHash, type: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # Contains either an image URL or a data URL for a base64 encoded image. image_url:, # Always `image_url`. type: :image_url - ); end - sig { override.returns({image_url: OpenAI::Models::ModerationImageURLInput::ImageURL, type: Symbol}) } - def to_hash; end + ) + end + + sig do + override.returns( + { image_url: OpenAI::ModerationImageURLInput::ImageURL, type: Symbol } + ) + end + def to_hash + end class ImageURL < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Either a URL of the image or the base64 encoded image data. sig { returns(String) } attr_accessor :url @@ -43,9 +55,12 @@ module OpenAI def self.new( # Either a URL of the image or the base64 encoded image data. url: - ); end - sig { override.returns({url: String}) } - def to_hash; end + ) + end + + sig { override.returns({ url: String }) } + def to_hash + end end end end diff --git a/rbi/openai/models/moderation_model.rbi b/rbi/openai/models/moderation_model.rbi index 36b6b843..2e122275 100644 --- a/rbi/openai/models/moderation_model.rbi +++ b/rbi/openai/models/moderation_model.rbi @@ -5,17 +5,24 @@ module OpenAI module ModerationModel extend OpenAI::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::ModerationModel) } + TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::ModerationModel) } OrSymbol = T.type_alias { T.any(Symbol, String) } - OMNI_MODERATION_LATEST = T.let(:"omni-moderation-latest", OpenAI::Models::ModerationModel::TaggedSymbol) + OMNI_MODERATION_LATEST = + T.let(:"omni-moderation-latest", OpenAI::ModerationModel::TaggedSymbol) OMNI_MODERATION_2024_09_26 = - T.let(:"omni-moderation-2024-09-26", OpenAI::Models::ModerationModel::TaggedSymbol) - TEXT_MODERATION_LATEST = T.let(:"text-moderation-latest", OpenAI::Models::ModerationModel::TaggedSymbol) - TEXT_MODERATION_STABLE = T.let(:"text-moderation-stable", OpenAI::Models::ModerationModel::TaggedSymbol) + T.let( + :"omni-moderation-2024-09-26", + OpenAI::ModerationModel::TaggedSymbol + ) + TEXT_MODERATION_LATEST = + T.let(:"text-moderation-latest", OpenAI::ModerationModel::TaggedSymbol) + TEXT_MODERATION_STABLE = + T.let(:"text-moderation-stable", OpenAI::ModerationModel::TaggedSymbol) - sig { override.returns(T::Array[OpenAI::Models::ModerationModel::TaggedSymbol]) } - def self.values; end + sig { override.returns(T::Array[OpenAI::ModerationModel::TaggedSymbol]) } + def self.values + end end end end diff --git a/rbi/openai/models/moderation_multi_modal_input.rbi b/rbi/openai/models/moderation_multi_modal_input.rbi index 5f5a8f6d..9c3ad7a6 100644 --- a/rbi/openai/models/moderation_multi_modal_input.rbi +++ b/rbi/openai/models/moderation_multi_modal_input.rbi @@ -6,8 +6,16 @@ module OpenAI module ModerationMultiModalInput extend OpenAI::Internal::Type::Union - sig { override.returns([OpenAI::Models::ModerationImageURLInput, OpenAI::Models::ModerationTextInput]) } - def self.variants; end + Variants = + T.type_alias do + T.any(OpenAI::ModerationImageURLInput, OpenAI::ModerationTextInput) + end + + sig do + override.returns(T::Array[OpenAI::ModerationMultiModalInput::Variants]) + end + def self.variants + end end end end diff --git a/rbi/openai/models/moderation_text_input.rbi b/rbi/openai/models/moderation_text_input.rbi index 462e88ed..98b5925e 100644 --- a/rbi/openai/models/moderation_text_input.rbi +++ b/rbi/openai/models/moderation_text_input.rbi @@ -3,6 +3,8 @@ module OpenAI module Models class ModerationTextInput < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # A string of text to classify. sig { returns(String) } attr_accessor :text @@ -18,9 +20,12 @@ module OpenAI text:, # Always `text`. type: :text - ); end - sig { override.returns({text: String, type: Symbol}) } - def to_hash; end + ) + end + + sig { override.returns({ text: String, type: Symbol }) } + def to_hash + end end end end diff --git a/rbi/openai/models/other_file_chunking_strategy_object.rbi b/rbi/openai/models/other_file_chunking_strategy_object.rbi index 5af14eda..d7ae19bd 100644 --- a/rbi/openai/models/other_file_chunking_strategy_object.rbi +++ b/rbi/openai/models/other_file_chunking_strategy_object.rbi @@ -3,6 +3,8 @@ module OpenAI module Models class OtherFileChunkingStrategyObject < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Always `other`. sig { returns(Symbol) } attr_accessor :type @@ -14,9 +16,12 @@ module OpenAI def self.new( # Always `other`. type: :other - ); end - sig { override.returns({type: Symbol}) } - def to_hash; end + ) + end + + sig { override.returns({ type: Symbol }) } + def to_hash + end end end end diff --git a/rbi/openai/models/reasoning.rbi b/rbi/openai/models/reasoning.rbi index a54b00f4..c11df8b1 100644 --- a/rbi/openai/models/reasoning.rbi +++ b/rbi/openai/models/reasoning.rbi @@ -3,13 +3,15 @@ module OpenAI module Models class Reasoning < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # **o-series models only** # # Constrains effort on reasoning for # [reasoning models](https://platform.openai.com/docs/guides/reasoning). Currently # supported values are `low`, `medium`, and `high`. Reducing reasoning effort can # result in faster responses and fewer tokens used on reasoning in a response. - sig { returns(T.nilable(OpenAI::Models::ReasoningEffort::OrSymbol)) } + sig { returns(T.nilable(OpenAI::ReasoningEffort::OrSymbol)) } attr_accessor :effort # **Deprecated:** use `summary` instead. @@ -17,13 +19,13 @@ module OpenAI # A summary of the reasoning performed by the model. This can be useful for # debugging and understanding the model's reasoning process. One of `auto`, # `concise`, or `detailed`. - sig { returns(T.nilable(OpenAI::Models::Reasoning::GenerateSummary::OrSymbol)) } + sig { returns(T.nilable(OpenAI::Reasoning::GenerateSummary::OrSymbol)) } attr_accessor :generate_summary # A summary of the reasoning performed by the model. This can be useful for # debugging and understanding the model's reasoning process. One of `auto`, # `concise`, or `detailed`. - sig { returns(T.nilable(OpenAI::Models::Reasoning::Summary::OrSymbol)) } + sig { returns(T.nilable(OpenAI::Reasoning::Summary::OrSymbol)) } attr_accessor :summary # **o-series models only** @@ -32,11 +34,11 @@ module OpenAI # [reasoning models](https://platform.openai.com/docs/guides/reasoning). sig do params( - effort: T.nilable(OpenAI::Models::ReasoningEffort::OrSymbol), - generate_summary: T.nilable(OpenAI::Models::Reasoning::GenerateSummary::OrSymbol), - summary: T.nilable(OpenAI::Models::Reasoning::Summary::OrSymbol) - ) - .returns(T.attached_class) + effort: T.nilable(OpenAI::ReasoningEffort::OrSymbol), + generate_summary: + T.nilable(OpenAI::Reasoning::GenerateSummary::OrSymbol), + summary: T.nilable(OpenAI::Reasoning::Summary::OrSymbol) + ).returns(T.attached_class) end def self.new( # **o-series models only** @@ -56,18 +58,21 @@ module OpenAI # debugging and understanding the model's reasoning process. One of `auto`, # `concise`, or `detailed`. summary: nil - ); end + ) + end + sig do - override - .returns( - { - effort: T.nilable(OpenAI::Models::ReasoningEffort::OrSymbol), - generate_summary: T.nilable(OpenAI::Models::Reasoning::GenerateSummary::OrSymbol), - summary: T.nilable(OpenAI::Models::Reasoning::Summary::OrSymbol) - } - ) + override.returns( + { + effort: T.nilable(OpenAI::ReasoningEffort::OrSymbol), + generate_summary: + T.nilable(OpenAI::Reasoning::GenerateSummary::OrSymbol), + summary: T.nilable(OpenAI::Reasoning::Summary::OrSymbol) + } + ) + end + def to_hash end - def to_hash; end # **Deprecated:** use `summary` instead. # @@ -77,15 +82,23 @@ module OpenAI module GenerateSummary extend OpenAI::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::Reasoning::GenerateSummary) } + TaggedSymbol = + T.type_alias { T.all(Symbol, OpenAI::Reasoning::GenerateSummary) } OrSymbol = T.type_alias { T.any(Symbol, String) } - AUTO = T.let(:auto, OpenAI::Models::Reasoning::GenerateSummary::TaggedSymbol) - CONCISE = T.let(:concise, OpenAI::Models::Reasoning::GenerateSummary::TaggedSymbol) - DETAILED = T.let(:detailed, OpenAI::Models::Reasoning::GenerateSummary::TaggedSymbol) + AUTO = T.let(:auto, OpenAI::Reasoning::GenerateSummary::TaggedSymbol) + CONCISE = + T.let(:concise, OpenAI::Reasoning::GenerateSummary::TaggedSymbol) + DETAILED = + T.let(:detailed, OpenAI::Reasoning::GenerateSummary::TaggedSymbol) - sig { override.returns(T::Array[OpenAI::Models::Reasoning::GenerateSummary::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[OpenAI::Reasoning::GenerateSummary::TaggedSymbol] + ) + end + def self.values + end end # A summary of the reasoning performed by the model. This can be useful for @@ -94,15 +107,19 @@ module OpenAI module Summary extend OpenAI::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::Reasoning::Summary) } + TaggedSymbol = + T.type_alias { T.all(Symbol, OpenAI::Reasoning::Summary) } OrSymbol = T.type_alias { T.any(Symbol, String) } - AUTO = T.let(:auto, OpenAI::Models::Reasoning::Summary::TaggedSymbol) - CONCISE = T.let(:concise, OpenAI::Models::Reasoning::Summary::TaggedSymbol) - DETAILED = T.let(:detailed, OpenAI::Models::Reasoning::Summary::TaggedSymbol) + AUTO = T.let(:auto, OpenAI::Reasoning::Summary::TaggedSymbol) + CONCISE = T.let(:concise, OpenAI::Reasoning::Summary::TaggedSymbol) + DETAILED = T.let(:detailed, OpenAI::Reasoning::Summary::TaggedSymbol) - sig { override.returns(T::Array[OpenAI::Models::Reasoning::Summary::TaggedSymbol]) } - def self.values; end + sig do + override.returns(T::Array[OpenAI::Reasoning::Summary::TaggedSymbol]) + end + def self.values + end end end end diff --git a/rbi/openai/models/reasoning_effort.rbi b/rbi/openai/models/reasoning_effort.rbi index 11b95ba9..30ff7a5f 100644 --- a/rbi/openai/models/reasoning_effort.rbi +++ b/rbi/openai/models/reasoning_effort.rbi @@ -11,15 +11,16 @@ module OpenAI module ReasoningEffort extend OpenAI::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::ReasoningEffort) } + TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::ReasoningEffort) } OrSymbol = T.type_alias { T.any(Symbol, String) } - LOW = T.let(:low, OpenAI::Models::ReasoningEffort::TaggedSymbol) - MEDIUM = T.let(:medium, OpenAI::Models::ReasoningEffort::TaggedSymbol) - HIGH = T.let(:high, OpenAI::Models::ReasoningEffort::TaggedSymbol) + LOW = T.let(:low, OpenAI::ReasoningEffort::TaggedSymbol) + MEDIUM = T.let(:medium, OpenAI::ReasoningEffort::TaggedSymbol) + HIGH = T.let(:high, OpenAI::ReasoningEffort::TaggedSymbol) - sig { override.returns(T::Array[OpenAI::Models::ReasoningEffort::TaggedSymbol]) } - def self.values; end + sig { override.returns(T::Array[OpenAI::ReasoningEffort::TaggedSymbol]) } + def self.values + end end end end diff --git a/rbi/openai/models/response_format_json_object.rbi b/rbi/openai/models/response_format_json_object.rbi index cb28d04a..a02e14bc 100644 --- a/rbi/openai/models/response_format_json_object.rbi +++ b/rbi/openai/models/response_format_json_object.rbi @@ -3,6 +3,8 @@ module OpenAI module Models class ResponseFormatJSONObject < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The type of response format being defined. Always `json_object`. sig { returns(Symbol) } attr_accessor :type @@ -14,9 +16,12 @@ module OpenAI def self.new( # The type of response format being defined. Always `json_object`. type: :json_object - ); end - sig { override.returns({type: Symbol}) } - def to_hash; end + ) + end + + sig { override.returns({ type: Symbol }) } + def to_hash + end end end end diff --git a/rbi/openai/models/response_format_json_schema.rbi b/rbi/openai/models/response_format_json_schema.rbi index db50b7cd..dbaac8e0 100644 --- a/rbi/openai/models/response_format_json_schema.rbi +++ b/rbi/openai/models/response_format_json_schema.rbi @@ -3,15 +3,16 @@ module OpenAI module Models class ResponseFormatJSONSchema < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Structured Outputs configuration options, including a JSON Schema. - sig { returns(OpenAI::Models::ResponseFormatJSONSchema::JSONSchema) } + sig { returns(OpenAI::ResponseFormatJSONSchema::JSONSchema) } attr_reader :json_schema sig do params( - json_schema: T.any(OpenAI::Models::ResponseFormatJSONSchema::JSONSchema, OpenAI::Internal::AnyHash) - ) - .void + json_schema: OpenAI::ResponseFormatJSONSchema::JSONSchema::OrHash + ).void end attr_writer :json_schema @@ -24,21 +25,32 @@ module OpenAI # [Structured Outputs](https://platform.openai.com/docs/guides/structured-outputs). sig do params( - json_schema: T.any(OpenAI::Models::ResponseFormatJSONSchema::JSONSchema, OpenAI::Internal::AnyHash), + json_schema: OpenAI::ResponseFormatJSONSchema::JSONSchema::OrHash, type: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # Structured Outputs configuration options, including a JSON Schema. json_schema:, # The type of response format being defined. Always `json_schema`. type: :json_schema - ); end - sig { override.returns({json_schema: OpenAI::Models::ResponseFormatJSONSchema::JSONSchema, type: Symbol}) } - def to_hash; end + ) + end + + sig do + override.returns( + { + json_schema: OpenAI::ResponseFormatJSONSchema::JSONSchema, + type: Symbol + } + ) + end + def to_hash + end class JSONSchema < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The name of the response format. Must be a-z, A-Z, 0-9, or contain underscores # and dashes, with a maximum length of 64. sig { returns(String) } @@ -75,8 +87,7 @@ module OpenAI description: String, schema: T::Hash[Symbol, T.anything], strict: T.nilable(T::Boolean) - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # The name of the response format. Must be a-z, A-Z, 0-9, or contain underscores @@ -94,19 +105,21 @@ module OpenAI # learn more, read the # [Structured Outputs guide](https://platform.openai.com/docs/guides/structured-outputs). strict: nil - ); end + ) + end + sig do - override - .returns( - { - name: String, - description: String, - schema: T::Hash[Symbol, T.anything], - strict: T.nilable(T::Boolean) - } - ) + override.returns( + { + name: String, + description: String, + schema: T::Hash[Symbol, T.anything], + strict: T.nilable(T::Boolean) + } + ) + end + def to_hash end - def to_hash; end end end end diff --git a/rbi/openai/models/response_format_text.rbi b/rbi/openai/models/response_format_text.rbi index f47d8756..a20756e2 100644 --- a/rbi/openai/models/response_format_text.rbi +++ b/rbi/openai/models/response_format_text.rbi @@ -3,6 +3,8 @@ module OpenAI module Models class ResponseFormatText < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The type of response format being defined. Always `text`. sig { returns(Symbol) } attr_accessor :type @@ -12,9 +14,12 @@ module OpenAI def self.new( # The type of response format being defined. Always `text`. type: :text - ); end - sig { override.returns({type: Symbol}) } - def to_hash; end + ) + end + + sig { override.returns({ type: Symbol }) } + def to_hash + end end end end diff --git a/rbi/openai/models/responses/computer_tool.rbi b/rbi/openai/models/responses/computer_tool.rbi index 99b52d59..9cfcfe6a 100644 --- a/rbi/openai/models/responses/computer_tool.rbi +++ b/rbi/openai/models/responses/computer_tool.rbi @@ -4,6 +4,8 @@ module OpenAI module Models module Responses class ComputerTool < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The height of the computer display. sig { returns(Integer) } attr_accessor :display_height @@ -13,7 +15,7 @@ module OpenAI attr_accessor :display_width # The type of computer environment to control. - sig { returns(OpenAI::Models::Responses::ComputerTool::Environment::OrSymbol) } + sig { returns(OpenAI::Responses::ComputerTool::Environment::OrSymbol) } attr_accessor :environment # The type of the computer use tool. Always `computer_use_preview`. @@ -26,10 +28,9 @@ module OpenAI params( display_height: Integer, display_width: Integer, - environment: OpenAI::Models::Responses::ComputerTool::Environment::OrSymbol, + environment: OpenAI::Responses::ComputerTool::Environment::OrSymbol, type: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # The height of the computer display. @@ -40,35 +41,68 @@ module OpenAI environment:, # The type of the computer use tool. Always `computer_use_preview`. type: :computer_use_preview - ); end + ) + end + sig do - override - .returns( - { - display_height: Integer, - display_width: Integer, - environment: OpenAI::Models::Responses::ComputerTool::Environment::OrSymbol, - type: Symbol - } - ) + override.returns( + { + display_height: Integer, + display_width: Integer, + environment: + OpenAI::Responses::ComputerTool::Environment::OrSymbol, + type: Symbol + } + ) + end + def to_hash end - def to_hash; end # The type of computer environment to control. module Environment extend OpenAI::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::Responses::ComputerTool::Environment) } + TaggedSymbol = + T.type_alias do + T.all(Symbol, OpenAI::Responses::ComputerTool::Environment) + end OrSymbol = T.type_alias { T.any(Symbol, String) } - WINDOWS = T.let(:windows, OpenAI::Models::Responses::ComputerTool::Environment::TaggedSymbol) - MAC = T.let(:mac, OpenAI::Models::Responses::ComputerTool::Environment::TaggedSymbol) - LINUX = T.let(:linux, OpenAI::Models::Responses::ComputerTool::Environment::TaggedSymbol) - UBUNTU = T.let(:ubuntu, OpenAI::Models::Responses::ComputerTool::Environment::TaggedSymbol) - BROWSER = T.let(:browser, OpenAI::Models::Responses::ComputerTool::Environment::TaggedSymbol) + WINDOWS = + T.let( + :windows, + OpenAI::Responses::ComputerTool::Environment::TaggedSymbol + ) + MAC = + T.let( + :mac, + OpenAI::Responses::ComputerTool::Environment::TaggedSymbol + ) + LINUX = + T.let( + :linux, + OpenAI::Responses::ComputerTool::Environment::TaggedSymbol + ) + UBUNTU = + T.let( + :ubuntu, + OpenAI::Responses::ComputerTool::Environment::TaggedSymbol + ) + BROWSER = + T.let( + :browser, + OpenAI::Responses::ComputerTool::Environment::TaggedSymbol + ) - sig { override.returns(T::Array[OpenAI::Models::Responses::ComputerTool::Environment::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[ + OpenAI::Responses::ComputerTool::Environment::TaggedSymbol + ] + ) + end + def self.values + end end end end diff --git a/rbi/openai/models/responses/easy_input_message.rbi b/rbi/openai/models/responses/easy_input_message.rbi index 698ad76f..304fcceb 100644 --- a/rbi/openai/models/responses/easy_input_message.rbi +++ b/rbi/openai/models/responses/easy_input_message.rbi @@ -4,6 +4,8 @@ module OpenAI module Models module Responses class EasyInputMessage < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Text, image, or audio input to the model, used to generate a response. Can also # contain previous assistant responses. sig do @@ -12,9 +14,9 @@ module OpenAI String, T::Array[ T.any( - OpenAI::Models::Responses::ResponseInputText, - OpenAI::Models::Responses::ResponseInputImage, - OpenAI::Models::Responses::ResponseInputFile + OpenAI::Responses::ResponseInputText, + OpenAI::Responses::ResponseInputImage, + OpenAI::Responses::ResponseInputFile ) ] ) @@ -24,14 +26,20 @@ module OpenAI # The role of the message input. One of `user`, `assistant`, `system`, or # `developer`. - sig { returns(OpenAI::Models::Responses::EasyInputMessage::Role::OrSymbol) } + sig { returns(OpenAI::Responses::EasyInputMessage::Role::OrSymbol) } attr_accessor :role # The type of the message input. Always `message`. - sig { returns(T.nilable(OpenAI::Models::Responses::EasyInputMessage::Type::OrSymbol)) } + sig do + returns( + T.nilable(OpenAI::Responses::EasyInputMessage::Type::OrSymbol) + ) + end attr_reader :type - sig { params(type: OpenAI::Models::Responses::EasyInputMessage::Type::OrSymbol).void } + sig do + params(type: OpenAI::Responses::EasyInputMessage::Type::OrSymbol).void + end attr_writer :type # A message input to the model with a role indicating instruction following @@ -41,21 +49,20 @@ module OpenAI # interactions. sig do params( - content: T.any( - String, - T::Array[ - T.any( - OpenAI::Models::Responses::ResponseInputText, - OpenAI::Internal::AnyHash, - OpenAI::Models::Responses::ResponseInputImage, - OpenAI::Models::Responses::ResponseInputFile - ) - ] - ), - role: OpenAI::Models::Responses::EasyInputMessage::Role::OrSymbol, - type: OpenAI::Models::Responses::EasyInputMessage::Type::OrSymbol - ) - .returns(T.attached_class) + content: + T.any( + String, + T::Array[ + T.any( + OpenAI::Responses::ResponseInputText::OrHash, + OpenAI::Responses::ResponseInputImage::OrHash, + OpenAI::Responses::ResponseInputFile::OrHash + ) + ] + ), + role: OpenAI::Responses::EasyInputMessage::Role::OrSymbol, + type: OpenAI::Responses::EasyInputMessage::Type::OrSymbol + ).returns(T.attached_class) end def self.new( # Text, image, or audio input to the model, used to generate a response. Can also @@ -66,49 +73,57 @@ module OpenAI role:, # The type of the message input. Always `message`. type: nil - ); end + ) + end + sig do - override - .returns( - { - content: T.any( + override.returns( + { + content: + T.any( String, T::Array[ T.any( - OpenAI::Models::Responses::ResponseInputText, - OpenAI::Models::Responses::ResponseInputImage, - OpenAI::Models::Responses::ResponseInputFile + OpenAI::Responses::ResponseInputText, + OpenAI::Responses::ResponseInputImage, + OpenAI::Responses::ResponseInputFile ) ] ), - role: OpenAI::Models::Responses::EasyInputMessage::Role::OrSymbol, - type: OpenAI::Models::Responses::EasyInputMessage::Type::OrSymbol - } - ) + role: OpenAI::Responses::EasyInputMessage::Role::OrSymbol, + type: OpenAI::Responses::EasyInputMessage::Type::OrSymbol + } + ) + end + def to_hash end - def to_hash; end # Text, image, or audio input to the model, used to generate a response. Can also # contain previous assistant responses. module Content extend OpenAI::Internal::Type::Union - sig do - override - .returns( - [ - String, - T::Array[ - T.any( - OpenAI::Models::Responses::ResponseInputText, - OpenAI::Models::Responses::ResponseInputImage, - OpenAI::Models::Responses::ResponseInputFile - ) - ] + Variants = + T.type_alias do + T.any( + String, + T::Array[ + T.any( + OpenAI::Responses::ResponseInputText, + OpenAI::Responses::ResponseInputImage, + OpenAI::Responses::ResponseInputFile + ) ] ) + end + + sig do + override.returns( + T::Array[OpenAI::Responses::EasyInputMessage::Content::Variants] + ) + end + def self.variants end - def self.variants; end end # The role of the message input. One of `user`, `assistant`, `system`, or @@ -116,29 +131,65 @@ module OpenAI module Role extend OpenAI::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::Responses::EasyInputMessage::Role) } + TaggedSymbol = + T.type_alias do + T.all(Symbol, OpenAI::Responses::EasyInputMessage::Role) + end OrSymbol = T.type_alias { T.any(Symbol, String) } - USER = T.let(:user, OpenAI::Models::Responses::EasyInputMessage::Role::TaggedSymbol) - ASSISTANT = T.let(:assistant, OpenAI::Models::Responses::EasyInputMessage::Role::TaggedSymbol) - SYSTEM = T.let(:system, OpenAI::Models::Responses::EasyInputMessage::Role::TaggedSymbol) - DEVELOPER = T.let(:developer, OpenAI::Models::Responses::EasyInputMessage::Role::TaggedSymbol) + USER = + T.let( + :user, + OpenAI::Responses::EasyInputMessage::Role::TaggedSymbol + ) + ASSISTANT = + T.let( + :assistant, + OpenAI::Responses::EasyInputMessage::Role::TaggedSymbol + ) + SYSTEM = + T.let( + :system, + OpenAI::Responses::EasyInputMessage::Role::TaggedSymbol + ) + DEVELOPER = + T.let( + :developer, + OpenAI::Responses::EasyInputMessage::Role::TaggedSymbol + ) - sig { override.returns(T::Array[OpenAI::Models::Responses::EasyInputMessage::Role::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[OpenAI::Responses::EasyInputMessage::Role::TaggedSymbol] + ) + end + def self.values + end end # The type of the message input. Always `message`. module Type extend OpenAI::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::Responses::EasyInputMessage::Type) } + TaggedSymbol = + T.type_alias do + T.all(Symbol, OpenAI::Responses::EasyInputMessage::Type) + end OrSymbol = T.type_alias { T.any(Symbol, String) } - MESSAGE = T.let(:message, OpenAI::Models::Responses::EasyInputMessage::Type::TaggedSymbol) + MESSAGE = + T.let( + :message, + OpenAI::Responses::EasyInputMessage::Type::TaggedSymbol + ) - sig { override.returns(T::Array[OpenAI::Models::Responses::EasyInputMessage::Type::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[OpenAI::Responses::EasyInputMessage::Type::TaggedSymbol] + ) + end + def self.values + end end end end diff --git a/rbi/openai/models/responses/file_search_tool.rbi b/rbi/openai/models/responses/file_search_tool.rbi index 005e1270..286697f9 100644 --- a/rbi/openai/models/responses/file_search_tool.rbi +++ b/rbi/openai/models/responses/file_search_tool.rbi @@ -4,6 +4,8 @@ module OpenAI module Models module Responses class FileSearchTool < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The type of the file search tool. Always `file_search`. sig { returns(Symbol) } attr_accessor :type @@ -13,7 +15,11 @@ module OpenAI attr_accessor :vector_store_ids # A filter to apply. - sig { returns(T.nilable(T.any(OpenAI::Models::ComparisonFilter, OpenAI::Models::CompoundFilter))) } + sig do + returns( + T.nilable(T.any(OpenAI::ComparisonFilter, OpenAI::CompoundFilter)) + ) + end attr_accessor :filters # The maximum number of results to return. This number should be between 1 and 50 @@ -25,14 +31,16 @@ module OpenAI attr_writer :max_num_results # Ranking options for search. - sig { returns(T.nilable(OpenAI::Models::Responses::FileSearchTool::RankingOptions)) } + sig do + returns(T.nilable(OpenAI::Responses::FileSearchTool::RankingOptions)) + end attr_reader :ranking_options sig do params( - ranking_options: T.any(OpenAI::Models::Responses::FileSearchTool::RankingOptions, OpenAI::Internal::AnyHash) - ) - .void + ranking_options: + OpenAI::Responses::FileSearchTool::RankingOptions::OrHash + ).void end attr_writer :ranking_options @@ -42,14 +50,18 @@ module OpenAI sig do params( vector_store_ids: T::Array[String], - filters: T.nilable( - T.any(OpenAI::Models::ComparisonFilter, OpenAI::Internal::AnyHash, OpenAI::Models::CompoundFilter) - ), + filters: + T.nilable( + T.any( + OpenAI::ComparisonFilter::OrHash, + OpenAI::CompoundFilter::OrHash + ) + ), max_num_results: Integer, - ranking_options: T.any(OpenAI::Models::Responses::FileSearchTool::RankingOptions, OpenAI::Internal::AnyHash), + ranking_options: + OpenAI::Responses::FileSearchTool::RankingOptions::OrHash, type: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # The IDs of the vector stores to search. @@ -63,35 +75,64 @@ module OpenAI ranking_options: nil, # The type of the file search tool. Always `file_search`. type: :file_search - ); end + ) + end + sig do - override - .returns( - { - type: Symbol, - vector_store_ids: T::Array[String], - filters: T.nilable(T.any(OpenAI::Models::ComparisonFilter, OpenAI::Models::CompoundFilter)), - max_num_results: Integer, - ranking_options: OpenAI::Models::Responses::FileSearchTool::RankingOptions - } - ) + override.returns( + { + type: Symbol, + vector_store_ids: T::Array[String], + filters: + T.nilable( + T.any(OpenAI::ComparisonFilter, OpenAI::CompoundFilter) + ), + max_num_results: Integer, + ranking_options: OpenAI::Responses::FileSearchTool::RankingOptions + } + ) + end + def to_hash end - def to_hash; end # A filter to apply. module Filters extend OpenAI::Internal::Type::Union - sig { override.returns([OpenAI::Models::ComparisonFilter, OpenAI::Models::CompoundFilter]) } - def self.variants; end + Variants = + T.type_alias do + T.any(OpenAI::ComparisonFilter, OpenAI::CompoundFilter) + end + + sig do + override.returns( + T::Array[OpenAI::Responses::FileSearchTool::Filters::Variants] + ) + end + def self.variants + end end class RankingOptions < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The ranker to use for the file search. - sig { returns(T.nilable(OpenAI::Models::Responses::FileSearchTool::RankingOptions::Ranker::OrSymbol)) } + sig do + returns( + T.nilable( + OpenAI::Responses::FileSearchTool::RankingOptions::Ranker::OrSymbol + ) + ) + end attr_reader :ranker - sig { params(ranker: OpenAI::Models::Responses::FileSearchTool::RankingOptions::Ranker::OrSymbol).void } + sig do + params( + ranker: + OpenAI::Responses::FileSearchTool::RankingOptions::Ranker::OrSymbol + ).void + end attr_writer :ranker # The score threshold for the file search, a number between 0 and 1. Numbers @@ -106,10 +147,10 @@ module OpenAI # Ranking options for search. sig do params( - ranker: OpenAI::Models::Responses::FileSearchTool::RankingOptions::Ranker::OrSymbol, + ranker: + OpenAI::Responses::FileSearchTool::RankingOptions::Ranker::OrSymbol, score_threshold: Float - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # The ranker to use for the file search. @@ -118,34 +159,54 @@ module OpenAI # closer to 1 will attempt to return only the most relevant results, but may # return fewer results. score_threshold: nil - ); end + ) + end + sig do - override - .returns( - {ranker: OpenAI::Models::Responses::FileSearchTool::RankingOptions::Ranker::OrSymbol, score_threshold: Float} - ) + override.returns( + { + ranker: + OpenAI::Responses::FileSearchTool::RankingOptions::Ranker::OrSymbol, + score_threshold: Float + } + ) + end + def to_hash end - def to_hash; end # The ranker to use for the file search. module Ranker extend OpenAI::Internal::Type::Enum TaggedSymbol = - T.type_alias { T.all(Symbol, OpenAI::Models::Responses::FileSearchTool::RankingOptions::Ranker) } + T.type_alias do + T.all( + Symbol, + OpenAI::Responses::FileSearchTool::RankingOptions::Ranker + ) + end OrSymbol = T.type_alias { T.any(Symbol, String) } - AUTO = T.let(:auto, OpenAI::Models::Responses::FileSearchTool::RankingOptions::Ranker::TaggedSymbol) + AUTO = + T.let( + :auto, + OpenAI::Responses::FileSearchTool::RankingOptions::Ranker::TaggedSymbol + ) DEFAULT_2024_11_15 = T.let( :"default-2024-11-15", - OpenAI::Models::Responses::FileSearchTool::RankingOptions::Ranker::TaggedSymbol + OpenAI::Responses::FileSearchTool::RankingOptions::Ranker::TaggedSymbol ) sig do - override.returns(T::Array[OpenAI::Models::Responses::FileSearchTool::RankingOptions::Ranker::TaggedSymbol]) + override.returns( + T::Array[ + OpenAI::Responses::FileSearchTool::RankingOptions::Ranker::TaggedSymbol + ] + ) + end + def self.values end - def self.values; end end end end diff --git a/rbi/openai/models/responses/function_tool.rbi b/rbi/openai/models/responses/function_tool.rbi index 294f57f1..c2658fc5 100644 --- a/rbi/openai/models/responses/function_tool.rbi +++ b/rbi/openai/models/responses/function_tool.rbi @@ -4,6 +4,8 @@ module OpenAI module Models module Responses class FunctionTool < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The name of the function to call. sig { returns(String) } attr_accessor :name @@ -35,8 +37,7 @@ module OpenAI strict: T.nilable(T::Boolean), description: T.nilable(String), type: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # The name of the function to call. @@ -50,20 +51,22 @@ module OpenAI description: nil, # The type of the function tool. Always `function`. type: :function - ); end + ) + end + sig do - override - .returns( - { - name: String, - parameters: T.nilable(T::Hash[Symbol, T.anything]), - strict: T.nilable(T::Boolean), - type: Symbol, - description: T.nilable(String) - } - ) + override.returns( + { + name: String, + parameters: T.nilable(T::Hash[Symbol, T.anything]), + strict: T.nilable(T::Boolean), + type: Symbol, + description: T.nilable(String) + } + ) + end + def to_hash end - def to_hash; end end end end diff --git a/rbi/openai/models/responses/input_item_list_params.rbi b/rbi/openai/models/responses/input_item_list_params.rbi index 3ea133cb..8fe8462a 100644 --- a/rbi/openai/models/responses/input_item_list_params.rbi +++ b/rbi/openai/models/responses/input_item_list_params.rbi @@ -7,6 +7,8 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # An item ID to list items after, used in pagination. sig { returns(T.nilable(String)) } attr_reader :after @@ -23,10 +25,18 @@ module OpenAI # Additional fields to include in the response. See the `include` parameter for # Response creation above for more information. - sig { returns(T.nilable(T::Array[OpenAI::Models::Responses::ResponseIncludable::OrSymbol])) } + sig do + returns( + T.nilable(T::Array[OpenAI::Responses::ResponseIncludable::OrSymbol]) + ) + end attr_reader :include - sig { params(include: T::Array[OpenAI::Models::Responses::ResponseIncludable::OrSymbol]).void } + sig do + params( + include: T::Array[OpenAI::Responses::ResponseIncludable::OrSymbol] + ).void + end attr_writer :include # A limit on the number of objects to be returned. Limit can range between 1 and @@ -41,22 +51,29 @@ module OpenAI # # - `asc`: Return the input items in ascending order. # - `desc`: Return the input items in descending order. - sig { returns(T.nilable(OpenAI::Models::Responses::InputItemListParams::Order::OrSymbol)) } + sig do + returns( + T.nilable(OpenAI::Responses::InputItemListParams::Order::OrSymbol) + ) + end attr_reader :order - sig { params(order: OpenAI::Models::Responses::InputItemListParams::Order::OrSymbol).void } + sig do + params( + order: OpenAI::Responses::InputItemListParams::Order::OrSymbol + ).void + end attr_writer :order sig do params( after: String, before: String, - include: T::Array[OpenAI::Models::Responses::ResponseIncludable::OrSymbol], + include: T::Array[OpenAI::Responses::ResponseIncludable::OrSymbol], limit: Integer, - order: OpenAI::Models::Responses::InputItemListParams::Order::OrSymbol, - request_options: T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash) - ) - .returns(T.attached_class) + order: OpenAI::Responses::InputItemListParams::Order::OrSymbol, + request_options: OpenAI::RequestOptions::OrHash + ).returns(T.attached_class) end def self.new( # An item ID to list items after, used in pagination. @@ -75,21 +92,24 @@ module OpenAI # - `desc`: Return the input items in descending order. order: nil, request_options: {} - ); end + ) + end + sig do - override - .returns( - { - after: String, - before: String, - include: T::Array[OpenAI::Models::Responses::ResponseIncludable::OrSymbol], - limit: Integer, - order: OpenAI::Models::Responses::InputItemListParams::Order::OrSymbol, - request_options: OpenAI::RequestOptions - } - ) + override.returns( + { + after: String, + before: String, + include: + T::Array[OpenAI::Responses::ResponseIncludable::OrSymbol], + limit: Integer, + order: OpenAI::Responses::InputItemListParams::Order::OrSymbol, + request_options: OpenAI::RequestOptions + } + ) + end + def to_hash end - def to_hash; end # The order to return the input items in. Default is `asc`. # @@ -98,14 +118,32 @@ module OpenAI module Order extend OpenAI::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::Responses::InputItemListParams::Order) } + TaggedSymbol = + T.type_alias do + T.all(Symbol, OpenAI::Responses::InputItemListParams::Order) + end OrSymbol = T.type_alias { T.any(Symbol, String) } - ASC = T.let(:asc, OpenAI::Models::Responses::InputItemListParams::Order::TaggedSymbol) - DESC = T.let(:desc, OpenAI::Models::Responses::InputItemListParams::Order::TaggedSymbol) + ASC = + T.let( + :asc, + OpenAI::Responses::InputItemListParams::Order::TaggedSymbol + ) + DESC = + T.let( + :desc, + OpenAI::Responses::InputItemListParams::Order::TaggedSymbol + ) - sig { override.returns(T::Array[OpenAI::Models::Responses::InputItemListParams::Order::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[ + OpenAI::Responses::InputItemListParams::Order::TaggedSymbol + ] + ) + end + def self.values + end end end end diff --git a/rbi/openai/models/responses/response.rbi b/rbi/openai/models/responses/response.rbi index 189001b8..3f45fc15 100644 --- a/rbi/openai/models/responses/response.rbi +++ b/rbi/openai/models/responses/response.rbi @@ -4,6 +4,8 @@ module OpenAI module Models module Responses class Response < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Unique identifier for this Response. sig { returns(String) } attr_accessor :id @@ -13,21 +15,27 @@ module OpenAI attr_accessor :created_at # An error object returned when the model fails to generate a Response. - sig { returns(T.nilable(OpenAI::Models::Responses::ResponseError)) } + sig { returns(T.nilable(OpenAI::Responses::ResponseError)) } attr_reader :error - sig { params(error: T.nilable(T.any(OpenAI::Models::Responses::ResponseError, OpenAI::Internal::AnyHash))).void } + sig do + params( + error: T.nilable(OpenAI::Responses::ResponseError::OrHash) + ).void + end attr_writer :error # Details about why the response is incomplete. - sig { returns(T.nilable(OpenAI::Models::Responses::Response::IncompleteDetails)) } + sig do + returns(T.nilable(OpenAI::Responses::Response::IncompleteDetails)) + end attr_reader :incomplete_details sig do params( - incomplete_details: T.nilable(T.any(OpenAI::Models::Responses::Response::IncompleteDetails, OpenAI::Internal::AnyHash)) - ) - .void + incomplete_details: + T.nilable(OpenAI::Responses::Response::IncompleteDetails::OrHash) + ).void end attr_writer :incomplete_details @@ -58,8 +66,8 @@ module OpenAI returns( T.any( String, - OpenAI::Models::ChatModel::TaggedSymbol, - OpenAI::Models::ResponsesModel::ResponsesOnlyModel::TaggedSymbol + OpenAI::ChatModel::TaggedSymbol, + OpenAI::ResponsesModel::ResponsesOnlyModel::TaggedSymbol ) ) end @@ -80,12 +88,12 @@ module OpenAI returns( T::Array[ T.any( - OpenAI::Models::Responses::ResponseOutputMessage, - OpenAI::Models::Responses::ResponseFileSearchToolCall, - OpenAI::Models::Responses::ResponseFunctionToolCall, - OpenAI::Models::Responses::ResponseFunctionWebSearch, - OpenAI::Models::Responses::ResponseComputerToolCall, - OpenAI::Models::Responses::ResponseReasoningItem + OpenAI::Responses::ResponseOutputMessage, + OpenAI::Responses::ResponseFileSearchToolCall, + OpenAI::Responses::ResponseFunctionToolCall, + OpenAI::Responses::ResponseFunctionWebSearch, + OpenAI::Responses::ResponseComputerToolCall, + OpenAI::Responses::ResponseReasoningItem ) ] ) @@ -109,9 +117,9 @@ module OpenAI sig do returns( T.any( - OpenAI::Models::Responses::ToolChoiceOptions::TaggedSymbol, - OpenAI::Models::Responses::ToolChoiceTypes, - OpenAI::Models::Responses::ToolChoiceFunction + OpenAI::Responses::ToolChoiceOptions::TaggedSymbol, + OpenAI::Responses::ToolChoiceTypes, + OpenAI::Responses::ToolChoiceFunction ) ) end @@ -135,10 +143,10 @@ module OpenAI returns( T::Array[ T.any( - OpenAI::Models::Responses::FileSearchTool, - OpenAI::Models::Responses::FunctionTool, - OpenAI::Models::Responses::ComputerTool, - OpenAI::Models::Responses::WebSearchTool + OpenAI::Responses::FileSearchTool, + OpenAI::Responses::FunctionTool, + OpenAI::Responses::ComputerTool, + OpenAI::Responses::WebSearchTool ) ] ) @@ -169,10 +177,10 @@ module OpenAI # # Configuration options for # [reasoning models](https://platform.openai.com/docs/guides/reasoning). - sig { returns(T.nilable(OpenAI::Models::Reasoning)) } + sig { returns(T.nilable(OpenAI::Reasoning)) } attr_reader :reasoning - sig { params(reasoning: T.nilable(T.any(OpenAI::Models::Reasoning, OpenAI::Internal::AnyHash))).void } + sig { params(reasoning: T.nilable(OpenAI::Reasoning::OrHash)).void } attr_writer :reasoning # Specifies the latency tier to use for processing the request. This parameter is @@ -192,15 +200,21 @@ module OpenAI # # When this parameter is set, the response body will include the `service_tier` # utilized. - sig { returns(T.nilable(OpenAI::Models::Responses::Response::ServiceTier::TaggedSymbol)) } + sig do + returns( + T.nilable(OpenAI::Responses::Response::ServiceTier::TaggedSymbol) + ) + end attr_accessor :service_tier # The status of the response generation. One of `completed`, `failed`, # `in_progress`, or `incomplete`. - sig { returns(T.nilable(OpenAI::Models::Responses::ResponseStatus::TaggedSymbol)) } + sig do + returns(T.nilable(OpenAI::Responses::ResponseStatus::TaggedSymbol)) + end attr_reader :status - sig { params(status: OpenAI::Models::Responses::ResponseStatus::OrSymbol).void } + sig { params(status: OpenAI::Responses::ResponseStatus::OrSymbol).void } attr_writer :status # Configuration options for a text response from the model. Can be plain text or @@ -208,10 +222,10 @@ module OpenAI # # - [Text inputs and outputs](https://platform.openai.com/docs/guides/text) # - [Structured Outputs](https://platform.openai.com/docs/guides/structured-outputs) - sig { returns(T.nilable(OpenAI::Models::Responses::ResponseTextConfig)) } + sig { returns(T.nilable(OpenAI::Responses::ResponseTextConfig)) } attr_reader :text - sig { params(text: T.any(OpenAI::Models::Responses::ResponseTextConfig, OpenAI::Internal::AnyHash)).void } + sig { params(text: OpenAI::Responses::ResponseTextConfig::OrHash).void } attr_writer :text # The truncation strategy to use for the model response. @@ -221,15 +235,19 @@ module OpenAI # window by dropping input items in the middle of the conversation. # - `disabled` (default): If a model response will exceed the context window size # for a model, the request will fail with a 400 error. - sig { returns(T.nilable(OpenAI::Models::Responses::Response::Truncation::TaggedSymbol)) } + sig do + returns( + T.nilable(OpenAI::Responses::Response::Truncation::TaggedSymbol) + ) + end attr_accessor :truncation # Represents token usage details including input tokens, output tokens, a # breakdown of output tokens, and the total tokens used. - sig { returns(T.nilable(OpenAI::Models::Responses::ResponseUsage)) } + sig { returns(T.nilable(OpenAI::Responses::ResponseUsage)) } attr_reader :usage - sig { params(usage: T.any(OpenAI::Models::Responses::ResponseUsage, OpenAI::Internal::AnyHash)).void } + sig { params(usage: OpenAI::Responses::ResponseUsage::OrHash).void } attr_writer :usage # A unique identifier representing your end-user, which can help OpenAI to monitor @@ -245,56 +263,59 @@ module OpenAI params( id: String, created_at: Float, - error: T.nilable(T.any(OpenAI::Models::Responses::ResponseError, OpenAI::Internal::AnyHash)), - incomplete_details: T.nilable(T.any(OpenAI::Models::Responses::Response::IncompleteDetails, OpenAI::Internal::AnyHash)), + error: T.nilable(OpenAI::Responses::ResponseError::OrHash), + incomplete_details: + T.nilable(OpenAI::Responses::Response::IncompleteDetails::OrHash), instructions: T.nilable(String), metadata: T.nilable(T::Hash[Symbol, String]), - model: T.any( - String, - OpenAI::Models::ChatModel::OrSymbol, - OpenAI::Models::ResponsesModel::ResponsesOnlyModel::OrSymbol - ), - output: T::Array[ + model: T.any( - OpenAI::Models::Responses::ResponseOutputMessage, - OpenAI::Internal::AnyHash, - OpenAI::Models::Responses::ResponseFileSearchToolCall, - OpenAI::Models::Responses::ResponseFunctionToolCall, - OpenAI::Models::Responses::ResponseFunctionWebSearch, - OpenAI::Models::Responses::ResponseComputerToolCall, - OpenAI::Models::Responses::ResponseReasoningItem - ) - ], + String, + OpenAI::ChatModel::OrSymbol, + OpenAI::ResponsesModel::ResponsesOnlyModel::OrSymbol + ), + output: + T::Array[ + T.any( + OpenAI::Responses::ResponseOutputMessage::OrHash, + OpenAI::Responses::ResponseFileSearchToolCall::OrHash, + OpenAI::Responses::ResponseFunctionToolCall::OrHash, + OpenAI::Responses::ResponseFunctionWebSearch::OrHash, + OpenAI::Responses::ResponseComputerToolCall::OrHash, + OpenAI::Responses::ResponseReasoningItem::OrHash + ) + ], parallel_tool_calls: T::Boolean, temperature: T.nilable(Float), - tool_choice: T.any( - OpenAI::Models::Responses::ToolChoiceOptions::OrSymbol, - OpenAI::Models::Responses::ToolChoiceTypes, - OpenAI::Internal::AnyHash, - OpenAI::Models::Responses::ToolChoiceFunction - ), - tools: T::Array[ + tool_choice: T.any( - OpenAI::Models::Responses::FileSearchTool, - OpenAI::Internal::AnyHash, - OpenAI::Models::Responses::FunctionTool, - OpenAI::Models::Responses::ComputerTool, - OpenAI::Models::Responses::WebSearchTool - ) - ], + OpenAI::Responses::ToolChoiceOptions::OrSymbol, + OpenAI::Responses::ToolChoiceTypes::OrHash, + OpenAI::Responses::ToolChoiceFunction::OrHash + ), + tools: + T::Array[ + T.any( + OpenAI::Responses::FileSearchTool::OrHash, + OpenAI::Responses::FunctionTool::OrHash, + OpenAI::Responses::ComputerTool::OrHash, + OpenAI::Responses::WebSearchTool::OrHash + ) + ], top_p: T.nilable(Float), max_output_tokens: T.nilable(Integer), previous_response_id: T.nilable(String), - reasoning: T.nilable(T.any(OpenAI::Models::Reasoning, OpenAI::Internal::AnyHash)), - service_tier: T.nilable(OpenAI::Models::Responses::Response::ServiceTier::OrSymbol), - status: OpenAI::Models::Responses::ResponseStatus::OrSymbol, - text: T.any(OpenAI::Models::Responses::ResponseTextConfig, OpenAI::Internal::AnyHash), - truncation: T.nilable(OpenAI::Models::Responses::Response::Truncation::OrSymbol), - usage: T.any(OpenAI::Models::Responses::ResponseUsage, OpenAI::Internal::AnyHash), + reasoning: T.nilable(OpenAI::Reasoning::OrHash), + service_tier: + T.nilable(OpenAI::Responses::Response::ServiceTier::OrSymbol), + status: OpenAI::Responses::ResponseStatus::OrSymbol, + text: OpenAI::Responses::ResponseTextConfig::OrHash, + truncation: + T.nilable(OpenAI::Responses::Response::Truncation::OrSymbol), + usage: OpenAI::Responses::ResponseUsage::OrHash, user: String, object: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # Unique identifier for this Response. @@ -422,98 +443,155 @@ module OpenAI user: nil, # The object type of this resource - always set to `response`. object: :response - ); end + ) + end + sig do - override - .returns( - { - id: String, - created_at: Float, - error: T.nilable(OpenAI::Models::Responses::ResponseError), - incomplete_details: T.nilable(OpenAI::Models::Responses::Response::IncompleteDetails), - instructions: T.nilable(String), - metadata: T.nilable(T::Hash[Symbol, String]), - model: T.any( + override.returns( + { + id: String, + created_at: Float, + error: T.nilable(OpenAI::Responses::ResponseError), + incomplete_details: + T.nilable(OpenAI::Responses::Response::IncompleteDetails), + instructions: T.nilable(String), + metadata: T.nilable(T::Hash[Symbol, String]), + model: + T.any( String, - OpenAI::Models::ChatModel::TaggedSymbol, - OpenAI::Models::ResponsesModel::ResponsesOnlyModel::TaggedSymbol + OpenAI::ChatModel::TaggedSymbol, + OpenAI::ResponsesModel::ResponsesOnlyModel::TaggedSymbol ), - object: Symbol, - output: T::Array[ + object: Symbol, + output: + T::Array[ T.any( - OpenAI::Models::Responses::ResponseOutputMessage, - OpenAI::Models::Responses::ResponseFileSearchToolCall, - OpenAI::Models::Responses::ResponseFunctionToolCall, - OpenAI::Models::Responses::ResponseFunctionWebSearch, - OpenAI::Models::Responses::ResponseComputerToolCall, - OpenAI::Models::Responses::ResponseReasoningItem + OpenAI::Responses::ResponseOutputMessage, + OpenAI::Responses::ResponseFileSearchToolCall, + OpenAI::Responses::ResponseFunctionToolCall, + OpenAI::Responses::ResponseFunctionWebSearch, + OpenAI::Responses::ResponseComputerToolCall, + OpenAI::Responses::ResponseReasoningItem ) ], - parallel_tool_calls: T::Boolean, - temperature: T.nilable(Float), - tool_choice: T.any( - OpenAI::Models::Responses::ToolChoiceOptions::TaggedSymbol, - OpenAI::Models::Responses::ToolChoiceTypes, - OpenAI::Models::Responses::ToolChoiceFunction + parallel_tool_calls: T::Boolean, + temperature: T.nilable(Float), + tool_choice: + T.any( + OpenAI::Responses::ToolChoiceOptions::TaggedSymbol, + OpenAI::Responses::ToolChoiceTypes, + OpenAI::Responses::ToolChoiceFunction ), - tools: T::Array[ + tools: + T::Array[ T.any( - OpenAI::Models::Responses::FileSearchTool, - OpenAI::Models::Responses::FunctionTool, - OpenAI::Models::Responses::ComputerTool, - OpenAI::Models::Responses::WebSearchTool + OpenAI::Responses::FileSearchTool, + OpenAI::Responses::FunctionTool, + OpenAI::Responses::ComputerTool, + OpenAI::Responses::WebSearchTool ) ], - top_p: T.nilable(Float), - max_output_tokens: T.nilable(Integer), - previous_response_id: T.nilable(String), - reasoning: T.nilable(OpenAI::Models::Reasoning), - service_tier: T.nilable(OpenAI::Models::Responses::Response::ServiceTier::TaggedSymbol), - status: OpenAI::Models::Responses::ResponseStatus::TaggedSymbol, - text: OpenAI::Models::Responses::ResponseTextConfig, - truncation: T.nilable(OpenAI::Models::Responses::Response::Truncation::TaggedSymbol), - usage: OpenAI::Models::Responses::ResponseUsage, - user: String - } - ) + top_p: T.nilable(Float), + max_output_tokens: T.nilable(Integer), + previous_response_id: T.nilable(String), + reasoning: T.nilable(OpenAI::Reasoning), + service_tier: + T.nilable( + OpenAI::Responses::Response::ServiceTier::TaggedSymbol + ), + status: OpenAI::Responses::ResponseStatus::TaggedSymbol, + text: OpenAI::Responses::ResponseTextConfig, + truncation: + T.nilable( + OpenAI::Responses::Response::Truncation::TaggedSymbol + ), + usage: OpenAI::Responses::ResponseUsage, + user: String + } + ) + end + def to_hash end - def to_hash; end class IncompleteDetails < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The reason why the response is incomplete. - sig { returns(T.nilable(OpenAI::Models::Responses::Response::IncompleteDetails::Reason::TaggedSymbol)) } + sig do + returns( + T.nilable( + OpenAI::Responses::Response::IncompleteDetails::Reason::TaggedSymbol + ) + ) + end attr_reader :reason - sig { params(reason: OpenAI::Models::Responses::Response::IncompleteDetails::Reason::OrSymbol).void } + sig do + params( + reason: + OpenAI::Responses::Response::IncompleteDetails::Reason::OrSymbol + ).void + end attr_writer :reason # Details about why the response is incomplete. sig do - params(reason: OpenAI::Models::Responses::Response::IncompleteDetails::Reason::OrSymbol) - .returns(T.attached_class) + params( + reason: + OpenAI::Responses::Response::IncompleteDetails::Reason::OrSymbol + ).returns(T.attached_class) end def self.new( # The reason why the response is incomplete. reason: nil - ); end - sig { override.returns({reason: OpenAI::Models::Responses::Response::IncompleteDetails::Reason::TaggedSymbol}) } - def to_hash; end + ) + end + + sig do + override.returns( + { + reason: + OpenAI::Responses::Response::IncompleteDetails::Reason::TaggedSymbol + } + ) + end + def to_hash + end # The reason why the response is incomplete. module Reason extend OpenAI::Internal::Type::Enum TaggedSymbol = - T.type_alias { T.all(Symbol, OpenAI::Models::Responses::Response::IncompleteDetails::Reason) } + T.type_alias do + T.all( + Symbol, + OpenAI::Responses::Response::IncompleteDetails::Reason + ) + end OrSymbol = T.type_alias { T.any(Symbol, String) } MAX_OUTPUT_TOKENS = - T.let(:max_output_tokens, OpenAI::Models::Responses::Response::IncompleteDetails::Reason::TaggedSymbol) + T.let( + :max_output_tokens, + OpenAI::Responses::Response::IncompleteDetails::Reason::TaggedSymbol + ) CONTENT_FILTER = - T.let(:content_filter, OpenAI::Models::Responses::Response::IncompleteDetails::Reason::TaggedSymbol) + T.let( + :content_filter, + OpenAI::Responses::Response::IncompleteDetails::Reason::TaggedSymbol + ) - sig { override.returns(T::Array[OpenAI::Models::Responses::Response::IncompleteDetails::Reason::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[ + OpenAI::Responses::Response::IncompleteDetails::Reason::TaggedSymbol + ] + ) + end + def self.values + end end end @@ -523,13 +601,22 @@ module OpenAI module ToolChoice extend OpenAI::Internal::Type::Union - sig do - override - .returns( - [OpenAI::Models::Responses::ToolChoiceOptions::TaggedSymbol, OpenAI::Models::Responses::ToolChoiceTypes, OpenAI::Models::Responses::ToolChoiceFunction] + Variants = + T.type_alias do + T.any( + OpenAI::Responses::ToolChoiceOptions::TaggedSymbol, + OpenAI::Responses::ToolChoiceTypes, + OpenAI::Responses::ToolChoiceFunction ) + end + + sig do + override.returns( + T::Array[OpenAI::Responses::Response::ToolChoice::Variants] + ) + end + def self.variants end - def self.variants; end end # Specifies the latency tier to use for processing the request. This parameter is @@ -552,15 +639,29 @@ module OpenAI module ServiceTier extend OpenAI::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::Responses::Response::ServiceTier) } + TaggedSymbol = + T.type_alias do + T.all(Symbol, OpenAI::Responses::Response::ServiceTier) + end OrSymbol = T.type_alias { T.any(Symbol, String) } - AUTO = T.let(:auto, OpenAI::Models::Responses::Response::ServiceTier::TaggedSymbol) - DEFAULT = T.let(:default, OpenAI::Models::Responses::Response::ServiceTier::TaggedSymbol) - FLEX = T.let(:flex, OpenAI::Models::Responses::Response::ServiceTier::TaggedSymbol) + AUTO = + T.let(:auto, OpenAI::Responses::Response::ServiceTier::TaggedSymbol) + DEFAULT = + T.let( + :default, + OpenAI::Responses::Response::ServiceTier::TaggedSymbol + ) + FLEX = + T.let(:flex, OpenAI::Responses::Response::ServiceTier::TaggedSymbol) - sig { override.returns(T::Array[OpenAI::Models::Responses::Response::ServiceTier::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[OpenAI::Responses::Response::ServiceTier::TaggedSymbol] + ) + end + def self.values + end end # The truncation strategy to use for the model response. @@ -573,14 +674,27 @@ module OpenAI module Truncation extend OpenAI::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::Responses::Response::Truncation) } + TaggedSymbol = + T.type_alias do + T.all(Symbol, OpenAI::Responses::Response::Truncation) + end OrSymbol = T.type_alias { T.any(Symbol, String) } - AUTO = T.let(:auto, OpenAI::Models::Responses::Response::Truncation::TaggedSymbol) - DISABLED = T.let(:disabled, OpenAI::Models::Responses::Response::Truncation::TaggedSymbol) + AUTO = + T.let(:auto, OpenAI::Responses::Response::Truncation::TaggedSymbol) + DISABLED = + T.let( + :disabled, + OpenAI::Responses::Response::Truncation::TaggedSymbol + ) - sig { override.returns(T::Array[OpenAI::Models::Responses::Response::Truncation::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[OpenAI::Responses::Response::Truncation::TaggedSymbol] + ) + end + def self.values + end end end end diff --git a/rbi/openai/models/responses/response_audio_delta_event.rbi b/rbi/openai/models/responses/response_audio_delta_event.rbi index b2e4f0e0..0ed8d2e1 100644 --- a/rbi/openai/models/responses/response_audio_delta_event.rbi +++ b/rbi/openai/models/responses/response_audio_delta_event.rbi @@ -4,6 +4,8 @@ module OpenAI module Models module Responses class ResponseAudioDeltaEvent < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # A chunk of Base64 encoded response audio bytes. sig { returns(String) } attr_accessor :delta @@ -19,9 +21,12 @@ module OpenAI delta:, # The type of the event. Always `response.audio.delta`. type: :"response.audio.delta" - ); end - sig { override.returns({delta: String, type: Symbol}) } - def to_hash; end + ) + end + + sig { override.returns({ delta: String, type: Symbol }) } + def to_hash + end end end end diff --git a/rbi/openai/models/responses/response_audio_done_event.rbi b/rbi/openai/models/responses/response_audio_done_event.rbi index 9df7735c..3d74ccf4 100644 --- a/rbi/openai/models/responses/response_audio_done_event.rbi +++ b/rbi/openai/models/responses/response_audio_done_event.rbi @@ -4,6 +4,8 @@ module OpenAI module Models module Responses class ResponseAudioDoneEvent < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The type of the event. Always `response.audio.done`. sig { returns(Symbol) } attr_accessor :type @@ -13,9 +15,12 @@ module OpenAI def self.new( # The type of the event. Always `response.audio.done`. type: :"response.audio.done" - ); end - sig { override.returns({type: Symbol}) } - def to_hash; end + ) + end + + sig { override.returns({ type: Symbol }) } + def to_hash + end end end end diff --git a/rbi/openai/models/responses/response_audio_transcript_delta_event.rbi b/rbi/openai/models/responses/response_audio_transcript_delta_event.rbi index 7ea46461..bb70f631 100644 --- a/rbi/openai/models/responses/response_audio_transcript_delta_event.rbi +++ b/rbi/openai/models/responses/response_audio_transcript_delta_event.rbi @@ -4,6 +4,8 @@ module OpenAI module Models module Responses class ResponseAudioTranscriptDeltaEvent < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The partial transcript of the audio response. sig { returns(String) } attr_accessor :delta @@ -19,9 +21,12 @@ module OpenAI delta:, # The type of the event. Always `response.audio.transcript.delta`. type: :"response.audio.transcript.delta" - ); end - sig { override.returns({delta: String, type: Symbol}) } - def to_hash; end + ) + end + + sig { override.returns({ delta: String, type: Symbol }) } + def to_hash + end end end end diff --git a/rbi/openai/models/responses/response_audio_transcript_done_event.rbi b/rbi/openai/models/responses/response_audio_transcript_done_event.rbi index ec7e9f09..df2381ba 100644 --- a/rbi/openai/models/responses/response_audio_transcript_done_event.rbi +++ b/rbi/openai/models/responses/response_audio_transcript_done_event.rbi @@ -4,6 +4,8 @@ module OpenAI module Models module Responses class ResponseAudioTranscriptDoneEvent < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The type of the event. Always `response.audio.transcript.done`. sig { returns(Symbol) } attr_accessor :type @@ -13,9 +15,12 @@ module OpenAI def self.new( # The type of the event. Always `response.audio.transcript.done`. type: :"response.audio.transcript.done" - ); end - sig { override.returns({type: Symbol}) } - def to_hash; end + ) + end + + sig { override.returns({ type: Symbol }) } + def to_hash + end end end end diff --git a/rbi/openai/models/responses/response_code_interpreter_call_code_delta_event.rbi b/rbi/openai/models/responses/response_code_interpreter_call_code_delta_event.rbi index 4c36e297..dd5c1396 100644 --- a/rbi/openai/models/responses/response_code_interpreter_call_code_delta_event.rbi +++ b/rbi/openai/models/responses/response_code_interpreter_call_code_delta_event.rbi @@ -4,6 +4,8 @@ module OpenAI module Models module Responses class ResponseCodeInterpreterCallCodeDeltaEvent < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The partial code snippet added by the code interpreter. sig { returns(String) } attr_accessor :delta @@ -17,7 +19,11 @@ module OpenAI attr_accessor :type # Emitted when a partial code snippet is added by the code interpreter. - sig { params(delta: String, output_index: Integer, type: Symbol).returns(T.attached_class) } + sig do + params(delta: String, output_index: Integer, type: Symbol).returns( + T.attached_class + ) + end def self.new( # The partial code snippet added by the code interpreter. delta:, @@ -25,9 +31,16 @@ module OpenAI output_index:, # The type of the event. Always `response.code_interpreter_call.code.delta`. type: :"response.code_interpreter_call.code.delta" - ); end - sig { override.returns({delta: String, output_index: Integer, type: Symbol}) } - def to_hash; end + ) + end + + sig do + override.returns( + { delta: String, output_index: Integer, type: Symbol } + ) + end + def to_hash + end end end end diff --git a/rbi/openai/models/responses/response_code_interpreter_call_code_done_event.rbi b/rbi/openai/models/responses/response_code_interpreter_call_code_done_event.rbi index bc7dd462..9cd3b09c 100644 --- a/rbi/openai/models/responses/response_code_interpreter_call_code_done_event.rbi +++ b/rbi/openai/models/responses/response_code_interpreter_call_code_done_event.rbi @@ -4,6 +4,8 @@ module OpenAI module Models module Responses class ResponseCodeInterpreterCallCodeDoneEvent < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The final code snippet output by the code interpreter. sig { returns(String) } attr_accessor :code @@ -17,7 +19,11 @@ module OpenAI attr_accessor :type # Emitted when code snippet output is finalized by the code interpreter. - sig { params(code: String, output_index: Integer, type: Symbol).returns(T.attached_class) } + sig do + params(code: String, output_index: Integer, type: Symbol).returns( + T.attached_class + ) + end def self.new( # The final code snippet output by the code interpreter. code:, @@ -25,9 +31,16 @@ module OpenAI output_index:, # The type of the event. Always `response.code_interpreter_call.code.done`. type: :"response.code_interpreter_call.code.done" - ); end - sig { override.returns({code: String, output_index: Integer, type: Symbol}) } - def to_hash; end + ) + end + + sig do + override.returns( + { code: String, output_index: Integer, type: Symbol } + ) + end + def to_hash + end end end end diff --git a/rbi/openai/models/responses/response_code_interpreter_call_completed_event.rbi b/rbi/openai/models/responses/response_code_interpreter_call_completed_event.rbi index 05dc4800..e2f8c573 100644 --- a/rbi/openai/models/responses/response_code_interpreter_call_completed_event.rbi +++ b/rbi/openai/models/responses/response_code_interpreter_call_completed_event.rbi @@ -4,15 +4,17 @@ module OpenAI module Models module Responses class ResponseCodeInterpreterCallCompletedEvent < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # A tool call to run code. - sig { returns(OpenAI::Models::Responses::ResponseCodeInterpreterToolCall) } + sig { returns(OpenAI::Responses::ResponseCodeInterpreterToolCall) } attr_reader :code_interpreter_call sig do params( - code_interpreter_call: T.any(OpenAI::Models::Responses::ResponseCodeInterpreterToolCall, OpenAI::Internal::AnyHash) - ) - .void + code_interpreter_call: + OpenAI::Responses::ResponseCodeInterpreterToolCall::OrHash + ).void end attr_writer :code_interpreter_call @@ -27,11 +29,11 @@ module OpenAI # Emitted when the code interpreter call is completed. sig do params( - code_interpreter_call: T.any(OpenAI::Models::Responses::ResponseCodeInterpreterToolCall, OpenAI::Internal::AnyHash), + code_interpreter_call: + OpenAI::Responses::ResponseCodeInterpreterToolCall::OrHash, output_index: Integer, type: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # A tool call to run code. @@ -40,18 +42,21 @@ module OpenAI output_index:, # The type of the event. Always `response.code_interpreter_call.completed`. type: :"response.code_interpreter_call.completed" - ); end + ) + end + sig do - override - .returns( - { - code_interpreter_call: OpenAI::Models::Responses::ResponseCodeInterpreterToolCall, - output_index: Integer, - type: Symbol - } - ) + override.returns( + { + code_interpreter_call: + OpenAI::Responses::ResponseCodeInterpreterToolCall, + output_index: Integer, + type: Symbol + } + ) + end + def to_hash end - def to_hash; end end end end diff --git a/rbi/openai/models/responses/response_code_interpreter_call_in_progress_event.rbi b/rbi/openai/models/responses/response_code_interpreter_call_in_progress_event.rbi index 2627f40b..983c9007 100644 --- a/rbi/openai/models/responses/response_code_interpreter_call_in_progress_event.rbi +++ b/rbi/openai/models/responses/response_code_interpreter_call_in_progress_event.rbi @@ -4,15 +4,17 @@ module OpenAI module Models module Responses class ResponseCodeInterpreterCallInProgressEvent < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # A tool call to run code. - sig { returns(OpenAI::Models::Responses::ResponseCodeInterpreterToolCall) } + sig { returns(OpenAI::Responses::ResponseCodeInterpreterToolCall) } attr_reader :code_interpreter_call sig do params( - code_interpreter_call: T.any(OpenAI::Models::Responses::ResponseCodeInterpreterToolCall, OpenAI::Internal::AnyHash) - ) - .void + code_interpreter_call: + OpenAI::Responses::ResponseCodeInterpreterToolCall::OrHash + ).void end attr_writer :code_interpreter_call @@ -27,11 +29,11 @@ module OpenAI # Emitted when a code interpreter call is in progress. sig do params( - code_interpreter_call: T.any(OpenAI::Models::Responses::ResponseCodeInterpreterToolCall, OpenAI::Internal::AnyHash), + code_interpreter_call: + OpenAI::Responses::ResponseCodeInterpreterToolCall::OrHash, output_index: Integer, type: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # A tool call to run code. @@ -40,18 +42,21 @@ module OpenAI output_index:, # The type of the event. Always `response.code_interpreter_call.in_progress`. type: :"response.code_interpreter_call.in_progress" - ); end + ) + end + sig do - override - .returns( - { - code_interpreter_call: OpenAI::Models::Responses::ResponseCodeInterpreterToolCall, - output_index: Integer, - type: Symbol - } - ) + override.returns( + { + code_interpreter_call: + OpenAI::Responses::ResponseCodeInterpreterToolCall, + output_index: Integer, + type: Symbol + } + ) + end + def to_hash end - def to_hash; end end end end diff --git a/rbi/openai/models/responses/response_code_interpreter_call_interpreting_event.rbi b/rbi/openai/models/responses/response_code_interpreter_call_interpreting_event.rbi index ee7e0050..031a295b 100644 --- a/rbi/openai/models/responses/response_code_interpreter_call_interpreting_event.rbi +++ b/rbi/openai/models/responses/response_code_interpreter_call_interpreting_event.rbi @@ -4,15 +4,17 @@ module OpenAI module Models module Responses class ResponseCodeInterpreterCallInterpretingEvent < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # A tool call to run code. - sig { returns(OpenAI::Models::Responses::ResponseCodeInterpreterToolCall) } + sig { returns(OpenAI::Responses::ResponseCodeInterpreterToolCall) } attr_reader :code_interpreter_call sig do params( - code_interpreter_call: T.any(OpenAI::Models::Responses::ResponseCodeInterpreterToolCall, OpenAI::Internal::AnyHash) - ) - .void + code_interpreter_call: + OpenAI::Responses::ResponseCodeInterpreterToolCall::OrHash + ).void end attr_writer :code_interpreter_call @@ -27,11 +29,11 @@ module OpenAI # Emitted when the code interpreter is actively interpreting the code snippet. sig do params( - code_interpreter_call: T.any(OpenAI::Models::Responses::ResponseCodeInterpreterToolCall, OpenAI::Internal::AnyHash), + code_interpreter_call: + OpenAI::Responses::ResponseCodeInterpreterToolCall::OrHash, output_index: Integer, type: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # A tool call to run code. @@ -40,18 +42,21 @@ module OpenAI output_index:, # The type of the event. Always `response.code_interpreter_call.interpreting`. type: :"response.code_interpreter_call.interpreting" - ); end + ) + end + sig do - override - .returns( - { - code_interpreter_call: OpenAI::Models::Responses::ResponseCodeInterpreterToolCall, - output_index: Integer, - type: Symbol - } - ) + override.returns( + { + code_interpreter_call: + OpenAI::Responses::ResponseCodeInterpreterToolCall, + output_index: Integer, + type: Symbol + } + ) + end + def to_hash end - def to_hash; end end end end diff --git a/rbi/openai/models/responses/response_code_interpreter_tool_call.rbi b/rbi/openai/models/responses/response_code_interpreter_tool_call.rbi index 2568aca1..d964daa1 100644 --- a/rbi/openai/models/responses/response_code_interpreter_tool_call.rbi +++ b/rbi/openai/models/responses/response_code_interpreter_tool_call.rbi @@ -4,6 +4,8 @@ module OpenAI module Models module Responses class ResponseCodeInterpreterToolCall < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The unique ID of the code interpreter tool call. sig { returns(String) } attr_accessor :id @@ -17,8 +19,8 @@ module OpenAI returns( T::Array[ T.any( - OpenAI::Models::Responses::ResponseCodeInterpreterToolCall::Result::Logs, - OpenAI::Models::Responses::ResponseCodeInterpreterToolCall::Result::Files + OpenAI::Responses::ResponseCodeInterpreterToolCall::Result::Logs, + OpenAI::Responses::ResponseCodeInterpreterToolCall::Result::Files ) ] ) @@ -26,7 +28,11 @@ module OpenAI attr_accessor :results # The status of the code interpreter tool call. - sig { returns(OpenAI::Models::Responses::ResponseCodeInterpreterToolCall::Status::TaggedSymbol) } + sig do + returns( + OpenAI::Responses::ResponseCodeInterpreterToolCall::Status::TaggedSymbol + ) + end attr_accessor :status # The type of the code interpreter tool call. Always `code_interpreter_call`. @@ -38,17 +44,17 @@ module OpenAI params( id: String, code: String, - results: T::Array[ - T.any( - OpenAI::Models::Responses::ResponseCodeInterpreterToolCall::Result::Logs, - OpenAI::Internal::AnyHash, - OpenAI::Models::Responses::ResponseCodeInterpreterToolCall::Result::Files - ) - ], - status: OpenAI::Models::Responses::ResponseCodeInterpreterToolCall::Status::OrSymbol, + results: + T::Array[ + T.any( + OpenAI::Responses::ResponseCodeInterpreterToolCall::Result::Logs::OrHash, + OpenAI::Responses::ResponseCodeInterpreterToolCall::Result::Files::OrHash + ) + ], + status: + OpenAI::Responses::ResponseCodeInterpreterToolCall::Status::OrSymbol, type: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # The unique ID of the code interpreter tool call. @@ -61,31 +67,46 @@ module OpenAI status:, # The type of the code interpreter tool call. Always `code_interpreter_call`. type: :code_interpreter_call - ); end + ) + end + sig do - override - .returns( - { - id: String, - code: String, - results: T::Array[ + override.returns( + { + id: String, + code: String, + results: + T::Array[ T.any( - OpenAI::Models::Responses::ResponseCodeInterpreterToolCall::Result::Logs, - OpenAI::Models::Responses::ResponseCodeInterpreterToolCall::Result::Files + OpenAI::Responses::ResponseCodeInterpreterToolCall::Result::Logs, + OpenAI::Responses::ResponseCodeInterpreterToolCall::Result::Files ) ], - status: OpenAI::Models::Responses::ResponseCodeInterpreterToolCall::Status::TaggedSymbol, - type: Symbol - } - ) + status: + OpenAI::Responses::ResponseCodeInterpreterToolCall::Status::TaggedSymbol, + type: Symbol + } + ) + end + def to_hash end - def to_hash; end # The output of a code interpreter tool call that is text. module Result extend OpenAI::Internal::Type::Union + Variants = + T.type_alias do + T.any( + OpenAI::Responses::ResponseCodeInterpreterToolCall::Result::Logs, + OpenAI::Responses::ResponseCodeInterpreterToolCall::Result::Files + ) + end + class Logs < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The logs of the code interpreter tool call. sig { returns(String) } attr_accessor :logs @@ -101,13 +122,25 @@ module OpenAI logs:, # The type of the code interpreter text output. Always `logs`. type: :logs - ); end - sig { override.returns({logs: String, type: Symbol}) } - def to_hash; end + ) + end + + sig { override.returns({ logs: String, type: Symbol }) } + def to_hash + end end class Files < OpenAI::Internal::Type::BaseModel - sig { returns(T::Array[OpenAI::Models::Responses::ResponseCodeInterpreterToolCall::Result::Files::File]) } + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + + sig do + returns( + T::Array[ + OpenAI::Responses::ResponseCodeInterpreterToolCall::Result::Files::File + ] + ) + end attr_accessor :files # The type of the code interpreter file output. Always `files`. @@ -117,33 +150,38 @@ module OpenAI # The output of a code interpreter tool call that is a file. sig do params( - files: T::Array[ - T.any( - OpenAI::Models::Responses::ResponseCodeInterpreterToolCall::Result::Files::File, - OpenAI::Internal::AnyHash - ) - ], + files: + T::Array[ + OpenAI::Responses::ResponseCodeInterpreterToolCall::Result::Files::File::OrHash + ], type: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( files:, # The type of the code interpreter file output. Always `files`. type: :files - ); end + ) + end + sig do - override - .returns( - { - files: T::Array[OpenAI::Models::Responses::ResponseCodeInterpreterToolCall::Result::Files::File], - type: Symbol - } - ) + override.returns( + { + files: + T::Array[ + OpenAI::Responses::ResponseCodeInterpreterToolCall::Result::Files::File + ], + type: Symbol + } + ) + end + def to_hash end - def to_hash; end class File < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The ID of the file. sig { returns(String) } attr_accessor :file_id @@ -152,25 +190,34 @@ module OpenAI sig { returns(String) } attr_accessor :mime_type - sig { params(file_id: String, mime_type: String).returns(T.attached_class) } + sig do + params(file_id: String, mime_type: String).returns( + T.attached_class + ) + end def self.new( # The ID of the file. file_id:, # The MIME type of the file. mime_type: - ); end - sig { override.returns({file_id: String, mime_type: String}) } - def to_hash; end + ) + end + + sig { override.returns({ file_id: String, mime_type: String }) } + def to_hash + end end end sig do - override - .returns( - [OpenAI::Models::Responses::ResponseCodeInterpreterToolCall::Result::Logs, OpenAI::Models::Responses::ResponseCodeInterpreterToolCall::Result::Files] - ) + override.returns( + T::Array[ + OpenAI::Responses::ResponseCodeInterpreterToolCall::Result::Variants + ] + ) + end + def self.variants end - def self.variants; end end # The status of the code interpreter tool call. @@ -178,21 +225,39 @@ module OpenAI extend OpenAI::Internal::Type::Enum TaggedSymbol = - T.type_alias { T.all(Symbol, OpenAI::Models::Responses::ResponseCodeInterpreterToolCall::Status) } + T.type_alias do + T.all( + Symbol, + OpenAI::Responses::ResponseCodeInterpreterToolCall::Status + ) + end OrSymbol = T.type_alias { T.any(Symbol, String) } IN_PROGRESS = - T.let(:in_progress, OpenAI::Models::Responses::ResponseCodeInterpreterToolCall::Status::TaggedSymbol) + T.let( + :in_progress, + OpenAI::Responses::ResponseCodeInterpreterToolCall::Status::TaggedSymbol + ) INTERPRETING = - T.let(:interpreting, OpenAI::Models::Responses::ResponseCodeInterpreterToolCall::Status::TaggedSymbol) + T.let( + :interpreting, + OpenAI::Responses::ResponseCodeInterpreterToolCall::Status::TaggedSymbol + ) COMPLETED = - T.let(:completed, OpenAI::Models::Responses::ResponseCodeInterpreterToolCall::Status::TaggedSymbol) + T.let( + :completed, + OpenAI::Responses::ResponseCodeInterpreterToolCall::Status::TaggedSymbol + ) sig do - override - .returns(T::Array[OpenAI::Models::Responses::ResponseCodeInterpreterToolCall::Status::TaggedSymbol]) + override.returns( + T::Array[ + OpenAI::Responses::ResponseCodeInterpreterToolCall::Status::TaggedSymbol + ] + ) + end + def self.values end - def self.values; end end end end diff --git a/rbi/openai/models/responses/response_completed_event.rbi b/rbi/openai/models/responses/response_completed_event.rbi index bf715172..3c962886 100644 --- a/rbi/openai/models/responses/response_completed_event.rbi +++ b/rbi/openai/models/responses/response_completed_event.rbi @@ -4,11 +4,13 @@ module OpenAI module Models module Responses class ResponseCompletedEvent < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Properties of the completed response. - sig { returns(OpenAI::Models::Responses::Response) } + sig { returns(OpenAI::Responses::Response) } attr_reader :response - sig { params(response: T.any(OpenAI::Models::Responses::Response, OpenAI::Internal::AnyHash)).void } + sig { params(response: OpenAI::Responses::Response::OrHash).void } attr_writer :response # The type of the event. Always `response.completed`. @@ -17,17 +19,26 @@ module OpenAI # Emitted when the model response is complete. sig do - params(response: T.any(OpenAI::Models::Responses::Response, OpenAI::Internal::AnyHash), type: Symbol) - .returns(T.attached_class) + params( + response: OpenAI::Responses::Response::OrHash, + type: Symbol + ).returns(T.attached_class) end def self.new( # Properties of the completed response. response:, # The type of the event. Always `response.completed`. type: :"response.completed" - ); end - sig { override.returns({response: OpenAI::Models::Responses::Response, type: Symbol}) } - def to_hash; end + ) + end + + sig do + override.returns( + { response: OpenAI::Responses::Response, type: Symbol } + ) + end + def to_hash + end end end end diff --git a/rbi/openai/models/responses/response_computer_tool_call.rbi b/rbi/openai/models/responses/response_computer_tool_call.rbi index 37023dcb..bd660209 100644 --- a/rbi/openai/models/responses/response_computer_tool_call.rbi +++ b/rbi/openai/models/responses/response_computer_tool_call.rbi @@ -4,6 +4,8 @@ module OpenAI module Models module Responses class ResponseComputerToolCall < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The unique ID of the computer call. sig { returns(String) } attr_accessor :id @@ -12,15 +14,15 @@ module OpenAI sig do returns( T.any( - OpenAI::Models::Responses::ResponseComputerToolCall::Action::Click, - OpenAI::Models::Responses::ResponseComputerToolCall::Action::DoubleClick, - OpenAI::Models::Responses::ResponseComputerToolCall::Action::Drag, - OpenAI::Models::Responses::ResponseComputerToolCall::Action::Keypress, - OpenAI::Models::Responses::ResponseComputerToolCall::Action::Move, - OpenAI::Models::Responses::ResponseComputerToolCall::Action::Screenshot, - OpenAI::Models::Responses::ResponseComputerToolCall::Action::Scroll, - OpenAI::Models::Responses::ResponseComputerToolCall::Action::Type, - OpenAI::Models::Responses::ResponseComputerToolCall::Action::Wait + OpenAI::Responses::ResponseComputerToolCall::Action::Click, + OpenAI::Responses::ResponseComputerToolCall::Action::DoubleClick, + OpenAI::Responses::ResponseComputerToolCall::Action::Drag, + OpenAI::Responses::ResponseComputerToolCall::Action::Keypress, + OpenAI::Responses::ResponseComputerToolCall::Action::Move, + OpenAI::Responses::ResponseComputerToolCall::Action::Screenshot, + OpenAI::Responses::ResponseComputerToolCall::Action::Scroll, + OpenAI::Responses::ResponseComputerToolCall::Action::Type, + OpenAI::Responses::ResponseComputerToolCall::Action::Wait ) ) end @@ -31,16 +33,26 @@ module OpenAI attr_accessor :call_id # The pending safety checks for the computer call. - sig { returns(T::Array[OpenAI::Models::Responses::ResponseComputerToolCall::PendingSafetyCheck]) } + sig do + returns( + T::Array[ + OpenAI::Responses::ResponseComputerToolCall::PendingSafetyCheck + ] + ) + end attr_accessor :pending_safety_checks # The status of the item. One of `in_progress`, `completed`, or `incomplete`. # Populated when items are returned via API. - sig { returns(OpenAI::Models::Responses::ResponseComputerToolCall::Status::OrSymbol) } + sig do + returns(OpenAI::Responses::ResponseComputerToolCall::Status::OrSymbol) + end attr_accessor :status # The type of the computer call. Always `computer_call`. - sig { returns(OpenAI::Models::Responses::ResponseComputerToolCall::Type::OrSymbol) } + sig do + returns(OpenAI::Responses::ResponseComputerToolCall::Type::OrSymbol) + end attr_accessor :type # A tool call to a computer use tool. See the @@ -49,24 +61,27 @@ module OpenAI sig do params( id: String, - action: T.any( - OpenAI::Models::Responses::ResponseComputerToolCall::Action::Click, - OpenAI::Internal::AnyHash, - OpenAI::Models::Responses::ResponseComputerToolCall::Action::DoubleClick, - OpenAI::Models::Responses::ResponseComputerToolCall::Action::Drag, - OpenAI::Models::Responses::ResponseComputerToolCall::Action::Keypress, - OpenAI::Models::Responses::ResponseComputerToolCall::Action::Move, - OpenAI::Models::Responses::ResponseComputerToolCall::Action::Screenshot, - OpenAI::Models::Responses::ResponseComputerToolCall::Action::Scroll, - OpenAI::Models::Responses::ResponseComputerToolCall::Action::Type, - OpenAI::Models::Responses::ResponseComputerToolCall::Action::Wait - ), + action: + T.any( + OpenAI::Responses::ResponseComputerToolCall::Action::Click::OrHash, + OpenAI::Responses::ResponseComputerToolCall::Action::DoubleClick::OrHash, + OpenAI::Responses::ResponseComputerToolCall::Action::Drag::OrHash, + OpenAI::Responses::ResponseComputerToolCall::Action::Keypress::OrHash, + OpenAI::Responses::ResponseComputerToolCall::Action::Move::OrHash, + OpenAI::Responses::ResponseComputerToolCall::Action::Screenshot::OrHash, + OpenAI::Responses::ResponseComputerToolCall::Action::Scroll::OrHash, + OpenAI::Responses::ResponseComputerToolCall::Action::Type::OrHash, + OpenAI::Responses::ResponseComputerToolCall::Action::Wait::OrHash + ), call_id: String, - pending_safety_checks: T::Array[T.any(OpenAI::Models::Responses::ResponseComputerToolCall::PendingSafetyCheck, OpenAI::Internal::AnyHash)], - status: OpenAI::Models::Responses::ResponseComputerToolCall::Status::OrSymbol, - type: OpenAI::Models::Responses::ResponseComputerToolCall::Type::OrSymbol - ) - .returns(T.attached_class) + pending_safety_checks: + T::Array[ + OpenAI::Responses::ResponseComputerToolCall::PendingSafetyCheck::OrHash + ], + status: + OpenAI::Responses::ResponseComputerToolCall::Status::OrSymbol, + type: OpenAI::Responses::ResponseComputerToolCall::Type::OrSymbol + ).returns(T.attached_class) end def self.new( # The unique ID of the computer call. @@ -82,40 +97,69 @@ module OpenAI status:, # The type of the computer call. Always `computer_call`. type: - ); end + ) + end + sig do - override - .returns( - { - id: String, - action: T.any( - OpenAI::Models::Responses::ResponseComputerToolCall::Action::Click, - OpenAI::Models::Responses::ResponseComputerToolCall::Action::DoubleClick, - OpenAI::Models::Responses::ResponseComputerToolCall::Action::Drag, - OpenAI::Models::Responses::ResponseComputerToolCall::Action::Keypress, - OpenAI::Models::Responses::ResponseComputerToolCall::Action::Move, - OpenAI::Models::Responses::ResponseComputerToolCall::Action::Screenshot, - OpenAI::Models::Responses::ResponseComputerToolCall::Action::Scroll, - OpenAI::Models::Responses::ResponseComputerToolCall::Action::Type, - OpenAI::Models::Responses::ResponseComputerToolCall::Action::Wait + override.returns( + { + id: String, + action: + T.any( + OpenAI::Responses::ResponseComputerToolCall::Action::Click, + OpenAI::Responses::ResponseComputerToolCall::Action::DoubleClick, + OpenAI::Responses::ResponseComputerToolCall::Action::Drag, + OpenAI::Responses::ResponseComputerToolCall::Action::Keypress, + OpenAI::Responses::ResponseComputerToolCall::Action::Move, + OpenAI::Responses::ResponseComputerToolCall::Action::Screenshot, + OpenAI::Responses::ResponseComputerToolCall::Action::Scroll, + OpenAI::Responses::ResponseComputerToolCall::Action::Type, + OpenAI::Responses::ResponseComputerToolCall::Action::Wait ), - call_id: String, - pending_safety_checks: T::Array[OpenAI::Models::Responses::ResponseComputerToolCall::PendingSafetyCheck], - status: OpenAI::Models::Responses::ResponseComputerToolCall::Status::OrSymbol, - type: OpenAI::Models::Responses::ResponseComputerToolCall::Type::OrSymbol - } - ) + call_id: String, + pending_safety_checks: + T::Array[ + OpenAI::Responses::ResponseComputerToolCall::PendingSafetyCheck + ], + status: + OpenAI::Responses::ResponseComputerToolCall::Status::OrSymbol, + type: OpenAI::Responses::ResponseComputerToolCall::Type::OrSymbol + } + ) + end + def to_hash end - def to_hash; end # A click action. module Action extend OpenAI::Internal::Type::Union + Variants = + T.type_alias do + T.any( + OpenAI::Responses::ResponseComputerToolCall::Action::Click, + OpenAI::Responses::ResponseComputerToolCall::Action::DoubleClick, + OpenAI::Responses::ResponseComputerToolCall::Action::Drag, + OpenAI::Responses::ResponseComputerToolCall::Action::Keypress, + OpenAI::Responses::ResponseComputerToolCall::Action::Move, + OpenAI::Responses::ResponseComputerToolCall::Action::Screenshot, + OpenAI::Responses::ResponseComputerToolCall::Action::Scroll, + OpenAI::Responses::ResponseComputerToolCall::Action::Type, + OpenAI::Responses::ResponseComputerToolCall::Action::Wait + ) + end + class Click < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Indicates which mouse button was pressed during the click. One of `left`, # `right`, `wheel`, `back`, or `forward`. - sig { returns(OpenAI::Models::Responses::ResponseComputerToolCall::Action::Click::Button::OrSymbol) } + sig do + returns( + OpenAI::Responses::ResponseComputerToolCall::Action::Click::Button::OrSymbol + ) + end attr_accessor :button # Specifies the event type. For a click action, this property is always set to @@ -134,12 +178,12 @@ module OpenAI # A click action. sig do params( - button: OpenAI::Models::Responses::ResponseComputerToolCall::Action::Click::Button::OrSymbol, + button: + OpenAI::Responses::ResponseComputerToolCall::Action::Click::Button::OrSymbol, x: Integer, y_: Integer, type: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # Indicates which mouse button was pressed during the click. One of `left`, @@ -152,19 +196,22 @@ module OpenAI # Specifies the event type. For a click action, this property is always set to # `click`. type: :click - ); end + ) + end + sig do - override - .returns( - { - button: OpenAI::Models::Responses::ResponseComputerToolCall::Action::Click::Button::OrSymbol, - type: Symbol, - x: Integer, - y_: Integer - } - ) + override.returns( + { + button: + OpenAI::Responses::ResponseComputerToolCall::Action::Click::Button::OrSymbol, + type: Symbol, + x: Integer, + y_: Integer + } + ) + end + def to_hash end - def to_hash; end # Indicates which mouse button was pressed during the click. One of `left`, # `right`, `wheel`, `back`, or `forward`. @@ -172,31 +219,56 @@ module OpenAI extend OpenAI::Internal::Type::Enum TaggedSymbol = - T.type_alias { T.all(Symbol, OpenAI::Models::Responses::ResponseComputerToolCall::Action::Click::Button) } + T.type_alias do + T.all( + Symbol, + OpenAI::Responses::ResponseComputerToolCall::Action::Click::Button + ) + end OrSymbol = T.type_alias { T.any(Symbol, String) } LEFT = - T.let(:left, OpenAI::Models::Responses::ResponseComputerToolCall::Action::Click::Button::TaggedSymbol) + T.let( + :left, + OpenAI::Responses::ResponseComputerToolCall::Action::Click::Button::TaggedSymbol + ) RIGHT = - T.let(:right, OpenAI::Models::Responses::ResponseComputerToolCall::Action::Click::Button::TaggedSymbol) + T.let( + :right, + OpenAI::Responses::ResponseComputerToolCall::Action::Click::Button::TaggedSymbol + ) WHEEL = - T.let(:wheel, OpenAI::Models::Responses::ResponseComputerToolCall::Action::Click::Button::TaggedSymbol) + T.let( + :wheel, + OpenAI::Responses::ResponseComputerToolCall::Action::Click::Button::TaggedSymbol + ) BACK = - T.let(:back, OpenAI::Models::Responses::ResponseComputerToolCall::Action::Click::Button::TaggedSymbol) + T.let( + :back, + OpenAI::Responses::ResponseComputerToolCall::Action::Click::Button::TaggedSymbol + ) FORWARD = - T.let(:forward, OpenAI::Models::Responses::ResponseComputerToolCall::Action::Click::Button::TaggedSymbol) + T.let( + :forward, + OpenAI::Responses::ResponseComputerToolCall::Action::Click::Button::TaggedSymbol + ) sig do - override - .returns( - T::Array[OpenAI::Models::Responses::ResponseComputerToolCall::Action::Click::Button::TaggedSymbol] - ) + override.returns( + T::Array[ + OpenAI::Responses::ResponseComputerToolCall::Action::Click::Button::TaggedSymbol + ] + ) + end + def self.values end - def self.values; end end end class DoubleClick < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Specifies the event type. For a double click action, this property is always set # to `double_click`. sig { returns(Symbol) } @@ -211,7 +283,11 @@ module OpenAI attr_accessor :y_ # A double click action. - sig { params(x: Integer, y_: Integer, type: Symbol).returns(T.attached_class) } + sig do + params(x: Integer, y_: Integer, type: Symbol).returns( + T.attached_class + ) + end def self.new( # The x-coordinate where the double click occurred. x:, @@ -220,12 +296,18 @@ module OpenAI # Specifies the event type. For a double click action, this property is always set # to `double_click`. type: :double_click - ); end - sig { override.returns({type: Symbol, x: Integer, y_: Integer}) } - def to_hash; end + ) + end + + sig { override.returns({ type: Symbol, x: Integer, y_: Integer }) } + def to_hash + end end class Drag < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # An array of coordinates representing the path of the drag action. Coordinates # will appear as an array of objects, eg # @@ -235,7 +317,13 @@ module OpenAI # { x: 200, y: 300 } # ] # ``` - sig { returns(T::Array[OpenAI::Models::Responses::ResponseComputerToolCall::Action::Drag::Path]) } + sig do + returns( + T::Array[ + OpenAI::Responses::ResponseComputerToolCall::Action::Drag::Path + ] + ) + end attr_accessor :path # Specifies the event type. For a drag action, this property is always set to @@ -246,10 +334,12 @@ module OpenAI # A drag action. sig do params( - path: T::Array[T.any(OpenAI::Models::Responses::ResponseComputerToolCall::Action::Drag::Path, OpenAI::Internal::AnyHash)], + path: + T::Array[ + OpenAI::Responses::ResponseComputerToolCall::Action::Drag::Path::OrHash + ], type: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # An array of coordinates representing the path of the drag action. Coordinates @@ -265,16 +355,27 @@ module OpenAI # Specifies the event type. For a drag action, this property is always set to # `drag`. type: :drag - ); end + ) + end + sig do - override - .returns( - {path: T::Array[OpenAI::Models::Responses::ResponseComputerToolCall::Action::Drag::Path], type: Symbol} - ) + override.returns( + { + path: + T::Array[ + OpenAI::Responses::ResponseComputerToolCall::Action::Drag::Path + ], + type: Symbol + } + ) + end + def to_hash end - def to_hash; end class Path < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The x-coordinate. sig { returns(Integer) } attr_accessor :x @@ -290,13 +391,19 @@ module OpenAI x:, # The y-coordinate. y_: - ); end - sig { override.returns({x: Integer, y_: Integer}) } - def to_hash; end + ) + end + + sig { override.returns({ x: Integer, y_: Integer }) } + def to_hash + end end end class Keypress < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The combination of keys the model is requesting to be pressed. This is an array # of strings, each representing a key. sig { returns(T::Array[String]) } @@ -308,7 +415,11 @@ module OpenAI attr_accessor :type # A collection of keypresses the model would like to perform. - sig { params(keys: T::Array[String], type: Symbol).returns(T.attached_class) } + sig do + params(keys: T::Array[String], type: Symbol).returns( + T.attached_class + ) + end def self.new( # The combination of keys the model is requesting to be pressed. This is an array # of strings, each representing a key. @@ -316,12 +427,18 @@ module OpenAI # Specifies the event type. For a keypress action, this property is always set to # `keypress`. type: :keypress - ); end - sig { override.returns({keys: T::Array[String], type: Symbol}) } - def to_hash; end + ) + end + + sig { override.returns({ keys: T::Array[String], type: Symbol }) } + def to_hash + end end class Move < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Specifies the event type. For a move action, this property is always set to # `move`. sig { returns(Symbol) } @@ -336,7 +453,11 @@ module OpenAI attr_accessor :y_ # A mouse move action. - sig { params(x: Integer, y_: Integer, type: Symbol).returns(T.attached_class) } + sig do + params(x: Integer, y_: Integer, type: Symbol).returns( + T.attached_class + ) + end def self.new( # The x-coordinate to move to. x:, @@ -345,12 +466,18 @@ module OpenAI # Specifies the event type. For a move action, this property is always set to # `move`. type: :move - ); end - sig { override.returns({type: Symbol, x: Integer, y_: Integer}) } - def to_hash; end + ) + end + + sig { override.returns({ type: Symbol, x: Integer, y_: Integer }) } + def to_hash + end end class Screenshot < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Specifies the event type. For a screenshot action, this property is always set # to `screenshot`. sig { returns(Symbol) } @@ -362,12 +489,18 @@ module OpenAI # Specifies the event type. For a screenshot action, this property is always set # to `screenshot`. type: :screenshot - ); end - sig { override.returns({type: Symbol}) } - def to_hash; end + ) + end + + sig { override.returns({ type: Symbol }) } + def to_hash + end end class Scroll < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The horizontal scroll distance. sig { returns(Integer) } attr_accessor :scroll_x @@ -391,8 +524,13 @@ module OpenAI # A scroll action. sig do - params(scroll_x: Integer, scroll_y: Integer, x: Integer, y_: Integer, type: Symbol) - .returns(T.attached_class) + params( + scroll_x: Integer, + scroll_y: Integer, + x: Integer, + y_: Integer, + type: Symbol + ).returns(T.attached_class) end def self.new( # The horizontal scroll distance. @@ -406,14 +544,28 @@ module OpenAI # Specifies the event type. For a scroll action, this property is always set to # `scroll`. type: :scroll - ); end + ) + end + sig do - override.returns({scroll_x: Integer, scroll_y: Integer, type: Symbol, x: Integer, y_: Integer}) + override.returns( + { + scroll_x: Integer, + scroll_y: Integer, + type: Symbol, + x: Integer, + y_: Integer + } + ) + end + def to_hash end - def to_hash; end end class Type < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The text to type. sig { returns(String) } attr_accessor :text @@ -431,12 +583,18 @@ module OpenAI # Specifies the event type. For a type action, this property is always set to # `type`. type: :type - ); end - sig { override.returns({text: String, type: Symbol}) } - def to_hash; end + ) + end + + sig { override.returns({ text: String, type: Symbol }) } + def to_hash + end end class Wait < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Specifies the event type. For a wait action, this property is always set to # `wait`. sig { returns(Symbol) } @@ -448,21 +606,29 @@ module OpenAI # Specifies the event type. For a wait action, this property is always set to # `wait`. type: :wait - ); end - sig { override.returns({type: Symbol}) } - def to_hash; end + ) + end + + sig { override.returns({ type: Symbol }) } + def to_hash + end end sig do - override - .returns( - [OpenAI::Models::Responses::ResponseComputerToolCall::Action::Click, OpenAI::Models::Responses::ResponseComputerToolCall::Action::DoubleClick, OpenAI::Models::Responses::ResponseComputerToolCall::Action::Drag, OpenAI::Models::Responses::ResponseComputerToolCall::Action::Keypress, OpenAI::Models::Responses::ResponseComputerToolCall::Action::Move, OpenAI::Models::Responses::ResponseComputerToolCall::Action::Screenshot, OpenAI::Models::Responses::ResponseComputerToolCall::Action::Scroll, OpenAI::Models::Responses::ResponseComputerToolCall::Action::Type, OpenAI::Models::Responses::ResponseComputerToolCall::Action::Wait] - ) + override.returns( + T::Array[ + OpenAI::Responses::ResponseComputerToolCall::Action::Variants + ] + ) + end + def self.variants end - def self.variants; end end class PendingSafetyCheck < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The ID of the pending safety check. sig { returns(String) } attr_accessor :id @@ -476,7 +642,11 @@ module OpenAI attr_accessor :message # A pending safety check for the computer call. - sig { params(id: String, code: String, message: String).returns(T.attached_class) } + sig do + params(id: String, code: String, message: String).returns( + T.attached_class + ) + end def self.new( # The ID of the pending safety check. id:, @@ -484,9 +654,14 @@ module OpenAI code:, # Details about the pending safety check. message: - ); end - sig { override.returns({id: String, code: String, message: String}) } - def to_hash; end + ) + end + + sig do + override.returns({ id: String, code: String, message: String }) + end + def to_hash + end end # The status of the item. One of `in_progress`, `completed`, or `incomplete`. @@ -495,31 +670,63 @@ module OpenAI extend OpenAI::Internal::Type::Enum TaggedSymbol = - T.type_alias { T.all(Symbol, OpenAI::Models::Responses::ResponseComputerToolCall::Status) } + T.type_alias do + T.all(Symbol, OpenAI::Responses::ResponseComputerToolCall::Status) + end OrSymbol = T.type_alias { T.any(Symbol, String) } IN_PROGRESS = - T.let(:in_progress, OpenAI::Models::Responses::ResponseComputerToolCall::Status::TaggedSymbol) - COMPLETED = T.let(:completed, OpenAI::Models::Responses::ResponseComputerToolCall::Status::TaggedSymbol) + T.let( + :in_progress, + OpenAI::Responses::ResponseComputerToolCall::Status::TaggedSymbol + ) + COMPLETED = + T.let( + :completed, + OpenAI::Responses::ResponseComputerToolCall::Status::TaggedSymbol + ) INCOMPLETE = - T.let(:incomplete, OpenAI::Models::Responses::ResponseComputerToolCall::Status::TaggedSymbol) + T.let( + :incomplete, + OpenAI::Responses::ResponseComputerToolCall::Status::TaggedSymbol + ) - sig { override.returns(T::Array[OpenAI::Models::Responses::ResponseComputerToolCall::Status::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[ + OpenAI::Responses::ResponseComputerToolCall::Status::TaggedSymbol + ] + ) + end + def self.values + end end # The type of the computer call. Always `computer_call`. module Type extend OpenAI::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::Responses::ResponseComputerToolCall::Type) } + TaggedSymbol = + T.type_alias do + T.all(Symbol, OpenAI::Responses::ResponseComputerToolCall::Type) + end OrSymbol = T.type_alias { T.any(Symbol, String) } COMPUTER_CALL = - T.let(:computer_call, OpenAI::Models::Responses::ResponseComputerToolCall::Type::TaggedSymbol) + T.let( + :computer_call, + OpenAI::Responses::ResponseComputerToolCall::Type::TaggedSymbol + ) - sig { override.returns(T::Array[OpenAI::Models::Responses::ResponseComputerToolCall::Type::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[ + OpenAI::Responses::ResponseComputerToolCall::Type::TaggedSymbol + ] + ) + end + def self.values + end end end end diff --git a/rbi/openai/models/responses/response_computer_tool_call_output_item.rbi b/rbi/openai/models/responses/response_computer_tool_call_output_item.rbi index c8e4b2bf..f5b233b2 100644 --- a/rbi/openai/models/responses/response_computer_tool_call_output_item.rbi +++ b/rbi/openai/models/responses/response_computer_tool_call_output_item.rbi @@ -4,6 +4,8 @@ module OpenAI module Models module Responses class ResponseComputerToolCallOutputItem < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The unique ID of the computer call tool output. sig { returns(String) } attr_accessor :id @@ -13,14 +15,16 @@ module OpenAI attr_accessor :call_id # A computer screenshot image used with the computer use tool. - sig { returns(OpenAI::Models::Responses::ResponseComputerToolCallOutputScreenshot) } + sig do + returns(OpenAI::Responses::ResponseComputerToolCallOutputScreenshot) + end attr_reader :output sig do params( - output: T.any(OpenAI::Models::Responses::ResponseComputerToolCallOutputScreenshot, OpenAI::Internal::AnyHash) - ) - .void + output: + OpenAI::Responses::ResponseComputerToolCallOutputScreenshot::OrHash + ).void end attr_writer :output @@ -33,7 +37,9 @@ module OpenAI sig do returns( T.nilable( - T::Array[OpenAI::Models::Responses::ResponseComputerToolCallOutputItem::AcknowledgedSafetyCheck] + T::Array[ + OpenAI::Responses::ResponseComputerToolCallOutputItem::AcknowledgedSafetyCheck + ] ) ) end @@ -41,40 +47,47 @@ module OpenAI sig do params( - acknowledged_safety_checks: T::Array[ - T.any( - OpenAI::Models::Responses::ResponseComputerToolCallOutputItem::AcknowledgedSafetyCheck, - OpenAI::Internal::AnyHash - ) - ] - ) - .void + acknowledged_safety_checks: + T::Array[ + OpenAI::Responses::ResponseComputerToolCallOutputItem::AcknowledgedSafetyCheck::OrHash + ] + ).void end attr_writer :acknowledged_safety_checks # The status of the message input. One of `in_progress`, `completed`, or # `incomplete`. Populated when input items are returned via API. - sig { returns(T.nilable(OpenAI::Models::Responses::ResponseComputerToolCallOutputItem::Status::TaggedSymbol)) } + sig do + returns( + T.nilable( + OpenAI::Responses::ResponseComputerToolCallOutputItem::Status::TaggedSymbol + ) + ) + end attr_reader :status - sig { params(status: OpenAI::Models::Responses::ResponseComputerToolCallOutputItem::Status::OrSymbol).void } + sig do + params( + status: + OpenAI::Responses::ResponseComputerToolCallOutputItem::Status::OrSymbol + ).void + end attr_writer :status sig do params( id: String, call_id: String, - output: T.any(OpenAI::Models::Responses::ResponseComputerToolCallOutputScreenshot, OpenAI::Internal::AnyHash), - acknowledged_safety_checks: T::Array[ - T.any( - OpenAI::Models::Responses::ResponseComputerToolCallOutputItem::AcknowledgedSafetyCheck, - OpenAI::Internal::AnyHash - ) - ], - status: OpenAI::Models::Responses::ResponseComputerToolCallOutputItem::Status::OrSymbol, + output: + OpenAI::Responses::ResponseComputerToolCallOutputScreenshot::OrHash, + acknowledged_safety_checks: + T::Array[ + OpenAI::Responses::ResponseComputerToolCallOutputItem::AcknowledgedSafetyCheck::OrHash + ], + status: + OpenAI::Responses::ResponseComputerToolCallOutputItem::Status::OrSymbol, type: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # The unique ID of the computer call tool output. @@ -91,23 +104,33 @@ module OpenAI status: nil, # The type of the computer tool call output. Always `computer_call_output`. type: :computer_call_output - ); end + ) + end + sig do - override - .returns( - { - id: String, - call_id: String, - output: OpenAI::Models::Responses::ResponseComputerToolCallOutputScreenshot, - type: Symbol, - acknowledged_safety_checks: T::Array[OpenAI::Models::Responses::ResponseComputerToolCallOutputItem::AcknowledgedSafetyCheck], - status: OpenAI::Models::Responses::ResponseComputerToolCallOutputItem::Status::TaggedSymbol - } - ) + override.returns( + { + id: String, + call_id: String, + output: + OpenAI::Responses::ResponseComputerToolCallOutputScreenshot, + type: Symbol, + acknowledged_safety_checks: + T::Array[ + OpenAI::Responses::ResponseComputerToolCallOutputItem::AcknowledgedSafetyCheck + ], + status: + OpenAI::Responses::ResponseComputerToolCallOutputItem::Status::TaggedSymbol + } + ) + end + def to_hash end - def to_hash; end class AcknowledgedSafetyCheck < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The ID of the pending safety check. sig { returns(String) } attr_accessor :id @@ -121,7 +144,11 @@ module OpenAI attr_accessor :message # A pending safety check for the computer call. - sig { params(id: String, code: String, message: String).returns(T.attached_class) } + sig do + params(id: String, code: String, message: String).returns( + T.attached_class + ) + end def self.new( # The ID of the pending safety check. id:, @@ -129,9 +156,14 @@ module OpenAI code:, # Details about the pending safety check. message: - ); end - sig { override.returns({id: String, code: String, message: String}) } - def to_hash; end + ) + end + + sig do + override.returns({ id: String, code: String, message: String }) + end + def to_hash + end end # The status of the message input. One of `in_progress`, `completed`, or @@ -140,21 +172,39 @@ module OpenAI extend OpenAI::Internal::Type::Enum TaggedSymbol = - T.type_alias { T.all(Symbol, OpenAI::Models::Responses::ResponseComputerToolCallOutputItem::Status) } + T.type_alias do + T.all( + Symbol, + OpenAI::Responses::ResponseComputerToolCallOutputItem::Status + ) + end OrSymbol = T.type_alias { T.any(Symbol, String) } IN_PROGRESS = - T.let(:in_progress, OpenAI::Models::Responses::ResponseComputerToolCallOutputItem::Status::TaggedSymbol) + T.let( + :in_progress, + OpenAI::Responses::ResponseComputerToolCallOutputItem::Status::TaggedSymbol + ) COMPLETED = - T.let(:completed, OpenAI::Models::Responses::ResponseComputerToolCallOutputItem::Status::TaggedSymbol) + T.let( + :completed, + OpenAI::Responses::ResponseComputerToolCallOutputItem::Status::TaggedSymbol + ) INCOMPLETE = - T.let(:incomplete, OpenAI::Models::Responses::ResponseComputerToolCallOutputItem::Status::TaggedSymbol) + T.let( + :incomplete, + OpenAI::Responses::ResponseComputerToolCallOutputItem::Status::TaggedSymbol + ) sig do - override - .returns(T::Array[OpenAI::Models::Responses::ResponseComputerToolCallOutputItem::Status::TaggedSymbol]) + override.returns( + T::Array[ + OpenAI::Responses::ResponseComputerToolCallOutputItem::Status::TaggedSymbol + ] + ) + end + def self.values end - def self.values; end end end end diff --git a/rbi/openai/models/responses/response_computer_tool_call_output_screenshot.rbi b/rbi/openai/models/responses/response_computer_tool_call_output_screenshot.rbi index b0d1e196..7961326d 100644 --- a/rbi/openai/models/responses/response_computer_tool_call_output_screenshot.rbi +++ b/rbi/openai/models/responses/response_computer_tool_call_output_screenshot.rbi @@ -4,6 +4,8 @@ module OpenAI module Models module Responses class ResponseComputerToolCallOutputScreenshot < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Specifies the event type. For a computer screenshot, this property is always set # to `computer_screenshot`. sig { returns(Symbol) } @@ -24,7 +26,11 @@ module OpenAI attr_writer :image_url # A computer screenshot image used with the computer use tool. - sig { params(file_id: String, image_url: String, type: Symbol).returns(T.attached_class) } + sig do + params(file_id: String, image_url: String, type: Symbol).returns( + T.attached_class + ) + end def self.new( # The identifier of an uploaded file that contains the screenshot. file_id: nil, @@ -33,9 +39,14 @@ module OpenAI # Specifies the event type. For a computer screenshot, this property is always set # to `computer_screenshot`. type: :computer_screenshot - ); end - sig { override.returns({type: Symbol, file_id: String, image_url: String}) } - def to_hash; end + ) + end + + sig do + override.returns({ type: Symbol, file_id: String, image_url: String }) + end + def to_hash + end end end end diff --git a/rbi/openai/models/responses/response_content.rbi b/rbi/openai/models/responses/response_content.rbi index 5fd0ccd8..126e783d 100644 --- a/rbi/openai/models/responses/response_content.rbi +++ b/rbi/openai/models/responses/response_content.rbi @@ -7,13 +7,24 @@ module OpenAI module ResponseContent extend OpenAI::Internal::Type::Union - sig do - override - .returns( - [OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::Responses::ResponseInputImage, OpenAI::Models::Responses::ResponseInputFile, OpenAI::Models::Responses::ResponseOutputText, OpenAI::Models::Responses::ResponseOutputRefusal] + Variants = + T.type_alias do + T.any( + OpenAI::Responses::ResponseInputText, + OpenAI::Responses::ResponseInputImage, + OpenAI::Responses::ResponseInputFile, + OpenAI::Responses::ResponseOutputText, + OpenAI::Responses::ResponseOutputRefusal ) + end + + sig do + override.returns( + T::Array[OpenAI::Responses::ResponseContent::Variants] + ) + end + def self.variants end - def self.variants; end end end end diff --git a/rbi/openai/models/responses/response_content_part_added_event.rbi b/rbi/openai/models/responses/response_content_part_added_event.rbi index 46fa7693..341887c8 100644 --- a/rbi/openai/models/responses/response_content_part_added_event.rbi +++ b/rbi/openai/models/responses/response_content_part_added_event.rbi @@ -4,6 +4,8 @@ module OpenAI module Models module Responses class ResponseContentPartAddedEvent < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The index of the content part that was added. sig { returns(Integer) } attr_accessor :content_index @@ -19,7 +21,10 @@ module OpenAI # The content part that was added. sig do returns( - T.any(OpenAI::Models::Responses::ResponseOutputText, OpenAI::Models::Responses::ResponseOutputRefusal) + T.any( + OpenAI::Responses::ResponseOutputText, + OpenAI::Responses::ResponseOutputRefusal + ) ) end attr_accessor :part @@ -34,14 +39,13 @@ module OpenAI content_index: Integer, item_id: String, output_index: Integer, - part: T.any( - OpenAI::Models::Responses::ResponseOutputText, - OpenAI::Internal::AnyHash, - OpenAI::Models::Responses::ResponseOutputRefusal - ), + part: + T.any( + OpenAI::Responses::ResponseOutputText::OrHash, + OpenAI::Responses::ResponseOutputRefusal::OrHash + ), type: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # The index of the content part that was added. @@ -54,30 +58,48 @@ module OpenAI part:, # The type of the event. Always `response.content_part.added`. type: :"response.content_part.added" - ); end + ) + end + sig do - override - .returns( - { - content_index: Integer, - item_id: String, - output_index: Integer, - part: T.any(OpenAI::Models::Responses::ResponseOutputText, OpenAI::Models::Responses::ResponseOutputRefusal), - type: Symbol - } - ) + override.returns( + { + content_index: Integer, + item_id: String, + output_index: Integer, + part: + T.any( + OpenAI::Responses::ResponseOutputText, + OpenAI::Responses::ResponseOutputRefusal + ), + type: Symbol + } + ) + end + def to_hash end - def to_hash; end # The content part that was added. module Part extend OpenAI::Internal::Type::Union + Variants = + T.type_alias do + T.any( + OpenAI::Responses::ResponseOutputText, + OpenAI::Responses::ResponseOutputRefusal + ) + end + sig do - override - .returns([OpenAI::Models::Responses::ResponseOutputText, OpenAI::Models::Responses::ResponseOutputRefusal]) + override.returns( + T::Array[ + OpenAI::Responses::ResponseContentPartAddedEvent::Part::Variants + ] + ) + end + def self.variants end - def self.variants; end end end end diff --git a/rbi/openai/models/responses/response_content_part_done_event.rbi b/rbi/openai/models/responses/response_content_part_done_event.rbi index c1519e4f..e004eed3 100644 --- a/rbi/openai/models/responses/response_content_part_done_event.rbi +++ b/rbi/openai/models/responses/response_content_part_done_event.rbi @@ -4,6 +4,8 @@ module OpenAI module Models module Responses class ResponseContentPartDoneEvent < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The index of the content part that is done. sig { returns(Integer) } attr_accessor :content_index @@ -19,7 +21,10 @@ module OpenAI # The content part that is done. sig do returns( - T.any(OpenAI::Models::Responses::ResponseOutputText, OpenAI::Models::Responses::ResponseOutputRefusal) + T.any( + OpenAI::Responses::ResponseOutputText, + OpenAI::Responses::ResponseOutputRefusal + ) ) end attr_accessor :part @@ -34,14 +39,13 @@ module OpenAI content_index: Integer, item_id: String, output_index: Integer, - part: T.any( - OpenAI::Models::Responses::ResponseOutputText, - OpenAI::Internal::AnyHash, - OpenAI::Models::Responses::ResponseOutputRefusal - ), + part: + T.any( + OpenAI::Responses::ResponseOutputText::OrHash, + OpenAI::Responses::ResponseOutputRefusal::OrHash + ), type: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # The index of the content part that is done. @@ -54,30 +58,48 @@ module OpenAI part:, # The type of the event. Always `response.content_part.done`. type: :"response.content_part.done" - ); end + ) + end + sig do - override - .returns( - { - content_index: Integer, - item_id: String, - output_index: Integer, - part: T.any(OpenAI::Models::Responses::ResponseOutputText, OpenAI::Models::Responses::ResponseOutputRefusal), - type: Symbol - } - ) + override.returns( + { + content_index: Integer, + item_id: String, + output_index: Integer, + part: + T.any( + OpenAI::Responses::ResponseOutputText, + OpenAI::Responses::ResponseOutputRefusal + ), + type: Symbol + } + ) + end + def to_hash end - def to_hash; end # The content part that is done. module Part extend OpenAI::Internal::Type::Union + Variants = + T.type_alias do + T.any( + OpenAI::Responses::ResponseOutputText, + OpenAI::Responses::ResponseOutputRefusal + ) + end + sig do - override - .returns([OpenAI::Models::Responses::ResponseOutputText, OpenAI::Models::Responses::ResponseOutputRefusal]) + override.returns( + T::Array[ + OpenAI::Responses::ResponseContentPartDoneEvent::Part::Variants + ] + ) + end + def self.variants end - def self.variants; end end end end diff --git a/rbi/openai/models/responses/response_create_params.rbi b/rbi/openai/models/responses/response_create_params.rbi index 753835a4..9f9c2fc9 100644 --- a/rbi/openai/models/responses/response_create_params.rbi +++ b/rbi/openai/models/responses/response_create_params.rbi @@ -7,6 +7,8 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Text, image, or file inputs to the model, used to generate a response. # # Learn more: @@ -22,17 +24,17 @@ module OpenAI String, T::Array[ T.any( - OpenAI::Models::Responses::EasyInputMessage, - OpenAI::Models::Responses::ResponseInputItem::Message, - OpenAI::Models::Responses::ResponseOutputMessage, - OpenAI::Models::Responses::ResponseFileSearchToolCall, - OpenAI::Models::Responses::ResponseComputerToolCall, - OpenAI::Models::Responses::ResponseInputItem::ComputerCallOutput, - OpenAI::Models::Responses::ResponseFunctionWebSearch, - OpenAI::Models::Responses::ResponseFunctionToolCall, - OpenAI::Models::Responses::ResponseInputItem::FunctionCallOutput, - OpenAI::Models::Responses::ResponseReasoningItem, - OpenAI::Models::Responses::ResponseInputItem::ItemReference + OpenAI::Responses::EasyInputMessage, + OpenAI::Responses::ResponseInputItem::Message, + OpenAI::Responses::ResponseOutputMessage, + OpenAI::Responses::ResponseFileSearchToolCall, + OpenAI::Responses::ResponseComputerToolCall, + OpenAI::Responses::ResponseInputItem::ComputerCallOutput, + OpenAI::Responses::ResponseFunctionWebSearch, + OpenAI::Responses::ResponseFunctionToolCall, + OpenAI::Responses::ResponseInputItem::FunctionCallOutput, + OpenAI::Responses::ResponseReasoningItem, + OpenAI::Responses::ResponseInputItem::ItemReference ) ] ) @@ -49,8 +51,8 @@ module OpenAI returns( T.any( String, - OpenAI::Models::ChatModel::OrSymbol, - OpenAI::Models::ResponsesModel::ResponsesOnlyModel::OrSymbol + OpenAI::ChatModel::OrSymbol, + OpenAI::ResponsesModel::ResponsesOnlyModel::OrSymbol ) ) end @@ -69,7 +71,11 @@ module OpenAI # multi-turn conversations when using the Responses API statelessly (like when # the `store` parameter is set to `false`, or when an organization is enrolled # in the zero data retention program). - sig { returns(T.nilable(T::Array[OpenAI::Models::Responses::ResponseIncludable::OrSymbol])) } + sig do + returns( + T.nilable(T::Array[OpenAI::Responses::ResponseIncludable::OrSymbol]) + ) + end attr_accessor :include # Inserts a system (or developer) message as the first item in the model's @@ -110,10 +116,10 @@ module OpenAI # # Configuration options for # [reasoning models](https://platform.openai.com/docs/guides/reasoning). - sig { returns(T.nilable(OpenAI::Models::Reasoning)) } + sig { returns(T.nilable(OpenAI::Reasoning)) } attr_reader :reasoning - sig { params(reasoning: T.nilable(T.any(OpenAI::Models::Reasoning, OpenAI::Internal::AnyHash))).void } + sig { params(reasoning: T.nilable(OpenAI::Reasoning::OrHash)).void } attr_writer :reasoning # Specifies the latency tier to use for processing the request. This parameter is @@ -133,7 +139,13 @@ module OpenAI # # When this parameter is set, the response body will include the `service_tier` # utilized. - sig { returns(T.nilable(OpenAI::Models::Responses::ResponseCreateParams::ServiceTier::OrSymbol)) } + sig do + returns( + T.nilable( + OpenAI::Responses::ResponseCreateParams::ServiceTier::OrSymbol + ) + ) + end attr_accessor :service_tier # Whether to store the generated model response for later retrieval via API. @@ -152,10 +164,10 @@ module OpenAI # # - [Text inputs and outputs](https://platform.openai.com/docs/guides/text) # - [Structured Outputs](https://platform.openai.com/docs/guides/structured-outputs) - sig { returns(T.nilable(OpenAI::Models::Responses::ResponseTextConfig)) } + sig { returns(T.nilable(OpenAI::Responses::ResponseTextConfig)) } attr_reader :text - sig { params(text: T.any(OpenAI::Models::Responses::ResponseTextConfig, OpenAI::Internal::AnyHash)).void } + sig { params(text: OpenAI::Responses::ResponseTextConfig::OrHash).void } attr_writer :text # How the model should select which tool (or tools) to use when generating a @@ -165,9 +177,9 @@ module OpenAI returns( T.nilable( T.any( - OpenAI::Models::Responses::ToolChoiceOptions::OrSymbol, - OpenAI::Models::Responses::ToolChoiceTypes, - OpenAI::Models::Responses::ToolChoiceFunction + OpenAI::Responses::ToolChoiceOptions::OrSymbol, + OpenAI::Responses::ToolChoiceTypes, + OpenAI::Responses::ToolChoiceFunction ) ) ) @@ -176,14 +188,13 @@ module OpenAI sig do params( - tool_choice: T.any( - OpenAI::Models::Responses::ToolChoiceOptions::OrSymbol, - OpenAI::Models::Responses::ToolChoiceTypes, - OpenAI::Internal::AnyHash, - OpenAI::Models::Responses::ToolChoiceFunction - ) - ) - .void + tool_choice: + T.any( + OpenAI::Responses::ToolChoiceOptions::OrSymbol, + OpenAI::Responses::ToolChoiceTypes::OrHash, + OpenAI::Responses::ToolChoiceFunction::OrHash + ) + ).void end attr_writer :tool_choice @@ -206,10 +217,10 @@ module OpenAI T.nilable( T::Array[ T.any( - OpenAI::Models::Responses::FileSearchTool, - OpenAI::Models::Responses::FunctionTool, - OpenAI::Models::Responses::ComputerTool, - OpenAI::Models::Responses::WebSearchTool + OpenAI::Responses::FileSearchTool, + OpenAI::Responses::FunctionTool, + OpenAI::Responses::ComputerTool, + OpenAI::Responses::WebSearchTool ) ] ) @@ -219,17 +230,16 @@ module OpenAI sig do params( - tools: T::Array[ - T.any( - OpenAI::Models::Responses::FileSearchTool, - OpenAI::Internal::AnyHash, - OpenAI::Models::Responses::FunctionTool, - OpenAI::Models::Responses::ComputerTool, - OpenAI::Models::Responses::WebSearchTool - ) - ] - ) - .void + tools: + T::Array[ + T.any( + OpenAI::Responses::FileSearchTool::OrHash, + OpenAI::Responses::FunctionTool::OrHash, + OpenAI::Responses::ComputerTool::OrHash, + OpenAI::Responses::WebSearchTool::OrHash + ) + ] + ).void end attr_writer :tools @@ -248,7 +258,13 @@ module OpenAI # window by dropping input items in the middle of the conversation. # - `disabled` (default): If a model response will exceed the context window size # for a model, the request will fail with a 400 error. - sig { returns(T.nilable(OpenAI::Models::Responses::ResponseCreateParams::Truncation::OrSymbol)) } + sig do + returns( + T.nilable( + OpenAI::Responses::ResponseCreateParams::Truncation::OrSymbol + ) + ) + end attr_accessor :truncation # A unique identifier representing your end-user, which can help OpenAI to monitor @@ -262,62 +278,71 @@ module OpenAI sig do params( - input: T.any( - String, - T::Array[ - T.any( - OpenAI::Models::Responses::EasyInputMessage, - OpenAI::Internal::AnyHash, - OpenAI::Models::Responses::ResponseInputItem::Message, - OpenAI::Models::Responses::ResponseOutputMessage, - OpenAI::Models::Responses::ResponseFileSearchToolCall, - OpenAI::Models::Responses::ResponseComputerToolCall, - OpenAI::Models::Responses::ResponseInputItem::ComputerCallOutput, - OpenAI::Models::Responses::ResponseFunctionWebSearch, - OpenAI::Models::Responses::ResponseFunctionToolCall, - OpenAI::Models::Responses::ResponseInputItem::FunctionCallOutput, - OpenAI::Models::Responses::ResponseReasoningItem, - OpenAI::Models::Responses::ResponseInputItem::ItemReference - ) - ] - ), - model: T.any( - String, - OpenAI::Models::ChatModel::OrSymbol, - OpenAI::Models::ResponsesModel::ResponsesOnlyModel::OrSymbol - ), - include: T.nilable(T::Array[OpenAI::Models::Responses::ResponseIncludable::OrSymbol]), + input: + T.any( + String, + T::Array[ + T.any( + OpenAI::Responses::EasyInputMessage::OrHash, + OpenAI::Responses::ResponseInputItem::Message::OrHash, + OpenAI::Responses::ResponseOutputMessage::OrHash, + OpenAI::Responses::ResponseFileSearchToolCall::OrHash, + OpenAI::Responses::ResponseComputerToolCall::OrHash, + OpenAI::Responses::ResponseInputItem::ComputerCallOutput::OrHash, + OpenAI::Responses::ResponseFunctionWebSearch::OrHash, + OpenAI::Responses::ResponseFunctionToolCall::OrHash, + OpenAI::Responses::ResponseInputItem::FunctionCallOutput::OrHash, + OpenAI::Responses::ResponseReasoningItem::OrHash, + OpenAI::Responses::ResponseInputItem::ItemReference::OrHash + ) + ] + ), + model: + T.any( + String, + OpenAI::ChatModel::OrSymbol, + OpenAI::ResponsesModel::ResponsesOnlyModel::OrSymbol + ), + include: + T.nilable( + T::Array[OpenAI::Responses::ResponseIncludable::OrSymbol] + ), instructions: T.nilable(String), max_output_tokens: T.nilable(Integer), metadata: T.nilable(T::Hash[Symbol, String]), parallel_tool_calls: T.nilable(T::Boolean), previous_response_id: T.nilable(String), - reasoning: T.nilable(T.any(OpenAI::Models::Reasoning, OpenAI::Internal::AnyHash)), - service_tier: T.nilable(OpenAI::Models::Responses::ResponseCreateParams::ServiceTier::OrSymbol), + reasoning: T.nilable(OpenAI::Reasoning::OrHash), + service_tier: + T.nilable( + OpenAI::Responses::ResponseCreateParams::ServiceTier::OrSymbol + ), store: T.nilable(T::Boolean), temperature: T.nilable(Float), - text: T.any(OpenAI::Models::Responses::ResponseTextConfig, OpenAI::Internal::AnyHash), - tool_choice: T.any( - OpenAI::Models::Responses::ToolChoiceOptions::OrSymbol, - OpenAI::Models::Responses::ToolChoiceTypes, - OpenAI::Internal::AnyHash, - OpenAI::Models::Responses::ToolChoiceFunction - ), - tools: T::Array[ + text: OpenAI::Responses::ResponseTextConfig::OrHash, + tool_choice: T.any( - OpenAI::Models::Responses::FileSearchTool, - OpenAI::Internal::AnyHash, - OpenAI::Models::Responses::FunctionTool, - OpenAI::Models::Responses::ComputerTool, - OpenAI::Models::Responses::WebSearchTool - ) - ], + OpenAI::Responses::ToolChoiceOptions::OrSymbol, + OpenAI::Responses::ToolChoiceTypes::OrHash, + OpenAI::Responses::ToolChoiceFunction::OrHash + ), + tools: + T::Array[ + T.any( + OpenAI::Responses::FileSearchTool::OrHash, + OpenAI::Responses::FunctionTool::OrHash, + OpenAI::Responses::ComputerTool::OrHash, + OpenAI::Responses::WebSearchTool::OrHash + ) + ], top_p: T.nilable(Float), - truncation: T.nilable(OpenAI::Models::Responses::ResponseCreateParams::Truncation::OrSymbol), + truncation: + T.nilable( + OpenAI::Responses::ResponseCreateParams::Truncation::OrSymbol + ), user: String, - request_options: T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash) - ) - .returns(T.attached_class) + request_options: OpenAI::RequestOptions::OrHash + ).returns(T.attached_class) end def self.new( # Text, image, or file inputs to the model, used to generate a response. @@ -448,66 +473,81 @@ module OpenAI # [Learn more](https://platform.openai.com/docs/guides/safety-best-practices#end-user-ids). user: nil, request_options: {} - ); end + ) + end + sig do - override - .returns( - { - input: T.any( + override.returns( + { + input: + T.any( String, T::Array[ T.any( - OpenAI::Models::Responses::EasyInputMessage, - OpenAI::Models::Responses::ResponseInputItem::Message, - OpenAI::Models::Responses::ResponseOutputMessage, - OpenAI::Models::Responses::ResponseFileSearchToolCall, - OpenAI::Models::Responses::ResponseComputerToolCall, - OpenAI::Models::Responses::ResponseInputItem::ComputerCallOutput, - OpenAI::Models::Responses::ResponseFunctionWebSearch, - OpenAI::Models::Responses::ResponseFunctionToolCall, - OpenAI::Models::Responses::ResponseInputItem::FunctionCallOutput, - OpenAI::Models::Responses::ResponseReasoningItem, - OpenAI::Models::Responses::ResponseInputItem::ItemReference + OpenAI::Responses::EasyInputMessage, + OpenAI::Responses::ResponseInputItem::Message, + OpenAI::Responses::ResponseOutputMessage, + OpenAI::Responses::ResponseFileSearchToolCall, + OpenAI::Responses::ResponseComputerToolCall, + OpenAI::Responses::ResponseInputItem::ComputerCallOutput, + OpenAI::Responses::ResponseFunctionWebSearch, + OpenAI::Responses::ResponseFunctionToolCall, + OpenAI::Responses::ResponseInputItem::FunctionCallOutput, + OpenAI::Responses::ResponseReasoningItem, + OpenAI::Responses::ResponseInputItem::ItemReference ) ] ), - model: T.any( + model: + T.any( String, - OpenAI::Models::ChatModel::OrSymbol, - OpenAI::Models::ResponsesModel::ResponsesOnlyModel::OrSymbol + OpenAI::ChatModel::OrSymbol, + OpenAI::ResponsesModel::ResponsesOnlyModel::OrSymbol + ), + include: + T.nilable( + T::Array[OpenAI::Responses::ResponseIncludable::OrSymbol] ), - include: T.nilable(T::Array[OpenAI::Models::Responses::ResponseIncludable::OrSymbol]), - instructions: T.nilable(String), - max_output_tokens: T.nilable(Integer), - metadata: T.nilable(T::Hash[Symbol, String]), - parallel_tool_calls: T.nilable(T::Boolean), - previous_response_id: T.nilable(String), - reasoning: T.nilable(OpenAI::Models::Reasoning), - service_tier: T.nilable(OpenAI::Models::Responses::ResponseCreateParams::ServiceTier::OrSymbol), - store: T.nilable(T::Boolean), - temperature: T.nilable(Float), - text: OpenAI::Models::Responses::ResponseTextConfig, - tool_choice: T.any( - OpenAI::Models::Responses::ToolChoiceOptions::OrSymbol, - OpenAI::Models::Responses::ToolChoiceTypes, - OpenAI::Models::Responses::ToolChoiceFunction + instructions: T.nilable(String), + max_output_tokens: T.nilable(Integer), + metadata: T.nilable(T::Hash[Symbol, String]), + parallel_tool_calls: T.nilable(T::Boolean), + previous_response_id: T.nilable(String), + reasoning: T.nilable(OpenAI::Reasoning), + service_tier: + T.nilable( + OpenAI::Responses::ResponseCreateParams::ServiceTier::OrSymbol ), - tools: T::Array[ + store: T.nilable(T::Boolean), + temperature: T.nilable(Float), + text: OpenAI::Responses::ResponseTextConfig, + tool_choice: + T.any( + OpenAI::Responses::ToolChoiceOptions::OrSymbol, + OpenAI::Responses::ToolChoiceTypes, + OpenAI::Responses::ToolChoiceFunction + ), + tools: + T::Array[ T.any( - OpenAI::Models::Responses::FileSearchTool, - OpenAI::Models::Responses::FunctionTool, - OpenAI::Models::Responses::ComputerTool, - OpenAI::Models::Responses::WebSearchTool + OpenAI::Responses::FileSearchTool, + OpenAI::Responses::FunctionTool, + OpenAI::Responses::ComputerTool, + OpenAI::Responses::WebSearchTool ) ], - top_p: T.nilable(Float), - truncation: T.nilable(OpenAI::Models::Responses::ResponseCreateParams::Truncation::OrSymbol), - user: String, - request_options: OpenAI::RequestOptions - } - ) + top_p: T.nilable(Float), + truncation: + T.nilable( + OpenAI::Responses::ResponseCreateParams::Truncation::OrSymbol + ), + user: String, + request_options: OpenAI::RequestOptions + } + ) + end + def to_hash end - def to_hash; end # Text, image, or file inputs to the model, used to generate a response. # @@ -521,30 +561,35 @@ module OpenAI module Input extend OpenAI::Internal::Type::Union - sig do - override - .returns( - [ - String, - T::Array[ - T.any( - OpenAI::Models::Responses::EasyInputMessage, - OpenAI::Models::Responses::ResponseInputItem::Message, - OpenAI::Models::Responses::ResponseOutputMessage, - OpenAI::Models::Responses::ResponseFileSearchToolCall, - OpenAI::Models::Responses::ResponseComputerToolCall, - OpenAI::Models::Responses::ResponseInputItem::ComputerCallOutput, - OpenAI::Models::Responses::ResponseFunctionWebSearch, - OpenAI::Models::Responses::ResponseFunctionToolCall, - OpenAI::Models::Responses::ResponseInputItem::FunctionCallOutput, - OpenAI::Models::Responses::ResponseReasoningItem, - OpenAI::Models::Responses::ResponseInputItem::ItemReference - ) - ] + Variants = + T.type_alias do + T.any( + String, + T::Array[ + T.any( + OpenAI::Responses::EasyInputMessage, + OpenAI::Responses::ResponseInputItem::Message, + OpenAI::Responses::ResponseOutputMessage, + OpenAI::Responses::ResponseFileSearchToolCall, + OpenAI::Responses::ResponseComputerToolCall, + OpenAI::Responses::ResponseInputItem::ComputerCallOutput, + OpenAI::Responses::ResponseFunctionWebSearch, + OpenAI::Responses::ResponseFunctionToolCall, + OpenAI::Responses::ResponseInputItem::FunctionCallOutput, + OpenAI::Responses::ResponseReasoningItem, + OpenAI::Responses::ResponseInputItem::ItemReference + ) ] ) + end + + sig do + override.returns( + T::Array[OpenAI::Responses::ResponseCreateParams::Input::Variants] + ) + end + def self.variants end - def self.variants; end end # Specifies the latency tier to use for processing the request. This parameter is @@ -568,15 +613,39 @@ module OpenAI extend OpenAI::Internal::Type::Enum TaggedSymbol = - T.type_alias { T.all(Symbol, OpenAI::Models::Responses::ResponseCreateParams::ServiceTier) } + T.type_alias do + T.all( + Symbol, + OpenAI::Responses::ResponseCreateParams::ServiceTier + ) + end OrSymbol = T.type_alias { T.any(Symbol, String) } - AUTO = T.let(:auto, OpenAI::Models::Responses::ResponseCreateParams::ServiceTier::TaggedSymbol) - DEFAULT = T.let(:default, OpenAI::Models::Responses::ResponseCreateParams::ServiceTier::TaggedSymbol) - FLEX = T.let(:flex, OpenAI::Models::Responses::ResponseCreateParams::ServiceTier::TaggedSymbol) + AUTO = + T.let( + :auto, + OpenAI::Responses::ResponseCreateParams::ServiceTier::TaggedSymbol + ) + DEFAULT = + T.let( + :default, + OpenAI::Responses::ResponseCreateParams::ServiceTier::TaggedSymbol + ) + FLEX = + T.let( + :flex, + OpenAI::Responses::ResponseCreateParams::ServiceTier::TaggedSymbol + ) - sig { override.returns(T::Array[OpenAI::Models::Responses::ResponseCreateParams::ServiceTier::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[ + OpenAI::Responses::ResponseCreateParams::ServiceTier::TaggedSymbol + ] + ) + end + def self.values + end end # How the model should select which tool (or tools) to use when generating a @@ -585,13 +654,24 @@ module OpenAI module ToolChoice extend OpenAI::Internal::Type::Union - sig do - override - .returns( - [OpenAI::Models::Responses::ToolChoiceOptions::TaggedSymbol, OpenAI::Models::Responses::ToolChoiceTypes, OpenAI::Models::Responses::ToolChoiceFunction] + Variants = + T.type_alias do + T.any( + OpenAI::Responses::ToolChoiceOptions::TaggedSymbol, + OpenAI::Responses::ToolChoiceTypes, + OpenAI::Responses::ToolChoiceFunction ) + end + + sig do + override.returns( + T::Array[ + OpenAI::Responses::ResponseCreateParams::ToolChoice::Variants + ] + ) + end + def self.variants end - def self.variants; end end # The truncation strategy to use for the model response. @@ -605,14 +685,31 @@ module OpenAI extend OpenAI::Internal::Type::Enum TaggedSymbol = - T.type_alias { T.all(Symbol, OpenAI::Models::Responses::ResponseCreateParams::Truncation) } + T.type_alias do + T.all(Symbol, OpenAI::Responses::ResponseCreateParams::Truncation) + end OrSymbol = T.type_alias { T.any(Symbol, String) } - AUTO = T.let(:auto, OpenAI::Models::Responses::ResponseCreateParams::Truncation::TaggedSymbol) - DISABLED = T.let(:disabled, OpenAI::Models::Responses::ResponseCreateParams::Truncation::TaggedSymbol) + AUTO = + T.let( + :auto, + OpenAI::Responses::ResponseCreateParams::Truncation::TaggedSymbol + ) + DISABLED = + T.let( + :disabled, + OpenAI::Responses::ResponseCreateParams::Truncation::TaggedSymbol + ) - sig { override.returns(T::Array[OpenAI::Models::Responses::ResponseCreateParams::Truncation::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[ + OpenAI::Responses::ResponseCreateParams::Truncation::TaggedSymbol + ] + ) + end + def self.values + end end end end diff --git a/rbi/openai/models/responses/response_created_event.rbi b/rbi/openai/models/responses/response_created_event.rbi index 33664af0..49ef465e 100644 --- a/rbi/openai/models/responses/response_created_event.rbi +++ b/rbi/openai/models/responses/response_created_event.rbi @@ -4,11 +4,13 @@ module OpenAI module Models module Responses class ResponseCreatedEvent < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The response that was created. - sig { returns(OpenAI::Models::Responses::Response) } + sig { returns(OpenAI::Responses::Response) } attr_reader :response - sig { params(response: T.any(OpenAI::Models::Responses::Response, OpenAI::Internal::AnyHash)).void } + sig { params(response: OpenAI::Responses::Response::OrHash).void } attr_writer :response # The type of the event. Always `response.created`. @@ -17,17 +19,26 @@ module OpenAI # An event that is emitted when a response is created. sig do - params(response: T.any(OpenAI::Models::Responses::Response, OpenAI::Internal::AnyHash), type: Symbol) - .returns(T.attached_class) + params( + response: OpenAI::Responses::Response::OrHash, + type: Symbol + ).returns(T.attached_class) end def self.new( # The response that was created. response:, # The type of the event. Always `response.created`. type: :"response.created" - ); end - sig { override.returns({response: OpenAI::Models::Responses::Response, type: Symbol}) } - def to_hash; end + ) + end + + sig do + override.returns( + { response: OpenAI::Responses::Response, type: Symbol } + ) + end + def to_hash + end end end end diff --git a/rbi/openai/models/responses/response_delete_params.rbi b/rbi/openai/models/responses/response_delete_params.rbi index 934c6bdc..b5adf324 100644 --- a/rbi/openai/models/responses/response_delete_params.rbi +++ b/rbi/openai/models/responses/response_delete_params.rbi @@ -7,18 +7,19 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + sig do - params( - request_options: T.any( - OpenAI::RequestOptions, - OpenAI::Internal::AnyHash - ) - ).returns(T.attached_class) + params(request_options: OpenAI::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: OpenAI::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: OpenAI::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/openai/models/responses/response_error.rbi b/rbi/openai/models/responses/response_error.rbi index 796293af..1f52c7f1 100644 --- a/rbi/openai/models/responses/response_error.rbi +++ b/rbi/openai/models/responses/response_error.rbi @@ -4,8 +4,10 @@ module OpenAI module Models module Responses class ResponseError < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The error code for the response. - sig { returns(OpenAI::Models::Responses::ResponseError::Code::TaggedSymbol) } + sig { returns(OpenAI::Responses::ResponseError::Code::TaggedSymbol) } attr_accessor :code # A human-readable description of the error. @@ -14,58 +16,138 @@ module OpenAI # An error object returned when the model fails to generate a Response. sig do - params(code: OpenAI::Models::Responses::ResponseError::Code::OrSymbol, message: String) - .returns(T.attached_class) + params( + code: OpenAI::Responses::ResponseError::Code::OrSymbol, + message: String + ).returns(T.attached_class) end def self.new( # The error code for the response. code:, # A human-readable description of the error. message: - ); end - sig { override.returns({code: OpenAI::Models::Responses::ResponseError::Code::TaggedSymbol, message: String}) } - def to_hash; end + ) + end + + sig do + override.returns( + { + code: OpenAI::Responses::ResponseError::Code::TaggedSymbol, + message: String + } + ) + end + def to_hash + end # The error code for the response. module Code extend OpenAI::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::Responses::ResponseError::Code) } + TaggedSymbol = + T.type_alias do + T.all(Symbol, OpenAI::Responses::ResponseError::Code) + end OrSymbol = T.type_alias { T.any(Symbol, String) } - SERVER_ERROR = T.let(:server_error, OpenAI::Models::Responses::ResponseError::Code::TaggedSymbol) + SERVER_ERROR = + T.let( + :server_error, + OpenAI::Responses::ResponseError::Code::TaggedSymbol + ) RATE_LIMIT_EXCEEDED = - T.let(:rate_limit_exceeded, OpenAI::Models::Responses::ResponseError::Code::TaggedSymbol) - INVALID_PROMPT = T.let(:invalid_prompt, OpenAI::Models::Responses::ResponseError::Code::TaggedSymbol) + T.let( + :rate_limit_exceeded, + OpenAI::Responses::ResponseError::Code::TaggedSymbol + ) + INVALID_PROMPT = + T.let( + :invalid_prompt, + OpenAI::Responses::ResponseError::Code::TaggedSymbol + ) VECTOR_STORE_TIMEOUT = - T.let(:vector_store_timeout, OpenAI::Models::Responses::ResponseError::Code::TaggedSymbol) - INVALID_IMAGE = T.let(:invalid_image, OpenAI::Models::Responses::ResponseError::Code::TaggedSymbol) + T.let( + :vector_store_timeout, + OpenAI::Responses::ResponseError::Code::TaggedSymbol + ) + INVALID_IMAGE = + T.let( + :invalid_image, + OpenAI::Responses::ResponseError::Code::TaggedSymbol + ) INVALID_IMAGE_FORMAT = - T.let(:invalid_image_format, OpenAI::Models::Responses::ResponseError::Code::TaggedSymbol) + T.let( + :invalid_image_format, + OpenAI::Responses::ResponseError::Code::TaggedSymbol + ) INVALID_BASE64_IMAGE = - T.let(:invalid_base64_image, OpenAI::Models::Responses::ResponseError::Code::TaggedSymbol) + T.let( + :invalid_base64_image, + OpenAI::Responses::ResponseError::Code::TaggedSymbol + ) INVALID_IMAGE_URL = - T.let(:invalid_image_url, OpenAI::Models::Responses::ResponseError::Code::TaggedSymbol) - IMAGE_TOO_LARGE = T.let(:image_too_large, OpenAI::Models::Responses::ResponseError::Code::TaggedSymbol) - IMAGE_TOO_SMALL = T.let(:image_too_small, OpenAI::Models::Responses::ResponseError::Code::TaggedSymbol) + T.let( + :invalid_image_url, + OpenAI::Responses::ResponseError::Code::TaggedSymbol + ) + IMAGE_TOO_LARGE = + T.let( + :image_too_large, + OpenAI::Responses::ResponseError::Code::TaggedSymbol + ) + IMAGE_TOO_SMALL = + T.let( + :image_too_small, + OpenAI::Responses::ResponseError::Code::TaggedSymbol + ) IMAGE_PARSE_ERROR = - T.let(:image_parse_error, OpenAI::Models::Responses::ResponseError::Code::TaggedSymbol) + T.let( + :image_parse_error, + OpenAI::Responses::ResponseError::Code::TaggedSymbol + ) IMAGE_CONTENT_POLICY_VIOLATION = - T.let(:image_content_policy_violation, OpenAI::Models::Responses::ResponseError::Code::TaggedSymbol) + T.let( + :image_content_policy_violation, + OpenAI::Responses::ResponseError::Code::TaggedSymbol + ) INVALID_IMAGE_MODE = - T.let(:invalid_image_mode, OpenAI::Models::Responses::ResponseError::Code::TaggedSymbol) + T.let( + :invalid_image_mode, + OpenAI::Responses::ResponseError::Code::TaggedSymbol + ) IMAGE_FILE_TOO_LARGE = - T.let(:image_file_too_large, OpenAI::Models::Responses::ResponseError::Code::TaggedSymbol) + T.let( + :image_file_too_large, + OpenAI::Responses::ResponseError::Code::TaggedSymbol + ) UNSUPPORTED_IMAGE_MEDIA_TYPE = - T.let(:unsupported_image_media_type, OpenAI::Models::Responses::ResponseError::Code::TaggedSymbol) - EMPTY_IMAGE_FILE = T.let(:empty_image_file, OpenAI::Models::Responses::ResponseError::Code::TaggedSymbol) + T.let( + :unsupported_image_media_type, + OpenAI::Responses::ResponseError::Code::TaggedSymbol + ) + EMPTY_IMAGE_FILE = + T.let( + :empty_image_file, + OpenAI::Responses::ResponseError::Code::TaggedSymbol + ) FAILED_TO_DOWNLOAD_IMAGE = - T.let(:failed_to_download_image, OpenAI::Models::Responses::ResponseError::Code::TaggedSymbol) + T.let( + :failed_to_download_image, + OpenAI::Responses::ResponseError::Code::TaggedSymbol + ) IMAGE_FILE_NOT_FOUND = - T.let(:image_file_not_found, OpenAI::Models::Responses::ResponseError::Code::TaggedSymbol) + T.let( + :image_file_not_found, + OpenAI::Responses::ResponseError::Code::TaggedSymbol + ) - sig { override.returns(T::Array[OpenAI::Models::Responses::ResponseError::Code::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[OpenAI::Responses::ResponseError::Code::TaggedSymbol] + ) + end + def self.values + end end end end diff --git a/rbi/openai/models/responses/response_error_event.rbi b/rbi/openai/models/responses/response_error_event.rbi index 24a190a8..34c0a475 100644 --- a/rbi/openai/models/responses/response_error_event.rbi +++ b/rbi/openai/models/responses/response_error_event.rbi @@ -4,6 +4,8 @@ module OpenAI module Models module Responses class ResponseErrorEvent < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The error code. sig { returns(T.nilable(String)) } attr_accessor :code @@ -22,8 +24,12 @@ module OpenAI # Emitted when an error occurs. sig do - params(code: T.nilable(String), message: String, param: T.nilable(String), type: Symbol) - .returns(T.attached_class) + params( + code: T.nilable(String), + message: String, + param: T.nilable(String), + type: Symbol + ).returns(T.attached_class) end def self.new( # The error code. @@ -34,11 +40,21 @@ module OpenAI param:, # The type of the event. Always `error`. type: :error - ); end + ) + end + sig do - override.returns({code: T.nilable(String), message: String, param: T.nilable(String), type: Symbol}) + override.returns( + { + code: T.nilable(String), + message: String, + param: T.nilable(String), + type: Symbol + } + ) + end + def to_hash end - def to_hash; end end end end diff --git a/rbi/openai/models/responses/response_failed_event.rbi b/rbi/openai/models/responses/response_failed_event.rbi index ad3251e9..f4a8afd0 100644 --- a/rbi/openai/models/responses/response_failed_event.rbi +++ b/rbi/openai/models/responses/response_failed_event.rbi @@ -4,11 +4,13 @@ module OpenAI module Models module Responses class ResponseFailedEvent < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The response that failed. - sig { returns(OpenAI::Models::Responses::Response) } + sig { returns(OpenAI::Responses::Response) } attr_reader :response - sig { params(response: T.any(OpenAI::Models::Responses::Response, OpenAI::Internal::AnyHash)).void } + sig { params(response: OpenAI::Responses::Response::OrHash).void } attr_writer :response # The type of the event. Always `response.failed`. @@ -17,17 +19,26 @@ module OpenAI # An event that is emitted when a response fails. sig do - params(response: T.any(OpenAI::Models::Responses::Response, OpenAI::Internal::AnyHash), type: Symbol) - .returns(T.attached_class) + params( + response: OpenAI::Responses::Response::OrHash, + type: Symbol + ).returns(T.attached_class) end def self.new( # The response that failed. response:, # The type of the event. Always `response.failed`. type: :"response.failed" - ); end - sig { override.returns({response: OpenAI::Models::Responses::Response, type: Symbol}) } - def to_hash; end + ) + end + + sig do + override.returns( + { response: OpenAI::Responses::Response, type: Symbol } + ) + end + def to_hash + end end end end diff --git a/rbi/openai/models/responses/response_file_search_call_completed_event.rbi b/rbi/openai/models/responses/response_file_search_call_completed_event.rbi index 7ac06ad1..e8ba8841 100644 --- a/rbi/openai/models/responses/response_file_search_call_completed_event.rbi +++ b/rbi/openai/models/responses/response_file_search_call_completed_event.rbi @@ -4,6 +4,8 @@ module OpenAI module Models module Responses class ResponseFileSearchCallCompletedEvent < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The ID of the output item that the file search call is initiated. sig { returns(String) } attr_accessor :item_id @@ -17,7 +19,11 @@ module OpenAI attr_accessor :type # Emitted when a file search call is completed (results found). - sig { params(item_id: String, output_index: Integer, type: Symbol).returns(T.attached_class) } + sig do + params(item_id: String, output_index: Integer, type: Symbol).returns( + T.attached_class + ) + end def self.new( # The ID of the output item that the file search call is initiated. item_id:, @@ -25,9 +31,16 @@ module OpenAI output_index:, # The type of the event. Always `response.file_search_call.completed`. type: :"response.file_search_call.completed" - ); end - sig { override.returns({item_id: String, output_index: Integer, type: Symbol}) } - def to_hash; end + ) + end + + sig do + override.returns( + { item_id: String, output_index: Integer, type: Symbol } + ) + end + def to_hash + end end end end diff --git a/rbi/openai/models/responses/response_file_search_call_in_progress_event.rbi b/rbi/openai/models/responses/response_file_search_call_in_progress_event.rbi index 99274ded..9c90a725 100644 --- a/rbi/openai/models/responses/response_file_search_call_in_progress_event.rbi +++ b/rbi/openai/models/responses/response_file_search_call_in_progress_event.rbi @@ -4,6 +4,8 @@ module OpenAI module Models module Responses class ResponseFileSearchCallInProgressEvent < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The ID of the output item that the file search call is initiated. sig { returns(String) } attr_accessor :item_id @@ -17,7 +19,11 @@ module OpenAI attr_accessor :type # Emitted when a file search call is initiated. - sig { params(item_id: String, output_index: Integer, type: Symbol).returns(T.attached_class) } + sig do + params(item_id: String, output_index: Integer, type: Symbol).returns( + T.attached_class + ) + end def self.new( # The ID of the output item that the file search call is initiated. item_id:, @@ -25,9 +31,16 @@ module OpenAI output_index:, # The type of the event. Always `response.file_search_call.in_progress`. type: :"response.file_search_call.in_progress" - ); end - sig { override.returns({item_id: String, output_index: Integer, type: Symbol}) } - def to_hash; end + ) + end + + sig do + override.returns( + { item_id: String, output_index: Integer, type: Symbol } + ) + end + def to_hash + end end end end diff --git a/rbi/openai/models/responses/response_file_search_call_searching_event.rbi b/rbi/openai/models/responses/response_file_search_call_searching_event.rbi index 605b332b..9e44847c 100644 --- a/rbi/openai/models/responses/response_file_search_call_searching_event.rbi +++ b/rbi/openai/models/responses/response_file_search_call_searching_event.rbi @@ -4,6 +4,8 @@ module OpenAI module Models module Responses class ResponseFileSearchCallSearchingEvent < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The ID of the output item that the file search call is initiated. sig { returns(String) } attr_accessor :item_id @@ -17,7 +19,11 @@ module OpenAI attr_accessor :type # Emitted when a file search is currently searching. - sig { params(item_id: String, output_index: Integer, type: Symbol).returns(T.attached_class) } + sig do + params(item_id: String, output_index: Integer, type: Symbol).returns( + T.attached_class + ) + end def self.new( # The ID of the output item that the file search call is initiated. item_id:, @@ -25,9 +31,16 @@ module OpenAI output_index:, # The type of the event. Always `response.file_search_call.searching`. type: :"response.file_search_call.searching" - ); end - sig { override.returns({item_id: String, output_index: Integer, type: Symbol}) } - def to_hash; end + ) + end + + sig do + override.returns( + { item_id: String, output_index: Integer, type: Symbol } + ) + end + def to_hash + end end end end diff --git a/rbi/openai/models/responses/response_file_search_tool_call.rbi b/rbi/openai/models/responses/response_file_search_tool_call.rbi index 94b16558..9a7ca93a 100644 --- a/rbi/openai/models/responses/response_file_search_tool_call.rbi +++ b/rbi/openai/models/responses/response_file_search_tool_call.rbi @@ -4,6 +4,8 @@ module OpenAI module Models module Responses class ResponseFileSearchToolCall < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The unique ID of the file search tool call. sig { returns(String) } attr_accessor :id @@ -14,7 +16,11 @@ module OpenAI # The status of the file search tool call. One of `in_progress`, `searching`, # `incomplete` or `failed`, - sig { returns(OpenAI::Models::Responses::ResponseFileSearchToolCall::Status::OrSymbol) } + sig do + returns( + OpenAI::Responses::ResponseFileSearchToolCall::Status::OrSymbol + ) + end attr_accessor :status # The type of the file search tool call. Always `file_search_call`. @@ -22,7 +28,13 @@ module OpenAI attr_accessor :type # The results of the file search tool call. - sig { returns(T.nilable(T::Array[OpenAI::Models::Responses::ResponseFileSearchToolCall::Result])) } + sig do + returns( + T.nilable( + T::Array[OpenAI::Responses::ResponseFileSearchToolCall::Result] + ) + ) + end attr_accessor :results # The results of a file search tool call. See the @@ -32,13 +44,16 @@ module OpenAI params( id: String, queries: T::Array[String], - status: OpenAI::Models::Responses::ResponseFileSearchToolCall::Status::OrSymbol, - results: T.nilable( - T::Array[T.any(OpenAI::Models::Responses::ResponseFileSearchToolCall::Result, OpenAI::Internal::AnyHash)] - ), + status: + OpenAI::Responses::ResponseFileSearchToolCall::Status::OrSymbol, + results: + T.nilable( + T::Array[ + OpenAI::Responses::ResponseFileSearchToolCall::Result::OrHash + ] + ), type: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # The unique ID of the file search tool call. @@ -52,20 +67,28 @@ module OpenAI results: nil, # The type of the file search tool call. Always `file_search_call`. type: :file_search_call - ); end + ) + end + sig do - override - .returns( - { - id: String, - queries: T::Array[String], - status: OpenAI::Models::Responses::ResponseFileSearchToolCall::Status::OrSymbol, - type: Symbol, - results: T.nilable(T::Array[OpenAI::Models::Responses::ResponseFileSearchToolCall::Result]) - } - ) + override.returns( + { + id: String, + queries: T::Array[String], + status: + OpenAI::Responses::ResponseFileSearchToolCall::Status::OrSymbol, + type: Symbol, + results: + T.nilable( + T::Array[ + OpenAI::Responses::ResponseFileSearchToolCall::Result + ] + ) + } + ) + end + def to_hash end - def to_hash; end # The status of the file search tool call. One of `in_progress`, `searching`, # `incomplete` or `failed`, @@ -73,30 +96,65 @@ module OpenAI extend OpenAI::Internal::Type::Enum TaggedSymbol = - T.type_alias { T.all(Symbol, OpenAI::Models::Responses::ResponseFileSearchToolCall::Status) } + T.type_alias do + T.all( + Symbol, + OpenAI::Responses::ResponseFileSearchToolCall::Status + ) + end OrSymbol = T.type_alias { T.any(Symbol, String) } IN_PROGRESS = - T.let(:in_progress, OpenAI::Models::Responses::ResponseFileSearchToolCall::Status::TaggedSymbol) + T.let( + :in_progress, + OpenAI::Responses::ResponseFileSearchToolCall::Status::TaggedSymbol + ) SEARCHING = - T.let(:searching, OpenAI::Models::Responses::ResponseFileSearchToolCall::Status::TaggedSymbol) + T.let( + :searching, + OpenAI::Responses::ResponseFileSearchToolCall::Status::TaggedSymbol + ) COMPLETED = - T.let(:completed, OpenAI::Models::Responses::ResponseFileSearchToolCall::Status::TaggedSymbol) + T.let( + :completed, + OpenAI::Responses::ResponseFileSearchToolCall::Status::TaggedSymbol + ) INCOMPLETE = - T.let(:incomplete, OpenAI::Models::Responses::ResponseFileSearchToolCall::Status::TaggedSymbol) - FAILED = T.let(:failed, OpenAI::Models::Responses::ResponseFileSearchToolCall::Status::TaggedSymbol) + T.let( + :incomplete, + OpenAI::Responses::ResponseFileSearchToolCall::Status::TaggedSymbol + ) + FAILED = + T.let( + :failed, + OpenAI::Responses::ResponseFileSearchToolCall::Status::TaggedSymbol + ) - sig { override.returns(T::Array[OpenAI::Models::Responses::ResponseFileSearchToolCall::Status::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[ + OpenAI::Responses::ResponseFileSearchToolCall::Status::TaggedSymbol + ] + ) + end + def self.values + end end class Result < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # 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, booleans, or numbers. - sig { returns(T.nilable(T::Hash[Symbol, T.any(String, Float, T::Boolean)])) } + sig do + returns( + T.nilable(T::Hash[Symbol, T.any(String, Float, T::Boolean)]) + ) + end attr_accessor :attributes # The unique ID of the file. @@ -129,13 +187,13 @@ module OpenAI sig do params( - attributes: T.nilable(T::Hash[Symbol, T.any(String, Float, T::Boolean)]), + attributes: + T.nilable(T::Hash[Symbol, T.any(String, Float, T::Boolean)]), file_id: String, filename: String, score: Float, text: String - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # Set of 16 key-value pairs that can be attached to an object. This can be useful @@ -152,26 +210,38 @@ module OpenAI score: nil, # The text that was retrieved from the file. text: nil - ); end + ) + end + sig do - override - .returns( - { - attributes: T.nilable(T::Hash[Symbol, T.any(String, Float, T::Boolean)]), - file_id: String, - filename: String, - score: Float, - text: String - } - ) + override.returns( + { + attributes: + T.nilable(T::Hash[Symbol, T.any(String, Float, T::Boolean)]), + file_id: String, + filename: String, + score: Float, + text: String + } + ) + end + def to_hash end - def to_hash; end module Attribute extend OpenAI::Internal::Type::Union - sig { override.returns([String, Float, T::Boolean]) } - def self.variants; end + Variants = T.type_alias { T.any(String, Float, T::Boolean) } + + sig do + override.returns( + T::Array[ + OpenAI::Responses::ResponseFileSearchToolCall::Result::Attribute::Variants + ] + ) + end + def self.variants + end end end end diff --git a/rbi/openai/models/responses/response_format_text_config.rbi b/rbi/openai/models/responses/response_format_text_config.rbi index ae61d108..2c1186ac 100644 --- a/rbi/openai/models/responses/response_format_text_config.rbi +++ b/rbi/openai/models/responses/response_format_text_config.rbi @@ -19,13 +19,22 @@ module OpenAI module ResponseFormatTextConfig extend OpenAI::Internal::Type::Union - sig do - override - .returns( - [OpenAI::Models::ResponseFormatText, OpenAI::Models::Responses::ResponseFormatTextJSONSchemaConfig, OpenAI::Models::ResponseFormatJSONObject] + Variants = + T.type_alias do + T.any( + OpenAI::ResponseFormatText, + OpenAI::Responses::ResponseFormatTextJSONSchemaConfig, + OpenAI::ResponseFormatJSONObject ) + end + + sig do + override.returns( + T::Array[OpenAI::Responses::ResponseFormatTextConfig::Variants] + ) + end + def self.variants end - def self.variants; end end end end diff --git a/rbi/openai/models/responses/response_format_text_json_schema_config.rbi b/rbi/openai/models/responses/response_format_text_json_schema_config.rbi index 1b94b7c2..0ec62279 100644 --- a/rbi/openai/models/responses/response_format_text_json_schema_config.rbi +++ b/rbi/openai/models/responses/response_format_text_json_schema_config.rbi @@ -4,6 +4,8 @@ module OpenAI module Models module Responses class ResponseFormatTextJSONSchemaConfig < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The name of the response format. Must be a-z, A-Z, 0-9, or contain underscores # and dashes, with a maximum length of 64. sig { returns(String) } @@ -44,8 +46,7 @@ module OpenAI description: String, strict: T.nilable(T::Boolean), type: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # The name of the response format. Must be a-z, A-Z, 0-9, or contain underscores @@ -65,20 +66,22 @@ module OpenAI strict: nil, # The type of response format being defined. Always `json_schema`. type: :json_schema - ); end + ) + end + sig do - override - .returns( - { - name: String, - schema: T::Hash[Symbol, T.anything], - type: Symbol, - description: String, - strict: T.nilable(T::Boolean) - } - ) + override.returns( + { + name: String, + schema: T::Hash[Symbol, T.anything], + type: Symbol, + description: String, + strict: T.nilable(T::Boolean) + } + ) + end + def to_hash end - def to_hash; end end end end diff --git a/rbi/openai/models/responses/response_function_call_arguments_delta_event.rbi b/rbi/openai/models/responses/response_function_call_arguments_delta_event.rbi index 801e2df6..2932676c 100644 --- a/rbi/openai/models/responses/response_function_call_arguments_delta_event.rbi +++ b/rbi/openai/models/responses/response_function_call_arguments_delta_event.rbi @@ -4,6 +4,8 @@ module OpenAI module Models module Responses class ResponseFunctionCallArgumentsDeltaEvent < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The function-call arguments delta that is added. sig { returns(String) } attr_accessor :delta @@ -38,9 +40,21 @@ module OpenAI output_index:, # The type of the event. Always `response.function_call_arguments.delta`. type: :"response.function_call_arguments.delta" - ); end - sig { override.returns({delta: String, item_id: String, output_index: Integer, type: Symbol}) } - def to_hash; end + ) + end + + sig do + override.returns( + { + delta: String, + item_id: String, + output_index: Integer, + type: Symbol + } + ) + end + def to_hash + end end end end diff --git a/rbi/openai/models/responses/response_function_call_arguments_done_event.rbi b/rbi/openai/models/responses/response_function_call_arguments_done_event.rbi index 0886a45d..76dec426 100644 --- a/rbi/openai/models/responses/response_function_call_arguments_done_event.rbi +++ b/rbi/openai/models/responses/response_function_call_arguments_done_event.rbi @@ -4,6 +4,8 @@ module OpenAI module Models module Responses class ResponseFunctionCallArgumentsDoneEvent < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The function-call arguments. sig { returns(String) } attr_accessor :arguments @@ -36,9 +38,21 @@ module OpenAI # The index of the output item. output_index:, type: :"response.function_call_arguments.done" - ); end - sig { override.returns({arguments: String, item_id: String, output_index: Integer, type: Symbol}) } - def to_hash; end + ) + end + + sig do + override.returns( + { + arguments: String, + item_id: String, + output_index: Integer, + type: Symbol + } + ) + end + def to_hash + end end end end diff --git a/rbi/openai/models/responses/response_function_tool_call.rbi b/rbi/openai/models/responses/response_function_tool_call.rbi index 0862724c..ed3d200e 100644 --- a/rbi/openai/models/responses/response_function_tool_call.rbi +++ b/rbi/openai/models/responses/response_function_tool_call.rbi @@ -4,6 +4,8 @@ module OpenAI module Models module Responses class ResponseFunctionToolCall < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # A JSON string of the arguments to pass to the function. sig { returns(String) } attr_accessor :arguments @@ -29,10 +31,21 @@ module OpenAI # The status of the item. One of `in_progress`, `completed`, or `incomplete`. # Populated when items are returned via API. - sig { returns(T.nilable(OpenAI::Models::Responses::ResponseFunctionToolCall::Status::OrSymbol)) } + sig do + returns( + T.nilable( + OpenAI::Responses::ResponseFunctionToolCall::Status::OrSymbol + ) + ) + end attr_reader :status - sig { params(status: OpenAI::Models::Responses::ResponseFunctionToolCall::Status::OrSymbol).void } + sig do + params( + status: + OpenAI::Responses::ResponseFunctionToolCall::Status::OrSymbol + ).void + end attr_writer :status # A tool call to run a function. See the @@ -44,10 +57,10 @@ module OpenAI call_id: String, name: String, id: String, - status: OpenAI::Models::Responses::ResponseFunctionToolCall::Status::OrSymbol, + status: + OpenAI::Responses::ResponseFunctionToolCall::Status::OrSymbol, type: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # A JSON string of the arguments to pass to the function. @@ -63,21 +76,24 @@ module OpenAI status: nil, # The type of the function tool call. Always `function_call`. type: :function_call - ); end + ) + end + sig do - override - .returns( - { - arguments: String, - call_id: String, - name: String, - type: Symbol, - id: String, - status: OpenAI::Models::Responses::ResponseFunctionToolCall::Status::OrSymbol - } - ) + override.returns( + { + arguments: String, + call_id: String, + name: String, + type: Symbol, + id: String, + status: + OpenAI::Responses::ResponseFunctionToolCall::Status::OrSymbol + } + ) + end + def to_hash end - def to_hash; end # The status of the item. One of `in_progress`, `completed`, or `incomplete`. # Populated when items are returned via API. @@ -85,17 +101,36 @@ module OpenAI extend OpenAI::Internal::Type::Enum TaggedSymbol = - T.type_alias { T.all(Symbol, OpenAI::Models::Responses::ResponseFunctionToolCall::Status) } + T.type_alias do + T.all(Symbol, OpenAI::Responses::ResponseFunctionToolCall::Status) + end OrSymbol = T.type_alias { T.any(Symbol, String) } IN_PROGRESS = - T.let(:in_progress, OpenAI::Models::Responses::ResponseFunctionToolCall::Status::TaggedSymbol) - COMPLETED = T.let(:completed, OpenAI::Models::Responses::ResponseFunctionToolCall::Status::TaggedSymbol) + T.let( + :in_progress, + OpenAI::Responses::ResponseFunctionToolCall::Status::TaggedSymbol + ) + COMPLETED = + T.let( + :completed, + OpenAI::Responses::ResponseFunctionToolCall::Status::TaggedSymbol + ) INCOMPLETE = - T.let(:incomplete, OpenAI::Models::Responses::ResponseFunctionToolCall::Status::TaggedSymbol) + T.let( + :incomplete, + OpenAI::Responses::ResponseFunctionToolCall::Status::TaggedSymbol + ) - sig { override.returns(T::Array[OpenAI::Models::Responses::ResponseFunctionToolCall::Status::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[ + OpenAI::Responses::ResponseFunctionToolCall::Status::TaggedSymbol + ] + ) + end + def self.values + end end end end diff --git a/rbi/openai/models/responses/response_function_tool_call_item.rbi b/rbi/openai/models/responses/response_function_tool_call_item.rbi index cfa76b9c..75156efc 100644 --- a/rbi/openai/models/responses/response_function_tool_call_item.rbi +++ b/rbi/openai/models/responses/response_function_tool_call_item.rbi @@ -4,6 +4,8 @@ module OpenAI module Models module Responses class ResponseFunctionToolCallItem < OpenAI::Models::Responses::ResponseFunctionToolCall + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The unique ID of the function tool call. sig { returns(String) } attr_accessor :id @@ -15,9 +17,12 @@ module OpenAI def self.new( # The unique ID of the function tool call. id: - ); end - sig { override.returns({id: String}) } - def to_hash; end + ) + end + + sig { override.returns({ id: String }) } + def to_hash + end end end end diff --git a/rbi/openai/models/responses/response_function_tool_call_output_item.rbi b/rbi/openai/models/responses/response_function_tool_call_output_item.rbi index 64da7c58..f050d6bc 100644 --- a/rbi/openai/models/responses/response_function_tool_call_output_item.rbi +++ b/rbi/openai/models/responses/response_function_tool_call_output_item.rbi @@ -4,6 +4,8 @@ module OpenAI module Models module Responses class ResponseFunctionToolCallOutputItem < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The unique ID of the function call tool output. sig { returns(String) } attr_accessor :id @@ -22,10 +24,21 @@ module OpenAI # The status of the item. One of `in_progress`, `completed`, or `incomplete`. # Populated when items are returned via API. - sig { returns(T.nilable(OpenAI::Models::Responses::ResponseFunctionToolCallOutputItem::Status::TaggedSymbol)) } + sig do + returns( + T.nilable( + OpenAI::Responses::ResponseFunctionToolCallOutputItem::Status::TaggedSymbol + ) + ) + end attr_reader :status - sig { params(status: OpenAI::Models::Responses::ResponseFunctionToolCallOutputItem::Status::OrSymbol).void } + sig do + params( + status: + OpenAI::Responses::ResponseFunctionToolCallOutputItem::Status::OrSymbol + ).void + end attr_writer :status sig do @@ -33,10 +46,10 @@ module OpenAI id: String, call_id: String, output: String, - status: OpenAI::Models::Responses::ResponseFunctionToolCallOutputItem::Status::OrSymbol, + status: + OpenAI::Responses::ResponseFunctionToolCallOutputItem::Status::OrSymbol, type: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # The unique ID of the function call tool output. @@ -50,20 +63,23 @@ module OpenAI status: nil, # The type of the function tool call output. Always `function_call_output`. type: :function_call_output - ); end + ) + end + sig do - override - .returns( - { - id: String, - call_id: String, - output: String, - type: Symbol, - status: OpenAI::Models::Responses::ResponseFunctionToolCallOutputItem::Status::TaggedSymbol - } - ) + override.returns( + { + id: String, + call_id: String, + output: String, + type: Symbol, + status: + OpenAI::Responses::ResponseFunctionToolCallOutputItem::Status::TaggedSymbol + } + ) + end + def to_hash end - def to_hash; end # The status of the item. One of `in_progress`, `completed`, or `incomplete`. # Populated when items are returned via API. @@ -71,21 +87,39 @@ module OpenAI extend OpenAI::Internal::Type::Enum TaggedSymbol = - T.type_alias { T.all(Symbol, OpenAI::Models::Responses::ResponseFunctionToolCallOutputItem::Status) } + T.type_alias do + T.all( + Symbol, + OpenAI::Responses::ResponseFunctionToolCallOutputItem::Status + ) + end OrSymbol = T.type_alias { T.any(Symbol, String) } IN_PROGRESS = - T.let(:in_progress, OpenAI::Models::Responses::ResponseFunctionToolCallOutputItem::Status::TaggedSymbol) + T.let( + :in_progress, + OpenAI::Responses::ResponseFunctionToolCallOutputItem::Status::TaggedSymbol + ) COMPLETED = - T.let(:completed, OpenAI::Models::Responses::ResponseFunctionToolCallOutputItem::Status::TaggedSymbol) + T.let( + :completed, + OpenAI::Responses::ResponseFunctionToolCallOutputItem::Status::TaggedSymbol + ) INCOMPLETE = - T.let(:incomplete, OpenAI::Models::Responses::ResponseFunctionToolCallOutputItem::Status::TaggedSymbol) + T.let( + :incomplete, + OpenAI::Responses::ResponseFunctionToolCallOutputItem::Status::TaggedSymbol + ) sig do - override - .returns(T::Array[OpenAI::Models::Responses::ResponseFunctionToolCallOutputItem::Status::TaggedSymbol]) + override.returns( + T::Array[ + OpenAI::Responses::ResponseFunctionToolCallOutputItem::Status::TaggedSymbol + ] + ) + end + def self.values end - def self.values; end end end end diff --git a/rbi/openai/models/responses/response_function_web_search.rbi b/rbi/openai/models/responses/response_function_web_search.rbi index 1c892bf4..2e535daa 100644 --- a/rbi/openai/models/responses/response_function_web_search.rbi +++ b/rbi/openai/models/responses/response_function_web_search.rbi @@ -4,12 +4,18 @@ module OpenAI module Models module Responses class ResponseFunctionWebSearch < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The unique ID of the web search tool call. sig { returns(String) } attr_accessor :id # The status of the web search tool call. - sig { returns(OpenAI::Models::Responses::ResponseFunctionWebSearch::Status::OrSymbol) } + sig do + returns( + OpenAI::Responses::ResponseFunctionWebSearch::Status::OrSymbol + ) + end attr_accessor :status # The type of the web search tool call. Always `web_search_call`. @@ -22,10 +28,10 @@ module OpenAI sig do params( id: String, - status: OpenAI::Models::Responses::ResponseFunctionWebSearch::Status::OrSymbol, + status: + OpenAI::Responses::ResponseFunctionWebSearch::Status::OrSymbol, type: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # The unique ID of the web search tool call. @@ -34,31 +40,65 @@ module OpenAI status:, # The type of the web search tool call. Always `web_search_call`. type: :web_search_call - ); end + ) + end + sig do - override - .returns( - {id: String, status: OpenAI::Models::Responses::ResponseFunctionWebSearch::Status::OrSymbol, type: Symbol} - ) + override.returns( + { + id: String, + status: + OpenAI::Responses::ResponseFunctionWebSearch::Status::OrSymbol, + type: Symbol + } + ) + end + def to_hash end - def to_hash; end # The status of the web search tool call. module Status extend OpenAI::Internal::Type::Enum TaggedSymbol = - T.type_alias { T.all(Symbol, OpenAI::Models::Responses::ResponseFunctionWebSearch::Status) } + T.type_alias do + T.all( + Symbol, + OpenAI::Responses::ResponseFunctionWebSearch::Status + ) + end OrSymbol = T.type_alias { T.any(Symbol, String) } IN_PROGRESS = - T.let(:in_progress, OpenAI::Models::Responses::ResponseFunctionWebSearch::Status::TaggedSymbol) - SEARCHING = T.let(:searching, OpenAI::Models::Responses::ResponseFunctionWebSearch::Status::TaggedSymbol) - COMPLETED = T.let(:completed, OpenAI::Models::Responses::ResponseFunctionWebSearch::Status::TaggedSymbol) - FAILED = T.let(:failed, OpenAI::Models::Responses::ResponseFunctionWebSearch::Status::TaggedSymbol) + T.let( + :in_progress, + OpenAI::Responses::ResponseFunctionWebSearch::Status::TaggedSymbol + ) + SEARCHING = + T.let( + :searching, + OpenAI::Responses::ResponseFunctionWebSearch::Status::TaggedSymbol + ) + COMPLETED = + T.let( + :completed, + OpenAI::Responses::ResponseFunctionWebSearch::Status::TaggedSymbol + ) + FAILED = + T.let( + :failed, + OpenAI::Responses::ResponseFunctionWebSearch::Status::TaggedSymbol + ) - sig { override.returns(T::Array[OpenAI::Models::Responses::ResponseFunctionWebSearch::Status::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[ + OpenAI::Responses::ResponseFunctionWebSearch::Status::TaggedSymbol + ] + ) + end + def self.values + end end end end diff --git a/rbi/openai/models/responses/response_in_progress_event.rbi b/rbi/openai/models/responses/response_in_progress_event.rbi index 7ef933f7..933f623b 100644 --- a/rbi/openai/models/responses/response_in_progress_event.rbi +++ b/rbi/openai/models/responses/response_in_progress_event.rbi @@ -4,11 +4,13 @@ module OpenAI module Models module Responses class ResponseInProgressEvent < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The response that is in progress. - sig { returns(OpenAI::Models::Responses::Response) } + sig { returns(OpenAI::Responses::Response) } attr_reader :response - sig { params(response: T.any(OpenAI::Models::Responses::Response, OpenAI::Internal::AnyHash)).void } + sig { params(response: OpenAI::Responses::Response::OrHash).void } attr_writer :response # The type of the event. Always `response.in_progress`. @@ -17,17 +19,26 @@ module OpenAI # Emitted when the response is in progress. sig do - params(response: T.any(OpenAI::Models::Responses::Response, OpenAI::Internal::AnyHash), type: Symbol) - .returns(T.attached_class) + params( + response: OpenAI::Responses::Response::OrHash, + type: Symbol + ).returns(T.attached_class) end def self.new( # The response that is in progress. response:, # The type of the event. Always `response.in_progress`. type: :"response.in_progress" - ); end - sig { override.returns({response: OpenAI::Models::Responses::Response, type: Symbol}) } - def to_hash; end + ) + end + + sig do + override.returns( + { response: OpenAI::Responses::Response, type: Symbol } + ) + end + def to_hash + end end end end diff --git a/rbi/openai/models/responses/response_includable.rbi b/rbi/openai/models/responses/response_includable.rbi index cc0efd7c..b99bd61a 100644 --- a/rbi/openai/models/responses/response_includable.rbi +++ b/rbi/openai/models/responses/response_includable.rbi @@ -19,23 +19,38 @@ module OpenAI module ResponseIncludable extend OpenAI::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::Responses::ResponseIncludable) } + TaggedSymbol = + T.type_alias { T.all(Symbol, OpenAI::Responses::ResponseIncludable) } OrSymbol = T.type_alias { T.any(Symbol, String) } FILE_SEARCH_CALL_RESULTS = - T.let(:"file_search_call.results", OpenAI::Models::Responses::ResponseIncludable::TaggedSymbol) + T.let( + :"file_search_call.results", + OpenAI::Responses::ResponseIncludable::TaggedSymbol + ) MESSAGE_INPUT_IMAGE_IMAGE_URL = - T.let(:"message.input_image.image_url", OpenAI::Models::Responses::ResponseIncludable::TaggedSymbol) + T.let( + :"message.input_image.image_url", + OpenAI::Responses::ResponseIncludable::TaggedSymbol + ) COMPUTER_CALL_OUTPUT_OUTPUT_IMAGE_URL = T.let( :"computer_call_output.output.image_url", - OpenAI::Models::Responses::ResponseIncludable::TaggedSymbol + OpenAI::Responses::ResponseIncludable::TaggedSymbol ) REASONING_ENCRYPTED_CONTENT = - T.let(:"reasoning.encrypted_content", OpenAI::Models::Responses::ResponseIncludable::TaggedSymbol) + T.let( + :"reasoning.encrypted_content", + OpenAI::Responses::ResponseIncludable::TaggedSymbol + ) - sig { override.returns(T::Array[OpenAI::Models::Responses::ResponseIncludable::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[OpenAI::Responses::ResponseIncludable::TaggedSymbol] + ) + end + def self.values + end end end end diff --git a/rbi/openai/models/responses/response_incomplete_event.rbi b/rbi/openai/models/responses/response_incomplete_event.rbi index 079d5434..047ad561 100644 --- a/rbi/openai/models/responses/response_incomplete_event.rbi +++ b/rbi/openai/models/responses/response_incomplete_event.rbi @@ -4,11 +4,13 @@ module OpenAI module Models module Responses class ResponseIncompleteEvent < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The response that was incomplete. - sig { returns(OpenAI::Models::Responses::Response) } + sig { returns(OpenAI::Responses::Response) } attr_reader :response - sig { params(response: T.any(OpenAI::Models::Responses::Response, OpenAI::Internal::AnyHash)).void } + sig { params(response: OpenAI::Responses::Response::OrHash).void } attr_writer :response # The type of the event. Always `response.incomplete`. @@ -17,17 +19,26 @@ module OpenAI # An event that is emitted when a response finishes as incomplete. sig do - params(response: T.any(OpenAI::Models::Responses::Response, OpenAI::Internal::AnyHash), type: Symbol) - .returns(T.attached_class) + params( + response: OpenAI::Responses::Response::OrHash, + type: Symbol + ).returns(T.attached_class) end def self.new( # The response that was incomplete. response:, # The type of the event. Always `response.incomplete`. type: :"response.incomplete" - ); end - sig { override.returns({response: OpenAI::Models::Responses::Response, type: Symbol}) } - def to_hash; end + ) + end + + sig do + override.returns( + { response: OpenAI::Responses::Response, type: Symbol } + ) + end + def to_hash + end end end end diff --git a/rbi/openai/models/responses/response_input.rbi b/rbi/openai/models/responses/response_input.rbi index 77a9217a..48025693 100644 --- a/rbi/openai/models/responses/response_input.rbi +++ b/rbi/openai/models/responses/response_input.rbi @@ -5,7 +5,9 @@ module OpenAI module Responses ResponseInput = T.let( - OpenAI::Internal::Type::ArrayOf[union: OpenAI::Models::Responses::ResponseInputItem], + OpenAI::Internal::Type::ArrayOf[ + union: OpenAI::Responses::ResponseInputItem + ], OpenAI::Internal::Type::Converter ) end diff --git a/rbi/openai/models/responses/response_input_audio.rbi b/rbi/openai/models/responses/response_input_audio.rbi index 9244a048..0cacbacd 100644 --- a/rbi/openai/models/responses/response_input_audio.rbi +++ b/rbi/openai/models/responses/response_input_audio.rbi @@ -4,12 +4,14 @@ module OpenAI module Models module Responses class ResponseInputAudio < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Base64-encoded audio data. sig { returns(String) } attr_accessor :data # The format of the audio data. Currently supported formats are `mp3` and `wav`. - sig { returns(OpenAI::Models::Responses::ResponseInputAudio::Format::OrSymbol) } + sig { returns(OpenAI::Responses::ResponseInputAudio::Format::OrSymbol) } attr_accessor :format_ # The type of the input item. Always `input_audio`. @@ -20,10 +22,9 @@ module OpenAI sig do params( data: String, - format_: OpenAI::Models::Responses::ResponseInputAudio::Format::OrSymbol, + format_: OpenAI::Responses::ResponseInputAudio::Format::OrSymbol, type: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # Base64-encoded audio data. @@ -32,27 +33,51 @@ module OpenAI format_:, # The type of the input item. Always `input_audio`. type: :input_audio - ); end + ) + end + sig do - override - .returns( - {data: String, format_: OpenAI::Models::Responses::ResponseInputAudio::Format::OrSymbol, type: Symbol} - ) + override.returns( + { + data: String, + format_: OpenAI::Responses::ResponseInputAudio::Format::OrSymbol, + type: Symbol + } + ) + end + def to_hash end - def to_hash; end # The format of the audio data. Currently supported formats are `mp3` and `wav`. module Format extend OpenAI::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::Responses::ResponseInputAudio::Format) } + TaggedSymbol = + T.type_alias do + T.all(Symbol, OpenAI::Responses::ResponseInputAudio::Format) + end OrSymbol = T.type_alias { T.any(Symbol, String) } - MP3 = T.let(:mp3, OpenAI::Models::Responses::ResponseInputAudio::Format::TaggedSymbol) - WAV = T.let(:wav, OpenAI::Models::Responses::ResponseInputAudio::Format::TaggedSymbol) + MP3 = + T.let( + :mp3, + OpenAI::Responses::ResponseInputAudio::Format::TaggedSymbol + ) + WAV = + T.let( + :wav, + OpenAI::Responses::ResponseInputAudio::Format::TaggedSymbol + ) - sig { override.returns(T::Array[OpenAI::Models::Responses::ResponseInputAudio::Format::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[ + OpenAI::Responses::ResponseInputAudio::Format::TaggedSymbol + ] + ) + end + def self.values + end end end end diff --git a/rbi/openai/models/responses/response_input_content.rbi b/rbi/openai/models/responses/response_input_content.rbi index e4f21010..f18545cc 100644 --- a/rbi/openai/models/responses/response_input_content.rbi +++ b/rbi/openai/models/responses/response_input_content.rbi @@ -7,13 +7,22 @@ module OpenAI module ResponseInputContent extend OpenAI::Internal::Type::Union - sig do - override - .returns( - [OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::Responses::ResponseInputImage, OpenAI::Models::Responses::ResponseInputFile] + Variants = + T.type_alias do + T.any( + OpenAI::Responses::ResponseInputText, + OpenAI::Responses::ResponseInputImage, + OpenAI::Responses::ResponseInputFile ) + end + + sig do + override.returns( + T::Array[OpenAI::Responses::ResponseInputContent::Variants] + ) + end + def self.variants end - def self.variants; end end end end diff --git a/rbi/openai/models/responses/response_input_file.rbi b/rbi/openai/models/responses/response_input_file.rbi index b0dbcd3a..3275a394 100644 --- a/rbi/openai/models/responses/response_input_file.rbi +++ b/rbi/openai/models/responses/response_input_file.rbi @@ -4,6 +4,8 @@ module OpenAI module Models module Responses class ResponseInputFile < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The type of the input item. Always `input_file`. sig { returns(Symbol) } attr_accessor :type @@ -28,8 +30,12 @@ module OpenAI # A file input to the model. sig do - params(file_data: String, file_id: T.nilable(String), filename: String, type: Symbol) - .returns(T.attached_class) + params( + file_data: String, + file_id: T.nilable(String), + filename: String, + type: Symbol + ).returns(T.attached_class) end def self.new( # The content of the file to be sent to the model. @@ -40,11 +46,21 @@ module OpenAI filename: nil, # The type of the input item. Always `input_file`. type: :input_file - ); end + ) + end + sig do - override.returns({type: Symbol, file_data: String, file_id: T.nilable(String), filename: String}) + override.returns( + { + type: Symbol, + file_data: String, + file_id: T.nilable(String), + filename: String + } + ) + end + def to_hash end - def to_hash; end end end end diff --git a/rbi/openai/models/responses/response_input_image.rbi b/rbi/openai/models/responses/response_input_image.rbi index ecac54d3..182aa6d4 100644 --- a/rbi/openai/models/responses/response_input_image.rbi +++ b/rbi/openai/models/responses/response_input_image.rbi @@ -4,9 +4,11 @@ module OpenAI module Models module Responses class ResponseInputImage < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The detail level of the image to be sent to the model. One of `high`, `low`, or # `auto`. Defaults to `auto`. - sig { returns(OpenAI::Models::Responses::ResponseInputImage::Detail::OrSymbol) } + sig { returns(OpenAI::Responses::ResponseInputImage::Detail::OrSymbol) } attr_accessor :detail # The type of the input item. Always `input_image`. @@ -26,12 +28,11 @@ module OpenAI # [image inputs](https://platform.openai.com/docs/guides/vision). sig do params( - detail: OpenAI::Models::Responses::ResponseInputImage::Detail::OrSymbol, + detail: OpenAI::Responses::ResponseInputImage::Detail::OrSymbol, file_id: T.nilable(String), image_url: T.nilable(String), type: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # The detail level of the image to be sent to the model. One of `high`, `low`, or @@ -44,34 +45,58 @@ module OpenAI image_url: nil, # The type of the input item. Always `input_image`. type: :input_image - ); end + ) + end + sig do - override - .returns( - { - detail: OpenAI::Models::Responses::ResponseInputImage::Detail::OrSymbol, - type: Symbol, - file_id: T.nilable(String), - image_url: T.nilable(String) - } - ) + override.returns( + { + detail: OpenAI::Responses::ResponseInputImage::Detail::OrSymbol, + type: Symbol, + file_id: T.nilable(String), + image_url: T.nilable(String) + } + ) + end + def to_hash end - def to_hash; end # The detail level of the image to be sent to the model. One of `high`, `low`, or # `auto`. Defaults to `auto`. module Detail extend OpenAI::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::Responses::ResponseInputImage::Detail) } + TaggedSymbol = + T.type_alias do + T.all(Symbol, OpenAI::Responses::ResponseInputImage::Detail) + end OrSymbol = T.type_alias { T.any(Symbol, String) } - LOW = T.let(:low, OpenAI::Models::Responses::ResponseInputImage::Detail::TaggedSymbol) - HIGH = T.let(:high, OpenAI::Models::Responses::ResponseInputImage::Detail::TaggedSymbol) - AUTO = T.let(:auto, OpenAI::Models::Responses::ResponseInputImage::Detail::TaggedSymbol) + LOW = + T.let( + :low, + OpenAI::Responses::ResponseInputImage::Detail::TaggedSymbol + ) + HIGH = + T.let( + :high, + OpenAI::Responses::ResponseInputImage::Detail::TaggedSymbol + ) + AUTO = + T.let( + :auto, + OpenAI::Responses::ResponseInputImage::Detail::TaggedSymbol + ) - sig { override.returns(T::Array[OpenAI::Models::Responses::ResponseInputImage::Detail::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[ + OpenAI::Responses::ResponseInputImage::Detail::TaggedSymbol + ] + ) + end + def self.values + end end end end diff --git a/rbi/openai/models/responses/response_input_item.rbi b/rbi/openai/models/responses/response_input_item.rbi index 9c3dec78..3d0c8ba2 100644 --- a/rbi/openai/models/responses/response_input_item.rbi +++ b/rbi/openai/models/responses/response_input_item.rbi @@ -11,16 +11,36 @@ module OpenAI module ResponseInputItem extend OpenAI::Internal::Type::Union + Variants = + T.type_alias do + T.any( + OpenAI::Responses::EasyInputMessage, + OpenAI::Responses::ResponseInputItem::Message, + OpenAI::Responses::ResponseOutputMessage, + OpenAI::Responses::ResponseFileSearchToolCall, + OpenAI::Responses::ResponseComputerToolCall, + OpenAI::Responses::ResponseInputItem::ComputerCallOutput, + OpenAI::Responses::ResponseFunctionWebSearch, + OpenAI::Responses::ResponseFunctionToolCall, + OpenAI::Responses::ResponseInputItem::FunctionCallOutput, + OpenAI::Responses::ResponseReasoningItem, + OpenAI::Responses::ResponseInputItem::ItemReference + ) + end + class Message < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # A list of one or many input items to the model, containing different content # types. sig do returns( T::Array[ T.any( - OpenAI::Models::Responses::ResponseInputText, - OpenAI::Models::Responses::ResponseInputImage, - OpenAI::Models::Responses::ResponseInputFile + OpenAI::Responses::ResponseInputText, + OpenAI::Responses::ResponseInputImage, + OpenAI::Responses::ResponseInputFile ) ] ) @@ -28,22 +48,48 @@ module OpenAI attr_accessor :content # The role of the message input. One of `user`, `system`, or `developer`. - sig { returns(OpenAI::Models::Responses::ResponseInputItem::Message::Role::OrSymbol) } + sig do + returns( + OpenAI::Responses::ResponseInputItem::Message::Role::OrSymbol + ) + end attr_accessor :role # The status of item. One of `in_progress`, `completed`, or `incomplete`. # Populated when items are returned via API. - sig { returns(T.nilable(OpenAI::Models::Responses::ResponseInputItem::Message::Status::OrSymbol)) } + sig do + returns( + T.nilable( + OpenAI::Responses::ResponseInputItem::Message::Status::OrSymbol + ) + ) + end attr_reader :status - sig { params(status: OpenAI::Models::Responses::ResponseInputItem::Message::Status::OrSymbol).void } + sig do + params( + status: + OpenAI::Responses::ResponseInputItem::Message::Status::OrSymbol + ).void + end attr_writer :status # The type of the message input. Always set to `message`. - sig { returns(T.nilable(OpenAI::Models::Responses::ResponseInputItem::Message::Type::OrSymbol)) } + sig do + returns( + T.nilable( + OpenAI::Responses::ResponseInputItem::Message::Type::OrSymbol + ) + ) + end attr_reader :type - sig { params(type: OpenAI::Models::Responses::ResponseInputItem::Message::Type::OrSymbol).void } + sig do + params( + type: + OpenAI::Responses::ResponseInputItem::Message::Type::OrSymbol + ).void + end attr_writer :type # A message input to the model with a role indicating instruction following @@ -51,19 +97,21 @@ module OpenAI # precedence over instructions given with the `user` role. sig do params( - content: T::Array[ - T.any( - OpenAI::Models::Responses::ResponseInputText, - OpenAI::Internal::AnyHash, - OpenAI::Models::Responses::ResponseInputImage, - OpenAI::Models::Responses::ResponseInputFile - ) - ], - role: OpenAI::Models::Responses::ResponseInputItem::Message::Role::OrSymbol, - status: OpenAI::Models::Responses::ResponseInputItem::Message::Status::OrSymbol, - type: OpenAI::Models::Responses::ResponseInputItem::Message::Type::OrSymbol - ) - .returns(T.attached_class) + content: + T::Array[ + T.any( + OpenAI::Responses::ResponseInputText::OrHash, + OpenAI::Responses::ResponseInputImage::OrHash, + OpenAI::Responses::ResponseInputFile::OrHash + ) + ], + role: + OpenAI::Responses::ResponseInputItem::Message::Role::OrSymbol, + status: + OpenAI::Responses::ResponseInputItem::Message::Status::OrSymbol, + type: + OpenAI::Responses::ResponseInputItem::Message::Type::OrSymbol + ).returns(T.attached_class) end def self.new( # A list of one or many input items to the model, containing different content @@ -76,40 +124,70 @@ module OpenAI status: nil, # The type of the message input. Always set to `message`. type: nil - ); end + ) + end + sig do - override - .returns( - { - content: T::Array[ + override.returns( + { + content: + T::Array[ T.any( - OpenAI::Models::Responses::ResponseInputText, - OpenAI::Models::Responses::ResponseInputImage, - OpenAI::Models::Responses::ResponseInputFile + OpenAI::Responses::ResponseInputText, + OpenAI::Responses::ResponseInputImage, + OpenAI::Responses::ResponseInputFile ) ], - role: OpenAI::Models::Responses::ResponseInputItem::Message::Role::OrSymbol, - status: OpenAI::Models::Responses::ResponseInputItem::Message::Status::OrSymbol, - type: OpenAI::Models::Responses::ResponseInputItem::Message::Type::OrSymbol - } - ) + role: + OpenAI::Responses::ResponseInputItem::Message::Role::OrSymbol, + status: + OpenAI::Responses::ResponseInputItem::Message::Status::OrSymbol, + type: + OpenAI::Responses::ResponseInputItem::Message::Type::OrSymbol + } + ) + end + def to_hash end - def to_hash; end # The role of the message input. One of `user`, `system`, or `developer`. module Role extend OpenAI::Internal::Type::Enum TaggedSymbol = - T.type_alias { T.all(Symbol, OpenAI::Models::Responses::ResponseInputItem::Message::Role) } + T.type_alias do + T.all( + Symbol, + OpenAI::Responses::ResponseInputItem::Message::Role + ) + end OrSymbol = T.type_alias { T.any(Symbol, String) } - USER = T.let(:user, OpenAI::Models::Responses::ResponseInputItem::Message::Role::TaggedSymbol) - SYSTEM = T.let(:system, OpenAI::Models::Responses::ResponseInputItem::Message::Role::TaggedSymbol) - DEVELOPER = T.let(:developer, OpenAI::Models::Responses::ResponseInputItem::Message::Role::TaggedSymbol) + USER = + T.let( + :user, + OpenAI::Responses::ResponseInputItem::Message::Role::TaggedSymbol + ) + SYSTEM = + T.let( + :system, + OpenAI::Responses::ResponseInputItem::Message::Role::TaggedSymbol + ) + DEVELOPER = + T.let( + :developer, + OpenAI::Responses::ResponseInputItem::Message::Role::TaggedSymbol + ) - sig { override.returns(T::Array[OpenAI::Models::Responses::ResponseInputItem::Message::Role::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[ + OpenAI::Responses::ResponseInputItem::Message::Role::TaggedSymbol + ] + ) + end + def self.values + end end # The status of item. One of `in_progress`, `completed`, or `incomplete`. @@ -118,18 +196,39 @@ module OpenAI extend OpenAI::Internal::Type::Enum TaggedSymbol = - T.type_alias { T.all(Symbol, OpenAI::Models::Responses::ResponseInputItem::Message::Status) } + T.type_alias do + T.all( + Symbol, + OpenAI::Responses::ResponseInputItem::Message::Status + ) + end OrSymbol = T.type_alias { T.any(Symbol, String) } IN_PROGRESS = - T.let(:in_progress, OpenAI::Models::Responses::ResponseInputItem::Message::Status::TaggedSymbol) + T.let( + :in_progress, + OpenAI::Responses::ResponseInputItem::Message::Status::TaggedSymbol + ) COMPLETED = - T.let(:completed, OpenAI::Models::Responses::ResponseInputItem::Message::Status::TaggedSymbol) + T.let( + :completed, + OpenAI::Responses::ResponseInputItem::Message::Status::TaggedSymbol + ) INCOMPLETE = - T.let(:incomplete, OpenAI::Models::Responses::ResponseInputItem::Message::Status::TaggedSymbol) + T.let( + :incomplete, + OpenAI::Responses::ResponseInputItem::Message::Status::TaggedSymbol + ) - sig { override.returns(T::Array[OpenAI::Models::Responses::ResponseInputItem::Message::Status::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[ + OpenAI::Responses::ResponseInputItem::Message::Status::TaggedSymbol + ] + ) + end + def self.values + end end # The type of the message input. Always set to `message`. @@ -137,30 +236,51 @@ module OpenAI extend OpenAI::Internal::Type::Enum TaggedSymbol = - T.type_alias { T.all(Symbol, OpenAI::Models::Responses::ResponseInputItem::Message::Type) } + T.type_alias do + T.all( + Symbol, + OpenAI::Responses::ResponseInputItem::Message::Type + ) + end OrSymbol = T.type_alias { T.any(Symbol, String) } - MESSAGE = T.let(:message, OpenAI::Models::Responses::ResponseInputItem::Message::Type::TaggedSymbol) + MESSAGE = + T.let( + :message, + OpenAI::Responses::ResponseInputItem::Message::Type::TaggedSymbol + ) - sig { override.returns(T::Array[OpenAI::Models::Responses::ResponseInputItem::Message::Type::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[ + OpenAI::Responses::ResponseInputItem::Message::Type::TaggedSymbol + ] + ) + end + def self.values + end end end class ComputerCallOutput < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The ID of the computer tool call that produced the output. sig { returns(String) } attr_accessor :call_id # A computer screenshot image used with the computer use tool. - sig { returns(OpenAI::Models::Responses::ResponseComputerToolCallOutputScreenshot) } + sig do + returns(OpenAI::Responses::ResponseComputerToolCallOutputScreenshot) + end attr_reader :output sig do params( - output: T.any(OpenAI::Models::Responses::ResponseComputerToolCallOutputScreenshot, OpenAI::Internal::AnyHash) - ) - .void + output: + OpenAI::Responses::ResponseComputerToolCallOutputScreenshot::OrHash + ).void end attr_writer :output @@ -177,7 +297,9 @@ module OpenAI sig do returns( T.nilable( - T::Array[OpenAI::Models::Responses::ResponseInputItem::ComputerCallOutput::AcknowledgedSafetyCheck] + T::Array[ + OpenAI::Responses::ResponseInputItem::ComputerCallOutput::AcknowledgedSafetyCheck + ] ) ) end @@ -185,27 +307,34 @@ module OpenAI # The status of the message input. One of `in_progress`, `completed`, or # `incomplete`. Populated when input items are returned via API. - sig { returns(T.nilable(OpenAI::Models::Responses::ResponseInputItem::ComputerCallOutput::Status::OrSymbol)) } + sig do + returns( + T.nilable( + OpenAI::Responses::ResponseInputItem::ComputerCallOutput::Status::OrSymbol + ) + ) + end attr_accessor :status # The output of a computer tool call. sig do params( call_id: String, - output: T.any(OpenAI::Models::Responses::ResponseComputerToolCallOutputScreenshot, OpenAI::Internal::AnyHash), + output: + OpenAI::Responses::ResponseComputerToolCallOutputScreenshot::OrHash, id: T.nilable(String), - acknowledged_safety_checks: T.nilable( - T::Array[ - T.any( - OpenAI::Models::Responses::ResponseInputItem::ComputerCallOutput::AcknowledgedSafetyCheck, - OpenAI::Internal::AnyHash - ) - ] - ), - status: T.nilable(OpenAI::Models::Responses::ResponseInputItem::ComputerCallOutput::Status::OrSymbol), + acknowledged_safety_checks: + T.nilable( + T::Array[ + OpenAI::Responses::ResponseInputItem::ComputerCallOutput::AcknowledgedSafetyCheck::OrHash + ] + ), + status: + T.nilable( + OpenAI::Responses::ResponseInputItem::ComputerCallOutput::Status::OrSymbol + ), type: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # The ID of the computer tool call that produced the output. @@ -222,25 +351,37 @@ module OpenAI status: nil, # The type of the computer tool call output. Always `computer_call_output`. type: :computer_call_output - ); end + ) + end + sig do - override - .returns( - { - call_id: String, - output: OpenAI::Models::Responses::ResponseComputerToolCallOutputScreenshot, - type: Symbol, - id: T.nilable(String), - acknowledged_safety_checks: T.nilable( - T::Array[OpenAI::Models::Responses::ResponseInputItem::ComputerCallOutput::AcknowledgedSafetyCheck] + override.returns( + { + call_id: String, + output: + OpenAI::Responses::ResponseComputerToolCallOutputScreenshot, + type: Symbol, + id: T.nilable(String), + acknowledged_safety_checks: + T.nilable( + T::Array[ + OpenAI::Responses::ResponseInputItem::ComputerCallOutput::AcknowledgedSafetyCheck + ] ), - status: T.nilable(OpenAI::Models::Responses::ResponseInputItem::ComputerCallOutput::Status::OrSymbol) - } - ) + status: + T.nilable( + OpenAI::Responses::ResponseInputItem::ComputerCallOutput::Status::OrSymbol + ) + } + ) + end + def to_hash end - def to_hash; end class AcknowledgedSafetyCheck < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The ID of the pending safety check. sig { returns(String) } attr_accessor :id @@ -268,9 +409,20 @@ module OpenAI code: nil, # Details about the pending safety check. message: nil - ); end - sig { override.returns({id: String, code: T.nilable(String), message: T.nilable(String)}) } - def to_hash; end + ) + end + + sig do + override.returns( + { + id: String, + code: T.nilable(String), + message: T.nilable(String) + } + ) + end + def to_hash + end end # The status of the message input. One of `in_progress`, `completed`, or @@ -279,28 +431,46 @@ module OpenAI extend OpenAI::Internal::Type::Enum TaggedSymbol = - T.type_alias { T.all(Symbol, OpenAI::Models::Responses::ResponseInputItem::ComputerCallOutput::Status) } + T.type_alias do + T.all( + Symbol, + OpenAI::Responses::ResponseInputItem::ComputerCallOutput::Status + ) + end OrSymbol = T.type_alias { T.any(Symbol, String) } IN_PROGRESS = T.let( :in_progress, - OpenAI::Models::Responses::ResponseInputItem::ComputerCallOutput::Status::TaggedSymbol + OpenAI::Responses::ResponseInputItem::ComputerCallOutput::Status::TaggedSymbol ) COMPLETED = - T.let(:completed, OpenAI::Models::Responses::ResponseInputItem::ComputerCallOutput::Status::TaggedSymbol) + T.let( + :completed, + OpenAI::Responses::ResponseInputItem::ComputerCallOutput::Status::TaggedSymbol + ) INCOMPLETE = - T.let(:incomplete, OpenAI::Models::Responses::ResponseInputItem::ComputerCallOutput::Status::TaggedSymbol) + T.let( + :incomplete, + OpenAI::Responses::ResponseInputItem::ComputerCallOutput::Status::TaggedSymbol + ) sig do - override - .returns(T::Array[OpenAI::Models::Responses::ResponseInputItem::ComputerCallOutput::Status::TaggedSymbol]) + override.returns( + T::Array[ + OpenAI::Responses::ResponseInputItem::ComputerCallOutput::Status::TaggedSymbol + ] + ) + end + def self.values end - def self.values; end end end class FunctionCallOutput < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The unique ID of the function tool call generated by the model. sig { returns(String) } attr_accessor :call_id @@ -320,7 +490,13 @@ module OpenAI # The status of the item. One of `in_progress`, `completed`, or `incomplete`. # Populated when items are returned via API. - sig { returns(T.nilable(OpenAI::Models::Responses::ResponseInputItem::FunctionCallOutput::Status::OrSymbol)) } + sig do + returns( + T.nilable( + OpenAI::Responses::ResponseInputItem::FunctionCallOutput::Status::OrSymbol + ) + ) + end attr_accessor :status # The output of a function tool call. @@ -329,10 +505,12 @@ module OpenAI call_id: String, output: String, id: T.nilable(String), - status: T.nilable(OpenAI::Models::Responses::ResponseInputItem::FunctionCallOutput::Status::OrSymbol), + status: + T.nilable( + OpenAI::Responses::ResponseInputItem::FunctionCallOutput::Status::OrSymbol + ), type: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # The unique ID of the function tool call generated by the model. @@ -347,20 +525,25 @@ module OpenAI status: nil, # The type of the function tool call output. Always `function_call_output`. type: :function_call_output - ); end + ) + end + sig do - override - .returns( - { - call_id: String, - output: String, - type: Symbol, - id: T.nilable(String), - status: T.nilable(OpenAI::Models::Responses::ResponseInputItem::FunctionCallOutput::Status::OrSymbol) - } - ) + override.returns( + { + call_id: String, + output: String, + type: Symbol, + id: T.nilable(String), + status: + T.nilable( + OpenAI::Responses::ResponseInputItem::FunctionCallOutput::Status::OrSymbol + ) + } + ) + end + def to_hash end - def to_hash; end # The status of the item. One of `in_progress`, `completed`, or `incomplete`. # Populated when items are returned via API. @@ -368,83 +551,130 @@ module OpenAI extend OpenAI::Internal::Type::Enum TaggedSymbol = - T.type_alias { T.all(Symbol, OpenAI::Models::Responses::ResponseInputItem::FunctionCallOutput::Status) } + T.type_alias do + T.all( + Symbol, + OpenAI::Responses::ResponseInputItem::FunctionCallOutput::Status + ) + end OrSymbol = T.type_alias { T.any(Symbol, String) } IN_PROGRESS = T.let( :in_progress, - OpenAI::Models::Responses::ResponseInputItem::FunctionCallOutput::Status::TaggedSymbol + OpenAI::Responses::ResponseInputItem::FunctionCallOutput::Status::TaggedSymbol ) COMPLETED = - T.let(:completed, OpenAI::Models::Responses::ResponseInputItem::FunctionCallOutput::Status::TaggedSymbol) + T.let( + :completed, + OpenAI::Responses::ResponseInputItem::FunctionCallOutput::Status::TaggedSymbol + ) INCOMPLETE = - T.let(:incomplete, OpenAI::Models::Responses::ResponseInputItem::FunctionCallOutput::Status::TaggedSymbol) + T.let( + :incomplete, + OpenAI::Responses::ResponseInputItem::FunctionCallOutput::Status::TaggedSymbol + ) sig do - override - .returns(T::Array[OpenAI::Models::Responses::ResponseInputItem::FunctionCallOutput::Status::TaggedSymbol]) + override.returns( + T::Array[ + OpenAI::Responses::ResponseInputItem::FunctionCallOutput::Status::TaggedSymbol + ] + ) + end + def self.values end - def self.values; end end end class ItemReference < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The ID of the item to reference. sig { returns(String) } attr_accessor :id # The type of item to reference. Always `item_reference`. - sig { returns(T.nilable(OpenAI::Models::Responses::ResponseInputItem::ItemReference::Type::OrSymbol)) } + sig do + returns( + T.nilable( + OpenAI::Responses::ResponseInputItem::ItemReference::Type::OrSymbol + ) + ) + end attr_accessor :type # An internal identifier for an item to reference. sig do params( id: String, - type: T.nilable(OpenAI::Models::Responses::ResponseInputItem::ItemReference::Type::OrSymbol) - ) - .returns(T.attached_class) + type: + T.nilable( + OpenAI::Responses::ResponseInputItem::ItemReference::Type::OrSymbol + ) + ).returns(T.attached_class) end def self.new( # The ID of the item to reference. id:, # The type of item to reference. Always `item_reference`. type: nil - ); end + ) + end + sig do - override - .returns( - {id: String, type: T.nilable(OpenAI::Models::Responses::ResponseInputItem::ItemReference::Type::OrSymbol)} - ) + override.returns( + { + id: String, + type: + T.nilable( + OpenAI::Responses::ResponseInputItem::ItemReference::Type::OrSymbol + ) + } + ) + end + def to_hash end - def to_hash; end # The type of item to reference. Always `item_reference`. module Type extend OpenAI::Internal::Type::Enum TaggedSymbol = - T.type_alias { T.all(Symbol, OpenAI::Models::Responses::ResponseInputItem::ItemReference::Type) } + T.type_alias do + T.all( + Symbol, + OpenAI::Responses::ResponseInputItem::ItemReference::Type + ) + end OrSymbol = T.type_alias { T.any(Symbol, String) } ITEM_REFERENCE = - T.let(:item_reference, OpenAI::Models::Responses::ResponseInputItem::ItemReference::Type::TaggedSymbol) + T.let( + :item_reference, + OpenAI::Responses::ResponseInputItem::ItemReference::Type::TaggedSymbol + ) sig do - override.returns(T::Array[OpenAI::Models::Responses::ResponseInputItem::ItemReference::Type::TaggedSymbol]) + override.returns( + T::Array[ + OpenAI::Responses::ResponseInputItem::ItemReference::Type::TaggedSymbol + ] + ) + end + def self.values end - def self.values; end end end sig do - override - .returns( - [OpenAI::Models::Responses::EasyInputMessage, OpenAI::Models::Responses::ResponseInputItem::Message, OpenAI::Models::Responses::ResponseOutputMessage, OpenAI::Models::Responses::ResponseFileSearchToolCall, OpenAI::Models::Responses::ResponseComputerToolCall, OpenAI::Models::Responses::ResponseInputItem::ComputerCallOutput, OpenAI::Models::Responses::ResponseFunctionWebSearch, OpenAI::Models::Responses::ResponseFunctionToolCall, OpenAI::Models::Responses::ResponseInputItem::FunctionCallOutput, OpenAI::Models::Responses::ResponseReasoningItem, OpenAI::Models::Responses::ResponseInputItem::ItemReference] - ) + override.returns( + T::Array[OpenAI::Responses::ResponseInputItem::Variants] + ) + end + def self.variants end - def self.variants; end end end end diff --git a/rbi/openai/models/responses/response_input_message_content_list.rbi b/rbi/openai/models/responses/response_input_message_content_list.rbi index f25328f7..15396775 100644 --- a/rbi/openai/models/responses/response_input_message_content_list.rbi +++ b/rbi/openai/models/responses/response_input_message_content_list.rbi @@ -5,7 +5,9 @@ module OpenAI module Responses ResponseInputMessageContentList = T.let( - OpenAI::Internal::Type::ArrayOf[union: OpenAI::Models::Responses::ResponseInputContent], + OpenAI::Internal::Type::ArrayOf[ + union: OpenAI::Responses::ResponseInputContent + ], OpenAI::Internal::Type::Converter ) end diff --git a/rbi/openai/models/responses/response_input_message_item.rbi b/rbi/openai/models/responses/response_input_message_item.rbi index 9c426966..25f40889 100644 --- a/rbi/openai/models/responses/response_input_message_item.rbi +++ b/rbi/openai/models/responses/response_input_message_item.rbi @@ -4,6 +4,8 @@ module OpenAI module Models module Responses class ResponseInputMessageItem < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The unique ID of the message input. sig { returns(String) } attr_accessor :id @@ -14,9 +16,9 @@ module OpenAI returns( T::Array[ T.any( - OpenAI::Models::Responses::ResponseInputText, - OpenAI::Models::Responses::ResponseInputImage, - OpenAI::Models::Responses::ResponseInputFile + OpenAI::Responses::ResponseInputText, + OpenAI::Responses::ResponseInputImage, + OpenAI::Responses::ResponseInputFile ) ] ) @@ -24,40 +26,65 @@ module OpenAI attr_accessor :content # The role of the message input. One of `user`, `system`, or `developer`. - sig { returns(OpenAI::Models::Responses::ResponseInputMessageItem::Role::TaggedSymbol) } + sig do + returns( + OpenAI::Responses::ResponseInputMessageItem::Role::TaggedSymbol + ) + end attr_accessor :role # The status of item. One of `in_progress`, `completed`, or `incomplete`. # Populated when items are returned via API. - sig { returns(T.nilable(OpenAI::Models::Responses::ResponseInputMessageItem::Status::TaggedSymbol)) } + sig do + returns( + T.nilable( + OpenAI::Responses::ResponseInputMessageItem::Status::TaggedSymbol + ) + ) + end attr_reader :status - sig { params(status: OpenAI::Models::Responses::ResponseInputMessageItem::Status::OrSymbol).void } + sig do + params( + status: + OpenAI::Responses::ResponseInputMessageItem::Status::OrSymbol + ).void + end attr_writer :status # The type of the message input. Always set to `message`. - sig { returns(T.nilable(OpenAI::Models::Responses::ResponseInputMessageItem::Type::TaggedSymbol)) } + sig do + returns( + T.nilable( + OpenAI::Responses::ResponseInputMessageItem::Type::TaggedSymbol + ) + ) + end attr_reader :type - sig { params(type: OpenAI::Models::Responses::ResponseInputMessageItem::Type::OrSymbol).void } + sig do + params( + type: OpenAI::Responses::ResponseInputMessageItem::Type::OrSymbol + ).void + end attr_writer :type sig do params( id: String, - content: T::Array[ - T.any( - OpenAI::Models::Responses::ResponseInputText, - OpenAI::Internal::AnyHash, - OpenAI::Models::Responses::ResponseInputImage, - OpenAI::Models::Responses::ResponseInputFile - ) - ], - role: OpenAI::Models::Responses::ResponseInputMessageItem::Role::OrSymbol, - status: OpenAI::Models::Responses::ResponseInputMessageItem::Status::OrSymbol, - type: OpenAI::Models::Responses::ResponseInputMessageItem::Type::OrSymbol - ) - .returns(T.attached_class) + content: + T::Array[ + T.any( + OpenAI::Responses::ResponseInputText::OrHash, + OpenAI::Responses::ResponseInputImage::OrHash, + OpenAI::Responses::ResponseInputFile::OrHash + ) + ], + role: OpenAI::Responses::ResponseInputMessageItem::Role::OrSymbol, + status: + OpenAI::Responses::ResponseInputMessageItem::Status::OrSymbol, + type: OpenAI::Responses::ResponseInputMessageItem::Type::OrSymbol + ).returns(T.attached_class) end def self.new( # The unique ID of the message input. @@ -72,40 +99,68 @@ module OpenAI status: nil, # The type of the message input. Always set to `message`. type: nil - ); end + ) + end + sig do - override - .returns( - { - id: String, - content: T::Array[ + override.returns( + { + id: String, + content: + T::Array[ T.any( - OpenAI::Models::Responses::ResponseInputText, - OpenAI::Models::Responses::ResponseInputImage, - OpenAI::Models::Responses::ResponseInputFile + OpenAI::Responses::ResponseInputText, + OpenAI::Responses::ResponseInputImage, + OpenAI::Responses::ResponseInputFile ) ], - role: OpenAI::Models::Responses::ResponseInputMessageItem::Role::TaggedSymbol, - status: OpenAI::Models::Responses::ResponseInputMessageItem::Status::TaggedSymbol, - type: OpenAI::Models::Responses::ResponseInputMessageItem::Type::TaggedSymbol - } - ) + role: + OpenAI::Responses::ResponseInputMessageItem::Role::TaggedSymbol, + status: + OpenAI::Responses::ResponseInputMessageItem::Status::TaggedSymbol, + type: + OpenAI::Responses::ResponseInputMessageItem::Type::TaggedSymbol + } + ) + end + def to_hash end - def to_hash; end # The role of the message input. One of `user`, `system`, or `developer`. module Role extend OpenAI::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::Responses::ResponseInputMessageItem::Role) } + TaggedSymbol = + T.type_alias do + T.all(Symbol, OpenAI::Responses::ResponseInputMessageItem::Role) + end OrSymbol = T.type_alias { T.any(Symbol, String) } - USER = T.let(:user, OpenAI::Models::Responses::ResponseInputMessageItem::Role::TaggedSymbol) - SYSTEM = T.let(:system, OpenAI::Models::Responses::ResponseInputMessageItem::Role::TaggedSymbol) - DEVELOPER = T.let(:developer, OpenAI::Models::Responses::ResponseInputMessageItem::Role::TaggedSymbol) + USER = + T.let( + :user, + OpenAI::Responses::ResponseInputMessageItem::Role::TaggedSymbol + ) + SYSTEM = + T.let( + :system, + OpenAI::Responses::ResponseInputMessageItem::Role::TaggedSymbol + ) + DEVELOPER = + T.let( + :developer, + OpenAI::Responses::ResponseInputMessageItem::Role::TaggedSymbol + ) - sig { override.returns(T::Array[OpenAI::Models::Responses::ResponseInputMessageItem::Role::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[ + OpenAI::Responses::ResponseInputMessageItem::Role::TaggedSymbol + ] + ) + end + def self.values + end end # The status of item. One of `in_progress`, `completed`, or `incomplete`. @@ -114,30 +169,63 @@ module OpenAI extend OpenAI::Internal::Type::Enum TaggedSymbol = - T.type_alias { T.all(Symbol, OpenAI::Models::Responses::ResponseInputMessageItem::Status) } + T.type_alias do + T.all(Symbol, OpenAI::Responses::ResponseInputMessageItem::Status) + end OrSymbol = T.type_alias { T.any(Symbol, String) } IN_PROGRESS = - T.let(:in_progress, OpenAI::Models::Responses::ResponseInputMessageItem::Status::TaggedSymbol) - COMPLETED = T.let(:completed, OpenAI::Models::Responses::ResponseInputMessageItem::Status::TaggedSymbol) + T.let( + :in_progress, + OpenAI::Responses::ResponseInputMessageItem::Status::TaggedSymbol + ) + COMPLETED = + T.let( + :completed, + OpenAI::Responses::ResponseInputMessageItem::Status::TaggedSymbol + ) INCOMPLETE = - T.let(:incomplete, OpenAI::Models::Responses::ResponseInputMessageItem::Status::TaggedSymbol) + T.let( + :incomplete, + OpenAI::Responses::ResponseInputMessageItem::Status::TaggedSymbol + ) - sig { override.returns(T::Array[OpenAI::Models::Responses::ResponseInputMessageItem::Status::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[ + OpenAI::Responses::ResponseInputMessageItem::Status::TaggedSymbol + ] + ) + end + def self.values + end end # The type of the message input. Always set to `message`. module Type extend OpenAI::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::Responses::ResponseInputMessageItem::Type) } + TaggedSymbol = + T.type_alias do + T.all(Symbol, OpenAI::Responses::ResponseInputMessageItem::Type) + end OrSymbol = T.type_alias { T.any(Symbol, String) } - MESSAGE = T.let(:message, OpenAI::Models::Responses::ResponseInputMessageItem::Type::TaggedSymbol) + MESSAGE = + T.let( + :message, + OpenAI::Responses::ResponseInputMessageItem::Type::TaggedSymbol + ) - sig { override.returns(T::Array[OpenAI::Models::Responses::ResponseInputMessageItem::Type::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[ + OpenAI::Responses::ResponseInputMessageItem::Type::TaggedSymbol + ] + ) + end + def self.values + end end end end diff --git a/rbi/openai/models/responses/response_input_text.rbi b/rbi/openai/models/responses/response_input_text.rbi index 6ecb1f55..566e9627 100644 --- a/rbi/openai/models/responses/response_input_text.rbi +++ b/rbi/openai/models/responses/response_input_text.rbi @@ -4,6 +4,8 @@ module OpenAI module Models module Responses class ResponseInputText < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The text input to the model. sig { returns(String) } attr_accessor :text @@ -19,9 +21,12 @@ module OpenAI text:, # The type of the input item. Always `input_text`. type: :input_text - ); end - sig { override.returns({text: String, type: Symbol}) } - def to_hash; end + ) + end + + sig { override.returns({ text: String, type: Symbol }) } + def to_hash + end end end end diff --git a/rbi/openai/models/responses/response_item.rbi b/rbi/openai/models/responses/response_item.rbi index 21440ba2..021afb6a 100644 --- a/rbi/openai/models/responses/response_item.rbi +++ b/rbi/openai/models/responses/response_item.rbi @@ -7,13 +7,25 @@ module OpenAI module ResponseItem extend OpenAI::Internal::Type::Union - sig do - override - .returns( - [OpenAI::Models::Responses::ResponseInputMessageItem, OpenAI::Models::Responses::ResponseOutputMessage, OpenAI::Models::Responses::ResponseFileSearchToolCall, OpenAI::Models::Responses::ResponseComputerToolCall, OpenAI::Models::Responses::ResponseComputerToolCallOutputItem, OpenAI::Models::Responses::ResponseFunctionWebSearch, OpenAI::Models::Responses::ResponseFunctionToolCallItem, OpenAI::Models::Responses::ResponseFunctionToolCallOutputItem] + Variants = + T.type_alias do + T.any( + OpenAI::Responses::ResponseInputMessageItem, + OpenAI::Responses::ResponseOutputMessage, + OpenAI::Responses::ResponseFileSearchToolCall, + OpenAI::Responses::ResponseComputerToolCall, + OpenAI::Responses::ResponseComputerToolCallOutputItem, + OpenAI::Responses::ResponseFunctionWebSearch, + OpenAI::Responses::ResponseFunctionToolCallItem, + OpenAI::Responses::ResponseFunctionToolCallOutputItem ) + end + + sig do + override.returns(T::Array[OpenAI::Responses::ResponseItem::Variants]) + end + def self.variants end - def self.variants; end end end end diff --git a/rbi/openai/models/responses/response_item_list.rbi b/rbi/openai/models/responses/response_item_list.rbi index d83e183d..ef2ba10b 100644 --- a/rbi/openai/models/responses/response_item_list.rbi +++ b/rbi/openai/models/responses/response_item_list.rbi @@ -6,19 +6,21 @@ module OpenAI module Responses class ResponseItemList < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # A list of items used to generate this response. sig do returns( T::Array[ T.any( - OpenAI::Models::Responses::ResponseInputMessageItem, - OpenAI::Models::Responses::ResponseOutputMessage, - OpenAI::Models::Responses::ResponseFileSearchToolCall, - OpenAI::Models::Responses::ResponseComputerToolCall, - OpenAI::Models::Responses::ResponseComputerToolCallOutputItem, - OpenAI::Models::Responses::ResponseFunctionWebSearch, - OpenAI::Models::Responses::ResponseFunctionToolCallItem, - OpenAI::Models::Responses::ResponseFunctionToolCallOutputItem + OpenAI::Responses::ResponseInputMessageItem, + OpenAI::Responses::ResponseOutputMessage, + OpenAI::Responses::ResponseFileSearchToolCall, + OpenAI::Responses::ResponseComputerToolCall, + OpenAI::Responses::ResponseComputerToolCallOutputItem, + OpenAI::Responses::ResponseFunctionWebSearch, + OpenAI::Responses::ResponseFunctionToolCallItem, + OpenAI::Responses::ResponseFunctionToolCallOutputItem ) ] ) @@ -44,25 +46,24 @@ module OpenAI # A list of Response items. sig do params( - data: T::Array[ - T.any( - OpenAI::Models::Responses::ResponseInputMessageItem, - OpenAI::Internal::AnyHash, - OpenAI::Models::Responses::ResponseOutputMessage, - OpenAI::Models::Responses::ResponseFileSearchToolCall, - OpenAI::Models::Responses::ResponseComputerToolCall, - OpenAI::Models::Responses::ResponseComputerToolCallOutputItem, - OpenAI::Models::Responses::ResponseFunctionWebSearch, - OpenAI::Models::Responses::ResponseFunctionToolCallItem, - OpenAI::Models::Responses::ResponseFunctionToolCallOutputItem - ) - ], + data: + T::Array[ + T.any( + OpenAI::Responses::ResponseInputMessageItem::OrHash, + OpenAI::Responses::ResponseOutputMessage::OrHash, + OpenAI::Responses::ResponseFileSearchToolCall::OrHash, + OpenAI::Responses::ResponseComputerToolCall::OrHash, + OpenAI::Responses::ResponseComputerToolCallOutputItem::OrHash, + OpenAI::Responses::ResponseFunctionWebSearch::OrHash, + OpenAI::Responses::ResponseFunctionToolCallItem::OrHash, + OpenAI::Responses::ResponseFunctionToolCallOutputItem::OrHash + ) + ], first_id: String, has_more: T::Boolean, last_id: String, object: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # A list of items used to generate this response. @@ -75,31 +76,34 @@ module OpenAI last_id:, # The type of object returned, must be `list`. object: :list - ); end + ) + end + sig do - override - .returns( - { - data: T::Array[ + override.returns( + { + data: + T::Array[ T.any( - OpenAI::Models::Responses::ResponseInputMessageItem, - OpenAI::Models::Responses::ResponseOutputMessage, - OpenAI::Models::Responses::ResponseFileSearchToolCall, - OpenAI::Models::Responses::ResponseComputerToolCall, - OpenAI::Models::Responses::ResponseComputerToolCallOutputItem, - OpenAI::Models::Responses::ResponseFunctionWebSearch, - OpenAI::Models::Responses::ResponseFunctionToolCallItem, - OpenAI::Models::Responses::ResponseFunctionToolCallOutputItem + OpenAI::Responses::ResponseInputMessageItem, + OpenAI::Responses::ResponseOutputMessage, + OpenAI::Responses::ResponseFileSearchToolCall, + OpenAI::Responses::ResponseComputerToolCall, + OpenAI::Responses::ResponseComputerToolCallOutputItem, + OpenAI::Responses::ResponseFunctionWebSearch, + OpenAI::Responses::ResponseFunctionToolCallItem, + OpenAI::Responses::ResponseFunctionToolCallOutputItem ) ], - first_id: String, - has_more: T::Boolean, - last_id: String, - object: Symbol - } - ) + first_id: String, + has_more: T::Boolean, + last_id: String, + object: Symbol + } + ) + end + def to_hash end - def to_hash; end end end end diff --git a/rbi/openai/models/responses/response_output_audio.rbi b/rbi/openai/models/responses/response_output_audio.rbi index ccca474a..bfcafd48 100644 --- a/rbi/openai/models/responses/response_output_audio.rbi +++ b/rbi/openai/models/responses/response_output_audio.rbi @@ -4,6 +4,8 @@ module OpenAI module Models module Responses class ResponseOutputAudio < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Base64-encoded audio data from the model. sig { returns(String) } attr_accessor :data @@ -17,7 +19,11 @@ module OpenAI attr_accessor :type # An audio output from the model. - sig { params(data: String, transcript: String, type: Symbol).returns(T.attached_class) } + sig do + params(data: String, transcript: String, type: Symbol).returns( + T.attached_class + ) + end def self.new( # Base64-encoded audio data from the model. data:, @@ -25,9 +31,14 @@ module OpenAI transcript:, # The type of the output audio. Always `output_audio`. type: :output_audio - ); end - sig { override.returns({data: String, transcript: String, type: Symbol}) } - def to_hash; end + ) + end + + sig do + override.returns({ data: String, transcript: String, type: Symbol }) + end + def to_hash + end end end end diff --git a/rbi/openai/models/responses/response_output_item.rbi b/rbi/openai/models/responses/response_output_item.rbi index 5409b70c..01dd560a 100644 --- a/rbi/openai/models/responses/response_output_item.rbi +++ b/rbi/openai/models/responses/response_output_item.rbi @@ -7,13 +7,25 @@ module OpenAI module ResponseOutputItem extend OpenAI::Internal::Type::Union - sig do - override - .returns( - [OpenAI::Models::Responses::ResponseOutputMessage, OpenAI::Models::Responses::ResponseFileSearchToolCall, OpenAI::Models::Responses::ResponseFunctionToolCall, OpenAI::Models::Responses::ResponseFunctionWebSearch, OpenAI::Models::Responses::ResponseComputerToolCall, OpenAI::Models::Responses::ResponseReasoningItem] + Variants = + T.type_alias do + T.any( + OpenAI::Responses::ResponseOutputMessage, + OpenAI::Responses::ResponseFileSearchToolCall, + OpenAI::Responses::ResponseFunctionToolCall, + OpenAI::Responses::ResponseFunctionWebSearch, + OpenAI::Responses::ResponseComputerToolCall, + OpenAI::Responses::ResponseReasoningItem ) + end + + sig do + override.returns( + T::Array[OpenAI::Responses::ResponseOutputItem::Variants] + ) + end + def self.variants end - def self.variants; end end end end diff --git a/rbi/openai/models/responses/response_output_item_added_event.rbi b/rbi/openai/models/responses/response_output_item_added_event.rbi index 6318ea2f..7f0f565c 100644 --- a/rbi/openai/models/responses/response_output_item_added_event.rbi +++ b/rbi/openai/models/responses/response_output_item_added_event.rbi @@ -4,16 +4,18 @@ module OpenAI module Models module Responses class ResponseOutputItemAddedEvent < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The output item that was added. sig do returns( T.any( - OpenAI::Models::Responses::ResponseOutputMessage, - OpenAI::Models::Responses::ResponseFileSearchToolCall, - OpenAI::Models::Responses::ResponseFunctionToolCall, - OpenAI::Models::Responses::ResponseFunctionWebSearch, - OpenAI::Models::Responses::ResponseComputerToolCall, - OpenAI::Models::Responses::ResponseReasoningItem + OpenAI::Responses::ResponseOutputMessage, + OpenAI::Responses::ResponseFileSearchToolCall, + OpenAI::Responses::ResponseFunctionToolCall, + OpenAI::Responses::ResponseFunctionWebSearch, + OpenAI::Responses::ResponseComputerToolCall, + OpenAI::Responses::ResponseReasoningItem ) ) end @@ -30,19 +32,18 @@ module OpenAI # Emitted when a new output item is added. sig do params( - item: T.any( - OpenAI::Models::Responses::ResponseOutputMessage, - OpenAI::Internal::AnyHash, - OpenAI::Models::Responses::ResponseFileSearchToolCall, - OpenAI::Models::Responses::ResponseFunctionToolCall, - OpenAI::Models::Responses::ResponseFunctionWebSearch, - OpenAI::Models::Responses::ResponseComputerToolCall, - OpenAI::Models::Responses::ResponseReasoningItem - ), + item: + T.any( + OpenAI::Responses::ResponseOutputMessage::OrHash, + OpenAI::Responses::ResponseFileSearchToolCall::OrHash, + OpenAI::Responses::ResponseFunctionToolCall::OrHash, + OpenAI::Responses::ResponseFunctionWebSearch::OrHash, + OpenAI::Responses::ResponseComputerToolCall::OrHash, + OpenAI::Responses::ResponseReasoningItem::OrHash + ), output_index: Integer, type: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # The output item that was added. @@ -51,25 +52,28 @@ module OpenAI output_index:, # The type of the event. Always `response.output_item.added`. type: :"response.output_item.added" - ); end + ) + end + sig do - override - .returns( - { - item: T.any( - OpenAI::Models::Responses::ResponseOutputMessage, - OpenAI::Models::Responses::ResponseFileSearchToolCall, - OpenAI::Models::Responses::ResponseFunctionToolCall, - OpenAI::Models::Responses::ResponseFunctionWebSearch, - OpenAI::Models::Responses::ResponseComputerToolCall, - OpenAI::Models::Responses::ResponseReasoningItem + override.returns( + { + item: + T.any( + OpenAI::Responses::ResponseOutputMessage, + OpenAI::Responses::ResponseFileSearchToolCall, + OpenAI::Responses::ResponseFunctionToolCall, + OpenAI::Responses::ResponseFunctionWebSearch, + OpenAI::Responses::ResponseComputerToolCall, + OpenAI::Responses::ResponseReasoningItem ), - output_index: Integer, - type: Symbol - } - ) + output_index: Integer, + type: Symbol + } + ) + end + def to_hash end - def to_hash; end end end end diff --git a/rbi/openai/models/responses/response_output_item_done_event.rbi b/rbi/openai/models/responses/response_output_item_done_event.rbi index 2ec17e88..94e4db56 100644 --- a/rbi/openai/models/responses/response_output_item_done_event.rbi +++ b/rbi/openai/models/responses/response_output_item_done_event.rbi @@ -4,16 +4,18 @@ module OpenAI module Models module Responses class ResponseOutputItemDoneEvent < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The output item that was marked done. sig do returns( T.any( - OpenAI::Models::Responses::ResponseOutputMessage, - OpenAI::Models::Responses::ResponseFileSearchToolCall, - OpenAI::Models::Responses::ResponseFunctionToolCall, - OpenAI::Models::Responses::ResponseFunctionWebSearch, - OpenAI::Models::Responses::ResponseComputerToolCall, - OpenAI::Models::Responses::ResponseReasoningItem + OpenAI::Responses::ResponseOutputMessage, + OpenAI::Responses::ResponseFileSearchToolCall, + OpenAI::Responses::ResponseFunctionToolCall, + OpenAI::Responses::ResponseFunctionWebSearch, + OpenAI::Responses::ResponseComputerToolCall, + OpenAI::Responses::ResponseReasoningItem ) ) end @@ -30,19 +32,18 @@ module OpenAI # Emitted when an output item is marked done. sig do params( - item: T.any( - OpenAI::Models::Responses::ResponseOutputMessage, - OpenAI::Internal::AnyHash, - OpenAI::Models::Responses::ResponseFileSearchToolCall, - OpenAI::Models::Responses::ResponseFunctionToolCall, - OpenAI::Models::Responses::ResponseFunctionWebSearch, - OpenAI::Models::Responses::ResponseComputerToolCall, - OpenAI::Models::Responses::ResponseReasoningItem - ), + item: + T.any( + OpenAI::Responses::ResponseOutputMessage::OrHash, + OpenAI::Responses::ResponseFileSearchToolCall::OrHash, + OpenAI::Responses::ResponseFunctionToolCall::OrHash, + OpenAI::Responses::ResponseFunctionWebSearch::OrHash, + OpenAI::Responses::ResponseComputerToolCall::OrHash, + OpenAI::Responses::ResponseReasoningItem::OrHash + ), output_index: Integer, type: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # The output item that was marked done. @@ -51,25 +52,28 @@ module OpenAI output_index:, # The type of the event. Always `response.output_item.done`. type: :"response.output_item.done" - ); end + ) + end + sig do - override - .returns( - { - item: T.any( - OpenAI::Models::Responses::ResponseOutputMessage, - OpenAI::Models::Responses::ResponseFileSearchToolCall, - OpenAI::Models::Responses::ResponseFunctionToolCall, - OpenAI::Models::Responses::ResponseFunctionWebSearch, - OpenAI::Models::Responses::ResponseComputerToolCall, - OpenAI::Models::Responses::ResponseReasoningItem + override.returns( + { + item: + T.any( + OpenAI::Responses::ResponseOutputMessage, + OpenAI::Responses::ResponseFileSearchToolCall, + OpenAI::Responses::ResponseFunctionToolCall, + OpenAI::Responses::ResponseFunctionWebSearch, + OpenAI::Responses::ResponseComputerToolCall, + OpenAI::Responses::ResponseReasoningItem ), - output_index: Integer, - type: Symbol - } - ) + output_index: Integer, + type: Symbol + } + ) + end + def to_hash end - def to_hash; end end end end diff --git a/rbi/openai/models/responses/response_output_message.rbi b/rbi/openai/models/responses/response_output_message.rbi index 67f1cfc9..e807c5bc 100644 --- a/rbi/openai/models/responses/response_output_message.rbi +++ b/rbi/openai/models/responses/response_output_message.rbi @@ -4,6 +4,8 @@ module OpenAI module Models module Responses class ResponseOutputMessage < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The unique ID of the output message. sig { returns(String) } attr_accessor :id @@ -11,7 +13,12 @@ module OpenAI # The content of the output message. sig do returns( - T::Array[T.any(OpenAI::Models::Responses::ResponseOutputText, OpenAI::Models::Responses::ResponseOutputRefusal)] + T::Array[ + T.any( + OpenAI::Responses::ResponseOutputText, + OpenAI::Responses::ResponseOutputRefusal + ) + ] ) end attr_accessor :content @@ -22,7 +29,9 @@ module OpenAI # The status of the message input. One of `in_progress`, `completed`, or # `incomplete`. Populated when input items are returned via API. - sig { returns(OpenAI::Models::Responses::ResponseOutputMessage::Status::OrSymbol) } + sig do + returns(OpenAI::Responses::ResponseOutputMessage::Status::OrSymbol) + end attr_accessor :status # The type of the output message. Always `message`. @@ -33,18 +42,17 @@ module OpenAI sig do params( id: String, - content: T::Array[ - T.any( - OpenAI::Models::Responses::ResponseOutputText, - OpenAI::Internal::AnyHash, - OpenAI::Models::Responses::ResponseOutputRefusal - ) - ], - status: OpenAI::Models::Responses::ResponseOutputMessage::Status::OrSymbol, + content: + T::Array[ + T.any( + OpenAI::Responses::ResponseOutputText::OrHash, + OpenAI::Responses::ResponseOutputRefusal::OrHash + ) + ], + status: OpenAI::Responses::ResponseOutputMessage::Status::OrSymbol, role: Symbol, type: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # The unique ID of the output message. @@ -58,30 +66,51 @@ module OpenAI role: :assistant, # The type of the output message. Always `message`. type: :message - ); end + ) + end + sig do - override - .returns( - { - id: String, - content: T::Array[T.any(OpenAI::Models::Responses::ResponseOutputText, OpenAI::Models::Responses::ResponseOutputRefusal)], - role: Symbol, - status: OpenAI::Models::Responses::ResponseOutputMessage::Status::OrSymbol, - type: Symbol - } - ) + override.returns( + { + id: String, + content: + T::Array[ + T.any( + OpenAI::Responses::ResponseOutputText, + OpenAI::Responses::ResponseOutputRefusal + ) + ], + role: Symbol, + status: + OpenAI::Responses::ResponseOutputMessage::Status::OrSymbol, + type: Symbol + } + ) + end + def to_hash end - def to_hash; end # A text output from the model. module Content extend OpenAI::Internal::Type::Union + Variants = + T.type_alias do + T.any( + OpenAI::Responses::ResponseOutputText, + OpenAI::Responses::ResponseOutputRefusal + ) + end + sig do - override - .returns([OpenAI::Models::Responses::ResponseOutputText, OpenAI::Models::Responses::ResponseOutputRefusal]) + override.returns( + T::Array[ + OpenAI::Responses::ResponseOutputMessage::Content::Variants + ] + ) + end + def self.variants end - def self.variants; end end # The status of the message input. One of `in_progress`, `completed`, or @@ -89,15 +118,37 @@ module OpenAI module Status extend OpenAI::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::Responses::ResponseOutputMessage::Status) } + TaggedSymbol = + T.type_alias do + T.all(Symbol, OpenAI::Responses::ResponseOutputMessage::Status) + end OrSymbol = T.type_alias { T.any(Symbol, String) } - IN_PROGRESS = T.let(:in_progress, OpenAI::Models::Responses::ResponseOutputMessage::Status::TaggedSymbol) - COMPLETED = T.let(:completed, OpenAI::Models::Responses::ResponseOutputMessage::Status::TaggedSymbol) - INCOMPLETE = T.let(:incomplete, OpenAI::Models::Responses::ResponseOutputMessage::Status::TaggedSymbol) + IN_PROGRESS = + T.let( + :in_progress, + OpenAI::Responses::ResponseOutputMessage::Status::TaggedSymbol + ) + COMPLETED = + T.let( + :completed, + OpenAI::Responses::ResponseOutputMessage::Status::TaggedSymbol + ) + INCOMPLETE = + T.let( + :incomplete, + OpenAI::Responses::ResponseOutputMessage::Status::TaggedSymbol + ) - sig { override.returns(T::Array[OpenAI::Models::Responses::ResponseOutputMessage::Status::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[ + OpenAI::Responses::ResponseOutputMessage::Status::TaggedSymbol + ] + ) + end + def self.values + end end end end diff --git a/rbi/openai/models/responses/response_output_refusal.rbi b/rbi/openai/models/responses/response_output_refusal.rbi index 16a800dd..0d0d1a26 100644 --- a/rbi/openai/models/responses/response_output_refusal.rbi +++ b/rbi/openai/models/responses/response_output_refusal.rbi @@ -4,6 +4,8 @@ module OpenAI module Models module Responses class ResponseOutputRefusal < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The refusal explanationfrom the model. sig { returns(String) } attr_accessor :refusal @@ -19,9 +21,12 @@ module OpenAI refusal:, # The type of the refusal. Always `refusal`. type: :refusal - ); end - sig { override.returns({refusal: String, type: Symbol}) } - def to_hash; end + ) + end + + sig { override.returns({ refusal: String, type: Symbol }) } + def to_hash + end end end end diff --git a/rbi/openai/models/responses/response_output_text.rbi b/rbi/openai/models/responses/response_output_text.rbi index e0267bd2..cea49a6e 100644 --- a/rbi/openai/models/responses/response_output_text.rbi +++ b/rbi/openai/models/responses/response_output_text.rbi @@ -4,14 +4,16 @@ module OpenAI module Models module Responses class ResponseOutputText < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The annotations of the text output. sig do returns( T::Array[ T.any( - OpenAI::Models::Responses::ResponseOutputText::Annotation::FileCitation, - OpenAI::Models::Responses::ResponseOutputText::Annotation::URLCitation, - OpenAI::Models::Responses::ResponseOutputText::Annotation::FilePath + OpenAI::Responses::ResponseOutputText::Annotation::FileCitation, + OpenAI::Responses::ResponseOutputText::Annotation::URLCitation, + OpenAI::Responses::ResponseOutputText::Annotation::FilePath ) ] ) @@ -29,18 +31,17 @@ module OpenAI # A text output from the model. sig do params( - annotations: T::Array[ - T.any( - OpenAI::Models::Responses::ResponseOutputText::Annotation::FileCitation, - OpenAI::Internal::AnyHash, - OpenAI::Models::Responses::ResponseOutputText::Annotation::URLCitation, - OpenAI::Models::Responses::ResponseOutputText::Annotation::FilePath - ) - ], + annotations: + T::Array[ + T.any( + OpenAI::Responses::ResponseOutputText::Annotation::FileCitation::OrHash, + OpenAI::Responses::ResponseOutputText::Annotation::URLCitation::OrHash, + OpenAI::Responses::ResponseOutputText::Annotation::FilePath::OrHash + ) + ], text: String, type: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # The annotations of the text output. @@ -49,30 +50,45 @@ module OpenAI text:, # The type of the output text. Always `output_text`. type: :output_text - ); end + ) + end + sig do - override - .returns( - { - annotations: T::Array[ + override.returns( + { + annotations: + T::Array[ T.any( - OpenAI::Models::Responses::ResponseOutputText::Annotation::FileCitation, - OpenAI::Models::Responses::ResponseOutputText::Annotation::URLCitation, - OpenAI::Models::Responses::ResponseOutputText::Annotation::FilePath + OpenAI::Responses::ResponseOutputText::Annotation::FileCitation, + OpenAI::Responses::ResponseOutputText::Annotation::URLCitation, + OpenAI::Responses::ResponseOutputText::Annotation::FilePath ) ], - text: String, - type: Symbol - } - ) + text: String, + type: Symbol + } + ) + end + def to_hash end - def to_hash; end # A citation to a file. module Annotation extend OpenAI::Internal::Type::Union + Variants = + T.type_alias do + T.any( + OpenAI::Responses::ResponseOutputText::Annotation::FileCitation, + OpenAI::Responses::ResponseOutputText::Annotation::URLCitation, + OpenAI::Responses::ResponseOutputText::Annotation::FilePath + ) + end + class FileCitation < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The ID of the file. sig { returns(String) } attr_accessor :file_id @@ -86,7 +102,11 @@ module OpenAI attr_accessor :type # A citation to a file. - sig { params(file_id: String, index: Integer, type: Symbol).returns(T.attached_class) } + sig do + params(file_id: String, index: Integer, type: Symbol).returns( + T.attached_class + ) + end def self.new( # The ID of the file. file_id:, @@ -94,12 +114,22 @@ module OpenAI index:, # The type of the file citation. Always `file_citation`. type: :file_citation - ); end - sig { override.returns({file_id: String, index: Integer, type: Symbol}) } - def to_hash; end + ) + end + + sig do + override.returns( + { file_id: String, index: Integer, type: Symbol } + ) + end + def to_hash + end end class URLCitation < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The index of the last character of the URL citation in the message. sig { returns(Integer) } attr_accessor :end_index @@ -122,8 +152,13 @@ module OpenAI # A citation for a web resource used to generate a model response. sig do - params(end_index: Integer, start_index: Integer, title: String, url: String, type: Symbol) - .returns(T.attached_class) + params( + end_index: Integer, + start_index: Integer, + title: String, + url: String, + type: Symbol + ).returns(T.attached_class) end def self.new( # The index of the last character of the URL citation in the message. @@ -136,7 +171,9 @@ module OpenAI url:, # The type of the URL citation. Always `url_citation`. type: :url_citation - ); end + ) + end + sig do override.returns( { @@ -148,10 +185,14 @@ module OpenAI } ) end - def to_hash; end + def to_hash + end end class FilePath < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The ID of the file. sig { returns(String) } attr_accessor :file_id @@ -165,7 +206,11 @@ module OpenAI attr_accessor :type # A path to a file. - sig { params(file_id: String, index: Integer, type: Symbol).returns(T.attached_class) } + sig do + params(file_id: String, index: Integer, type: Symbol).returns( + T.attached_class + ) + end def self.new( # The ID of the file. file_id:, @@ -173,18 +218,27 @@ module OpenAI index:, # The type of the file path. Always `file_path`. type: :file_path - ); end - sig { override.returns({file_id: String, index: Integer, type: Symbol}) } - def to_hash; end + ) + end + + sig do + override.returns( + { file_id: String, index: Integer, type: Symbol } + ) + end + def to_hash + end end sig do - override - .returns( - [OpenAI::Models::Responses::ResponseOutputText::Annotation::FileCitation, OpenAI::Models::Responses::ResponseOutputText::Annotation::URLCitation, OpenAI::Models::Responses::ResponseOutputText::Annotation::FilePath] - ) + override.returns( + T::Array[ + OpenAI::Responses::ResponseOutputText::Annotation::Variants + ] + ) + end + def self.variants end - def self.variants; end end end end diff --git a/rbi/openai/models/responses/response_reasoning_item.rbi b/rbi/openai/models/responses/response_reasoning_item.rbi index 6c5006fd..d54abb0d 100644 --- a/rbi/openai/models/responses/response_reasoning_item.rbi +++ b/rbi/openai/models/responses/response_reasoning_item.rbi @@ -4,12 +4,16 @@ module OpenAI module Models module Responses class ResponseReasoningItem < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The unique identifier of the reasoning content. sig { returns(String) } attr_accessor :id # Reasoning text contents. - sig { returns(T::Array[OpenAI::Models::Responses::ResponseReasoningItem::Summary]) } + sig do + returns(T::Array[OpenAI::Responses::ResponseReasoningItem::Summary]) + end attr_accessor :summary # The type of the object. Always `reasoning`. @@ -23,10 +27,20 @@ module OpenAI # The status of the item. One of `in_progress`, `completed`, or `incomplete`. # Populated when items are returned via API. - sig { returns(T.nilable(OpenAI::Models::Responses::ResponseReasoningItem::Status::OrSymbol)) } + sig do + returns( + T.nilable( + OpenAI::Responses::ResponseReasoningItem::Status::OrSymbol + ) + ) + end attr_reader :status - sig { params(status: OpenAI::Models::Responses::ResponseReasoningItem::Status::OrSymbol).void } + sig do + params( + status: OpenAI::Responses::ResponseReasoningItem::Status::OrSymbol + ).void + end attr_writer :status # A description of the chain of thought used by a reasoning model while generating @@ -36,12 +50,14 @@ module OpenAI sig do params( id: String, - summary: T::Array[T.any(OpenAI::Models::Responses::ResponseReasoningItem::Summary, OpenAI::Internal::AnyHash)], + summary: + T::Array[ + OpenAI::Responses::ResponseReasoningItem::Summary::OrHash + ], encrypted_content: T.nilable(String), - status: OpenAI::Models::Responses::ResponseReasoningItem::Status::OrSymbol, + status: OpenAI::Responses::ResponseReasoningItem::Status::OrSymbol, type: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # The unique identifier of the reasoning content. @@ -56,22 +72,28 @@ module OpenAI status: nil, # The type of the object. Always `reasoning`. type: :reasoning - ); end + ) + end + sig do - override - .returns( - { - id: String, - summary: T::Array[OpenAI::Models::Responses::ResponseReasoningItem::Summary], - type: Symbol, - encrypted_content: T.nilable(String), - status: OpenAI::Models::Responses::ResponseReasoningItem::Status::OrSymbol - } - ) + override.returns( + { + id: String, + summary: + T::Array[OpenAI::Responses::ResponseReasoningItem::Summary], + type: Symbol, + encrypted_content: T.nilable(String), + status: OpenAI::Responses::ResponseReasoningItem::Status::OrSymbol + } + ) + end + def to_hash end - def to_hash; end class Summary < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # A short summary of the reasoning used by the model when generating the response. sig { returns(String) } attr_accessor :text @@ -86,9 +108,12 @@ module OpenAI text:, # The type of the object. Always `summary_text`. type: :summary_text - ); end - sig { override.returns({text: String, type: Symbol}) } - def to_hash; end + ) + end + + sig { override.returns({ text: String, type: Symbol }) } + def to_hash + end end # The status of the item. One of `in_progress`, `completed`, or `incomplete`. @@ -96,15 +121,37 @@ module OpenAI module Status extend OpenAI::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::Responses::ResponseReasoningItem::Status) } + TaggedSymbol = + T.type_alias do + T.all(Symbol, OpenAI::Responses::ResponseReasoningItem::Status) + end OrSymbol = T.type_alias { T.any(Symbol, String) } - IN_PROGRESS = T.let(:in_progress, OpenAI::Models::Responses::ResponseReasoningItem::Status::TaggedSymbol) - COMPLETED = T.let(:completed, OpenAI::Models::Responses::ResponseReasoningItem::Status::TaggedSymbol) - INCOMPLETE = T.let(:incomplete, OpenAI::Models::Responses::ResponseReasoningItem::Status::TaggedSymbol) + IN_PROGRESS = + T.let( + :in_progress, + OpenAI::Responses::ResponseReasoningItem::Status::TaggedSymbol + ) + COMPLETED = + T.let( + :completed, + OpenAI::Responses::ResponseReasoningItem::Status::TaggedSymbol + ) + INCOMPLETE = + T.let( + :incomplete, + OpenAI::Responses::ResponseReasoningItem::Status::TaggedSymbol + ) - sig { override.returns(T::Array[OpenAI::Models::Responses::ResponseReasoningItem::Status::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[ + OpenAI::Responses::ResponseReasoningItem::Status::TaggedSymbol + ] + ) + end + def self.values + end end end end diff --git a/rbi/openai/models/responses/response_reasoning_summary_part_added_event.rbi b/rbi/openai/models/responses/response_reasoning_summary_part_added_event.rbi index 22c28d0f..260bed98 100644 --- a/rbi/openai/models/responses/response_reasoning_summary_part_added_event.rbi +++ b/rbi/openai/models/responses/response_reasoning_summary_part_added_event.rbi @@ -4,6 +4,8 @@ module OpenAI module Models module Responses class ResponseReasoningSummaryPartAddedEvent < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The ID of the item this summary part is associated with. sig { returns(String) } attr_accessor :item_id @@ -13,14 +15,18 @@ module OpenAI attr_accessor :output_index # The summary part that was added. - sig { returns(OpenAI::Models::Responses::ResponseReasoningSummaryPartAddedEvent::Part) } + sig do + returns( + OpenAI::Responses::ResponseReasoningSummaryPartAddedEvent::Part + ) + end attr_reader :part sig do params( - part: T.any(OpenAI::Models::Responses::ResponseReasoningSummaryPartAddedEvent::Part, OpenAI::Internal::AnyHash) - ) - .void + part: + OpenAI::Responses::ResponseReasoningSummaryPartAddedEvent::Part::OrHash + ).void end attr_writer :part @@ -37,11 +43,11 @@ module OpenAI params( item_id: String, output_index: Integer, - part: T.any(OpenAI::Models::Responses::ResponseReasoningSummaryPartAddedEvent::Part, OpenAI::Internal::AnyHash), + part: + OpenAI::Responses::ResponseReasoningSummaryPartAddedEvent::Part::OrHash, summary_index: Integer, type: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # The ID of the item this summary part is associated with. @@ -54,22 +60,28 @@ module OpenAI summary_index:, # The type of the event. Always `response.reasoning_summary_part.added`. type: :"response.reasoning_summary_part.added" - ); end + ) + end + sig do - override - .returns( - { - item_id: String, - output_index: Integer, - part: OpenAI::Models::Responses::ResponseReasoningSummaryPartAddedEvent::Part, - summary_index: Integer, - type: Symbol - } - ) + override.returns( + { + item_id: String, + output_index: Integer, + part: + OpenAI::Responses::ResponseReasoningSummaryPartAddedEvent::Part, + summary_index: Integer, + type: Symbol + } + ) + end + def to_hash end - def to_hash; end class Part < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The text of the summary part. sig { returns(String) } attr_accessor :text @@ -85,9 +97,12 @@ module OpenAI text:, # The type of the summary part. Always `summary_text`. type: :summary_text - ); end - sig { override.returns({text: String, type: Symbol}) } - def to_hash; end + ) + end + + sig { override.returns({ text: String, type: Symbol }) } + def to_hash + end end end end diff --git a/rbi/openai/models/responses/response_reasoning_summary_part_done_event.rbi b/rbi/openai/models/responses/response_reasoning_summary_part_done_event.rbi index 93ac8fbb..036aaa0d 100644 --- a/rbi/openai/models/responses/response_reasoning_summary_part_done_event.rbi +++ b/rbi/openai/models/responses/response_reasoning_summary_part_done_event.rbi @@ -4,6 +4,8 @@ module OpenAI module Models module Responses class ResponseReasoningSummaryPartDoneEvent < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The ID of the item this summary part is associated with. sig { returns(String) } attr_accessor :item_id @@ -13,14 +15,18 @@ module OpenAI attr_accessor :output_index # The completed summary part. - sig { returns(OpenAI::Models::Responses::ResponseReasoningSummaryPartDoneEvent::Part) } + sig do + returns( + OpenAI::Responses::ResponseReasoningSummaryPartDoneEvent::Part + ) + end attr_reader :part sig do params( - part: T.any(OpenAI::Models::Responses::ResponseReasoningSummaryPartDoneEvent::Part, OpenAI::Internal::AnyHash) - ) - .void + part: + OpenAI::Responses::ResponseReasoningSummaryPartDoneEvent::Part::OrHash + ).void end attr_writer :part @@ -37,11 +43,11 @@ module OpenAI params( item_id: String, output_index: Integer, - part: T.any(OpenAI::Models::Responses::ResponseReasoningSummaryPartDoneEvent::Part, OpenAI::Internal::AnyHash), + part: + OpenAI::Responses::ResponseReasoningSummaryPartDoneEvent::Part::OrHash, summary_index: Integer, type: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # The ID of the item this summary part is associated with. @@ -54,22 +60,28 @@ module OpenAI summary_index:, # The type of the event. Always `response.reasoning_summary_part.done`. type: :"response.reasoning_summary_part.done" - ); end + ) + end + sig do - override - .returns( - { - item_id: String, - output_index: Integer, - part: OpenAI::Models::Responses::ResponseReasoningSummaryPartDoneEvent::Part, - summary_index: Integer, - type: Symbol - } - ) + override.returns( + { + item_id: String, + output_index: Integer, + part: + OpenAI::Responses::ResponseReasoningSummaryPartDoneEvent::Part, + summary_index: Integer, + type: Symbol + } + ) + end + def to_hash end - def to_hash; end class Part < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The text of the summary part. sig { returns(String) } attr_accessor :text @@ -85,9 +97,12 @@ module OpenAI text:, # The type of the summary part. Always `summary_text`. type: :summary_text - ); end - sig { override.returns({text: String, type: Symbol}) } - def to_hash; end + ) + end + + sig { override.returns({ text: String, type: Symbol }) } + def to_hash + end end end end diff --git a/rbi/openai/models/responses/response_reasoning_summary_text_delta_event.rbi b/rbi/openai/models/responses/response_reasoning_summary_text_delta_event.rbi index 0b471aed..6fb92b4d 100644 --- a/rbi/openai/models/responses/response_reasoning_summary_text_delta_event.rbi +++ b/rbi/openai/models/responses/response_reasoning_summary_text_delta_event.rbi @@ -4,6 +4,8 @@ module OpenAI module Models module Responses class ResponseReasoningSummaryTextDeltaEvent < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The text delta that was added to the summary. sig { returns(String) } attr_accessor :delta @@ -26,8 +28,13 @@ module OpenAI # Emitted when a delta is added to a reasoning summary text. sig do - params(delta: String, item_id: String, output_index: Integer, summary_index: Integer, type: Symbol) - .returns(T.attached_class) + params( + delta: String, + item_id: String, + output_index: Integer, + summary_index: Integer, + type: Symbol + ).returns(T.attached_class) end def self.new( # The text delta that was added to the summary. @@ -40,18 +47,22 @@ module OpenAI summary_index:, # The type of the event. Always `response.reasoning_summary_text.delta`. type: :"response.reasoning_summary_text.delta" - ); end + ) + end + sig do - override - .returns({ - delta: String, - item_id: String, - output_index: Integer, - summary_index: Integer, - type: Symbol - }) + override.returns( + { + delta: String, + item_id: String, + output_index: Integer, + summary_index: Integer, + type: Symbol + } + ) + end + def to_hash end - def to_hash; end end end end diff --git a/rbi/openai/models/responses/response_reasoning_summary_text_done_event.rbi b/rbi/openai/models/responses/response_reasoning_summary_text_done_event.rbi index 6ff8c695..a9f0d59c 100644 --- a/rbi/openai/models/responses/response_reasoning_summary_text_done_event.rbi +++ b/rbi/openai/models/responses/response_reasoning_summary_text_done_event.rbi @@ -4,6 +4,8 @@ module OpenAI module Models module Responses class ResponseReasoningSummaryTextDoneEvent < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The ID of the item this summary text is associated with. sig { returns(String) } attr_accessor :item_id @@ -26,8 +28,13 @@ module OpenAI # Emitted when a reasoning summary text is completed. sig do - params(item_id: String, output_index: Integer, summary_index: Integer, text: String, type: Symbol) - .returns(T.attached_class) + params( + item_id: String, + output_index: Integer, + summary_index: Integer, + text: String, + type: Symbol + ).returns(T.attached_class) end def self.new( # The ID of the item this summary text is associated with. @@ -40,18 +47,22 @@ module OpenAI text:, # The type of the event. Always `response.reasoning_summary_text.done`. type: :"response.reasoning_summary_text.done" - ); end + ) + end + sig do - override - .returns({ - item_id: String, - output_index: Integer, - summary_index: Integer, - text: String, - type: Symbol - }) + override.returns( + { + item_id: String, + output_index: Integer, + summary_index: Integer, + text: String, + type: Symbol + } + ) + end + def to_hash end - def to_hash; end end end end diff --git a/rbi/openai/models/responses/response_refusal_delta_event.rbi b/rbi/openai/models/responses/response_refusal_delta_event.rbi index 204d391f..a89025e3 100644 --- a/rbi/openai/models/responses/response_refusal_delta_event.rbi +++ b/rbi/openai/models/responses/response_refusal_delta_event.rbi @@ -4,6 +4,8 @@ module OpenAI module Models module Responses class ResponseRefusalDeltaEvent < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The index of the content part that the refusal text is added to. sig { returns(Integer) } attr_accessor :content_index @@ -26,8 +28,13 @@ module OpenAI # Emitted when there is a partial refusal text. sig do - params(content_index: Integer, delta: String, item_id: String, output_index: Integer, type: Symbol) - .returns(T.attached_class) + params( + content_index: Integer, + delta: String, + item_id: String, + output_index: Integer, + type: Symbol + ).returns(T.attached_class) end def self.new( # The index of the content part that the refusal text is added to. @@ -40,18 +47,22 @@ module OpenAI output_index:, # The type of the event. Always `response.refusal.delta`. type: :"response.refusal.delta" - ); end + ) + end + sig do - override - .returns({ - content_index: Integer, - delta: String, - item_id: String, - output_index: Integer, - type: Symbol - }) + override.returns( + { + content_index: Integer, + delta: String, + item_id: String, + output_index: Integer, + type: Symbol + } + ) + end + def to_hash end - def to_hash; end end end end diff --git a/rbi/openai/models/responses/response_refusal_done_event.rbi b/rbi/openai/models/responses/response_refusal_done_event.rbi index 5bc2d764..0100485a 100644 --- a/rbi/openai/models/responses/response_refusal_done_event.rbi +++ b/rbi/openai/models/responses/response_refusal_done_event.rbi @@ -4,6 +4,8 @@ module OpenAI module Models module Responses class ResponseRefusalDoneEvent < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The index of the content part that the refusal text is finalized. sig { returns(Integer) } attr_accessor :content_index @@ -32,8 +34,7 @@ module OpenAI output_index: Integer, refusal: String, type: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # The index of the content part that the refusal text is finalized. @@ -46,18 +47,22 @@ module OpenAI refusal:, # The type of the event. Always `response.refusal.done`. type: :"response.refusal.done" - ); end + ) + end + sig do - override - .returns({ - content_index: Integer, - item_id: String, - output_index: Integer, - refusal: String, - type: Symbol - }) + override.returns( + { + content_index: Integer, + item_id: String, + output_index: Integer, + refusal: String, + type: Symbol + } + ) + end + def to_hash end - def to_hash; end end end end diff --git a/rbi/openai/models/responses/response_retrieve_params.rbi b/rbi/openai/models/responses/response_retrieve_params.rbi index 876e71b5..95522e58 100644 --- a/rbi/openai/models/responses/response_retrieve_params.rbi +++ b/rbi/openai/models/responses/response_retrieve_params.rbi @@ -7,37 +7,49 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Additional fields to include in the response. See the `include` parameter for # Response creation above for more information. - sig { returns(T.nilable(T::Array[OpenAI::Models::Responses::ResponseIncludable::OrSymbol])) } + sig do + returns( + T.nilable(T::Array[OpenAI::Responses::ResponseIncludable::OrSymbol]) + ) + end attr_reader :include - sig { params(include: T::Array[OpenAI::Models::Responses::ResponseIncludable::OrSymbol]).void } + sig do + params( + include: T::Array[OpenAI::Responses::ResponseIncludable::OrSymbol] + ).void + end attr_writer :include sig do params( - include: T::Array[OpenAI::Models::Responses::ResponseIncludable::OrSymbol], - request_options: T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash) - ) - .returns(T.attached_class) + include: T::Array[OpenAI::Responses::ResponseIncludable::OrSymbol], + request_options: OpenAI::RequestOptions::OrHash + ).returns(T.attached_class) end def self.new( # Additional fields to include in the response. See the `include` parameter for # Response creation above for more information. include: nil, request_options: {} - ); end + ) + end + sig do - override - .returns( - { - include: T::Array[OpenAI::Models::Responses::ResponseIncludable::OrSymbol], - request_options: OpenAI::RequestOptions - } - ) + override.returns( + { + include: + T::Array[OpenAI::Responses::ResponseIncludable::OrSymbol], + request_options: OpenAI::RequestOptions + } + ) + end + def to_hash end - def to_hash; end end end end diff --git a/rbi/openai/models/responses/response_status.rbi b/rbi/openai/models/responses/response_status.rbi index 7fb2ba80..ed8a5a5d 100644 --- a/rbi/openai/models/responses/response_status.rbi +++ b/rbi/openai/models/responses/response_status.rbi @@ -8,16 +8,25 @@ module OpenAI module ResponseStatus extend OpenAI::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::Responses::ResponseStatus) } + TaggedSymbol = + T.type_alias { T.all(Symbol, OpenAI::Responses::ResponseStatus) } OrSymbol = T.type_alias { T.any(Symbol, String) } - COMPLETED = T.let(:completed, OpenAI::Models::Responses::ResponseStatus::TaggedSymbol) - FAILED = T.let(:failed, OpenAI::Models::Responses::ResponseStatus::TaggedSymbol) - IN_PROGRESS = T.let(:in_progress, OpenAI::Models::Responses::ResponseStatus::TaggedSymbol) - INCOMPLETE = T.let(:incomplete, OpenAI::Models::Responses::ResponseStatus::TaggedSymbol) + COMPLETED = + T.let(:completed, OpenAI::Responses::ResponseStatus::TaggedSymbol) + FAILED = T.let(:failed, OpenAI::Responses::ResponseStatus::TaggedSymbol) + IN_PROGRESS = + T.let(:in_progress, OpenAI::Responses::ResponseStatus::TaggedSymbol) + INCOMPLETE = + T.let(:incomplete, OpenAI::Responses::ResponseStatus::TaggedSymbol) - sig { override.returns(T::Array[OpenAI::Models::Responses::ResponseStatus::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[OpenAI::Responses::ResponseStatus::TaggedSymbol] + ) + end + def self.values + end end end end diff --git a/rbi/openai/models/responses/response_stream_event.rbi b/rbi/openai/models/responses/response_stream_event.rbi index 6234c3c6..de4fe138 100644 --- a/rbi/openai/models/responses/response_stream_event.rbi +++ b/rbi/openai/models/responses/response_stream_event.rbi @@ -7,13 +7,55 @@ module OpenAI module ResponseStreamEvent extend OpenAI::Internal::Type::Union - sig do - override - .returns( - [OpenAI::Models::Responses::ResponseAudioDeltaEvent, OpenAI::Models::Responses::ResponseAudioDoneEvent, OpenAI::Models::Responses::ResponseAudioTranscriptDeltaEvent, OpenAI::Models::Responses::ResponseAudioTranscriptDoneEvent, OpenAI::Models::Responses::ResponseCodeInterpreterCallCodeDeltaEvent, OpenAI::Models::Responses::ResponseCodeInterpreterCallCodeDoneEvent, OpenAI::Models::Responses::ResponseCodeInterpreterCallCompletedEvent, OpenAI::Models::Responses::ResponseCodeInterpreterCallInProgressEvent, OpenAI::Models::Responses::ResponseCodeInterpreterCallInterpretingEvent, OpenAI::Models::Responses::ResponseCompletedEvent, OpenAI::Models::Responses::ResponseContentPartAddedEvent, OpenAI::Models::Responses::ResponseContentPartDoneEvent, OpenAI::Models::Responses::ResponseCreatedEvent, OpenAI::Models::Responses::ResponseErrorEvent, OpenAI::Models::Responses::ResponseFileSearchCallCompletedEvent, OpenAI::Models::Responses::ResponseFileSearchCallInProgressEvent, OpenAI::Models::Responses::ResponseFileSearchCallSearchingEvent, OpenAI::Models::Responses::ResponseFunctionCallArgumentsDeltaEvent, OpenAI::Models::Responses::ResponseFunctionCallArgumentsDoneEvent, OpenAI::Models::Responses::ResponseInProgressEvent, OpenAI::Models::Responses::ResponseFailedEvent, OpenAI::Models::Responses::ResponseIncompleteEvent, OpenAI::Models::Responses::ResponseOutputItemAddedEvent, OpenAI::Models::Responses::ResponseOutputItemDoneEvent, OpenAI::Models::Responses::ResponseReasoningSummaryPartAddedEvent, OpenAI::Models::Responses::ResponseReasoningSummaryPartDoneEvent, OpenAI::Models::Responses::ResponseReasoningSummaryTextDeltaEvent, OpenAI::Models::Responses::ResponseReasoningSummaryTextDoneEvent, OpenAI::Models::Responses::ResponseRefusalDeltaEvent, OpenAI::Models::Responses::ResponseRefusalDoneEvent, OpenAI::Models::Responses::ResponseTextAnnotationDeltaEvent, OpenAI::Models::Responses::ResponseTextDeltaEvent, OpenAI::Models::Responses::ResponseTextDoneEvent, OpenAI::Models::Responses::ResponseWebSearchCallCompletedEvent, OpenAI::Models::Responses::ResponseWebSearchCallInProgressEvent, OpenAI::Models::Responses::ResponseWebSearchCallSearchingEvent] + Variants = + T.type_alias do + T.any( + OpenAI::Responses::ResponseAudioDeltaEvent, + OpenAI::Responses::ResponseAudioDoneEvent, + OpenAI::Responses::ResponseAudioTranscriptDeltaEvent, + OpenAI::Responses::ResponseAudioTranscriptDoneEvent, + OpenAI::Responses::ResponseCodeInterpreterCallCodeDeltaEvent, + OpenAI::Responses::ResponseCodeInterpreterCallCodeDoneEvent, + OpenAI::Responses::ResponseCodeInterpreterCallCompletedEvent, + OpenAI::Responses::ResponseCodeInterpreterCallInProgressEvent, + OpenAI::Responses::ResponseCodeInterpreterCallInterpretingEvent, + OpenAI::Responses::ResponseCompletedEvent, + OpenAI::Responses::ResponseContentPartAddedEvent, + OpenAI::Responses::ResponseContentPartDoneEvent, + OpenAI::Responses::ResponseCreatedEvent, + OpenAI::Responses::ResponseErrorEvent, + OpenAI::Responses::ResponseFileSearchCallCompletedEvent, + OpenAI::Responses::ResponseFileSearchCallInProgressEvent, + OpenAI::Responses::ResponseFileSearchCallSearchingEvent, + OpenAI::Responses::ResponseFunctionCallArgumentsDeltaEvent, + OpenAI::Responses::ResponseFunctionCallArgumentsDoneEvent, + OpenAI::Responses::ResponseInProgressEvent, + OpenAI::Responses::ResponseFailedEvent, + OpenAI::Responses::ResponseIncompleteEvent, + OpenAI::Responses::ResponseOutputItemAddedEvent, + OpenAI::Responses::ResponseOutputItemDoneEvent, + OpenAI::Responses::ResponseReasoningSummaryPartAddedEvent, + OpenAI::Responses::ResponseReasoningSummaryPartDoneEvent, + OpenAI::Responses::ResponseReasoningSummaryTextDeltaEvent, + OpenAI::Responses::ResponseReasoningSummaryTextDoneEvent, + OpenAI::Responses::ResponseRefusalDeltaEvent, + OpenAI::Responses::ResponseRefusalDoneEvent, + OpenAI::Responses::ResponseTextAnnotationDeltaEvent, + OpenAI::Responses::ResponseTextDeltaEvent, + OpenAI::Responses::ResponseTextDoneEvent, + OpenAI::Responses::ResponseWebSearchCallCompletedEvent, + OpenAI::Responses::ResponseWebSearchCallInProgressEvent, + OpenAI::Responses::ResponseWebSearchCallSearchingEvent ) + end + + sig do + override.returns( + T::Array[OpenAI::Responses::ResponseStreamEvent::Variants] + ) + end + def self.variants end - def self.variants; end end end end diff --git a/rbi/openai/models/responses/response_text_annotation_delta_event.rbi b/rbi/openai/models/responses/response_text_annotation_delta_event.rbi index 91bc1793..c235f425 100644 --- a/rbi/openai/models/responses/response_text_annotation_delta_event.rbi +++ b/rbi/openai/models/responses/response_text_annotation_delta_event.rbi @@ -4,13 +4,15 @@ module OpenAI module Models module Responses class ResponseTextAnnotationDeltaEvent < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # A citation to a file. sig do returns( T.any( - OpenAI::Models::Responses::ResponseTextAnnotationDeltaEvent::Annotation::FileCitation, - OpenAI::Models::Responses::ResponseTextAnnotationDeltaEvent::Annotation::URLCitation, - OpenAI::Models::Responses::ResponseTextAnnotationDeltaEvent::Annotation::FilePath + OpenAI::Responses::ResponseTextAnnotationDeltaEvent::Annotation::FileCitation, + OpenAI::Responses::ResponseTextAnnotationDeltaEvent::Annotation::URLCitation, + OpenAI::Responses::ResponseTextAnnotationDeltaEvent::Annotation::FilePath ) ) end @@ -39,19 +41,18 @@ module OpenAI # Emitted when a text annotation is added. sig do params( - annotation: T.any( - OpenAI::Models::Responses::ResponseTextAnnotationDeltaEvent::Annotation::FileCitation, - OpenAI::Internal::AnyHash, - OpenAI::Models::Responses::ResponseTextAnnotationDeltaEvent::Annotation::URLCitation, - OpenAI::Models::Responses::ResponseTextAnnotationDeltaEvent::Annotation::FilePath - ), + annotation: + T.any( + OpenAI::Responses::ResponseTextAnnotationDeltaEvent::Annotation::FileCitation::OrHash, + OpenAI::Responses::ResponseTextAnnotationDeltaEvent::Annotation::URLCitation::OrHash, + OpenAI::Responses::ResponseTextAnnotationDeltaEvent::Annotation::FilePath::OrHash + ), annotation_index: Integer, content_index: Integer, item_id: String, output_index: Integer, type: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # A citation to a file. @@ -66,31 +67,46 @@ module OpenAI output_index:, # The type of the event. Always `response.output_text.annotation.added`. type: :"response.output_text.annotation.added" - ); end + ) + end + sig do - override - .returns( - { - annotation: T.any( - OpenAI::Models::Responses::ResponseTextAnnotationDeltaEvent::Annotation::FileCitation, - OpenAI::Models::Responses::ResponseTextAnnotationDeltaEvent::Annotation::URLCitation, - OpenAI::Models::Responses::ResponseTextAnnotationDeltaEvent::Annotation::FilePath + override.returns( + { + annotation: + T.any( + OpenAI::Responses::ResponseTextAnnotationDeltaEvent::Annotation::FileCitation, + OpenAI::Responses::ResponseTextAnnotationDeltaEvent::Annotation::URLCitation, + OpenAI::Responses::ResponseTextAnnotationDeltaEvent::Annotation::FilePath ), - annotation_index: Integer, - content_index: Integer, - item_id: String, - output_index: Integer, - type: Symbol - } - ) + annotation_index: Integer, + content_index: Integer, + item_id: String, + output_index: Integer, + type: Symbol + } + ) + end + def to_hash end - def to_hash; end # A citation to a file. module Annotation extend OpenAI::Internal::Type::Union + Variants = + T.type_alias do + T.any( + OpenAI::Responses::ResponseTextAnnotationDeltaEvent::Annotation::FileCitation, + OpenAI::Responses::ResponseTextAnnotationDeltaEvent::Annotation::URLCitation, + OpenAI::Responses::ResponseTextAnnotationDeltaEvent::Annotation::FilePath + ) + end + class FileCitation < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The ID of the file. sig { returns(String) } attr_accessor :file_id @@ -104,7 +120,11 @@ module OpenAI attr_accessor :type # A citation to a file. - sig { params(file_id: String, index: Integer, type: Symbol).returns(T.attached_class) } + sig do + params(file_id: String, index: Integer, type: Symbol).returns( + T.attached_class + ) + end def self.new( # The ID of the file. file_id:, @@ -112,12 +132,22 @@ module OpenAI index:, # The type of the file citation. Always `file_citation`. type: :file_citation - ); end - sig { override.returns({file_id: String, index: Integer, type: Symbol}) } - def to_hash; end + ) + end + + sig do + override.returns( + { file_id: String, index: Integer, type: Symbol } + ) + end + def to_hash + end end class URLCitation < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The index of the last character of the URL citation in the message. sig { returns(Integer) } attr_accessor :end_index @@ -140,8 +170,13 @@ module OpenAI # A citation for a web resource used to generate a model response. sig do - params(end_index: Integer, start_index: Integer, title: String, url: String, type: Symbol) - .returns(T.attached_class) + params( + end_index: Integer, + start_index: Integer, + title: String, + url: String, + type: Symbol + ).returns(T.attached_class) end def self.new( # The index of the last character of the URL citation in the message. @@ -154,7 +189,9 @@ module OpenAI url:, # The type of the URL citation. Always `url_citation`. type: :url_citation - ); end + ) + end + sig do override.returns( { @@ -166,10 +203,14 @@ module OpenAI } ) end - def to_hash; end + def to_hash + end end class FilePath < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The ID of the file. sig { returns(String) } attr_accessor :file_id @@ -183,7 +224,11 @@ module OpenAI attr_accessor :type # A path to a file. - sig { params(file_id: String, index: Integer, type: Symbol).returns(T.attached_class) } + sig do + params(file_id: String, index: Integer, type: Symbol).returns( + T.attached_class + ) + end def self.new( # The ID of the file. file_id:, @@ -191,18 +236,27 @@ module OpenAI index:, # The type of the file path. Always `file_path`. type: :file_path - ); end - sig { override.returns({file_id: String, index: Integer, type: Symbol}) } - def to_hash; end + ) + end + + sig do + override.returns( + { file_id: String, index: Integer, type: Symbol } + ) + end + def to_hash + end end sig do - override - .returns( - [OpenAI::Models::Responses::ResponseTextAnnotationDeltaEvent::Annotation::FileCitation, OpenAI::Models::Responses::ResponseTextAnnotationDeltaEvent::Annotation::URLCitation, OpenAI::Models::Responses::ResponseTextAnnotationDeltaEvent::Annotation::FilePath] - ) + override.returns( + T::Array[ + OpenAI::Responses::ResponseTextAnnotationDeltaEvent::Annotation::Variants + ] + ) + end + def self.variants end - def self.variants; end end end end diff --git a/rbi/openai/models/responses/response_text_config.rbi b/rbi/openai/models/responses/response_text_config.rbi index 2f1c517e..ddd0d65c 100644 --- a/rbi/openai/models/responses/response_text_config.rbi +++ b/rbi/openai/models/responses/response_text_config.rbi @@ -4,6 +4,8 @@ module OpenAI module Models module Responses class ResponseTextConfig < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # An object specifying the format that the model must output. # # Configuring `{ "type": "json_schema" }` enables Structured Outputs, which @@ -21,9 +23,9 @@ module OpenAI returns( T.nilable( T.any( - OpenAI::Models::ResponseFormatText, - OpenAI::Models::Responses::ResponseFormatTextJSONSchemaConfig, - OpenAI::Models::ResponseFormatJSONObject + OpenAI::ResponseFormatText, + OpenAI::Responses::ResponseFormatTextJSONSchemaConfig, + OpenAI::ResponseFormatJSONObject ) ) ) @@ -32,14 +34,13 @@ module OpenAI sig do params( - format_: T.any( - OpenAI::Models::ResponseFormatText, - OpenAI::Internal::AnyHash, - OpenAI::Models::Responses::ResponseFormatTextJSONSchemaConfig, - OpenAI::Models::ResponseFormatJSONObject - ) - ) - .void + format_: + T.any( + OpenAI::ResponseFormatText::OrHash, + OpenAI::Responses::ResponseFormatTextJSONSchemaConfig::OrHash, + OpenAI::ResponseFormatJSONObject::OrHash + ) + ).void end attr_writer :format_ @@ -50,14 +51,13 @@ module OpenAI # - [Structured Outputs](https://platform.openai.com/docs/guides/structured-outputs) sig do params( - format_: T.any( - OpenAI::Models::ResponseFormatText, - OpenAI::Internal::AnyHash, - OpenAI::Models::Responses::ResponseFormatTextJSONSchemaConfig, - OpenAI::Models::ResponseFormatJSONObject - ) - ) - .returns(T.attached_class) + format_: + T.any( + OpenAI::ResponseFormatText::OrHash, + OpenAI::Responses::ResponseFormatTextJSONSchemaConfig::OrHash, + OpenAI::ResponseFormatJSONObject::OrHash + ) + ).returns(T.attached_class) end def self.new( # An object specifying the format that the model must output. @@ -74,20 +74,23 @@ module OpenAI # ensures the message the model generates is valid JSON. Using `json_schema` is # preferred for models that support it. format_: nil - ); end + ) + end + sig do - override - .returns( - { - format_: T.any( - OpenAI::Models::ResponseFormatText, - OpenAI::Models::Responses::ResponseFormatTextJSONSchemaConfig, - OpenAI::Models::ResponseFormatJSONObject + override.returns( + { + format_: + T.any( + OpenAI::ResponseFormatText, + OpenAI::Responses::ResponseFormatTextJSONSchemaConfig, + OpenAI::ResponseFormatJSONObject ) - } - ) + } + ) + end + def to_hash end - def to_hash; end end end end diff --git a/rbi/openai/models/responses/response_text_delta_event.rbi b/rbi/openai/models/responses/response_text_delta_event.rbi index 29ea7431..5b4d13ac 100644 --- a/rbi/openai/models/responses/response_text_delta_event.rbi +++ b/rbi/openai/models/responses/response_text_delta_event.rbi @@ -4,6 +4,8 @@ module OpenAI module Models module Responses class ResponseTextDeltaEvent < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The index of the content part that the text delta was added to. sig { returns(Integer) } attr_accessor :content_index @@ -26,8 +28,13 @@ module OpenAI # Emitted when there is an additional text delta. sig do - params(content_index: Integer, delta: String, item_id: String, output_index: Integer, type: Symbol) - .returns(T.attached_class) + params( + content_index: Integer, + delta: String, + item_id: String, + output_index: Integer, + type: Symbol + ).returns(T.attached_class) end def self.new( # The index of the content part that the text delta was added to. @@ -40,18 +47,22 @@ module OpenAI output_index:, # The type of the event. Always `response.output_text.delta`. type: :"response.output_text.delta" - ); end + ) + end + sig do - override - .returns({ - content_index: Integer, - delta: String, - item_id: String, - output_index: Integer, - type: Symbol - }) + override.returns( + { + content_index: Integer, + delta: String, + item_id: String, + output_index: Integer, + type: Symbol + } + ) + end + def to_hash end - def to_hash; end end end end diff --git a/rbi/openai/models/responses/response_text_done_event.rbi b/rbi/openai/models/responses/response_text_done_event.rbi index 40459549..1b05e949 100644 --- a/rbi/openai/models/responses/response_text_done_event.rbi +++ b/rbi/openai/models/responses/response_text_done_event.rbi @@ -4,6 +4,8 @@ module OpenAI module Models module Responses class ResponseTextDoneEvent < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The index of the content part that the text content is finalized. sig { returns(Integer) } attr_accessor :content_index @@ -26,8 +28,13 @@ module OpenAI # Emitted when text content is finalized. sig do - params(content_index: Integer, item_id: String, output_index: Integer, text: String, type: Symbol) - .returns(T.attached_class) + params( + content_index: Integer, + item_id: String, + output_index: Integer, + text: String, + type: Symbol + ).returns(T.attached_class) end def self.new( # The index of the content part that the text content is finalized. @@ -40,18 +47,22 @@ module OpenAI text:, # The type of the event. Always `response.output_text.done`. type: :"response.output_text.done" - ); end + ) + end + sig do - override - .returns({ - content_index: Integer, - item_id: String, - output_index: Integer, - text: String, - type: Symbol - }) + override.returns( + { + content_index: Integer, + item_id: String, + output_index: Integer, + text: String, + type: Symbol + } + ) + end + def to_hash end - def to_hash; end end end end diff --git a/rbi/openai/models/responses/response_usage.rbi b/rbi/openai/models/responses/response_usage.rbi index f435b178..e9e0c3bc 100644 --- a/rbi/openai/models/responses/response_usage.rbi +++ b/rbi/openai/models/responses/response_usage.rbi @@ -4,19 +4,21 @@ module OpenAI module Models module Responses class ResponseUsage < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The number of input tokens. sig { returns(Integer) } attr_accessor :input_tokens # A detailed breakdown of the input tokens. - sig { returns(OpenAI::Models::Responses::ResponseUsage::InputTokensDetails) } + sig { returns(OpenAI::Responses::ResponseUsage::InputTokensDetails) } attr_reader :input_tokens_details sig do params( - input_tokens_details: T.any(OpenAI::Models::Responses::ResponseUsage::InputTokensDetails, OpenAI::Internal::AnyHash) - ) - .void + input_tokens_details: + OpenAI::Responses::ResponseUsage::InputTokensDetails::OrHash + ).void end attr_writer :input_tokens_details @@ -25,14 +27,14 @@ module OpenAI attr_accessor :output_tokens # A detailed breakdown of the output tokens. - sig { returns(OpenAI::Models::Responses::ResponseUsage::OutputTokensDetails) } + sig { returns(OpenAI::Responses::ResponseUsage::OutputTokensDetails) } attr_reader :output_tokens_details sig do params( - output_tokens_details: T.any(OpenAI::Models::Responses::ResponseUsage::OutputTokensDetails, OpenAI::Internal::AnyHash) - ) - .void + output_tokens_details: + OpenAI::Responses::ResponseUsage::OutputTokensDetails::OrHash + ).void end attr_writer :output_tokens_details @@ -45,12 +47,13 @@ module OpenAI sig do params( input_tokens: Integer, - input_tokens_details: T.any(OpenAI::Models::Responses::ResponseUsage::InputTokensDetails, OpenAI::Internal::AnyHash), + input_tokens_details: + OpenAI::Responses::ResponseUsage::InputTokensDetails::OrHash, output_tokens: Integer, - output_tokens_details: T.any(OpenAI::Models::Responses::ResponseUsage::OutputTokensDetails, OpenAI::Internal::AnyHash), + output_tokens_details: + OpenAI::Responses::ResponseUsage::OutputTokensDetails::OrHash, total_tokens: Integer - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # The number of input tokens. @@ -63,22 +66,29 @@ module OpenAI output_tokens_details:, # The total number of tokens used. total_tokens: - ); end + ) + end + sig do - override - .returns( - { - input_tokens: Integer, - input_tokens_details: OpenAI::Models::Responses::ResponseUsage::InputTokensDetails, - output_tokens: Integer, - output_tokens_details: OpenAI::Models::Responses::ResponseUsage::OutputTokensDetails, - total_tokens: Integer - } - ) + override.returns( + { + input_tokens: Integer, + input_tokens_details: + OpenAI::Responses::ResponseUsage::InputTokensDetails, + output_tokens: Integer, + output_tokens_details: + OpenAI::Responses::ResponseUsage::OutputTokensDetails, + total_tokens: Integer + } + ) + end + def to_hash end - def to_hash; end class InputTokensDetails < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The number of tokens that were retrieved from the cache. # [More on prompt caching](https://platform.openai.com/docs/guides/prompt-caching). sig { returns(Integer) } @@ -90,12 +100,18 @@ module OpenAI # The number of tokens that were retrieved from the cache. # [More on prompt caching](https://platform.openai.com/docs/guides/prompt-caching). cached_tokens: - ); end - sig { override.returns({cached_tokens: Integer}) } - def to_hash; end + ) + end + + sig { override.returns({ cached_tokens: Integer }) } + def to_hash + end end class OutputTokensDetails < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The number of reasoning tokens. sig { returns(Integer) } attr_accessor :reasoning_tokens @@ -105,9 +121,12 @@ module OpenAI def self.new( # The number of reasoning tokens. reasoning_tokens: - ); end - sig { override.returns({reasoning_tokens: Integer}) } - def to_hash; end + ) + end + + sig { override.returns({ reasoning_tokens: Integer }) } + def to_hash + end end end end diff --git a/rbi/openai/models/responses/response_web_search_call_completed_event.rbi b/rbi/openai/models/responses/response_web_search_call_completed_event.rbi index 1f479679..10e66da7 100644 --- a/rbi/openai/models/responses/response_web_search_call_completed_event.rbi +++ b/rbi/openai/models/responses/response_web_search_call_completed_event.rbi @@ -4,6 +4,8 @@ module OpenAI module Models module Responses class ResponseWebSearchCallCompletedEvent < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Unique ID for the output item associated with the web search call. sig { returns(String) } attr_accessor :item_id @@ -17,7 +19,11 @@ module OpenAI attr_accessor :type # Emitted when a web search call is completed. - sig { params(item_id: String, output_index: Integer, type: Symbol).returns(T.attached_class) } + sig do + params(item_id: String, output_index: Integer, type: Symbol).returns( + T.attached_class + ) + end def self.new( # Unique ID for the output item associated with the web search call. item_id:, @@ -25,9 +31,16 @@ module OpenAI output_index:, # The type of the event. Always `response.web_search_call.completed`. type: :"response.web_search_call.completed" - ); end - sig { override.returns({item_id: String, output_index: Integer, type: Symbol}) } - def to_hash; end + ) + end + + sig do + override.returns( + { item_id: String, output_index: Integer, type: Symbol } + ) + end + def to_hash + end end end end diff --git a/rbi/openai/models/responses/response_web_search_call_in_progress_event.rbi b/rbi/openai/models/responses/response_web_search_call_in_progress_event.rbi index f8c355d5..22a00bbf 100644 --- a/rbi/openai/models/responses/response_web_search_call_in_progress_event.rbi +++ b/rbi/openai/models/responses/response_web_search_call_in_progress_event.rbi @@ -4,6 +4,8 @@ module OpenAI module Models module Responses class ResponseWebSearchCallInProgressEvent < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Unique ID for the output item associated with the web search call. sig { returns(String) } attr_accessor :item_id @@ -17,7 +19,11 @@ module OpenAI attr_accessor :type # Emitted when a web search call is initiated. - sig { params(item_id: String, output_index: Integer, type: Symbol).returns(T.attached_class) } + sig do + params(item_id: String, output_index: Integer, type: Symbol).returns( + T.attached_class + ) + end def self.new( # Unique ID for the output item associated with the web search call. item_id:, @@ -25,9 +31,16 @@ module OpenAI output_index:, # The type of the event. Always `response.web_search_call.in_progress`. type: :"response.web_search_call.in_progress" - ); end - sig { override.returns({item_id: String, output_index: Integer, type: Symbol}) } - def to_hash; end + ) + end + + sig do + override.returns( + { item_id: String, output_index: Integer, type: Symbol } + ) + end + def to_hash + end end end end diff --git a/rbi/openai/models/responses/response_web_search_call_searching_event.rbi b/rbi/openai/models/responses/response_web_search_call_searching_event.rbi index 0cffcfae..1d1b8d70 100644 --- a/rbi/openai/models/responses/response_web_search_call_searching_event.rbi +++ b/rbi/openai/models/responses/response_web_search_call_searching_event.rbi @@ -4,6 +4,8 @@ module OpenAI module Models module Responses class ResponseWebSearchCallSearchingEvent < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Unique ID for the output item associated with the web search call. sig { returns(String) } attr_accessor :item_id @@ -17,7 +19,11 @@ module OpenAI attr_accessor :type # Emitted when a web search call is executing. - sig { params(item_id: String, output_index: Integer, type: Symbol).returns(T.attached_class) } + sig do + params(item_id: String, output_index: Integer, type: Symbol).returns( + T.attached_class + ) + end def self.new( # Unique ID for the output item associated with the web search call. item_id:, @@ -25,9 +31,16 @@ module OpenAI output_index:, # The type of the event. Always `response.web_search_call.searching`. type: :"response.web_search_call.searching" - ); end - sig { override.returns({item_id: String, output_index: Integer, type: Symbol}) } - def to_hash; end + ) + end + + sig do + override.returns( + { item_id: String, output_index: Integer, type: Symbol } + ) + end + def to_hash + end end end end diff --git a/rbi/openai/models/responses/tool.rbi b/rbi/openai/models/responses/tool.rbi index dd20795d..f9eb832e 100644 --- a/rbi/openai/models/responses/tool.rbi +++ b/rbi/openai/models/responses/tool.rbi @@ -7,13 +7,19 @@ module OpenAI module Tool extend OpenAI::Internal::Type::Union - sig do - override - .returns( - [OpenAI::Models::Responses::FileSearchTool, OpenAI::Models::Responses::FunctionTool, OpenAI::Models::Responses::ComputerTool, OpenAI::Models::Responses::WebSearchTool] + Variants = + T.type_alias do + T.any( + OpenAI::Responses::FileSearchTool, + OpenAI::Responses::FunctionTool, + OpenAI::Responses::ComputerTool, + OpenAI::Responses::WebSearchTool ) + end + + sig { override.returns(T::Array[OpenAI::Responses::Tool::Variants]) } + def self.variants end - def self.variants; end end end end diff --git a/rbi/openai/models/responses/tool_choice_function.rbi b/rbi/openai/models/responses/tool_choice_function.rbi index 98de2eb9..44ea5976 100644 --- a/rbi/openai/models/responses/tool_choice_function.rbi +++ b/rbi/openai/models/responses/tool_choice_function.rbi @@ -4,6 +4,8 @@ module OpenAI module Models module Responses class ToolChoiceFunction < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The name of the function to call. sig { returns(String) } attr_accessor :name @@ -19,9 +21,12 @@ module OpenAI name:, # For function calling, the type is always `function`. type: :function - ); end - sig { override.returns({name: String, type: Symbol}) } - def to_hash; end + ) + end + + sig { override.returns({ name: String, type: Symbol }) } + def to_hash + end end end end diff --git a/rbi/openai/models/responses/tool_choice_options.rbi b/rbi/openai/models/responses/tool_choice_options.rbi index 793acf3c..01f24950 100644 --- a/rbi/openai/models/responses/tool_choice_options.rbi +++ b/rbi/openai/models/responses/tool_choice_options.rbi @@ -14,15 +14,22 @@ module OpenAI module ToolChoiceOptions extend OpenAI::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::Responses::ToolChoiceOptions) } + TaggedSymbol = + T.type_alias { T.all(Symbol, OpenAI::Responses::ToolChoiceOptions) } OrSymbol = T.type_alias { T.any(Symbol, String) } - NONE = T.let(:none, OpenAI::Models::Responses::ToolChoiceOptions::TaggedSymbol) - AUTO = T.let(:auto, OpenAI::Models::Responses::ToolChoiceOptions::TaggedSymbol) - REQUIRED = T.let(:required, OpenAI::Models::Responses::ToolChoiceOptions::TaggedSymbol) + NONE = T.let(:none, OpenAI::Responses::ToolChoiceOptions::TaggedSymbol) + AUTO = T.let(:auto, OpenAI::Responses::ToolChoiceOptions::TaggedSymbol) + REQUIRED = + T.let(:required, OpenAI::Responses::ToolChoiceOptions::TaggedSymbol) - sig { override.returns(T::Array[OpenAI::Models::Responses::ToolChoiceOptions::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[OpenAI::Responses::ToolChoiceOptions::TaggedSymbol] + ) + end + def self.values + end end end end diff --git a/rbi/openai/models/responses/tool_choice_types.rbi b/rbi/openai/models/responses/tool_choice_types.rbi index 943a8c1f..1013d8f9 100644 --- a/rbi/openai/models/responses/tool_choice_types.rbi +++ b/rbi/openai/models/responses/tool_choice_types.rbi @@ -4,6 +4,8 @@ module OpenAI module Models module Responses class ToolChoiceTypes < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The type of hosted tool the model should to use. Learn more about # [built-in tools](https://platform.openai.com/docs/guides/tools). # @@ -12,12 +14,16 @@ module OpenAI # - `file_search` # - `web_search_preview` # - `computer_use_preview` - sig { returns(OpenAI::Models::Responses::ToolChoiceTypes::Type::OrSymbol) } + sig { returns(OpenAI::Responses::ToolChoiceTypes::Type::OrSymbol) } attr_accessor :type # Indicates that the model should use a built-in tool to generate a response. # [Learn more about built-in tools](https://platform.openai.com/docs/guides/tools). - sig { params(type: OpenAI::Models::Responses::ToolChoiceTypes::Type::OrSymbol).returns(T.attached_class) } + sig do + params( + type: OpenAI::Responses::ToolChoiceTypes::Type::OrSymbol + ).returns(T.attached_class) + end def self.new( # The type of hosted tool the model should to use. Learn more about # [built-in tools](https://platform.openai.com/docs/guides/tools). @@ -28,9 +34,16 @@ module OpenAI # - `web_search_preview` # - `computer_use_preview` type: - ); end - sig { override.returns({type: OpenAI::Models::Responses::ToolChoiceTypes::Type::OrSymbol}) } - def to_hash; end + ) + end + + sig do + override.returns( + { type: OpenAI::Responses::ToolChoiceTypes::Type::OrSymbol } + ) + end + def to_hash + end # The type of hosted tool the model should to use. Learn more about # [built-in tools](https://platform.openai.com/docs/guides/tools). @@ -43,19 +56,40 @@ module OpenAI module Type extend OpenAI::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::Responses::ToolChoiceTypes::Type) } + TaggedSymbol = + T.type_alias do + T.all(Symbol, OpenAI::Responses::ToolChoiceTypes::Type) + end OrSymbol = T.type_alias { T.any(Symbol, String) } - FILE_SEARCH = T.let(:file_search, OpenAI::Models::Responses::ToolChoiceTypes::Type::TaggedSymbol) + FILE_SEARCH = + T.let( + :file_search, + OpenAI::Responses::ToolChoiceTypes::Type::TaggedSymbol + ) WEB_SEARCH_PREVIEW = - T.let(:web_search_preview, OpenAI::Models::Responses::ToolChoiceTypes::Type::TaggedSymbol) + T.let( + :web_search_preview, + OpenAI::Responses::ToolChoiceTypes::Type::TaggedSymbol + ) COMPUTER_USE_PREVIEW = - T.let(:computer_use_preview, OpenAI::Models::Responses::ToolChoiceTypes::Type::TaggedSymbol) + T.let( + :computer_use_preview, + OpenAI::Responses::ToolChoiceTypes::Type::TaggedSymbol + ) WEB_SEARCH_PREVIEW_2025_03_11 = - T.let(:web_search_preview_2025_03_11, OpenAI::Models::Responses::ToolChoiceTypes::Type::TaggedSymbol) + T.let( + :web_search_preview_2025_03_11, + OpenAI::Responses::ToolChoiceTypes::Type::TaggedSymbol + ) - sig { override.returns(T::Array[OpenAI::Models::Responses::ToolChoiceTypes::Type::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[OpenAI::Responses::ToolChoiceTypes::Type::TaggedSymbol] + ) + end + def self.values + end end end end diff --git a/rbi/openai/models/responses/web_search_tool.rbi b/rbi/openai/models/responses/web_search_tool.rbi index 032f4d13..7c952749 100644 --- a/rbi/openai/models/responses/web_search_tool.rbi +++ b/rbi/openai/models/responses/web_search_tool.rbi @@ -4,28 +4,43 @@ module OpenAI module Models module Responses class WebSearchTool < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The type of the web search tool. One of `web_search_preview` or # `web_search_preview_2025_03_11`. - sig { returns(OpenAI::Models::Responses::WebSearchTool::Type::OrSymbol) } + sig { returns(OpenAI::Responses::WebSearchTool::Type::OrSymbol) } attr_accessor :type # High level guidance for the amount of context window space to use for the # search. One of `low`, `medium`, or `high`. `medium` is the default. - sig { returns(T.nilable(OpenAI::Models::Responses::WebSearchTool::SearchContextSize::OrSymbol)) } + sig do + returns( + T.nilable( + OpenAI::Responses::WebSearchTool::SearchContextSize::OrSymbol + ) + ) + end attr_reader :search_context_size - sig { params(search_context_size: OpenAI::Models::Responses::WebSearchTool::SearchContextSize::OrSymbol).void } + sig do + params( + search_context_size: + OpenAI::Responses::WebSearchTool::SearchContextSize::OrSymbol + ).void + end attr_writer :search_context_size # The user's location. - sig { returns(T.nilable(OpenAI::Models::Responses::WebSearchTool::UserLocation)) } + sig do + returns(T.nilable(OpenAI::Responses::WebSearchTool::UserLocation)) + end attr_reader :user_location sig do params( - user_location: T.nilable(T.any(OpenAI::Models::Responses::WebSearchTool::UserLocation, OpenAI::Internal::AnyHash)) - ) - .void + user_location: + T.nilable(OpenAI::Responses::WebSearchTool::UserLocation::OrHash) + ).void end attr_writer :user_location @@ -34,11 +49,12 @@ module OpenAI # [web search tool](https://platform.openai.com/docs/guides/tools-web-search). sig do params( - type: OpenAI::Models::Responses::WebSearchTool::Type::OrSymbol, - search_context_size: OpenAI::Models::Responses::WebSearchTool::SearchContextSize::OrSymbol, - user_location: T.nilable(T.any(OpenAI::Models::Responses::WebSearchTool::UserLocation, OpenAI::Internal::AnyHash)) - ) - .returns(T.attached_class) + type: OpenAI::Responses::WebSearchTool::Type::OrSymbol, + search_context_size: + OpenAI::Responses::WebSearchTool::SearchContextSize::OrSymbol, + user_location: + T.nilable(OpenAI::Responses::WebSearchTool::UserLocation::OrHash) + ).returns(T.attached_class) end def self.new( # The type of the web search tool. One of `web_search_preview` or @@ -49,34 +65,52 @@ module OpenAI search_context_size: nil, # The user's location. user_location: nil - ); end + ) + end + sig do - override - .returns( - { - type: OpenAI::Models::Responses::WebSearchTool::Type::OrSymbol, - search_context_size: OpenAI::Models::Responses::WebSearchTool::SearchContextSize::OrSymbol, - user_location: T.nilable(OpenAI::Models::Responses::WebSearchTool::UserLocation) - } - ) + override.returns( + { + type: OpenAI::Responses::WebSearchTool::Type::OrSymbol, + search_context_size: + OpenAI::Responses::WebSearchTool::SearchContextSize::OrSymbol, + user_location: + T.nilable(OpenAI::Responses::WebSearchTool::UserLocation) + } + ) + end + def to_hash end - def to_hash; end # The type of the web search tool. One of `web_search_preview` or # `web_search_preview_2025_03_11`. module Type extend OpenAI::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::Responses::WebSearchTool::Type) } + TaggedSymbol = + T.type_alias do + T.all(Symbol, OpenAI::Responses::WebSearchTool::Type) + end OrSymbol = T.type_alias { T.any(Symbol, String) } WEB_SEARCH_PREVIEW = - T.let(:web_search_preview, OpenAI::Models::Responses::WebSearchTool::Type::TaggedSymbol) + T.let( + :web_search_preview, + OpenAI::Responses::WebSearchTool::Type::TaggedSymbol + ) WEB_SEARCH_PREVIEW_2025_03_11 = - T.let(:web_search_preview_2025_03_11, OpenAI::Models::Responses::WebSearchTool::Type::TaggedSymbol) + T.let( + :web_search_preview_2025_03_11, + OpenAI::Responses::WebSearchTool::Type::TaggedSymbol + ) - sig { override.returns(T::Array[OpenAI::Models::Responses::WebSearchTool::Type::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[OpenAI::Responses::WebSearchTool::Type::TaggedSymbol] + ) + end + def self.values + end end # High level guidance for the amount of context window space to use for the @@ -85,18 +119,42 @@ module OpenAI extend OpenAI::Internal::Type::Enum TaggedSymbol = - T.type_alias { T.all(Symbol, OpenAI::Models::Responses::WebSearchTool::SearchContextSize) } + T.type_alias do + T.all(Symbol, OpenAI::Responses::WebSearchTool::SearchContextSize) + end OrSymbol = T.type_alias { T.any(Symbol, String) } - LOW = T.let(:low, OpenAI::Models::Responses::WebSearchTool::SearchContextSize::TaggedSymbol) - MEDIUM = T.let(:medium, OpenAI::Models::Responses::WebSearchTool::SearchContextSize::TaggedSymbol) - HIGH = T.let(:high, OpenAI::Models::Responses::WebSearchTool::SearchContextSize::TaggedSymbol) + LOW = + T.let( + :low, + OpenAI::Responses::WebSearchTool::SearchContextSize::TaggedSymbol + ) + MEDIUM = + T.let( + :medium, + OpenAI::Responses::WebSearchTool::SearchContextSize::TaggedSymbol + ) + HIGH = + T.let( + :high, + OpenAI::Responses::WebSearchTool::SearchContextSize::TaggedSymbol + ) - sig { override.returns(T::Array[OpenAI::Models::Responses::WebSearchTool::SearchContextSize::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[ + OpenAI::Responses::WebSearchTool::SearchContextSize::TaggedSymbol + ] + ) + end + def self.values + end end class UserLocation < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The type of location approximation. Always `approximate`. sig { returns(Symbol) } attr_accessor :type @@ -127,8 +185,7 @@ module OpenAI region: T.nilable(String), timezone: T.nilable(String), type: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # Free text input for the city of the user, e.g. `San Francisco`. @@ -143,20 +200,22 @@ module OpenAI timezone: nil, # The type of location approximation. Always `approximate`. type: :approximate - ); end + ) + end + sig do - override - .returns( - { - type: Symbol, - city: T.nilable(String), - country: T.nilable(String), - region: T.nilable(String), - timezone: T.nilable(String) - } - ) + override.returns( + { + type: Symbol, + city: T.nilable(String), + country: T.nilable(String), + region: T.nilable(String), + timezone: T.nilable(String) + } + ) + end + def to_hash end - def to_hash; end end end end diff --git a/rbi/openai/models/responses_model.rbi b/rbi/openai/models/responses_model.rbi index 24670d55..5fc0cd97 100644 --- a/rbi/openai/models/responses_model.rbi +++ b/rbi/openai/models/responses_model.rbi @@ -5,34 +5,57 @@ module OpenAI module ResponsesModel extend OpenAI::Internal::Type::Union + Variants = + T.type_alias do + T.any( + String, + OpenAI::ChatModel::TaggedSymbol, + OpenAI::ResponsesModel::ResponsesOnlyModel::TaggedSymbol + ) + end + module ResponsesOnlyModel extend OpenAI::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::ResponsesModel::ResponsesOnlyModel) } + TaggedSymbol = + T.type_alias do + T.all(Symbol, OpenAI::ResponsesModel::ResponsesOnlyModel) + end OrSymbol = T.type_alias { T.any(Symbol, String) } - O1_PRO = T.let(:"o1-pro", OpenAI::Models::ResponsesModel::ResponsesOnlyModel::TaggedSymbol) + O1_PRO = + T.let( + :"o1-pro", + OpenAI::ResponsesModel::ResponsesOnlyModel::TaggedSymbol + ) O1_PRO_2025_03_19 = - T.let(:"o1-pro-2025-03-19", OpenAI::Models::ResponsesModel::ResponsesOnlyModel::TaggedSymbol) + T.let( + :"o1-pro-2025-03-19", + OpenAI::ResponsesModel::ResponsesOnlyModel::TaggedSymbol + ) COMPUTER_USE_PREVIEW = - T.let(:"computer-use-preview", OpenAI::Models::ResponsesModel::ResponsesOnlyModel::TaggedSymbol) + T.let( + :"computer-use-preview", + OpenAI::ResponsesModel::ResponsesOnlyModel::TaggedSymbol + ) COMPUTER_USE_PREVIEW_2025_03_11 = T.let( :"computer-use-preview-2025-03-11", - OpenAI::Models::ResponsesModel::ResponsesOnlyModel::TaggedSymbol + OpenAI::ResponsesModel::ResponsesOnlyModel::TaggedSymbol ) - sig { override.returns(T::Array[OpenAI::Models::ResponsesModel::ResponsesOnlyModel::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[OpenAI::ResponsesModel::ResponsesOnlyModel::TaggedSymbol] + ) + end + def self.values + end end - sig do - override - .returns( - [String, OpenAI::Models::ChatModel::TaggedSymbol, OpenAI::Models::ResponsesModel::ResponsesOnlyModel::TaggedSymbol] - ) + sig { override.returns(T::Array[OpenAI::ResponsesModel::Variants]) } + def self.variants end - def self.variants; end end end end diff --git a/rbi/openai/models/static_file_chunking_strategy.rbi b/rbi/openai/models/static_file_chunking_strategy.rbi index ae5b7298..2bfb9abc 100644 --- a/rbi/openai/models/static_file_chunking_strategy.rbi +++ b/rbi/openai/models/static_file_chunking_strategy.rbi @@ -3,6 +3,8 @@ module OpenAI module Models class StaticFileChunkingStrategy < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The number of tokens that overlap between chunks. The default value is `400`. # # Note that the overlap must not exceed half of `max_chunk_size_tokens`. @@ -14,7 +16,12 @@ module OpenAI sig { returns(Integer) } attr_accessor :max_chunk_size_tokens - sig { params(chunk_overlap_tokens: Integer, max_chunk_size_tokens: Integer).returns(T.attached_class) } + sig do + params( + chunk_overlap_tokens: Integer, + max_chunk_size_tokens: Integer + ).returns(T.attached_class) + end def self.new( # The number of tokens that overlap between chunks. The default value is `400`. # @@ -23,9 +30,16 @@ module OpenAI # The maximum number of tokens in each chunk. The default value is `800`. The # minimum value is `100` and the maximum value is `4096`. max_chunk_size_tokens: - ); end - sig { override.returns({chunk_overlap_tokens: Integer, max_chunk_size_tokens: Integer}) } - def to_hash; end + ) + end + + sig do + override.returns( + { chunk_overlap_tokens: Integer, max_chunk_size_tokens: Integer } + ) + end + def to_hash + end end end end diff --git a/rbi/openai/models/static_file_chunking_strategy_object.rbi b/rbi/openai/models/static_file_chunking_strategy_object.rbi index 2a978597..3e1ca623 100644 --- a/rbi/openai/models/static_file_chunking_strategy_object.rbi +++ b/rbi/openai/models/static_file_chunking_strategy_object.rbi @@ -3,10 +3,12 @@ module OpenAI module Models class StaticFileChunkingStrategyObject < OpenAI::Internal::Type::BaseModel - sig { returns(OpenAI::Models::StaticFileChunkingStrategy) } + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + + sig { returns(OpenAI::StaticFileChunkingStrategy) } attr_reader :static - sig { params(static: T.any(OpenAI::Models::StaticFileChunkingStrategy, OpenAI::Internal::AnyHash)).void } + sig { params(static: OpenAI::StaticFileChunkingStrategy::OrHash).void } attr_writer :static # Always `static`. @@ -14,16 +16,25 @@ module OpenAI attr_accessor :type sig do - params(static: T.any(OpenAI::Models::StaticFileChunkingStrategy, OpenAI::Internal::AnyHash), type: Symbol) - .returns(T.attached_class) + params( + static: OpenAI::StaticFileChunkingStrategy::OrHash, + type: Symbol + ).returns(T.attached_class) end def self.new( static:, # Always `static`. type: :static - ); end - sig { override.returns({static: OpenAI::Models::StaticFileChunkingStrategy, type: Symbol}) } - def to_hash; end + ) + end + + sig do + override.returns( + { static: OpenAI::StaticFileChunkingStrategy, type: Symbol } + ) + end + def to_hash + end end end end diff --git a/rbi/openai/models/static_file_chunking_strategy_object_param.rbi b/rbi/openai/models/static_file_chunking_strategy_object_param.rbi index ba278994..ede12a4b 100644 --- a/rbi/openai/models/static_file_chunking_strategy_object_param.rbi +++ b/rbi/openai/models/static_file_chunking_strategy_object_param.rbi @@ -3,10 +3,12 @@ module OpenAI module Models class StaticFileChunkingStrategyObjectParam < OpenAI::Internal::Type::BaseModel - sig { returns(OpenAI::Models::StaticFileChunkingStrategy) } + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + + sig { returns(OpenAI::StaticFileChunkingStrategy) } attr_reader :static - sig { params(static: T.any(OpenAI::Models::StaticFileChunkingStrategy, OpenAI::Internal::AnyHash)).void } + sig { params(static: OpenAI::StaticFileChunkingStrategy::OrHash).void } attr_writer :static # Always `static`. @@ -15,16 +17,25 @@ module OpenAI # Customize your own chunking strategy by setting chunk size and chunk overlap. sig do - params(static: T.any(OpenAI::Models::StaticFileChunkingStrategy, OpenAI::Internal::AnyHash), type: Symbol) - .returns(T.attached_class) + params( + static: OpenAI::StaticFileChunkingStrategy::OrHash, + type: Symbol + ).returns(T.attached_class) end def self.new( static:, # Always `static`. type: :static - ); end - sig { override.returns({static: OpenAI::Models::StaticFileChunkingStrategy, type: Symbol}) } - def to_hash; end + ) + end + + sig do + override.returns( + { static: OpenAI::StaticFileChunkingStrategy, type: Symbol } + ) + end + def to_hash + end end end end diff --git a/rbi/openai/models/upload.rbi b/rbi/openai/models/upload.rbi index f0483771..95c1b624 100644 --- a/rbi/openai/models/upload.rbi +++ b/rbi/openai/models/upload.rbi @@ -3,6 +3,8 @@ module OpenAI module Models class Upload < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The Upload unique identifier, which can be referenced in API endpoints. sig { returns(String) } attr_accessor :id @@ -34,14 +36,14 @@ module OpenAI attr_accessor :purpose # The status of the Upload. - sig { returns(OpenAI::Models::Upload::Status::TaggedSymbol) } + sig { returns(OpenAI::Upload::Status::TaggedSymbol) } attr_accessor :status # The `File` object represents a document that has been uploaded to OpenAI. - sig { returns(T.nilable(OpenAI::Models::FileObject)) } + sig { returns(T.nilable(OpenAI::FileObject)) } attr_reader :file - sig { params(file: T.nilable(T.any(OpenAI::Models::FileObject, OpenAI::Internal::AnyHash))).void } + sig { params(file: T.nilable(OpenAI::FileObject::OrHash)).void } attr_writer :file # The Upload object can accept byte chunks in the form of Parts. @@ -53,11 +55,10 @@ module OpenAI expires_at: Integer, filename: String, purpose: String, - status: OpenAI::Models::Upload::Status::OrSymbol, - file: T.nilable(T.any(OpenAI::Models::FileObject, OpenAI::Internal::AnyHash)), + status: OpenAI::Upload::Status::OrSymbol, + file: T.nilable(OpenAI::FileObject::OrHash), object: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # The Upload unique identifier, which can be referenced in API endpoints. @@ -80,39 +81,42 @@ module OpenAI file: nil, # The object type, which is always "upload". object: :upload - ); end + ) + end + sig do - override - .returns( - { - id: String, - bytes: Integer, - created_at: Integer, - expires_at: Integer, - filename: String, - object: Symbol, - purpose: String, - status: OpenAI::Models::Upload::Status::TaggedSymbol, - file: T.nilable(OpenAI::Models::FileObject) - } - ) + override.returns( + { + id: String, + bytes: Integer, + created_at: Integer, + expires_at: Integer, + filename: String, + object: Symbol, + purpose: String, + status: OpenAI::Upload::Status::TaggedSymbol, + file: T.nilable(OpenAI::FileObject) + } + ) + end + def to_hash end - def to_hash; end # The status of the Upload. module Status extend OpenAI::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::Upload::Status) } + TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Upload::Status) } OrSymbol = T.type_alias { T.any(Symbol, String) } - PENDING = T.let(:pending, OpenAI::Models::Upload::Status::TaggedSymbol) - COMPLETED = T.let(:completed, OpenAI::Models::Upload::Status::TaggedSymbol) - CANCELLED = T.let(:cancelled, OpenAI::Models::Upload::Status::TaggedSymbol) - EXPIRED = T.let(:expired, OpenAI::Models::Upload::Status::TaggedSymbol) + PENDING = T.let(:pending, OpenAI::Upload::Status::TaggedSymbol) + COMPLETED = T.let(:completed, OpenAI::Upload::Status::TaggedSymbol) + CANCELLED = T.let(:cancelled, OpenAI::Upload::Status::TaggedSymbol) + EXPIRED = T.let(:expired, OpenAI::Upload::Status::TaggedSymbol) - sig { override.returns(T::Array[OpenAI::Models::Upload::Status::TaggedSymbol]) } - def self.values; end + sig { override.returns(T::Array[OpenAI::Upload::Status::TaggedSymbol]) } + def self.values + end end end end diff --git a/rbi/openai/models/upload_cancel_params.rbi b/rbi/openai/models/upload_cancel_params.rbi index 8dd03bf2..283948ca 100644 --- a/rbi/openai/models/upload_cancel_params.rbi +++ b/rbi/openai/models/upload_cancel_params.rbi @@ -6,18 +6,19 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + sig do - params( - request_options: T.any( - OpenAI::RequestOptions, - OpenAI::Internal::AnyHash - ) - ).returns(T.attached_class) + params(request_options: OpenAI::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: OpenAI::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: OpenAI::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/openai/models/upload_complete_params.rbi b/rbi/openai/models/upload_complete_params.rbi index 71c0c76b..a8770632 100644 --- a/rbi/openai/models/upload_complete_params.rbi +++ b/rbi/openai/models/upload_complete_params.rbi @@ -6,6 +6,8 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The ordered list of Part IDs. sig { returns(T::Array[String]) } attr_accessor :part_ids @@ -22,9 +24,8 @@ module OpenAI params( part_ids: T::Array[String], md5: String, - request_options: T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash) - ) - .returns(T.attached_class) + request_options: OpenAI::RequestOptions::OrHash + ).returns(T.attached_class) end def self.new( # The ordered list of Part IDs. @@ -33,11 +34,20 @@ module OpenAI # matches what you expect. md5: nil, request_options: {} - ); end + ) + end + sig do - override.returns({part_ids: T::Array[String], md5: String, request_options: OpenAI::RequestOptions}) + override.returns( + { + part_ids: T::Array[String], + md5: String, + request_options: OpenAI::RequestOptions + } + ) + end + def to_hash end - def to_hash; end end end end diff --git a/rbi/openai/models/upload_create_params.rbi b/rbi/openai/models/upload_create_params.rbi index cd69d21c..43ab3774 100644 --- a/rbi/openai/models/upload_create_params.rbi +++ b/rbi/openai/models/upload_create_params.rbi @@ -6,6 +6,8 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The number of bytes in the file you are uploading. sig { returns(Integer) } attr_accessor :bytes @@ -25,7 +27,7 @@ module OpenAI # # See the # [documentation on File purposes](https://platform.openai.com/docs/api-reference/files/create#files-create-purpose). - sig { returns(OpenAI::Models::FilePurpose::OrSymbol) } + sig { returns(OpenAI::FilePurpose::OrSymbol) } attr_accessor :purpose sig do @@ -33,10 +35,9 @@ module OpenAI bytes: Integer, filename: String, mime_type: String, - purpose: OpenAI::Models::FilePurpose::OrSymbol, - request_options: T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash) - ) - .returns(T.attached_class) + purpose: OpenAI::FilePurpose::OrSymbol, + request_options: OpenAI::RequestOptions::OrHash + ).returns(T.attached_class) end def self.new( # The number of bytes in the file you are uploading. @@ -54,20 +55,22 @@ module OpenAI # [documentation on File purposes](https://platform.openai.com/docs/api-reference/files/create#files-create-purpose). purpose:, request_options: {} - ); end + ) + end + sig do - override - .returns( - { - bytes: Integer, - filename: String, - mime_type: String, - purpose: OpenAI::Models::FilePurpose::OrSymbol, - request_options: OpenAI::RequestOptions - } - ) + override.returns( + { + bytes: Integer, + filename: String, + mime_type: String, + purpose: OpenAI::FilePurpose::OrSymbol, + request_options: OpenAI::RequestOptions + } + ) + end + def to_hash end - def to_hash; end end end end diff --git a/rbi/openai/models/uploads/part_create_params.rbi b/rbi/openai/models/uploads/part_create_params.rbi index e8d07b06..9a8822d5 100644 --- a/rbi/openai/models/uploads/part_create_params.rbi +++ b/rbi/openai/models/uploads/part_create_params.rbi @@ -7,6 +7,8 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The chunk of bytes for this Part. sig { returns(T.any(Pathname, StringIO, IO, OpenAI::FilePart)) } attr_accessor :data @@ -14,23 +16,26 @@ module OpenAI sig do params( data: T.any(Pathname, StringIO, IO, OpenAI::FilePart), - request_options: T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash) - ) - .returns(T.attached_class) + request_options: OpenAI::RequestOptions::OrHash + ).returns(T.attached_class) end def self.new( # The chunk of bytes for this Part. data:, request_options: {} - ); end + ) + end + sig do - override - .returns({ - data: T.any(Pathname, StringIO, IO, OpenAI::FilePart), - request_options: OpenAI::RequestOptions - }) + override.returns( + { + data: T.any(Pathname, StringIO, IO, OpenAI::FilePart), + request_options: OpenAI::RequestOptions + } + ) + end + def to_hash end - def to_hash; end end end end diff --git a/rbi/openai/models/uploads/upload_part.rbi b/rbi/openai/models/uploads/upload_part.rbi index 79bf9d95..a9f0b817 100644 --- a/rbi/openai/models/uploads/upload_part.rbi +++ b/rbi/openai/models/uploads/upload_part.rbi @@ -6,6 +6,8 @@ module OpenAI module Uploads class UploadPart < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The upload Part unique identifier, which can be referenced in API endpoints. sig { returns(String) } attr_accessor :id @@ -24,7 +26,12 @@ module OpenAI # The upload Part represents a chunk of bytes we can add to an Upload object. sig do - params(id: String, created_at: Integer, upload_id: String, object: Symbol).returns(T.attached_class) + params( + id: String, + created_at: Integer, + upload_id: String, + object: Symbol + ).returns(T.attached_class) end def self.new( # The upload Part unique identifier, which can be referenced in API endpoints. @@ -35,9 +42,21 @@ module OpenAI upload_id:, # The object type, which is always `upload.part`. object: :"upload.part" - ); end - sig { override.returns({id: String, created_at: Integer, object: Symbol, upload_id: String}) } - def to_hash; end + ) + end + + sig do + override.returns( + { + id: String, + created_at: Integer, + object: Symbol, + upload_id: String + } + ) + end + def to_hash + end end end end diff --git a/rbi/openai/models/vector_store.rbi b/rbi/openai/models/vector_store.rbi index eefaf648..a4140933 100644 --- a/rbi/openai/models/vector_store.rbi +++ b/rbi/openai/models/vector_store.rbi @@ -3,6 +3,8 @@ module OpenAI module Models class VectorStore < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The identifier, which can be referenced in API endpoints. sig { returns(String) } attr_accessor :id @@ -11,10 +13,10 @@ module OpenAI sig { returns(Integer) } attr_accessor :created_at - sig { returns(OpenAI::Models::VectorStore::FileCounts) } + sig { returns(OpenAI::VectorStore::FileCounts) } attr_reader :file_counts - sig { params(file_counts: T.any(OpenAI::Models::VectorStore::FileCounts, OpenAI::Internal::AnyHash)).void } + sig { params(file_counts: OpenAI::VectorStore::FileCounts::OrHash).void } attr_writer :file_counts # The Unix timestamp (in seconds) for when the vector store was last active. @@ -41,7 +43,7 @@ module OpenAI # The status of the vector store, which can be either `expired`, `in_progress`, or # `completed`. A status of `completed` indicates that the vector store is ready # for use. - sig { returns(OpenAI::Models::VectorStore::Status::TaggedSymbol) } + sig { returns(OpenAI::VectorStore::Status::TaggedSymbol) } attr_accessor :status # The total number of bytes used by the files in the vector store. @@ -49,10 +51,12 @@ module OpenAI attr_accessor :usage_bytes # The expiration policy for a vector store. - sig { returns(T.nilable(OpenAI::Models::VectorStore::ExpiresAfter)) } + sig { returns(T.nilable(OpenAI::VectorStore::ExpiresAfter)) } attr_reader :expires_after - sig { params(expires_after: T.any(OpenAI::Models::VectorStore::ExpiresAfter, OpenAI::Internal::AnyHash)).void } + sig do + params(expires_after: OpenAI::VectorStore::ExpiresAfter::OrHash).void + end attr_writer :expires_after # The Unix timestamp (in seconds) for when the vector store will expire. @@ -65,17 +69,16 @@ module OpenAI params( id: String, created_at: Integer, - file_counts: T.any(OpenAI::Models::VectorStore::FileCounts, OpenAI::Internal::AnyHash), + file_counts: OpenAI::VectorStore::FileCounts::OrHash, last_active_at: T.nilable(Integer), metadata: T.nilable(T::Hash[Symbol, String]), name: String, - status: OpenAI::Models::VectorStore::Status::OrSymbol, + status: OpenAI::VectorStore::Status::OrSymbol, usage_bytes: Integer, - expires_after: T.any(OpenAI::Models::VectorStore::ExpiresAfter, OpenAI::Internal::AnyHash), + expires_after: OpenAI::VectorStore::ExpiresAfter::OrHash, expires_at: T.nilable(Integer), object: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # The identifier, which can be referenced in API endpoints. @@ -106,28 +109,32 @@ module OpenAI expires_at: nil, # The object type, which is always `vector_store`. object: :vector_store - ); end + ) + end + sig do - override - .returns( - { - id: String, - created_at: Integer, - file_counts: OpenAI::Models::VectorStore::FileCounts, - last_active_at: T.nilable(Integer), - metadata: T.nilable(T::Hash[Symbol, String]), - name: String, - object: Symbol, - status: OpenAI::Models::VectorStore::Status::TaggedSymbol, - usage_bytes: Integer, - expires_after: OpenAI::Models::VectorStore::ExpiresAfter, - expires_at: T.nilable(Integer) - } - ) + override.returns( + { + id: String, + created_at: Integer, + file_counts: OpenAI::VectorStore::FileCounts, + last_active_at: T.nilable(Integer), + metadata: T.nilable(T::Hash[Symbol, String]), + name: String, + object: Symbol, + status: OpenAI::VectorStore::Status::TaggedSymbol, + usage_bytes: Integer, + expires_after: OpenAI::VectorStore::ExpiresAfter, + expires_at: T.nilable(Integer) + } + ) + end + def to_hash end - def to_hash; end class FileCounts < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The number of files that were cancelled. sig { returns(Integer) } attr_accessor :cancelled @@ -155,8 +162,7 @@ module OpenAI failed: Integer, in_progress: Integer, total: Integer - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # The number of files that were cancelled. @@ -169,18 +175,22 @@ module OpenAI in_progress:, # The total number of files. total: - ); end + ) + end + sig do - override - .returns({ - cancelled: Integer, - completed: Integer, - failed: Integer, - in_progress: Integer, - total: Integer - }) + override.returns( + { + cancelled: Integer, + completed: Integer, + failed: Integer, + in_progress: Integer, + total: Integer + } + ) + end + def to_hash end - def to_hash; end end # The status of the vector store, which can be either `expired`, `in_progress`, or @@ -189,18 +199,25 @@ module OpenAI module Status extend OpenAI::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::VectorStore::Status) } + TaggedSymbol = + T.type_alias { T.all(Symbol, OpenAI::VectorStore::Status) } OrSymbol = T.type_alias { T.any(Symbol, String) } - EXPIRED = T.let(:expired, OpenAI::Models::VectorStore::Status::TaggedSymbol) - IN_PROGRESS = T.let(:in_progress, OpenAI::Models::VectorStore::Status::TaggedSymbol) - COMPLETED = T.let(:completed, OpenAI::Models::VectorStore::Status::TaggedSymbol) + EXPIRED = T.let(:expired, OpenAI::VectorStore::Status::TaggedSymbol) + IN_PROGRESS = + T.let(:in_progress, OpenAI::VectorStore::Status::TaggedSymbol) + COMPLETED = T.let(:completed, OpenAI::VectorStore::Status::TaggedSymbol) - sig { override.returns(T::Array[OpenAI::Models::VectorStore::Status::TaggedSymbol]) } - def self.values; end + sig do + override.returns(T::Array[OpenAI::VectorStore::Status::TaggedSymbol]) + end + def self.values + end end class ExpiresAfter < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Anchor timestamp after which the expiration policy applies. Supported anchors: # `last_active_at`. sig { returns(Symbol) } @@ -218,9 +235,12 @@ module OpenAI # Anchor timestamp after which the expiration policy applies. Supported anchors: # `last_active_at`. anchor: :last_active_at - ); end - sig { override.returns({anchor: Symbol, days: Integer}) } - def to_hash; end + ) + end + + sig { override.returns({ anchor: Symbol, days: Integer }) } + def to_hash + end end end end diff --git a/rbi/openai/models/vector_store_create_params.rbi b/rbi/openai/models/vector_store_create_params.rbi index ea4b49c5..38d38a30 100644 --- a/rbi/openai/models/vector_store_create_params.rbi +++ b/rbi/openai/models/vector_store_create_params.rbi @@ -6,14 +6,16 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The chunking strategy used to chunk the file(s). If not set, will use the `auto` # strategy. Only applicable if `file_ids` is non-empty. sig do returns( T.nilable( T.any( - OpenAI::Models::AutoFileChunkingStrategyParam, - OpenAI::Models::StaticFileChunkingStrategyObjectParam + OpenAI::AutoFileChunkingStrategyParam, + OpenAI::StaticFileChunkingStrategyObjectParam ) ) ) @@ -22,25 +24,23 @@ module OpenAI sig do params( - chunking_strategy: T.any( - OpenAI::Models::AutoFileChunkingStrategyParam, - OpenAI::Internal::AnyHash, - OpenAI::Models::StaticFileChunkingStrategyObjectParam - ) - ) - .void + chunking_strategy: + T.any( + OpenAI::AutoFileChunkingStrategyParam::OrHash, + OpenAI::StaticFileChunkingStrategyObjectParam::OrHash + ) + ).void end attr_writer :chunking_strategy # The expiration policy for a vector store. - sig { returns(T.nilable(OpenAI::Models::VectorStoreCreateParams::ExpiresAfter)) } + sig { returns(T.nilable(OpenAI::VectorStoreCreateParams::ExpiresAfter)) } attr_reader :expires_after sig do params( - expires_after: T.any(OpenAI::Models::VectorStoreCreateParams::ExpiresAfter, OpenAI::Internal::AnyHash) - ) - .void + expires_after: OpenAI::VectorStoreCreateParams::ExpiresAfter::OrHash + ).void end attr_writer :expires_after @@ -71,18 +71,17 @@ module OpenAI sig do params( - chunking_strategy: T.any( - OpenAI::Models::AutoFileChunkingStrategyParam, - OpenAI::Internal::AnyHash, - OpenAI::Models::StaticFileChunkingStrategyObjectParam - ), - expires_after: T.any(OpenAI::Models::VectorStoreCreateParams::ExpiresAfter, OpenAI::Internal::AnyHash), + chunking_strategy: + T.any( + OpenAI::AutoFileChunkingStrategyParam::OrHash, + OpenAI::StaticFileChunkingStrategyObjectParam::OrHash + ), + expires_after: OpenAI::VectorStoreCreateParams::ExpiresAfter::OrHash, file_ids: T::Array[String], metadata: T.nilable(T::Hash[Symbol, String]), name: String, - request_options: T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash) - ) - .returns(T.attached_class) + request_options: OpenAI::RequestOptions::OrHash + ).returns(T.attached_class) end def self.new( # The chunking strategy used to chunk the file(s). If not set, will use the `auto` @@ -104,26 +103,31 @@ module OpenAI # The name of the vector store. name: nil, request_options: {} - ); end + ) + end + sig do - override - .returns( - { - chunking_strategy: T.any( - OpenAI::Models::AutoFileChunkingStrategyParam, - OpenAI::Models::StaticFileChunkingStrategyObjectParam + override.returns( + { + chunking_strategy: + T.any( + OpenAI::AutoFileChunkingStrategyParam, + OpenAI::StaticFileChunkingStrategyObjectParam ), - expires_after: OpenAI::Models::VectorStoreCreateParams::ExpiresAfter, - file_ids: T::Array[String], - metadata: T.nilable(T::Hash[Symbol, String]), - name: String, - request_options: OpenAI::RequestOptions - } - ) + expires_after: OpenAI::VectorStoreCreateParams::ExpiresAfter, + file_ids: T::Array[String], + metadata: T.nilable(T::Hash[Symbol, String]), + name: String, + request_options: OpenAI::RequestOptions + } + ) + end + def to_hash end - def to_hash; end class ExpiresAfter < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Anchor timestamp after which the expiration policy applies. Supported anchors: # `last_active_at`. sig { returns(Symbol) } @@ -141,9 +145,12 @@ module OpenAI # Anchor timestamp after which the expiration policy applies. Supported anchors: # `last_active_at`. anchor: :last_active_at - ); end - sig { override.returns({anchor: Symbol, days: Integer}) } - def to_hash; end + ) + end + + sig { override.returns({ anchor: Symbol, days: Integer }) } + def to_hash + end end end end diff --git a/rbi/openai/models/vector_store_delete_params.rbi b/rbi/openai/models/vector_store_delete_params.rbi index fa28a443..bb86910b 100644 --- a/rbi/openai/models/vector_store_delete_params.rbi +++ b/rbi/openai/models/vector_store_delete_params.rbi @@ -6,18 +6,19 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + sig do - params( - request_options: T.any( - OpenAI::RequestOptions, - OpenAI::Internal::AnyHash - ) - ).returns(T.attached_class) + params(request_options: OpenAI::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: OpenAI::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: OpenAI::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/openai/models/vector_store_deleted.rbi b/rbi/openai/models/vector_store_deleted.rbi index 8c4ccaf1..3236938a 100644 --- a/rbi/openai/models/vector_store_deleted.rbi +++ b/rbi/openai/models/vector_store_deleted.rbi @@ -3,6 +3,8 @@ module OpenAI module Models class VectorStoreDeleted < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + sig { returns(String) } attr_accessor :id @@ -12,11 +14,19 @@ module OpenAI sig { returns(Symbol) } attr_accessor :object - sig { params(id: String, deleted: T::Boolean, object: Symbol).returns(T.attached_class) } - def self.new(id:, deleted:, object: :"vector_store.deleted"); end + sig do + params(id: String, deleted: T::Boolean, object: Symbol).returns( + T.attached_class + ) + end + def self.new(id:, deleted:, object: :"vector_store.deleted") + end - sig { override.returns({id: String, deleted: T::Boolean, object: Symbol}) } - def to_hash; end + sig do + override.returns({ id: String, deleted: T::Boolean, object: Symbol }) + end + def to_hash + end end end end diff --git a/rbi/openai/models/vector_store_list_params.rbi b/rbi/openai/models/vector_store_list_params.rbi index 5a6218c2..13a9b81d 100644 --- a/rbi/openai/models/vector_store_list_params.rbi +++ b/rbi/openai/models/vector_store_list_params.rbi @@ -6,6 +6,8 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # A cursor for use in pagination. `after` is an object ID that defines your place # in the list. For instance, if you make a list request and receive 100 objects, # ending with obj_foo, your subsequent call can include after=obj_foo in order to @@ -36,10 +38,10 @@ module OpenAI # Sort order by the `created_at` timestamp of the objects. `asc` for ascending # order and `desc` for descending order. - sig { returns(T.nilable(OpenAI::Models::VectorStoreListParams::Order::OrSymbol)) } + sig { returns(T.nilable(OpenAI::VectorStoreListParams::Order::OrSymbol)) } attr_reader :order - sig { params(order: OpenAI::Models::VectorStoreListParams::Order::OrSymbol).void } + sig { params(order: OpenAI::VectorStoreListParams::Order::OrSymbol).void } attr_writer :order sig do @@ -47,10 +49,9 @@ module OpenAI after: String, before: String, limit: Integer, - order: OpenAI::Models::VectorStoreListParams::Order::OrSymbol, - request_options: T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash) - ) - .returns(T.attached_class) + order: OpenAI::VectorStoreListParams::Order::OrSymbol, + request_options: OpenAI::RequestOptions::OrHash + ).returns(T.attached_class) end def self.new( # A cursor for use in pagination. `after` is an object ID that defines your place @@ -70,34 +71,42 @@ module OpenAI # order and `desc` for descending order. order: nil, request_options: {} - ); end + ) + end + sig do - override - .returns( - { - after: String, - before: String, - limit: Integer, - order: OpenAI::Models::VectorStoreListParams::Order::OrSymbol, - request_options: OpenAI::RequestOptions - } - ) + override.returns( + { + after: String, + before: String, + limit: Integer, + order: OpenAI::VectorStoreListParams::Order::OrSymbol, + request_options: OpenAI::RequestOptions + } + ) + end + def to_hash end - def to_hash; end # Sort order by the `created_at` timestamp of the objects. `asc` for ascending # order and `desc` for descending order. module Order extend OpenAI::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::VectorStoreListParams::Order) } + TaggedSymbol = + T.type_alias { T.all(Symbol, OpenAI::VectorStoreListParams::Order) } OrSymbol = T.type_alias { T.any(Symbol, String) } - ASC = T.let(:asc, OpenAI::Models::VectorStoreListParams::Order::TaggedSymbol) - DESC = T.let(:desc, OpenAI::Models::VectorStoreListParams::Order::TaggedSymbol) + ASC = T.let(:asc, OpenAI::VectorStoreListParams::Order::TaggedSymbol) + DESC = T.let(:desc, OpenAI::VectorStoreListParams::Order::TaggedSymbol) - sig { override.returns(T::Array[OpenAI::Models::VectorStoreListParams::Order::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[OpenAI::VectorStoreListParams::Order::TaggedSymbol] + ) + end + def self.values + end end end end diff --git a/rbi/openai/models/vector_store_retrieve_params.rbi b/rbi/openai/models/vector_store_retrieve_params.rbi index 2f2b9fef..c96ace2f 100644 --- a/rbi/openai/models/vector_store_retrieve_params.rbi +++ b/rbi/openai/models/vector_store_retrieve_params.rbi @@ -6,18 +6,19 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + sig do - params( - request_options: T.any( - OpenAI::RequestOptions, - OpenAI::Internal::AnyHash - ) - ).returns(T.attached_class) + params(request_options: OpenAI::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) end - def self.new(request_options: {}); end - sig { override.returns({request_options: OpenAI::RequestOptions}) } - def to_hash; end + sig { override.returns({ request_options: OpenAI::RequestOptions }) } + def to_hash + end end end end diff --git a/rbi/openai/models/vector_store_search_params.rbi b/rbi/openai/models/vector_store_search_params.rbi index e187c6b1..97e4d691 100644 --- a/rbi/openai/models/vector_store_search_params.rbi +++ b/rbi/openai/models/vector_store_search_params.rbi @@ -6,19 +6,28 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # A query string for a search sig { returns(T.any(String, T::Array[String])) } attr_accessor :query # A filter to apply based on file attributes. - sig { returns(T.nilable(T.any(OpenAI::Models::ComparisonFilter, OpenAI::Models::CompoundFilter))) } + sig do + returns( + T.nilable(T.any(OpenAI::ComparisonFilter, OpenAI::CompoundFilter)) + ) + end attr_reader :filters sig do params( - filters: T.any(OpenAI::Models::ComparisonFilter, OpenAI::Internal::AnyHash, OpenAI::Models::CompoundFilter) - ) - .void + filters: + T.any( + OpenAI::ComparisonFilter::OrHash, + OpenAI::CompoundFilter::OrHash + ) + ).void end attr_writer :filters @@ -31,14 +40,16 @@ module OpenAI attr_writer :max_num_results # Ranking options for search. - sig { returns(T.nilable(OpenAI::Models::VectorStoreSearchParams::RankingOptions)) } + sig do + returns(T.nilable(OpenAI::VectorStoreSearchParams::RankingOptions)) + end attr_reader :ranking_options sig do params( - ranking_options: T.any(OpenAI::Models::VectorStoreSearchParams::RankingOptions, OpenAI::Internal::AnyHash) - ) - .void + ranking_options: + OpenAI::VectorStoreSearchParams::RankingOptions::OrHash + ).void end attr_writer :ranking_options @@ -52,13 +63,17 @@ module OpenAI sig do params( query: T.any(String, T::Array[String]), - filters: T.any(OpenAI::Models::ComparisonFilter, OpenAI::Internal::AnyHash, OpenAI::Models::CompoundFilter), + filters: + T.any( + OpenAI::ComparisonFilter::OrHash, + OpenAI::CompoundFilter::OrHash + ), max_num_results: Integer, - ranking_options: T.any(OpenAI::Models::VectorStoreSearchParams::RankingOptions, OpenAI::Internal::AnyHash), + ranking_options: + OpenAI::VectorStoreSearchParams::RankingOptions::OrHash, rewrite_query: T::Boolean, - request_options: T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash) - ) - .returns(T.attached_class) + request_options: OpenAI::RequestOptions::OrHash + ).returns(T.attached_class) end def self.new( # A query string for a search @@ -73,45 +88,81 @@ module OpenAI # Whether to rewrite the natural language query for vector search. rewrite_query: nil, request_options: {} - ); end + ) + end + sig do - override - .returns( - { - query: T.any(String, T::Array[String]), - filters: T.any(OpenAI::Models::ComparisonFilter, OpenAI::Models::CompoundFilter), - max_num_results: Integer, - ranking_options: OpenAI::Models::VectorStoreSearchParams::RankingOptions, - rewrite_query: T::Boolean, - request_options: OpenAI::RequestOptions - } - ) + override.returns( + { + query: T.any(String, T::Array[String]), + filters: T.any(OpenAI::ComparisonFilter, OpenAI::CompoundFilter), + max_num_results: Integer, + ranking_options: OpenAI::VectorStoreSearchParams::RankingOptions, + rewrite_query: T::Boolean, + request_options: OpenAI::RequestOptions + } + ) + end + def to_hash end - def to_hash; end # A query string for a search module Query extend OpenAI::Internal::Type::Union - sig { override.returns([String, T::Array[String]]) } - def self.variants; end + Variants = T.type_alias { T.any(String, T::Array[String]) } - StringArray = T.let(OpenAI::Internal::Type::ArrayOf[String], OpenAI::Internal::Type::Converter) + sig do + override.returns( + T::Array[OpenAI::VectorStoreSearchParams::Query::Variants] + ) + end + def self.variants + end + + StringArray = + T.let( + OpenAI::Internal::Type::ArrayOf[String], + OpenAI::Internal::Type::Converter + ) end # A filter to apply based on file attributes. module Filters extend OpenAI::Internal::Type::Union - sig { override.returns([OpenAI::Models::ComparisonFilter, OpenAI::Models::CompoundFilter]) } - def self.variants; end + Variants = + T.type_alias do + T.any(OpenAI::ComparisonFilter, OpenAI::CompoundFilter) + end + + sig do + override.returns( + T::Array[OpenAI::VectorStoreSearchParams::Filters::Variants] + ) + end + def self.variants + end end class RankingOptions < OpenAI::Internal::Type::BaseModel - sig { returns(T.nilable(OpenAI::Models::VectorStoreSearchParams::RankingOptions::Ranker::OrSymbol)) } + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + + sig do + returns( + T.nilable( + OpenAI::VectorStoreSearchParams::RankingOptions::Ranker::OrSymbol + ) + ) + end attr_reader :ranker - sig { params(ranker: OpenAI::Models::VectorStoreSearchParams::RankingOptions::Ranker::OrSymbol).void } + sig do + params( + ranker: + OpenAI::VectorStoreSearchParams::RankingOptions::Ranker::OrSymbol + ).void + end attr_writer :ranker sig { returns(T.nilable(Float)) } @@ -123,37 +174,58 @@ module OpenAI # Ranking options for search. sig do params( - ranker: OpenAI::Models::VectorStoreSearchParams::RankingOptions::Ranker::OrSymbol, + ranker: + OpenAI::VectorStoreSearchParams::RankingOptions::Ranker::OrSymbol, score_threshold: Float - ) - .returns(T.attached_class) + ).returns(T.attached_class) + end + def self.new(ranker: nil, score_threshold: nil) end - def self.new(ranker: nil, score_threshold: nil); end sig do - override - .returns( - {ranker: OpenAI::Models::VectorStoreSearchParams::RankingOptions::Ranker::OrSymbol, score_threshold: Float} - ) + override.returns( + { + ranker: + OpenAI::VectorStoreSearchParams::RankingOptions::Ranker::OrSymbol, + score_threshold: Float + } + ) + end + def to_hash end - def to_hash; end module Ranker extend OpenAI::Internal::Type::Enum TaggedSymbol = - T.type_alias { T.all(Symbol, OpenAI::Models::VectorStoreSearchParams::RankingOptions::Ranker) } + T.type_alias do + T.all( + Symbol, + OpenAI::VectorStoreSearchParams::RankingOptions::Ranker + ) + end OrSymbol = T.type_alias { T.any(Symbol, String) } - AUTO = T.let(:auto, OpenAI::Models::VectorStoreSearchParams::RankingOptions::Ranker::TaggedSymbol) + AUTO = + T.let( + :auto, + OpenAI::VectorStoreSearchParams::RankingOptions::Ranker::TaggedSymbol + ) DEFAULT_2024_11_15 = T.let( :"default-2024-11-15", - OpenAI::Models::VectorStoreSearchParams::RankingOptions::Ranker::TaggedSymbol + OpenAI::VectorStoreSearchParams::RankingOptions::Ranker::TaggedSymbol ) - sig { override.returns(T::Array[OpenAI::Models::VectorStoreSearchParams::RankingOptions::Ranker::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[ + OpenAI::VectorStoreSearchParams::RankingOptions::Ranker::TaggedSymbol + ] + ) + end + def self.values + end end end end diff --git a/rbi/openai/models/vector_store_search_response.rbi b/rbi/openai/models/vector_store_search_response.rbi index 26ac1ca1..bca7112b 100644 --- a/rbi/openai/models/vector_store_search_response.rbi +++ b/rbi/openai/models/vector_store_search_response.rbi @@ -3,16 +3,22 @@ module OpenAI module Models class VectorStoreSearchResponse < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # 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, booleans, or numbers. - sig { returns(T.nilable(T::Hash[Symbol, T.any(String, Float, T::Boolean)])) } + sig do + returns(T.nilable(T::Hash[Symbol, T.any(String, Float, T::Boolean)])) + end attr_accessor :attributes # Content chunks from the file. - sig { returns(T::Array[OpenAI::Models::VectorStoreSearchResponse::Content]) } + sig do + returns(T::Array[OpenAI::Models::VectorStoreSearchResponse::Content]) + end attr_accessor :content # The ID of the vector store file. @@ -29,13 +35,16 @@ module OpenAI sig do params( - attributes: T.nilable(T::Hash[Symbol, T.any(String, Float, T::Boolean)]), - content: T::Array[T.any(OpenAI::Models::VectorStoreSearchResponse::Content, OpenAI::Internal::AnyHash)], + attributes: + T.nilable(T::Hash[Symbol, T.any(String, Float, T::Boolean)]), + content: + T::Array[ + OpenAI::Models::VectorStoreSearchResponse::Content::OrHash + ], file_id: String, filename: String, score: Float - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # Set of 16 key-value pairs that can be attached to an object. This can be useful @@ -52,64 +61,111 @@ module OpenAI filename:, # The similarity score for the result. score: - ); end + ) + end + sig do - override - .returns( - { - attributes: T.nilable(T::Hash[Symbol, T.any(String, Float, T::Boolean)]), - content: T::Array[OpenAI::Models::VectorStoreSearchResponse::Content], - file_id: String, - filename: String, - score: Float - } - ) + override.returns( + { + attributes: + T.nilable(T::Hash[Symbol, T.any(String, Float, T::Boolean)]), + content: + T::Array[OpenAI::Models::VectorStoreSearchResponse::Content], + file_id: String, + filename: String, + score: Float + } + ) + end + def to_hash end - def to_hash; end module Attribute extend OpenAI::Internal::Type::Union - sig { override.returns([String, Float, T::Boolean]) } - def self.variants; end + Variants = T.type_alias { T.any(String, Float, T::Boolean) } + + sig do + override.returns( + T::Array[ + OpenAI::Models::VectorStoreSearchResponse::Attribute::Variants + ] + ) + end + def self.variants + end end class Content < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The text content returned from search. sig { returns(String) } attr_accessor :text # The type of content. - sig { returns(OpenAI::Models::VectorStoreSearchResponse::Content::Type::TaggedSymbol) } + sig do + returns( + OpenAI::Models::VectorStoreSearchResponse::Content::Type::TaggedSymbol + ) + end attr_accessor :type sig do - params(text: String, type: OpenAI::Models::VectorStoreSearchResponse::Content::Type::OrSymbol) - .returns(T.attached_class) + params( + text: String, + type: + OpenAI::Models::VectorStoreSearchResponse::Content::Type::OrSymbol + ).returns(T.attached_class) end def self.new( # The text content returned from search. text:, # The type of content. type: - ); end + ) + end + sig do - override - .returns({text: String, type: OpenAI::Models::VectorStoreSearchResponse::Content::Type::TaggedSymbol}) + override.returns( + { + text: String, + type: + OpenAI::Models::VectorStoreSearchResponse::Content::Type::TaggedSymbol + } + ) + end + def to_hash end - def to_hash; end # The type of content. module Type extend OpenAI::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::VectorStoreSearchResponse::Content::Type) } + TaggedSymbol = + T.type_alias do + T.all( + Symbol, + OpenAI::Models::VectorStoreSearchResponse::Content::Type + ) + end OrSymbol = T.type_alias { T.any(Symbol, String) } - TEXT = T.let(:text, OpenAI::Models::VectorStoreSearchResponse::Content::Type::TaggedSymbol) + TEXT = + T.let( + :text, + OpenAI::Models::VectorStoreSearchResponse::Content::Type::TaggedSymbol + ) - sig { override.returns(T::Array[OpenAI::Models::VectorStoreSearchResponse::Content::Type::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[ + OpenAI::Models::VectorStoreSearchResponse::Content::Type::TaggedSymbol + ] + ) + end + def self.values + end end end end diff --git a/rbi/openai/models/vector_store_update_params.rbi b/rbi/openai/models/vector_store_update_params.rbi index 5955b4ed..1bc41e32 100644 --- a/rbi/openai/models/vector_store_update_params.rbi +++ b/rbi/openai/models/vector_store_update_params.rbi @@ -6,15 +6,17 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The expiration policy for a vector store. - sig { returns(T.nilable(OpenAI::Models::VectorStoreUpdateParams::ExpiresAfter)) } + sig { returns(T.nilable(OpenAI::VectorStoreUpdateParams::ExpiresAfter)) } attr_reader :expires_after sig do params( - expires_after: T.nilable(T.any(OpenAI::Models::VectorStoreUpdateParams::ExpiresAfter, OpenAI::Internal::AnyHash)) - ) - .void + expires_after: + T.nilable(OpenAI::VectorStoreUpdateParams::ExpiresAfter::OrHash) + ).void end attr_writer :expires_after @@ -33,12 +35,12 @@ module OpenAI sig do params( - expires_after: T.nilable(T.any(OpenAI::Models::VectorStoreUpdateParams::ExpiresAfter, OpenAI::Internal::AnyHash)), + expires_after: + T.nilable(OpenAI::VectorStoreUpdateParams::ExpiresAfter::OrHash), metadata: T.nilable(T::Hash[Symbol, String]), name: T.nilable(String), - request_options: T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash) - ) - .returns(T.attached_class) + request_options: OpenAI::RequestOptions::OrHash + ).returns(T.attached_class) end def self.new( # The expiration policy for a vector store. @@ -53,21 +55,26 @@ module OpenAI # The name of the vector store. name: nil, request_options: {} - ); end + ) + end + sig do - override - .returns( - { - expires_after: T.nilable(OpenAI::Models::VectorStoreUpdateParams::ExpiresAfter), - metadata: T.nilable(T::Hash[Symbol, String]), - name: T.nilable(String), - request_options: OpenAI::RequestOptions - } - ) + override.returns( + { + expires_after: + T.nilable(OpenAI::VectorStoreUpdateParams::ExpiresAfter), + metadata: T.nilable(T::Hash[Symbol, String]), + name: T.nilable(String), + request_options: OpenAI::RequestOptions + } + ) + end + def to_hash end - def to_hash; end class ExpiresAfter < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # Anchor timestamp after which the expiration policy applies. Supported anchors: # `last_active_at`. sig { returns(Symbol) } @@ -85,9 +92,12 @@ module OpenAI # Anchor timestamp after which the expiration policy applies. Supported anchors: # `last_active_at`. anchor: :last_active_at - ); end - sig { override.returns({anchor: Symbol, days: Integer}) } - def to_hash; end + ) + end + + sig { override.returns({ anchor: Symbol, days: Integer }) } + def to_hash + end end end end diff --git a/rbi/openai/models/vector_stores/file_batch_cancel_params.rbi b/rbi/openai/models/vector_stores/file_batch_cancel_params.rbi index 5d9bf50a..018b178f 100644 --- a/rbi/openai/models/vector_stores/file_batch_cancel_params.rbi +++ b/rbi/openai/models/vector_stores/file_batch_cancel_params.rbi @@ -7,20 +7,27 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + sig { returns(String) } attr_accessor :vector_store_id sig do params( vector_store_id: String, - request_options: T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash) - ) - .returns(T.attached_class) + request_options: OpenAI::RequestOptions::OrHash + ).returns(T.attached_class) + end + def self.new(vector_store_id:, request_options: {}) end - def self.new(vector_store_id:, request_options: {}); end - sig { override.returns({vector_store_id: String, request_options: OpenAI::RequestOptions}) } - def to_hash; end + sig do + override.returns( + { vector_store_id: String, request_options: OpenAI::RequestOptions } + ) + end + def to_hash + end end end end diff --git a/rbi/openai/models/vector_stores/file_batch_create_params.rbi b/rbi/openai/models/vector_stores/file_batch_create_params.rbi index 9fbb2a61..99ae5367 100644 --- a/rbi/openai/models/vector_stores/file_batch_create_params.rbi +++ b/rbi/openai/models/vector_stores/file_batch_create_params.rbi @@ -7,6 +7,8 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # A list of [File](https://platform.openai.com/docs/api-reference/files) IDs that # the vector store should use. Useful for tools like `file_search` that can access # files. @@ -18,7 +20,9 @@ module OpenAI # 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, booleans, or numbers. - sig { returns(T.nilable(T::Hash[Symbol, T.any(String, Float, T::Boolean)])) } + sig do + returns(T.nilable(T::Hash[Symbol, T.any(String, Float, T::Boolean)])) + end attr_accessor :attributes # The chunking strategy used to chunk the file(s). If not set, will use the `auto` @@ -27,8 +31,8 @@ module OpenAI returns( T.nilable( T.any( - OpenAI::Models::AutoFileChunkingStrategyParam, - OpenAI::Models::StaticFileChunkingStrategyObjectParam + OpenAI::AutoFileChunkingStrategyParam, + OpenAI::StaticFileChunkingStrategyObjectParam ) ) ) @@ -37,28 +41,27 @@ module OpenAI sig do params( - chunking_strategy: T.any( - OpenAI::Models::AutoFileChunkingStrategyParam, - OpenAI::Internal::AnyHash, - OpenAI::Models::StaticFileChunkingStrategyObjectParam - ) - ) - .void + chunking_strategy: + T.any( + OpenAI::AutoFileChunkingStrategyParam::OrHash, + OpenAI::StaticFileChunkingStrategyObjectParam::OrHash + ) + ).void end attr_writer :chunking_strategy sig do params( file_ids: T::Array[String], - attributes: T.nilable(T::Hash[Symbol, T.any(String, Float, T::Boolean)]), - chunking_strategy: T.any( - OpenAI::Models::AutoFileChunkingStrategyParam, - OpenAI::Internal::AnyHash, - OpenAI::Models::StaticFileChunkingStrategyObjectParam - ), - request_options: T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash) - ) - .returns(T.attached_class) + attributes: + T.nilable(T::Hash[Symbol, T.any(String, Float, T::Boolean)]), + chunking_strategy: + T.any( + OpenAI::AutoFileChunkingStrategyParam::OrHash, + OpenAI::StaticFileChunkingStrategyObjectParam::OrHash + ), + request_options: OpenAI::RequestOptions::OrHash + ).returns(T.attached_class) end def self.new( # A list of [File](https://platform.openai.com/docs/api-reference/files) IDs that @@ -75,28 +78,41 @@ module OpenAI # strategy. Only applicable if `file_ids` is non-empty. chunking_strategy: nil, request_options: {} - ); end + ) + end + sig do - override - .returns( - { - file_ids: T::Array[String], - attributes: T.nilable(T::Hash[Symbol, T.any(String, Float, T::Boolean)]), - chunking_strategy: T.any( - OpenAI::Models::AutoFileChunkingStrategyParam, - OpenAI::Models::StaticFileChunkingStrategyObjectParam + override.returns( + { + file_ids: T::Array[String], + attributes: + T.nilable(T::Hash[Symbol, T.any(String, Float, T::Boolean)]), + chunking_strategy: + T.any( + OpenAI::AutoFileChunkingStrategyParam, + OpenAI::StaticFileChunkingStrategyObjectParam ), - request_options: OpenAI::RequestOptions - } - ) + request_options: OpenAI::RequestOptions + } + ) + end + def to_hash end - def to_hash; end module Attribute extend OpenAI::Internal::Type::Union - sig { override.returns([String, Float, T::Boolean]) } - def self.variants; end + Variants = T.type_alias { T.any(String, Float, T::Boolean) } + + sig do + override.returns( + T::Array[ + OpenAI::VectorStores::FileBatchCreateParams::Attribute::Variants + ] + ) + end + def self.variants + end end end end diff --git a/rbi/openai/models/vector_stores/file_batch_list_files_params.rbi b/rbi/openai/models/vector_stores/file_batch_list_files_params.rbi index d5544112..92c9e94d 100644 --- a/rbi/openai/models/vector_stores/file_batch_list_files_params.rbi +++ b/rbi/openai/models/vector_stores/file_batch_list_files_params.rbi @@ -7,6 +7,8 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + sig { returns(String) } attr_accessor :vector_store_id @@ -31,10 +33,21 @@ module OpenAI attr_writer :before # Filter by file status. One of `in_progress`, `completed`, `failed`, `cancelled`. - sig { returns(T.nilable(OpenAI::Models::VectorStores::FileBatchListFilesParams::Filter::OrSymbol)) } + sig do + returns( + T.nilable( + OpenAI::VectorStores::FileBatchListFilesParams::Filter::OrSymbol + ) + ) + end attr_reader :filter - sig { params(filter: OpenAI::Models::VectorStores::FileBatchListFilesParams::Filter::OrSymbol).void } + sig do + params( + filter: + OpenAI::VectorStores::FileBatchListFilesParams::Filter::OrSymbol + ).void + end attr_writer :filter # A limit on the number of objects to be returned. Limit can range between 1 and @@ -47,10 +60,21 @@ module OpenAI # Sort order by the `created_at` timestamp of the objects. `asc` for ascending # order and `desc` for descending order. - sig { returns(T.nilable(OpenAI::Models::VectorStores::FileBatchListFilesParams::Order::OrSymbol)) } + sig do + returns( + T.nilable( + OpenAI::VectorStores::FileBatchListFilesParams::Order::OrSymbol + ) + ) + end attr_reader :order - sig { params(order: OpenAI::Models::VectorStores::FileBatchListFilesParams::Order::OrSymbol).void } + sig do + params( + order: + OpenAI::VectorStores::FileBatchListFilesParams::Order::OrSymbol + ).void + end attr_writer :order sig do @@ -58,12 +82,13 @@ module OpenAI vector_store_id: String, after: String, before: String, - filter: OpenAI::Models::VectorStores::FileBatchListFilesParams::Filter::OrSymbol, + filter: + OpenAI::VectorStores::FileBatchListFilesParams::Filter::OrSymbol, limit: Integer, - order: OpenAI::Models::VectorStores::FileBatchListFilesParams::Order::OrSymbol, - request_options: T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash) - ) - .returns(T.attached_class) + order: + OpenAI::VectorStores::FileBatchListFilesParams::Order::OrSymbol, + request_options: OpenAI::RequestOptions::OrHash + ).returns(T.attached_class) end def self.new( vector_store_id:, @@ -86,41 +111,70 @@ module OpenAI # order and `desc` for descending order. order: nil, request_options: {} - ); end + ) + end + sig do - override - .returns( - { - vector_store_id: String, - after: String, - before: String, - filter: OpenAI::Models::VectorStores::FileBatchListFilesParams::Filter::OrSymbol, - limit: Integer, - order: OpenAI::Models::VectorStores::FileBatchListFilesParams::Order::OrSymbol, - request_options: OpenAI::RequestOptions - } - ) + override.returns( + { + vector_store_id: String, + after: String, + before: String, + filter: + OpenAI::VectorStores::FileBatchListFilesParams::Filter::OrSymbol, + limit: Integer, + order: + OpenAI::VectorStores::FileBatchListFilesParams::Order::OrSymbol, + request_options: OpenAI::RequestOptions + } + ) + end + def to_hash end - def to_hash; end # Filter by file status. One of `in_progress`, `completed`, `failed`, `cancelled`. module Filter extend OpenAI::Internal::Type::Enum TaggedSymbol = - T.type_alias { T.all(Symbol, OpenAI::Models::VectorStores::FileBatchListFilesParams::Filter) } + T.type_alias do + T.all( + Symbol, + OpenAI::VectorStores::FileBatchListFilesParams::Filter + ) + end OrSymbol = T.type_alias { T.any(Symbol, String) } IN_PROGRESS = - T.let(:in_progress, OpenAI::Models::VectorStores::FileBatchListFilesParams::Filter::TaggedSymbol) + T.let( + :in_progress, + OpenAI::VectorStores::FileBatchListFilesParams::Filter::TaggedSymbol + ) COMPLETED = - T.let(:completed, OpenAI::Models::VectorStores::FileBatchListFilesParams::Filter::TaggedSymbol) - FAILED = T.let(:failed, OpenAI::Models::VectorStores::FileBatchListFilesParams::Filter::TaggedSymbol) + T.let( + :completed, + OpenAI::VectorStores::FileBatchListFilesParams::Filter::TaggedSymbol + ) + FAILED = + T.let( + :failed, + OpenAI::VectorStores::FileBatchListFilesParams::Filter::TaggedSymbol + ) CANCELLED = - T.let(:cancelled, OpenAI::Models::VectorStores::FileBatchListFilesParams::Filter::TaggedSymbol) + T.let( + :cancelled, + OpenAI::VectorStores::FileBatchListFilesParams::Filter::TaggedSymbol + ) - sig { override.returns(T::Array[OpenAI::Models::VectorStores::FileBatchListFilesParams::Filter::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[ + OpenAI::VectorStores::FileBatchListFilesParams::Filter::TaggedSymbol + ] + ) + end + def self.values + end end # Sort order by the `created_at` timestamp of the objects. `asc` for ascending @@ -129,14 +183,34 @@ module OpenAI extend OpenAI::Internal::Type::Enum TaggedSymbol = - T.type_alias { T.all(Symbol, OpenAI::Models::VectorStores::FileBatchListFilesParams::Order) } + T.type_alias do + T.all( + Symbol, + OpenAI::VectorStores::FileBatchListFilesParams::Order + ) + end OrSymbol = T.type_alias { T.any(Symbol, String) } - ASC = T.let(:asc, OpenAI::Models::VectorStores::FileBatchListFilesParams::Order::TaggedSymbol) - DESC = T.let(:desc, OpenAI::Models::VectorStores::FileBatchListFilesParams::Order::TaggedSymbol) + ASC = + T.let( + :asc, + OpenAI::VectorStores::FileBatchListFilesParams::Order::TaggedSymbol + ) + DESC = + T.let( + :desc, + OpenAI::VectorStores::FileBatchListFilesParams::Order::TaggedSymbol + ) - sig { override.returns(T::Array[OpenAI::Models::VectorStores::FileBatchListFilesParams::Order::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[ + OpenAI::VectorStores::FileBatchListFilesParams::Order::TaggedSymbol + ] + ) + end + def self.values + end end end end diff --git a/rbi/openai/models/vector_stores/file_batch_retrieve_params.rbi b/rbi/openai/models/vector_stores/file_batch_retrieve_params.rbi index c59d8363..9269b441 100644 --- a/rbi/openai/models/vector_stores/file_batch_retrieve_params.rbi +++ b/rbi/openai/models/vector_stores/file_batch_retrieve_params.rbi @@ -7,20 +7,27 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + sig { returns(String) } attr_accessor :vector_store_id sig do params( vector_store_id: String, - request_options: T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash) - ) - .returns(T.attached_class) + request_options: OpenAI::RequestOptions::OrHash + ).returns(T.attached_class) + end + def self.new(vector_store_id:, request_options: {}) end - def self.new(vector_store_id:, request_options: {}); end - sig { override.returns({vector_store_id: String, request_options: OpenAI::RequestOptions}) } - def to_hash; end + sig do + override.returns( + { vector_store_id: String, request_options: OpenAI::RequestOptions } + ) + end + def to_hash + end end end end diff --git a/rbi/openai/models/vector_stores/file_content_params.rbi b/rbi/openai/models/vector_stores/file_content_params.rbi index e241565e..808e189c 100644 --- a/rbi/openai/models/vector_stores/file_content_params.rbi +++ b/rbi/openai/models/vector_stores/file_content_params.rbi @@ -7,20 +7,27 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + sig { returns(String) } attr_accessor :vector_store_id sig do params( vector_store_id: String, - request_options: T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash) - ) - .returns(T.attached_class) + request_options: OpenAI::RequestOptions::OrHash + ).returns(T.attached_class) + end + def self.new(vector_store_id:, request_options: {}) end - def self.new(vector_store_id:, request_options: {}); end - sig { override.returns({vector_store_id: String, request_options: OpenAI::RequestOptions}) } - def to_hash; end + sig do + override.returns( + { vector_store_id: String, request_options: OpenAI::RequestOptions } + ) + end + def to_hash + end end end end diff --git a/rbi/openai/models/vector_stores/file_content_response.rbi b/rbi/openai/models/vector_stores/file_content_response.rbi index 658c26b7..c0c3ab04 100644 --- a/rbi/openai/models/vector_stores/file_content_response.rbi +++ b/rbi/openai/models/vector_stores/file_content_response.rbi @@ -4,6 +4,8 @@ module OpenAI module Models module VectorStores class FileContentResponse < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The text content sig { returns(T.nilable(String)) } attr_reader :text @@ -24,9 +26,12 @@ module OpenAI text: nil, # The content type (currently only `"text"`) type: nil - ); end - sig { override.returns({text: String, type: String}) } - def to_hash; end + ) + end + + sig { override.returns({ text: String, type: String }) } + def to_hash + end end end end diff --git a/rbi/openai/models/vector_stores/file_create_params.rbi b/rbi/openai/models/vector_stores/file_create_params.rbi index 17f31378..2a56c040 100644 --- a/rbi/openai/models/vector_stores/file_create_params.rbi +++ b/rbi/openai/models/vector_stores/file_create_params.rbi @@ -7,6 +7,8 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # A [File](https://platform.openai.com/docs/api-reference/files) ID that the # vector store should use. Useful for tools like `file_search` that can access # files. @@ -18,7 +20,9 @@ module OpenAI # 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, booleans, or numbers. - sig { returns(T.nilable(T::Hash[Symbol, T.any(String, Float, T::Boolean)])) } + sig do + returns(T.nilable(T::Hash[Symbol, T.any(String, Float, T::Boolean)])) + end attr_accessor :attributes # The chunking strategy used to chunk the file(s). If not set, will use the `auto` @@ -27,8 +31,8 @@ module OpenAI returns( T.nilable( T.any( - OpenAI::Models::AutoFileChunkingStrategyParam, - OpenAI::Models::StaticFileChunkingStrategyObjectParam + OpenAI::AutoFileChunkingStrategyParam, + OpenAI::StaticFileChunkingStrategyObjectParam ) ) ) @@ -37,28 +41,27 @@ module OpenAI sig do params( - chunking_strategy: T.any( - OpenAI::Models::AutoFileChunkingStrategyParam, - OpenAI::Internal::AnyHash, - OpenAI::Models::StaticFileChunkingStrategyObjectParam - ) - ) - .void + chunking_strategy: + T.any( + OpenAI::AutoFileChunkingStrategyParam::OrHash, + OpenAI::StaticFileChunkingStrategyObjectParam::OrHash + ) + ).void end attr_writer :chunking_strategy sig do params( file_id: String, - attributes: T.nilable(T::Hash[Symbol, T.any(String, Float, T::Boolean)]), - chunking_strategy: T.any( - OpenAI::Models::AutoFileChunkingStrategyParam, - OpenAI::Internal::AnyHash, - OpenAI::Models::StaticFileChunkingStrategyObjectParam - ), - request_options: T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash) - ) - .returns(T.attached_class) + attributes: + T.nilable(T::Hash[Symbol, T.any(String, Float, T::Boolean)]), + chunking_strategy: + T.any( + OpenAI::AutoFileChunkingStrategyParam::OrHash, + OpenAI::StaticFileChunkingStrategyObjectParam::OrHash + ), + request_options: OpenAI::RequestOptions::OrHash + ).returns(T.attached_class) end def self.new( # A [File](https://platform.openai.com/docs/api-reference/files) ID that the @@ -75,28 +78,41 @@ module OpenAI # strategy. Only applicable if `file_ids` is non-empty. chunking_strategy: nil, request_options: {} - ); end + ) + end + sig do - override - .returns( - { - file_id: String, - attributes: T.nilable(T::Hash[Symbol, T.any(String, Float, T::Boolean)]), - chunking_strategy: T.any( - OpenAI::Models::AutoFileChunkingStrategyParam, - OpenAI::Models::StaticFileChunkingStrategyObjectParam + override.returns( + { + file_id: String, + attributes: + T.nilable(T::Hash[Symbol, T.any(String, Float, T::Boolean)]), + chunking_strategy: + T.any( + OpenAI::AutoFileChunkingStrategyParam, + OpenAI::StaticFileChunkingStrategyObjectParam ), - request_options: OpenAI::RequestOptions - } - ) + request_options: OpenAI::RequestOptions + } + ) + end + def to_hash end - def to_hash; end module Attribute extend OpenAI::Internal::Type::Union - sig { override.returns([String, Float, T::Boolean]) } - def self.variants; end + Variants = T.type_alias { T.any(String, Float, T::Boolean) } + + sig do + override.returns( + T::Array[ + OpenAI::VectorStores::FileCreateParams::Attribute::Variants + ] + ) + end + def self.variants + end end end end diff --git a/rbi/openai/models/vector_stores/file_delete_params.rbi b/rbi/openai/models/vector_stores/file_delete_params.rbi index d5920802..c93454bd 100644 --- a/rbi/openai/models/vector_stores/file_delete_params.rbi +++ b/rbi/openai/models/vector_stores/file_delete_params.rbi @@ -7,20 +7,27 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + sig { returns(String) } attr_accessor :vector_store_id sig do params( vector_store_id: String, - request_options: T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash) - ) - .returns(T.attached_class) + request_options: OpenAI::RequestOptions::OrHash + ).returns(T.attached_class) + end + def self.new(vector_store_id:, request_options: {}) end - def self.new(vector_store_id:, request_options: {}); end - sig { override.returns({vector_store_id: String, request_options: OpenAI::RequestOptions}) } - def to_hash; end + sig do + override.returns( + { vector_store_id: String, request_options: OpenAI::RequestOptions } + ) + end + def to_hash + end end end end diff --git a/rbi/openai/models/vector_stores/file_list_params.rbi b/rbi/openai/models/vector_stores/file_list_params.rbi index 5e252bbb..f3697d8c 100644 --- a/rbi/openai/models/vector_stores/file_list_params.rbi +++ b/rbi/openai/models/vector_stores/file_list_params.rbi @@ -7,6 +7,8 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # A cursor for use in pagination. `after` is an object ID that defines your place # in the list. For instance, if you make a list request and receive 100 objects, # ending with obj_foo, your subsequent call can include after=obj_foo in order to @@ -28,10 +30,18 @@ module OpenAI attr_writer :before # Filter by file status. One of `in_progress`, `completed`, `failed`, `cancelled`. - sig { returns(T.nilable(OpenAI::Models::VectorStores::FileListParams::Filter::OrSymbol)) } + sig do + returns( + T.nilable(OpenAI::VectorStores::FileListParams::Filter::OrSymbol) + ) + end attr_reader :filter - sig { params(filter: OpenAI::Models::VectorStores::FileListParams::Filter::OrSymbol).void } + sig do + params( + filter: OpenAI::VectorStores::FileListParams::Filter::OrSymbol + ).void + end attr_writer :filter # A limit on the number of objects to be returned. Limit can range between 1 and @@ -44,22 +54,29 @@ module OpenAI # Sort order by the `created_at` timestamp of the objects. `asc` for ascending # order and `desc` for descending order. - sig { returns(T.nilable(OpenAI::Models::VectorStores::FileListParams::Order::OrSymbol)) } + sig do + returns( + T.nilable(OpenAI::VectorStores::FileListParams::Order::OrSymbol) + ) + end attr_reader :order - sig { params(order: OpenAI::Models::VectorStores::FileListParams::Order::OrSymbol).void } + sig do + params( + order: OpenAI::VectorStores::FileListParams::Order::OrSymbol + ).void + end attr_writer :order sig do params( after: String, before: String, - filter: OpenAI::Models::VectorStores::FileListParams::Filter::OrSymbol, + filter: OpenAI::VectorStores::FileListParams::Filter::OrSymbol, limit: Integer, - order: OpenAI::Models::VectorStores::FileListParams::Order::OrSymbol, - request_options: T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash) - ) - .returns(T.attached_class) + order: OpenAI::VectorStores::FileListParams::Order::OrSymbol, + request_options: OpenAI::RequestOptions::OrHash + ).returns(T.attached_class) end def self.new( # A cursor for use in pagination. `after` is an object ID that defines your place @@ -81,36 +98,64 @@ module OpenAI # order and `desc` for descending order. order: nil, request_options: {} - ); end + ) + end + sig do - override - .returns( - { - after: String, - before: String, - filter: OpenAI::Models::VectorStores::FileListParams::Filter::OrSymbol, - limit: Integer, - order: OpenAI::Models::VectorStores::FileListParams::Order::OrSymbol, - request_options: OpenAI::RequestOptions - } - ) + override.returns( + { + after: String, + before: String, + filter: OpenAI::VectorStores::FileListParams::Filter::OrSymbol, + limit: Integer, + order: OpenAI::VectorStores::FileListParams::Order::OrSymbol, + request_options: OpenAI::RequestOptions + } + ) + end + def to_hash end - def to_hash; end # Filter by file status. One of `in_progress`, `completed`, `failed`, `cancelled`. module Filter extend OpenAI::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::VectorStores::FileListParams::Filter) } + TaggedSymbol = + T.type_alias do + T.all(Symbol, OpenAI::VectorStores::FileListParams::Filter) + end OrSymbol = T.type_alias { T.any(Symbol, String) } - IN_PROGRESS = T.let(:in_progress, OpenAI::Models::VectorStores::FileListParams::Filter::TaggedSymbol) - COMPLETED = T.let(:completed, OpenAI::Models::VectorStores::FileListParams::Filter::TaggedSymbol) - FAILED = T.let(:failed, OpenAI::Models::VectorStores::FileListParams::Filter::TaggedSymbol) - CANCELLED = T.let(:cancelled, OpenAI::Models::VectorStores::FileListParams::Filter::TaggedSymbol) + IN_PROGRESS = + T.let( + :in_progress, + OpenAI::VectorStores::FileListParams::Filter::TaggedSymbol + ) + COMPLETED = + T.let( + :completed, + OpenAI::VectorStores::FileListParams::Filter::TaggedSymbol + ) + FAILED = + T.let( + :failed, + OpenAI::VectorStores::FileListParams::Filter::TaggedSymbol + ) + CANCELLED = + T.let( + :cancelled, + OpenAI::VectorStores::FileListParams::Filter::TaggedSymbol + ) - sig { override.returns(T::Array[OpenAI::Models::VectorStores::FileListParams::Filter::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[ + OpenAI::VectorStores::FileListParams::Filter::TaggedSymbol + ] + ) + end + def self.values + end end # Sort order by the `created_at` timestamp of the objects. `asc` for ascending @@ -118,14 +163,32 @@ module OpenAI module Order extend OpenAI::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::VectorStores::FileListParams::Order) } + TaggedSymbol = + T.type_alias do + T.all(Symbol, OpenAI::VectorStores::FileListParams::Order) + end OrSymbol = T.type_alias { T.any(Symbol, String) } - ASC = T.let(:asc, OpenAI::Models::VectorStores::FileListParams::Order::TaggedSymbol) - DESC = T.let(:desc, OpenAI::Models::VectorStores::FileListParams::Order::TaggedSymbol) + ASC = + T.let( + :asc, + OpenAI::VectorStores::FileListParams::Order::TaggedSymbol + ) + DESC = + T.let( + :desc, + OpenAI::VectorStores::FileListParams::Order::TaggedSymbol + ) - sig { override.returns(T::Array[OpenAI::Models::VectorStores::FileListParams::Order::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[ + OpenAI::VectorStores::FileListParams::Order::TaggedSymbol + ] + ) + end + def self.values + end end end end diff --git a/rbi/openai/models/vector_stores/file_retrieve_params.rbi b/rbi/openai/models/vector_stores/file_retrieve_params.rbi index 17c67d42..5904b6a0 100644 --- a/rbi/openai/models/vector_stores/file_retrieve_params.rbi +++ b/rbi/openai/models/vector_stores/file_retrieve_params.rbi @@ -7,20 +7,27 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + sig { returns(String) } attr_accessor :vector_store_id sig do params( vector_store_id: String, - request_options: T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash) - ) - .returns(T.attached_class) + request_options: OpenAI::RequestOptions::OrHash + ).returns(T.attached_class) + end + def self.new(vector_store_id:, request_options: {}) end - def self.new(vector_store_id:, request_options: {}); end - sig { override.returns({vector_store_id: String, request_options: OpenAI::RequestOptions}) } - def to_hash; end + sig do + override.returns( + { vector_store_id: String, request_options: OpenAI::RequestOptions } + ) + end + def to_hash + end end end end diff --git a/rbi/openai/models/vector_stores/file_update_params.rbi b/rbi/openai/models/vector_stores/file_update_params.rbi index 1d18d667..2a92b688 100644 --- a/rbi/openai/models/vector_stores/file_update_params.rbi +++ b/rbi/openai/models/vector_stores/file_update_params.rbi @@ -7,6 +7,8 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + sig { returns(String) } attr_accessor :vector_store_id @@ -15,16 +17,18 @@ module OpenAI # 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, booleans, or numbers. - sig { returns(T.nilable(T::Hash[Symbol, T.any(String, Float, T::Boolean)])) } + sig do + returns(T.nilable(T::Hash[Symbol, T.any(String, Float, T::Boolean)])) + end attr_accessor :attributes sig do params( vector_store_id: String, - attributes: T.nilable(T::Hash[Symbol, T.any(String, Float, T::Boolean)]), - request_options: T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash) - ) - .returns(T.attached_class) + attributes: + T.nilable(T::Hash[Symbol, T.any(String, Float, T::Boolean)]), + request_options: OpenAI::RequestOptions::OrHash + ).returns(T.attached_class) end def self.new( vector_store_id:, @@ -35,24 +39,36 @@ module OpenAI # characters, booleans, or numbers. attributes:, request_options: {} - ); end + ) + end + sig do - override - .returns( - { - vector_store_id: String, - attributes: T.nilable(T::Hash[Symbol, T.any(String, Float, T::Boolean)]), - request_options: OpenAI::RequestOptions - } - ) + override.returns( + { + vector_store_id: String, + attributes: + T.nilable(T::Hash[Symbol, T.any(String, Float, T::Boolean)]), + request_options: OpenAI::RequestOptions + } + ) + end + def to_hash end - def to_hash; end module Attribute extend OpenAI::Internal::Type::Union - sig { override.returns([String, Float, T::Boolean]) } - def self.variants; end + Variants = T.type_alias { T.any(String, Float, T::Boolean) } + + sig do + override.returns( + T::Array[ + OpenAI::VectorStores::FileUpdateParams::Attribute::Variants + ] + ) + end + def self.variants + end end end end diff --git a/rbi/openai/models/vector_stores/vector_store_file.rbi b/rbi/openai/models/vector_stores/vector_store_file.rbi index 79686b0f..e75ae730 100644 --- a/rbi/openai/models/vector_stores/vector_store_file.rbi +++ b/rbi/openai/models/vector_stores/vector_store_file.rbi @@ -6,6 +6,8 @@ module OpenAI module VectorStores class VectorStoreFile < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The identifier, which can be referenced in API endpoints. sig { returns(String) } attr_accessor :id @@ -16,14 +18,18 @@ module OpenAI # The last error associated with this vector store file. Will be `null` if there # are no errors. - sig { returns(T.nilable(OpenAI::Models::VectorStores::VectorStoreFile::LastError)) } + sig do + returns(T.nilable(OpenAI::VectorStores::VectorStoreFile::LastError)) + end attr_reader :last_error sig do params( - last_error: T.nilable(T.any(OpenAI::Models::VectorStores::VectorStoreFile::LastError, OpenAI::Internal::AnyHash)) - ) - .void + last_error: + T.nilable( + OpenAI::VectorStores::VectorStoreFile::LastError::OrHash + ) + ).void end attr_writer :last_error @@ -34,7 +40,9 @@ module OpenAI # The status of the vector store file, which can be either `in_progress`, # `completed`, `cancelled`, or `failed`. The status `completed` indicates that the # vector store file is ready for use. - sig { returns(OpenAI::Models::VectorStores::VectorStoreFile::Status::TaggedSymbol) } + sig do + returns(OpenAI::VectorStores::VectorStoreFile::Status::TaggedSymbol) + end attr_accessor :status # The total vector store usage in bytes. Note that this may be different from the @@ -54,14 +62,19 @@ module OpenAI # 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, booleans, or numbers. - sig { returns(T.nilable(T::Hash[Symbol, T.any(String, Float, T::Boolean)])) } + sig do + returns(T.nilable(T::Hash[Symbol, T.any(String, Float, T::Boolean)])) + end attr_accessor :attributes # The strategy used to chunk the file. sig do returns( T.nilable( - T.any(OpenAI::Models::StaticFileChunkingStrategyObject, OpenAI::Models::OtherFileChunkingStrategyObject) + T.any( + OpenAI::StaticFileChunkingStrategyObject, + OpenAI::OtherFileChunkingStrategyObject + ) ) ) end @@ -69,13 +82,12 @@ module OpenAI sig do params( - chunking_strategy: T.any( - OpenAI::Models::StaticFileChunkingStrategyObject, - OpenAI::Internal::AnyHash, - OpenAI::Models::OtherFileChunkingStrategyObject - ) - ) - .void + chunking_strategy: + T.any( + OpenAI::StaticFileChunkingStrategyObject::OrHash, + OpenAI::OtherFileChunkingStrategyObject::OrHash + ) + ).void end attr_writer :chunking_strategy @@ -84,19 +96,22 @@ module OpenAI params( id: String, created_at: Integer, - last_error: T.nilable(T.any(OpenAI::Models::VectorStores::VectorStoreFile::LastError, OpenAI::Internal::AnyHash)), - status: OpenAI::Models::VectorStores::VectorStoreFile::Status::OrSymbol, + last_error: + T.nilable( + OpenAI::VectorStores::VectorStoreFile::LastError::OrHash + ), + status: OpenAI::VectorStores::VectorStoreFile::Status::OrSymbol, usage_bytes: Integer, vector_store_id: String, - attributes: T.nilable(T::Hash[Symbol, T.any(String, Float, T::Boolean)]), - chunking_strategy: T.any( - OpenAI::Models::StaticFileChunkingStrategyObject, - OpenAI::Internal::AnyHash, - OpenAI::Models::OtherFileChunkingStrategyObject - ), + attributes: + T.nilable(T::Hash[Symbol, T.any(String, Float, T::Boolean)]), + chunking_strategy: + T.any( + OpenAI::StaticFileChunkingStrategyObject::OrHash, + OpenAI::OtherFileChunkingStrategyObject::OrHash + ), object: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # The identifier, which can be referenced in API endpoints. @@ -128,28 +143,44 @@ module OpenAI chunking_strategy: nil, # The object type, which is always `vector_store.file`. object: :"vector_store.file" - ); end + ) + end + sig do - override - .returns( - { - id: String, - created_at: Integer, - last_error: T.nilable(OpenAI::Models::VectorStores::VectorStoreFile::LastError), - object: Symbol, - status: OpenAI::Models::VectorStores::VectorStoreFile::Status::TaggedSymbol, - usage_bytes: Integer, - vector_store_id: String, - attributes: T.nilable(T::Hash[Symbol, T.any(String, Float, T::Boolean)]), - chunking_strategy: T.any(OpenAI::Models::StaticFileChunkingStrategyObject, OpenAI::Models::OtherFileChunkingStrategyObject) - } - ) + override.returns( + { + id: String, + created_at: Integer, + last_error: + T.nilable(OpenAI::VectorStores::VectorStoreFile::LastError), + object: Symbol, + status: + OpenAI::VectorStores::VectorStoreFile::Status::TaggedSymbol, + usage_bytes: Integer, + vector_store_id: String, + attributes: + T.nilable(T::Hash[Symbol, T.any(String, Float, T::Boolean)]), + chunking_strategy: + T.any( + OpenAI::StaticFileChunkingStrategyObject, + OpenAI::OtherFileChunkingStrategyObject + ) + } + ) + end + def to_hash end - def to_hash; end class LastError < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # One of `server_error` or `rate_limit_exceeded`. - sig { returns(OpenAI::Models::VectorStores::VectorStoreFile::LastError::Code::TaggedSymbol) } + sig do + returns( + OpenAI::VectorStores::VectorStoreFile::LastError::Code::TaggedSymbol + ) + end attr_accessor :code # A human-readable description of the error. @@ -159,40 +190,70 @@ module OpenAI # The last error associated with this vector store file. Will be `null` if there # are no errors. sig do - params(code: OpenAI::Models::VectorStores::VectorStoreFile::LastError::Code::OrSymbol, message: String) - .returns(T.attached_class) + params( + code: + OpenAI::VectorStores::VectorStoreFile::LastError::Code::OrSymbol, + message: String + ).returns(T.attached_class) end def self.new( # One of `server_error` or `rate_limit_exceeded`. code:, # A human-readable description of the error. message: - ); end + ) + end + sig do - override - .returns( - {code: OpenAI::Models::VectorStores::VectorStoreFile::LastError::Code::TaggedSymbol, message: String} - ) + override.returns( + { + code: + OpenAI::VectorStores::VectorStoreFile::LastError::Code::TaggedSymbol, + message: String + } + ) + end + def to_hash end - def to_hash; end # One of `server_error` or `rate_limit_exceeded`. module Code extend OpenAI::Internal::Type::Enum TaggedSymbol = - T.type_alias { T.all(Symbol, OpenAI::Models::VectorStores::VectorStoreFile::LastError::Code) } + T.type_alias do + T.all( + Symbol, + OpenAI::VectorStores::VectorStoreFile::LastError::Code + ) + end OrSymbol = T.type_alias { T.any(Symbol, String) } SERVER_ERROR = - T.let(:server_error, OpenAI::Models::VectorStores::VectorStoreFile::LastError::Code::TaggedSymbol) + T.let( + :server_error, + OpenAI::VectorStores::VectorStoreFile::LastError::Code::TaggedSymbol + ) UNSUPPORTED_FILE = - T.let(:unsupported_file, OpenAI::Models::VectorStores::VectorStoreFile::LastError::Code::TaggedSymbol) + T.let( + :unsupported_file, + OpenAI::VectorStores::VectorStoreFile::LastError::Code::TaggedSymbol + ) INVALID_FILE = - T.let(:invalid_file, OpenAI::Models::VectorStores::VectorStoreFile::LastError::Code::TaggedSymbol) + T.let( + :invalid_file, + OpenAI::VectorStores::VectorStoreFile::LastError::Code::TaggedSymbol + ) - sig { override.returns(T::Array[OpenAI::Models::VectorStores::VectorStoreFile::LastError::Code::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[ + OpenAI::VectorStores::VectorStoreFile::LastError::Code::TaggedSymbol + ] + ) + end + def self.values + end end end @@ -202,23 +263,58 @@ module OpenAI module Status extend OpenAI::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::VectorStores::VectorStoreFile::Status) } + TaggedSymbol = + T.type_alias do + T.all(Symbol, OpenAI::VectorStores::VectorStoreFile::Status) + end OrSymbol = T.type_alias { T.any(Symbol, String) } - IN_PROGRESS = T.let(:in_progress, OpenAI::Models::VectorStores::VectorStoreFile::Status::TaggedSymbol) - COMPLETED = T.let(:completed, OpenAI::Models::VectorStores::VectorStoreFile::Status::TaggedSymbol) - CANCELLED = T.let(:cancelled, OpenAI::Models::VectorStores::VectorStoreFile::Status::TaggedSymbol) - FAILED = T.let(:failed, OpenAI::Models::VectorStores::VectorStoreFile::Status::TaggedSymbol) + IN_PROGRESS = + T.let( + :in_progress, + OpenAI::VectorStores::VectorStoreFile::Status::TaggedSymbol + ) + COMPLETED = + T.let( + :completed, + OpenAI::VectorStores::VectorStoreFile::Status::TaggedSymbol + ) + CANCELLED = + T.let( + :cancelled, + OpenAI::VectorStores::VectorStoreFile::Status::TaggedSymbol + ) + FAILED = + T.let( + :failed, + OpenAI::VectorStores::VectorStoreFile::Status::TaggedSymbol + ) - sig { override.returns(T::Array[OpenAI::Models::VectorStores::VectorStoreFile::Status::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[ + OpenAI::VectorStores::VectorStoreFile::Status::TaggedSymbol + ] + ) + end + def self.values + end end module Attribute extend OpenAI::Internal::Type::Union - sig { override.returns([String, Float, T::Boolean]) } - def self.variants; end + Variants = T.type_alias { T.any(String, Float, T::Boolean) } + + sig do + override.returns( + T::Array[ + OpenAI::VectorStores::VectorStoreFile::Attribute::Variants + ] + ) + end + def self.variants + end end end end diff --git a/rbi/openai/models/vector_stores/vector_store_file_batch.rbi b/rbi/openai/models/vector_stores/vector_store_file_batch.rbi index 8712684e..1dc7f034 100644 --- a/rbi/openai/models/vector_stores/vector_store_file_batch.rbi +++ b/rbi/openai/models/vector_stores/vector_store_file_batch.rbi @@ -6,6 +6,8 @@ module OpenAI module VectorStores class VectorStoreFileBatch < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The identifier, which can be referenced in API endpoints. sig { returns(String) } attr_accessor :id @@ -15,14 +17,14 @@ module OpenAI sig { returns(Integer) } attr_accessor :created_at - sig { returns(OpenAI::Models::VectorStores::VectorStoreFileBatch::FileCounts) } + sig { returns(OpenAI::VectorStores::VectorStoreFileBatch::FileCounts) } attr_reader :file_counts sig do params( - file_counts: T.any(OpenAI::Models::VectorStores::VectorStoreFileBatch::FileCounts, OpenAI::Internal::AnyHash) - ) - .void + file_counts: + OpenAI::VectorStores::VectorStoreFileBatch::FileCounts::OrHash + ).void end attr_writer :file_counts @@ -32,7 +34,11 @@ module OpenAI # The status of the vector store files batch, which can be either `in_progress`, # `completed`, `cancelled` or `failed`. - sig { returns(OpenAI::Models::VectorStores::VectorStoreFileBatch::Status::TaggedSymbol) } + sig do + returns( + OpenAI::VectorStores::VectorStoreFileBatch::Status::TaggedSymbol + ) + end attr_accessor :status # The ID of the @@ -47,12 +53,13 @@ module OpenAI params( id: String, created_at: Integer, - file_counts: T.any(OpenAI::Models::VectorStores::VectorStoreFileBatch::FileCounts, OpenAI::Internal::AnyHash), - status: OpenAI::Models::VectorStores::VectorStoreFileBatch::Status::OrSymbol, + file_counts: + OpenAI::VectorStores::VectorStoreFileBatch::FileCounts::OrHash, + status: + OpenAI::VectorStores::VectorStoreFileBatch::Status::OrSymbol, vector_store_id: String, object: Symbol - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # The identifier, which can be referenced in API endpoints. @@ -71,23 +78,30 @@ module OpenAI vector_store_id:, # The object type, which is always `vector_store.file_batch`. object: :"vector_store.files_batch" - ); end + ) + end + sig do - override - .returns( - { - id: String, - created_at: Integer, - file_counts: OpenAI::Models::VectorStores::VectorStoreFileBatch::FileCounts, - object: Symbol, - status: OpenAI::Models::VectorStores::VectorStoreFileBatch::Status::TaggedSymbol, - vector_store_id: String - } - ) + override.returns( + { + id: String, + created_at: Integer, + file_counts: + OpenAI::VectorStores::VectorStoreFileBatch::FileCounts, + object: Symbol, + status: + OpenAI::VectorStores::VectorStoreFileBatch::Status::TaggedSymbol, + vector_store_id: String + } + ) + end + def to_hash end - def to_hash; end class FileCounts < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # The number of files that where cancelled. sig { returns(Integer) } attr_accessor :cancelled @@ -115,8 +129,7 @@ module OpenAI failed: Integer, in_progress: Integer, total: Integer - ) - .returns(T.attached_class) + ).returns(T.attached_class) end def self.new( # The number of files that where cancelled. @@ -129,18 +142,22 @@ module OpenAI in_progress:, # The total number of files. total: - ); end + ) + end + sig do - override - .returns({ - cancelled: Integer, - completed: Integer, - failed: Integer, - in_progress: Integer, - total: Integer - }) + override.returns( + { + cancelled: Integer, + completed: Integer, + failed: Integer, + in_progress: Integer, + total: Integer + } + ) + end + def to_hash end - def to_hash; end end # The status of the vector store files batch, which can be either `in_progress`, @@ -148,17 +165,42 @@ module OpenAI module Status extend OpenAI::Internal::Type::Enum - TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Models::VectorStores::VectorStoreFileBatch::Status) } + TaggedSymbol = + T.type_alias do + T.all(Symbol, OpenAI::VectorStores::VectorStoreFileBatch::Status) + end OrSymbol = T.type_alias { T.any(Symbol, String) } IN_PROGRESS = - T.let(:in_progress, OpenAI::Models::VectorStores::VectorStoreFileBatch::Status::TaggedSymbol) - COMPLETED = T.let(:completed, OpenAI::Models::VectorStores::VectorStoreFileBatch::Status::TaggedSymbol) - CANCELLED = T.let(:cancelled, OpenAI::Models::VectorStores::VectorStoreFileBatch::Status::TaggedSymbol) - FAILED = T.let(:failed, OpenAI::Models::VectorStores::VectorStoreFileBatch::Status::TaggedSymbol) + T.let( + :in_progress, + OpenAI::VectorStores::VectorStoreFileBatch::Status::TaggedSymbol + ) + COMPLETED = + T.let( + :completed, + OpenAI::VectorStores::VectorStoreFileBatch::Status::TaggedSymbol + ) + CANCELLED = + T.let( + :cancelled, + OpenAI::VectorStores::VectorStoreFileBatch::Status::TaggedSymbol + ) + FAILED = + T.let( + :failed, + OpenAI::VectorStores::VectorStoreFileBatch::Status::TaggedSymbol + ) - sig { override.returns(T::Array[OpenAI::Models::VectorStores::VectorStoreFileBatch::Status::TaggedSymbol]) } - def self.values; end + sig do + override.returns( + T::Array[ + OpenAI::VectorStores::VectorStoreFileBatch::Status::TaggedSymbol + ] + ) + end + def self.values + end end end end diff --git a/rbi/openai/models/vector_stores/vector_store_file_deleted.rbi b/rbi/openai/models/vector_stores/vector_store_file_deleted.rbi index 769eeefd..3317327e 100644 --- a/rbi/openai/models/vector_stores/vector_store_file_deleted.rbi +++ b/rbi/openai/models/vector_stores/vector_store_file_deleted.rbi @@ -6,6 +6,8 @@ module OpenAI module VectorStores class VectorStoreFileDeleted < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + sig { returns(String) } attr_accessor :id @@ -15,11 +17,19 @@ module OpenAI sig { returns(Symbol) } attr_accessor :object - sig { params(id: String, deleted: T::Boolean, object: Symbol).returns(T.attached_class) } - def self.new(id:, deleted:, object: :"vector_store.file.deleted"); end + sig do + params(id: String, deleted: T::Boolean, object: Symbol).returns( + T.attached_class + ) + end + def self.new(id:, deleted:, object: :"vector_store.file.deleted") + end - sig { override.returns({id: String, deleted: T::Boolean, object: Symbol}) } - def to_hash; end + sig do + override.returns({ id: String, deleted: T::Boolean, object: Symbol }) + end + def to_hash + end end end end diff --git a/rbi/openai/request_options.rbi b/rbi/openai/request_options.rbi index 2dc1eb77..459f3a88 100644 --- a/rbi/openai/request_options.rbi +++ b/rbi/openai/request_options.rbi @@ -1,17 +1,18 @@ # typed: strong module OpenAI - RequestOpts = T.type_alias { T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash) } - # Specify HTTP behaviour to use for a specific request. These options supplement # or override those provided at the client level. # # When making a request, you can pass an actual {RequestOptions} instance, or # simply pass a Hash with symbol keys matching the attributes on this class. class RequestOptions < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + # @api private - sig { params(opts: T.any(T.self_type, T::Hash[Symbol, T.anything])).void } - def self.validate!(opts); end + sig { params(opts: OpenAI::RequestOptions::OrHash).void } + def self.validate!(opts) + end # Idempotency key to send with request and all associated retries. Will only be # sent for write requests. @@ -20,7 +21,11 @@ module OpenAI # Extra query params to send with the request. These are `.merge`’d into any # `query` given at the client level. - sig { returns(T.nilable(T::Hash[String, T.nilable(T.any(T::Array[String], String))])) } + sig do + returns( + T.nilable(T::Hash[String, T.nilable(T.any(T::Array[String], String))]) + ) + end attr_accessor :extra_query # Extra headers to send with the request. These are `.merged`’d into any @@ -43,6 +48,7 @@ module OpenAI # Returns a new instance of RequestOptions. sig { params(values: OpenAI::Internal::AnyHash).returns(T.attached_class) } - def self.new(values = {}); end + def self.new(values = {}) + end end end diff --git a/rbi/openai/resources/audio.rbi b/rbi/openai/resources/audio.rbi index 53749c68..1747c22c 100644 --- a/rbi/openai/resources/audio.rbi +++ b/rbi/openai/resources/audio.rbi @@ -14,7 +14,8 @@ module OpenAI # @api private sig { params(client: OpenAI::Client).returns(T.attached_class) } - def self.new(client:); end + def self.new(client:) + end end end end diff --git a/rbi/openai/resources/audio/speech.rbi b/rbi/openai/resources/audio/speech.rbi index 4a2ffa44..2c8d03a3 100644 --- a/rbi/openai/resources/audio/speech.rbi +++ b/rbi/openai/resources/audio/speech.rbi @@ -8,14 +8,15 @@ module OpenAI sig do params( input: String, - model: T.any(String, OpenAI::Models::Audio::SpeechModel::OrSymbol), - voice: T.any(String, OpenAI::Models::Audio::SpeechCreateParams::Voice::OrSymbol), + model: T.any(String, OpenAI::Audio::SpeechModel::OrSymbol), + voice: + T.any(String, OpenAI::Audio::SpeechCreateParams::Voice::OrSymbol), instructions: String, - response_format: OpenAI::Models::Audio::SpeechCreateParams::ResponseFormat::OrSymbol, + response_format: + OpenAI::Audio::SpeechCreateParams::ResponseFormat::OrSymbol, speed: Float, - request_options: OpenAI::RequestOpts - ) - .returns(StringIO) + request_options: OpenAI::RequestOptions::OrHash + ).returns(StringIO) end def create( # The text to generate audio for. The maximum length is 4096 characters. @@ -38,10 +39,13 @@ module OpenAI # the default. Does not work with `gpt-4o-mini-tts`. speed: nil, request_options: {} - ); end + ) + end + # @api private sig { params(client: OpenAI::Client).returns(T.attached_class) } - def self.new(client:); end + def self.new(client:) + end end end end diff --git a/rbi/openai/resources/audio/transcriptions.rbi b/rbi/openai/resources/audio/transcriptions.rbi index b8fb2b38..80543b1d 100644 --- a/rbi/openai/resources/audio/transcriptions.rbi +++ b/rbi/openai/resources/audio/transcriptions.rbi @@ -11,17 +11,24 @@ module OpenAI sig do params( file: T.any(Pathname, StringIO, IO, OpenAI::FilePart), - model: T.any(String, OpenAI::Models::AudioModel::OrSymbol), - include: T::Array[OpenAI::Models::Audio::TranscriptionInclude::OrSymbol], + model: T.any(String, OpenAI::AudioModel::OrSymbol), + include: T::Array[OpenAI::Audio::TranscriptionInclude::OrSymbol], language: String, prompt: String, - response_format: OpenAI::Models::AudioResponseFormat::OrSymbol, + response_format: OpenAI::AudioResponseFormat::OrSymbol, temperature: Float, - timestamp_granularities: T::Array[OpenAI::Models::Audio::TranscriptionCreateParams::TimestampGranularity::OrSymbol], + timestamp_granularities: + T::Array[ + OpenAI::Audio::TranscriptionCreateParams::TimestampGranularity::OrSymbol + ], stream: T.noreturn, - request_options: OpenAI::RequestOpts + request_options: OpenAI::RequestOptions::OrHash + ).returns( + T.any( + OpenAI::Audio::Transcription, + OpenAI::Audio::TranscriptionVerbose + ) ) - .returns(T.any(OpenAI::Models::Audio::Transcription, OpenAI::Models::Audio::TranscriptionVerbose)) end def create( # The audio file object (not file name) to transcribe, in one of these formats: @@ -66,7 +73,9 @@ module OpenAI # `#create` for streaming and non-streaming use cases, respectively. stream: false, request_options: {} - ); end + ) + end + # See {OpenAI::Resources::Audio::Transcriptions#create} for non-streaming # counterpart. # @@ -74,24 +83,26 @@ module OpenAI sig do params( file: T.any(Pathname, StringIO, IO, OpenAI::FilePart), - model: T.any(String, OpenAI::Models::AudioModel::OrSymbol), - include: T::Array[OpenAI::Models::Audio::TranscriptionInclude::OrSymbol], + model: T.any(String, OpenAI::AudioModel::OrSymbol), + include: T::Array[OpenAI::Audio::TranscriptionInclude::OrSymbol], language: String, prompt: String, - response_format: OpenAI::Models::AudioResponseFormat::OrSymbol, + response_format: OpenAI::AudioResponseFormat::OrSymbol, temperature: Float, - timestamp_granularities: T::Array[OpenAI::Models::Audio::TranscriptionCreateParams::TimestampGranularity::OrSymbol], + timestamp_granularities: + T::Array[ + OpenAI::Audio::TranscriptionCreateParams::TimestampGranularity::OrSymbol + ], stream: T.noreturn, - request_options: OpenAI::RequestOpts + request_options: OpenAI::RequestOptions::OrHash + ).returns( + OpenAI::Internal::Stream[ + T.any( + OpenAI::Audio::TranscriptionTextDeltaEvent, + OpenAI::Audio::TranscriptionTextDoneEvent + ) + ] ) - .returns( - OpenAI::Internal::Stream[ - T.any( - OpenAI::Models::Audio::TranscriptionTextDeltaEvent, - OpenAI::Models::Audio::TranscriptionTextDoneEvent - ) - ] - ) end def create_streaming( # The audio file object (not file name) to transcribe, in one of these formats: @@ -136,10 +147,13 @@ module OpenAI # `#create` for streaming and non-streaming use cases, respectively. stream: true, request_options: {} - ); end + ) + end + # @api private sig { params(client: OpenAI::Client).returns(T.attached_class) } - def self.new(client:); end + def self.new(client:) + end end end end diff --git a/rbi/openai/resources/audio/translations.rbi b/rbi/openai/resources/audio/translations.rbi index b9675bf8..b2427856 100644 --- a/rbi/openai/resources/audio/translations.rbi +++ b/rbi/openai/resources/audio/translations.rbi @@ -8,13 +8,15 @@ module OpenAI sig do params( file: T.any(Pathname, StringIO, IO, OpenAI::FilePart), - model: T.any(String, OpenAI::Models::AudioModel::OrSymbol), + model: T.any(String, OpenAI::AudioModel::OrSymbol), prompt: String, - response_format: OpenAI::Models::Audio::TranslationCreateParams::ResponseFormat::OrSymbol, + response_format: + OpenAI::Audio::TranslationCreateParams::ResponseFormat::OrSymbol, temperature: Float, - request_options: OpenAI::RequestOpts + request_options: OpenAI::RequestOptions::OrHash + ).returns( + T.any(OpenAI::Audio::Translation, OpenAI::Audio::TranslationVerbose) ) - .returns(T.any(OpenAI::Models::Audio::Translation, OpenAI::Models::Audio::TranslationVerbose)) end def create( # The audio file object (not file name) translate, in one of these formats: flac, @@ -38,10 +40,13 @@ module OpenAI # automatically increase the temperature until certain thresholds are hit. temperature: nil, request_options: {} - ); end + ) + end + # @api private sig { params(client: OpenAI::Client).returns(T.attached_class) } - def self.new(client:); end + def self.new(client:) + end end end end diff --git a/rbi/openai/resources/batches.rbi b/rbi/openai/resources/batches.rbi index f58e4e80..64125755 100644 --- a/rbi/openai/resources/batches.rbi +++ b/rbi/openai/resources/batches.rbi @@ -6,13 +6,13 @@ module OpenAI # Creates and executes a batch from an uploaded file of requests sig do params( - completion_window: OpenAI::Models::BatchCreateParams::CompletionWindow::OrSymbol, - endpoint: OpenAI::Models::BatchCreateParams::Endpoint::OrSymbol, + completion_window: + OpenAI::BatchCreateParams::CompletionWindow::OrSymbol, + endpoint: OpenAI::BatchCreateParams::Endpoint::OrSymbol, input_file_id: String, metadata: T.nilable(T::Hash[Symbol, String]), - request_options: OpenAI::RequestOpts - ) - .returns(OpenAI::Models::Batch) + request_options: OpenAI::RequestOptions::OrHash + ).returns(OpenAI::Batch) end def create( # The time frame within which the batch should be processed. Currently only `24h` @@ -41,18 +41,30 @@ module OpenAI # a maximum length of 512 characters. metadata: nil, request_options: {} - ); end + ) + end + # Retrieves a batch. - sig { params(batch_id: String, request_options: OpenAI::RequestOpts).returns(OpenAI::Models::Batch) } + sig do + params( + batch_id: String, + request_options: OpenAI::RequestOptions::OrHash + ).returns(OpenAI::Batch) + end def retrieve( # The ID of the batch to retrieve. batch_id, request_options: {} - ); end + ) + end + # List your organization's batches. sig do - params(after: String, limit: Integer, request_options: OpenAI::RequestOpts) - .returns(OpenAI::Internal::CursorPage[OpenAI::Models::Batch]) + params( + after: String, + limit: Integer, + request_options: OpenAI::RequestOptions::OrHash + ).returns(OpenAI::Internal::CursorPage[OpenAI::Batch]) end def list( # A cursor for use in pagination. `after` is an object ID that defines your place @@ -64,19 +76,29 @@ module OpenAI # 100, and the default is 20. limit: nil, request_options: {} - ); end + ) + end + # Cancels an in-progress batch. The batch will be in status `cancelling` for up to # 10 minutes, before changing to `cancelled`, where it will have partial results # (if any) available in the output file. - sig { params(batch_id: String, request_options: OpenAI::RequestOpts).returns(OpenAI::Models::Batch) } + sig do + params( + batch_id: String, + request_options: OpenAI::RequestOptions::OrHash + ).returns(OpenAI::Batch) + end def cancel( # The ID of the batch to cancel. batch_id, request_options: {} - ); end + ) + end + # @api private sig { params(client: OpenAI::Client).returns(T.attached_class) } - def self.new(client:); end + def self.new(client:) + end end end end diff --git a/rbi/openai/resources/beta.rbi b/rbi/openai/resources/beta.rbi index c0be4403..c53baf2b 100644 --- a/rbi/openai/resources/beta.rbi +++ b/rbi/openai/resources/beta.rbi @@ -11,7 +11,8 @@ module OpenAI # @api private sig { params(client: OpenAI::Client).returns(T.attached_class) } - def self.new(client:); end + def self.new(client:) + end end end end diff --git a/rbi/openai/resources/beta/assistants.rbi b/rbi/openai/resources/beta/assistants.rbi index f58ad07a..d58ecbb1 100644 --- a/rbi/openai/resources/beta/assistants.rbi +++ b/rbi/openai/resources/beta/assistants.rbi @@ -7,35 +7,37 @@ module OpenAI # Create an assistant with a model and instructions. sig do params( - model: T.any(String, OpenAI::Models::ChatModel::OrSymbol), + model: T.any(String, OpenAI::ChatModel::OrSymbol), description: T.nilable(String), instructions: T.nilable(String), metadata: T.nilable(T::Hash[Symbol, String]), name: T.nilable(String), - reasoning_effort: T.nilable(OpenAI::Models::ReasoningEffort::OrSymbol), - response_format: T.nilable( - T.any( - Symbol, - OpenAI::Models::ResponseFormatText, - OpenAI::Internal::AnyHash, - OpenAI::Models::ResponseFormatJSONObject, - OpenAI::Models::ResponseFormatJSONSchema - ) - ), + reasoning_effort: T.nilable(OpenAI::ReasoningEffort::OrSymbol), + response_format: + T.nilable( + T.any( + Symbol, + OpenAI::ResponseFormatText::OrHash, + OpenAI::ResponseFormatJSONObject::OrHash, + OpenAI::ResponseFormatJSONSchema::OrHash + ) + ), temperature: T.nilable(Float), - tool_resources: T.nilable(T.any(OpenAI::Models::Beta::AssistantCreateParams::ToolResources, OpenAI::Internal::AnyHash)), - tools: T::Array[ - T.any( - OpenAI::Models::Beta::CodeInterpreterTool, - OpenAI::Internal::AnyHash, - OpenAI::Models::Beta::FileSearchTool, - OpenAI::Models::Beta::FunctionTool - ) - ], + tool_resources: + T.nilable( + OpenAI::Beta::AssistantCreateParams::ToolResources::OrHash + ), + tools: + T::Array[ + T.any( + OpenAI::Beta::CodeInterpreterTool::OrHash, + OpenAI::Beta::FileSearchTool::OrHash, + OpenAI::Beta::FunctionTool::OrHash + ) + ], top_p: T.nilable(Float), - request_options: OpenAI::RequestOpts - ) - .returns(OpenAI::Models::Beta::Assistant) + request_options: OpenAI::RequestOptions::OrHash + ).returns(OpenAI::Beta::Assistant) end def create( # ID of the model to use. You can use the @@ -106,16 +108,23 @@ module OpenAI # We generally recommend altering this or temperature but not both. top_p: nil, request_options: {} - ); end + ) + end + # Retrieves an assistant. sig do - params(assistant_id: String, request_options: OpenAI::RequestOpts).returns(OpenAI::Models::Beta::Assistant) + params( + assistant_id: String, + request_options: OpenAI::RequestOptions::OrHash + ).returns(OpenAI::Beta::Assistant) end def retrieve( # The ID of the assistant to retrieve. assistant_id, request_options: {} - ); end + ) + end + # Modifies an assistant. sig do params( @@ -123,32 +132,38 @@ module OpenAI description: T.nilable(String), instructions: T.nilable(String), metadata: T.nilable(T::Hash[Symbol, String]), - model: T.any(String, OpenAI::Models::Beta::AssistantUpdateParams::Model::OrSymbol), - name: T.nilable(String), - reasoning_effort: T.nilable(OpenAI::Models::ReasoningEffort::OrSymbol), - response_format: T.nilable( + model: T.any( - Symbol, - OpenAI::Models::ResponseFormatText, - OpenAI::Internal::AnyHash, - OpenAI::Models::ResponseFormatJSONObject, - OpenAI::Models::ResponseFormatJSONSchema - ) - ), + String, + OpenAI::Beta::AssistantUpdateParams::Model::OrSymbol + ), + name: T.nilable(String), + reasoning_effort: T.nilable(OpenAI::ReasoningEffort::OrSymbol), + response_format: + T.nilable( + T.any( + Symbol, + OpenAI::ResponseFormatText::OrHash, + OpenAI::ResponseFormatJSONObject::OrHash, + OpenAI::ResponseFormatJSONSchema::OrHash + ) + ), temperature: T.nilable(Float), - tool_resources: T.nilable(T.any(OpenAI::Models::Beta::AssistantUpdateParams::ToolResources, OpenAI::Internal::AnyHash)), - tools: T::Array[ - T.any( - OpenAI::Models::Beta::CodeInterpreterTool, - OpenAI::Internal::AnyHash, - OpenAI::Models::Beta::FileSearchTool, - OpenAI::Models::Beta::FunctionTool - ) - ], + tool_resources: + T.nilable( + OpenAI::Beta::AssistantUpdateParams::ToolResources::OrHash + ), + tools: + T::Array[ + T.any( + OpenAI::Beta::CodeInterpreterTool::OrHash, + OpenAI::Beta::FileSearchTool::OrHash, + OpenAI::Beta::FunctionTool::OrHash + ) + ], top_p: T.nilable(Float), - request_options: OpenAI::RequestOpts - ) - .returns(OpenAI::Models::Beta::Assistant) + request_options: OpenAI::RequestOptions::OrHash + ).returns(OpenAI::Beta::Assistant) end def update( # The ID of the assistant to modify. @@ -221,17 +236,18 @@ module OpenAI # We generally recommend altering this or temperature but not both. top_p: nil, request_options: {} - ); end + ) + end + # Returns a list of assistants. sig do params( after: String, before: String, limit: Integer, - order: OpenAI::Models::Beta::AssistantListParams::Order::OrSymbol, - request_options: OpenAI::RequestOpts - ) - .returns(OpenAI::Internal::CursorPage[OpenAI::Models::Beta::Assistant]) + order: OpenAI::Beta::AssistantListParams::Order::OrSymbol, + request_options: OpenAI::RequestOptions::OrHash + ).returns(OpenAI::Internal::CursorPage[OpenAI::Beta::Assistant]) end def list( # A cursor for use in pagination. `after` is an object ID that defines your place @@ -251,20 +267,27 @@ module OpenAI # order and `desc` for descending order. order: nil, request_options: {} - ); end + ) + end + # Delete an assistant. sig do - params(assistant_id: String, request_options: OpenAI::RequestOpts) - .returns(OpenAI::Models::Beta::AssistantDeleted) + params( + assistant_id: String, + request_options: OpenAI::RequestOptions::OrHash + ).returns(OpenAI::Beta::AssistantDeleted) end def delete( # The ID of the assistant to delete. assistant_id, request_options: {} - ); end + ) + end + # @api private sig { params(client: OpenAI::Client).returns(T.attached_class) } - def self.new(client:); end + def self.new(client:) + end end end end diff --git a/rbi/openai/resources/beta/threads.rbi b/rbi/openai/resources/beta/threads.rbi index aa3e43b7..9279a612 100644 --- a/rbi/openai/resources/beta/threads.rbi +++ b/rbi/openai/resources/beta/threads.rbi @@ -13,12 +13,15 @@ module OpenAI # Create a thread. sig do params( - messages: T::Array[T.any(OpenAI::Models::Beta::ThreadCreateParams::Message, OpenAI::Internal::AnyHash)], + messages: + T::Array[OpenAI::Beta::ThreadCreateParams::Message::OrHash], metadata: T.nilable(T::Hash[Symbol, String]), - tool_resources: T.nilable(T.any(OpenAI::Models::Beta::ThreadCreateParams::ToolResources, OpenAI::Internal::AnyHash)), - request_options: OpenAI::RequestOpts - ) - .returns(OpenAI::Models::Beta::Thread) + tool_resources: + T.nilable( + OpenAI::Beta::ThreadCreateParams::ToolResources::OrHash + ), + request_options: OpenAI::RequestOptions::OrHash + ).returns(OpenAI::Beta::Thread) end def create( # A list of [messages](https://platform.openai.com/docs/api-reference/messages) to @@ -37,23 +40,34 @@ module OpenAI # tool requires a list of vector store IDs. tool_resources: nil, request_options: {} - ); end + ) + end + # Retrieves a thread. - sig { params(thread_id: String, request_options: OpenAI::RequestOpts).returns(OpenAI::Models::Beta::Thread) } + sig do + params( + thread_id: String, + request_options: OpenAI::RequestOptions::OrHash + ).returns(OpenAI::Beta::Thread) + end def retrieve( # The ID of the thread to retrieve. thread_id, request_options: {} - ); end + ) + end + # Modifies a thread. sig do params( thread_id: String, metadata: T.nilable(T::Hash[Symbol, String]), - tool_resources: T.nilable(T.any(OpenAI::Models::Beta::ThreadUpdateParams::ToolResources, OpenAI::Internal::AnyHash)), - request_options: OpenAI::RequestOpts - ) - .returns(OpenAI::Models::Beta::Thread) + tool_resources: + T.nilable( + OpenAI::Beta::ThreadUpdateParams::ToolResources::OrHash + ), + request_options: OpenAI::RequestOptions::OrHash + ).returns(OpenAI::Beta::Thread) end def update( # The ID of the thread to modify. Only the `metadata` can be modified. @@ -71,17 +85,23 @@ module OpenAI # tool requires a list of vector store IDs. tool_resources: nil, request_options: {} - ); end + ) + end + # Delete a thread. sig do - params(thread_id: String, request_options: OpenAI::RequestOpts) - .returns(OpenAI::Models::Beta::ThreadDeleted) + params( + thread_id: String, + request_options: OpenAI::RequestOptions::OrHash + ).returns(OpenAI::Beta::ThreadDeleted) end def delete( # The ID of the thread to delete. thread_id, request_options: {} - ); end + ) + end + # See {OpenAI::Resources::Beta::Threads#stream_raw} for streaming counterpart. # # Create a thread and run it in one request. @@ -92,45 +112,48 @@ module OpenAI max_completion_tokens: T.nilable(Integer), max_prompt_tokens: T.nilable(Integer), metadata: T.nilable(T::Hash[Symbol, String]), - model: T.nilable(T.any(String, OpenAI::Models::ChatModel::OrSymbol)), + model: T.nilable(T.any(String, OpenAI::ChatModel::OrSymbol)), parallel_tool_calls: T::Boolean, - response_format: T.nilable( - T.any( - Symbol, - OpenAI::Models::ResponseFormatText, - OpenAI::Internal::AnyHash, - OpenAI::Models::ResponseFormatJSONObject, - OpenAI::Models::ResponseFormatJSONSchema - ) - ), + response_format: + T.nilable( + T.any( + Symbol, + OpenAI::ResponseFormatText::OrHash, + OpenAI::ResponseFormatJSONObject::OrHash, + OpenAI::ResponseFormatJSONSchema::OrHash + ) + ), temperature: T.nilable(Float), - thread: T.any(OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread, OpenAI::Internal::AnyHash), - tool_choice: T.nilable( - T.any( - OpenAI::Models::Beta::AssistantToolChoiceOption::Auto::OrSymbol, - OpenAI::Models::Beta::AssistantToolChoice, - OpenAI::Internal::AnyHash - ) - ), - tool_resources: T.nilable(T.any(OpenAI::Models::Beta::ThreadCreateAndRunParams::ToolResources, OpenAI::Internal::AnyHash)), - tools: T.nilable( - T::Array[ + thread: OpenAI::Beta::ThreadCreateAndRunParams::Thread::OrHash, + tool_choice: + T.nilable( T.any( - OpenAI::Models::Beta::CodeInterpreterTool, - OpenAI::Internal::AnyHash, - OpenAI::Models::Beta::FileSearchTool, - OpenAI::Models::Beta::FunctionTool + OpenAI::Beta::AssistantToolChoiceOption::Auto::OrSymbol, + OpenAI::Beta::AssistantToolChoice::OrHash ) - ] - ), + ), + tool_resources: + T.nilable( + OpenAI::Beta::ThreadCreateAndRunParams::ToolResources::OrHash + ), + tools: + T.nilable( + T::Array[ + T.any( + OpenAI::Beta::CodeInterpreterTool::OrHash, + OpenAI::Beta::FileSearchTool::OrHash, + OpenAI::Beta::FunctionTool::OrHash + ) + ] + ), top_p: T.nilable(Float), - truncation_strategy: T.nilable( - T.any(OpenAI::Models::Beta::ThreadCreateAndRunParams::TruncationStrategy, OpenAI::Internal::AnyHash) - ), + truncation_strategy: + T.nilable( + OpenAI::Beta::ThreadCreateAndRunParams::TruncationStrategy::OrHash + ), stream: T.noreturn, - request_options: OpenAI::RequestOpts - ) - .returns(OpenAI::Models::Beta::Threads::Run) + request_options: OpenAI::RequestOptions::OrHash + ).returns(OpenAI::Beta::Threads::Run) end def create_and_run( # The ID of the @@ -225,7 +248,9 @@ module OpenAI # `#create_and_run` for streaming and non-streaming use cases, respectively. stream: false, request_options: {} - ); end + ) + end + # See {OpenAI::Resources::Beta::Threads#create_and_run} for non-streaming # counterpart. # @@ -237,74 +262,77 @@ module OpenAI max_completion_tokens: T.nilable(Integer), max_prompt_tokens: T.nilable(Integer), metadata: T.nilable(T::Hash[Symbol, String]), - model: T.nilable(T.any(String, OpenAI::Models::ChatModel::OrSymbol)), + model: T.nilable(T.any(String, OpenAI::ChatModel::OrSymbol)), parallel_tool_calls: T::Boolean, - response_format: T.nilable( - T.any( - Symbol, - OpenAI::Models::ResponseFormatText, - OpenAI::Internal::AnyHash, - OpenAI::Models::ResponseFormatJSONObject, - OpenAI::Models::ResponseFormatJSONSchema - ) - ), + response_format: + T.nilable( + T.any( + Symbol, + OpenAI::ResponseFormatText::OrHash, + OpenAI::ResponseFormatJSONObject::OrHash, + OpenAI::ResponseFormatJSONSchema::OrHash + ) + ), temperature: T.nilable(Float), - thread: T.any(OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread, OpenAI::Internal::AnyHash), - tool_choice: T.nilable( - T.any( - OpenAI::Models::Beta::AssistantToolChoiceOption::Auto::OrSymbol, - OpenAI::Models::Beta::AssistantToolChoice, - OpenAI::Internal::AnyHash - ) - ), - tool_resources: T.nilable(T.any(OpenAI::Models::Beta::ThreadCreateAndRunParams::ToolResources, OpenAI::Internal::AnyHash)), - tools: T.nilable( - T::Array[ + thread: OpenAI::Beta::ThreadCreateAndRunParams::Thread::OrHash, + tool_choice: + T.nilable( T.any( - OpenAI::Models::Beta::CodeInterpreterTool, - OpenAI::Internal::AnyHash, - OpenAI::Models::Beta::FileSearchTool, - OpenAI::Models::Beta::FunctionTool + OpenAI::Beta::AssistantToolChoiceOption::Auto::OrSymbol, + OpenAI::Beta::AssistantToolChoice::OrHash ) - ] - ), + ), + tool_resources: + T.nilable( + OpenAI::Beta::ThreadCreateAndRunParams::ToolResources::OrHash + ), + tools: + T.nilable( + T::Array[ + T.any( + OpenAI::Beta::CodeInterpreterTool::OrHash, + OpenAI::Beta::FileSearchTool::OrHash, + OpenAI::Beta::FunctionTool::OrHash + ) + ] + ), top_p: T.nilable(Float), - truncation_strategy: T.nilable( - T.any(OpenAI::Models::Beta::ThreadCreateAndRunParams::TruncationStrategy, OpenAI::Internal::AnyHash) - ), + truncation_strategy: + T.nilable( + OpenAI::Beta::ThreadCreateAndRunParams::TruncationStrategy::OrHash + ), stream: T.noreturn, - request_options: OpenAI::RequestOpts + request_options: OpenAI::RequestOptions::OrHash + ).returns( + OpenAI::Internal::Stream[ + T.any( + OpenAI::Beta::AssistantStreamEvent::ThreadCreated, + OpenAI::Beta::AssistantStreamEvent::ThreadRunCreated, + OpenAI::Beta::AssistantStreamEvent::ThreadRunQueued, + OpenAI::Beta::AssistantStreamEvent::ThreadRunInProgress, + OpenAI::Beta::AssistantStreamEvent::ThreadRunRequiresAction, + OpenAI::Beta::AssistantStreamEvent::ThreadRunCompleted, + OpenAI::Beta::AssistantStreamEvent::ThreadRunIncomplete, + OpenAI::Beta::AssistantStreamEvent::ThreadRunFailed, + OpenAI::Beta::AssistantStreamEvent::ThreadRunCancelling, + OpenAI::Beta::AssistantStreamEvent::ThreadRunCancelled, + OpenAI::Beta::AssistantStreamEvent::ThreadRunExpired, + OpenAI::Beta::AssistantStreamEvent::ThreadRunStepCreated, + OpenAI::Beta::AssistantStreamEvent::ThreadRunStepInProgress, + OpenAI::Beta::AssistantStreamEvent::ThreadRunStepDelta, + OpenAI::Beta::AssistantStreamEvent::ThreadRunStepCompleted, + OpenAI::Beta::AssistantStreamEvent::ThreadRunStepFailed, + OpenAI::Beta::AssistantStreamEvent::ThreadRunStepCancelled, + OpenAI::Beta::AssistantStreamEvent::ThreadRunStepExpired, + OpenAI::Beta::AssistantStreamEvent::ThreadMessageCreated, + OpenAI::Beta::AssistantStreamEvent::ThreadMessageInProgress, + OpenAI::Beta::AssistantStreamEvent::ThreadMessageDelta, + OpenAI::Beta::AssistantStreamEvent::ThreadMessageCompleted, + OpenAI::Beta::AssistantStreamEvent::ThreadMessageIncomplete, + OpenAI::Beta::AssistantStreamEvent::ErrorEvent + ) + ] ) - .returns( - OpenAI::Internal::Stream[ - T.any( - 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 - ) - ] - ) end def stream_raw( # The ID of the @@ -399,10 +427,13 @@ module OpenAI # `#create_and_run` for streaming and non-streaming use cases, respectively. stream: true, request_options: {} - ); end + ) + end + # @api private sig { params(client: OpenAI::Client).returns(T.attached_class) } - def self.new(client:); end + def self.new(client:) + end end end end diff --git a/rbi/openai/resources/beta/threads/messages.rbi b/rbi/openai/resources/beta/threads/messages.rbi index f17e3cfe..593ceae0 100644 --- a/rbi/openai/resources/beta/threads/messages.rbi +++ b/rbi/openai/resources/beta/threads/messages.rbi @@ -9,25 +9,27 @@ module OpenAI sig do params( thread_id: String, - content: T.any( - String, - T::Array[ - T.any( - OpenAI::Models::Beta::Threads::ImageFileContentBlock, - OpenAI::Internal::AnyHash, - OpenAI::Models::Beta::Threads::ImageURLContentBlock, - OpenAI::Models::Beta::Threads::TextContentBlockParam - ) - ] - ), - role: OpenAI::Models::Beta::Threads::MessageCreateParams::Role::OrSymbol, - attachments: T.nilable( - T::Array[T.any(OpenAI::Models::Beta::Threads::MessageCreateParams::Attachment, OpenAI::Internal::AnyHash)] - ), + content: + T.any( + String, + T::Array[ + T.any( + OpenAI::Beta::Threads::ImageFileContentBlock::OrHash, + OpenAI::Beta::Threads::ImageURLContentBlock::OrHash, + OpenAI::Beta::Threads::TextContentBlockParam::OrHash + ) + ] + ), + role: OpenAI::Beta::Threads::MessageCreateParams::Role::OrSymbol, + attachments: + T.nilable( + T::Array[ + OpenAI::Beta::Threads::MessageCreateParams::Attachment::OrHash + ] + ), metadata: T.nilable(T::Hash[Symbol, String]), - request_options: OpenAI::RequestOpts - ) - .returns(OpenAI::Models::Beta::Threads::Message) + request_options: OpenAI::RequestOptions::OrHash + ).returns(OpenAI::Beta::Threads::Message) end def create( # The ID of the [thread](https://platform.openai.com/docs/api-reference/threads) @@ -52,11 +54,16 @@ module OpenAI # a maximum length of 512 characters. metadata: nil, request_options: {} - ); end + ) + end + # Retrieve a message. sig do - params(message_id: String, thread_id: String, request_options: OpenAI::RequestOpts) - .returns(OpenAI::Models::Beta::Threads::Message) + params( + message_id: String, + thread_id: String, + request_options: OpenAI::RequestOptions::OrHash + ).returns(OpenAI::Beta::Threads::Message) end def retrieve( # The ID of the message to retrieve. @@ -65,16 +72,17 @@ module OpenAI # to which this message belongs. thread_id:, request_options: {} - ); end + ) + end + # Modifies a message. sig do params( message_id: String, thread_id: String, metadata: T.nilable(T::Hash[Symbol, String]), - request_options: OpenAI::RequestOpts - ) - .returns(OpenAI::Models::Beta::Threads::Message) + request_options: OpenAI::RequestOptions::OrHash + ).returns(OpenAI::Beta::Threads::Message) end def update( # Path param: The ID of the message to modify. @@ -89,7 +97,9 @@ module OpenAI # a maximum length of 512 characters. metadata: nil, request_options: {} - ); end + ) + end + # Returns a list of messages for a given thread. sig do params( @@ -97,11 +107,12 @@ module OpenAI after: String, before: String, limit: Integer, - order: OpenAI::Models::Beta::Threads::MessageListParams::Order::OrSymbol, + order: OpenAI::Beta::Threads::MessageListParams::Order::OrSymbol, run_id: String, - request_options: OpenAI::RequestOpts + request_options: OpenAI::RequestOptions::OrHash + ).returns( + OpenAI::Internal::CursorPage[OpenAI::Beta::Threads::Message] ) - .returns(OpenAI::Internal::CursorPage[OpenAI::Models::Beta::Threads::Message]) end def list( # The ID of the [thread](https://platform.openai.com/docs/api-reference/threads) @@ -126,11 +137,16 @@ module OpenAI # Filter messages by the run ID that generated them. run_id: nil, request_options: {} - ); end + ) + end + # Deletes a message. sig do - params(message_id: String, thread_id: String, request_options: OpenAI::RequestOpts) - .returns(OpenAI::Models::Beta::Threads::MessageDeleted) + params( + message_id: String, + thread_id: String, + request_options: OpenAI::RequestOptions::OrHash + ).returns(OpenAI::Beta::Threads::MessageDeleted) end def delete( # The ID of the message to delete. @@ -138,10 +154,13 @@ module OpenAI # The ID of the thread to which this message belongs. thread_id:, request_options: {} - ); end + ) + end + # @api private sig { params(client: OpenAI::Client).returns(T.attached_class) } - def self.new(client:); end + def self.new(client:) + end end end end diff --git a/rbi/openai/resources/beta/threads/runs.rbi b/rbi/openai/resources/beta/threads/runs.rbi index 0148ff01..a1d803bf 100644 --- a/rbi/openai/resources/beta/threads/runs.rbi +++ b/rbi/openai/resources/beta/threads/runs.rbi @@ -16,53 +16,57 @@ module OpenAI params( thread_id: String, assistant_id: String, - include: T::Array[OpenAI::Models::Beta::Threads::Runs::RunStepInclude::OrSymbol], + include: + T::Array[OpenAI::Beta::Threads::Runs::RunStepInclude::OrSymbol], additional_instructions: T.nilable(String), - additional_messages: T.nilable( - T::Array[T.any(OpenAI::Models::Beta::Threads::RunCreateParams::AdditionalMessage, OpenAI::Internal::AnyHash)] - ), + additional_messages: + T.nilable( + T::Array[ + OpenAI::Beta::Threads::RunCreateParams::AdditionalMessage::OrHash + ] + ), instructions: T.nilable(String), max_completion_tokens: T.nilable(Integer), max_prompt_tokens: T.nilable(Integer), metadata: T.nilable(T::Hash[Symbol, String]), - model: T.nilable(T.any(String, OpenAI::Models::ChatModel::OrSymbol)), + model: T.nilable(T.any(String, OpenAI::ChatModel::OrSymbol)), parallel_tool_calls: T::Boolean, - reasoning_effort: T.nilable(OpenAI::Models::ReasoningEffort::OrSymbol), - response_format: T.nilable( - T.any( - Symbol, - OpenAI::Models::ResponseFormatText, - OpenAI::Internal::AnyHash, - OpenAI::Models::ResponseFormatJSONObject, - OpenAI::Models::ResponseFormatJSONSchema - ) - ), + reasoning_effort: T.nilable(OpenAI::ReasoningEffort::OrSymbol), + response_format: + T.nilable( + T.any( + Symbol, + OpenAI::ResponseFormatText::OrHash, + OpenAI::ResponseFormatJSONObject::OrHash, + OpenAI::ResponseFormatJSONSchema::OrHash + ) + ), temperature: T.nilable(Float), - tool_choice: T.nilable( - T.any( - OpenAI::Models::Beta::AssistantToolChoiceOption::Auto::OrSymbol, - OpenAI::Models::Beta::AssistantToolChoice, - OpenAI::Internal::AnyHash - ) - ), - tools: T.nilable( - T::Array[ + tool_choice: + T.nilable( T.any( - OpenAI::Models::Beta::CodeInterpreterTool, - OpenAI::Internal::AnyHash, - OpenAI::Models::Beta::FileSearchTool, - OpenAI::Models::Beta::FunctionTool + OpenAI::Beta::AssistantToolChoiceOption::Auto::OrSymbol, + OpenAI::Beta::AssistantToolChoice::OrHash ) - ] - ), + ), + tools: + T.nilable( + T::Array[ + T.any( + OpenAI::Beta::CodeInterpreterTool::OrHash, + OpenAI::Beta::FileSearchTool::OrHash, + OpenAI::Beta::FunctionTool::OrHash + ) + ] + ), top_p: T.nilable(Float), - truncation_strategy: T.nilable( - T.any(OpenAI::Models::Beta::Threads::RunCreateParams::TruncationStrategy, OpenAI::Internal::AnyHash) - ), + truncation_strategy: + T.nilable( + OpenAI::Beta::Threads::RunCreateParams::TruncationStrategy::OrHash + ), stream: T.noreturn, - request_options: OpenAI::RequestOpts - ) - .returns(OpenAI::Models::Beta::Threads::Run) + request_options: OpenAI::RequestOptions::OrHash + ).returns(OpenAI::Beta::Threads::Run) end def create( # Path param: The ID of the thread to run. @@ -177,7 +181,9 @@ module OpenAI # `#create` for streaming and non-streaming use cases, respectively. stream: false, request_options: {} - ); end + ) + end + # See {OpenAI::Resources::Beta::Threads::Runs#create} for non-streaming # counterpart. # @@ -186,82 +192,86 @@ module OpenAI params( thread_id: String, assistant_id: String, - include: T::Array[OpenAI::Models::Beta::Threads::Runs::RunStepInclude::OrSymbol], + include: + T::Array[OpenAI::Beta::Threads::Runs::RunStepInclude::OrSymbol], additional_instructions: T.nilable(String), - additional_messages: T.nilable( - T::Array[T.any(OpenAI::Models::Beta::Threads::RunCreateParams::AdditionalMessage, OpenAI::Internal::AnyHash)] - ), + additional_messages: + T.nilable( + T::Array[ + OpenAI::Beta::Threads::RunCreateParams::AdditionalMessage::OrHash + ] + ), instructions: T.nilable(String), max_completion_tokens: T.nilable(Integer), max_prompt_tokens: T.nilable(Integer), metadata: T.nilable(T::Hash[Symbol, String]), - model: T.nilable(T.any(String, OpenAI::Models::ChatModel::OrSymbol)), + model: T.nilable(T.any(String, OpenAI::ChatModel::OrSymbol)), parallel_tool_calls: T::Boolean, - reasoning_effort: T.nilable(OpenAI::Models::ReasoningEffort::OrSymbol), - response_format: T.nilable( - T.any( - Symbol, - OpenAI::Models::ResponseFormatText, - OpenAI::Internal::AnyHash, - OpenAI::Models::ResponseFormatJSONObject, - OpenAI::Models::ResponseFormatJSONSchema - ) - ), + reasoning_effort: T.nilable(OpenAI::ReasoningEffort::OrSymbol), + response_format: + T.nilable( + T.any( + Symbol, + OpenAI::ResponseFormatText::OrHash, + OpenAI::ResponseFormatJSONObject::OrHash, + OpenAI::ResponseFormatJSONSchema::OrHash + ) + ), temperature: T.nilable(Float), - tool_choice: T.nilable( - T.any( - OpenAI::Models::Beta::AssistantToolChoiceOption::Auto::OrSymbol, - OpenAI::Models::Beta::AssistantToolChoice, - OpenAI::Internal::AnyHash - ) - ), - tools: T.nilable( - T::Array[ + tool_choice: + T.nilable( T.any( - OpenAI::Models::Beta::CodeInterpreterTool, - OpenAI::Internal::AnyHash, - OpenAI::Models::Beta::FileSearchTool, - OpenAI::Models::Beta::FunctionTool + OpenAI::Beta::AssistantToolChoiceOption::Auto::OrSymbol, + OpenAI::Beta::AssistantToolChoice::OrHash ) - ] - ), + ), + tools: + T.nilable( + T::Array[ + T.any( + OpenAI::Beta::CodeInterpreterTool::OrHash, + OpenAI::Beta::FileSearchTool::OrHash, + OpenAI::Beta::FunctionTool::OrHash + ) + ] + ), top_p: T.nilable(Float), - truncation_strategy: T.nilable( - T.any(OpenAI::Models::Beta::Threads::RunCreateParams::TruncationStrategy, OpenAI::Internal::AnyHash) - ), + truncation_strategy: + T.nilable( + OpenAI::Beta::Threads::RunCreateParams::TruncationStrategy::OrHash + ), stream: T.noreturn, - request_options: OpenAI::RequestOpts + request_options: OpenAI::RequestOptions::OrHash + ).returns( + OpenAI::Internal::Stream[ + T.any( + OpenAI::Beta::AssistantStreamEvent::ThreadCreated, + OpenAI::Beta::AssistantStreamEvent::ThreadRunCreated, + OpenAI::Beta::AssistantStreamEvent::ThreadRunQueued, + OpenAI::Beta::AssistantStreamEvent::ThreadRunInProgress, + OpenAI::Beta::AssistantStreamEvent::ThreadRunRequiresAction, + OpenAI::Beta::AssistantStreamEvent::ThreadRunCompleted, + OpenAI::Beta::AssistantStreamEvent::ThreadRunIncomplete, + OpenAI::Beta::AssistantStreamEvent::ThreadRunFailed, + OpenAI::Beta::AssistantStreamEvent::ThreadRunCancelling, + OpenAI::Beta::AssistantStreamEvent::ThreadRunCancelled, + OpenAI::Beta::AssistantStreamEvent::ThreadRunExpired, + OpenAI::Beta::AssistantStreamEvent::ThreadRunStepCreated, + OpenAI::Beta::AssistantStreamEvent::ThreadRunStepInProgress, + OpenAI::Beta::AssistantStreamEvent::ThreadRunStepDelta, + OpenAI::Beta::AssistantStreamEvent::ThreadRunStepCompleted, + OpenAI::Beta::AssistantStreamEvent::ThreadRunStepFailed, + OpenAI::Beta::AssistantStreamEvent::ThreadRunStepCancelled, + OpenAI::Beta::AssistantStreamEvent::ThreadRunStepExpired, + OpenAI::Beta::AssistantStreamEvent::ThreadMessageCreated, + OpenAI::Beta::AssistantStreamEvent::ThreadMessageInProgress, + OpenAI::Beta::AssistantStreamEvent::ThreadMessageDelta, + OpenAI::Beta::AssistantStreamEvent::ThreadMessageCompleted, + OpenAI::Beta::AssistantStreamEvent::ThreadMessageIncomplete, + OpenAI::Beta::AssistantStreamEvent::ErrorEvent + ) + ] ) - .returns( - OpenAI::Internal::Stream[ - T.any( - 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 - ) - ] - ) end def create_stream_raw( # Path param: The ID of the thread to run. @@ -376,11 +386,16 @@ module OpenAI # `#create` for streaming and non-streaming use cases, respectively. stream: true, request_options: {} - ); end + ) + end + # Retrieves a run. sig do - params(run_id: String, thread_id: String, request_options: OpenAI::RequestOpts) - .returns(OpenAI::Models::Beta::Threads::Run) + params( + run_id: String, + thread_id: String, + request_options: OpenAI::RequestOptions::OrHash + ).returns(OpenAI::Beta::Threads::Run) end def retrieve( # The ID of the run to retrieve. @@ -389,16 +404,17 @@ module OpenAI # that was run. thread_id:, request_options: {} - ); end + ) + end + # Modifies a run. sig do params( run_id: String, thread_id: String, metadata: T.nilable(T::Hash[Symbol, String]), - request_options: OpenAI::RequestOpts - ) - .returns(OpenAI::Models::Beta::Threads::Run) + request_options: OpenAI::RequestOptions::OrHash + ).returns(OpenAI::Beta::Threads::Run) end def update( # Path param: The ID of the run to modify. @@ -414,7 +430,9 @@ module OpenAI # a maximum length of 512 characters. metadata: nil, request_options: {} - ); end + ) + end + # Returns a list of runs belonging to a thread. sig do params( @@ -422,10 +440,9 @@ module OpenAI after: String, before: String, limit: Integer, - order: OpenAI::Models::Beta::Threads::RunListParams::Order::OrSymbol, - request_options: OpenAI::RequestOpts - ) - .returns(OpenAI::Internal::CursorPage[OpenAI::Models::Beta::Threads::Run]) + order: OpenAI::Beta::Threads::RunListParams::Order::OrSymbol, + request_options: OpenAI::RequestOptions::OrHash + ).returns(OpenAI::Internal::CursorPage[OpenAI::Beta::Threads::Run]) end def list( # The ID of the thread the run belongs to. @@ -447,11 +464,16 @@ module OpenAI # order and `desc` for descending order. order: nil, request_options: {} - ); end + ) + end + # Cancels a run that is `in_progress`. sig do - params(run_id: String, thread_id: String, request_options: OpenAI::RequestOpts) - .returns(OpenAI::Models::Beta::Threads::Run) + params( + run_id: String, + thread_id: String, + request_options: OpenAI::RequestOptions::OrHash + ).returns(OpenAI::Beta::Threads::Run) end def cancel( # The ID of the run to cancel. @@ -459,7 +481,9 @@ module OpenAI # The ID of the thread to which this run belongs. thread_id:, request_options: {} - ); end + ) + end + # See {OpenAI::Resources::Beta::Threads::Runs#submit_tool_outputs_stream_raw} for # streaming counterpart. # @@ -471,11 +495,13 @@ module OpenAI params( run_id: String, thread_id: String, - tool_outputs: T::Array[T.any(OpenAI::Models::Beta::Threads::RunSubmitToolOutputsParams::ToolOutput, OpenAI::Internal::AnyHash)], + tool_outputs: + T::Array[ + OpenAI::Beta::Threads::RunSubmitToolOutputsParams::ToolOutput::OrHash + ], stream: T.noreturn, - request_options: OpenAI::RequestOpts - ) - .returns(OpenAI::Models::Beta::Threads::Run) + request_options: OpenAI::RequestOptions::OrHash + ).returns(OpenAI::Beta::Threads::Run) end def submit_tool_outputs( # Path param: The ID of the run that requires the tool output submission. @@ -491,7 +517,9 @@ module OpenAI # non-streaming use cases, respectively. stream: false, request_options: {} - ); end + ) + end + # See {OpenAI::Resources::Beta::Threads::Runs#submit_tool_outputs} for # non-streaming counterpart. # @@ -503,40 +531,42 @@ module OpenAI params( run_id: String, thread_id: String, - tool_outputs: T::Array[T.any(OpenAI::Models::Beta::Threads::RunSubmitToolOutputsParams::ToolOutput, OpenAI::Internal::AnyHash)], + tool_outputs: + T::Array[ + OpenAI::Beta::Threads::RunSubmitToolOutputsParams::ToolOutput::OrHash + ], stream: T.noreturn, - request_options: OpenAI::RequestOpts + request_options: OpenAI::RequestOptions::OrHash + ).returns( + OpenAI::Internal::Stream[ + T.any( + OpenAI::Beta::AssistantStreamEvent::ThreadCreated, + OpenAI::Beta::AssistantStreamEvent::ThreadRunCreated, + OpenAI::Beta::AssistantStreamEvent::ThreadRunQueued, + OpenAI::Beta::AssistantStreamEvent::ThreadRunInProgress, + OpenAI::Beta::AssistantStreamEvent::ThreadRunRequiresAction, + OpenAI::Beta::AssistantStreamEvent::ThreadRunCompleted, + OpenAI::Beta::AssistantStreamEvent::ThreadRunIncomplete, + OpenAI::Beta::AssistantStreamEvent::ThreadRunFailed, + OpenAI::Beta::AssistantStreamEvent::ThreadRunCancelling, + OpenAI::Beta::AssistantStreamEvent::ThreadRunCancelled, + OpenAI::Beta::AssistantStreamEvent::ThreadRunExpired, + OpenAI::Beta::AssistantStreamEvent::ThreadRunStepCreated, + OpenAI::Beta::AssistantStreamEvent::ThreadRunStepInProgress, + OpenAI::Beta::AssistantStreamEvent::ThreadRunStepDelta, + OpenAI::Beta::AssistantStreamEvent::ThreadRunStepCompleted, + OpenAI::Beta::AssistantStreamEvent::ThreadRunStepFailed, + OpenAI::Beta::AssistantStreamEvent::ThreadRunStepCancelled, + OpenAI::Beta::AssistantStreamEvent::ThreadRunStepExpired, + OpenAI::Beta::AssistantStreamEvent::ThreadMessageCreated, + OpenAI::Beta::AssistantStreamEvent::ThreadMessageInProgress, + OpenAI::Beta::AssistantStreamEvent::ThreadMessageDelta, + OpenAI::Beta::AssistantStreamEvent::ThreadMessageCompleted, + OpenAI::Beta::AssistantStreamEvent::ThreadMessageIncomplete, + OpenAI::Beta::AssistantStreamEvent::ErrorEvent + ) + ] ) - .returns( - OpenAI::Internal::Stream[ - T.any( - 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 - ) - ] - ) end def submit_tool_outputs_stream_raw( # Path param: The ID of the run that requires the tool output submission. @@ -552,10 +582,13 @@ module OpenAI # non-streaming use cases, respectively. stream: true, request_options: {} - ); end + ) + end + # @api private sig { params(client: OpenAI::Client).returns(T.attached_class) } - def self.new(client:); end + def self.new(client:) + end end end end diff --git a/rbi/openai/resources/beta/threads/runs/steps.rbi b/rbi/openai/resources/beta/threads/runs/steps.rbi index 4ffb638c..a70232d6 100644 --- a/rbi/openai/resources/beta/threads/runs/steps.rbi +++ b/rbi/openai/resources/beta/threads/runs/steps.rbi @@ -12,10 +12,12 @@ module OpenAI step_id: String, thread_id: String, run_id: String, - include: T::Array[OpenAI::Models::Beta::Threads::Runs::RunStepInclude::OrSymbol], - request_options: OpenAI::RequestOpts - ) - .returns(OpenAI::Models::Beta::Threads::Runs::RunStep) + include: + T::Array[ + OpenAI::Beta::Threads::Runs::RunStepInclude::OrSymbol + ], + request_options: OpenAI::RequestOptions::OrHash + ).returns(OpenAI::Beta::Threads::Runs::RunStep) end def retrieve( # Path param: The ID of the run step to retrieve. @@ -34,7 +36,9 @@ module OpenAI # for more information. include: nil, request_options: {} - ); end + ) + end + # Returns a list of run steps belonging to a run. sig do params( @@ -42,12 +46,19 @@ module OpenAI thread_id: String, after: String, before: String, - include: T::Array[OpenAI::Models::Beta::Threads::Runs::RunStepInclude::OrSymbol], + include: + T::Array[ + OpenAI::Beta::Threads::Runs::RunStepInclude::OrSymbol + ], limit: Integer, - order: OpenAI::Models::Beta::Threads::Runs::StepListParams::Order::OrSymbol, - request_options: OpenAI::RequestOpts + order: + OpenAI::Beta::Threads::Runs::StepListParams::Order::OrSymbol, + request_options: OpenAI::RequestOptions::OrHash + ).returns( + OpenAI::Internal::CursorPage[ + OpenAI::Beta::Threads::Runs::RunStep + ] ) - .returns(OpenAI::Internal::CursorPage[OpenAI::Models::Beta::Threads::Runs::RunStep]) end def list( # Path param: The ID of the run the run steps belong to. @@ -80,10 +91,13 @@ module OpenAI # ascending order and `desc` for descending order. order: nil, request_options: {} - ); end + ) + end + # @api private sig { params(client: OpenAI::Client).returns(T.attached_class) } - def self.new(client:); end + def self.new(client:) + end end end end diff --git a/rbi/openai/resources/chat.rbi b/rbi/openai/resources/chat.rbi index 94e9f4ce..45c92d55 100644 --- a/rbi/openai/resources/chat.rbi +++ b/rbi/openai/resources/chat.rbi @@ -8,7 +8,8 @@ module OpenAI # @api private sig { params(client: OpenAI::Client).returns(T.attached_class) } - def self.new(client:); end + def self.new(client:) + end end end end diff --git a/rbi/openai/resources/chat/completions.rbi b/rbi/openai/resources/chat/completions.rbi index 9c73209e..46d3f6ba 100644 --- a/rbi/openai/resources/chat/completions.rbi +++ b/rbi/openai/resources/chat/completions.rbi @@ -28,63 +28,74 @@ module OpenAI # [refer to the reasoning guide](https://platform.openai.com/docs/guides/reasoning). sig do params( - messages: T::Array[ - T.any( - OpenAI::Models::Chat::ChatCompletionDeveloperMessageParam, - OpenAI::Internal::AnyHash, - OpenAI::Models::Chat::ChatCompletionSystemMessageParam, - OpenAI::Models::Chat::ChatCompletionUserMessageParam, - OpenAI::Models::Chat::ChatCompletionAssistantMessageParam, - OpenAI::Models::Chat::ChatCompletionToolMessageParam, - OpenAI::Models::Chat::ChatCompletionFunctionMessageParam - ) - ], - model: T.any(String, OpenAI::Models::ChatModel::OrSymbol), - audio: T.nilable(T.any(OpenAI::Models::Chat::ChatCompletionAudioParam, OpenAI::Internal::AnyHash)), + messages: + T::Array[ + T.any( + OpenAI::Chat::ChatCompletionDeveloperMessageParam::OrHash, + OpenAI::Chat::ChatCompletionSystemMessageParam::OrHash, + OpenAI::Chat::ChatCompletionUserMessageParam::OrHash, + OpenAI::Chat::ChatCompletionAssistantMessageParam::OrHash, + OpenAI::Chat::ChatCompletionToolMessageParam::OrHash, + OpenAI::Chat::ChatCompletionFunctionMessageParam::OrHash + ) + ], + model: T.any(String, OpenAI::ChatModel::OrSymbol), + audio: T.nilable(OpenAI::Chat::ChatCompletionAudioParam::OrHash), frequency_penalty: T.nilable(Float), - function_call: T.any( - OpenAI::Models::Chat::CompletionCreateParams::FunctionCall::FunctionCallMode::OrSymbol, - OpenAI::Models::Chat::ChatCompletionFunctionCallOption, - OpenAI::Internal::AnyHash - ), - functions: T::Array[T.any(OpenAI::Models::Chat::CompletionCreateParams::Function, OpenAI::Internal::AnyHash)], + function_call: + T.any( + OpenAI::Chat::CompletionCreateParams::FunctionCall::FunctionCallMode::OrSymbol, + OpenAI::Chat::ChatCompletionFunctionCallOption::OrHash + ), + functions: + T::Array[OpenAI::Chat::CompletionCreateParams::Function::OrHash], logit_bias: T.nilable(T::Hash[Symbol, Integer]), logprobs: T.nilable(T::Boolean), max_completion_tokens: T.nilable(Integer), max_tokens: T.nilable(Integer), metadata: T.nilable(T::Hash[Symbol, String]), - modalities: T.nilable(T::Array[OpenAI::Models::Chat::CompletionCreateParams::Modality::OrSymbol]), + modalities: + T.nilable( + T::Array[ + OpenAI::Chat::CompletionCreateParams::Modality::OrSymbol + ] + ), n: T.nilable(Integer), parallel_tool_calls: T::Boolean, - prediction: T.nilable(T.any(OpenAI::Models::Chat::ChatCompletionPredictionContent, OpenAI::Internal::AnyHash)), + prediction: + T.nilable(OpenAI::Chat::ChatCompletionPredictionContent::OrHash), presence_penalty: T.nilable(Float), - reasoning_effort: T.nilable(OpenAI::Models::ReasoningEffort::OrSymbol), - response_format: T.any( - OpenAI::Models::ResponseFormatText, - OpenAI::Internal::AnyHash, - OpenAI::Models::ResponseFormatJSONSchema, - OpenAI::Models::ResponseFormatJSONObject - ), + reasoning_effort: T.nilable(OpenAI::ReasoningEffort::OrSymbol), + response_format: + T.any( + OpenAI::ResponseFormatText::OrHash, + OpenAI::ResponseFormatJSONSchema::OrHash, + OpenAI::ResponseFormatJSONObject::OrHash + ), seed: T.nilable(Integer), - service_tier: T.nilable(OpenAI::Models::Chat::CompletionCreateParams::ServiceTier::OrSymbol), + service_tier: + T.nilable( + OpenAI::Chat::CompletionCreateParams::ServiceTier::OrSymbol + ), stop: T.nilable(T.any(String, T::Array[String])), store: T.nilable(T::Boolean), - stream_options: T.nilable(T.any(OpenAI::Models::Chat::ChatCompletionStreamOptions, OpenAI::Internal::AnyHash)), + stream_options: + T.nilable(OpenAI::Chat::ChatCompletionStreamOptions::OrHash), temperature: T.nilable(Float), - tool_choice: T.any( - OpenAI::Models::Chat::ChatCompletionToolChoiceOption::Auto::OrSymbol, - OpenAI::Models::Chat::ChatCompletionNamedToolChoice, - OpenAI::Internal::AnyHash - ), - tools: T::Array[T.any(OpenAI::Models::Chat::ChatCompletionTool, OpenAI::Internal::AnyHash)], + tool_choice: + T.any( + OpenAI::Chat::ChatCompletionToolChoiceOption::Auto::OrSymbol, + OpenAI::Chat::ChatCompletionNamedToolChoice::OrHash + ), + tools: T::Array[OpenAI::Chat::ChatCompletionTool::OrHash], top_logprobs: T.nilable(Integer), top_p: T.nilable(Float), user: String, - web_search_options: T.any(OpenAI::Models::Chat::CompletionCreateParams::WebSearchOptions, OpenAI::Internal::AnyHash), + web_search_options: + OpenAI::Chat::CompletionCreateParams::WebSearchOptions::OrHash, stream: T.noreturn, - request_options: OpenAI::RequestOpts - ) - .returns(OpenAI::Models::Chat::ChatCompletion) + request_options: OpenAI::RequestOptions::OrHash + ).returns(OpenAI::Chat::ChatCompletion) end def create( # A list of messages comprising the conversation so far. Depending on the @@ -279,7 +290,9 @@ module OpenAI # for streaming and non-streaming use cases, respectively. stream: false, request_options: {} - ); end + ) + end + # See {OpenAI::Resources::Chat::Completions#create} for non-streaming counterpart. # # **Starting a new project?** We recommend trying @@ -301,63 +314,74 @@ module OpenAI # [refer to the reasoning guide](https://platform.openai.com/docs/guides/reasoning). sig do params( - messages: T::Array[ - T.any( - OpenAI::Models::Chat::ChatCompletionDeveloperMessageParam, - OpenAI::Internal::AnyHash, - OpenAI::Models::Chat::ChatCompletionSystemMessageParam, - OpenAI::Models::Chat::ChatCompletionUserMessageParam, - OpenAI::Models::Chat::ChatCompletionAssistantMessageParam, - OpenAI::Models::Chat::ChatCompletionToolMessageParam, - OpenAI::Models::Chat::ChatCompletionFunctionMessageParam - ) - ], - model: T.any(String, OpenAI::Models::ChatModel::OrSymbol), - audio: T.nilable(T.any(OpenAI::Models::Chat::ChatCompletionAudioParam, OpenAI::Internal::AnyHash)), + messages: + T::Array[ + T.any( + OpenAI::Chat::ChatCompletionDeveloperMessageParam::OrHash, + OpenAI::Chat::ChatCompletionSystemMessageParam::OrHash, + OpenAI::Chat::ChatCompletionUserMessageParam::OrHash, + OpenAI::Chat::ChatCompletionAssistantMessageParam::OrHash, + OpenAI::Chat::ChatCompletionToolMessageParam::OrHash, + OpenAI::Chat::ChatCompletionFunctionMessageParam::OrHash + ) + ], + model: T.any(String, OpenAI::ChatModel::OrSymbol), + audio: T.nilable(OpenAI::Chat::ChatCompletionAudioParam::OrHash), frequency_penalty: T.nilable(Float), - function_call: T.any( - OpenAI::Models::Chat::CompletionCreateParams::FunctionCall::FunctionCallMode::OrSymbol, - OpenAI::Models::Chat::ChatCompletionFunctionCallOption, - OpenAI::Internal::AnyHash - ), - functions: T::Array[T.any(OpenAI::Models::Chat::CompletionCreateParams::Function, OpenAI::Internal::AnyHash)], + function_call: + T.any( + OpenAI::Chat::CompletionCreateParams::FunctionCall::FunctionCallMode::OrSymbol, + OpenAI::Chat::ChatCompletionFunctionCallOption::OrHash + ), + functions: + T::Array[OpenAI::Chat::CompletionCreateParams::Function::OrHash], logit_bias: T.nilable(T::Hash[Symbol, Integer]), logprobs: T.nilable(T::Boolean), max_completion_tokens: T.nilable(Integer), max_tokens: T.nilable(Integer), metadata: T.nilable(T::Hash[Symbol, String]), - modalities: T.nilable(T::Array[OpenAI::Models::Chat::CompletionCreateParams::Modality::OrSymbol]), + modalities: + T.nilable( + T::Array[ + OpenAI::Chat::CompletionCreateParams::Modality::OrSymbol + ] + ), n: T.nilable(Integer), parallel_tool_calls: T::Boolean, - prediction: T.nilable(T.any(OpenAI::Models::Chat::ChatCompletionPredictionContent, OpenAI::Internal::AnyHash)), + prediction: + T.nilable(OpenAI::Chat::ChatCompletionPredictionContent::OrHash), presence_penalty: T.nilable(Float), - reasoning_effort: T.nilable(OpenAI::Models::ReasoningEffort::OrSymbol), - response_format: T.any( - OpenAI::Models::ResponseFormatText, - OpenAI::Internal::AnyHash, - OpenAI::Models::ResponseFormatJSONSchema, - OpenAI::Models::ResponseFormatJSONObject - ), + reasoning_effort: T.nilable(OpenAI::ReasoningEffort::OrSymbol), + response_format: + T.any( + OpenAI::ResponseFormatText::OrHash, + OpenAI::ResponseFormatJSONSchema::OrHash, + OpenAI::ResponseFormatJSONObject::OrHash + ), seed: T.nilable(Integer), - service_tier: T.nilable(OpenAI::Models::Chat::CompletionCreateParams::ServiceTier::OrSymbol), + service_tier: + T.nilable( + OpenAI::Chat::CompletionCreateParams::ServiceTier::OrSymbol + ), stop: T.nilable(T.any(String, T::Array[String])), store: T.nilable(T::Boolean), - stream_options: T.nilable(T.any(OpenAI::Models::Chat::ChatCompletionStreamOptions, OpenAI::Internal::AnyHash)), + stream_options: + T.nilable(OpenAI::Chat::ChatCompletionStreamOptions::OrHash), temperature: T.nilable(Float), - tool_choice: T.any( - OpenAI::Models::Chat::ChatCompletionToolChoiceOption::Auto::OrSymbol, - OpenAI::Models::Chat::ChatCompletionNamedToolChoice, - OpenAI::Internal::AnyHash - ), - tools: T::Array[T.any(OpenAI::Models::Chat::ChatCompletionTool, OpenAI::Internal::AnyHash)], + tool_choice: + T.any( + OpenAI::Chat::ChatCompletionToolChoiceOption::Auto::OrSymbol, + OpenAI::Chat::ChatCompletionNamedToolChoice::OrHash + ), + tools: T::Array[OpenAI::Chat::ChatCompletionTool::OrHash], top_logprobs: T.nilable(Integer), top_p: T.nilable(Float), user: String, - web_search_options: T.any(OpenAI::Models::Chat::CompletionCreateParams::WebSearchOptions, OpenAI::Internal::AnyHash), + web_search_options: + OpenAI::Chat::CompletionCreateParams::WebSearchOptions::OrHash, stream: T.noreturn, - request_options: OpenAI::RequestOpts - ) - .returns(OpenAI::Internal::Stream[OpenAI::Models::Chat::ChatCompletionChunk]) + request_options: OpenAI::RequestOptions::OrHash + ).returns(OpenAI::Internal::Stream[OpenAI::Chat::ChatCompletionChunk]) end def stream_raw( # A list of messages comprising the conversation so far. Depending on the @@ -552,18 +576,24 @@ module OpenAI # for streaming and non-streaming use cases, respectively. stream: true, request_options: {} - ); end + ) + end + # Get a stored chat completion. Only Chat Completions that have been created with # the `store` parameter set to `true` will be returned. sig do - params(completion_id: String, request_options: OpenAI::RequestOpts) - .returns(OpenAI::Models::Chat::ChatCompletion) + params( + completion_id: String, + request_options: OpenAI::RequestOptions::OrHash + ).returns(OpenAI::Chat::ChatCompletion) end def retrieve( # The ID of the chat completion to retrieve. completion_id, request_options: {} - ); end + ) + end + # Modify a stored chat completion. Only Chat Completions that have been created # with the `store` parameter set to `true` can be modified. Currently, the only # supported modification is to update the `metadata` field. @@ -571,9 +601,8 @@ module OpenAI params( completion_id: String, metadata: T.nilable(T::Hash[Symbol, String]), - request_options: OpenAI::RequestOpts - ) - .returns(OpenAI::Models::Chat::ChatCompletion) + request_options: OpenAI::RequestOptions::OrHash + ).returns(OpenAI::Chat::ChatCompletion) end def update( # The ID of the chat completion to update. @@ -586,7 +615,9 @@ module OpenAI # a maximum length of 512 characters. metadata:, request_options: {} - ); end + ) + end + # List stored Chat Completions. Only Chat Completions that have been stored with # the `store` parameter set to `true` will be returned. sig do @@ -595,10 +626,9 @@ module OpenAI limit: Integer, metadata: T.nilable(T::Hash[Symbol, String]), model: String, - order: OpenAI::Models::Chat::CompletionListParams::Order::OrSymbol, - request_options: OpenAI::RequestOpts - ) - .returns(OpenAI::Internal::CursorPage[OpenAI::Models::Chat::ChatCompletion]) + order: OpenAI::Chat::CompletionListParams::Order::OrSymbol, + request_options: OpenAI::RequestOptions::OrHash + ).returns(OpenAI::Internal::CursorPage[OpenAI::Chat::ChatCompletion]) end def list( # Identifier for the last chat completion from the previous pagination request. @@ -615,21 +645,28 @@ module OpenAI # `desc` for descending order. Defaults to `asc`. order: nil, request_options: {} - ); end + ) + end + # Delete a stored chat completion. Only Chat Completions that have been created # with the `store` parameter set to `true` can be deleted. sig do - params(completion_id: String, request_options: OpenAI::RequestOpts) - .returns(OpenAI::Models::Chat::ChatCompletionDeleted) + params( + completion_id: String, + request_options: OpenAI::RequestOptions::OrHash + ).returns(OpenAI::Chat::ChatCompletionDeleted) end def delete( # The ID of the chat completion to delete. completion_id, request_options: {} - ); end + ) + end + # @api private sig { params(client: OpenAI::Client).returns(T.attached_class) } - def self.new(client:); end + def self.new(client:) + end end end end diff --git a/rbi/openai/resources/chat/completions/messages.rbi b/rbi/openai/resources/chat/completions/messages.rbi index c0c82fe6..69a906e7 100644 --- a/rbi/openai/resources/chat/completions/messages.rbi +++ b/rbi/openai/resources/chat/completions/messages.rbi @@ -12,10 +12,14 @@ module OpenAI completion_id: String, after: String, limit: Integer, - order: OpenAI::Models::Chat::Completions::MessageListParams::Order::OrSymbol, - request_options: OpenAI::RequestOpts + order: + OpenAI::Chat::Completions::MessageListParams::Order::OrSymbol, + request_options: OpenAI::RequestOptions::OrHash + ).returns( + OpenAI::Internal::CursorPage[ + OpenAI::Chat::ChatCompletionStoreMessage + ] ) - .returns(OpenAI::Internal::CursorPage[OpenAI::Models::Chat::ChatCompletionStoreMessage]) end def list( # The ID of the chat completion to retrieve messages from. @@ -28,10 +32,13 @@ module OpenAI # for descending order. Defaults to `asc`. order: nil, request_options: {} - ); end + ) + end + # @api private sig { params(client: OpenAI::Client).returns(T.attached_class) } - def self.new(client:); end + def self.new(client:) + end end end end diff --git a/rbi/openai/resources/completions.rbi b/rbi/openai/resources/completions.rbi index b3576715..685399d1 100644 --- a/rbi/openai/resources/completions.rbi +++ b/rbi/openai/resources/completions.rbi @@ -8,8 +8,16 @@ module OpenAI # Creates a completion for the provided prompt and parameters. sig do params( - model: T.any(String, OpenAI::Models::CompletionCreateParams::Model::OrSymbol), - prompt: T.nilable(T.any(String, T::Array[String], T::Array[Integer], T::Array[T::Array[Integer]])), + model: T.any(String, OpenAI::CompletionCreateParams::Model::OrSymbol), + prompt: + T.nilable( + T.any( + String, + T::Array[String], + T::Array[Integer], + T::Array[T::Array[Integer]] + ) + ), best_of: T.nilable(Integer), echo: T.nilable(T::Boolean), frequency_penalty: T.nilable(Float), @@ -20,15 +28,15 @@ module OpenAI presence_penalty: T.nilable(Float), seed: T.nilable(Integer), stop: T.nilable(T.any(String, T::Array[String])), - stream_options: T.nilable(T.any(OpenAI::Models::Chat::ChatCompletionStreamOptions, OpenAI::Internal::AnyHash)), + stream_options: + T.nilable(OpenAI::Chat::ChatCompletionStreamOptions::OrHash), suffix: T.nilable(String), temperature: T.nilable(Float), top_p: T.nilable(Float), user: String, stream: T.noreturn, - request_options: OpenAI::RequestOpts - ) - .returns(OpenAI::Models::Completion) + request_options: OpenAI::RequestOptions::OrHash + ).returns(OpenAI::Completion) end def create( # ID of the model to use. You can use the @@ -140,14 +148,24 @@ module OpenAI # `#create` for streaming and non-streaming use cases, respectively. stream: false, request_options: {} - ); end + ) + end + # See {OpenAI::Resources::Completions#create} for non-streaming counterpart. # # Creates a completion for the provided prompt and parameters. sig do params( - model: T.any(String, OpenAI::Models::CompletionCreateParams::Model::OrSymbol), - prompt: T.nilable(T.any(String, T::Array[String], T::Array[Integer], T::Array[T::Array[Integer]])), + model: T.any(String, OpenAI::CompletionCreateParams::Model::OrSymbol), + prompt: + T.nilable( + T.any( + String, + T::Array[String], + T::Array[Integer], + T::Array[T::Array[Integer]] + ) + ), best_of: T.nilable(Integer), echo: T.nilable(T::Boolean), frequency_penalty: T.nilable(Float), @@ -158,15 +176,15 @@ module OpenAI presence_penalty: T.nilable(Float), seed: T.nilable(Integer), stop: T.nilable(T.any(String, T::Array[String])), - stream_options: T.nilable(T.any(OpenAI::Models::Chat::ChatCompletionStreamOptions, OpenAI::Internal::AnyHash)), + stream_options: + T.nilable(OpenAI::Chat::ChatCompletionStreamOptions::OrHash), suffix: T.nilable(String), temperature: T.nilable(Float), top_p: T.nilable(Float), user: String, stream: T.noreturn, - request_options: OpenAI::RequestOpts - ) - .returns(OpenAI::Internal::Stream[OpenAI::Models::Completion]) + request_options: OpenAI::RequestOptions::OrHash + ).returns(OpenAI::Internal::Stream[OpenAI::Completion]) end def create_streaming( # ID of the model to use. You can use the @@ -278,10 +296,13 @@ module OpenAI # `#create` for streaming and non-streaming use cases, respectively. stream: true, request_options: {} - ); end + ) + end + # @api private sig { params(client: OpenAI::Client).returns(T.attached_class) } - def self.new(client:); end + def self.new(client:) + end end end end diff --git a/rbi/openai/resources/embeddings.rbi b/rbi/openai/resources/embeddings.rbi index 26fa538b..aec35a9c 100644 --- a/rbi/openai/resources/embeddings.rbi +++ b/rbi/openai/resources/embeddings.rbi @@ -6,14 +6,20 @@ module OpenAI # Creates an embedding vector representing the input text. sig do params( - input: T.any(String, T::Array[String], T::Array[Integer], T::Array[T::Array[Integer]]), - model: T.any(String, OpenAI::Models::EmbeddingModel::OrSymbol), + input: + T.any( + String, + T::Array[String], + T::Array[Integer], + T::Array[T::Array[Integer]] + ), + model: T.any(String, OpenAI::EmbeddingModel::OrSymbol), dimensions: Integer, - encoding_format: OpenAI::Models::EmbeddingCreateParams::EncodingFormat::OrSymbol, + encoding_format: + OpenAI::EmbeddingCreateParams::EncodingFormat::OrSymbol, user: String, - request_options: OpenAI::RequestOpts - ) - .returns(OpenAI::Models::CreateEmbeddingResponse) + request_options: OpenAI::RequestOptions::OrHash + ).returns(OpenAI::CreateEmbeddingResponse) end def create( # Input text to embed, encoded as a string or array of tokens. To embed multiple @@ -42,10 +48,13 @@ module OpenAI # [Learn more](https://platform.openai.com/docs/guides/safety-best-practices#end-user-ids). user: nil, request_options: {} - ); end + ) + end + # @api private sig { params(client: OpenAI::Client).returns(T.attached_class) } - def self.new(client:); end + def self.new(client:) + end end end end diff --git a/rbi/openai/resources/evals.rbi b/rbi/openai/resources/evals.rbi index 0f330e56..a55cb86d 100644 --- a/rbi/openai/resources/evals.rbi +++ b/rbi/openai/resources/evals.rbi @@ -13,26 +13,25 @@ module OpenAI # the [Evals guide](https://platform.openai.com/docs/guides/evals). sig do params( - data_source_config: T.any( - OpenAI::Models::EvalCreateParams::DataSourceConfig::Custom, - OpenAI::Internal::AnyHash, - OpenAI::Models::EvalCreateParams::DataSourceConfig::Logs - ), - testing_criteria: T::Array[ + data_source_config: T.any( - OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel, - OpenAI::Internal::AnyHash, - OpenAI::Models::EvalStringCheckGrader, - OpenAI::Models::EvalTextSimilarityGrader, - OpenAI::Models::EvalCreateParams::TestingCriterion::Python, - OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel - ) - ], + OpenAI::EvalCreateParams::DataSourceConfig::Custom::OrHash, + OpenAI::EvalCreateParams::DataSourceConfig::Logs::OrHash + ), + testing_criteria: + T::Array[ + T.any( + OpenAI::EvalCreateParams::TestingCriterion::LabelModel::OrHash, + OpenAI::EvalStringCheckGrader::OrHash, + OpenAI::EvalTextSimilarityGrader::OrHash, + OpenAI::EvalCreateParams::TestingCriterion::Python::OrHash, + OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::OrHash + ) + ], metadata: T.nilable(T::Hash[Symbol, String]), name: String, - request_options: OpenAI::RequestOpts - ) - .returns(OpenAI::Models::EvalCreateResponse) + request_options: OpenAI::RequestOptions::OrHash + ).returns(OpenAI::Models::EvalCreateResponse) end def create( # The configuration for the data source used for the evaluation runs. @@ -49,25 +48,31 @@ module OpenAI # The name of the evaluation. name: nil, request_options: {} - ); end + ) + end + # Get an evaluation by ID. sig do - params(eval_id: String, request_options: OpenAI::RequestOpts).returns(OpenAI::Models::EvalRetrieveResponse) + params( + eval_id: String, + request_options: OpenAI::RequestOptions::OrHash + ).returns(OpenAI::Models::EvalRetrieveResponse) end def retrieve( # The ID of the evaluation to retrieve. eval_id, request_options: {} - ); end + ) + end + # Update certain properties of an evaluation. sig do params( eval_id: String, metadata: T.nilable(T::Hash[Symbol, String]), name: String, - request_options: OpenAI::RequestOpts - ) - .returns(OpenAI::Models::EvalUpdateResponse) + request_options: OpenAI::RequestOptions::OrHash + ).returns(OpenAI::Models::EvalUpdateResponse) end def update( # The ID of the evaluation to update. @@ -82,17 +87,20 @@ module OpenAI # Rename the evaluation. name: nil, request_options: {} - ); end + ) + end + # List evaluations for a project. sig do params( after: String, limit: Integer, - order: OpenAI::Models::EvalListParams::Order::OrSymbol, - order_by: OpenAI::Models::EvalListParams::OrderBy::OrSymbol, - request_options: OpenAI::RequestOpts + order: OpenAI::EvalListParams::Order::OrSymbol, + order_by: OpenAI::EvalListParams::OrderBy::OrSymbol, + request_options: OpenAI::RequestOptions::OrHash + ).returns( + OpenAI::Internal::CursorPage[OpenAI::Models::EvalListResponse] ) - .returns(OpenAI::Internal::CursorPage[OpenAI::Models::EvalListResponse]) end def list( # Identifier for the last eval from the previous pagination request. @@ -106,17 +114,27 @@ module OpenAI # creation time or `updated_at` for last updated time. order_by: nil, request_options: {} - ); end + ) + end + # Delete an evaluation. - sig { params(eval_id: String, request_options: OpenAI::RequestOpts).returns(OpenAI::Models::EvalDeleteResponse) } + sig do + params( + eval_id: String, + request_options: OpenAI::RequestOptions::OrHash + ).returns(OpenAI::Models::EvalDeleteResponse) + end def delete( # The ID of the evaluation to delete. eval_id, request_options: {} - ); end + ) + end + # @api private sig { params(client: OpenAI::Client).returns(T.attached_class) } - def self.new(client:); end + def self.new(client:) + end end end end diff --git a/rbi/openai/resources/evals/runs.rbi b/rbi/openai/resources/evals/runs.rbi index 86dad155..183f65ed 100644 --- a/rbi/openai/resources/evals/runs.rbi +++ b/rbi/openai/resources/evals/runs.rbi @@ -11,17 +11,16 @@ module OpenAI sig do params( eval_id: String, - data_source: T.any( - OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, - OpenAI::Internal::AnyHash, - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource, - OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource - ), + data_source: + T.any( + OpenAI::Evals::CreateEvalJSONLRunDataSource::OrHash, + OpenAI::Evals::CreateEvalCompletionsRunDataSource::OrHash, + OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::OrHash + ), metadata: T.nilable(T::Hash[Symbol, String]), name: String, - request_options: OpenAI::RequestOpts - ) - .returns(OpenAI::Models::Evals::RunCreateResponse) + request_options: OpenAI::RequestOptions::OrHash + ).returns(OpenAI::Models::Evals::RunCreateResponse) end def create( # The ID of the evaluation to create a run for. @@ -38,11 +37,16 @@ module OpenAI # The name of the run. name: nil, request_options: {} - ); end + ) + end + # Get an evaluation run by ID. sig do - params(run_id: String, eval_id: String, request_options: OpenAI::RequestOpts) - .returns(OpenAI::Models::Evals::RunRetrieveResponse) + params( + run_id: String, + eval_id: String, + request_options: OpenAI::RequestOptions::OrHash + ).returns(OpenAI::Models::Evals::RunRetrieveResponse) end def retrieve( # The ID of the run to retrieve. @@ -50,18 +54,21 @@ module OpenAI # The ID of the evaluation to retrieve runs for. eval_id:, request_options: {} - ); end + ) + end + # Get a list of runs for an evaluation. sig do params( eval_id: String, after: String, limit: Integer, - order: OpenAI::Models::Evals::RunListParams::Order::OrSymbol, - status: OpenAI::Models::Evals::RunListParams::Status::OrSymbol, - request_options: OpenAI::RequestOpts + order: OpenAI::Evals::RunListParams::Order::OrSymbol, + status: OpenAI::Evals::RunListParams::Status::OrSymbol, + request_options: OpenAI::RequestOptions::OrHash + ).returns( + OpenAI::Internal::CursorPage[OpenAI::Models::Evals::RunListResponse] ) - .returns(OpenAI::Internal::CursorPage[OpenAI::Models::Evals::RunListResponse]) end def list( # The ID of the evaluation to retrieve runs for. @@ -77,11 +84,16 @@ module OpenAI # | `canceled`. status: nil, request_options: {} - ); end + ) + end + # Delete an eval run. sig do - params(run_id: String, eval_id: String, request_options: OpenAI::RequestOpts) - .returns(OpenAI::Models::Evals::RunDeleteResponse) + params( + run_id: String, + eval_id: String, + request_options: OpenAI::RequestOptions::OrHash + ).returns(OpenAI::Models::Evals::RunDeleteResponse) end def delete( # The ID of the run to delete. @@ -89,11 +101,16 @@ module OpenAI # The ID of the evaluation to delete the run from. eval_id:, request_options: {} - ); end + ) + end + # Cancel an ongoing evaluation run. sig do - params(run_id: String, eval_id: String, request_options: OpenAI::RequestOpts) - .returns(OpenAI::Models::Evals::RunCancelResponse) + params( + run_id: String, + eval_id: String, + request_options: OpenAI::RequestOptions::OrHash + ).returns(OpenAI::Models::Evals::RunCancelResponse) end def cancel( # The ID of the run to cancel. @@ -101,10 +118,13 @@ module OpenAI # The ID of the evaluation whose run you want to cancel. eval_id:, request_options: {} - ); end + ) + end + # @api private sig { params(client: OpenAI::Client).returns(T.attached_class) } - def self.new(client:); end + def self.new(client:) + end end end end diff --git a/rbi/openai/resources/evals/runs/output_items.rbi b/rbi/openai/resources/evals/runs/output_items.rbi index 85f0767a..8e8f764b 100644 --- a/rbi/openai/resources/evals/runs/output_items.rbi +++ b/rbi/openai/resources/evals/runs/output_items.rbi @@ -11,9 +11,8 @@ module OpenAI output_item_id: String, eval_id: String, run_id: String, - request_options: OpenAI::RequestOpts - ) - .returns(OpenAI::Models::Evals::Runs::OutputItemRetrieveResponse) + request_options: OpenAI::RequestOptions::OrHash + ).returns(OpenAI::Models::Evals::Runs::OutputItemRetrieveResponse) end def retrieve( # The ID of the output item to retrieve. @@ -23,7 +22,9 @@ module OpenAI # The ID of the run to retrieve. run_id:, request_options: {} - ); end + ) + end + # Get a list of output items for an evaluation run. sig do params( @@ -31,11 +32,15 @@ module OpenAI eval_id: String, after: String, limit: Integer, - order: OpenAI::Models::Evals::Runs::OutputItemListParams::Order::OrSymbol, - status: OpenAI::Models::Evals::Runs::OutputItemListParams::Status::OrSymbol, - request_options: OpenAI::RequestOpts + order: OpenAI::Evals::Runs::OutputItemListParams::Order::OrSymbol, + status: + OpenAI::Evals::Runs::OutputItemListParams::Status::OrSymbol, + request_options: OpenAI::RequestOptions::OrHash + ).returns( + OpenAI::Internal::CursorPage[ + OpenAI::Models::Evals::Runs::OutputItemListResponse + ] ) - .returns(OpenAI::Internal::CursorPage[OpenAI::Models::Evals::Runs::OutputItemListResponse]) end def list( # Path param: The ID of the run to retrieve output items for. @@ -54,10 +59,13 @@ module OpenAI # output items or `pass` to filter by passed output items. status: nil, request_options: {} - ); end + ) + end + # @api private sig { params(client: OpenAI::Client).returns(T.attached_class) } - def self.new(client:); end + def self.new(client:) + end end end end diff --git a/rbi/openai/resources/files.rbi b/rbi/openai/resources/files.rbi index 4afa8467..022613a9 100644 --- a/rbi/openai/resources/files.rbi +++ b/rbi/openai/resources/files.rbi @@ -27,10 +27,9 @@ module OpenAI sig do params( file: T.any(Pathname, StringIO, IO, OpenAI::FilePart), - purpose: OpenAI::Models::FilePurpose::OrSymbol, - request_options: OpenAI::RequestOpts - ) - .returns(OpenAI::Models::FileObject) + purpose: OpenAI::FilePurpose::OrSymbol, + request_options: OpenAI::RequestOptions::OrHash + ).returns(OpenAI::FileObject) end def create( # The File object (not file name) to be uploaded. @@ -41,24 +40,32 @@ module OpenAI # Flexible file type for any purpose - `evals`: Used for eval data sets purpose:, request_options: {} - ); end + ) + end + # Returns information about a specific file. - sig { params(file_id: String, request_options: OpenAI::RequestOpts).returns(OpenAI::Models::FileObject) } + sig do + params( + file_id: String, + request_options: OpenAI::RequestOptions::OrHash + ).returns(OpenAI::FileObject) + end def retrieve( # The ID of the file to use for this request. file_id, request_options: {} - ); end + ) + end + # Returns a list of files. sig do params( after: String, limit: Integer, - order: OpenAI::Models::FileListParams::Order::OrSymbol, + order: OpenAI::FileListParams::Order::OrSymbol, purpose: String, - request_options: OpenAI::RequestOpts - ) - .returns(OpenAI::Internal::CursorPage[OpenAI::Models::FileObject]) + request_options: OpenAI::RequestOptions::OrHash + ).returns(OpenAI::Internal::CursorPage[OpenAI::FileObject]) end def list( # A cursor for use in pagination. `after` is an object ID that defines your place @@ -75,24 +82,41 @@ module OpenAI # Only return files with the given purpose. purpose: nil, request_options: {} - ); end + ) + end + # Delete a file. - sig { params(file_id: String, request_options: OpenAI::RequestOpts).returns(OpenAI::Models::FileDeleted) } + sig do + params( + file_id: String, + request_options: OpenAI::RequestOptions::OrHash + ).returns(OpenAI::FileDeleted) + end def delete( # The ID of the file to use for this request. file_id, request_options: {} - ); end + ) + end + # Returns the contents of the specified file. - sig { params(file_id: String, request_options: OpenAI::RequestOpts).returns(StringIO) } + sig do + params( + file_id: String, + request_options: OpenAI::RequestOptions::OrHash + ).returns(StringIO) + end def content( # The ID of the file to use for this request. file_id, request_options: {} - ); end + ) + end + # @api private sig { params(client: OpenAI::Client).returns(T.attached_class) } - def self.new(client:); end + def self.new(client:) + end end end end diff --git a/rbi/openai/resources/fine_tuning.rbi b/rbi/openai/resources/fine_tuning.rbi index cf5c249f..e790ba5e 100644 --- a/rbi/openai/resources/fine_tuning.rbi +++ b/rbi/openai/resources/fine_tuning.rbi @@ -11,7 +11,8 @@ module OpenAI # @api private sig { params(client: OpenAI::Client).returns(T.attached_class) } - def self.new(client:); end + def self.new(client:) + end end end end diff --git a/rbi/openai/resources/fine_tuning/checkpoints.rbi b/rbi/openai/resources/fine_tuning/checkpoints.rbi index e9131b1d..ca0f882d 100644 --- a/rbi/openai/resources/fine_tuning/checkpoints.rbi +++ b/rbi/openai/resources/fine_tuning/checkpoints.rbi @@ -9,7 +9,8 @@ module OpenAI # @api private sig { params(client: OpenAI::Client).returns(T.attached_class) } - def self.new(client:); end + def self.new(client:) + end end end end diff --git a/rbi/openai/resources/fine_tuning/checkpoints/permissions.rbi b/rbi/openai/resources/fine_tuning/checkpoints/permissions.rbi index 1fa2933b..be76789c 100644 --- a/rbi/openai/resources/fine_tuning/checkpoints/permissions.rbi +++ b/rbi/openai/resources/fine_tuning/checkpoints/permissions.rbi @@ -13,9 +13,12 @@ module OpenAI params( fine_tuned_model_checkpoint: String, project_ids: T::Array[String], - request_options: OpenAI::RequestOpts + request_options: OpenAI::RequestOptions::OrHash + ).returns( + OpenAI::Internal::Page[ + OpenAI::Models::FineTuning::Checkpoints::PermissionCreateResponse + ] ) - .returns(OpenAI::Internal::Page[OpenAI::Models::FineTuning::Checkpoints::PermissionCreateResponse]) end def create( # The ID of the fine-tuned model checkpoint to create a permission for. @@ -23,7 +26,9 @@ module OpenAI # The project identifiers to grant access to. project_ids:, request_options: {} - ); end + ) + end + # **NOTE:** This endpoint requires an [admin API key](../admin-api-keys). # # Organization owners can use this endpoint to view all permissions for a @@ -33,11 +38,13 @@ module OpenAI fine_tuned_model_checkpoint: String, after: String, limit: Integer, - order: OpenAI::Models::FineTuning::Checkpoints::PermissionRetrieveParams::Order::OrSymbol, + order: + OpenAI::FineTuning::Checkpoints::PermissionRetrieveParams::Order::OrSymbol, project_id: String, - request_options: OpenAI::RequestOpts + request_options: OpenAI::RequestOptions::OrHash + ).returns( + OpenAI::Models::FineTuning::Checkpoints::PermissionRetrieveResponse ) - .returns(OpenAI::Models::FineTuning::Checkpoints::PermissionRetrieveResponse) end def retrieve( # The ID of the fine-tuned model checkpoint to get permissions for. @@ -51,7 +58,9 @@ module OpenAI # The ID of the project to get permissions for. project_id: nil, request_options: {} - ); end + ) + end + # **NOTE:** This endpoint requires an [admin API key](../admin-api-keys). # # Organization owners can use this endpoint to delete a permission for a @@ -60,9 +69,10 @@ module OpenAI params( permission_id: String, fine_tuned_model_checkpoint: String, - request_options: OpenAI::RequestOpts + request_options: OpenAI::RequestOptions::OrHash + ).returns( + OpenAI::Models::FineTuning::Checkpoints::PermissionDeleteResponse ) - .returns(OpenAI::Models::FineTuning::Checkpoints::PermissionDeleteResponse) end def delete( # The ID of the fine-tuned model checkpoint permission to delete. @@ -70,10 +80,13 @@ module OpenAI # The ID of the fine-tuned model checkpoint to delete a permission for. fine_tuned_model_checkpoint:, request_options: {} - ); end + ) + end + # @api private sig { params(client: OpenAI::Client).returns(T.attached_class) } - def self.new(client:); end + def self.new(client:) + end end end end diff --git a/rbi/openai/resources/fine_tuning/jobs.rbi b/rbi/openai/resources/fine_tuning/jobs.rbi index c0e05100..06098504 100644 --- a/rbi/openai/resources/fine_tuning/jobs.rbi +++ b/rbi/openai/resources/fine_tuning/jobs.rbi @@ -16,20 +16,27 @@ module OpenAI # [Learn more about fine-tuning](https://platform.openai.com/docs/guides/fine-tuning) sig do params( - model: T.any(String, OpenAI::Models::FineTuning::JobCreateParams::Model::OrSymbol), + model: + T.any( + String, + OpenAI::FineTuning::JobCreateParams::Model::OrSymbol + ), training_file: String, - hyperparameters: T.any(OpenAI::Models::FineTuning::JobCreateParams::Hyperparameters, OpenAI::Internal::AnyHash), - integrations: T.nilable( - T::Array[T.any(OpenAI::Models::FineTuning::JobCreateParams::Integration, OpenAI::Internal::AnyHash)] - ), + hyperparameters: + OpenAI::FineTuning::JobCreateParams::Hyperparameters::OrHash, + integrations: + T.nilable( + T::Array[ + OpenAI::FineTuning::JobCreateParams::Integration::OrHash + ] + ), metadata: T.nilable(T::Hash[Symbol, String]), - method_: T.any(OpenAI::Models::FineTuning::JobCreateParams::Method, OpenAI::Internal::AnyHash), + method_: OpenAI::FineTuning::JobCreateParams::Method::OrHash, seed: T.nilable(Integer), suffix: T.nilable(String), validation_file: T.nilable(String), - request_options: OpenAI::RequestOpts - ) - .returns(OpenAI::Models::FineTuning::FineTuningJob) + request_options: OpenAI::RequestOptions::OrHash + ).returns(OpenAI::FineTuning::FineTuningJob) end def create( # The name of the model to fine-tune. You can select one of the @@ -91,28 +98,35 @@ module OpenAI # for more details. validation_file: nil, request_options: {} - ); end + ) + end + # Get info about a fine-tuning job. # # [Learn more about fine-tuning](https://platform.openai.com/docs/guides/fine-tuning) sig do - params(fine_tuning_job_id: String, request_options: OpenAI::RequestOpts) - .returns(OpenAI::Models::FineTuning::FineTuningJob) + params( + fine_tuning_job_id: String, + request_options: OpenAI::RequestOptions::OrHash + ).returns(OpenAI::FineTuning::FineTuningJob) end def retrieve( # The ID of the fine-tuning job. fine_tuning_job_id, request_options: {} - ); end + ) + end + # List your organization's fine-tuning jobs sig do params( after: String, limit: Integer, metadata: T.nilable(T::Hash[Symbol, String]), - request_options: OpenAI::RequestOpts + request_options: OpenAI::RequestOptions::OrHash + ).returns( + OpenAI::Internal::CursorPage[OpenAI::FineTuning::FineTuningJob] ) - .returns(OpenAI::Internal::CursorPage[OpenAI::Models::FineTuning::FineTuningJob]) end def list( # Identifier for the last job from the previous pagination request. @@ -123,26 +137,33 @@ module OpenAI # Alternatively, set `metadata=null` to indicate no metadata. metadata: nil, request_options: {} - ); end + ) + end + # Immediately cancel a fine-tune job. sig do - params(fine_tuning_job_id: String, request_options: OpenAI::RequestOpts) - .returns(OpenAI::Models::FineTuning::FineTuningJob) + params( + fine_tuning_job_id: String, + request_options: OpenAI::RequestOptions::OrHash + ).returns(OpenAI::FineTuning::FineTuningJob) end def cancel( # The ID of the fine-tuning job to cancel. fine_tuning_job_id, request_options: {} - ); end + ) + end + # Get status updates for a fine-tuning job. sig do params( fine_tuning_job_id: String, after: String, limit: Integer, - request_options: OpenAI::RequestOpts + request_options: OpenAI::RequestOptions::OrHash + ).returns( + OpenAI::Internal::CursorPage[OpenAI::FineTuning::FineTuningJobEvent] ) - .returns(OpenAI::Internal::CursorPage[OpenAI::Models::FineTuning::FineTuningJobEvent]) end def list_events( # The ID of the fine-tuning job to get events for. @@ -152,10 +173,13 @@ module OpenAI # Number of events to retrieve. limit: nil, request_options: {} - ); end + ) + end + # @api private sig { params(client: OpenAI::Client).returns(T.attached_class) } - def self.new(client:); end + def self.new(client:) + end end end end diff --git a/rbi/openai/resources/fine_tuning/jobs/checkpoints.rbi b/rbi/openai/resources/fine_tuning/jobs/checkpoints.rbi index bf3ced26..0c037db9 100644 --- a/rbi/openai/resources/fine_tuning/jobs/checkpoints.rbi +++ b/rbi/openai/resources/fine_tuning/jobs/checkpoints.rbi @@ -11,9 +11,12 @@ module OpenAI fine_tuning_job_id: String, after: String, limit: Integer, - request_options: OpenAI::RequestOpts + request_options: OpenAI::RequestOptions::OrHash + ).returns( + OpenAI::Internal::CursorPage[ + OpenAI::FineTuning::Jobs::FineTuningJobCheckpoint + ] ) - .returns(OpenAI::Internal::CursorPage[OpenAI::Models::FineTuning::Jobs::FineTuningJobCheckpoint]) end def list( # The ID of the fine-tuning job to get checkpoints for. @@ -23,10 +26,13 @@ module OpenAI # Number of checkpoints to retrieve. limit: nil, request_options: {} - ); end + ) + end + # @api private sig { params(client: OpenAI::Client).returns(T.attached_class) } - def self.new(client:); end + def self.new(client:) + end end end end diff --git a/rbi/openai/resources/images.rbi b/rbi/openai/resources/images.rbi index 5341ac2b..bc10faa9 100644 --- a/rbi/openai/resources/images.rbi +++ b/rbi/openai/resources/images.rbi @@ -7,14 +7,16 @@ module OpenAI sig do params( image: T.any(Pathname, StringIO, IO, OpenAI::FilePart), - model: T.nilable(T.any(String, OpenAI::Models::ImageModel::OrSymbol)), + model: T.nilable(T.any(String, OpenAI::ImageModel::OrSymbol)), n: T.nilable(Integer), - response_format: T.nilable(OpenAI::Models::ImageCreateVariationParams::ResponseFormat::OrSymbol), - size: T.nilable(OpenAI::Models::ImageCreateVariationParams::Size::OrSymbol), + response_format: + T.nilable( + OpenAI::ImageCreateVariationParams::ResponseFormat::OrSymbol + ), + size: T.nilable(OpenAI::ImageCreateVariationParams::Size::OrSymbol), user: String, - request_options: OpenAI::RequestOpts - ) - .returns(OpenAI::Models::ImagesResponse) + request_options: OpenAI::RequestOptions::OrHash + ).returns(OpenAI::ImagesResponse) end def create_variation( # The image to use as the basis for the variation(s). Must be a valid PNG file, @@ -37,30 +39,33 @@ module OpenAI # [Learn more](https://platform.openai.com/docs/guides/safety-best-practices#end-user-ids). user: nil, request_options: {} - ); end + ) + end + # Creates an edited or extended image given one or more source images and a # prompt. This endpoint only supports `gpt-image-1` and `dall-e-2`. sig do params( - image: T.any( - Pathname, - StringIO, - IO, - OpenAI::FilePart, - T::Array[T.any(Pathname, StringIO, IO, OpenAI::FilePart)] - ), + image: + T.any( + Pathname, + StringIO, + IO, + OpenAI::FilePart, + T::Array[T.any(Pathname, StringIO, IO, OpenAI::FilePart)] + ), prompt: String, - background: T.nilable(OpenAI::Models::ImageEditParams::Background::OrSymbol), + background: T.nilable(OpenAI::ImageEditParams::Background::OrSymbol), mask: T.any(Pathname, StringIO, IO, OpenAI::FilePart), - model: T.nilable(T.any(String, OpenAI::Models::ImageModel::OrSymbol)), + model: T.nilable(T.any(String, OpenAI::ImageModel::OrSymbol)), n: T.nilable(Integer), - quality: T.nilable(OpenAI::Models::ImageEditParams::Quality::OrSymbol), - response_format: T.nilable(OpenAI::Models::ImageEditParams::ResponseFormat::OrSymbol), - size: T.nilable(OpenAI::Models::ImageEditParams::Size::OrSymbol), + quality: T.nilable(OpenAI::ImageEditParams::Quality::OrSymbol), + response_format: + T.nilable(OpenAI::ImageEditParams::ResponseFormat::OrSymbol), + size: T.nilable(OpenAI::ImageEditParams::Size::OrSymbol), user: String, - request_options: OpenAI::RequestOpts - ) - .returns(OpenAI::Models::ImagesResponse) + request_options: OpenAI::RequestOptions::OrHash + ).returns(OpenAI::ImagesResponse) end def edit( # The image(s) to edit. Must be a supported image file or an array of images. @@ -111,26 +116,31 @@ module OpenAI # [Learn more](https://platform.openai.com/docs/guides/safety-best-practices#end-user-ids). user: nil, request_options: {} - ); end + ) + end + # Creates an image given a prompt. # [Learn more](https://platform.openai.com/docs/guides/images). sig do params( prompt: String, - background: T.nilable(OpenAI::Models::ImageGenerateParams::Background::OrSymbol), - model: T.nilable(T.any(String, OpenAI::Models::ImageModel::OrSymbol)), - moderation: T.nilable(OpenAI::Models::ImageGenerateParams::Moderation::OrSymbol), + background: + T.nilable(OpenAI::ImageGenerateParams::Background::OrSymbol), + model: T.nilable(T.any(String, OpenAI::ImageModel::OrSymbol)), + moderation: + T.nilable(OpenAI::ImageGenerateParams::Moderation::OrSymbol), n: T.nilable(Integer), output_compression: T.nilable(Integer), - output_format: T.nilable(OpenAI::Models::ImageGenerateParams::OutputFormat::OrSymbol), - quality: T.nilable(OpenAI::Models::ImageGenerateParams::Quality::OrSymbol), - response_format: T.nilable(OpenAI::Models::ImageGenerateParams::ResponseFormat::OrSymbol), - size: T.nilable(OpenAI::Models::ImageGenerateParams::Size::OrSymbol), - style: T.nilable(OpenAI::Models::ImageGenerateParams::Style::OrSymbol), + output_format: + T.nilable(OpenAI::ImageGenerateParams::OutputFormat::OrSymbol), + quality: T.nilable(OpenAI::ImageGenerateParams::Quality::OrSymbol), + response_format: + T.nilable(OpenAI::ImageGenerateParams::ResponseFormat::OrSymbol), + size: T.nilable(OpenAI::ImageGenerateParams::Size::OrSymbol), + style: T.nilable(OpenAI::ImageGenerateParams::Style::OrSymbol), user: String, - request_options: OpenAI::RequestOpts - ) - .returns(OpenAI::Models::ImagesResponse) + request_options: OpenAI::RequestOptions::OrHash + ).returns(OpenAI::ImagesResponse) end def generate( # A text description of the desired image(s). The maximum length is 32000 @@ -190,10 +200,13 @@ module OpenAI # [Learn more](https://platform.openai.com/docs/guides/safety-best-practices#end-user-ids). user: nil, request_options: {} - ); end + ) + end + # @api private sig { params(client: OpenAI::Client).returns(T.attached_class) } - def self.new(client:); end + def self.new(client:) + end end end end diff --git a/rbi/openai/resources/models.rbi b/rbi/openai/resources/models.rbi index e403a7e3..bfb67109 100644 --- a/rbi/openai/resources/models.rbi +++ b/rbi/openai/resources/models.rbi @@ -5,28 +5,48 @@ module OpenAI class Models # Retrieves a model instance, providing basic information about the model such as # the owner and permissioning. - sig { params(model: String, request_options: OpenAI::RequestOpts).returns(OpenAI::Models::Model) } + sig do + params( + model: String, + request_options: OpenAI::RequestOptions::OrHash + ).returns(OpenAI::Model) + end def retrieve( # The ID of the model to use for this request model, request_options: {} - ); end + ) + end + # Lists the currently available models, and provides basic information about each # one such as the owner and availability. - sig { params(request_options: OpenAI::RequestOpts).returns(OpenAI::Internal::Page[OpenAI::Models::Model]) } - def list(request_options: {}); end + sig do + params(request_options: OpenAI::RequestOptions::OrHash).returns( + OpenAI::Internal::Page[OpenAI::Model] + ) + end + def list(request_options: {}) + end # Delete a fine-tuned model. You must have the Owner role in your organization to # delete a model. - sig { params(model: String, request_options: OpenAI::RequestOpts).returns(OpenAI::Models::ModelDeleted) } + sig do + params( + model: String, + request_options: OpenAI::RequestOptions::OrHash + ).returns(OpenAI::ModelDeleted) + end def delete( # The model to delete model, request_options: {} - ); end + ) + end + # @api private sig { params(client: OpenAI::Client).returns(T.attached_class) } - def self.new(client:); end + def self.new(client:) + end end end end diff --git a/rbi/openai/resources/moderations.rbi b/rbi/openai/resources/moderations.rbi index fe3696e7..06d15b68 100644 --- a/rbi/openai/resources/moderations.rbi +++ b/rbi/openai/resources/moderations.rbi @@ -7,21 +7,20 @@ module OpenAI # the [moderation guide](https://platform.openai.com/docs/guides/moderation). sig do params( - input: T.any( - String, - T::Array[String], - T::Array[ - T.any( - OpenAI::Models::ModerationImageURLInput, - OpenAI::Internal::AnyHash, - OpenAI::Models::ModerationTextInput - ) - ] - ), - model: T.any(String, OpenAI::Models::ModerationModel::OrSymbol), - request_options: OpenAI::RequestOpts - ) - .returns(OpenAI::Models::ModerationCreateResponse) + input: + T.any( + String, + T::Array[String], + T::Array[ + T.any( + OpenAI::ModerationImageURLInput::OrHash, + OpenAI::ModerationTextInput::OrHash + ) + ] + ), + model: T.any(String, OpenAI::ModerationModel::OrSymbol), + request_options: OpenAI::RequestOptions::OrHash + ).returns(OpenAI::Models::ModerationCreateResponse) end def create( # Input (or inputs) to classify. Can be a single string, an array of strings, or @@ -33,10 +32,13 @@ module OpenAI # [here](https://platform.openai.com/docs/models#moderation). model: nil, request_options: {} - ); end + ) + end + # @api private sig { params(client: OpenAI::Client).returns(T.attached_class) } - def self.new(client:); end + def self.new(client:) + end end end end diff --git a/rbi/openai/resources/responses.rbi b/rbi/openai/resources/responses.rbi index e0dec08f..2c880f53 100644 --- a/rbi/openai/resources/responses.rbi +++ b/rbi/openai/resources/responses.rbi @@ -21,63 +21,72 @@ module OpenAI # your own data as input for the model's response. sig do params( - input: T.any( - String, - T::Array[ - T.any( - OpenAI::Models::Responses::EasyInputMessage, - OpenAI::Internal::AnyHash, - OpenAI::Models::Responses::ResponseInputItem::Message, - OpenAI::Models::Responses::ResponseOutputMessage, - OpenAI::Models::Responses::ResponseFileSearchToolCall, - OpenAI::Models::Responses::ResponseComputerToolCall, - OpenAI::Models::Responses::ResponseInputItem::ComputerCallOutput, - OpenAI::Models::Responses::ResponseFunctionWebSearch, - OpenAI::Models::Responses::ResponseFunctionToolCall, - OpenAI::Models::Responses::ResponseInputItem::FunctionCallOutput, - OpenAI::Models::Responses::ResponseReasoningItem, - OpenAI::Models::Responses::ResponseInputItem::ItemReference - ) - ] - ), - model: T.any( - String, - OpenAI::Models::ChatModel::OrSymbol, - OpenAI::Models::ResponsesModel::ResponsesOnlyModel::OrSymbol - ), - include: T.nilable(T::Array[OpenAI::Models::Responses::ResponseIncludable::OrSymbol]), + input: + T.any( + String, + T::Array[ + T.any( + OpenAI::Responses::EasyInputMessage::OrHash, + OpenAI::Responses::ResponseInputItem::Message::OrHash, + OpenAI::Responses::ResponseOutputMessage::OrHash, + OpenAI::Responses::ResponseFileSearchToolCall::OrHash, + OpenAI::Responses::ResponseComputerToolCall::OrHash, + OpenAI::Responses::ResponseInputItem::ComputerCallOutput::OrHash, + OpenAI::Responses::ResponseFunctionWebSearch::OrHash, + OpenAI::Responses::ResponseFunctionToolCall::OrHash, + OpenAI::Responses::ResponseInputItem::FunctionCallOutput::OrHash, + OpenAI::Responses::ResponseReasoningItem::OrHash, + OpenAI::Responses::ResponseInputItem::ItemReference::OrHash + ) + ] + ), + model: + T.any( + String, + OpenAI::ChatModel::OrSymbol, + OpenAI::ResponsesModel::ResponsesOnlyModel::OrSymbol + ), + include: + T.nilable( + T::Array[OpenAI::Responses::ResponseIncludable::OrSymbol] + ), instructions: T.nilable(String), max_output_tokens: T.nilable(Integer), metadata: T.nilable(T::Hash[Symbol, String]), parallel_tool_calls: T.nilable(T::Boolean), previous_response_id: T.nilable(String), - reasoning: T.nilable(T.any(OpenAI::Models::Reasoning, OpenAI::Internal::AnyHash)), - service_tier: T.nilable(OpenAI::Models::Responses::ResponseCreateParams::ServiceTier::OrSymbol), + reasoning: T.nilable(OpenAI::Reasoning::OrHash), + service_tier: + T.nilable( + OpenAI::Responses::ResponseCreateParams::ServiceTier::OrSymbol + ), store: T.nilable(T::Boolean), temperature: T.nilable(Float), - text: T.any(OpenAI::Models::Responses::ResponseTextConfig, OpenAI::Internal::AnyHash), - tool_choice: T.any( - OpenAI::Models::Responses::ToolChoiceOptions::OrSymbol, - OpenAI::Models::Responses::ToolChoiceTypes, - OpenAI::Internal::AnyHash, - OpenAI::Models::Responses::ToolChoiceFunction - ), - tools: T::Array[ + text: OpenAI::Responses::ResponseTextConfig::OrHash, + tool_choice: T.any( - OpenAI::Models::Responses::FileSearchTool, - OpenAI::Internal::AnyHash, - OpenAI::Models::Responses::FunctionTool, - OpenAI::Models::Responses::ComputerTool, - OpenAI::Models::Responses::WebSearchTool - ) - ], + OpenAI::Responses::ToolChoiceOptions::OrSymbol, + OpenAI::Responses::ToolChoiceTypes::OrHash, + OpenAI::Responses::ToolChoiceFunction::OrHash + ), + tools: + T::Array[ + T.any( + OpenAI::Responses::FileSearchTool::OrHash, + OpenAI::Responses::FunctionTool::OrHash, + OpenAI::Responses::ComputerTool::OrHash, + OpenAI::Responses::WebSearchTool::OrHash + ) + ], top_p: T.nilable(Float), - truncation: T.nilable(OpenAI::Models::Responses::ResponseCreateParams::Truncation::OrSymbol), + truncation: + T.nilable( + OpenAI::Responses::ResponseCreateParams::Truncation::OrSymbol + ), user: String, stream: T.noreturn, - request_options: OpenAI::RequestOpts - ) - .returns(OpenAI::Models::Responses::Response) + request_options: OpenAI::RequestOptions::OrHash + ).returns(OpenAI::Responses::Response) end def create( # Text, image, or file inputs to the model, used to generate a response. @@ -211,7 +220,9 @@ module OpenAI # for streaming and non-streaming use cases, respectively. stream: false, request_options: {} - ); end + ) + end + # See {OpenAI::Resources::Responses#create} for non-streaming counterpart. # # Creates a model response. Provide @@ -227,104 +238,113 @@ module OpenAI # your own data as input for the model's response. sig do params( - input: T.any( - String, - T::Array[ - T.any( - OpenAI::Models::Responses::EasyInputMessage, - OpenAI::Internal::AnyHash, - OpenAI::Models::Responses::ResponseInputItem::Message, - OpenAI::Models::Responses::ResponseOutputMessage, - OpenAI::Models::Responses::ResponseFileSearchToolCall, - OpenAI::Models::Responses::ResponseComputerToolCall, - OpenAI::Models::Responses::ResponseInputItem::ComputerCallOutput, - OpenAI::Models::Responses::ResponseFunctionWebSearch, - OpenAI::Models::Responses::ResponseFunctionToolCall, - OpenAI::Models::Responses::ResponseInputItem::FunctionCallOutput, - OpenAI::Models::Responses::ResponseReasoningItem, - OpenAI::Models::Responses::ResponseInputItem::ItemReference - ) - ] - ), - model: T.any( - String, - OpenAI::Models::ChatModel::OrSymbol, - OpenAI::Models::ResponsesModel::ResponsesOnlyModel::OrSymbol - ), - include: T.nilable(T::Array[OpenAI::Models::Responses::ResponseIncludable::OrSymbol]), + input: + T.any( + String, + T::Array[ + T.any( + OpenAI::Responses::EasyInputMessage::OrHash, + OpenAI::Responses::ResponseInputItem::Message::OrHash, + OpenAI::Responses::ResponseOutputMessage::OrHash, + OpenAI::Responses::ResponseFileSearchToolCall::OrHash, + OpenAI::Responses::ResponseComputerToolCall::OrHash, + OpenAI::Responses::ResponseInputItem::ComputerCallOutput::OrHash, + OpenAI::Responses::ResponseFunctionWebSearch::OrHash, + OpenAI::Responses::ResponseFunctionToolCall::OrHash, + OpenAI::Responses::ResponseInputItem::FunctionCallOutput::OrHash, + OpenAI::Responses::ResponseReasoningItem::OrHash, + OpenAI::Responses::ResponseInputItem::ItemReference::OrHash + ) + ] + ), + model: + T.any( + String, + OpenAI::ChatModel::OrSymbol, + OpenAI::ResponsesModel::ResponsesOnlyModel::OrSymbol + ), + include: + T.nilable( + T::Array[OpenAI::Responses::ResponseIncludable::OrSymbol] + ), instructions: T.nilable(String), max_output_tokens: T.nilable(Integer), metadata: T.nilable(T::Hash[Symbol, String]), parallel_tool_calls: T.nilable(T::Boolean), previous_response_id: T.nilable(String), - reasoning: T.nilable(T.any(OpenAI::Models::Reasoning, OpenAI::Internal::AnyHash)), - service_tier: T.nilable(OpenAI::Models::Responses::ResponseCreateParams::ServiceTier::OrSymbol), + reasoning: T.nilable(OpenAI::Reasoning::OrHash), + service_tier: + T.nilable( + OpenAI::Responses::ResponseCreateParams::ServiceTier::OrSymbol + ), store: T.nilable(T::Boolean), temperature: T.nilable(Float), - text: T.any(OpenAI::Models::Responses::ResponseTextConfig, OpenAI::Internal::AnyHash), - tool_choice: T.any( - OpenAI::Models::Responses::ToolChoiceOptions::OrSymbol, - OpenAI::Models::Responses::ToolChoiceTypes, - OpenAI::Internal::AnyHash, - OpenAI::Models::Responses::ToolChoiceFunction - ), - tools: T::Array[ + text: OpenAI::Responses::ResponseTextConfig::OrHash, + tool_choice: T.any( - OpenAI::Models::Responses::FileSearchTool, - OpenAI::Internal::AnyHash, - OpenAI::Models::Responses::FunctionTool, - OpenAI::Models::Responses::ComputerTool, - OpenAI::Models::Responses::WebSearchTool - ) - ], + OpenAI::Responses::ToolChoiceOptions::OrSymbol, + OpenAI::Responses::ToolChoiceTypes::OrHash, + OpenAI::Responses::ToolChoiceFunction::OrHash + ), + tools: + T::Array[ + T.any( + OpenAI::Responses::FileSearchTool::OrHash, + OpenAI::Responses::FunctionTool::OrHash, + OpenAI::Responses::ComputerTool::OrHash, + OpenAI::Responses::WebSearchTool::OrHash + ) + ], top_p: T.nilable(Float), - truncation: T.nilable(OpenAI::Models::Responses::ResponseCreateParams::Truncation::OrSymbol), + truncation: + T.nilable( + OpenAI::Responses::ResponseCreateParams::Truncation::OrSymbol + ), user: String, stream: T.noreturn, - request_options: OpenAI::RequestOpts + request_options: OpenAI::RequestOptions::OrHash + ).returns( + OpenAI::Internal::Stream[ + T.any( + OpenAI::Responses::ResponseAudioDeltaEvent, + OpenAI::Responses::ResponseAudioDoneEvent, + OpenAI::Responses::ResponseAudioTranscriptDeltaEvent, + OpenAI::Responses::ResponseAudioTranscriptDoneEvent, + OpenAI::Responses::ResponseCodeInterpreterCallCodeDeltaEvent, + OpenAI::Responses::ResponseCodeInterpreterCallCodeDoneEvent, + OpenAI::Responses::ResponseCodeInterpreterCallCompletedEvent, + OpenAI::Responses::ResponseCodeInterpreterCallInProgressEvent, + OpenAI::Responses::ResponseCodeInterpreterCallInterpretingEvent, + OpenAI::Responses::ResponseCompletedEvent, + OpenAI::Responses::ResponseContentPartAddedEvent, + OpenAI::Responses::ResponseContentPartDoneEvent, + OpenAI::Responses::ResponseCreatedEvent, + OpenAI::Responses::ResponseErrorEvent, + OpenAI::Responses::ResponseFileSearchCallCompletedEvent, + OpenAI::Responses::ResponseFileSearchCallInProgressEvent, + OpenAI::Responses::ResponseFileSearchCallSearchingEvent, + OpenAI::Responses::ResponseFunctionCallArgumentsDeltaEvent, + OpenAI::Responses::ResponseFunctionCallArgumentsDoneEvent, + OpenAI::Responses::ResponseInProgressEvent, + OpenAI::Responses::ResponseFailedEvent, + OpenAI::Responses::ResponseIncompleteEvent, + OpenAI::Responses::ResponseOutputItemAddedEvent, + OpenAI::Responses::ResponseOutputItemDoneEvent, + OpenAI::Responses::ResponseReasoningSummaryPartAddedEvent, + OpenAI::Responses::ResponseReasoningSummaryPartDoneEvent, + OpenAI::Responses::ResponseReasoningSummaryTextDeltaEvent, + OpenAI::Responses::ResponseReasoningSummaryTextDoneEvent, + OpenAI::Responses::ResponseRefusalDeltaEvent, + OpenAI::Responses::ResponseRefusalDoneEvent, + OpenAI::Responses::ResponseTextAnnotationDeltaEvent, + OpenAI::Responses::ResponseTextDeltaEvent, + OpenAI::Responses::ResponseTextDoneEvent, + OpenAI::Responses::ResponseWebSearchCallCompletedEvent, + OpenAI::Responses::ResponseWebSearchCallInProgressEvent, + OpenAI::Responses::ResponseWebSearchCallSearchingEvent + ) + ] ) - .returns( - OpenAI::Internal::Stream[ - T.any( - OpenAI::Models::Responses::ResponseAudioDeltaEvent, - OpenAI::Models::Responses::ResponseAudioDoneEvent, - OpenAI::Models::Responses::ResponseAudioTranscriptDeltaEvent, - OpenAI::Models::Responses::ResponseAudioTranscriptDoneEvent, - OpenAI::Models::Responses::ResponseCodeInterpreterCallCodeDeltaEvent, - OpenAI::Models::Responses::ResponseCodeInterpreterCallCodeDoneEvent, - OpenAI::Models::Responses::ResponseCodeInterpreterCallCompletedEvent, - OpenAI::Models::Responses::ResponseCodeInterpreterCallInProgressEvent, - OpenAI::Models::Responses::ResponseCodeInterpreterCallInterpretingEvent, - OpenAI::Models::Responses::ResponseCompletedEvent, - OpenAI::Models::Responses::ResponseContentPartAddedEvent, - OpenAI::Models::Responses::ResponseContentPartDoneEvent, - OpenAI::Models::Responses::ResponseCreatedEvent, - OpenAI::Models::Responses::ResponseErrorEvent, - OpenAI::Models::Responses::ResponseFileSearchCallCompletedEvent, - OpenAI::Models::Responses::ResponseFileSearchCallInProgressEvent, - OpenAI::Models::Responses::ResponseFileSearchCallSearchingEvent, - OpenAI::Models::Responses::ResponseFunctionCallArgumentsDeltaEvent, - OpenAI::Models::Responses::ResponseFunctionCallArgumentsDoneEvent, - OpenAI::Models::Responses::ResponseInProgressEvent, - OpenAI::Models::Responses::ResponseFailedEvent, - OpenAI::Models::Responses::ResponseIncompleteEvent, - OpenAI::Models::Responses::ResponseOutputItemAddedEvent, - OpenAI::Models::Responses::ResponseOutputItemDoneEvent, - OpenAI::Models::Responses::ResponseReasoningSummaryPartAddedEvent, - OpenAI::Models::Responses::ResponseReasoningSummaryPartDoneEvent, - OpenAI::Models::Responses::ResponseReasoningSummaryTextDeltaEvent, - OpenAI::Models::Responses::ResponseReasoningSummaryTextDoneEvent, - OpenAI::Models::Responses::ResponseRefusalDeltaEvent, - OpenAI::Models::Responses::ResponseRefusalDoneEvent, - OpenAI::Models::Responses::ResponseTextAnnotationDeltaEvent, - OpenAI::Models::Responses::ResponseTextDeltaEvent, - OpenAI::Models::Responses::ResponseTextDoneEvent, - OpenAI::Models::Responses::ResponseWebSearchCallCompletedEvent, - OpenAI::Models::Responses::ResponseWebSearchCallInProgressEvent, - OpenAI::Models::Responses::ResponseWebSearchCallSearchingEvent - ) - ] - ) end def stream_raw( # Text, image, or file inputs to the model, used to generate a response. @@ -458,15 +478,16 @@ module OpenAI # for streaming and non-streaming use cases, respectively. stream: true, request_options: {} - ); end + ) + end + # Retrieves a model response with the given ID. sig do params( response_id: String, - include: T::Array[OpenAI::Models::Responses::ResponseIncludable::OrSymbol], - request_options: OpenAI::RequestOpts - ) - .returns(OpenAI::Models::Responses::Response) + include: T::Array[OpenAI::Responses::ResponseIncludable::OrSymbol], + request_options: OpenAI::RequestOptions::OrHash + ).returns(OpenAI::Responses::Response) end def retrieve( # The ID of the response to retrieve. @@ -475,17 +496,27 @@ module OpenAI # Response creation above for more information. include: nil, request_options: {} - ); end + ) + end + # Deletes a model response with the given ID. - sig { params(response_id: String, request_options: OpenAI::RequestOpts).void } + sig do + params( + response_id: String, + request_options: OpenAI::RequestOptions::OrHash + ).void + end def delete( # The ID of the response to delete. response_id, request_options: {} - ); end + ) + end + # @api private sig { params(client: OpenAI::Client).returns(T.attached_class) } - def self.new(client:); end + def self.new(client:) + end end end end diff --git a/rbi/openai/resources/responses/input_items.rbi b/rbi/openai/resources/responses/input_items.rbi index b2d6a042..feef44a4 100644 --- a/rbi/openai/resources/responses/input_items.rbi +++ b/rbi/openai/resources/responses/input_items.rbi @@ -10,25 +10,24 @@ module OpenAI response_id: String, after: String, before: String, - include: T::Array[OpenAI::Models::Responses::ResponseIncludable::OrSymbol], + include: T::Array[OpenAI::Responses::ResponseIncludable::OrSymbol], limit: Integer, - order: OpenAI::Models::Responses::InputItemListParams::Order::OrSymbol, - request_options: OpenAI::RequestOpts + order: OpenAI::Responses::InputItemListParams::Order::OrSymbol, + request_options: OpenAI::RequestOptions::OrHash + ).returns( + OpenAI::Internal::CursorPage[ + T.any( + OpenAI::Responses::ResponseInputMessageItem, + OpenAI::Responses::ResponseOutputMessage, + OpenAI::Responses::ResponseFileSearchToolCall, + OpenAI::Responses::ResponseComputerToolCall, + OpenAI::Responses::ResponseComputerToolCallOutputItem, + OpenAI::Responses::ResponseFunctionWebSearch, + OpenAI::Responses::ResponseFunctionToolCallItem, + OpenAI::Responses::ResponseFunctionToolCallOutputItem + ) + ] ) - .returns( - OpenAI::Internal::CursorPage[ - T.any( - OpenAI::Models::Responses::ResponseInputMessageItem, - OpenAI::Models::Responses::ResponseOutputMessage, - OpenAI::Models::Responses::ResponseFileSearchToolCall, - OpenAI::Models::Responses::ResponseComputerToolCall, - OpenAI::Models::Responses::ResponseComputerToolCallOutputItem, - OpenAI::Models::Responses::ResponseFunctionWebSearch, - OpenAI::Models::Responses::ResponseFunctionToolCallItem, - OpenAI::Models::Responses::ResponseFunctionToolCallOutputItem - ) - ] - ) end def list( # The ID of the response to retrieve input items for. @@ -49,10 +48,13 @@ module OpenAI # - `desc`: Return the input items in descending order. order: nil, request_options: {} - ); end + ) + end + # @api private sig { params(client: OpenAI::Client).returns(T.attached_class) } - def self.new(client:); end + def self.new(client:) + end end end end diff --git a/rbi/openai/resources/uploads.rbi b/rbi/openai/resources/uploads.rbi index ef17a778..eef3396f 100644 --- a/rbi/openai/resources/uploads.rbi +++ b/rbi/openai/resources/uploads.rbi @@ -30,10 +30,9 @@ module OpenAI bytes: Integer, filename: String, mime_type: String, - purpose: OpenAI::Models::FilePurpose::OrSymbol, - request_options: OpenAI::RequestOpts - ) - .returns(OpenAI::Models::Upload) + purpose: OpenAI::FilePurpose::OrSymbol, + request_options: OpenAI::RequestOptions::OrHash + ).returns(OpenAI::Upload) end def create( # The number of bytes in the file you are uploading. @@ -51,14 +50,23 @@ module OpenAI # [documentation on File purposes](https://platform.openai.com/docs/api-reference/files/create#files-create-purpose). purpose:, request_options: {} - ); end + ) + end + # Cancels the Upload. No Parts may be added after an Upload is cancelled. - sig { params(upload_id: String, request_options: OpenAI::RequestOpts).returns(OpenAI::Models::Upload) } + sig do + params( + upload_id: String, + request_options: OpenAI::RequestOptions::OrHash + ).returns(OpenAI::Upload) + end def cancel( # The ID of the Upload. upload_id, request_options: {} - ); end + ) + end + # Completes the # [Upload](https://platform.openai.com/docs/api-reference/uploads/object). # @@ -77,9 +85,8 @@ module OpenAI upload_id: String, part_ids: T::Array[String], md5: String, - request_options: OpenAI::RequestOpts - ) - .returns(OpenAI::Models::Upload) + request_options: OpenAI::RequestOptions::OrHash + ).returns(OpenAI::Upload) end def complete( # The ID of the Upload. @@ -90,10 +97,13 @@ module OpenAI # matches what you expect. md5: nil, request_options: {} - ); end + ) + end + # @api private sig { params(client: OpenAI::Client).returns(T.attached_class) } - def self.new(client:); end + def self.new(client:) + end end end end diff --git a/rbi/openai/resources/uploads/parts.rbi b/rbi/openai/resources/uploads/parts.rbi index 4534662a..ae17f0fc 100644 --- a/rbi/openai/resources/uploads/parts.rbi +++ b/rbi/openai/resources/uploads/parts.rbi @@ -19,9 +19,8 @@ module OpenAI params( upload_id: String, data: T.any(Pathname, StringIO, IO, OpenAI::FilePart), - request_options: OpenAI::RequestOpts - ) - .returns(OpenAI::Models::Uploads::UploadPart) + request_options: OpenAI::RequestOptions::OrHash + ).returns(OpenAI::Uploads::UploadPart) end def create( # The ID of the Upload. @@ -29,10 +28,13 @@ module OpenAI # The chunk of bytes for this Part. data:, request_options: {} - ); end + ) + end + # @api private sig { params(client: OpenAI::Client).returns(T.attached_class) } - def self.new(client:); end + def self.new(client:) + end end end end diff --git a/rbi/openai/resources/vector_stores.rbi b/rbi/openai/resources/vector_stores.rbi index 6c6be823..7be8933d 100644 --- a/rbi/openai/resources/vector_stores.rbi +++ b/rbi/openai/resources/vector_stores.rbi @@ -12,18 +12,17 @@ module OpenAI # Create a vector store. sig do params( - chunking_strategy: T.any( - OpenAI::Models::AutoFileChunkingStrategyParam, - OpenAI::Internal::AnyHash, - OpenAI::Models::StaticFileChunkingStrategyObjectParam - ), - expires_after: T.any(OpenAI::Models::VectorStoreCreateParams::ExpiresAfter, OpenAI::Internal::AnyHash), + chunking_strategy: + T.any( + OpenAI::AutoFileChunkingStrategyParam::OrHash, + OpenAI::StaticFileChunkingStrategyObjectParam::OrHash + ), + expires_after: OpenAI::VectorStoreCreateParams::ExpiresAfter::OrHash, file_ids: T::Array[String], metadata: T.nilable(T::Hash[Symbol, String]), name: String, - request_options: OpenAI::RequestOpts - ) - .returns(OpenAI::Models::VectorStore) + request_options: OpenAI::RequestOptions::OrHash + ).returns(OpenAI::VectorStore) end def create( # The chunking strategy used to chunk the file(s). If not set, will use the `auto` @@ -45,24 +44,33 @@ module OpenAI # The name of the vector store. name: nil, request_options: {} - ); end + ) + end + # Retrieves a vector store. - sig { params(vector_store_id: String, request_options: OpenAI::RequestOpts).returns(OpenAI::Models::VectorStore) } + sig do + params( + vector_store_id: String, + request_options: OpenAI::RequestOptions::OrHash + ).returns(OpenAI::VectorStore) + end def retrieve( # The ID of the vector store to retrieve. vector_store_id, request_options: {} - ); end + ) + end + # Modifies a vector store. sig do params( vector_store_id: String, - expires_after: T.nilable(T.any(OpenAI::Models::VectorStoreUpdateParams::ExpiresAfter, OpenAI::Internal::AnyHash)), + expires_after: + T.nilable(OpenAI::VectorStoreUpdateParams::ExpiresAfter::OrHash), metadata: T.nilable(T::Hash[Symbol, String]), name: T.nilable(String), - request_options: OpenAI::RequestOpts - ) - .returns(OpenAI::Models::VectorStore) + request_options: OpenAI::RequestOptions::OrHash + ).returns(OpenAI::VectorStore) end def update( # The ID of the vector store to modify. @@ -79,17 +87,18 @@ module OpenAI # The name of the vector store. name: nil, request_options: {} - ); end + ) + end + # Returns a list of vector stores. sig do params( after: String, before: String, limit: Integer, - order: OpenAI::Models::VectorStoreListParams::Order::OrSymbol, - request_options: OpenAI::RequestOpts - ) - .returns(OpenAI::Internal::CursorPage[OpenAI::Models::VectorStore]) + order: OpenAI::VectorStoreListParams::Order::OrSymbol, + request_options: OpenAI::RequestOptions::OrHash + ).returns(OpenAI::Internal::CursorPage[OpenAI::VectorStore]) end def list( # A cursor for use in pagination. `after` is an object ID that defines your place @@ -109,30 +118,42 @@ module OpenAI # order and `desc` for descending order. order: nil, request_options: {} - ); end + ) + end + # Delete a vector store. sig do - params(vector_store_id: String, request_options: OpenAI::RequestOpts) - .returns(OpenAI::Models::VectorStoreDeleted) + params( + vector_store_id: String, + request_options: OpenAI::RequestOptions::OrHash + ).returns(OpenAI::VectorStoreDeleted) end def delete( # The ID of the vector store to delete. vector_store_id, request_options: {} - ); end + ) + end + # Search a vector store for relevant chunks based on a query and file attributes # filter. sig do params( vector_store_id: String, query: T.any(String, T::Array[String]), - filters: T.any(OpenAI::Models::ComparisonFilter, OpenAI::Internal::AnyHash, OpenAI::Models::CompoundFilter), + filters: + T.any( + OpenAI::ComparisonFilter::OrHash, + OpenAI::CompoundFilter::OrHash + ), max_num_results: Integer, - ranking_options: T.any(OpenAI::Models::VectorStoreSearchParams::RankingOptions, OpenAI::Internal::AnyHash), + ranking_options: + OpenAI::VectorStoreSearchParams::RankingOptions::OrHash, rewrite_query: T::Boolean, - request_options: OpenAI::RequestOpts + request_options: OpenAI::RequestOptions::OrHash + ).returns( + OpenAI::Internal::Page[OpenAI::Models::VectorStoreSearchResponse] ) - .returns(OpenAI::Internal::Page[OpenAI::Models::VectorStoreSearchResponse]) end def search( # The ID of the vector store to search. @@ -149,10 +170,13 @@ module OpenAI # Whether to rewrite the natural language query for vector search. rewrite_query: nil, request_options: {} - ); end + ) + end + # @api private sig { params(client: OpenAI::Client).returns(T.attached_class) } - def self.new(client:); end + def self.new(client:) + end end end end diff --git a/rbi/openai/resources/vector_stores/file_batches.rbi b/rbi/openai/resources/vector_stores/file_batches.rbi index 3ef38403..43c47915 100644 --- a/rbi/openai/resources/vector_stores/file_batches.rbi +++ b/rbi/openai/resources/vector_stores/file_batches.rbi @@ -9,15 +9,15 @@ module OpenAI params( vector_store_id: String, file_ids: T::Array[String], - attributes: T.nilable(T::Hash[Symbol, T.any(String, Float, T::Boolean)]), - chunking_strategy: T.any( - OpenAI::Models::AutoFileChunkingStrategyParam, - OpenAI::Internal::AnyHash, - OpenAI::Models::StaticFileChunkingStrategyObjectParam - ), - request_options: OpenAI::RequestOpts - ) - .returns(OpenAI::Models::VectorStores::VectorStoreFileBatch) + attributes: + T.nilable(T::Hash[Symbol, T.any(String, Float, T::Boolean)]), + chunking_strategy: + T.any( + OpenAI::AutoFileChunkingStrategyParam::OrHash, + OpenAI::StaticFileChunkingStrategyObjectParam::OrHash + ), + request_options: OpenAI::RequestOptions::OrHash + ).returns(OpenAI::VectorStores::VectorStoreFileBatch) end def create( # The ID of the vector store for which to create a File Batch. @@ -36,11 +36,16 @@ module OpenAI # strategy. Only applicable if `file_ids` is non-empty. chunking_strategy: nil, request_options: {} - ); end + ) + end + # Retrieves a vector store file batch. sig do - params(batch_id: String, vector_store_id: String, request_options: OpenAI::RequestOpts) - .returns(OpenAI::Models::VectorStores::VectorStoreFileBatch) + params( + batch_id: String, + vector_store_id: String, + request_options: OpenAI::RequestOptions::OrHash + ).returns(OpenAI::VectorStores::VectorStoreFileBatch) end def retrieve( # The ID of the file batch being retrieved. @@ -48,12 +53,17 @@ module OpenAI # The ID of the vector store that the file batch belongs to. vector_store_id:, request_options: {} - ); end + ) + end + # Cancel a vector store file batch. This attempts to cancel the processing of # files in this batch as soon as possible. sig do - params(batch_id: String, vector_store_id: String, request_options: OpenAI::RequestOpts) - .returns(OpenAI::Models::VectorStores::VectorStoreFileBatch) + params( + batch_id: String, + vector_store_id: String, + request_options: OpenAI::RequestOptions::OrHash + ).returns(OpenAI::VectorStores::VectorStoreFileBatch) end def cancel( # The ID of the file batch to cancel. @@ -61,7 +71,9 @@ module OpenAI # The ID of the vector store that the file batch belongs to. vector_store_id:, request_options: {} - ); end + ) + end + # Returns a list of vector store files in a batch. sig do params( @@ -69,12 +81,15 @@ module OpenAI vector_store_id: String, after: String, before: String, - filter: OpenAI::Models::VectorStores::FileBatchListFilesParams::Filter::OrSymbol, + filter: + OpenAI::VectorStores::FileBatchListFilesParams::Filter::OrSymbol, limit: Integer, - order: OpenAI::Models::VectorStores::FileBatchListFilesParams::Order::OrSymbol, - request_options: OpenAI::RequestOpts + order: + OpenAI::VectorStores::FileBatchListFilesParams::Order::OrSymbol, + request_options: OpenAI::RequestOptions::OrHash + ).returns( + OpenAI::Internal::CursorPage[OpenAI::VectorStores::VectorStoreFile] ) - .returns(OpenAI::Internal::CursorPage[OpenAI::Models::VectorStores::VectorStoreFile]) end def list_files( # Path param: The ID of the file batch that the files belong to. @@ -101,10 +116,13 @@ module OpenAI # ascending order and `desc` for descending order. order: nil, request_options: {} - ); end + ) + end + # @api private sig { params(client: OpenAI::Client).returns(T.attached_class) } - def self.new(client:); end + def self.new(client:) + end end end end diff --git a/rbi/openai/resources/vector_stores/files.rbi b/rbi/openai/resources/vector_stores/files.rbi index e70c0adf..8d760b4a 100644 --- a/rbi/openai/resources/vector_stores/files.rbi +++ b/rbi/openai/resources/vector_stores/files.rbi @@ -11,15 +11,15 @@ module OpenAI params( vector_store_id: String, file_id: String, - attributes: T.nilable(T::Hash[Symbol, T.any(String, Float, T::Boolean)]), - chunking_strategy: T.any( - OpenAI::Models::AutoFileChunkingStrategyParam, - OpenAI::Internal::AnyHash, - OpenAI::Models::StaticFileChunkingStrategyObjectParam - ), - request_options: OpenAI::RequestOpts - ) - .returns(OpenAI::Models::VectorStores::VectorStoreFile) + attributes: + T.nilable(T::Hash[Symbol, T.any(String, Float, T::Boolean)]), + chunking_strategy: + T.any( + OpenAI::AutoFileChunkingStrategyParam::OrHash, + OpenAI::StaticFileChunkingStrategyObjectParam::OrHash + ), + request_options: OpenAI::RequestOptions::OrHash + ).returns(OpenAI::VectorStores::VectorStoreFile) end def create( # The ID of the vector store for which to create a File. @@ -38,11 +38,16 @@ module OpenAI # strategy. Only applicable if `file_ids` is non-empty. chunking_strategy: nil, request_options: {} - ); end + ) + end + # Retrieves a vector store file. sig do - params(file_id: String, vector_store_id: String, request_options: OpenAI::RequestOpts) - .returns(OpenAI::Models::VectorStores::VectorStoreFile) + params( + file_id: String, + vector_store_id: String, + request_options: OpenAI::RequestOptions::OrHash + ).returns(OpenAI::VectorStores::VectorStoreFile) end def retrieve( # The ID of the file being retrieved. @@ -50,16 +55,18 @@ module OpenAI # The ID of the vector store that the file belongs to. vector_store_id:, request_options: {} - ); end + ) + end + # Update attributes on a vector store file. sig do params( file_id: String, vector_store_id: String, - attributes: T.nilable(T::Hash[Symbol, T.any(String, Float, T::Boolean)]), - request_options: OpenAI::RequestOpts - ) - .returns(OpenAI::Models::VectorStores::VectorStoreFile) + attributes: + T.nilable(T::Hash[Symbol, T.any(String, Float, T::Boolean)]), + request_options: OpenAI::RequestOptions::OrHash + ).returns(OpenAI::VectorStores::VectorStoreFile) end def update( # Path param: The ID of the file to update attributes. @@ -73,19 +80,22 @@ module OpenAI # maximum length of 512 characters, booleans, or numbers. attributes:, request_options: {} - ); end + ) + end + # Returns a list of vector store files. sig do params( vector_store_id: String, after: String, before: String, - filter: OpenAI::Models::VectorStores::FileListParams::Filter::OrSymbol, + filter: OpenAI::VectorStores::FileListParams::Filter::OrSymbol, limit: Integer, - order: OpenAI::Models::VectorStores::FileListParams::Order::OrSymbol, - request_options: OpenAI::RequestOpts + order: OpenAI::VectorStores::FileListParams::Order::OrSymbol, + request_options: OpenAI::RequestOptions::OrHash + ).returns( + OpenAI::Internal::CursorPage[OpenAI::VectorStores::VectorStoreFile] ) - .returns(OpenAI::Internal::CursorPage[OpenAI::Models::VectorStores::VectorStoreFile]) end def list( # The ID of the vector store that the files belong to. @@ -109,14 +119,19 @@ module OpenAI # order and `desc` for descending order. order: nil, request_options: {} - ); end + ) + end + # Delete a vector store file. This will remove the file from the vector store but # the file itself will not be deleted. To delete the file, use the # [delete file](https://platform.openai.com/docs/api-reference/files/delete) # endpoint. sig do - params(file_id: String, vector_store_id: String, request_options: OpenAI::RequestOpts) - .returns(OpenAI::Models::VectorStores::VectorStoreFileDeleted) + params( + file_id: String, + vector_store_id: String, + request_options: OpenAI::RequestOptions::OrHash + ).returns(OpenAI::VectorStores::VectorStoreFileDeleted) end def delete( # The ID of the file to delete. @@ -124,11 +139,20 @@ module OpenAI # The ID of the vector store that the file belongs to. vector_store_id:, request_options: {} - ); end + ) + end + # Retrieve the parsed contents of a vector store file. sig do - params(file_id: String, vector_store_id: String, request_options: OpenAI::RequestOpts) - .returns(OpenAI::Internal::Page[OpenAI::Models::VectorStores::FileContentResponse]) + params( + file_id: String, + vector_store_id: String, + request_options: OpenAI::RequestOptions::OrHash + ).returns( + OpenAI::Internal::Page[ + OpenAI::Models::VectorStores::FileContentResponse + ] + ) end def content( # The ID of the file within the vector store. @@ -136,10 +160,13 @@ module OpenAI # The ID of the vector store. vector_store_id:, request_options: {} - ); end + ) + end + # @api private sig { params(client: OpenAI::Client).returns(T.attached_class) } - def self.new(client:); end + def self.new(client:) + end end end end diff --git a/sig/openai/internal/type/request_parameters.rbs b/sig/openai/internal/type/request_parameters.rbs index da025b59..6519af95 100644 --- a/sig/openai/internal/type/request_parameters.rbs +++ b/sig/openai/internal/type/request_parameters.rbs @@ -4,7 +4,9 @@ module OpenAI type request_parameters = { request_options: OpenAI::request_opts } module RequestParameters - attr_accessor request_options: OpenAI::request_opts + attr_reader request_options: OpenAI::request_opts + + def request_options=: (OpenAI::request_opts) -> OpenAI::request_opts module Converter def dump_request: (top params) -> [top, ::Hash[Symbol, top]] diff --git a/sig/openai/models/all_models.rbs b/sig/openai/models/all_models.rbs index 3d567669..90320393 100644 --- a/sig/openai/models/all_models.rbs +++ b/sig/openai/models/all_models.rbs @@ -3,7 +3,7 @@ module OpenAI type all_models = String | OpenAI::Models::chat_model - | OpenAI::Models::AllModels::responses_only_model + | OpenAI::AllModels::responses_only_model module AllModels extend OpenAI::Internal::Type::Union @@ -22,10 +22,10 @@ module OpenAI COMPUTER_USE_PREVIEW: :"computer-use-preview" COMPUTER_USE_PREVIEW_2025_03_11: :"computer-use-preview-2025-03-11" - def self?.values: -> ::Array[OpenAI::Models::AllModels::responses_only_model] + def self?.values: -> ::Array[OpenAI::AllModels::responses_only_model] end - def self?.variants: -> [String, OpenAI::Models::chat_model, OpenAI::Models::AllModels::responses_only_model] + def self?.variants: -> ::Array[OpenAI::Models::all_models] end end end diff --git a/sig/openai/models/audio/speech_create_params.rbs b/sig/openai/models/audio/speech_create_params.rbs index 97aff0df..2faac5ef 100644 --- a/sig/openai/models/audio/speech_create_params.rbs +++ b/sig/openai/models/audio/speech_create_params.rbs @@ -46,14 +46,12 @@ module OpenAI ?request_options: OpenAI::request_opts ) -> void - def to_hash: -> OpenAI::Models::Audio::speech_create_params - type model = String | OpenAI::Models::Audio::speech_model module Model extend OpenAI::Internal::Type::Union - def self?.variants: -> [String, OpenAI::Models::Audio::speech_model] + def self?.variants: -> ::Array[OpenAI::Models::Audio::SpeechCreateParams::model] end type voice = @@ -73,17 +71,7 @@ module OpenAI module Voice extend OpenAI::Internal::Type::Union - def self?.variants: -> [String, (:alloy - | :ash - | :ballad - | :coral - | :echo - | :fable - | :onyx - | :nova - | :sage - | :shimmer - | :verse)] + def self?.variants: -> ::Array[OpenAI::Models::Audio::SpeechCreateParams::voice] ALLOY: :alloy ASH: :ash diff --git a/sig/openai/models/audio/transcription.rbs b/sig/openai/models/audio/transcription.rbs index 12d41fc2..3e522926 100644 --- a/sig/openai/models/audio/transcription.rbs +++ b/sig/openai/models/audio/transcription.rbs @@ -4,25 +4,23 @@ module OpenAI type transcription = { text: String, - logprobs: ::Array[OpenAI::Models::Audio::Transcription::Logprob] + logprobs: ::Array[OpenAI::Audio::Transcription::Logprob] } class Transcription < OpenAI::Internal::Type::BaseModel attr_accessor text: String - attr_reader logprobs: ::Array[OpenAI::Models::Audio::Transcription::Logprob]? + attr_reader logprobs: ::Array[OpenAI::Audio::Transcription::Logprob]? def logprobs=: ( - ::Array[OpenAI::Models::Audio::Transcription::Logprob] - ) -> ::Array[OpenAI::Models::Audio::Transcription::Logprob] + ::Array[OpenAI::Audio::Transcription::Logprob] + ) -> ::Array[OpenAI::Audio::Transcription::Logprob] def initialize: ( text: String, - ?logprobs: ::Array[OpenAI::Models::Audio::Transcription::Logprob] + ?logprobs: ::Array[OpenAI::Audio::Transcription::Logprob] ) -> void - def to_hash: -> OpenAI::Models::Audio::transcription - type logprob = { token: String, bytes: ::Array[Float], logprob: Float } class Logprob < OpenAI::Internal::Type::BaseModel @@ -43,8 +41,6 @@ module OpenAI ?bytes: ::Array[Float], ?logprob: Float ) -> void - - def to_hash: -> OpenAI::Models::Audio::Transcription::logprob end end end diff --git a/sig/openai/models/audio/transcription_create_params.rbs b/sig/openai/models/audio/transcription_create_params.rbs index e16d6287..fda04c86 100644 --- a/sig/openai/models/audio/transcription_create_params.rbs +++ b/sig/openai/models/audio/transcription_create_params.rbs @@ -10,7 +10,7 @@ module OpenAI prompt: String, response_format: OpenAI::Models::audio_response_format, temperature: Float, - timestamp_granularities: ::Array[OpenAI::Models::Audio::TranscriptionCreateParams::timestamp_granularity] + timestamp_granularities: ::Array[OpenAI::Audio::TranscriptionCreateParams::timestamp_granularity] } & OpenAI::Internal::Type::request_parameters @@ -46,11 +46,11 @@ module OpenAI def temperature=: (Float) -> Float - attr_reader timestamp_granularities: ::Array[OpenAI::Models::Audio::TranscriptionCreateParams::timestamp_granularity]? + attr_reader timestamp_granularities: ::Array[OpenAI::Audio::TranscriptionCreateParams::timestamp_granularity]? def timestamp_granularities=: ( - ::Array[OpenAI::Models::Audio::TranscriptionCreateParams::timestamp_granularity] - ) -> ::Array[OpenAI::Models::Audio::TranscriptionCreateParams::timestamp_granularity] + ::Array[OpenAI::Audio::TranscriptionCreateParams::timestamp_granularity] + ) -> ::Array[OpenAI::Audio::TranscriptionCreateParams::timestamp_granularity] def initialize: ( file: Pathname | StringIO | IO | OpenAI::FilePart, @@ -60,18 +60,16 @@ module OpenAI ?prompt: String, ?response_format: OpenAI::Models::audio_response_format, ?temperature: Float, - ?timestamp_granularities: ::Array[OpenAI::Models::Audio::TranscriptionCreateParams::timestamp_granularity], + ?timestamp_granularities: ::Array[OpenAI::Audio::TranscriptionCreateParams::timestamp_granularity], ?request_options: OpenAI::request_opts ) -> void - def to_hash: -> OpenAI::Models::Audio::transcription_create_params - type model = String | OpenAI::Models::audio_model module Model extend OpenAI::Internal::Type::Union - def self?.variants: -> [String, OpenAI::Models::audio_model] + def self?.variants: -> ::Array[OpenAI::Models::Audio::TranscriptionCreateParams::model] end type timestamp_granularity = :word | :segment @@ -82,7 +80,7 @@ module OpenAI WORD: :word SEGMENT: :segment - def self?.values: -> ::Array[OpenAI::Models::Audio::TranscriptionCreateParams::timestamp_granularity] + def self?.values: -> ::Array[OpenAI::Audio::TranscriptionCreateParams::timestamp_granularity] end end end diff --git a/sig/openai/models/audio/transcription_create_response.rbs b/sig/openai/models/audio/transcription_create_response.rbs index f4931f11..5e18958f 100644 --- a/sig/openai/models/audio/transcription_create_response.rbs +++ b/sig/openai/models/audio/transcription_create_response.rbs @@ -2,13 +2,12 @@ module OpenAI module Models module Audio type transcription_create_response = - OpenAI::Models::Audio::Transcription - | OpenAI::Models::Audio::TranscriptionVerbose + OpenAI::Audio::Transcription | OpenAI::Audio::TranscriptionVerbose module TranscriptionCreateResponse extend OpenAI::Internal::Type::Union - def self?.variants: -> [OpenAI::Models::Audio::Transcription, OpenAI::Models::Audio::TranscriptionVerbose] + def self?.variants: -> ::Array[OpenAI::Models::Audio::transcription_create_response] end end end diff --git a/sig/openai/models/audio/transcription_segment.rbs b/sig/openai/models/audio/transcription_segment.rbs index b0748151..9c38a1be 100644 --- a/sig/openai/models/audio/transcription_segment.rbs +++ b/sig/openai/models/audio/transcription_segment.rbs @@ -48,8 +48,6 @@ module OpenAI text: String, tokens: ::Array[Integer] ) -> void - - def to_hash: -> OpenAI::Models::Audio::transcription_segment end end end diff --git a/sig/openai/models/audio/transcription_stream_event.rbs b/sig/openai/models/audio/transcription_stream_event.rbs index 158d4540..f6c55919 100644 --- a/sig/openai/models/audio/transcription_stream_event.rbs +++ b/sig/openai/models/audio/transcription_stream_event.rbs @@ -2,13 +2,13 @@ module OpenAI module Models module Audio type transcription_stream_event = - OpenAI::Models::Audio::TranscriptionTextDeltaEvent - | OpenAI::Models::Audio::TranscriptionTextDoneEvent + OpenAI::Audio::TranscriptionTextDeltaEvent + | OpenAI::Audio::TranscriptionTextDoneEvent module TranscriptionStreamEvent extend OpenAI::Internal::Type::Union - def self?.variants: -> [OpenAI::Models::Audio::TranscriptionTextDeltaEvent, OpenAI::Models::Audio::TranscriptionTextDoneEvent] + def self?.variants: -> ::Array[OpenAI::Models::Audio::transcription_stream_event] end end end diff --git a/sig/openai/models/audio/transcription_text_delta_event.rbs b/sig/openai/models/audio/transcription_text_delta_event.rbs index c34d5fcd..09c419d7 100644 --- a/sig/openai/models/audio/transcription_text_delta_event.rbs +++ b/sig/openai/models/audio/transcription_text_delta_event.rbs @@ -5,7 +5,7 @@ module OpenAI { delta: String, type: :"transcript.text.delta", - logprobs: ::Array[OpenAI::Models::Audio::TranscriptionTextDeltaEvent::Logprob] + logprobs: ::Array[OpenAI::Audio::TranscriptionTextDeltaEvent::Logprob] } class TranscriptionTextDeltaEvent < OpenAI::Internal::Type::BaseModel @@ -13,20 +13,18 @@ module OpenAI attr_accessor type: :"transcript.text.delta" - attr_reader logprobs: ::Array[OpenAI::Models::Audio::TranscriptionTextDeltaEvent::Logprob]? + attr_reader logprobs: ::Array[OpenAI::Audio::TranscriptionTextDeltaEvent::Logprob]? def logprobs=: ( - ::Array[OpenAI::Models::Audio::TranscriptionTextDeltaEvent::Logprob] - ) -> ::Array[OpenAI::Models::Audio::TranscriptionTextDeltaEvent::Logprob] + ::Array[OpenAI::Audio::TranscriptionTextDeltaEvent::Logprob] + ) -> ::Array[OpenAI::Audio::TranscriptionTextDeltaEvent::Logprob] def initialize: ( delta: String, - ?logprobs: ::Array[OpenAI::Models::Audio::TranscriptionTextDeltaEvent::Logprob], + ?logprobs: ::Array[OpenAI::Audio::TranscriptionTextDeltaEvent::Logprob], ?type: :"transcript.text.delta" ) -> void - def to_hash: -> OpenAI::Models::Audio::transcription_text_delta_event - type logprob = { token: String, bytes: ::Array[top], logprob: Float } class Logprob < OpenAI::Internal::Type::BaseModel @@ -47,8 +45,6 @@ module OpenAI ?bytes: ::Array[top], ?logprob: Float ) -> void - - def to_hash: -> OpenAI::Models::Audio::TranscriptionTextDeltaEvent::logprob end end end diff --git a/sig/openai/models/audio/transcription_text_done_event.rbs b/sig/openai/models/audio/transcription_text_done_event.rbs index f6216cee..c2fb0bc1 100644 --- a/sig/openai/models/audio/transcription_text_done_event.rbs +++ b/sig/openai/models/audio/transcription_text_done_event.rbs @@ -5,7 +5,7 @@ module OpenAI { text: String, type: :"transcript.text.done", - logprobs: ::Array[OpenAI::Models::Audio::TranscriptionTextDoneEvent::Logprob] + logprobs: ::Array[OpenAI::Audio::TranscriptionTextDoneEvent::Logprob] } class TranscriptionTextDoneEvent < OpenAI::Internal::Type::BaseModel @@ -13,20 +13,18 @@ module OpenAI attr_accessor type: :"transcript.text.done" - attr_reader logprobs: ::Array[OpenAI::Models::Audio::TranscriptionTextDoneEvent::Logprob]? + attr_reader logprobs: ::Array[OpenAI::Audio::TranscriptionTextDoneEvent::Logprob]? def logprobs=: ( - ::Array[OpenAI::Models::Audio::TranscriptionTextDoneEvent::Logprob] - ) -> ::Array[OpenAI::Models::Audio::TranscriptionTextDoneEvent::Logprob] + ::Array[OpenAI::Audio::TranscriptionTextDoneEvent::Logprob] + ) -> ::Array[OpenAI::Audio::TranscriptionTextDoneEvent::Logprob] def initialize: ( text: String, - ?logprobs: ::Array[OpenAI::Models::Audio::TranscriptionTextDoneEvent::Logprob], + ?logprobs: ::Array[OpenAI::Audio::TranscriptionTextDoneEvent::Logprob], ?type: :"transcript.text.done" ) -> void - def to_hash: -> OpenAI::Models::Audio::transcription_text_done_event - type logprob = { token: String, bytes: ::Array[top], logprob: Float } class Logprob < OpenAI::Internal::Type::BaseModel @@ -47,8 +45,6 @@ module OpenAI ?bytes: ::Array[top], ?logprob: Float ) -> void - - def to_hash: -> OpenAI::Models::Audio::TranscriptionTextDoneEvent::logprob end end end diff --git a/sig/openai/models/audio/transcription_verbose.rbs b/sig/openai/models/audio/transcription_verbose.rbs index 34e8fe7a..6e40e651 100644 --- a/sig/openai/models/audio/transcription_verbose.rbs +++ b/sig/openai/models/audio/transcription_verbose.rbs @@ -6,8 +6,8 @@ module OpenAI duration: Float, language: String, text: String, - segments: ::Array[OpenAI::Models::Audio::TranscriptionSegment], - words: ::Array[OpenAI::Models::Audio::TranscriptionWord] + segments: ::Array[OpenAI::Audio::TranscriptionSegment], + words: ::Array[OpenAI::Audio::TranscriptionWord] } class TranscriptionVerbose < OpenAI::Internal::Type::BaseModel @@ -17,27 +17,25 @@ module OpenAI attr_accessor text: String - attr_reader segments: ::Array[OpenAI::Models::Audio::TranscriptionSegment]? + attr_reader segments: ::Array[OpenAI::Audio::TranscriptionSegment]? def segments=: ( - ::Array[OpenAI::Models::Audio::TranscriptionSegment] - ) -> ::Array[OpenAI::Models::Audio::TranscriptionSegment] + ::Array[OpenAI::Audio::TranscriptionSegment] + ) -> ::Array[OpenAI::Audio::TranscriptionSegment] - attr_reader words: ::Array[OpenAI::Models::Audio::TranscriptionWord]? + attr_reader words: ::Array[OpenAI::Audio::TranscriptionWord]? def words=: ( - ::Array[OpenAI::Models::Audio::TranscriptionWord] - ) -> ::Array[OpenAI::Models::Audio::TranscriptionWord] + ::Array[OpenAI::Audio::TranscriptionWord] + ) -> ::Array[OpenAI::Audio::TranscriptionWord] def initialize: ( duration: Float, language: String, text: String, - ?segments: ::Array[OpenAI::Models::Audio::TranscriptionSegment], - ?words: ::Array[OpenAI::Models::Audio::TranscriptionWord] + ?segments: ::Array[OpenAI::Audio::TranscriptionSegment], + ?words: ::Array[OpenAI::Audio::TranscriptionWord] ) -> void - - def to_hash: -> OpenAI::Models::Audio::transcription_verbose end end end diff --git a/sig/openai/models/audio/transcription_word.rbs b/sig/openai/models/audio/transcription_word.rbs index e9332bbd..eb48b12d 100644 --- a/sig/openai/models/audio/transcription_word.rbs +++ b/sig/openai/models/audio/transcription_word.rbs @@ -11,8 +11,6 @@ module OpenAI attr_accessor word: String def initialize: (end_: Float, start: Float, word: String) -> void - - def to_hash: -> OpenAI::Models::Audio::transcription_word end end end diff --git a/sig/openai/models/audio/translation.rbs b/sig/openai/models/audio/translation.rbs index 43eeef91..cc45a2b2 100644 --- a/sig/openai/models/audio/translation.rbs +++ b/sig/openai/models/audio/translation.rbs @@ -7,8 +7,6 @@ module OpenAI attr_accessor text: String def initialize: (text: String) -> void - - def to_hash: -> OpenAI::Models::Audio::translation end end end diff --git a/sig/openai/models/audio/translation_create_params.rbs b/sig/openai/models/audio/translation_create_params.rbs index 8fcd623b..5a9c7d5f 100644 --- a/sig/openai/models/audio/translation_create_params.rbs +++ b/sig/openai/models/audio/translation_create_params.rbs @@ -42,14 +42,12 @@ module OpenAI ?request_options: OpenAI::request_opts ) -> void - def to_hash: -> OpenAI::Models::Audio::translation_create_params - type model = String | OpenAI::Models::audio_model module Model extend OpenAI::Internal::Type::Union - def self?.variants: -> [String, OpenAI::Models::audio_model] + def self?.variants: -> ::Array[OpenAI::Models::Audio::TranslationCreateParams::model] end type response_format = :json | :text | :srt | :verbose_json | :vtt diff --git a/sig/openai/models/audio/translation_create_response.rbs b/sig/openai/models/audio/translation_create_response.rbs index 785dfce2..a792f349 100644 --- a/sig/openai/models/audio/translation_create_response.rbs +++ b/sig/openai/models/audio/translation_create_response.rbs @@ -2,13 +2,12 @@ module OpenAI module Models module Audio type translation_create_response = - OpenAI::Models::Audio::Translation - | OpenAI::Models::Audio::TranslationVerbose + OpenAI::Audio::Translation | OpenAI::Audio::TranslationVerbose module TranslationCreateResponse extend OpenAI::Internal::Type::Union - def self?.variants: -> [OpenAI::Models::Audio::Translation, OpenAI::Models::Audio::TranslationVerbose] + def self?.variants: -> ::Array[OpenAI::Models::Audio::translation_create_response] end end end diff --git a/sig/openai/models/audio/translation_verbose.rbs b/sig/openai/models/audio/translation_verbose.rbs index 3f69b2ca..20796402 100644 --- a/sig/openai/models/audio/translation_verbose.rbs +++ b/sig/openai/models/audio/translation_verbose.rbs @@ -6,7 +6,7 @@ module OpenAI duration: Float, language: String, text: String, - segments: ::Array[OpenAI::Models::Audio::TranscriptionSegment] + segments: ::Array[OpenAI::Audio::TranscriptionSegment] } class TranslationVerbose < OpenAI::Internal::Type::BaseModel @@ -16,20 +16,18 @@ module OpenAI attr_accessor text: String - attr_reader segments: ::Array[OpenAI::Models::Audio::TranscriptionSegment]? + attr_reader segments: ::Array[OpenAI::Audio::TranscriptionSegment]? def segments=: ( - ::Array[OpenAI::Models::Audio::TranscriptionSegment] - ) -> ::Array[OpenAI::Models::Audio::TranscriptionSegment] + ::Array[OpenAI::Audio::TranscriptionSegment] + ) -> ::Array[OpenAI::Audio::TranscriptionSegment] def initialize: ( duration: Float, language: String, text: String, - ?segments: ::Array[OpenAI::Models::Audio::TranscriptionSegment] + ?segments: ::Array[OpenAI::Audio::TranscriptionSegment] ) -> void - - def to_hash: -> OpenAI::Models::Audio::translation_verbose end end end diff --git a/sig/openai/models/auto_file_chunking_strategy_param.rbs b/sig/openai/models/auto_file_chunking_strategy_param.rbs index a5285e7b..81e99fa2 100644 --- a/sig/openai/models/auto_file_chunking_strategy_param.rbs +++ b/sig/openai/models/auto_file_chunking_strategy_param.rbs @@ -6,8 +6,6 @@ module OpenAI attr_accessor type: :auto def initialize: (?type: :auto) -> void - - def to_hash: -> OpenAI::Models::auto_file_chunking_strategy_param end end end diff --git a/sig/openai/models/batch.rbs b/sig/openai/models/batch.rbs index 75a90985..702f7dff 100644 --- a/sig/openai/models/batch.rbs +++ b/sig/openai/models/batch.rbs @@ -8,12 +8,12 @@ module OpenAI endpoint: String, input_file_id: String, object: :batch, - status: OpenAI::Models::Batch::status, + status: OpenAI::Batch::status, cancelled_at: Integer, cancelling_at: Integer, completed_at: Integer, error_file_id: String, - errors: OpenAI::Models::Batch::Errors, + errors: OpenAI::Batch::Errors, expired_at: Integer, expires_at: Integer, failed_at: Integer, @@ -21,7 +21,7 @@ module OpenAI in_progress_at: Integer, metadata: OpenAI::Models::metadata?, output_file_id: String, - request_counts: OpenAI::Models::BatchRequestCounts + request_counts: OpenAI::BatchRequestCounts } class Batch < OpenAI::Internal::Type::BaseModel @@ -37,7 +37,7 @@ module OpenAI attr_accessor object: :batch - attr_accessor status: OpenAI::Models::Batch::status + attr_accessor status: OpenAI::Batch::status attr_reader cancelled_at: Integer? @@ -55,11 +55,9 @@ module OpenAI def error_file_id=: (String) -> String - attr_reader errors: OpenAI::Models::Batch::Errors? + attr_reader errors: OpenAI::Batch::Errors? - def errors=: ( - OpenAI::Models::Batch::Errors - ) -> OpenAI::Models::Batch::Errors + def errors=: (OpenAI::Batch::Errors) -> OpenAI::Batch::Errors attr_reader expired_at: Integer? @@ -87,11 +85,11 @@ module OpenAI def output_file_id=: (String) -> String - attr_reader request_counts: OpenAI::Models::BatchRequestCounts? + attr_reader request_counts: OpenAI::BatchRequestCounts? def request_counts=: ( - OpenAI::Models::BatchRequestCounts - ) -> OpenAI::Models::BatchRequestCounts + OpenAI::BatchRequestCounts + ) -> OpenAI::BatchRequestCounts def initialize: ( id: String, @@ -99,12 +97,12 @@ module OpenAI created_at: Integer, endpoint: String, input_file_id: String, - status: OpenAI::Models::Batch::status, + status: OpenAI::Batch::status, ?cancelled_at: Integer, ?cancelling_at: Integer, ?completed_at: Integer, ?error_file_id: String, - ?errors: OpenAI::Models::Batch::Errors, + ?errors: OpenAI::Batch::Errors, ?expired_at: Integer, ?expires_at: Integer, ?failed_at: Integer, @@ -112,12 +110,10 @@ module OpenAI ?in_progress_at: Integer, ?metadata: OpenAI::Models::metadata?, ?output_file_id: String, - ?request_counts: OpenAI::Models::BatchRequestCounts, + ?request_counts: OpenAI::BatchRequestCounts, ?object: :batch ) -> void - def to_hash: -> OpenAI::Models::batch - type status = :validating | :failed @@ -140,29 +136,24 @@ module OpenAI CANCELLING: :cancelling CANCELLED: :cancelled - def self?.values: -> ::Array[OpenAI::Models::Batch::status] + def self?.values: -> ::Array[OpenAI::Batch::status] end - type errors = - { data: ::Array[OpenAI::Models::BatchError], object: String } + type errors = { data: ::Array[OpenAI::BatchError], object: String } class Errors < OpenAI::Internal::Type::BaseModel - attr_reader data: ::Array[OpenAI::Models::BatchError]? + attr_reader data: ::Array[OpenAI::BatchError]? - def data=: ( - ::Array[OpenAI::Models::BatchError] - ) -> ::Array[OpenAI::Models::BatchError] + def data=: (::Array[OpenAI::BatchError]) -> ::Array[OpenAI::BatchError] attr_reader object: String? def object=: (String) -> String def initialize: ( - ?data: ::Array[OpenAI::Models::BatchError], + ?data: ::Array[OpenAI::BatchError], ?object: String ) -> void - - def to_hash: -> OpenAI::Models::Batch::errors end end end diff --git a/sig/openai/models/batch_cancel_params.rbs b/sig/openai/models/batch_cancel_params.rbs index c8b34f9f..9b655647 100644 --- a/sig/openai/models/batch_cancel_params.rbs +++ b/sig/openai/models/batch_cancel_params.rbs @@ -7,8 +7,6 @@ module OpenAI include OpenAI::Internal::Type::RequestParameters def initialize: (?request_options: OpenAI::request_opts) -> void - - def to_hash: -> OpenAI::Models::batch_cancel_params end end end diff --git a/sig/openai/models/batch_create_params.rbs b/sig/openai/models/batch_create_params.rbs index cacafcf2..b5519cea 100644 --- a/sig/openai/models/batch_create_params.rbs +++ b/sig/openai/models/batch_create_params.rbs @@ -29,8 +29,6 @@ module OpenAI ?request_options: OpenAI::request_opts ) -> void - def to_hash: -> OpenAI::Models::batch_create_params - type completion_window = :"24h" module CompletionWindow diff --git a/sig/openai/models/batch_error.rbs b/sig/openai/models/batch_error.rbs index 75e828eb..07c43d31 100644 --- a/sig/openai/models/batch_error.rbs +++ b/sig/openai/models/batch_error.rbs @@ -22,8 +22,6 @@ module OpenAI ?message: String, ?param: String? ) -> void - - def to_hash: -> OpenAI::Models::batch_error end end end diff --git a/sig/openai/models/batch_list_params.rbs b/sig/openai/models/batch_list_params.rbs index 9cb84ad1..9f1b2961 100644 --- a/sig/openai/models/batch_list_params.rbs +++ b/sig/openai/models/batch_list_params.rbs @@ -21,8 +21,6 @@ module OpenAI ?limit: Integer, ?request_options: OpenAI::request_opts ) -> void - - def to_hash: -> OpenAI::Models::batch_list_params end end end diff --git a/sig/openai/models/batch_request_counts.rbs b/sig/openai/models/batch_request_counts.rbs index 56860e0e..38d29256 100644 --- a/sig/openai/models/batch_request_counts.rbs +++ b/sig/openai/models/batch_request_counts.rbs @@ -15,8 +15,6 @@ module OpenAI failed: Integer, total: Integer ) -> void - - def to_hash: -> OpenAI::Models::batch_request_counts end end end diff --git a/sig/openai/models/batch_retrieve_params.rbs b/sig/openai/models/batch_retrieve_params.rbs index 681750c7..b1deb5c3 100644 --- a/sig/openai/models/batch_retrieve_params.rbs +++ b/sig/openai/models/batch_retrieve_params.rbs @@ -8,8 +8,6 @@ module OpenAI include OpenAI::Internal::Type::RequestParameters def initialize: (?request_options: OpenAI::request_opts) -> void - - def to_hash: -> OpenAI::Models::batch_retrieve_params end end end diff --git a/sig/openai/models/beta/assistant.rbs b/sig/openai/models/beta/assistant.rbs index 557bcacf..867ab8e5 100644 --- a/sig/openai/models/beta/assistant.rbs +++ b/sig/openai/models/beta/assistant.rbs @@ -14,7 +14,7 @@ module OpenAI tools: ::Array[OpenAI::Models::Beta::assistant_tool], response_format: OpenAI::Models::Beta::assistant_response_format_option?, temperature: Float?, - tool_resources: OpenAI::Models::Beta::Assistant::ToolResources?, + tool_resources: OpenAI::Beta::Assistant::ToolResources?, top_p: Float? } @@ -41,7 +41,7 @@ module OpenAI attr_accessor temperature: Float? - attr_accessor tool_resources: OpenAI::Models::Beta::Assistant::ToolResources? + attr_accessor tool_resources: OpenAI::Beta::Assistant::ToolResources? attr_accessor top_p: Float? @@ -56,39 +56,35 @@ module OpenAI tools: ::Array[OpenAI::Models::Beta::assistant_tool], ?response_format: OpenAI::Models::Beta::assistant_response_format_option?, ?temperature: Float?, - ?tool_resources: OpenAI::Models::Beta::Assistant::ToolResources?, + ?tool_resources: OpenAI::Beta::Assistant::ToolResources?, ?top_p: Float?, ?object: :assistant ) -> void - def to_hash: -> OpenAI::Models::Beta::assistant - type tool_resources = { - code_interpreter: OpenAI::Models::Beta::Assistant::ToolResources::CodeInterpreter, - file_search: OpenAI::Models::Beta::Assistant::ToolResources::FileSearch + code_interpreter: OpenAI::Beta::Assistant::ToolResources::CodeInterpreter, + file_search: OpenAI::Beta::Assistant::ToolResources::FileSearch } class ToolResources < OpenAI::Internal::Type::BaseModel - attr_reader code_interpreter: OpenAI::Models::Beta::Assistant::ToolResources::CodeInterpreter? + attr_reader code_interpreter: OpenAI::Beta::Assistant::ToolResources::CodeInterpreter? def code_interpreter=: ( - OpenAI::Models::Beta::Assistant::ToolResources::CodeInterpreter - ) -> OpenAI::Models::Beta::Assistant::ToolResources::CodeInterpreter + OpenAI::Beta::Assistant::ToolResources::CodeInterpreter + ) -> OpenAI::Beta::Assistant::ToolResources::CodeInterpreter - attr_reader file_search: OpenAI::Models::Beta::Assistant::ToolResources::FileSearch? + attr_reader file_search: OpenAI::Beta::Assistant::ToolResources::FileSearch? def file_search=: ( - OpenAI::Models::Beta::Assistant::ToolResources::FileSearch - ) -> OpenAI::Models::Beta::Assistant::ToolResources::FileSearch + OpenAI::Beta::Assistant::ToolResources::FileSearch + ) -> OpenAI::Beta::Assistant::ToolResources::FileSearch def initialize: ( - ?code_interpreter: OpenAI::Models::Beta::Assistant::ToolResources::CodeInterpreter, - ?file_search: OpenAI::Models::Beta::Assistant::ToolResources::FileSearch + ?code_interpreter: OpenAI::Beta::Assistant::ToolResources::CodeInterpreter, + ?file_search: OpenAI::Beta::Assistant::ToolResources::FileSearch ) -> void - def to_hash: -> OpenAI::Models::Beta::Assistant::tool_resources - type code_interpreter = { file_ids: ::Array[String] } class CodeInterpreter < OpenAI::Internal::Type::BaseModel @@ -97,8 +93,6 @@ module OpenAI def file_ids=: (::Array[String]) -> ::Array[String] def initialize: (?file_ids: ::Array[String]) -> void - - def to_hash: -> OpenAI::Models::Beta::Assistant::ToolResources::code_interpreter end type file_search = { vector_store_ids: ::Array[String] } @@ -109,8 +103,6 @@ module OpenAI def vector_store_ids=: (::Array[String]) -> ::Array[String] def initialize: (?vector_store_ids: ::Array[String]) -> void - - def to_hash: -> OpenAI::Models::Beta::Assistant::ToolResources::file_search end end end diff --git a/sig/openai/models/beta/assistant_create_params.rbs b/sig/openai/models/beta/assistant_create_params.rbs index 83167a35..574c22a2 100644 --- a/sig/openai/models/beta/assistant_create_params.rbs +++ b/sig/openai/models/beta/assistant_create_params.rbs @@ -11,7 +11,7 @@ module OpenAI reasoning_effort: OpenAI::Models::reasoning_effort?, response_format: OpenAI::Models::Beta::assistant_response_format_option?, temperature: Float?, - tool_resources: OpenAI::Models::Beta::AssistantCreateParams::ToolResources?, + tool_resources: OpenAI::Beta::AssistantCreateParams::ToolResources?, tools: ::Array[OpenAI::Models::Beta::assistant_tool], top_p: Float? } @@ -37,7 +37,7 @@ module OpenAI attr_accessor temperature: Float? - attr_accessor tool_resources: OpenAI::Models::Beta::AssistantCreateParams::ToolResources? + attr_accessor tool_resources: OpenAI::Beta::AssistantCreateParams::ToolResources? attr_reader tools: ::Array[OpenAI::Models::Beta::assistant_tool]? @@ -56,48 +56,44 @@ module OpenAI ?reasoning_effort: OpenAI::Models::reasoning_effort?, ?response_format: OpenAI::Models::Beta::assistant_response_format_option?, ?temperature: Float?, - ?tool_resources: OpenAI::Models::Beta::AssistantCreateParams::ToolResources?, + ?tool_resources: OpenAI::Beta::AssistantCreateParams::ToolResources?, ?tools: ::Array[OpenAI::Models::Beta::assistant_tool], ?top_p: Float?, ?request_options: OpenAI::request_opts ) -> void - def to_hash: -> OpenAI::Models::Beta::assistant_create_params - type model = String | OpenAI::Models::chat_model module Model extend OpenAI::Internal::Type::Union - def self?.variants: -> [String, OpenAI::Models::chat_model] + def self?.variants: -> ::Array[OpenAI::Models::Beta::AssistantCreateParams::model] end type tool_resources = { - code_interpreter: OpenAI::Models::Beta::AssistantCreateParams::ToolResources::CodeInterpreter, - file_search: OpenAI::Models::Beta::AssistantCreateParams::ToolResources::FileSearch + code_interpreter: OpenAI::Beta::AssistantCreateParams::ToolResources::CodeInterpreter, + file_search: OpenAI::Beta::AssistantCreateParams::ToolResources::FileSearch } class ToolResources < OpenAI::Internal::Type::BaseModel - attr_reader code_interpreter: OpenAI::Models::Beta::AssistantCreateParams::ToolResources::CodeInterpreter? + attr_reader code_interpreter: OpenAI::Beta::AssistantCreateParams::ToolResources::CodeInterpreter? def code_interpreter=: ( - OpenAI::Models::Beta::AssistantCreateParams::ToolResources::CodeInterpreter - ) -> OpenAI::Models::Beta::AssistantCreateParams::ToolResources::CodeInterpreter + OpenAI::Beta::AssistantCreateParams::ToolResources::CodeInterpreter + ) -> OpenAI::Beta::AssistantCreateParams::ToolResources::CodeInterpreter - attr_reader file_search: OpenAI::Models::Beta::AssistantCreateParams::ToolResources::FileSearch? + attr_reader file_search: OpenAI::Beta::AssistantCreateParams::ToolResources::FileSearch? def file_search=: ( - OpenAI::Models::Beta::AssistantCreateParams::ToolResources::FileSearch - ) -> OpenAI::Models::Beta::AssistantCreateParams::ToolResources::FileSearch + OpenAI::Beta::AssistantCreateParams::ToolResources::FileSearch + ) -> OpenAI::Beta::AssistantCreateParams::ToolResources::FileSearch def initialize: ( - ?code_interpreter: OpenAI::Models::Beta::AssistantCreateParams::ToolResources::CodeInterpreter, - ?file_search: OpenAI::Models::Beta::AssistantCreateParams::ToolResources::FileSearch + ?code_interpreter: OpenAI::Beta::AssistantCreateParams::ToolResources::CodeInterpreter, + ?file_search: OpenAI::Beta::AssistantCreateParams::ToolResources::FileSearch ) -> void - def to_hash: -> OpenAI::Models::Beta::AssistantCreateParams::tool_resources - type code_interpreter = { file_ids: ::Array[String] } class CodeInterpreter < OpenAI::Internal::Type::BaseModel @@ -106,14 +102,12 @@ module OpenAI def file_ids=: (::Array[String]) -> ::Array[String] def initialize: (?file_ids: ::Array[String]) -> void - - def to_hash: -> OpenAI::Models::Beta::AssistantCreateParams::ToolResources::code_interpreter end type file_search = { vector_store_ids: ::Array[String], - vector_stores: ::Array[OpenAI::Models::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore] + vector_stores: ::Array[OpenAI::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore] } class FileSearch < OpenAI::Internal::Type::BaseModel @@ -121,32 +115,30 @@ module OpenAI def vector_store_ids=: (::Array[String]) -> ::Array[String] - attr_reader vector_stores: ::Array[OpenAI::Models::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore]? + attr_reader vector_stores: ::Array[OpenAI::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore]? def vector_stores=: ( - ::Array[OpenAI::Models::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore] - ) -> ::Array[OpenAI::Models::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore] + ::Array[OpenAI::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore] + ) -> ::Array[OpenAI::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore] def initialize: ( ?vector_store_ids: ::Array[String], - ?vector_stores: ::Array[OpenAI::Models::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore] + ?vector_stores: ::Array[OpenAI::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore] ) -> void - def to_hash: -> OpenAI::Models::Beta::AssistantCreateParams::ToolResources::file_search - type vector_store = { - chunking_strategy: OpenAI::Models::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore::chunking_strategy, + chunking_strategy: OpenAI::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore::chunking_strategy, file_ids: ::Array[String], metadata: OpenAI::Models::metadata? } class VectorStore < OpenAI::Internal::Type::BaseModel - attr_reader chunking_strategy: OpenAI::Models::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore::chunking_strategy? + attr_reader chunking_strategy: OpenAI::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore::chunking_strategy? def chunking_strategy=: ( - OpenAI::Models::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore::chunking_strategy - ) -> OpenAI::Models::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore::chunking_strategy + OpenAI::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore::chunking_strategy + ) -> OpenAI::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore::chunking_strategy attr_reader file_ids: ::Array[String]? @@ -155,16 +147,14 @@ module OpenAI attr_accessor metadata: OpenAI::Models::metadata? def initialize: ( - ?chunking_strategy: OpenAI::Models::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore::chunking_strategy, + ?chunking_strategy: OpenAI::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore::chunking_strategy, ?file_ids: ::Array[String], ?metadata: OpenAI::Models::metadata? ) -> void - def to_hash: -> OpenAI::Models::Beta::AssistantCreateParams::ToolResources::FileSearch::vector_store - type chunking_strategy = - OpenAI::Models::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Auto - | OpenAI::Models::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static + OpenAI::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Auto + | OpenAI::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static module ChunkingStrategy extend OpenAI::Internal::Type::Union @@ -175,28 +165,24 @@ module OpenAI attr_accessor type: :auto def initialize: (?type: :auto) -> void - - def to_hash: -> OpenAI::Models::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::auto end type static = { - static: OpenAI::Models::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static::Static, + static: OpenAI::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static::Static, type: :static } class Static < OpenAI::Internal::Type::BaseModel - attr_accessor static: OpenAI::Models::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static::Static + attr_accessor static: OpenAI::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static::Static attr_accessor type: :static def initialize: ( - static: OpenAI::Models::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static::Static, + static: OpenAI::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static::Static, ?type: :static ) -> void - def to_hash: -> OpenAI::Models::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::static - type static = { chunk_overlap_tokens: Integer, @@ -212,12 +198,10 @@ module OpenAI chunk_overlap_tokens: Integer, max_chunk_size_tokens: Integer ) -> void - - def to_hash: -> OpenAI::Models::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static::static end end - def self?.variants: -> [OpenAI::Models::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Auto, OpenAI::Models::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static] + def self?.variants: -> ::Array[OpenAI::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore::chunking_strategy] end end end diff --git a/sig/openai/models/beta/assistant_delete_params.rbs b/sig/openai/models/beta/assistant_delete_params.rbs index d6a42d1d..e429cf3e 100644 --- a/sig/openai/models/beta/assistant_delete_params.rbs +++ b/sig/openai/models/beta/assistant_delete_params.rbs @@ -9,8 +9,6 @@ module OpenAI include OpenAI::Internal::Type::RequestParameters def initialize: (?request_options: OpenAI::request_opts) -> void - - def to_hash: -> OpenAI::Models::Beta::assistant_delete_params end end end diff --git a/sig/openai/models/beta/assistant_deleted.rbs b/sig/openai/models/beta/assistant_deleted.rbs index 8c913e60..5ea06673 100644 --- a/sig/openai/models/beta/assistant_deleted.rbs +++ b/sig/openai/models/beta/assistant_deleted.rbs @@ -16,8 +16,6 @@ module OpenAI deleted: bool, ?object: :"assistant.deleted" ) -> void - - def to_hash: -> OpenAI::Models::Beta::assistant_deleted end end end diff --git a/sig/openai/models/beta/assistant_list_params.rbs b/sig/openai/models/beta/assistant_list_params.rbs index c0481b7d..252e6b46 100644 --- a/sig/openai/models/beta/assistant_list_params.rbs +++ b/sig/openai/models/beta/assistant_list_params.rbs @@ -40,8 +40,6 @@ module OpenAI ?request_options: OpenAI::request_opts ) -> void - def to_hash: -> OpenAI::Models::Beta::assistant_list_params - type order = :asc | :desc module Order diff --git a/sig/openai/models/beta/assistant_response_format_option.rbs b/sig/openai/models/beta/assistant_response_format_option.rbs index e5da5be7..7ae082e6 100644 --- a/sig/openai/models/beta/assistant_response_format_option.rbs +++ b/sig/openai/models/beta/assistant_response_format_option.rbs @@ -3,14 +3,14 @@ module OpenAI module Beta type assistant_response_format_option = :auto - | OpenAI::Models::ResponseFormatText - | OpenAI::Models::ResponseFormatJSONObject - | OpenAI::Models::ResponseFormatJSONSchema + | OpenAI::ResponseFormatText + | OpenAI::ResponseFormatJSONObject + | OpenAI::ResponseFormatJSONSchema module AssistantResponseFormatOption extend OpenAI::Internal::Type::Union - def self?.variants: -> [:auto, OpenAI::Models::ResponseFormatText, OpenAI::Models::ResponseFormatJSONObject, OpenAI::Models::ResponseFormatJSONSchema] + def self?.variants: -> ::Array[OpenAI::Models::Beta::assistant_response_format_option] end end end diff --git a/sig/openai/models/beta/assistant_retrieve_params.rbs b/sig/openai/models/beta/assistant_retrieve_params.rbs index 53274daa..a1fec037 100644 --- a/sig/openai/models/beta/assistant_retrieve_params.rbs +++ b/sig/openai/models/beta/assistant_retrieve_params.rbs @@ -9,8 +9,6 @@ module OpenAI include OpenAI::Internal::Type::RequestParameters def initialize: (?request_options: OpenAI::request_opts) -> void - - def to_hash: -> OpenAI::Models::Beta::assistant_retrieve_params end end end diff --git a/sig/openai/models/beta/assistant_stream_event.rbs b/sig/openai/models/beta/assistant_stream_event.rbs index 915e637d..e0797c37 100644 --- a/sig/openai/models/beta/assistant_stream_event.rbs +++ b/sig/openai/models/beta/assistant_stream_event.rbs @@ -2,43 +2,43 @@ module OpenAI module Models module Beta type assistant_stream_event = - 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 + OpenAI::Beta::AssistantStreamEvent::ThreadCreated + | OpenAI::Beta::AssistantStreamEvent::ThreadRunCreated + | OpenAI::Beta::AssistantStreamEvent::ThreadRunQueued + | OpenAI::Beta::AssistantStreamEvent::ThreadRunInProgress + | OpenAI::Beta::AssistantStreamEvent::ThreadRunRequiresAction + | OpenAI::Beta::AssistantStreamEvent::ThreadRunCompleted + | OpenAI::Beta::AssistantStreamEvent::ThreadRunIncomplete + | OpenAI::Beta::AssistantStreamEvent::ThreadRunFailed + | OpenAI::Beta::AssistantStreamEvent::ThreadRunCancelling + | OpenAI::Beta::AssistantStreamEvent::ThreadRunCancelled + | OpenAI::Beta::AssistantStreamEvent::ThreadRunExpired + | OpenAI::Beta::AssistantStreamEvent::ThreadRunStepCreated + | OpenAI::Beta::AssistantStreamEvent::ThreadRunStepInProgress + | OpenAI::Beta::AssistantStreamEvent::ThreadRunStepDelta + | OpenAI::Beta::AssistantStreamEvent::ThreadRunStepCompleted + | OpenAI::Beta::AssistantStreamEvent::ThreadRunStepFailed + | OpenAI::Beta::AssistantStreamEvent::ThreadRunStepCancelled + | OpenAI::Beta::AssistantStreamEvent::ThreadRunStepExpired + | OpenAI::Beta::AssistantStreamEvent::ThreadMessageCreated + | OpenAI::Beta::AssistantStreamEvent::ThreadMessageInProgress + | OpenAI::Beta::AssistantStreamEvent::ThreadMessageDelta + | OpenAI::Beta::AssistantStreamEvent::ThreadMessageCompleted + | OpenAI::Beta::AssistantStreamEvent::ThreadMessageIncomplete + | OpenAI::Beta::AssistantStreamEvent::ErrorEvent module AssistantStreamEvent extend OpenAI::Internal::Type::Union type thread_created = { - data: OpenAI::Models::Beta::Thread, + data: OpenAI::Beta::Thread, event: :"thread.created", enabled: bool } class ThreadCreated < OpenAI::Internal::Type::BaseModel - attr_accessor data: OpenAI::Models::Beta::Thread + attr_accessor data: OpenAI::Beta::Thread attr_accessor event: :"thread.created" @@ -47,448 +47,370 @@ module OpenAI def enabled=: (bool) -> bool def initialize: ( - data: OpenAI::Models::Beta::Thread, + data: OpenAI::Beta::Thread, ?enabled: bool, ?event: :"thread.created" ) -> void - - def to_hash: -> OpenAI::Models::Beta::AssistantStreamEvent::thread_created end type thread_run_created = - { - data: OpenAI::Models::Beta::Threads::Run, - event: :"thread.run.created" - } + { data: OpenAI::Beta::Threads::Run, event: :"thread.run.created" } class ThreadRunCreated < OpenAI::Internal::Type::BaseModel - attr_accessor data: OpenAI::Models::Beta::Threads::Run + attr_accessor data: OpenAI::Beta::Threads::Run attr_accessor event: :"thread.run.created" def initialize: ( - data: OpenAI::Models::Beta::Threads::Run, + data: OpenAI::Beta::Threads::Run, ?event: :"thread.run.created" ) -> void - - def to_hash: -> OpenAI::Models::Beta::AssistantStreamEvent::thread_run_created end type thread_run_queued = - { - data: OpenAI::Models::Beta::Threads::Run, - event: :"thread.run.queued" - } + { data: OpenAI::Beta::Threads::Run, event: :"thread.run.queued" } class ThreadRunQueued < OpenAI::Internal::Type::BaseModel - attr_accessor data: OpenAI::Models::Beta::Threads::Run + attr_accessor data: OpenAI::Beta::Threads::Run attr_accessor event: :"thread.run.queued" def initialize: ( - data: OpenAI::Models::Beta::Threads::Run, + data: OpenAI::Beta::Threads::Run, ?event: :"thread.run.queued" ) -> void - - def to_hash: -> OpenAI::Models::Beta::AssistantStreamEvent::thread_run_queued end type thread_run_in_progress = - { - data: OpenAI::Models::Beta::Threads::Run, - event: :"thread.run.in_progress" - } + { data: OpenAI::Beta::Threads::Run, event: :"thread.run.in_progress" } class ThreadRunInProgress < OpenAI::Internal::Type::BaseModel - attr_accessor data: OpenAI::Models::Beta::Threads::Run + attr_accessor data: OpenAI::Beta::Threads::Run attr_accessor event: :"thread.run.in_progress" def initialize: ( - data: OpenAI::Models::Beta::Threads::Run, + data: OpenAI::Beta::Threads::Run, ?event: :"thread.run.in_progress" ) -> void - - def to_hash: -> OpenAI::Models::Beta::AssistantStreamEvent::thread_run_in_progress end type thread_run_requires_action = { - data: OpenAI::Models::Beta::Threads::Run, + data: OpenAI::Beta::Threads::Run, event: :"thread.run.requires_action" } class ThreadRunRequiresAction < OpenAI::Internal::Type::BaseModel - attr_accessor data: OpenAI::Models::Beta::Threads::Run + attr_accessor data: OpenAI::Beta::Threads::Run attr_accessor event: :"thread.run.requires_action" def initialize: ( - data: OpenAI::Models::Beta::Threads::Run, + data: OpenAI::Beta::Threads::Run, ?event: :"thread.run.requires_action" ) -> void - - def to_hash: -> OpenAI::Models::Beta::AssistantStreamEvent::thread_run_requires_action end type thread_run_completed = - { - data: OpenAI::Models::Beta::Threads::Run, - event: :"thread.run.completed" - } + { data: OpenAI::Beta::Threads::Run, event: :"thread.run.completed" } class ThreadRunCompleted < OpenAI::Internal::Type::BaseModel - attr_accessor data: OpenAI::Models::Beta::Threads::Run + attr_accessor data: OpenAI::Beta::Threads::Run attr_accessor event: :"thread.run.completed" def initialize: ( - data: OpenAI::Models::Beta::Threads::Run, + data: OpenAI::Beta::Threads::Run, ?event: :"thread.run.completed" ) -> void - - def to_hash: -> OpenAI::Models::Beta::AssistantStreamEvent::thread_run_completed end type thread_run_incomplete = - { - data: OpenAI::Models::Beta::Threads::Run, - event: :"thread.run.incomplete" - } + { data: OpenAI::Beta::Threads::Run, event: :"thread.run.incomplete" } class ThreadRunIncomplete < OpenAI::Internal::Type::BaseModel - attr_accessor data: OpenAI::Models::Beta::Threads::Run + attr_accessor data: OpenAI::Beta::Threads::Run attr_accessor event: :"thread.run.incomplete" def initialize: ( - data: OpenAI::Models::Beta::Threads::Run, + data: OpenAI::Beta::Threads::Run, ?event: :"thread.run.incomplete" ) -> void - - def to_hash: -> OpenAI::Models::Beta::AssistantStreamEvent::thread_run_incomplete end type thread_run_failed = - { - data: OpenAI::Models::Beta::Threads::Run, - event: :"thread.run.failed" - } + { data: OpenAI::Beta::Threads::Run, event: :"thread.run.failed" } class ThreadRunFailed < OpenAI::Internal::Type::BaseModel - attr_accessor data: OpenAI::Models::Beta::Threads::Run + attr_accessor data: OpenAI::Beta::Threads::Run attr_accessor event: :"thread.run.failed" def initialize: ( - data: OpenAI::Models::Beta::Threads::Run, + data: OpenAI::Beta::Threads::Run, ?event: :"thread.run.failed" ) -> void - - def to_hash: -> OpenAI::Models::Beta::AssistantStreamEvent::thread_run_failed end type thread_run_cancelling = - { - data: OpenAI::Models::Beta::Threads::Run, - event: :"thread.run.cancelling" - } + { data: OpenAI::Beta::Threads::Run, event: :"thread.run.cancelling" } class ThreadRunCancelling < OpenAI::Internal::Type::BaseModel - attr_accessor data: OpenAI::Models::Beta::Threads::Run + attr_accessor data: OpenAI::Beta::Threads::Run attr_accessor event: :"thread.run.cancelling" def initialize: ( - data: OpenAI::Models::Beta::Threads::Run, + data: OpenAI::Beta::Threads::Run, ?event: :"thread.run.cancelling" ) -> void - - def to_hash: -> OpenAI::Models::Beta::AssistantStreamEvent::thread_run_cancelling end type thread_run_cancelled = - { - data: OpenAI::Models::Beta::Threads::Run, - event: :"thread.run.cancelled" - } + { data: OpenAI::Beta::Threads::Run, event: :"thread.run.cancelled" } class ThreadRunCancelled < OpenAI::Internal::Type::BaseModel - attr_accessor data: OpenAI::Models::Beta::Threads::Run + attr_accessor data: OpenAI::Beta::Threads::Run attr_accessor event: :"thread.run.cancelled" def initialize: ( - data: OpenAI::Models::Beta::Threads::Run, + data: OpenAI::Beta::Threads::Run, ?event: :"thread.run.cancelled" ) -> void - - def to_hash: -> OpenAI::Models::Beta::AssistantStreamEvent::thread_run_cancelled end type thread_run_expired = - { - data: OpenAI::Models::Beta::Threads::Run, - event: :"thread.run.expired" - } + { data: OpenAI::Beta::Threads::Run, event: :"thread.run.expired" } class ThreadRunExpired < OpenAI::Internal::Type::BaseModel - attr_accessor data: OpenAI::Models::Beta::Threads::Run + attr_accessor data: OpenAI::Beta::Threads::Run attr_accessor event: :"thread.run.expired" def initialize: ( - data: OpenAI::Models::Beta::Threads::Run, + data: OpenAI::Beta::Threads::Run, ?event: :"thread.run.expired" ) -> void - - def to_hash: -> OpenAI::Models::Beta::AssistantStreamEvent::thread_run_expired end type thread_run_step_created = { - data: OpenAI::Models::Beta::Threads::Runs::RunStep, + data: OpenAI::Beta::Threads::Runs::RunStep, event: :"thread.run.step.created" } class ThreadRunStepCreated < OpenAI::Internal::Type::BaseModel - attr_accessor data: OpenAI::Models::Beta::Threads::Runs::RunStep + attr_accessor data: OpenAI::Beta::Threads::Runs::RunStep attr_accessor event: :"thread.run.step.created" def initialize: ( - data: OpenAI::Models::Beta::Threads::Runs::RunStep, + data: OpenAI::Beta::Threads::Runs::RunStep, ?event: :"thread.run.step.created" ) -> void - - def to_hash: -> OpenAI::Models::Beta::AssistantStreamEvent::thread_run_step_created end type thread_run_step_in_progress = { - data: OpenAI::Models::Beta::Threads::Runs::RunStep, + data: OpenAI::Beta::Threads::Runs::RunStep, event: :"thread.run.step.in_progress" } class ThreadRunStepInProgress < OpenAI::Internal::Type::BaseModel - attr_accessor data: OpenAI::Models::Beta::Threads::Runs::RunStep + attr_accessor data: OpenAI::Beta::Threads::Runs::RunStep attr_accessor event: :"thread.run.step.in_progress" def initialize: ( - data: OpenAI::Models::Beta::Threads::Runs::RunStep, + data: OpenAI::Beta::Threads::Runs::RunStep, ?event: :"thread.run.step.in_progress" ) -> void - - def to_hash: -> OpenAI::Models::Beta::AssistantStreamEvent::thread_run_step_in_progress end type thread_run_step_delta = { - data: OpenAI::Models::Beta::Threads::Runs::RunStepDeltaEvent, + data: OpenAI::Beta::Threads::Runs::RunStepDeltaEvent, event: :"thread.run.step.delta" } class ThreadRunStepDelta < OpenAI::Internal::Type::BaseModel - attr_accessor data: OpenAI::Models::Beta::Threads::Runs::RunStepDeltaEvent + attr_accessor data: OpenAI::Beta::Threads::Runs::RunStepDeltaEvent attr_accessor event: :"thread.run.step.delta" def initialize: ( - data: OpenAI::Models::Beta::Threads::Runs::RunStepDeltaEvent, + data: OpenAI::Beta::Threads::Runs::RunStepDeltaEvent, ?event: :"thread.run.step.delta" ) -> void - - def to_hash: -> OpenAI::Models::Beta::AssistantStreamEvent::thread_run_step_delta end type thread_run_step_completed = { - data: OpenAI::Models::Beta::Threads::Runs::RunStep, + data: OpenAI::Beta::Threads::Runs::RunStep, event: :"thread.run.step.completed" } class ThreadRunStepCompleted < OpenAI::Internal::Type::BaseModel - attr_accessor data: OpenAI::Models::Beta::Threads::Runs::RunStep + attr_accessor data: OpenAI::Beta::Threads::Runs::RunStep attr_accessor event: :"thread.run.step.completed" def initialize: ( - data: OpenAI::Models::Beta::Threads::Runs::RunStep, + data: OpenAI::Beta::Threads::Runs::RunStep, ?event: :"thread.run.step.completed" ) -> void - - def to_hash: -> OpenAI::Models::Beta::AssistantStreamEvent::thread_run_step_completed end type thread_run_step_failed = { - data: OpenAI::Models::Beta::Threads::Runs::RunStep, + data: OpenAI::Beta::Threads::Runs::RunStep, event: :"thread.run.step.failed" } class ThreadRunStepFailed < OpenAI::Internal::Type::BaseModel - attr_accessor data: OpenAI::Models::Beta::Threads::Runs::RunStep + attr_accessor data: OpenAI::Beta::Threads::Runs::RunStep attr_accessor event: :"thread.run.step.failed" def initialize: ( - data: OpenAI::Models::Beta::Threads::Runs::RunStep, + data: OpenAI::Beta::Threads::Runs::RunStep, ?event: :"thread.run.step.failed" ) -> void - - def to_hash: -> OpenAI::Models::Beta::AssistantStreamEvent::thread_run_step_failed end type thread_run_step_cancelled = { - data: OpenAI::Models::Beta::Threads::Runs::RunStep, + data: OpenAI::Beta::Threads::Runs::RunStep, event: :"thread.run.step.cancelled" } class ThreadRunStepCancelled < OpenAI::Internal::Type::BaseModel - attr_accessor data: OpenAI::Models::Beta::Threads::Runs::RunStep + attr_accessor data: OpenAI::Beta::Threads::Runs::RunStep attr_accessor event: :"thread.run.step.cancelled" def initialize: ( - data: OpenAI::Models::Beta::Threads::Runs::RunStep, + data: OpenAI::Beta::Threads::Runs::RunStep, ?event: :"thread.run.step.cancelled" ) -> void - - def to_hash: -> OpenAI::Models::Beta::AssistantStreamEvent::thread_run_step_cancelled end type thread_run_step_expired = { - data: OpenAI::Models::Beta::Threads::Runs::RunStep, + data: OpenAI::Beta::Threads::Runs::RunStep, event: :"thread.run.step.expired" } class ThreadRunStepExpired < OpenAI::Internal::Type::BaseModel - attr_accessor data: OpenAI::Models::Beta::Threads::Runs::RunStep + attr_accessor data: OpenAI::Beta::Threads::Runs::RunStep attr_accessor event: :"thread.run.step.expired" def initialize: ( - data: OpenAI::Models::Beta::Threads::Runs::RunStep, + data: OpenAI::Beta::Threads::Runs::RunStep, ?event: :"thread.run.step.expired" ) -> void - - def to_hash: -> OpenAI::Models::Beta::AssistantStreamEvent::thread_run_step_expired end type thread_message_created = { - data: OpenAI::Models::Beta::Threads::Message, + data: OpenAI::Beta::Threads::Message, event: :"thread.message.created" } class ThreadMessageCreated < OpenAI::Internal::Type::BaseModel - attr_accessor data: OpenAI::Models::Beta::Threads::Message + attr_accessor data: OpenAI::Beta::Threads::Message attr_accessor event: :"thread.message.created" def initialize: ( - data: OpenAI::Models::Beta::Threads::Message, + data: OpenAI::Beta::Threads::Message, ?event: :"thread.message.created" ) -> void - - def to_hash: -> OpenAI::Models::Beta::AssistantStreamEvent::thread_message_created end type thread_message_in_progress = { - data: OpenAI::Models::Beta::Threads::Message, + data: OpenAI::Beta::Threads::Message, event: :"thread.message.in_progress" } class ThreadMessageInProgress < OpenAI::Internal::Type::BaseModel - attr_accessor data: OpenAI::Models::Beta::Threads::Message + attr_accessor data: OpenAI::Beta::Threads::Message attr_accessor event: :"thread.message.in_progress" def initialize: ( - data: OpenAI::Models::Beta::Threads::Message, + data: OpenAI::Beta::Threads::Message, ?event: :"thread.message.in_progress" ) -> void - - def to_hash: -> OpenAI::Models::Beta::AssistantStreamEvent::thread_message_in_progress end type thread_message_delta = { - data: OpenAI::Models::Beta::Threads::MessageDeltaEvent, + data: OpenAI::Beta::Threads::MessageDeltaEvent, event: :"thread.message.delta" } class ThreadMessageDelta < OpenAI::Internal::Type::BaseModel - attr_accessor data: OpenAI::Models::Beta::Threads::MessageDeltaEvent + attr_accessor data: OpenAI::Beta::Threads::MessageDeltaEvent attr_accessor event: :"thread.message.delta" def initialize: ( - data: OpenAI::Models::Beta::Threads::MessageDeltaEvent, + data: OpenAI::Beta::Threads::MessageDeltaEvent, ?event: :"thread.message.delta" ) -> void - - def to_hash: -> OpenAI::Models::Beta::AssistantStreamEvent::thread_message_delta end type thread_message_completed = { - data: OpenAI::Models::Beta::Threads::Message, + data: OpenAI::Beta::Threads::Message, event: :"thread.message.completed" } class ThreadMessageCompleted < OpenAI::Internal::Type::BaseModel - attr_accessor data: OpenAI::Models::Beta::Threads::Message + attr_accessor data: OpenAI::Beta::Threads::Message attr_accessor event: :"thread.message.completed" def initialize: ( - data: OpenAI::Models::Beta::Threads::Message, + data: OpenAI::Beta::Threads::Message, ?event: :"thread.message.completed" ) -> void - - def to_hash: -> OpenAI::Models::Beta::AssistantStreamEvent::thread_message_completed end type thread_message_incomplete = { - data: OpenAI::Models::Beta::Threads::Message, + data: OpenAI::Beta::Threads::Message, event: :"thread.message.incomplete" } class ThreadMessageIncomplete < OpenAI::Internal::Type::BaseModel - attr_accessor data: OpenAI::Models::Beta::Threads::Message + attr_accessor data: OpenAI::Beta::Threads::Message attr_accessor event: :"thread.message.incomplete" def initialize: ( - data: OpenAI::Models::Beta::Threads::Message, + data: OpenAI::Beta::Threads::Message, ?event: :"thread.message.incomplete" ) -> void - - def to_hash: -> OpenAI::Models::Beta::AssistantStreamEvent::thread_message_incomplete end - type error_event = { data: OpenAI::Models::ErrorObject, event: :error } + type error_event = { data: OpenAI::ErrorObject, event: :error } class ErrorEvent < OpenAI::Internal::Type::BaseModel - attr_accessor data: OpenAI::Models::ErrorObject + attr_accessor data: OpenAI::ErrorObject attr_accessor event: :error - def initialize: ( - data: OpenAI::Models::ErrorObject, - ?event: :error - ) -> void - - def to_hash: -> OpenAI::Models::Beta::AssistantStreamEvent::error_event + def initialize: (data: OpenAI::ErrorObject, ?event: :error) -> void end - def self?.variants: -> [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] + def self?.variants: -> ::Array[OpenAI::Models::Beta::assistant_stream_event] end end end diff --git a/sig/openai/models/beta/assistant_tool.rbs b/sig/openai/models/beta/assistant_tool.rbs index abdfdcff..6a65bb27 100644 --- a/sig/openai/models/beta/assistant_tool.rbs +++ b/sig/openai/models/beta/assistant_tool.rbs @@ -2,14 +2,14 @@ module OpenAI module Models module Beta type assistant_tool = - OpenAI::Models::Beta::CodeInterpreterTool - | OpenAI::Models::Beta::FileSearchTool - | OpenAI::Models::Beta::FunctionTool + OpenAI::Beta::CodeInterpreterTool + | OpenAI::Beta::FileSearchTool + | OpenAI::Beta::FunctionTool module AssistantTool extend OpenAI::Internal::Type::Union - def self?.variants: -> [OpenAI::Models::Beta::CodeInterpreterTool, OpenAI::Models::Beta::FileSearchTool, OpenAI::Models::Beta::FunctionTool] + def self?.variants: -> ::Array[OpenAI::Models::Beta::assistant_tool] end end end diff --git a/sig/openai/models/beta/assistant_tool_choice.rbs b/sig/openai/models/beta/assistant_tool_choice.rbs index 92b87de5..526b290d 100644 --- a/sig/openai/models/beta/assistant_tool_choice.rbs +++ b/sig/openai/models/beta/assistant_tool_choice.rbs @@ -3,26 +3,24 @@ module OpenAI module Beta type assistant_tool_choice = { - type: OpenAI::Models::Beta::AssistantToolChoice::type_, - function: OpenAI::Models::Beta::AssistantToolChoiceFunction + type: OpenAI::Beta::AssistantToolChoice::type_, + function: OpenAI::Beta::AssistantToolChoiceFunction } class AssistantToolChoice < OpenAI::Internal::Type::BaseModel - attr_accessor type: OpenAI::Models::Beta::AssistantToolChoice::type_ + attr_accessor type: OpenAI::Beta::AssistantToolChoice::type_ - attr_reader function: OpenAI::Models::Beta::AssistantToolChoiceFunction? + attr_reader function: OpenAI::Beta::AssistantToolChoiceFunction? def function=: ( - OpenAI::Models::Beta::AssistantToolChoiceFunction - ) -> OpenAI::Models::Beta::AssistantToolChoiceFunction + OpenAI::Beta::AssistantToolChoiceFunction + ) -> OpenAI::Beta::AssistantToolChoiceFunction def initialize: ( - type: OpenAI::Models::Beta::AssistantToolChoice::type_, - ?function: OpenAI::Models::Beta::AssistantToolChoiceFunction + type: OpenAI::Beta::AssistantToolChoice::type_, + ?function: OpenAI::Beta::AssistantToolChoiceFunction ) -> void - def to_hash: -> OpenAI::Models::Beta::assistant_tool_choice - type type_ = :function | :code_interpreter | :file_search module Type @@ -32,7 +30,7 @@ module OpenAI CODE_INTERPRETER: :code_interpreter FILE_SEARCH: :file_search - def self?.values: -> ::Array[OpenAI::Models::Beta::AssistantToolChoice::type_] + def self?.values: -> ::Array[OpenAI::Beta::AssistantToolChoice::type_] end end end diff --git a/sig/openai/models/beta/assistant_tool_choice_function.rbs b/sig/openai/models/beta/assistant_tool_choice_function.rbs index bd41ba31..36f0983c 100644 --- a/sig/openai/models/beta/assistant_tool_choice_function.rbs +++ b/sig/openai/models/beta/assistant_tool_choice_function.rbs @@ -7,8 +7,6 @@ module OpenAI attr_accessor name: String def initialize: (name: String) -> void - - def to_hash: -> OpenAI::Models::Beta::assistant_tool_choice_function end end end diff --git a/sig/openai/models/beta/assistant_tool_choice_option.rbs b/sig/openai/models/beta/assistant_tool_choice_option.rbs index 54a6f6c5..ddd66365 100644 --- a/sig/openai/models/beta/assistant_tool_choice_option.rbs +++ b/sig/openai/models/beta/assistant_tool_choice_option.rbs @@ -2,8 +2,8 @@ module OpenAI module Models module Beta type assistant_tool_choice_option = - OpenAI::Models::Beta::AssistantToolChoiceOption::auto - | OpenAI::Models::Beta::AssistantToolChoice + OpenAI::Beta::AssistantToolChoiceOption::auto + | OpenAI::Beta::AssistantToolChoice module AssistantToolChoiceOption extend OpenAI::Internal::Type::Union @@ -17,10 +17,10 @@ module OpenAI AUTO: :auto REQUIRED: :required - def self?.values: -> ::Array[OpenAI::Models::Beta::AssistantToolChoiceOption::auto] + def self?.values: -> ::Array[OpenAI::Beta::AssistantToolChoiceOption::auto] end - def self?.variants: -> [OpenAI::Models::Beta::AssistantToolChoiceOption::auto, OpenAI::Models::Beta::AssistantToolChoice] + def self?.variants: -> ::Array[OpenAI::Models::Beta::assistant_tool_choice_option] end end end diff --git a/sig/openai/models/beta/assistant_update_params.rbs b/sig/openai/models/beta/assistant_update_params.rbs index 1ce0f114..de493080 100644 --- a/sig/openai/models/beta/assistant_update_params.rbs +++ b/sig/openai/models/beta/assistant_update_params.rbs @@ -11,7 +11,7 @@ module OpenAI reasoning_effort: OpenAI::Models::reasoning_effort?, response_format: OpenAI::Models::Beta::assistant_response_format_option?, temperature: Float?, - tool_resources: OpenAI::Models::Beta::AssistantUpdateParams::ToolResources?, + tool_resources: OpenAI::Beta::AssistantUpdateParams::ToolResources?, tools: ::Array[OpenAI::Models::Beta::assistant_tool], top_p: Float? } @@ -41,7 +41,7 @@ module OpenAI attr_accessor temperature: Float? - attr_accessor tool_resources: OpenAI::Models::Beta::AssistantUpdateParams::ToolResources? + attr_accessor tool_resources: OpenAI::Beta::AssistantUpdateParams::ToolResources? attr_reader tools: ::Array[OpenAI::Models::Beta::assistant_tool]? @@ -60,14 +60,12 @@ module OpenAI ?reasoning_effort: OpenAI::Models::reasoning_effort?, ?response_format: OpenAI::Models::Beta::assistant_response_format_option?, ?temperature: Float?, - ?tool_resources: OpenAI::Models::Beta::AssistantUpdateParams::ToolResources?, + ?tool_resources: OpenAI::Beta::AssistantUpdateParams::ToolResources?, ?tools: ::Array[OpenAI::Models::Beta::assistant_tool], ?top_p: Float?, ?request_options: OpenAI::request_opts ) -> void - def to_hash: -> OpenAI::Models::Beta::assistant_update_params - type model = String | :"gpt-4.1" @@ -110,42 +108,7 @@ module OpenAI module Model extend OpenAI::Internal::Type::Union - def self?.variants: -> [String, (:"gpt-4.1" - | :"gpt-4.1-mini" - | :"gpt-4.1-nano" - | :"gpt-4.1-2025-04-14" - | :"gpt-4.1-mini-2025-04-14" - | :"gpt-4.1-nano-2025-04-14" - | :"o3-mini" - | :"o3-mini-2025-01-31" - | :o1 - | :"o1-2024-12-17" - | :"gpt-4o" - | :"gpt-4o-2024-11-20" - | :"gpt-4o-2024-08-06" - | :"gpt-4o-2024-05-13" - | :"gpt-4o-mini" - | :"gpt-4o-mini-2024-07-18" - | :"gpt-4.5-preview" - | :"gpt-4.5-preview-2025-02-27" - | :"gpt-4-turbo" - | :"gpt-4-turbo-2024-04-09" - | :"gpt-4-0125-preview" - | :"gpt-4-turbo-preview" - | :"gpt-4-1106-preview" - | :"gpt-4-vision-preview" - | :"gpt-4" - | :"gpt-4-0314" - | :"gpt-4-0613" - | :"gpt-4-32k" - | :"gpt-4-32k-0314" - | :"gpt-4-32k-0613" - | :"gpt-3.5-turbo" - | :"gpt-3.5-turbo-16k" - | :"gpt-3.5-turbo-0613" - | :"gpt-3.5-turbo-1106" - | :"gpt-3.5-turbo-0125" - | :"gpt-3.5-turbo-16k-0613")] + def self?.variants: -> ::Array[OpenAI::Models::Beta::AssistantUpdateParams::model] GPT_4_1: :"gpt-4.1" GPT_4_1_MINI: :"gpt-4.1-mini" @@ -187,30 +150,28 @@ module OpenAI type tool_resources = { - code_interpreter: OpenAI::Models::Beta::AssistantUpdateParams::ToolResources::CodeInterpreter, - file_search: OpenAI::Models::Beta::AssistantUpdateParams::ToolResources::FileSearch + code_interpreter: OpenAI::Beta::AssistantUpdateParams::ToolResources::CodeInterpreter, + file_search: OpenAI::Beta::AssistantUpdateParams::ToolResources::FileSearch } class ToolResources < OpenAI::Internal::Type::BaseModel - attr_reader code_interpreter: OpenAI::Models::Beta::AssistantUpdateParams::ToolResources::CodeInterpreter? + attr_reader code_interpreter: OpenAI::Beta::AssistantUpdateParams::ToolResources::CodeInterpreter? def code_interpreter=: ( - OpenAI::Models::Beta::AssistantUpdateParams::ToolResources::CodeInterpreter - ) -> OpenAI::Models::Beta::AssistantUpdateParams::ToolResources::CodeInterpreter + OpenAI::Beta::AssistantUpdateParams::ToolResources::CodeInterpreter + ) -> OpenAI::Beta::AssistantUpdateParams::ToolResources::CodeInterpreter - attr_reader file_search: OpenAI::Models::Beta::AssistantUpdateParams::ToolResources::FileSearch? + attr_reader file_search: OpenAI::Beta::AssistantUpdateParams::ToolResources::FileSearch? def file_search=: ( - OpenAI::Models::Beta::AssistantUpdateParams::ToolResources::FileSearch - ) -> OpenAI::Models::Beta::AssistantUpdateParams::ToolResources::FileSearch + OpenAI::Beta::AssistantUpdateParams::ToolResources::FileSearch + ) -> OpenAI::Beta::AssistantUpdateParams::ToolResources::FileSearch def initialize: ( - ?code_interpreter: OpenAI::Models::Beta::AssistantUpdateParams::ToolResources::CodeInterpreter, - ?file_search: OpenAI::Models::Beta::AssistantUpdateParams::ToolResources::FileSearch + ?code_interpreter: OpenAI::Beta::AssistantUpdateParams::ToolResources::CodeInterpreter, + ?file_search: OpenAI::Beta::AssistantUpdateParams::ToolResources::FileSearch ) -> void - def to_hash: -> OpenAI::Models::Beta::AssistantUpdateParams::tool_resources - type code_interpreter = { file_ids: ::Array[String] } class CodeInterpreter < OpenAI::Internal::Type::BaseModel @@ -219,8 +180,6 @@ module OpenAI def file_ids=: (::Array[String]) -> ::Array[String] def initialize: (?file_ids: ::Array[String]) -> void - - def to_hash: -> OpenAI::Models::Beta::AssistantUpdateParams::ToolResources::code_interpreter end type file_search = { vector_store_ids: ::Array[String] } @@ -231,8 +190,6 @@ module OpenAI def vector_store_ids=: (::Array[String]) -> ::Array[String] def initialize: (?vector_store_ids: ::Array[String]) -> void - - def to_hash: -> OpenAI::Models::Beta::AssistantUpdateParams::ToolResources::file_search end end end diff --git a/sig/openai/models/beta/code_interpreter_tool.rbs b/sig/openai/models/beta/code_interpreter_tool.rbs index f986bb74..84b353d0 100644 --- a/sig/openai/models/beta/code_interpreter_tool.rbs +++ b/sig/openai/models/beta/code_interpreter_tool.rbs @@ -7,8 +7,6 @@ module OpenAI attr_accessor type: :code_interpreter def initialize: (?type: :code_interpreter) -> void - - def to_hash: -> OpenAI::Models::Beta::code_interpreter_tool end end end diff --git a/sig/openai/models/beta/file_search_tool.rbs b/sig/openai/models/beta/file_search_tool.rbs index f3bec757..9e544ea9 100644 --- a/sig/openai/models/beta/file_search_tool.rbs +++ b/sig/openai/models/beta/file_search_tool.rbs @@ -4,29 +4,27 @@ module OpenAI type file_search_tool = { type: :file_search, - file_search: OpenAI::Models::Beta::FileSearchTool::FileSearch + file_search: OpenAI::Beta::FileSearchTool::FileSearch } class FileSearchTool < OpenAI::Internal::Type::BaseModel attr_accessor type: :file_search - attr_reader file_search: OpenAI::Models::Beta::FileSearchTool::FileSearch? + attr_reader file_search: OpenAI::Beta::FileSearchTool::FileSearch? def file_search=: ( - OpenAI::Models::Beta::FileSearchTool::FileSearch - ) -> OpenAI::Models::Beta::FileSearchTool::FileSearch + OpenAI::Beta::FileSearchTool::FileSearch + ) -> OpenAI::Beta::FileSearchTool::FileSearch def initialize: ( - ?file_search: OpenAI::Models::Beta::FileSearchTool::FileSearch, + ?file_search: OpenAI::Beta::FileSearchTool::FileSearch, ?type: :file_search ) -> void - def to_hash: -> OpenAI::Models::Beta::file_search_tool - type file_search = { max_num_results: Integer, - ranking_options: OpenAI::Models::Beta::FileSearchTool::FileSearch::RankingOptions + ranking_options: OpenAI::Beta::FileSearchTool::FileSearch::RankingOptions } class FileSearch < OpenAI::Internal::Type::BaseModel @@ -34,41 +32,37 @@ module OpenAI def max_num_results=: (Integer) -> Integer - attr_reader ranking_options: OpenAI::Models::Beta::FileSearchTool::FileSearch::RankingOptions? + attr_reader ranking_options: OpenAI::Beta::FileSearchTool::FileSearch::RankingOptions? def ranking_options=: ( - OpenAI::Models::Beta::FileSearchTool::FileSearch::RankingOptions - ) -> OpenAI::Models::Beta::FileSearchTool::FileSearch::RankingOptions + OpenAI::Beta::FileSearchTool::FileSearch::RankingOptions + ) -> OpenAI::Beta::FileSearchTool::FileSearch::RankingOptions def initialize: ( ?max_num_results: Integer, - ?ranking_options: OpenAI::Models::Beta::FileSearchTool::FileSearch::RankingOptions + ?ranking_options: OpenAI::Beta::FileSearchTool::FileSearch::RankingOptions ) -> void - def to_hash: -> OpenAI::Models::Beta::FileSearchTool::file_search - type ranking_options = { score_threshold: Float, - ranker: OpenAI::Models::Beta::FileSearchTool::FileSearch::RankingOptions::ranker + ranker: OpenAI::Beta::FileSearchTool::FileSearch::RankingOptions::ranker } class RankingOptions < OpenAI::Internal::Type::BaseModel attr_accessor score_threshold: Float - attr_reader ranker: OpenAI::Models::Beta::FileSearchTool::FileSearch::RankingOptions::ranker? + attr_reader ranker: OpenAI::Beta::FileSearchTool::FileSearch::RankingOptions::ranker? def ranker=: ( - OpenAI::Models::Beta::FileSearchTool::FileSearch::RankingOptions::ranker - ) -> OpenAI::Models::Beta::FileSearchTool::FileSearch::RankingOptions::ranker + OpenAI::Beta::FileSearchTool::FileSearch::RankingOptions::ranker + ) -> OpenAI::Beta::FileSearchTool::FileSearch::RankingOptions::ranker def initialize: ( score_threshold: Float, - ?ranker: OpenAI::Models::Beta::FileSearchTool::FileSearch::RankingOptions::ranker + ?ranker: OpenAI::Beta::FileSearchTool::FileSearch::RankingOptions::ranker ) -> void - def to_hash: -> OpenAI::Models::Beta::FileSearchTool::FileSearch::ranking_options - type ranker = :auto | :default_2024_08_21 module Ranker @@ -77,7 +71,7 @@ module OpenAI AUTO: :auto DEFAULT_2024_08_21: :default_2024_08_21 - def self?.values: -> ::Array[OpenAI::Models::Beta::FileSearchTool::FileSearch::RankingOptions::ranker] + def self?.values: -> ::Array[OpenAI::Beta::FileSearchTool::FileSearch::RankingOptions::ranker] end end end diff --git a/sig/openai/models/beta/function_tool.rbs b/sig/openai/models/beta/function_tool.rbs index cdb1900f..d93fda7c 100644 --- a/sig/openai/models/beta/function_tool.rbs +++ b/sig/openai/models/beta/function_tool.rbs @@ -2,19 +2,17 @@ module OpenAI module Models module Beta type function_tool = - { function: OpenAI::Models::FunctionDefinition, type: :function } + { function: OpenAI::FunctionDefinition, type: :function } class FunctionTool < OpenAI::Internal::Type::BaseModel - attr_accessor function: OpenAI::Models::FunctionDefinition + attr_accessor function: OpenAI::FunctionDefinition attr_accessor type: :function def initialize: ( - function: OpenAI::Models::FunctionDefinition, + function: OpenAI::FunctionDefinition, ?type: :function ) -> void - - def to_hash: -> OpenAI::Models::Beta::function_tool end end end diff --git a/sig/openai/models/beta/message_stream_event.rbs b/sig/openai/models/beta/message_stream_event.rbs index 80b9ef55..e13d605b 100644 --- a/sig/openai/models/beta/message_stream_event.rbs +++ b/sig/openai/models/beta/message_stream_event.rbs @@ -2,111 +2,101 @@ module OpenAI module Models module Beta type message_stream_event = - OpenAI::Models::Beta::MessageStreamEvent::ThreadMessageCreated - | OpenAI::Models::Beta::MessageStreamEvent::ThreadMessageInProgress - | OpenAI::Models::Beta::MessageStreamEvent::ThreadMessageDelta - | OpenAI::Models::Beta::MessageStreamEvent::ThreadMessageCompleted - | OpenAI::Models::Beta::MessageStreamEvent::ThreadMessageIncomplete + OpenAI::Beta::MessageStreamEvent::ThreadMessageCreated + | OpenAI::Beta::MessageStreamEvent::ThreadMessageInProgress + | OpenAI::Beta::MessageStreamEvent::ThreadMessageDelta + | OpenAI::Beta::MessageStreamEvent::ThreadMessageCompleted + | OpenAI::Beta::MessageStreamEvent::ThreadMessageIncomplete module MessageStreamEvent extend OpenAI::Internal::Type::Union type thread_message_created = { - data: OpenAI::Models::Beta::Threads::Message, + data: OpenAI::Beta::Threads::Message, event: :"thread.message.created" } class ThreadMessageCreated < OpenAI::Internal::Type::BaseModel - attr_accessor data: OpenAI::Models::Beta::Threads::Message + attr_accessor data: OpenAI::Beta::Threads::Message attr_accessor event: :"thread.message.created" def initialize: ( - data: OpenAI::Models::Beta::Threads::Message, + data: OpenAI::Beta::Threads::Message, ?event: :"thread.message.created" ) -> void - - def to_hash: -> OpenAI::Models::Beta::MessageStreamEvent::thread_message_created end type thread_message_in_progress = { - data: OpenAI::Models::Beta::Threads::Message, + data: OpenAI::Beta::Threads::Message, event: :"thread.message.in_progress" } class ThreadMessageInProgress < OpenAI::Internal::Type::BaseModel - attr_accessor data: OpenAI::Models::Beta::Threads::Message + attr_accessor data: OpenAI::Beta::Threads::Message attr_accessor event: :"thread.message.in_progress" def initialize: ( - data: OpenAI::Models::Beta::Threads::Message, + data: OpenAI::Beta::Threads::Message, ?event: :"thread.message.in_progress" ) -> void - - def to_hash: -> OpenAI::Models::Beta::MessageStreamEvent::thread_message_in_progress end type thread_message_delta = { - data: OpenAI::Models::Beta::Threads::MessageDeltaEvent, + data: OpenAI::Beta::Threads::MessageDeltaEvent, event: :"thread.message.delta" } class ThreadMessageDelta < OpenAI::Internal::Type::BaseModel - attr_accessor data: OpenAI::Models::Beta::Threads::MessageDeltaEvent + attr_accessor data: OpenAI::Beta::Threads::MessageDeltaEvent attr_accessor event: :"thread.message.delta" def initialize: ( - data: OpenAI::Models::Beta::Threads::MessageDeltaEvent, + data: OpenAI::Beta::Threads::MessageDeltaEvent, ?event: :"thread.message.delta" ) -> void - - def to_hash: -> OpenAI::Models::Beta::MessageStreamEvent::thread_message_delta end type thread_message_completed = { - data: OpenAI::Models::Beta::Threads::Message, + data: OpenAI::Beta::Threads::Message, event: :"thread.message.completed" } class ThreadMessageCompleted < OpenAI::Internal::Type::BaseModel - attr_accessor data: OpenAI::Models::Beta::Threads::Message + attr_accessor data: OpenAI::Beta::Threads::Message attr_accessor event: :"thread.message.completed" def initialize: ( - data: OpenAI::Models::Beta::Threads::Message, + data: OpenAI::Beta::Threads::Message, ?event: :"thread.message.completed" ) -> void - - def to_hash: -> OpenAI::Models::Beta::MessageStreamEvent::thread_message_completed end type thread_message_incomplete = { - data: OpenAI::Models::Beta::Threads::Message, + data: OpenAI::Beta::Threads::Message, event: :"thread.message.incomplete" } class ThreadMessageIncomplete < OpenAI::Internal::Type::BaseModel - attr_accessor data: OpenAI::Models::Beta::Threads::Message + attr_accessor data: OpenAI::Beta::Threads::Message attr_accessor event: :"thread.message.incomplete" def initialize: ( - data: OpenAI::Models::Beta::Threads::Message, + data: OpenAI::Beta::Threads::Message, ?event: :"thread.message.incomplete" ) -> void - - def to_hash: -> OpenAI::Models::Beta::MessageStreamEvent::thread_message_incomplete end - def self?.variants: -> [OpenAI::Models::Beta::MessageStreamEvent::ThreadMessageCreated, OpenAI::Models::Beta::MessageStreamEvent::ThreadMessageInProgress, OpenAI::Models::Beta::MessageStreamEvent::ThreadMessageDelta, OpenAI::Models::Beta::MessageStreamEvent::ThreadMessageCompleted, OpenAI::Models::Beta::MessageStreamEvent::ThreadMessageIncomplete] + def self?.variants: -> ::Array[OpenAI::Models::Beta::message_stream_event] end end end diff --git a/sig/openai/models/beta/run_step_stream_event.rbs b/sig/openai/models/beta/run_step_stream_event.rbs index 6cd64a35..3b292e7c 100644 --- a/sig/openai/models/beta/run_step_stream_event.rbs +++ b/sig/openai/models/beta/run_step_stream_event.rbs @@ -2,151 +2,137 @@ module OpenAI module Models module Beta type run_step_stream_event = - OpenAI::Models::Beta::RunStepStreamEvent::ThreadRunStepCreated - | OpenAI::Models::Beta::RunStepStreamEvent::ThreadRunStepInProgress - | OpenAI::Models::Beta::RunStepStreamEvent::ThreadRunStepDelta - | OpenAI::Models::Beta::RunStepStreamEvent::ThreadRunStepCompleted - | OpenAI::Models::Beta::RunStepStreamEvent::ThreadRunStepFailed - | OpenAI::Models::Beta::RunStepStreamEvent::ThreadRunStepCancelled - | OpenAI::Models::Beta::RunStepStreamEvent::ThreadRunStepExpired + OpenAI::Beta::RunStepStreamEvent::ThreadRunStepCreated + | OpenAI::Beta::RunStepStreamEvent::ThreadRunStepInProgress + | OpenAI::Beta::RunStepStreamEvent::ThreadRunStepDelta + | OpenAI::Beta::RunStepStreamEvent::ThreadRunStepCompleted + | OpenAI::Beta::RunStepStreamEvent::ThreadRunStepFailed + | OpenAI::Beta::RunStepStreamEvent::ThreadRunStepCancelled + | OpenAI::Beta::RunStepStreamEvent::ThreadRunStepExpired module RunStepStreamEvent extend OpenAI::Internal::Type::Union type thread_run_step_created = { - data: OpenAI::Models::Beta::Threads::Runs::RunStep, + data: OpenAI::Beta::Threads::Runs::RunStep, event: :"thread.run.step.created" } class ThreadRunStepCreated < OpenAI::Internal::Type::BaseModel - attr_accessor data: OpenAI::Models::Beta::Threads::Runs::RunStep + attr_accessor data: OpenAI::Beta::Threads::Runs::RunStep attr_accessor event: :"thread.run.step.created" def initialize: ( - data: OpenAI::Models::Beta::Threads::Runs::RunStep, + data: OpenAI::Beta::Threads::Runs::RunStep, ?event: :"thread.run.step.created" ) -> void - - def to_hash: -> OpenAI::Models::Beta::RunStepStreamEvent::thread_run_step_created end type thread_run_step_in_progress = { - data: OpenAI::Models::Beta::Threads::Runs::RunStep, + data: OpenAI::Beta::Threads::Runs::RunStep, event: :"thread.run.step.in_progress" } class ThreadRunStepInProgress < OpenAI::Internal::Type::BaseModel - attr_accessor data: OpenAI::Models::Beta::Threads::Runs::RunStep + attr_accessor data: OpenAI::Beta::Threads::Runs::RunStep attr_accessor event: :"thread.run.step.in_progress" def initialize: ( - data: OpenAI::Models::Beta::Threads::Runs::RunStep, + data: OpenAI::Beta::Threads::Runs::RunStep, ?event: :"thread.run.step.in_progress" ) -> void - - def to_hash: -> OpenAI::Models::Beta::RunStepStreamEvent::thread_run_step_in_progress end type thread_run_step_delta = { - data: OpenAI::Models::Beta::Threads::Runs::RunStepDeltaEvent, + data: OpenAI::Beta::Threads::Runs::RunStepDeltaEvent, event: :"thread.run.step.delta" } class ThreadRunStepDelta < OpenAI::Internal::Type::BaseModel - attr_accessor data: OpenAI::Models::Beta::Threads::Runs::RunStepDeltaEvent + attr_accessor data: OpenAI::Beta::Threads::Runs::RunStepDeltaEvent attr_accessor event: :"thread.run.step.delta" def initialize: ( - data: OpenAI::Models::Beta::Threads::Runs::RunStepDeltaEvent, + data: OpenAI::Beta::Threads::Runs::RunStepDeltaEvent, ?event: :"thread.run.step.delta" ) -> void - - def to_hash: -> OpenAI::Models::Beta::RunStepStreamEvent::thread_run_step_delta end type thread_run_step_completed = { - data: OpenAI::Models::Beta::Threads::Runs::RunStep, + data: OpenAI::Beta::Threads::Runs::RunStep, event: :"thread.run.step.completed" } class ThreadRunStepCompleted < OpenAI::Internal::Type::BaseModel - attr_accessor data: OpenAI::Models::Beta::Threads::Runs::RunStep + attr_accessor data: OpenAI::Beta::Threads::Runs::RunStep attr_accessor event: :"thread.run.step.completed" def initialize: ( - data: OpenAI::Models::Beta::Threads::Runs::RunStep, + data: OpenAI::Beta::Threads::Runs::RunStep, ?event: :"thread.run.step.completed" ) -> void - - def to_hash: -> OpenAI::Models::Beta::RunStepStreamEvent::thread_run_step_completed end type thread_run_step_failed = { - data: OpenAI::Models::Beta::Threads::Runs::RunStep, + data: OpenAI::Beta::Threads::Runs::RunStep, event: :"thread.run.step.failed" } class ThreadRunStepFailed < OpenAI::Internal::Type::BaseModel - attr_accessor data: OpenAI::Models::Beta::Threads::Runs::RunStep + attr_accessor data: OpenAI::Beta::Threads::Runs::RunStep attr_accessor event: :"thread.run.step.failed" def initialize: ( - data: OpenAI::Models::Beta::Threads::Runs::RunStep, + data: OpenAI::Beta::Threads::Runs::RunStep, ?event: :"thread.run.step.failed" ) -> void - - def to_hash: -> OpenAI::Models::Beta::RunStepStreamEvent::thread_run_step_failed end type thread_run_step_cancelled = { - data: OpenAI::Models::Beta::Threads::Runs::RunStep, + data: OpenAI::Beta::Threads::Runs::RunStep, event: :"thread.run.step.cancelled" } class ThreadRunStepCancelled < OpenAI::Internal::Type::BaseModel - attr_accessor data: OpenAI::Models::Beta::Threads::Runs::RunStep + attr_accessor data: OpenAI::Beta::Threads::Runs::RunStep attr_accessor event: :"thread.run.step.cancelled" def initialize: ( - data: OpenAI::Models::Beta::Threads::Runs::RunStep, + data: OpenAI::Beta::Threads::Runs::RunStep, ?event: :"thread.run.step.cancelled" ) -> void - - def to_hash: -> OpenAI::Models::Beta::RunStepStreamEvent::thread_run_step_cancelled end type thread_run_step_expired = { - data: OpenAI::Models::Beta::Threads::Runs::RunStep, + data: OpenAI::Beta::Threads::Runs::RunStep, event: :"thread.run.step.expired" } class ThreadRunStepExpired < OpenAI::Internal::Type::BaseModel - attr_accessor data: OpenAI::Models::Beta::Threads::Runs::RunStep + attr_accessor data: OpenAI::Beta::Threads::Runs::RunStep attr_accessor event: :"thread.run.step.expired" def initialize: ( - data: OpenAI::Models::Beta::Threads::Runs::RunStep, + data: OpenAI::Beta::Threads::Runs::RunStep, ?event: :"thread.run.step.expired" ) -> void - - def to_hash: -> OpenAI::Models::Beta::RunStepStreamEvent::thread_run_step_expired end - def self?.variants: -> [OpenAI::Models::Beta::RunStepStreamEvent::ThreadRunStepCreated, OpenAI::Models::Beta::RunStepStreamEvent::ThreadRunStepInProgress, OpenAI::Models::Beta::RunStepStreamEvent::ThreadRunStepDelta, OpenAI::Models::Beta::RunStepStreamEvent::ThreadRunStepCompleted, OpenAI::Models::Beta::RunStepStreamEvent::ThreadRunStepFailed, OpenAI::Models::Beta::RunStepStreamEvent::ThreadRunStepCancelled, OpenAI::Models::Beta::RunStepStreamEvent::ThreadRunStepExpired] + def self?.variants: -> ::Array[OpenAI::Models::Beta::run_step_stream_event] end end end diff --git a/sig/openai/models/beta/run_stream_event.rbs b/sig/openai/models/beta/run_stream_event.rbs index 3e2604b4..e1c4d276 100644 --- a/sig/openai/models/beta/run_stream_event.rbs +++ b/sig/openai/models/beta/run_stream_event.rbs @@ -2,211 +2,164 @@ module OpenAI module Models module Beta type run_stream_event = - OpenAI::Models::Beta::RunStreamEvent::ThreadRunCreated - | OpenAI::Models::Beta::RunStreamEvent::ThreadRunQueued - | OpenAI::Models::Beta::RunStreamEvent::ThreadRunInProgress - | OpenAI::Models::Beta::RunStreamEvent::ThreadRunRequiresAction - | OpenAI::Models::Beta::RunStreamEvent::ThreadRunCompleted - | OpenAI::Models::Beta::RunStreamEvent::ThreadRunIncomplete - | OpenAI::Models::Beta::RunStreamEvent::ThreadRunFailed - | OpenAI::Models::Beta::RunStreamEvent::ThreadRunCancelling - | OpenAI::Models::Beta::RunStreamEvent::ThreadRunCancelled - | OpenAI::Models::Beta::RunStreamEvent::ThreadRunExpired + OpenAI::Beta::RunStreamEvent::ThreadRunCreated + | OpenAI::Beta::RunStreamEvent::ThreadRunQueued + | OpenAI::Beta::RunStreamEvent::ThreadRunInProgress + | OpenAI::Beta::RunStreamEvent::ThreadRunRequiresAction + | OpenAI::Beta::RunStreamEvent::ThreadRunCompleted + | OpenAI::Beta::RunStreamEvent::ThreadRunIncomplete + | OpenAI::Beta::RunStreamEvent::ThreadRunFailed + | OpenAI::Beta::RunStreamEvent::ThreadRunCancelling + | OpenAI::Beta::RunStreamEvent::ThreadRunCancelled + | OpenAI::Beta::RunStreamEvent::ThreadRunExpired module RunStreamEvent extend OpenAI::Internal::Type::Union type thread_run_created = - { - data: OpenAI::Models::Beta::Threads::Run, - event: :"thread.run.created" - } + { data: OpenAI::Beta::Threads::Run, event: :"thread.run.created" } class ThreadRunCreated < OpenAI::Internal::Type::BaseModel - attr_accessor data: OpenAI::Models::Beta::Threads::Run + attr_accessor data: OpenAI::Beta::Threads::Run attr_accessor event: :"thread.run.created" def initialize: ( - data: OpenAI::Models::Beta::Threads::Run, + data: OpenAI::Beta::Threads::Run, ?event: :"thread.run.created" ) -> void - - def to_hash: -> OpenAI::Models::Beta::RunStreamEvent::thread_run_created end type thread_run_queued = - { - data: OpenAI::Models::Beta::Threads::Run, - event: :"thread.run.queued" - } + { data: OpenAI::Beta::Threads::Run, event: :"thread.run.queued" } class ThreadRunQueued < OpenAI::Internal::Type::BaseModel - attr_accessor data: OpenAI::Models::Beta::Threads::Run + attr_accessor data: OpenAI::Beta::Threads::Run attr_accessor event: :"thread.run.queued" def initialize: ( - data: OpenAI::Models::Beta::Threads::Run, + data: OpenAI::Beta::Threads::Run, ?event: :"thread.run.queued" ) -> void - - def to_hash: -> OpenAI::Models::Beta::RunStreamEvent::thread_run_queued end type thread_run_in_progress = - { - data: OpenAI::Models::Beta::Threads::Run, - event: :"thread.run.in_progress" - } + { data: OpenAI::Beta::Threads::Run, event: :"thread.run.in_progress" } class ThreadRunInProgress < OpenAI::Internal::Type::BaseModel - attr_accessor data: OpenAI::Models::Beta::Threads::Run + attr_accessor data: OpenAI::Beta::Threads::Run attr_accessor event: :"thread.run.in_progress" def initialize: ( - data: OpenAI::Models::Beta::Threads::Run, + data: OpenAI::Beta::Threads::Run, ?event: :"thread.run.in_progress" ) -> void - - def to_hash: -> OpenAI::Models::Beta::RunStreamEvent::thread_run_in_progress end type thread_run_requires_action = { - data: OpenAI::Models::Beta::Threads::Run, + data: OpenAI::Beta::Threads::Run, event: :"thread.run.requires_action" } class ThreadRunRequiresAction < OpenAI::Internal::Type::BaseModel - attr_accessor data: OpenAI::Models::Beta::Threads::Run + attr_accessor data: OpenAI::Beta::Threads::Run attr_accessor event: :"thread.run.requires_action" def initialize: ( - data: OpenAI::Models::Beta::Threads::Run, + data: OpenAI::Beta::Threads::Run, ?event: :"thread.run.requires_action" ) -> void - - def to_hash: -> OpenAI::Models::Beta::RunStreamEvent::thread_run_requires_action end type thread_run_completed = - { - data: OpenAI::Models::Beta::Threads::Run, - event: :"thread.run.completed" - } + { data: OpenAI::Beta::Threads::Run, event: :"thread.run.completed" } class ThreadRunCompleted < OpenAI::Internal::Type::BaseModel - attr_accessor data: OpenAI::Models::Beta::Threads::Run + attr_accessor data: OpenAI::Beta::Threads::Run attr_accessor event: :"thread.run.completed" def initialize: ( - data: OpenAI::Models::Beta::Threads::Run, + data: OpenAI::Beta::Threads::Run, ?event: :"thread.run.completed" ) -> void - - def to_hash: -> OpenAI::Models::Beta::RunStreamEvent::thread_run_completed end type thread_run_incomplete = - { - data: OpenAI::Models::Beta::Threads::Run, - event: :"thread.run.incomplete" - } + { data: OpenAI::Beta::Threads::Run, event: :"thread.run.incomplete" } class ThreadRunIncomplete < OpenAI::Internal::Type::BaseModel - attr_accessor data: OpenAI::Models::Beta::Threads::Run + attr_accessor data: OpenAI::Beta::Threads::Run attr_accessor event: :"thread.run.incomplete" def initialize: ( - data: OpenAI::Models::Beta::Threads::Run, + data: OpenAI::Beta::Threads::Run, ?event: :"thread.run.incomplete" ) -> void - - def to_hash: -> OpenAI::Models::Beta::RunStreamEvent::thread_run_incomplete end type thread_run_failed = - { - data: OpenAI::Models::Beta::Threads::Run, - event: :"thread.run.failed" - } + { data: OpenAI::Beta::Threads::Run, event: :"thread.run.failed" } class ThreadRunFailed < OpenAI::Internal::Type::BaseModel - attr_accessor data: OpenAI::Models::Beta::Threads::Run + attr_accessor data: OpenAI::Beta::Threads::Run attr_accessor event: :"thread.run.failed" def initialize: ( - data: OpenAI::Models::Beta::Threads::Run, + data: OpenAI::Beta::Threads::Run, ?event: :"thread.run.failed" ) -> void - - def to_hash: -> OpenAI::Models::Beta::RunStreamEvent::thread_run_failed end type thread_run_cancelling = - { - data: OpenAI::Models::Beta::Threads::Run, - event: :"thread.run.cancelling" - } + { data: OpenAI::Beta::Threads::Run, event: :"thread.run.cancelling" } class ThreadRunCancelling < OpenAI::Internal::Type::BaseModel - attr_accessor data: OpenAI::Models::Beta::Threads::Run + attr_accessor data: OpenAI::Beta::Threads::Run attr_accessor event: :"thread.run.cancelling" def initialize: ( - data: OpenAI::Models::Beta::Threads::Run, + data: OpenAI::Beta::Threads::Run, ?event: :"thread.run.cancelling" ) -> void - - def to_hash: -> OpenAI::Models::Beta::RunStreamEvent::thread_run_cancelling end type thread_run_cancelled = - { - data: OpenAI::Models::Beta::Threads::Run, - event: :"thread.run.cancelled" - } + { data: OpenAI::Beta::Threads::Run, event: :"thread.run.cancelled" } class ThreadRunCancelled < OpenAI::Internal::Type::BaseModel - attr_accessor data: OpenAI::Models::Beta::Threads::Run + attr_accessor data: OpenAI::Beta::Threads::Run attr_accessor event: :"thread.run.cancelled" def initialize: ( - data: OpenAI::Models::Beta::Threads::Run, + data: OpenAI::Beta::Threads::Run, ?event: :"thread.run.cancelled" ) -> void - - def to_hash: -> OpenAI::Models::Beta::RunStreamEvent::thread_run_cancelled end type thread_run_expired = - { - data: OpenAI::Models::Beta::Threads::Run, - event: :"thread.run.expired" - } + { data: OpenAI::Beta::Threads::Run, event: :"thread.run.expired" } class ThreadRunExpired < OpenAI::Internal::Type::BaseModel - attr_accessor data: OpenAI::Models::Beta::Threads::Run + attr_accessor data: OpenAI::Beta::Threads::Run attr_accessor event: :"thread.run.expired" def initialize: ( - data: OpenAI::Models::Beta::Threads::Run, + data: OpenAI::Beta::Threads::Run, ?event: :"thread.run.expired" ) -> void - - def to_hash: -> OpenAI::Models::Beta::RunStreamEvent::thread_run_expired end - def self?.variants: -> [OpenAI::Models::Beta::RunStreamEvent::ThreadRunCreated, OpenAI::Models::Beta::RunStreamEvent::ThreadRunQueued, OpenAI::Models::Beta::RunStreamEvent::ThreadRunInProgress, OpenAI::Models::Beta::RunStreamEvent::ThreadRunRequiresAction, OpenAI::Models::Beta::RunStreamEvent::ThreadRunCompleted, OpenAI::Models::Beta::RunStreamEvent::ThreadRunIncomplete, OpenAI::Models::Beta::RunStreamEvent::ThreadRunFailed, OpenAI::Models::Beta::RunStreamEvent::ThreadRunCancelling, OpenAI::Models::Beta::RunStreamEvent::ThreadRunCancelled, OpenAI::Models::Beta::RunStreamEvent::ThreadRunExpired] + def self?.variants: -> ::Array[OpenAI::Models::Beta::run_stream_event] end end end diff --git a/sig/openai/models/beta/thread.rbs b/sig/openai/models/beta/thread.rbs index e0418d02..c934342f 100644 --- a/sig/openai/models/beta/thread.rbs +++ b/sig/openai/models/beta/thread.rbs @@ -7,7 +7,7 @@ module OpenAI created_at: Integer, metadata: OpenAI::Models::metadata?, object: :thread, - tool_resources: OpenAI::Models::Beta::Thread::ToolResources? + tool_resources: OpenAI::Beta::Thread::ToolResources? } class Thread < OpenAI::Internal::Type::BaseModel @@ -19,44 +19,40 @@ module OpenAI attr_accessor object: :thread - attr_accessor tool_resources: OpenAI::Models::Beta::Thread::ToolResources? + attr_accessor tool_resources: OpenAI::Beta::Thread::ToolResources? def initialize: ( id: String, created_at: Integer, metadata: OpenAI::Models::metadata?, - tool_resources: OpenAI::Models::Beta::Thread::ToolResources?, + tool_resources: OpenAI::Beta::Thread::ToolResources?, ?object: :thread ) -> void - def to_hash: -> OpenAI::Models::Beta::thread - type tool_resources = { - code_interpreter: OpenAI::Models::Beta::Thread::ToolResources::CodeInterpreter, - file_search: OpenAI::Models::Beta::Thread::ToolResources::FileSearch + code_interpreter: OpenAI::Beta::Thread::ToolResources::CodeInterpreter, + file_search: OpenAI::Beta::Thread::ToolResources::FileSearch } class ToolResources < OpenAI::Internal::Type::BaseModel - attr_reader code_interpreter: OpenAI::Models::Beta::Thread::ToolResources::CodeInterpreter? + attr_reader code_interpreter: OpenAI::Beta::Thread::ToolResources::CodeInterpreter? def code_interpreter=: ( - OpenAI::Models::Beta::Thread::ToolResources::CodeInterpreter - ) -> OpenAI::Models::Beta::Thread::ToolResources::CodeInterpreter + OpenAI::Beta::Thread::ToolResources::CodeInterpreter + ) -> OpenAI::Beta::Thread::ToolResources::CodeInterpreter - attr_reader file_search: OpenAI::Models::Beta::Thread::ToolResources::FileSearch? + attr_reader file_search: OpenAI::Beta::Thread::ToolResources::FileSearch? def file_search=: ( - OpenAI::Models::Beta::Thread::ToolResources::FileSearch - ) -> OpenAI::Models::Beta::Thread::ToolResources::FileSearch + OpenAI::Beta::Thread::ToolResources::FileSearch + ) -> OpenAI::Beta::Thread::ToolResources::FileSearch def initialize: ( - ?code_interpreter: OpenAI::Models::Beta::Thread::ToolResources::CodeInterpreter, - ?file_search: OpenAI::Models::Beta::Thread::ToolResources::FileSearch + ?code_interpreter: OpenAI::Beta::Thread::ToolResources::CodeInterpreter, + ?file_search: OpenAI::Beta::Thread::ToolResources::FileSearch ) -> void - def to_hash: -> OpenAI::Models::Beta::Thread::tool_resources - type code_interpreter = { file_ids: ::Array[String] } class CodeInterpreter < OpenAI::Internal::Type::BaseModel @@ -65,8 +61,6 @@ module OpenAI def file_ids=: (::Array[String]) -> ::Array[String] def initialize: (?file_ids: ::Array[String]) -> void - - def to_hash: -> OpenAI::Models::Beta::Thread::ToolResources::code_interpreter end type file_search = { vector_store_ids: ::Array[String] } @@ -77,8 +71,6 @@ module OpenAI def vector_store_ids=: (::Array[String]) -> ::Array[String] def initialize: (?vector_store_ids: ::Array[String]) -> void - - def to_hash: -> OpenAI::Models::Beta::Thread::ToolResources::file_search end end end diff --git a/sig/openai/models/beta/thread_create_and_run_params.rbs b/sig/openai/models/beta/thread_create_and_run_params.rbs index 5d78ca13..ca752e94 100644 --- a/sig/openai/models/beta/thread_create_and_run_params.rbs +++ b/sig/openai/models/beta/thread_create_and_run_params.rbs @@ -12,12 +12,12 @@ module OpenAI parallel_tool_calls: bool, response_format: OpenAI::Models::Beta::assistant_response_format_option?, temperature: Float?, - thread: OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread, + thread: OpenAI::Beta::ThreadCreateAndRunParams::Thread, tool_choice: OpenAI::Models::Beta::assistant_tool_choice_option?, - tool_resources: OpenAI::Models::Beta::ThreadCreateAndRunParams::ToolResources?, + tool_resources: OpenAI::Beta::ThreadCreateAndRunParams::ToolResources?, tools: ::Array[OpenAI::Models::Beta::assistant_tool]?, top_p: Float?, - truncation_strategy: OpenAI::Models::Beta::ThreadCreateAndRunParams::TruncationStrategy? + truncation_strategy: OpenAI::Beta::ThreadCreateAndRunParams::TruncationStrategy? } & OpenAI::Internal::Type::request_parameters @@ -45,21 +45,21 @@ module OpenAI attr_accessor temperature: Float? - attr_reader thread: OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread? + attr_reader thread: OpenAI::Beta::ThreadCreateAndRunParams::Thread? def thread=: ( - OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread - ) -> OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread + OpenAI::Beta::ThreadCreateAndRunParams::Thread + ) -> OpenAI::Beta::ThreadCreateAndRunParams::Thread attr_accessor tool_choice: OpenAI::Models::Beta::assistant_tool_choice_option? - attr_accessor tool_resources: OpenAI::Models::Beta::ThreadCreateAndRunParams::ToolResources? + attr_accessor tool_resources: OpenAI::Beta::ThreadCreateAndRunParams::ToolResources? attr_accessor tools: ::Array[OpenAI::Models::Beta::assistant_tool]? attr_accessor top_p: Float? - attr_accessor truncation_strategy: OpenAI::Models::Beta::ThreadCreateAndRunParams::TruncationStrategy? + attr_accessor truncation_strategy: OpenAI::Beta::ThreadCreateAndRunParams::TruncationStrategy? def initialize: ( assistant_id: String, @@ -71,77 +71,71 @@ module OpenAI ?parallel_tool_calls: bool, ?response_format: OpenAI::Models::Beta::assistant_response_format_option?, ?temperature: Float?, - ?thread: OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread, + ?thread: OpenAI::Beta::ThreadCreateAndRunParams::Thread, ?tool_choice: OpenAI::Models::Beta::assistant_tool_choice_option?, - ?tool_resources: OpenAI::Models::Beta::ThreadCreateAndRunParams::ToolResources?, + ?tool_resources: OpenAI::Beta::ThreadCreateAndRunParams::ToolResources?, ?tools: ::Array[OpenAI::Models::Beta::assistant_tool]?, ?top_p: Float?, - ?truncation_strategy: OpenAI::Models::Beta::ThreadCreateAndRunParams::TruncationStrategy?, + ?truncation_strategy: OpenAI::Beta::ThreadCreateAndRunParams::TruncationStrategy?, ?request_options: OpenAI::request_opts ) -> void - def to_hash: -> OpenAI::Models::Beta::thread_create_and_run_params - type model = String | OpenAI::Models::chat_model module Model extend OpenAI::Internal::Type::Union - def self?.variants: -> [String, OpenAI::Models::chat_model] + def self?.variants: -> ::Array[OpenAI::Models::Beta::ThreadCreateAndRunParams::model] end type thread = { - messages: ::Array[OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::Message], + messages: ::Array[OpenAI::Beta::ThreadCreateAndRunParams::Thread::Message], metadata: OpenAI::Models::metadata?, - tool_resources: OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::ToolResources? + tool_resources: OpenAI::Beta::ThreadCreateAndRunParams::Thread::ToolResources? } class Thread < OpenAI::Internal::Type::BaseModel - attr_reader messages: ::Array[OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::Message]? + attr_reader messages: ::Array[OpenAI::Beta::ThreadCreateAndRunParams::Thread::Message]? def messages=: ( - ::Array[OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::Message] - ) -> ::Array[OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::Message] + ::Array[OpenAI::Beta::ThreadCreateAndRunParams::Thread::Message] + ) -> ::Array[OpenAI::Beta::ThreadCreateAndRunParams::Thread::Message] attr_accessor metadata: OpenAI::Models::metadata? - attr_accessor tool_resources: OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::ToolResources? + attr_accessor tool_resources: OpenAI::Beta::ThreadCreateAndRunParams::Thread::ToolResources? def initialize: ( - ?messages: ::Array[OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::Message], + ?messages: ::Array[OpenAI::Beta::ThreadCreateAndRunParams::Thread::Message], ?metadata: OpenAI::Models::metadata?, - ?tool_resources: OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::ToolResources? + ?tool_resources: OpenAI::Beta::ThreadCreateAndRunParams::Thread::ToolResources? ) -> void - def to_hash: -> OpenAI::Models::Beta::ThreadCreateAndRunParams::thread - type message = { - content: OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::Message::content, - role: OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::Message::role, - attachments: ::Array[OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::Message::Attachment]?, + content: OpenAI::Beta::ThreadCreateAndRunParams::Thread::Message::content, + role: OpenAI::Beta::ThreadCreateAndRunParams::Thread::Message::role, + attachments: ::Array[OpenAI::Beta::ThreadCreateAndRunParams::Thread::Message::Attachment]?, metadata: OpenAI::Models::metadata? } class Message < OpenAI::Internal::Type::BaseModel - attr_accessor content: OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::Message::content + attr_accessor content: OpenAI::Beta::ThreadCreateAndRunParams::Thread::Message::content - attr_accessor role: OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::Message::role + attr_accessor role: OpenAI::Beta::ThreadCreateAndRunParams::Thread::Message::role - attr_accessor attachments: ::Array[OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::Message::Attachment]? + attr_accessor attachments: ::Array[OpenAI::Beta::ThreadCreateAndRunParams::Thread::Message::Attachment]? attr_accessor metadata: OpenAI::Models::metadata? def initialize: ( - content: OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::Message::content, - role: OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::Message::role, - ?attachments: ::Array[OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::Message::Attachment]?, + content: OpenAI::Beta::ThreadCreateAndRunParams::Thread::Message::content, + role: OpenAI::Beta::ThreadCreateAndRunParams::Thread::Message::role, + ?attachments: ::Array[OpenAI::Beta::ThreadCreateAndRunParams::Thread::Message::Attachment]?, ?metadata: OpenAI::Models::metadata? ) -> void - def to_hash: -> OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::message - type content = String | ::Array[OpenAI::Models::Beta::Threads::message_content_part_param] @@ -149,7 +143,7 @@ module OpenAI module Content extend OpenAI::Internal::Type::Union - def self?.variants: -> [String, ::Array[OpenAI::Models::Beta::Threads::message_content_part_param]] + def self?.variants: -> ::Array[OpenAI::Beta::ThreadCreateAndRunParams::Thread::Message::content] MessageContentPartParamArray: OpenAI::Internal::Type::Converter end @@ -162,13 +156,13 @@ module OpenAI USER: :user ASSISTANT: :assistant - def self?.values: -> ::Array[OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::Message::role] + def self?.values: -> ::Array[OpenAI::Beta::ThreadCreateAndRunParams::Thread::Message::role] end type attachment = { file_id: String, - tools: ::Array[OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::Message::Attachment::tool] + tools: ::Array[OpenAI::Beta::ThreadCreateAndRunParams::Thread::Message::Attachment::tool] } class Attachment < OpenAI::Internal::Type::BaseModel @@ -176,22 +170,20 @@ module OpenAI def file_id=: (String) -> String - attr_reader tools: ::Array[OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::Message::Attachment::tool]? + attr_reader tools: ::Array[OpenAI::Beta::ThreadCreateAndRunParams::Thread::Message::Attachment::tool]? def tools=: ( - ::Array[OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::Message::Attachment::tool] - ) -> ::Array[OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::Message::Attachment::tool] + ::Array[OpenAI::Beta::ThreadCreateAndRunParams::Thread::Message::Attachment::tool] + ) -> ::Array[OpenAI::Beta::ThreadCreateAndRunParams::Thread::Message::Attachment::tool] def initialize: ( ?file_id: String, - ?tools: ::Array[OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::Message::Attachment::tool] + ?tools: ::Array[OpenAI::Beta::ThreadCreateAndRunParams::Thread::Message::Attachment::tool] ) -> void - def to_hash: -> OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::Message::attachment - type tool = - OpenAI::Models::Beta::CodeInterpreterTool - | OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::Message::Attachment::Tool::FileSearch + OpenAI::Beta::CodeInterpreterTool + | OpenAI::Beta::ThreadCreateAndRunParams::Thread::Message::Attachment::Tool::FileSearch module Tool extend OpenAI::Internal::Type::Union @@ -202,41 +194,37 @@ module OpenAI attr_accessor type: :file_search def initialize: (?type: :file_search) -> void - - def to_hash: -> OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::Message::Attachment::Tool::file_search end - def self?.variants: -> [OpenAI::Models::Beta::CodeInterpreterTool, OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::Message::Attachment::Tool::FileSearch] + def self?.variants: -> ::Array[OpenAI::Beta::ThreadCreateAndRunParams::Thread::Message::Attachment::tool] end end end type tool_resources = { - code_interpreter: OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::ToolResources::CodeInterpreter, - file_search: OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch + code_interpreter: OpenAI::Beta::ThreadCreateAndRunParams::Thread::ToolResources::CodeInterpreter, + file_search: OpenAI::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch } class ToolResources < OpenAI::Internal::Type::BaseModel - attr_reader code_interpreter: OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::ToolResources::CodeInterpreter? + attr_reader code_interpreter: OpenAI::Beta::ThreadCreateAndRunParams::Thread::ToolResources::CodeInterpreter? def code_interpreter=: ( - OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::ToolResources::CodeInterpreter - ) -> OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::ToolResources::CodeInterpreter + OpenAI::Beta::ThreadCreateAndRunParams::Thread::ToolResources::CodeInterpreter + ) -> OpenAI::Beta::ThreadCreateAndRunParams::Thread::ToolResources::CodeInterpreter - attr_reader file_search: OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch? + attr_reader file_search: OpenAI::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch? def file_search=: ( - OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch - ) -> OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch + OpenAI::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch + ) -> OpenAI::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch def initialize: ( - ?code_interpreter: OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::ToolResources::CodeInterpreter, - ?file_search: OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch + ?code_interpreter: OpenAI::Beta::ThreadCreateAndRunParams::Thread::ToolResources::CodeInterpreter, + ?file_search: OpenAI::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch ) -> void - def to_hash: -> OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::tool_resources - type code_interpreter = { file_ids: ::Array[String] } class CodeInterpreter < OpenAI::Internal::Type::BaseModel @@ -245,14 +233,12 @@ module OpenAI def file_ids=: (::Array[String]) -> ::Array[String] def initialize: (?file_ids: ::Array[String]) -> void - - def to_hash: -> OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::ToolResources::code_interpreter end type file_search = { vector_store_ids: ::Array[String], - vector_stores: ::Array[OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore] + vector_stores: ::Array[OpenAI::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore] } class FileSearch < OpenAI::Internal::Type::BaseModel @@ -260,32 +246,30 @@ module OpenAI def vector_store_ids=: (::Array[String]) -> ::Array[String] - attr_reader vector_stores: ::Array[OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore]? + attr_reader vector_stores: ::Array[OpenAI::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore]? def vector_stores=: ( - ::Array[OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore] - ) -> ::Array[OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore] + ::Array[OpenAI::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore] + ) -> ::Array[OpenAI::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore] def initialize: ( ?vector_store_ids: ::Array[String], - ?vector_stores: ::Array[OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore] + ?vector_stores: ::Array[OpenAI::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore] ) -> void - def to_hash: -> OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::ToolResources::file_search - type vector_store = { - chunking_strategy: OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore::chunking_strategy, + chunking_strategy: OpenAI::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore::chunking_strategy, file_ids: ::Array[String], metadata: OpenAI::Models::metadata? } class VectorStore < OpenAI::Internal::Type::BaseModel - attr_reader chunking_strategy: OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore::chunking_strategy? + attr_reader chunking_strategy: OpenAI::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore::chunking_strategy? def chunking_strategy=: ( - OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore::chunking_strategy - ) -> OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore::chunking_strategy + OpenAI::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore::chunking_strategy + ) -> OpenAI::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore::chunking_strategy attr_reader file_ids: ::Array[String]? @@ -294,16 +278,14 @@ module OpenAI attr_accessor metadata: OpenAI::Models::metadata? def initialize: ( - ?chunking_strategy: OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore::chunking_strategy, + ?chunking_strategy: OpenAI::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore::chunking_strategy, ?file_ids: ::Array[String], ?metadata: OpenAI::Models::metadata? ) -> void - def to_hash: -> OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::vector_store - type chunking_strategy = - OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Auto - | OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static + OpenAI::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Auto + | OpenAI::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static module ChunkingStrategy extend OpenAI::Internal::Type::Union @@ -314,28 +296,24 @@ module OpenAI attr_accessor type: :auto def initialize: (?type: :auto) -> void - - def to_hash: -> OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore::ChunkingStrategy::auto end type static = { - static: OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static::Static, + static: OpenAI::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static::Static, type: :static } class Static < OpenAI::Internal::Type::BaseModel - attr_accessor static: OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static::Static + attr_accessor static: OpenAI::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static::Static attr_accessor type: :static def initialize: ( - static: OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static::Static, + static: OpenAI::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static::Static, ?type: :static ) -> void - def to_hash: -> OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore::ChunkingStrategy::static - type static = { chunk_overlap_tokens: Integer, @@ -351,12 +329,10 @@ module OpenAI chunk_overlap_tokens: Integer, max_chunk_size_tokens: Integer ) -> void - - def to_hash: -> OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static::static end end - def self?.variants: -> [OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Auto, OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static] + def self?.variants: -> ::Array[OpenAI::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore::chunking_strategy] end end end @@ -365,30 +341,28 @@ module OpenAI type tool_resources = { - code_interpreter: OpenAI::Models::Beta::ThreadCreateAndRunParams::ToolResources::CodeInterpreter, - file_search: OpenAI::Models::Beta::ThreadCreateAndRunParams::ToolResources::FileSearch + code_interpreter: OpenAI::Beta::ThreadCreateAndRunParams::ToolResources::CodeInterpreter, + file_search: OpenAI::Beta::ThreadCreateAndRunParams::ToolResources::FileSearch } class ToolResources < OpenAI::Internal::Type::BaseModel - attr_reader code_interpreter: OpenAI::Models::Beta::ThreadCreateAndRunParams::ToolResources::CodeInterpreter? + attr_reader code_interpreter: OpenAI::Beta::ThreadCreateAndRunParams::ToolResources::CodeInterpreter? def code_interpreter=: ( - OpenAI::Models::Beta::ThreadCreateAndRunParams::ToolResources::CodeInterpreter - ) -> OpenAI::Models::Beta::ThreadCreateAndRunParams::ToolResources::CodeInterpreter + OpenAI::Beta::ThreadCreateAndRunParams::ToolResources::CodeInterpreter + ) -> OpenAI::Beta::ThreadCreateAndRunParams::ToolResources::CodeInterpreter - attr_reader file_search: OpenAI::Models::Beta::ThreadCreateAndRunParams::ToolResources::FileSearch? + attr_reader file_search: OpenAI::Beta::ThreadCreateAndRunParams::ToolResources::FileSearch? def file_search=: ( - OpenAI::Models::Beta::ThreadCreateAndRunParams::ToolResources::FileSearch - ) -> OpenAI::Models::Beta::ThreadCreateAndRunParams::ToolResources::FileSearch + OpenAI::Beta::ThreadCreateAndRunParams::ToolResources::FileSearch + ) -> OpenAI::Beta::ThreadCreateAndRunParams::ToolResources::FileSearch def initialize: ( - ?code_interpreter: OpenAI::Models::Beta::ThreadCreateAndRunParams::ToolResources::CodeInterpreter, - ?file_search: OpenAI::Models::Beta::ThreadCreateAndRunParams::ToolResources::FileSearch + ?code_interpreter: OpenAI::Beta::ThreadCreateAndRunParams::ToolResources::CodeInterpreter, + ?file_search: OpenAI::Beta::ThreadCreateAndRunParams::ToolResources::FileSearch ) -> void - def to_hash: -> OpenAI::Models::Beta::ThreadCreateAndRunParams::tool_resources - type code_interpreter = { file_ids: ::Array[String] } class CodeInterpreter < OpenAI::Internal::Type::BaseModel @@ -397,8 +371,6 @@ module OpenAI def file_ids=: (::Array[String]) -> ::Array[String] def initialize: (?file_ids: ::Array[String]) -> void - - def to_hash: -> OpenAI::Models::Beta::ThreadCreateAndRunParams::ToolResources::code_interpreter end type file_search = { vector_store_ids: ::Array[String] } @@ -409,29 +381,25 @@ module OpenAI def vector_store_ids=: (::Array[String]) -> ::Array[String] def initialize: (?vector_store_ids: ::Array[String]) -> void - - def to_hash: -> OpenAI::Models::Beta::ThreadCreateAndRunParams::ToolResources::file_search end end type truncation_strategy = { - type: OpenAI::Models::Beta::ThreadCreateAndRunParams::TruncationStrategy::type_, + type: OpenAI::Beta::ThreadCreateAndRunParams::TruncationStrategy::type_, last_messages: Integer? } class TruncationStrategy < OpenAI::Internal::Type::BaseModel - attr_accessor type: OpenAI::Models::Beta::ThreadCreateAndRunParams::TruncationStrategy::type_ + attr_accessor type: OpenAI::Beta::ThreadCreateAndRunParams::TruncationStrategy::type_ attr_accessor last_messages: Integer? def initialize: ( - type: OpenAI::Models::Beta::ThreadCreateAndRunParams::TruncationStrategy::type_, + type: OpenAI::Beta::ThreadCreateAndRunParams::TruncationStrategy::type_, ?last_messages: Integer? ) -> void - def to_hash: -> OpenAI::Models::Beta::ThreadCreateAndRunParams::truncation_strategy - type type_ = :auto | :last_messages module Type @@ -440,7 +408,7 @@ module OpenAI AUTO: :auto LAST_MESSAGES: :last_messages - def self?.values: -> ::Array[OpenAI::Models::Beta::ThreadCreateAndRunParams::TruncationStrategy::type_] + def self?.values: -> ::Array[OpenAI::Beta::ThreadCreateAndRunParams::TruncationStrategy::type_] end end end diff --git a/sig/openai/models/beta/thread_create_params.rbs b/sig/openai/models/beta/thread_create_params.rbs index 08c6bdd2..d3593936 100644 --- a/sig/openai/models/beta/thread_create_params.rbs +++ b/sig/openai/models/beta/thread_create_params.rbs @@ -3,9 +3,9 @@ module OpenAI module Beta type thread_create_params = { - messages: ::Array[OpenAI::Models::Beta::ThreadCreateParams::Message], + messages: ::Array[OpenAI::Beta::ThreadCreateParams::Message], metadata: OpenAI::Models::metadata?, - tool_resources: OpenAI::Models::Beta::ThreadCreateParams::ToolResources? + tool_resources: OpenAI::Beta::ThreadCreateParams::ToolResources? } & OpenAI::Internal::Type::request_parameters @@ -13,51 +13,47 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters - attr_reader messages: ::Array[OpenAI::Models::Beta::ThreadCreateParams::Message]? + attr_reader messages: ::Array[OpenAI::Beta::ThreadCreateParams::Message]? def messages=: ( - ::Array[OpenAI::Models::Beta::ThreadCreateParams::Message] - ) -> ::Array[OpenAI::Models::Beta::ThreadCreateParams::Message] + ::Array[OpenAI::Beta::ThreadCreateParams::Message] + ) -> ::Array[OpenAI::Beta::ThreadCreateParams::Message] attr_accessor metadata: OpenAI::Models::metadata? - attr_accessor tool_resources: OpenAI::Models::Beta::ThreadCreateParams::ToolResources? + attr_accessor tool_resources: OpenAI::Beta::ThreadCreateParams::ToolResources? def initialize: ( - ?messages: ::Array[OpenAI::Models::Beta::ThreadCreateParams::Message], + ?messages: ::Array[OpenAI::Beta::ThreadCreateParams::Message], ?metadata: OpenAI::Models::metadata?, - ?tool_resources: OpenAI::Models::Beta::ThreadCreateParams::ToolResources?, + ?tool_resources: OpenAI::Beta::ThreadCreateParams::ToolResources?, ?request_options: OpenAI::request_opts ) -> void - def to_hash: -> OpenAI::Models::Beta::thread_create_params - type message = { - content: OpenAI::Models::Beta::ThreadCreateParams::Message::content, - role: OpenAI::Models::Beta::ThreadCreateParams::Message::role, - attachments: ::Array[OpenAI::Models::Beta::ThreadCreateParams::Message::Attachment]?, + content: OpenAI::Beta::ThreadCreateParams::Message::content, + role: OpenAI::Beta::ThreadCreateParams::Message::role, + attachments: ::Array[OpenAI::Beta::ThreadCreateParams::Message::Attachment]?, metadata: OpenAI::Models::metadata? } class Message < OpenAI::Internal::Type::BaseModel - attr_accessor content: OpenAI::Models::Beta::ThreadCreateParams::Message::content + attr_accessor content: OpenAI::Beta::ThreadCreateParams::Message::content - attr_accessor role: OpenAI::Models::Beta::ThreadCreateParams::Message::role + attr_accessor role: OpenAI::Beta::ThreadCreateParams::Message::role - attr_accessor attachments: ::Array[OpenAI::Models::Beta::ThreadCreateParams::Message::Attachment]? + attr_accessor attachments: ::Array[OpenAI::Beta::ThreadCreateParams::Message::Attachment]? attr_accessor metadata: OpenAI::Models::metadata? def initialize: ( - content: OpenAI::Models::Beta::ThreadCreateParams::Message::content, - role: OpenAI::Models::Beta::ThreadCreateParams::Message::role, - ?attachments: ::Array[OpenAI::Models::Beta::ThreadCreateParams::Message::Attachment]?, + content: OpenAI::Beta::ThreadCreateParams::Message::content, + role: OpenAI::Beta::ThreadCreateParams::Message::role, + ?attachments: ::Array[OpenAI::Beta::ThreadCreateParams::Message::Attachment]?, ?metadata: OpenAI::Models::metadata? ) -> void - def to_hash: -> OpenAI::Models::Beta::ThreadCreateParams::message - type content = String | ::Array[OpenAI::Models::Beta::Threads::message_content_part_param] @@ -65,7 +61,7 @@ module OpenAI module Content extend OpenAI::Internal::Type::Union - def self?.variants: -> [String, ::Array[OpenAI::Models::Beta::Threads::message_content_part_param]] + def self?.variants: -> ::Array[OpenAI::Beta::ThreadCreateParams::Message::content] MessageContentPartParamArray: OpenAI::Internal::Type::Converter end @@ -78,13 +74,13 @@ module OpenAI USER: :user ASSISTANT: :assistant - def self?.values: -> ::Array[OpenAI::Models::Beta::ThreadCreateParams::Message::role] + def self?.values: -> ::Array[OpenAI::Beta::ThreadCreateParams::Message::role] end type attachment = { file_id: String, - tools: ::Array[OpenAI::Models::Beta::ThreadCreateParams::Message::Attachment::tool] + tools: ::Array[OpenAI::Beta::ThreadCreateParams::Message::Attachment::tool] } class Attachment < OpenAI::Internal::Type::BaseModel @@ -92,22 +88,20 @@ module OpenAI def file_id=: (String) -> String - attr_reader tools: ::Array[OpenAI::Models::Beta::ThreadCreateParams::Message::Attachment::tool]? + attr_reader tools: ::Array[OpenAI::Beta::ThreadCreateParams::Message::Attachment::tool]? def tools=: ( - ::Array[OpenAI::Models::Beta::ThreadCreateParams::Message::Attachment::tool] - ) -> ::Array[OpenAI::Models::Beta::ThreadCreateParams::Message::Attachment::tool] + ::Array[OpenAI::Beta::ThreadCreateParams::Message::Attachment::tool] + ) -> ::Array[OpenAI::Beta::ThreadCreateParams::Message::Attachment::tool] def initialize: ( ?file_id: String, - ?tools: ::Array[OpenAI::Models::Beta::ThreadCreateParams::Message::Attachment::tool] + ?tools: ::Array[OpenAI::Beta::ThreadCreateParams::Message::Attachment::tool] ) -> void - def to_hash: -> OpenAI::Models::Beta::ThreadCreateParams::Message::attachment - type tool = - OpenAI::Models::Beta::CodeInterpreterTool - | OpenAI::Models::Beta::ThreadCreateParams::Message::Attachment::Tool::FileSearch + OpenAI::Beta::CodeInterpreterTool + | OpenAI::Beta::ThreadCreateParams::Message::Attachment::Tool::FileSearch module Tool extend OpenAI::Internal::Type::Union @@ -118,41 +112,37 @@ module OpenAI attr_accessor type: :file_search def initialize: (?type: :file_search) -> void - - def to_hash: -> OpenAI::Models::Beta::ThreadCreateParams::Message::Attachment::Tool::file_search end - def self?.variants: -> [OpenAI::Models::Beta::CodeInterpreterTool, OpenAI::Models::Beta::ThreadCreateParams::Message::Attachment::Tool::FileSearch] + def self?.variants: -> ::Array[OpenAI::Beta::ThreadCreateParams::Message::Attachment::tool] end end end type tool_resources = { - code_interpreter: OpenAI::Models::Beta::ThreadCreateParams::ToolResources::CodeInterpreter, - file_search: OpenAI::Models::Beta::ThreadCreateParams::ToolResources::FileSearch + code_interpreter: OpenAI::Beta::ThreadCreateParams::ToolResources::CodeInterpreter, + file_search: OpenAI::Beta::ThreadCreateParams::ToolResources::FileSearch } class ToolResources < OpenAI::Internal::Type::BaseModel - attr_reader code_interpreter: OpenAI::Models::Beta::ThreadCreateParams::ToolResources::CodeInterpreter? + attr_reader code_interpreter: OpenAI::Beta::ThreadCreateParams::ToolResources::CodeInterpreter? def code_interpreter=: ( - OpenAI::Models::Beta::ThreadCreateParams::ToolResources::CodeInterpreter - ) -> OpenAI::Models::Beta::ThreadCreateParams::ToolResources::CodeInterpreter + OpenAI::Beta::ThreadCreateParams::ToolResources::CodeInterpreter + ) -> OpenAI::Beta::ThreadCreateParams::ToolResources::CodeInterpreter - attr_reader file_search: OpenAI::Models::Beta::ThreadCreateParams::ToolResources::FileSearch? + attr_reader file_search: OpenAI::Beta::ThreadCreateParams::ToolResources::FileSearch? def file_search=: ( - OpenAI::Models::Beta::ThreadCreateParams::ToolResources::FileSearch - ) -> OpenAI::Models::Beta::ThreadCreateParams::ToolResources::FileSearch + OpenAI::Beta::ThreadCreateParams::ToolResources::FileSearch + ) -> OpenAI::Beta::ThreadCreateParams::ToolResources::FileSearch def initialize: ( - ?code_interpreter: OpenAI::Models::Beta::ThreadCreateParams::ToolResources::CodeInterpreter, - ?file_search: OpenAI::Models::Beta::ThreadCreateParams::ToolResources::FileSearch + ?code_interpreter: OpenAI::Beta::ThreadCreateParams::ToolResources::CodeInterpreter, + ?file_search: OpenAI::Beta::ThreadCreateParams::ToolResources::FileSearch ) -> void - def to_hash: -> OpenAI::Models::Beta::ThreadCreateParams::tool_resources - type code_interpreter = { file_ids: ::Array[String] } class CodeInterpreter < OpenAI::Internal::Type::BaseModel @@ -161,14 +151,12 @@ module OpenAI def file_ids=: (::Array[String]) -> ::Array[String] def initialize: (?file_ids: ::Array[String]) -> void - - def to_hash: -> OpenAI::Models::Beta::ThreadCreateParams::ToolResources::code_interpreter end type file_search = { vector_store_ids: ::Array[String], - vector_stores: ::Array[OpenAI::Models::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore] + vector_stores: ::Array[OpenAI::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore] } class FileSearch < OpenAI::Internal::Type::BaseModel @@ -176,32 +164,30 @@ module OpenAI def vector_store_ids=: (::Array[String]) -> ::Array[String] - attr_reader vector_stores: ::Array[OpenAI::Models::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore]? + attr_reader vector_stores: ::Array[OpenAI::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore]? def vector_stores=: ( - ::Array[OpenAI::Models::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore] - ) -> ::Array[OpenAI::Models::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore] + ::Array[OpenAI::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore] + ) -> ::Array[OpenAI::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore] def initialize: ( ?vector_store_ids: ::Array[String], - ?vector_stores: ::Array[OpenAI::Models::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore] + ?vector_stores: ::Array[OpenAI::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore] ) -> void - def to_hash: -> OpenAI::Models::Beta::ThreadCreateParams::ToolResources::file_search - type vector_store = { - chunking_strategy: OpenAI::Models::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore::chunking_strategy, + chunking_strategy: OpenAI::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore::chunking_strategy, file_ids: ::Array[String], metadata: OpenAI::Models::metadata? } class VectorStore < OpenAI::Internal::Type::BaseModel - attr_reader chunking_strategy: OpenAI::Models::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore::chunking_strategy? + attr_reader chunking_strategy: OpenAI::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore::chunking_strategy? def chunking_strategy=: ( - OpenAI::Models::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore::chunking_strategy - ) -> OpenAI::Models::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore::chunking_strategy + OpenAI::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore::chunking_strategy + ) -> OpenAI::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore::chunking_strategy attr_reader file_ids: ::Array[String]? @@ -210,16 +196,14 @@ module OpenAI attr_accessor metadata: OpenAI::Models::metadata? def initialize: ( - ?chunking_strategy: OpenAI::Models::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore::chunking_strategy, + ?chunking_strategy: OpenAI::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore::chunking_strategy, ?file_ids: ::Array[String], ?metadata: OpenAI::Models::metadata? ) -> void - def to_hash: -> OpenAI::Models::Beta::ThreadCreateParams::ToolResources::FileSearch::vector_store - type chunking_strategy = - OpenAI::Models::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Auto - | OpenAI::Models::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static + OpenAI::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Auto + | OpenAI::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static module ChunkingStrategy extend OpenAI::Internal::Type::Union @@ -230,28 +214,24 @@ module OpenAI attr_accessor type: :auto def initialize: (?type: :auto) -> void - - def to_hash: -> OpenAI::Models::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::auto end type static = { - static: OpenAI::Models::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static::Static, + static: OpenAI::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static::Static, type: :static } class Static < OpenAI::Internal::Type::BaseModel - attr_accessor static: OpenAI::Models::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static::Static + attr_accessor static: OpenAI::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static::Static attr_accessor type: :static def initialize: ( - static: OpenAI::Models::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static::Static, + static: OpenAI::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static::Static, ?type: :static ) -> void - def to_hash: -> OpenAI::Models::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::static - type static = { chunk_overlap_tokens: Integer, @@ -267,12 +247,10 @@ module OpenAI chunk_overlap_tokens: Integer, max_chunk_size_tokens: Integer ) -> void - - def to_hash: -> OpenAI::Models::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static::static end end - def self?.variants: -> [OpenAI::Models::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Auto, OpenAI::Models::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static] + def self?.variants: -> ::Array[OpenAI::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore::chunking_strategy] end end end diff --git a/sig/openai/models/beta/thread_delete_params.rbs b/sig/openai/models/beta/thread_delete_params.rbs index 485a121a..fa242461 100644 --- a/sig/openai/models/beta/thread_delete_params.rbs +++ b/sig/openai/models/beta/thread_delete_params.rbs @@ -9,8 +9,6 @@ module OpenAI include OpenAI::Internal::Type::RequestParameters def initialize: (?request_options: OpenAI::request_opts) -> void - - def to_hash: -> OpenAI::Models::Beta::thread_delete_params end end end diff --git a/sig/openai/models/beta/thread_deleted.rbs b/sig/openai/models/beta/thread_deleted.rbs index 1734e860..9ca391a5 100644 --- a/sig/openai/models/beta/thread_deleted.rbs +++ b/sig/openai/models/beta/thread_deleted.rbs @@ -16,8 +16,6 @@ module OpenAI deleted: bool, ?object: :"thread.deleted" ) -> void - - def to_hash: -> OpenAI::Models::Beta::thread_deleted end end end diff --git a/sig/openai/models/beta/thread_retrieve_params.rbs b/sig/openai/models/beta/thread_retrieve_params.rbs index 90d1a84a..90b81360 100644 --- a/sig/openai/models/beta/thread_retrieve_params.rbs +++ b/sig/openai/models/beta/thread_retrieve_params.rbs @@ -9,8 +9,6 @@ module OpenAI include OpenAI::Internal::Type::RequestParameters def initialize: (?request_options: OpenAI::request_opts) -> void - - def to_hash: -> OpenAI::Models::Beta::thread_retrieve_params end end end diff --git a/sig/openai/models/beta/thread_stream_event.rbs b/sig/openai/models/beta/thread_stream_event.rbs index 74c61286..01af4a19 100644 --- a/sig/openai/models/beta/thread_stream_event.rbs +++ b/sig/openai/models/beta/thread_stream_event.rbs @@ -2,14 +2,10 @@ module OpenAI module Models module Beta type thread_stream_event = - { - data: OpenAI::Models::Beta::Thread, - event: :"thread.created", - enabled: bool - } + { data: OpenAI::Beta::Thread, event: :"thread.created", enabled: bool } class ThreadStreamEvent < OpenAI::Internal::Type::BaseModel - attr_accessor data: OpenAI::Models::Beta::Thread + attr_accessor data: OpenAI::Beta::Thread attr_accessor event: :"thread.created" @@ -18,12 +14,10 @@ module OpenAI def enabled=: (bool) -> bool def initialize: ( - data: OpenAI::Models::Beta::Thread, + data: OpenAI::Beta::Thread, ?enabled: bool, ?event: :"thread.created" ) -> void - - def to_hash: -> OpenAI::Models::Beta::thread_stream_event end end end diff --git a/sig/openai/models/beta/thread_update_params.rbs b/sig/openai/models/beta/thread_update_params.rbs index 81883e74..98253f4e 100644 --- a/sig/openai/models/beta/thread_update_params.rbs +++ b/sig/openai/models/beta/thread_update_params.rbs @@ -4,7 +4,7 @@ module OpenAI type thread_update_params = { metadata: OpenAI::Models::metadata?, - tool_resources: OpenAI::Models::Beta::ThreadUpdateParams::ToolResources? + tool_resources: OpenAI::Beta::ThreadUpdateParams::ToolResources? } & OpenAI::Internal::Type::request_parameters @@ -14,42 +14,38 @@ module OpenAI attr_accessor metadata: OpenAI::Models::metadata? - attr_accessor tool_resources: OpenAI::Models::Beta::ThreadUpdateParams::ToolResources? + attr_accessor tool_resources: OpenAI::Beta::ThreadUpdateParams::ToolResources? def initialize: ( ?metadata: OpenAI::Models::metadata?, - ?tool_resources: OpenAI::Models::Beta::ThreadUpdateParams::ToolResources?, + ?tool_resources: OpenAI::Beta::ThreadUpdateParams::ToolResources?, ?request_options: OpenAI::request_opts ) -> void - def to_hash: -> OpenAI::Models::Beta::thread_update_params - type tool_resources = { - code_interpreter: OpenAI::Models::Beta::ThreadUpdateParams::ToolResources::CodeInterpreter, - file_search: OpenAI::Models::Beta::ThreadUpdateParams::ToolResources::FileSearch + code_interpreter: OpenAI::Beta::ThreadUpdateParams::ToolResources::CodeInterpreter, + file_search: OpenAI::Beta::ThreadUpdateParams::ToolResources::FileSearch } class ToolResources < OpenAI::Internal::Type::BaseModel - attr_reader code_interpreter: OpenAI::Models::Beta::ThreadUpdateParams::ToolResources::CodeInterpreter? + attr_reader code_interpreter: OpenAI::Beta::ThreadUpdateParams::ToolResources::CodeInterpreter? def code_interpreter=: ( - OpenAI::Models::Beta::ThreadUpdateParams::ToolResources::CodeInterpreter - ) -> OpenAI::Models::Beta::ThreadUpdateParams::ToolResources::CodeInterpreter + OpenAI::Beta::ThreadUpdateParams::ToolResources::CodeInterpreter + ) -> OpenAI::Beta::ThreadUpdateParams::ToolResources::CodeInterpreter - attr_reader file_search: OpenAI::Models::Beta::ThreadUpdateParams::ToolResources::FileSearch? + attr_reader file_search: OpenAI::Beta::ThreadUpdateParams::ToolResources::FileSearch? def file_search=: ( - OpenAI::Models::Beta::ThreadUpdateParams::ToolResources::FileSearch - ) -> OpenAI::Models::Beta::ThreadUpdateParams::ToolResources::FileSearch + OpenAI::Beta::ThreadUpdateParams::ToolResources::FileSearch + ) -> OpenAI::Beta::ThreadUpdateParams::ToolResources::FileSearch def initialize: ( - ?code_interpreter: OpenAI::Models::Beta::ThreadUpdateParams::ToolResources::CodeInterpreter, - ?file_search: OpenAI::Models::Beta::ThreadUpdateParams::ToolResources::FileSearch + ?code_interpreter: OpenAI::Beta::ThreadUpdateParams::ToolResources::CodeInterpreter, + ?file_search: OpenAI::Beta::ThreadUpdateParams::ToolResources::FileSearch ) -> void - def to_hash: -> OpenAI::Models::Beta::ThreadUpdateParams::tool_resources - type code_interpreter = { file_ids: ::Array[String] } class CodeInterpreter < OpenAI::Internal::Type::BaseModel @@ -58,8 +54,6 @@ module OpenAI def file_ids=: (::Array[String]) -> ::Array[String] def initialize: (?file_ids: ::Array[String]) -> void - - def to_hash: -> OpenAI::Models::Beta::ThreadUpdateParams::ToolResources::code_interpreter end type file_search = { vector_store_ids: ::Array[String] } @@ -70,8 +64,6 @@ module OpenAI def vector_store_ids=: (::Array[String]) -> ::Array[String] def initialize: (?vector_store_ids: ::Array[String]) -> void - - def to_hash: -> OpenAI::Models::Beta::ThreadUpdateParams::ToolResources::file_search end end end diff --git a/sig/openai/models/beta/threads/annotation.rbs b/sig/openai/models/beta/threads/annotation.rbs index 72c5b0ec..872a6668 100644 --- a/sig/openai/models/beta/threads/annotation.rbs +++ b/sig/openai/models/beta/threads/annotation.rbs @@ -3,13 +3,13 @@ module OpenAI module Beta module Threads type annotation = - OpenAI::Models::Beta::Threads::FileCitationAnnotation - | OpenAI::Models::Beta::Threads::FilePathAnnotation + OpenAI::Beta::Threads::FileCitationAnnotation + | OpenAI::Beta::Threads::FilePathAnnotation module Annotation extend OpenAI::Internal::Type::Union - def self?.variants: -> [OpenAI::Models::Beta::Threads::FileCitationAnnotation, OpenAI::Models::Beta::Threads::FilePathAnnotation] + def self?.variants: -> ::Array[OpenAI::Models::Beta::Threads::annotation] end end end diff --git a/sig/openai/models/beta/threads/annotation_delta.rbs b/sig/openai/models/beta/threads/annotation_delta.rbs index 0840b591..4ea5f3a3 100644 --- a/sig/openai/models/beta/threads/annotation_delta.rbs +++ b/sig/openai/models/beta/threads/annotation_delta.rbs @@ -3,13 +3,13 @@ module OpenAI module Beta module Threads type annotation_delta = - OpenAI::Models::Beta::Threads::FileCitationDeltaAnnotation - | OpenAI::Models::Beta::Threads::FilePathDeltaAnnotation + OpenAI::Beta::Threads::FileCitationDeltaAnnotation + | OpenAI::Beta::Threads::FilePathDeltaAnnotation module AnnotationDelta extend OpenAI::Internal::Type::Union - def self?.variants: -> [OpenAI::Models::Beta::Threads::FileCitationDeltaAnnotation, OpenAI::Models::Beta::Threads::FilePathDeltaAnnotation] + def self?.variants: -> ::Array[OpenAI::Models::Beta::Threads::annotation_delta] end end end diff --git a/sig/openai/models/beta/threads/file_citation_annotation.rbs b/sig/openai/models/beta/threads/file_citation_annotation.rbs index b22f592c..424350aa 100644 --- a/sig/openai/models/beta/threads/file_citation_annotation.rbs +++ b/sig/openai/models/beta/threads/file_citation_annotation.rbs @@ -5,7 +5,7 @@ module OpenAI type file_citation_annotation = { end_index: Integer, - file_citation: OpenAI::Models::Beta::Threads::FileCitationAnnotation::FileCitation, + file_citation: OpenAI::Beta::Threads::FileCitationAnnotation::FileCitation, start_index: Integer, text: String, type: :file_citation @@ -14,7 +14,7 @@ module OpenAI class FileCitationAnnotation < OpenAI::Internal::Type::BaseModel attr_accessor end_index: Integer - attr_accessor file_citation: OpenAI::Models::Beta::Threads::FileCitationAnnotation::FileCitation + attr_accessor file_citation: OpenAI::Beta::Threads::FileCitationAnnotation::FileCitation attr_accessor start_index: Integer @@ -24,22 +24,18 @@ module OpenAI def initialize: ( end_index: Integer, - file_citation: OpenAI::Models::Beta::Threads::FileCitationAnnotation::FileCitation, + file_citation: OpenAI::Beta::Threads::FileCitationAnnotation::FileCitation, start_index: Integer, text: String, ?type: :file_citation ) -> void - def to_hash: -> OpenAI::Models::Beta::Threads::file_citation_annotation - type file_citation = { file_id: String } class FileCitation < OpenAI::Internal::Type::BaseModel attr_accessor file_id: String def initialize: (file_id: String) -> void - - def to_hash: -> OpenAI::Models::Beta::Threads::FileCitationAnnotation::file_citation end end end diff --git a/sig/openai/models/beta/threads/file_citation_delta_annotation.rbs b/sig/openai/models/beta/threads/file_citation_delta_annotation.rbs index eff94443..ba8e1399 100644 --- a/sig/openai/models/beta/threads/file_citation_delta_annotation.rbs +++ b/sig/openai/models/beta/threads/file_citation_delta_annotation.rbs @@ -7,7 +7,7 @@ module OpenAI index: Integer, type: :file_citation, end_index: Integer, - file_citation: OpenAI::Models::Beta::Threads::FileCitationDeltaAnnotation::FileCitation, + file_citation: OpenAI::Beta::Threads::FileCitationDeltaAnnotation::FileCitation, start_index: Integer, text: String } @@ -21,11 +21,11 @@ module OpenAI def end_index=: (Integer) -> Integer - attr_reader file_citation: OpenAI::Models::Beta::Threads::FileCitationDeltaAnnotation::FileCitation? + attr_reader file_citation: OpenAI::Beta::Threads::FileCitationDeltaAnnotation::FileCitation? def file_citation=: ( - OpenAI::Models::Beta::Threads::FileCitationDeltaAnnotation::FileCitation - ) -> OpenAI::Models::Beta::Threads::FileCitationDeltaAnnotation::FileCitation + OpenAI::Beta::Threads::FileCitationDeltaAnnotation::FileCitation + ) -> OpenAI::Beta::Threads::FileCitationDeltaAnnotation::FileCitation attr_reader start_index: Integer? @@ -38,14 +38,12 @@ module OpenAI def initialize: ( index: Integer, ?end_index: Integer, - ?file_citation: OpenAI::Models::Beta::Threads::FileCitationDeltaAnnotation::FileCitation, + ?file_citation: OpenAI::Beta::Threads::FileCitationDeltaAnnotation::FileCitation, ?start_index: Integer, ?text: String, ?type: :file_citation ) -> void - def to_hash: -> OpenAI::Models::Beta::Threads::file_citation_delta_annotation - type file_citation = { file_id: String, quote: String } class FileCitation < OpenAI::Internal::Type::BaseModel @@ -58,8 +56,6 @@ module OpenAI def quote=: (String) -> String def initialize: (?file_id: String, ?quote: String) -> void - - def to_hash: -> OpenAI::Models::Beta::Threads::FileCitationDeltaAnnotation::file_citation end end end diff --git a/sig/openai/models/beta/threads/file_path_annotation.rbs b/sig/openai/models/beta/threads/file_path_annotation.rbs index 4234a0fd..95a8cd5d 100644 --- a/sig/openai/models/beta/threads/file_path_annotation.rbs +++ b/sig/openai/models/beta/threads/file_path_annotation.rbs @@ -5,7 +5,7 @@ module OpenAI type file_path_annotation = { end_index: Integer, - file_path: OpenAI::Models::Beta::Threads::FilePathAnnotation::FilePath, + file_path: OpenAI::Beta::Threads::FilePathAnnotation::FilePath, start_index: Integer, text: String, type: :file_path @@ -14,7 +14,7 @@ module OpenAI class FilePathAnnotation < OpenAI::Internal::Type::BaseModel attr_accessor end_index: Integer - attr_accessor file_path: OpenAI::Models::Beta::Threads::FilePathAnnotation::FilePath + attr_accessor file_path: OpenAI::Beta::Threads::FilePathAnnotation::FilePath attr_accessor start_index: Integer @@ -24,22 +24,18 @@ module OpenAI def initialize: ( end_index: Integer, - file_path: OpenAI::Models::Beta::Threads::FilePathAnnotation::FilePath, + file_path: OpenAI::Beta::Threads::FilePathAnnotation::FilePath, start_index: Integer, text: String, ?type: :file_path ) -> void - def to_hash: -> OpenAI::Models::Beta::Threads::file_path_annotation - type file_path = { file_id: String } class FilePath < OpenAI::Internal::Type::BaseModel attr_accessor file_id: String def initialize: (file_id: String) -> void - - def to_hash: -> OpenAI::Models::Beta::Threads::FilePathAnnotation::file_path end end end diff --git a/sig/openai/models/beta/threads/file_path_delta_annotation.rbs b/sig/openai/models/beta/threads/file_path_delta_annotation.rbs index 671f758d..c75d696a 100644 --- a/sig/openai/models/beta/threads/file_path_delta_annotation.rbs +++ b/sig/openai/models/beta/threads/file_path_delta_annotation.rbs @@ -7,7 +7,7 @@ module OpenAI index: Integer, type: :file_path, end_index: Integer, - file_path: OpenAI::Models::Beta::Threads::FilePathDeltaAnnotation::FilePath, + file_path: OpenAI::Beta::Threads::FilePathDeltaAnnotation::FilePath, start_index: Integer, text: String } @@ -21,11 +21,11 @@ module OpenAI def end_index=: (Integer) -> Integer - attr_reader file_path: OpenAI::Models::Beta::Threads::FilePathDeltaAnnotation::FilePath? + attr_reader file_path: OpenAI::Beta::Threads::FilePathDeltaAnnotation::FilePath? def file_path=: ( - OpenAI::Models::Beta::Threads::FilePathDeltaAnnotation::FilePath - ) -> OpenAI::Models::Beta::Threads::FilePathDeltaAnnotation::FilePath + OpenAI::Beta::Threads::FilePathDeltaAnnotation::FilePath + ) -> OpenAI::Beta::Threads::FilePathDeltaAnnotation::FilePath attr_reader start_index: Integer? @@ -38,14 +38,12 @@ module OpenAI def initialize: ( index: Integer, ?end_index: Integer, - ?file_path: OpenAI::Models::Beta::Threads::FilePathDeltaAnnotation::FilePath, + ?file_path: OpenAI::Beta::Threads::FilePathDeltaAnnotation::FilePath, ?start_index: Integer, ?text: String, ?type: :file_path ) -> void - def to_hash: -> OpenAI::Models::Beta::Threads::file_path_delta_annotation - type file_path = { file_id: String } class FilePath < OpenAI::Internal::Type::BaseModel @@ -54,8 +52,6 @@ module OpenAI def file_id=: (String) -> String def initialize: (?file_id: String) -> void - - def to_hash: -> OpenAI::Models::Beta::Threads::FilePathDeltaAnnotation::file_path end end end diff --git a/sig/openai/models/beta/threads/image_file.rbs b/sig/openai/models/beta/threads/image_file.rbs index 8c594ae4..38e77c68 100644 --- a/sig/openai/models/beta/threads/image_file.rbs +++ b/sig/openai/models/beta/threads/image_file.rbs @@ -3,27 +3,22 @@ module OpenAI module Beta module Threads type image_file = - { - file_id: String, - detail: OpenAI::Models::Beta::Threads::ImageFile::detail - } + { file_id: String, detail: OpenAI::Beta::Threads::ImageFile::detail } class ImageFile < OpenAI::Internal::Type::BaseModel attr_accessor file_id: String - attr_reader detail: OpenAI::Models::Beta::Threads::ImageFile::detail? + attr_reader detail: OpenAI::Beta::Threads::ImageFile::detail? def detail=: ( - OpenAI::Models::Beta::Threads::ImageFile::detail - ) -> OpenAI::Models::Beta::Threads::ImageFile::detail + OpenAI::Beta::Threads::ImageFile::detail + ) -> OpenAI::Beta::Threads::ImageFile::detail def initialize: ( file_id: String, - ?detail: OpenAI::Models::Beta::Threads::ImageFile::detail + ?detail: OpenAI::Beta::Threads::ImageFile::detail ) -> void - def to_hash: -> OpenAI::Models::Beta::Threads::image_file - type detail = :auto | :low | :high module Detail @@ -33,7 +28,7 @@ module OpenAI LOW: :low HIGH: :high - def self?.values: -> ::Array[OpenAI::Models::Beta::Threads::ImageFile::detail] + def self?.values: -> ::Array[OpenAI::Beta::Threads::ImageFile::detail] end end end diff --git a/sig/openai/models/beta/threads/image_file_content_block.rbs b/sig/openai/models/beta/threads/image_file_content_block.rbs index 85cbd424..103b48ac 100644 --- a/sig/openai/models/beta/threads/image_file_content_block.rbs +++ b/sig/openai/models/beta/threads/image_file_content_block.rbs @@ -3,22 +3,17 @@ module OpenAI module Beta module Threads type image_file_content_block = - { - image_file: OpenAI::Models::Beta::Threads::ImageFile, - type: :image_file - } + { image_file: OpenAI::Beta::Threads::ImageFile, type: :image_file } class ImageFileContentBlock < OpenAI::Internal::Type::BaseModel - attr_accessor image_file: OpenAI::Models::Beta::Threads::ImageFile + attr_accessor image_file: OpenAI::Beta::Threads::ImageFile attr_accessor type: :image_file def initialize: ( - image_file: OpenAI::Models::Beta::Threads::ImageFile, + image_file: OpenAI::Beta::Threads::ImageFile, ?type: :image_file ) -> void - - def to_hash: -> OpenAI::Models::Beta::Threads::image_file_content_block end end end diff --git a/sig/openai/models/beta/threads/image_file_delta.rbs b/sig/openai/models/beta/threads/image_file_delta.rbs index 1360958e..5ed4a435 100644 --- a/sig/openai/models/beta/threads/image_file_delta.rbs +++ b/sig/openai/models/beta/threads/image_file_delta.rbs @@ -4,28 +4,26 @@ module OpenAI module Threads type image_file_delta = { - detail: OpenAI::Models::Beta::Threads::ImageFileDelta::detail, + detail: OpenAI::Beta::Threads::ImageFileDelta::detail, file_id: String } class ImageFileDelta < OpenAI::Internal::Type::BaseModel - attr_reader detail: OpenAI::Models::Beta::Threads::ImageFileDelta::detail? + attr_reader detail: OpenAI::Beta::Threads::ImageFileDelta::detail? def detail=: ( - OpenAI::Models::Beta::Threads::ImageFileDelta::detail - ) -> OpenAI::Models::Beta::Threads::ImageFileDelta::detail + OpenAI::Beta::Threads::ImageFileDelta::detail + ) -> OpenAI::Beta::Threads::ImageFileDelta::detail attr_reader file_id: String? def file_id=: (String) -> String def initialize: ( - ?detail: OpenAI::Models::Beta::Threads::ImageFileDelta::detail, + ?detail: OpenAI::Beta::Threads::ImageFileDelta::detail, ?file_id: String ) -> void - def to_hash: -> OpenAI::Models::Beta::Threads::image_file_delta - type detail = :auto | :low | :high module Detail @@ -35,7 +33,7 @@ module OpenAI LOW: :low HIGH: :high - def self?.values: -> ::Array[OpenAI::Models::Beta::Threads::ImageFileDelta::detail] + def self?.values: -> ::Array[OpenAI::Beta::Threads::ImageFileDelta::detail] end end end diff --git a/sig/openai/models/beta/threads/image_file_delta_block.rbs b/sig/openai/models/beta/threads/image_file_delta_block.rbs index cdb0e087..7aca7085 100644 --- a/sig/openai/models/beta/threads/image_file_delta_block.rbs +++ b/sig/openai/models/beta/threads/image_file_delta_block.rbs @@ -6,7 +6,7 @@ module OpenAI { index: Integer, type: :image_file, - image_file: OpenAI::Models::Beta::Threads::ImageFileDelta + image_file: OpenAI::Beta::Threads::ImageFileDelta } class ImageFileDeltaBlock < OpenAI::Internal::Type::BaseModel @@ -14,19 +14,17 @@ module OpenAI attr_accessor type: :image_file - attr_reader image_file: OpenAI::Models::Beta::Threads::ImageFileDelta? + attr_reader image_file: OpenAI::Beta::Threads::ImageFileDelta? def image_file=: ( - OpenAI::Models::Beta::Threads::ImageFileDelta - ) -> OpenAI::Models::Beta::Threads::ImageFileDelta + OpenAI::Beta::Threads::ImageFileDelta + ) -> OpenAI::Beta::Threads::ImageFileDelta def initialize: ( index: Integer, - ?image_file: OpenAI::Models::Beta::Threads::ImageFileDelta, + ?image_file: OpenAI::Beta::Threads::ImageFileDelta, ?type: :image_file ) -> void - - def to_hash: -> OpenAI::Models::Beta::Threads::image_file_delta_block end end end diff --git a/sig/openai/models/beta/threads/image_url.rbs b/sig/openai/models/beta/threads/image_url.rbs index 90adafe5..8808afc1 100644 --- a/sig/openai/models/beta/threads/image_url.rbs +++ b/sig/openai/models/beta/threads/image_url.rbs @@ -3,27 +3,22 @@ module OpenAI module Beta module Threads type image_url = - { - url: String, - detail: OpenAI::Models::Beta::Threads::ImageURL::detail - } + { url: String, detail: OpenAI::Beta::Threads::ImageURL::detail } class ImageURL < OpenAI::Internal::Type::BaseModel attr_accessor url: String - attr_reader detail: OpenAI::Models::Beta::Threads::ImageURL::detail? + attr_reader detail: OpenAI::Beta::Threads::ImageURL::detail? def detail=: ( - OpenAI::Models::Beta::Threads::ImageURL::detail - ) -> OpenAI::Models::Beta::Threads::ImageURL::detail + OpenAI::Beta::Threads::ImageURL::detail + ) -> OpenAI::Beta::Threads::ImageURL::detail def initialize: ( url: String, - ?detail: OpenAI::Models::Beta::Threads::ImageURL::detail + ?detail: OpenAI::Beta::Threads::ImageURL::detail ) -> void - def to_hash: -> OpenAI::Models::Beta::Threads::image_url - type detail = :auto | :low | :high module Detail @@ -33,7 +28,7 @@ module OpenAI LOW: :low HIGH: :high - def self?.values: -> ::Array[OpenAI::Models::Beta::Threads::ImageURL::detail] + def self?.values: -> ::Array[OpenAI::Beta::Threads::ImageURL::detail] end end end diff --git a/sig/openai/models/beta/threads/image_url_content_block.rbs b/sig/openai/models/beta/threads/image_url_content_block.rbs index a8e5425f..445e5239 100644 --- a/sig/openai/models/beta/threads/image_url_content_block.rbs +++ b/sig/openai/models/beta/threads/image_url_content_block.rbs @@ -3,22 +3,17 @@ module OpenAI module Beta module Threads type image_url_content_block = - { - image_url: OpenAI::Models::Beta::Threads::ImageURL, - type: :image_url - } + { image_url: OpenAI::Beta::Threads::ImageURL, type: :image_url } class ImageURLContentBlock < OpenAI::Internal::Type::BaseModel - attr_accessor image_url: OpenAI::Models::Beta::Threads::ImageURL + attr_accessor image_url: OpenAI::Beta::Threads::ImageURL attr_accessor type: :image_url def initialize: ( - image_url: OpenAI::Models::Beta::Threads::ImageURL, + image_url: OpenAI::Beta::Threads::ImageURL, ?type: :image_url ) -> void - - def to_hash: -> OpenAI::Models::Beta::Threads::image_url_content_block end end end diff --git a/sig/openai/models/beta/threads/image_url_delta.rbs b/sig/openai/models/beta/threads/image_url_delta.rbs index b85ba1e9..54d6425a 100644 --- a/sig/openai/models/beta/threads/image_url_delta.rbs +++ b/sig/openai/models/beta/threads/image_url_delta.rbs @@ -3,29 +3,24 @@ module OpenAI module Beta module Threads type image_url_delta = - { - detail: OpenAI::Models::Beta::Threads::ImageURLDelta::detail, - url: String - } + { detail: OpenAI::Beta::Threads::ImageURLDelta::detail, url: String } class ImageURLDelta < OpenAI::Internal::Type::BaseModel - attr_reader detail: OpenAI::Models::Beta::Threads::ImageURLDelta::detail? + attr_reader detail: OpenAI::Beta::Threads::ImageURLDelta::detail? def detail=: ( - OpenAI::Models::Beta::Threads::ImageURLDelta::detail - ) -> OpenAI::Models::Beta::Threads::ImageURLDelta::detail + OpenAI::Beta::Threads::ImageURLDelta::detail + ) -> OpenAI::Beta::Threads::ImageURLDelta::detail attr_reader url: String? def url=: (String) -> String def initialize: ( - ?detail: OpenAI::Models::Beta::Threads::ImageURLDelta::detail, + ?detail: OpenAI::Beta::Threads::ImageURLDelta::detail, ?url: String ) -> void - def to_hash: -> OpenAI::Models::Beta::Threads::image_url_delta - type detail = :auto | :low | :high module Detail @@ -35,7 +30,7 @@ module OpenAI LOW: :low HIGH: :high - def self?.values: -> ::Array[OpenAI::Models::Beta::Threads::ImageURLDelta::detail] + def self?.values: -> ::Array[OpenAI::Beta::Threads::ImageURLDelta::detail] end end end diff --git a/sig/openai/models/beta/threads/image_url_delta_block.rbs b/sig/openai/models/beta/threads/image_url_delta_block.rbs index 4269c159..d3375983 100644 --- a/sig/openai/models/beta/threads/image_url_delta_block.rbs +++ b/sig/openai/models/beta/threads/image_url_delta_block.rbs @@ -6,7 +6,7 @@ module OpenAI { index: Integer, type: :image_url, - image_url: OpenAI::Models::Beta::Threads::ImageURLDelta + image_url: OpenAI::Beta::Threads::ImageURLDelta } class ImageURLDeltaBlock < OpenAI::Internal::Type::BaseModel @@ -14,19 +14,17 @@ module OpenAI attr_accessor type: :image_url - attr_reader image_url: OpenAI::Models::Beta::Threads::ImageURLDelta? + attr_reader image_url: OpenAI::Beta::Threads::ImageURLDelta? def image_url=: ( - OpenAI::Models::Beta::Threads::ImageURLDelta - ) -> OpenAI::Models::Beta::Threads::ImageURLDelta + OpenAI::Beta::Threads::ImageURLDelta + ) -> OpenAI::Beta::Threads::ImageURLDelta def initialize: ( index: Integer, - ?image_url: OpenAI::Models::Beta::Threads::ImageURLDelta, + ?image_url: OpenAI::Beta::Threads::ImageURLDelta, ?type: :image_url ) -> void - - def to_hash: -> OpenAI::Models::Beta::Threads::image_url_delta_block end end end diff --git a/sig/openai/models/beta/threads/message.rbs b/sig/openai/models/beta/threads/message.rbs index 02263056..10c9bca6 100644 --- a/sig/openai/models/beta/threads/message.rbs +++ b/sig/openai/models/beta/threads/message.rbs @@ -6,17 +6,17 @@ module OpenAI { id: String, assistant_id: String?, - attachments: ::Array[OpenAI::Models::Beta::Threads::Message::Attachment]?, + attachments: ::Array[OpenAI::Beta::Threads::Message::Attachment]?, completed_at: Integer?, content: ::Array[OpenAI::Models::Beta::Threads::message_content], created_at: Integer, incomplete_at: Integer?, - incomplete_details: OpenAI::Models::Beta::Threads::Message::IncompleteDetails?, + incomplete_details: OpenAI::Beta::Threads::Message::IncompleteDetails?, metadata: OpenAI::Models::metadata?, object: :"thread.message", - role: OpenAI::Models::Beta::Threads::Message::role, + role: OpenAI::Beta::Threads::Message::role, run_id: String?, - status: OpenAI::Models::Beta::Threads::Message::status, + status: OpenAI::Beta::Threads::Message::status, thread_id: String } @@ -25,7 +25,7 @@ module OpenAI attr_accessor assistant_id: String? - attr_accessor attachments: ::Array[OpenAI::Models::Beta::Threads::Message::Attachment]? + attr_accessor attachments: ::Array[OpenAI::Beta::Threads::Message::Attachment]? attr_accessor completed_at: Integer? @@ -35,43 +35,41 @@ module OpenAI attr_accessor incomplete_at: Integer? - attr_accessor incomplete_details: OpenAI::Models::Beta::Threads::Message::IncompleteDetails? + attr_accessor incomplete_details: OpenAI::Beta::Threads::Message::IncompleteDetails? attr_accessor metadata: OpenAI::Models::metadata? attr_accessor object: :"thread.message" - attr_accessor role: OpenAI::Models::Beta::Threads::Message::role + attr_accessor role: OpenAI::Beta::Threads::Message::role attr_accessor run_id: String? - attr_accessor status: OpenAI::Models::Beta::Threads::Message::status + attr_accessor status: OpenAI::Beta::Threads::Message::status attr_accessor thread_id: String def initialize: ( id: String, assistant_id: String?, - attachments: ::Array[OpenAI::Models::Beta::Threads::Message::Attachment]?, + attachments: ::Array[OpenAI::Beta::Threads::Message::Attachment]?, completed_at: Integer?, content: ::Array[OpenAI::Models::Beta::Threads::message_content], created_at: Integer, incomplete_at: Integer?, - incomplete_details: OpenAI::Models::Beta::Threads::Message::IncompleteDetails?, + incomplete_details: OpenAI::Beta::Threads::Message::IncompleteDetails?, metadata: OpenAI::Models::metadata?, - role: OpenAI::Models::Beta::Threads::Message::role, + role: OpenAI::Beta::Threads::Message::role, run_id: String?, - status: OpenAI::Models::Beta::Threads::Message::status, + status: OpenAI::Beta::Threads::Message::status, thread_id: String, ?object: :"thread.message" ) -> void - def to_hash: -> OpenAI::Models::Beta::Threads::message - type attachment = { file_id: String, - tools: ::Array[OpenAI::Models::Beta::Threads::Message::Attachment::tool] + tools: ::Array[OpenAI::Beta::Threads::Message::Attachment::tool] } class Attachment < OpenAI::Internal::Type::BaseModel @@ -79,22 +77,20 @@ module OpenAI def file_id=: (String) -> String - attr_reader tools: ::Array[OpenAI::Models::Beta::Threads::Message::Attachment::tool]? + attr_reader tools: ::Array[OpenAI::Beta::Threads::Message::Attachment::tool]? def tools=: ( - ::Array[OpenAI::Models::Beta::Threads::Message::Attachment::tool] - ) -> ::Array[OpenAI::Models::Beta::Threads::Message::Attachment::tool] + ::Array[OpenAI::Beta::Threads::Message::Attachment::tool] + ) -> ::Array[OpenAI::Beta::Threads::Message::Attachment::tool] def initialize: ( ?file_id: String, - ?tools: ::Array[OpenAI::Models::Beta::Threads::Message::Attachment::tool] + ?tools: ::Array[OpenAI::Beta::Threads::Message::Attachment::tool] ) -> void - def to_hash: -> OpenAI::Models::Beta::Threads::Message::attachment - type tool = - OpenAI::Models::Beta::CodeInterpreterTool - | OpenAI::Models::Beta::Threads::Message::Attachment::Tool::AssistantToolsFileSearchTypeOnly + OpenAI::Beta::CodeInterpreterTool + | OpenAI::Beta::Threads::Message::Attachment::Tool::AssistantToolsFileSearchTypeOnly module Tool extend OpenAI::Internal::Type::Union @@ -106,28 +102,24 @@ module OpenAI attr_accessor type: :file_search def initialize: (?type: :file_search) -> void - - def to_hash: -> OpenAI::Models::Beta::Threads::Message::Attachment::Tool::assistant_tools_file_search_type_only end - def self?.variants: -> [OpenAI::Models::Beta::CodeInterpreterTool, OpenAI::Models::Beta::Threads::Message::Attachment::Tool::AssistantToolsFileSearchTypeOnly] + def self?.variants: -> ::Array[OpenAI::Beta::Threads::Message::Attachment::tool] end end type incomplete_details = { - reason: OpenAI::Models::Beta::Threads::Message::IncompleteDetails::reason + reason: OpenAI::Beta::Threads::Message::IncompleteDetails::reason } class IncompleteDetails < OpenAI::Internal::Type::BaseModel - attr_accessor reason: OpenAI::Models::Beta::Threads::Message::IncompleteDetails::reason + attr_accessor reason: OpenAI::Beta::Threads::Message::IncompleteDetails::reason def initialize: ( - reason: OpenAI::Models::Beta::Threads::Message::IncompleteDetails::reason + reason: OpenAI::Beta::Threads::Message::IncompleteDetails::reason ) -> void - def to_hash: -> OpenAI::Models::Beta::Threads::Message::incomplete_details - type reason = :content_filter | :max_tokens @@ -144,7 +136,7 @@ module OpenAI RUN_EXPIRED: :run_expired RUN_FAILED: :run_failed - def self?.values: -> ::Array[OpenAI::Models::Beta::Threads::Message::IncompleteDetails::reason] + def self?.values: -> ::Array[OpenAI::Beta::Threads::Message::IncompleteDetails::reason] end end @@ -156,7 +148,7 @@ module OpenAI USER: :user ASSISTANT: :assistant - def self?.values: -> ::Array[OpenAI::Models::Beta::Threads::Message::role] + def self?.values: -> ::Array[OpenAI::Beta::Threads::Message::role] end type status = :in_progress | :incomplete | :completed @@ -168,7 +160,7 @@ module OpenAI INCOMPLETE: :incomplete COMPLETED: :completed - def self?.values: -> ::Array[OpenAI::Models::Beta::Threads::Message::status] + def self?.values: -> ::Array[OpenAI::Beta::Threads::Message::status] end end end diff --git a/sig/openai/models/beta/threads/message_content.rbs b/sig/openai/models/beta/threads/message_content.rbs index e3bc2805..35e6ff1f 100644 --- a/sig/openai/models/beta/threads/message_content.rbs +++ b/sig/openai/models/beta/threads/message_content.rbs @@ -3,15 +3,15 @@ module OpenAI module Beta module Threads type message_content = - OpenAI::Models::Beta::Threads::ImageFileContentBlock - | OpenAI::Models::Beta::Threads::ImageURLContentBlock - | OpenAI::Models::Beta::Threads::TextContentBlock - | OpenAI::Models::Beta::Threads::RefusalContentBlock + OpenAI::Beta::Threads::ImageFileContentBlock + | OpenAI::Beta::Threads::ImageURLContentBlock + | OpenAI::Beta::Threads::TextContentBlock + | OpenAI::Beta::Threads::RefusalContentBlock module MessageContent extend OpenAI::Internal::Type::Union - def self?.variants: -> [OpenAI::Models::Beta::Threads::ImageFileContentBlock, OpenAI::Models::Beta::Threads::ImageURLContentBlock, OpenAI::Models::Beta::Threads::TextContentBlock, OpenAI::Models::Beta::Threads::RefusalContentBlock] + def self?.variants: -> ::Array[OpenAI::Models::Beta::Threads::message_content] end end end diff --git a/sig/openai/models/beta/threads/message_content_delta.rbs b/sig/openai/models/beta/threads/message_content_delta.rbs index f06072ee..6c1edb1d 100644 --- a/sig/openai/models/beta/threads/message_content_delta.rbs +++ b/sig/openai/models/beta/threads/message_content_delta.rbs @@ -3,15 +3,15 @@ module OpenAI module Beta module Threads type message_content_delta = - OpenAI::Models::Beta::Threads::ImageFileDeltaBlock - | OpenAI::Models::Beta::Threads::TextDeltaBlock - | OpenAI::Models::Beta::Threads::RefusalDeltaBlock - | OpenAI::Models::Beta::Threads::ImageURLDeltaBlock + OpenAI::Beta::Threads::ImageFileDeltaBlock + | OpenAI::Beta::Threads::TextDeltaBlock + | OpenAI::Beta::Threads::RefusalDeltaBlock + | OpenAI::Beta::Threads::ImageURLDeltaBlock module MessageContentDelta extend OpenAI::Internal::Type::Union - def self?.variants: -> [OpenAI::Models::Beta::Threads::ImageFileDeltaBlock, OpenAI::Models::Beta::Threads::TextDeltaBlock, OpenAI::Models::Beta::Threads::RefusalDeltaBlock, OpenAI::Models::Beta::Threads::ImageURLDeltaBlock] + def self?.variants: -> ::Array[OpenAI::Models::Beta::Threads::message_content_delta] end end end diff --git a/sig/openai/models/beta/threads/message_content_part_param.rbs b/sig/openai/models/beta/threads/message_content_part_param.rbs index 1e8a7d91..802d8b17 100644 --- a/sig/openai/models/beta/threads/message_content_part_param.rbs +++ b/sig/openai/models/beta/threads/message_content_part_param.rbs @@ -3,14 +3,14 @@ module OpenAI module Beta module Threads type message_content_part_param = - OpenAI::Models::Beta::Threads::ImageFileContentBlock - | OpenAI::Models::Beta::Threads::ImageURLContentBlock - | OpenAI::Models::Beta::Threads::TextContentBlockParam + OpenAI::Beta::Threads::ImageFileContentBlock + | OpenAI::Beta::Threads::ImageURLContentBlock + | OpenAI::Beta::Threads::TextContentBlockParam module MessageContentPartParam extend OpenAI::Internal::Type::Union - def self?.variants: -> [OpenAI::Models::Beta::Threads::ImageFileContentBlock, OpenAI::Models::Beta::Threads::ImageURLContentBlock, OpenAI::Models::Beta::Threads::TextContentBlockParam] + def self?.variants: -> ::Array[OpenAI::Models::Beta::Threads::message_content_part_param] end end end diff --git a/sig/openai/models/beta/threads/message_create_params.rbs b/sig/openai/models/beta/threads/message_create_params.rbs index fd5c2c49..48d32702 100644 --- a/sig/openai/models/beta/threads/message_create_params.rbs +++ b/sig/openai/models/beta/threads/message_create_params.rbs @@ -6,7 +6,7 @@ module OpenAI { content: OpenAI::Models::Beta::Threads::MessageCreateParams::content, role: OpenAI::Models::Beta::Threads::MessageCreateParams::role, - attachments: ::Array[OpenAI::Models::Beta::Threads::MessageCreateParams::Attachment]?, + attachments: ::Array[OpenAI::Beta::Threads::MessageCreateParams::Attachment]?, metadata: OpenAI::Models::metadata? } & OpenAI::Internal::Type::request_parameters @@ -19,20 +19,18 @@ module OpenAI attr_accessor role: OpenAI::Models::Beta::Threads::MessageCreateParams::role - attr_accessor attachments: ::Array[OpenAI::Models::Beta::Threads::MessageCreateParams::Attachment]? + attr_accessor attachments: ::Array[OpenAI::Beta::Threads::MessageCreateParams::Attachment]? attr_accessor metadata: OpenAI::Models::metadata? def initialize: ( content: OpenAI::Models::Beta::Threads::MessageCreateParams::content, role: OpenAI::Models::Beta::Threads::MessageCreateParams::role, - ?attachments: ::Array[OpenAI::Models::Beta::Threads::MessageCreateParams::Attachment]?, + ?attachments: ::Array[OpenAI::Beta::Threads::MessageCreateParams::Attachment]?, ?metadata: OpenAI::Models::metadata?, ?request_options: OpenAI::request_opts ) -> void - def to_hash: -> OpenAI::Models::Beta::Threads::message_create_params - type content = String | ::Array[OpenAI::Models::Beta::Threads::message_content_part_param] @@ -40,7 +38,7 @@ module OpenAI module Content extend OpenAI::Internal::Type::Union - def self?.variants: -> [String, ::Array[OpenAI::Models::Beta::Threads::message_content_part_param]] + def self?.variants: -> ::Array[OpenAI::Models::Beta::Threads::MessageCreateParams::content] MessageContentPartParamArray: OpenAI::Internal::Type::Converter end @@ -59,7 +57,7 @@ module OpenAI type attachment = { file_id: String, - tools: ::Array[OpenAI::Models::Beta::Threads::MessageCreateParams::Attachment::tool] + tools: ::Array[OpenAI::Beta::Threads::MessageCreateParams::Attachment::tool] } class Attachment < OpenAI::Internal::Type::BaseModel @@ -67,22 +65,20 @@ module OpenAI def file_id=: (String) -> String - attr_reader tools: ::Array[OpenAI::Models::Beta::Threads::MessageCreateParams::Attachment::tool]? + attr_reader tools: ::Array[OpenAI::Beta::Threads::MessageCreateParams::Attachment::tool]? def tools=: ( - ::Array[OpenAI::Models::Beta::Threads::MessageCreateParams::Attachment::tool] - ) -> ::Array[OpenAI::Models::Beta::Threads::MessageCreateParams::Attachment::tool] + ::Array[OpenAI::Beta::Threads::MessageCreateParams::Attachment::tool] + ) -> ::Array[OpenAI::Beta::Threads::MessageCreateParams::Attachment::tool] def initialize: ( ?file_id: String, - ?tools: ::Array[OpenAI::Models::Beta::Threads::MessageCreateParams::Attachment::tool] + ?tools: ::Array[OpenAI::Beta::Threads::MessageCreateParams::Attachment::tool] ) -> void - def to_hash: -> OpenAI::Models::Beta::Threads::MessageCreateParams::attachment - type tool = - OpenAI::Models::Beta::CodeInterpreterTool - | OpenAI::Models::Beta::Threads::MessageCreateParams::Attachment::Tool::FileSearch + OpenAI::Beta::CodeInterpreterTool + | OpenAI::Beta::Threads::MessageCreateParams::Attachment::Tool::FileSearch module Tool extend OpenAI::Internal::Type::Union @@ -93,11 +89,9 @@ module OpenAI attr_accessor type: :file_search def initialize: (?type: :file_search) -> void - - def to_hash: -> OpenAI::Models::Beta::Threads::MessageCreateParams::Attachment::Tool::file_search end - def self?.variants: -> [OpenAI::Models::Beta::CodeInterpreterTool, OpenAI::Models::Beta::Threads::MessageCreateParams::Attachment::Tool::FileSearch] + def self?.variants: -> ::Array[OpenAI::Beta::Threads::MessageCreateParams::Attachment::tool] end end end diff --git a/sig/openai/models/beta/threads/message_delete_params.rbs b/sig/openai/models/beta/threads/message_delete_params.rbs index 9abbe1c5..9edbd8b5 100644 --- a/sig/openai/models/beta/threads/message_delete_params.rbs +++ b/sig/openai/models/beta/threads/message_delete_params.rbs @@ -15,8 +15,6 @@ module OpenAI thread_id: String, ?request_options: OpenAI::request_opts ) -> void - - def to_hash: -> OpenAI::Models::Beta::Threads::message_delete_params end end end diff --git a/sig/openai/models/beta/threads/message_deleted.rbs b/sig/openai/models/beta/threads/message_deleted.rbs index d1356267..d3b0da8c 100644 --- a/sig/openai/models/beta/threads/message_deleted.rbs +++ b/sig/openai/models/beta/threads/message_deleted.rbs @@ -17,8 +17,6 @@ module OpenAI deleted: bool, ?object: :"thread.message.deleted" ) -> void - - def to_hash: -> OpenAI::Models::Beta::Threads::message_deleted end end end diff --git a/sig/openai/models/beta/threads/message_delta.rbs b/sig/openai/models/beta/threads/message_delta.rbs index e74b69e1..d953aeb6 100644 --- a/sig/openai/models/beta/threads/message_delta.rbs +++ b/sig/openai/models/beta/threads/message_delta.rbs @@ -5,7 +5,7 @@ module OpenAI type message_delta = { content: ::Array[OpenAI::Models::Beta::Threads::message_content_delta], - role: OpenAI::Models::Beta::Threads::MessageDelta::role + role: OpenAI::Beta::Threads::MessageDelta::role } class MessageDelta < OpenAI::Internal::Type::BaseModel @@ -15,19 +15,17 @@ module OpenAI ::Array[OpenAI::Models::Beta::Threads::message_content_delta] ) -> ::Array[OpenAI::Models::Beta::Threads::message_content_delta] - attr_reader role: OpenAI::Models::Beta::Threads::MessageDelta::role? + attr_reader role: OpenAI::Beta::Threads::MessageDelta::role? def role=: ( - OpenAI::Models::Beta::Threads::MessageDelta::role - ) -> OpenAI::Models::Beta::Threads::MessageDelta::role + OpenAI::Beta::Threads::MessageDelta::role + ) -> OpenAI::Beta::Threads::MessageDelta::role def initialize: ( ?content: ::Array[OpenAI::Models::Beta::Threads::message_content_delta], - ?role: OpenAI::Models::Beta::Threads::MessageDelta::role + ?role: OpenAI::Beta::Threads::MessageDelta::role ) -> void - def to_hash: -> OpenAI::Models::Beta::Threads::message_delta - type role = :user | :assistant module Role @@ -36,7 +34,7 @@ module OpenAI USER: :user ASSISTANT: :assistant - def self?.values: -> ::Array[OpenAI::Models::Beta::Threads::MessageDelta::role] + def self?.values: -> ::Array[OpenAI::Beta::Threads::MessageDelta::role] end end end diff --git a/sig/openai/models/beta/threads/message_delta_event.rbs b/sig/openai/models/beta/threads/message_delta_event.rbs index 553d6fef..d84d3446 100644 --- a/sig/openai/models/beta/threads/message_delta_event.rbs +++ b/sig/openai/models/beta/threads/message_delta_event.rbs @@ -5,24 +5,22 @@ module OpenAI type message_delta_event = { id: String, - delta: OpenAI::Models::Beta::Threads::MessageDelta, + delta: OpenAI::Beta::Threads::MessageDelta, object: :"thread.message.delta" } class MessageDeltaEvent < OpenAI::Internal::Type::BaseModel attr_accessor id: String - attr_accessor delta: OpenAI::Models::Beta::Threads::MessageDelta + attr_accessor delta: OpenAI::Beta::Threads::MessageDelta attr_accessor object: :"thread.message.delta" def initialize: ( id: String, - delta: OpenAI::Models::Beta::Threads::MessageDelta, + delta: OpenAI::Beta::Threads::MessageDelta, ?object: :"thread.message.delta" ) -> void - - def to_hash: -> OpenAI::Models::Beta::Threads::message_delta_event end end end diff --git a/sig/openai/models/beta/threads/message_list_params.rbs b/sig/openai/models/beta/threads/message_list_params.rbs index 2cdda317..eede9b56 100644 --- a/sig/openai/models/beta/threads/message_list_params.rbs +++ b/sig/openai/models/beta/threads/message_list_params.rbs @@ -47,8 +47,6 @@ module OpenAI ?request_options: OpenAI::request_opts ) -> void - def to_hash: -> OpenAI::Models::Beta::Threads::message_list_params - type order = :asc | :desc module Order diff --git a/sig/openai/models/beta/threads/message_retrieve_params.rbs b/sig/openai/models/beta/threads/message_retrieve_params.rbs index c6ff2a71..847e3c4c 100644 --- a/sig/openai/models/beta/threads/message_retrieve_params.rbs +++ b/sig/openai/models/beta/threads/message_retrieve_params.rbs @@ -15,8 +15,6 @@ module OpenAI thread_id: String, ?request_options: OpenAI::request_opts ) -> void - - def to_hash: -> OpenAI::Models::Beta::Threads::message_retrieve_params end end end diff --git a/sig/openai/models/beta/threads/message_update_params.rbs b/sig/openai/models/beta/threads/message_update_params.rbs index 4f14f212..38806f27 100644 --- a/sig/openai/models/beta/threads/message_update_params.rbs +++ b/sig/openai/models/beta/threads/message_update_params.rbs @@ -19,8 +19,6 @@ module OpenAI ?metadata: OpenAI::Models::metadata?, ?request_options: OpenAI::request_opts ) -> void - - def to_hash: -> OpenAI::Models::Beta::Threads::message_update_params end end end diff --git a/sig/openai/models/beta/threads/refusal_content_block.rbs b/sig/openai/models/beta/threads/refusal_content_block.rbs index c91e1603..98c6625d 100644 --- a/sig/openai/models/beta/threads/refusal_content_block.rbs +++ b/sig/openai/models/beta/threads/refusal_content_block.rbs @@ -10,8 +10,6 @@ module OpenAI attr_accessor type: :refusal def initialize: (refusal: String, ?type: :refusal) -> void - - def to_hash: -> OpenAI::Models::Beta::Threads::refusal_content_block end end end diff --git a/sig/openai/models/beta/threads/refusal_delta_block.rbs b/sig/openai/models/beta/threads/refusal_delta_block.rbs index 6fc97486..c6f86524 100644 --- a/sig/openai/models/beta/threads/refusal_delta_block.rbs +++ b/sig/openai/models/beta/threads/refusal_delta_block.rbs @@ -19,8 +19,6 @@ module OpenAI ?refusal: String, ?type: :refusal ) -> void - - def to_hash: -> OpenAI::Models::Beta::Threads::refusal_delta_block end end end diff --git a/sig/openai/models/beta/threads/required_action_function_tool_call.rbs b/sig/openai/models/beta/threads/required_action_function_tool_call.rbs index b2cd22a2..5fcd15c2 100644 --- a/sig/openai/models/beta/threads/required_action_function_tool_call.rbs +++ b/sig/openai/models/beta/threads/required_action_function_tool_call.rbs @@ -5,25 +5,23 @@ module OpenAI type required_action_function_tool_call = { id: String, - function: OpenAI::Models::Beta::Threads::RequiredActionFunctionToolCall::Function, + function: OpenAI::Beta::Threads::RequiredActionFunctionToolCall::Function, type: :function } class RequiredActionFunctionToolCall < OpenAI::Internal::Type::BaseModel attr_accessor id: String - attr_accessor function: OpenAI::Models::Beta::Threads::RequiredActionFunctionToolCall::Function + attr_accessor function: OpenAI::Beta::Threads::RequiredActionFunctionToolCall::Function attr_accessor type: :function def initialize: ( id: String, - function: OpenAI::Models::Beta::Threads::RequiredActionFunctionToolCall::Function, + function: OpenAI::Beta::Threads::RequiredActionFunctionToolCall::Function, ?type: :function ) -> void - def to_hash: -> OpenAI::Models::Beta::Threads::required_action_function_tool_call - type function = { arguments: String, name: String } class Function < OpenAI::Internal::Type::BaseModel @@ -32,8 +30,6 @@ module OpenAI attr_accessor name: String def initialize: (arguments: String, name: String) -> void - - def to_hash: -> OpenAI::Models::Beta::Threads::RequiredActionFunctionToolCall::function end end end diff --git a/sig/openai/models/beta/threads/run.rbs b/sig/openai/models/beta/threads/run.rbs index 6fb8ca5b..0d4ed055 100644 --- a/sig/openai/models/beta/threads/run.rbs +++ b/sig/openai/models/beta/threads/run.rbs @@ -11,24 +11,24 @@ module OpenAI created_at: Integer, expires_at: Integer?, failed_at: Integer?, - incomplete_details: OpenAI::Models::Beta::Threads::Run::IncompleteDetails?, + incomplete_details: OpenAI::Beta::Threads::Run::IncompleteDetails?, instructions: String, - last_error: OpenAI::Models::Beta::Threads::Run::LastError?, + last_error: OpenAI::Beta::Threads::Run::LastError?, max_completion_tokens: Integer?, max_prompt_tokens: Integer?, metadata: OpenAI::Models::metadata?, model: String, object: :"thread.run", parallel_tool_calls: bool, - required_action: OpenAI::Models::Beta::Threads::Run::RequiredAction?, + required_action: OpenAI::Beta::Threads::Run::RequiredAction?, response_format: OpenAI::Models::Beta::assistant_response_format_option?, started_at: Integer?, status: OpenAI::Models::Beta::Threads::run_status, thread_id: String, tool_choice: OpenAI::Models::Beta::assistant_tool_choice_option?, tools: ::Array[OpenAI::Models::Beta::assistant_tool], - truncation_strategy: OpenAI::Models::Beta::Threads::Run::TruncationStrategy?, - usage: OpenAI::Models::Beta::Threads::Run::Usage?, + truncation_strategy: OpenAI::Beta::Threads::Run::TruncationStrategy?, + usage: OpenAI::Beta::Threads::Run::Usage?, temperature: Float?, top_p: Float? } @@ -48,11 +48,11 @@ module OpenAI attr_accessor failed_at: Integer? - attr_accessor incomplete_details: OpenAI::Models::Beta::Threads::Run::IncompleteDetails? + attr_accessor incomplete_details: OpenAI::Beta::Threads::Run::IncompleteDetails? attr_accessor instructions: String - attr_accessor last_error: OpenAI::Models::Beta::Threads::Run::LastError? + attr_accessor last_error: OpenAI::Beta::Threads::Run::LastError? attr_accessor max_completion_tokens: Integer? @@ -66,7 +66,7 @@ module OpenAI attr_accessor parallel_tool_calls: bool - attr_accessor required_action: OpenAI::Models::Beta::Threads::Run::RequiredAction? + attr_accessor required_action: OpenAI::Beta::Threads::Run::RequiredAction? attr_accessor response_format: OpenAI::Models::Beta::assistant_response_format_option? @@ -80,9 +80,9 @@ module OpenAI attr_accessor tools: ::Array[OpenAI::Models::Beta::assistant_tool] - attr_accessor truncation_strategy: OpenAI::Models::Beta::Threads::Run::TruncationStrategy? + attr_accessor truncation_strategy: OpenAI::Beta::Threads::Run::TruncationStrategy? - attr_accessor usage: OpenAI::Models::Beta::Threads::Run::Usage? + attr_accessor usage: OpenAI::Beta::Threads::Run::Usage? attr_accessor temperature: Float? @@ -96,48 +96,42 @@ module OpenAI created_at: Integer, expires_at: Integer?, failed_at: Integer?, - incomplete_details: OpenAI::Models::Beta::Threads::Run::IncompleteDetails?, + incomplete_details: OpenAI::Beta::Threads::Run::IncompleteDetails?, instructions: String, - last_error: OpenAI::Models::Beta::Threads::Run::LastError?, + last_error: OpenAI::Beta::Threads::Run::LastError?, max_completion_tokens: Integer?, max_prompt_tokens: Integer?, metadata: OpenAI::Models::metadata?, model: String, parallel_tool_calls: bool, - required_action: OpenAI::Models::Beta::Threads::Run::RequiredAction?, + required_action: OpenAI::Beta::Threads::Run::RequiredAction?, response_format: OpenAI::Models::Beta::assistant_response_format_option?, started_at: Integer?, status: OpenAI::Models::Beta::Threads::run_status, thread_id: String, tool_choice: OpenAI::Models::Beta::assistant_tool_choice_option?, tools: ::Array[OpenAI::Models::Beta::assistant_tool], - truncation_strategy: OpenAI::Models::Beta::Threads::Run::TruncationStrategy?, - usage: OpenAI::Models::Beta::Threads::Run::Usage?, + truncation_strategy: OpenAI::Beta::Threads::Run::TruncationStrategy?, + usage: OpenAI::Beta::Threads::Run::Usage?, ?temperature: Float?, ?top_p: Float?, ?object: :"thread.run" ) -> void - def to_hash: -> OpenAI::Models::Beta::Threads::run - type incomplete_details = - { - reason: OpenAI::Models::Beta::Threads::Run::IncompleteDetails::reason - } + { reason: OpenAI::Beta::Threads::Run::IncompleteDetails::reason } class IncompleteDetails < OpenAI::Internal::Type::BaseModel - attr_reader reason: OpenAI::Models::Beta::Threads::Run::IncompleteDetails::reason? + attr_reader reason: OpenAI::Beta::Threads::Run::IncompleteDetails::reason? def reason=: ( - OpenAI::Models::Beta::Threads::Run::IncompleteDetails::reason - ) -> OpenAI::Models::Beta::Threads::Run::IncompleteDetails::reason + OpenAI::Beta::Threads::Run::IncompleteDetails::reason + ) -> OpenAI::Beta::Threads::Run::IncompleteDetails::reason def initialize: ( - ?reason: OpenAI::Models::Beta::Threads::Run::IncompleteDetails::reason + ?reason: OpenAI::Beta::Threads::Run::IncompleteDetails::reason ) -> void - def to_hash: -> OpenAI::Models::Beta::Threads::Run::incomplete_details - type reason = :max_completion_tokens | :max_prompt_tokens module Reason @@ -146,28 +140,26 @@ module OpenAI MAX_COMPLETION_TOKENS: :max_completion_tokens MAX_PROMPT_TOKENS: :max_prompt_tokens - def self?.values: -> ::Array[OpenAI::Models::Beta::Threads::Run::IncompleteDetails::reason] + def self?.values: -> ::Array[OpenAI::Beta::Threads::Run::IncompleteDetails::reason] end end type last_error = { - code: OpenAI::Models::Beta::Threads::Run::LastError::code, + code: OpenAI::Beta::Threads::Run::LastError::code, message: String } class LastError < OpenAI::Internal::Type::BaseModel - attr_accessor code: OpenAI::Models::Beta::Threads::Run::LastError::code + attr_accessor code: OpenAI::Beta::Threads::Run::LastError::code attr_accessor message: String def initialize: ( - code: OpenAI::Models::Beta::Threads::Run::LastError::code, + code: OpenAI::Beta::Threads::Run::LastError::code, message: String ) -> void - def to_hash: -> OpenAI::Models::Beta::Threads::Run::last_error - type code = :server_error | :rate_limit_exceeded | :invalid_prompt module Code @@ -177,62 +169,56 @@ module OpenAI RATE_LIMIT_EXCEEDED: :rate_limit_exceeded INVALID_PROMPT: :invalid_prompt - def self?.values: -> ::Array[OpenAI::Models::Beta::Threads::Run::LastError::code] + def self?.values: -> ::Array[OpenAI::Beta::Threads::Run::LastError::code] end end type required_action = { - submit_tool_outputs: OpenAI::Models::Beta::Threads::Run::RequiredAction::SubmitToolOutputs, + submit_tool_outputs: OpenAI::Beta::Threads::Run::RequiredAction::SubmitToolOutputs, type: :submit_tool_outputs } class RequiredAction < OpenAI::Internal::Type::BaseModel - attr_accessor submit_tool_outputs: OpenAI::Models::Beta::Threads::Run::RequiredAction::SubmitToolOutputs + attr_accessor submit_tool_outputs: OpenAI::Beta::Threads::Run::RequiredAction::SubmitToolOutputs attr_accessor type: :submit_tool_outputs def initialize: ( - submit_tool_outputs: OpenAI::Models::Beta::Threads::Run::RequiredAction::SubmitToolOutputs, + submit_tool_outputs: OpenAI::Beta::Threads::Run::RequiredAction::SubmitToolOutputs, ?type: :submit_tool_outputs ) -> void - def to_hash: -> OpenAI::Models::Beta::Threads::Run::required_action - type submit_tool_outputs = { - tool_calls: ::Array[OpenAI::Models::Beta::Threads::RequiredActionFunctionToolCall] + tool_calls: ::Array[OpenAI::Beta::Threads::RequiredActionFunctionToolCall] } class SubmitToolOutputs < OpenAI::Internal::Type::BaseModel - attr_accessor tool_calls: ::Array[OpenAI::Models::Beta::Threads::RequiredActionFunctionToolCall] + attr_accessor tool_calls: ::Array[OpenAI::Beta::Threads::RequiredActionFunctionToolCall] def initialize: ( - tool_calls: ::Array[OpenAI::Models::Beta::Threads::RequiredActionFunctionToolCall] + tool_calls: ::Array[OpenAI::Beta::Threads::RequiredActionFunctionToolCall] ) -> void - - def to_hash: -> OpenAI::Models::Beta::Threads::Run::RequiredAction::submit_tool_outputs end end type truncation_strategy = { - type: OpenAI::Models::Beta::Threads::Run::TruncationStrategy::type_, + type: OpenAI::Beta::Threads::Run::TruncationStrategy::type_, last_messages: Integer? } class TruncationStrategy < OpenAI::Internal::Type::BaseModel - attr_accessor type: OpenAI::Models::Beta::Threads::Run::TruncationStrategy::type_ + attr_accessor type: OpenAI::Beta::Threads::Run::TruncationStrategy::type_ attr_accessor last_messages: Integer? def initialize: ( - type: OpenAI::Models::Beta::Threads::Run::TruncationStrategy::type_, + type: OpenAI::Beta::Threads::Run::TruncationStrategy::type_, ?last_messages: Integer? ) -> void - def to_hash: -> OpenAI::Models::Beta::Threads::Run::truncation_strategy - type type_ = :auto | :last_messages module Type @@ -241,7 +227,7 @@ module OpenAI AUTO: :auto LAST_MESSAGES: :last_messages - def self?.values: -> ::Array[OpenAI::Models::Beta::Threads::Run::TruncationStrategy::type_] + def self?.values: -> ::Array[OpenAI::Beta::Threads::Run::TruncationStrategy::type_] end end @@ -264,8 +250,6 @@ module OpenAI prompt_tokens: Integer, total_tokens: Integer ) -> void - - def to_hash: -> OpenAI::Models::Beta::Threads::Run::usage end end end diff --git a/sig/openai/models/beta/threads/run_cancel_params.rbs b/sig/openai/models/beta/threads/run_cancel_params.rbs index 4c384a32..03525bb2 100644 --- a/sig/openai/models/beta/threads/run_cancel_params.rbs +++ b/sig/openai/models/beta/threads/run_cancel_params.rbs @@ -15,8 +15,6 @@ module OpenAI thread_id: String, ?request_options: OpenAI::request_opts ) -> void - - def to_hash: -> OpenAI::Models::Beta::Threads::run_cancel_params end end end diff --git a/sig/openai/models/beta/threads/run_create_params.rbs b/sig/openai/models/beta/threads/run_create_params.rbs index da318adb..ab0e1ca8 100644 --- a/sig/openai/models/beta/threads/run_create_params.rbs +++ b/sig/openai/models/beta/threads/run_create_params.rbs @@ -7,7 +7,7 @@ module OpenAI assistant_id: String, include: ::Array[OpenAI::Models::Beta::Threads::Runs::run_step_include], additional_instructions: String?, - additional_messages: ::Array[OpenAI::Models::Beta::Threads::RunCreateParams::AdditionalMessage]?, + additional_messages: ::Array[OpenAI::Beta::Threads::RunCreateParams::AdditionalMessage]?, instructions: String?, max_completion_tokens: Integer?, max_prompt_tokens: Integer?, @@ -20,7 +20,7 @@ module OpenAI tool_choice: OpenAI::Models::Beta::assistant_tool_choice_option?, tools: ::Array[OpenAI::Models::Beta::assistant_tool]?, top_p: Float?, - truncation_strategy: OpenAI::Models::Beta::Threads::RunCreateParams::TruncationStrategy? + truncation_strategy: OpenAI::Beta::Threads::RunCreateParams::TruncationStrategy? } & OpenAI::Internal::Type::request_parameters @@ -38,7 +38,7 @@ module OpenAI attr_accessor additional_instructions: String? - attr_accessor additional_messages: ::Array[OpenAI::Models::Beta::Threads::RunCreateParams::AdditionalMessage]? + attr_accessor additional_messages: ::Array[OpenAI::Beta::Threads::RunCreateParams::AdditionalMessage]? attr_accessor instructions: String? @@ -66,13 +66,13 @@ module OpenAI attr_accessor top_p: Float? - attr_accessor truncation_strategy: OpenAI::Models::Beta::Threads::RunCreateParams::TruncationStrategy? + attr_accessor truncation_strategy: OpenAI::Beta::Threads::RunCreateParams::TruncationStrategy? def initialize: ( assistant_id: String, ?include: ::Array[OpenAI::Models::Beta::Threads::Runs::run_step_include], ?additional_instructions: String?, - ?additional_messages: ::Array[OpenAI::Models::Beta::Threads::RunCreateParams::AdditionalMessage]?, + ?additional_messages: ::Array[OpenAI::Beta::Threads::RunCreateParams::AdditionalMessage]?, ?instructions: String?, ?max_completion_tokens: Integer?, ?max_prompt_tokens: Integer?, @@ -85,38 +85,34 @@ module OpenAI ?tool_choice: OpenAI::Models::Beta::assistant_tool_choice_option?, ?tools: ::Array[OpenAI::Models::Beta::assistant_tool]?, ?top_p: Float?, - ?truncation_strategy: OpenAI::Models::Beta::Threads::RunCreateParams::TruncationStrategy?, + ?truncation_strategy: OpenAI::Beta::Threads::RunCreateParams::TruncationStrategy?, ?request_options: OpenAI::request_opts ) -> void - def to_hash: -> OpenAI::Models::Beta::Threads::run_create_params - type additional_message = { - content: OpenAI::Models::Beta::Threads::RunCreateParams::AdditionalMessage::content, - role: OpenAI::Models::Beta::Threads::RunCreateParams::AdditionalMessage::role, - attachments: ::Array[OpenAI::Models::Beta::Threads::RunCreateParams::AdditionalMessage::Attachment]?, + content: OpenAI::Beta::Threads::RunCreateParams::AdditionalMessage::content, + role: OpenAI::Beta::Threads::RunCreateParams::AdditionalMessage::role, + attachments: ::Array[OpenAI::Beta::Threads::RunCreateParams::AdditionalMessage::Attachment]?, metadata: OpenAI::Models::metadata? } class AdditionalMessage < OpenAI::Internal::Type::BaseModel - attr_accessor content: OpenAI::Models::Beta::Threads::RunCreateParams::AdditionalMessage::content + attr_accessor content: OpenAI::Beta::Threads::RunCreateParams::AdditionalMessage::content - attr_accessor role: OpenAI::Models::Beta::Threads::RunCreateParams::AdditionalMessage::role + attr_accessor role: OpenAI::Beta::Threads::RunCreateParams::AdditionalMessage::role - attr_accessor attachments: ::Array[OpenAI::Models::Beta::Threads::RunCreateParams::AdditionalMessage::Attachment]? + attr_accessor attachments: ::Array[OpenAI::Beta::Threads::RunCreateParams::AdditionalMessage::Attachment]? attr_accessor metadata: OpenAI::Models::metadata? def initialize: ( - content: OpenAI::Models::Beta::Threads::RunCreateParams::AdditionalMessage::content, - role: OpenAI::Models::Beta::Threads::RunCreateParams::AdditionalMessage::role, - ?attachments: ::Array[OpenAI::Models::Beta::Threads::RunCreateParams::AdditionalMessage::Attachment]?, + content: OpenAI::Beta::Threads::RunCreateParams::AdditionalMessage::content, + role: OpenAI::Beta::Threads::RunCreateParams::AdditionalMessage::role, + ?attachments: ::Array[OpenAI::Beta::Threads::RunCreateParams::AdditionalMessage::Attachment]?, ?metadata: OpenAI::Models::metadata? ) -> void - def to_hash: -> OpenAI::Models::Beta::Threads::RunCreateParams::additional_message - type content = String | ::Array[OpenAI::Models::Beta::Threads::message_content_part_param] @@ -124,7 +120,7 @@ module OpenAI module Content extend OpenAI::Internal::Type::Union - def self?.variants: -> [String, ::Array[OpenAI::Models::Beta::Threads::message_content_part_param]] + def self?.variants: -> ::Array[OpenAI::Beta::Threads::RunCreateParams::AdditionalMessage::content] MessageContentPartParamArray: OpenAI::Internal::Type::Converter end @@ -137,13 +133,13 @@ module OpenAI USER: :user ASSISTANT: :assistant - def self?.values: -> ::Array[OpenAI::Models::Beta::Threads::RunCreateParams::AdditionalMessage::role] + def self?.values: -> ::Array[OpenAI::Beta::Threads::RunCreateParams::AdditionalMessage::role] end type attachment = { file_id: String, - tools: ::Array[OpenAI::Models::Beta::Threads::RunCreateParams::AdditionalMessage::Attachment::tool] + tools: ::Array[OpenAI::Beta::Threads::RunCreateParams::AdditionalMessage::Attachment::tool] } class Attachment < OpenAI::Internal::Type::BaseModel @@ -151,22 +147,20 @@ module OpenAI def file_id=: (String) -> String - attr_reader tools: ::Array[OpenAI::Models::Beta::Threads::RunCreateParams::AdditionalMessage::Attachment::tool]? + attr_reader tools: ::Array[OpenAI::Beta::Threads::RunCreateParams::AdditionalMessage::Attachment::tool]? def tools=: ( - ::Array[OpenAI::Models::Beta::Threads::RunCreateParams::AdditionalMessage::Attachment::tool] - ) -> ::Array[OpenAI::Models::Beta::Threads::RunCreateParams::AdditionalMessage::Attachment::tool] + ::Array[OpenAI::Beta::Threads::RunCreateParams::AdditionalMessage::Attachment::tool] + ) -> ::Array[OpenAI::Beta::Threads::RunCreateParams::AdditionalMessage::Attachment::tool] def initialize: ( ?file_id: String, - ?tools: ::Array[OpenAI::Models::Beta::Threads::RunCreateParams::AdditionalMessage::Attachment::tool] + ?tools: ::Array[OpenAI::Beta::Threads::RunCreateParams::AdditionalMessage::Attachment::tool] ) -> void - def to_hash: -> OpenAI::Models::Beta::Threads::RunCreateParams::AdditionalMessage::attachment - type tool = - OpenAI::Models::Beta::CodeInterpreterTool - | OpenAI::Models::Beta::Threads::RunCreateParams::AdditionalMessage::Attachment::Tool::FileSearch + OpenAI::Beta::CodeInterpreterTool + | OpenAI::Beta::Threads::RunCreateParams::AdditionalMessage::Attachment::Tool::FileSearch module Tool extend OpenAI::Internal::Type::Union @@ -177,11 +171,9 @@ module OpenAI attr_accessor type: :file_search def initialize: (?type: :file_search) -> void - - def to_hash: -> OpenAI::Models::Beta::Threads::RunCreateParams::AdditionalMessage::Attachment::Tool::file_search end - def self?.variants: -> [OpenAI::Models::Beta::CodeInterpreterTool, OpenAI::Models::Beta::Threads::RunCreateParams::AdditionalMessage::Attachment::Tool::FileSearch] + def self?.variants: -> ::Array[OpenAI::Beta::Threads::RunCreateParams::AdditionalMessage::Attachment::tool] end end end @@ -191,27 +183,25 @@ module OpenAI module Model extend OpenAI::Internal::Type::Union - def self?.variants: -> [String, OpenAI::Models::chat_model] + def self?.variants: -> ::Array[OpenAI::Models::Beta::Threads::RunCreateParams::model] end type truncation_strategy = { - type: OpenAI::Models::Beta::Threads::RunCreateParams::TruncationStrategy::type_, + type: OpenAI::Beta::Threads::RunCreateParams::TruncationStrategy::type_, last_messages: Integer? } class TruncationStrategy < OpenAI::Internal::Type::BaseModel - attr_accessor type: OpenAI::Models::Beta::Threads::RunCreateParams::TruncationStrategy::type_ + attr_accessor type: OpenAI::Beta::Threads::RunCreateParams::TruncationStrategy::type_ attr_accessor last_messages: Integer? def initialize: ( - type: OpenAI::Models::Beta::Threads::RunCreateParams::TruncationStrategy::type_, + type: OpenAI::Beta::Threads::RunCreateParams::TruncationStrategy::type_, ?last_messages: Integer? ) -> void - def to_hash: -> OpenAI::Models::Beta::Threads::RunCreateParams::truncation_strategy - type type_ = :auto | :last_messages module Type @@ -220,7 +210,7 @@ module OpenAI AUTO: :auto LAST_MESSAGES: :last_messages - def self?.values: -> ::Array[OpenAI::Models::Beta::Threads::RunCreateParams::TruncationStrategy::type_] + def self?.values: -> ::Array[OpenAI::Beta::Threads::RunCreateParams::TruncationStrategy::type_] end end end diff --git a/sig/openai/models/beta/threads/run_list_params.rbs b/sig/openai/models/beta/threads/run_list_params.rbs index 42825950..de898e20 100644 --- a/sig/openai/models/beta/threads/run_list_params.rbs +++ b/sig/openai/models/beta/threads/run_list_params.rbs @@ -41,8 +41,6 @@ module OpenAI ?request_options: OpenAI::request_opts ) -> void - def to_hash: -> OpenAI::Models::Beta::Threads::run_list_params - type order = :asc | :desc module Order diff --git a/sig/openai/models/beta/threads/run_retrieve_params.rbs b/sig/openai/models/beta/threads/run_retrieve_params.rbs index ddbeaf2b..c9efe99b 100644 --- a/sig/openai/models/beta/threads/run_retrieve_params.rbs +++ b/sig/openai/models/beta/threads/run_retrieve_params.rbs @@ -15,8 +15,6 @@ module OpenAI thread_id: String, ?request_options: OpenAI::request_opts ) -> void - - def to_hash: -> OpenAI::Models::Beta::Threads::run_retrieve_params end end end diff --git a/sig/openai/models/beta/threads/run_submit_tool_outputs_params.rbs b/sig/openai/models/beta/threads/run_submit_tool_outputs_params.rbs index 294478bc..4e87b641 100644 --- a/sig/openai/models/beta/threads/run_submit_tool_outputs_params.rbs +++ b/sig/openai/models/beta/threads/run_submit_tool_outputs_params.rbs @@ -5,7 +5,7 @@ module OpenAI type run_submit_tool_outputs_params = { thread_id: String, - tool_outputs: ::Array[OpenAI::Models::Beta::Threads::RunSubmitToolOutputsParams::ToolOutput] + tool_outputs: ::Array[OpenAI::Beta::Threads::RunSubmitToolOutputsParams::ToolOutput] } & OpenAI::Internal::Type::request_parameters @@ -15,16 +15,14 @@ module OpenAI attr_accessor thread_id: String - attr_accessor tool_outputs: ::Array[OpenAI::Models::Beta::Threads::RunSubmitToolOutputsParams::ToolOutput] + attr_accessor tool_outputs: ::Array[OpenAI::Beta::Threads::RunSubmitToolOutputsParams::ToolOutput] def initialize: ( thread_id: String, - tool_outputs: ::Array[OpenAI::Models::Beta::Threads::RunSubmitToolOutputsParams::ToolOutput], + tool_outputs: ::Array[OpenAI::Beta::Threads::RunSubmitToolOutputsParams::ToolOutput], ?request_options: OpenAI::request_opts ) -> void - def to_hash: -> OpenAI::Models::Beta::Threads::run_submit_tool_outputs_params - type tool_output = { output: String, tool_call_id: String } class ToolOutput < OpenAI::Internal::Type::BaseModel @@ -37,8 +35,6 @@ module OpenAI def tool_call_id=: (String) -> String def initialize: (?output: String, ?tool_call_id: String) -> void - - def to_hash: -> OpenAI::Models::Beta::Threads::RunSubmitToolOutputsParams::tool_output end end end diff --git a/sig/openai/models/beta/threads/run_update_params.rbs b/sig/openai/models/beta/threads/run_update_params.rbs index 8ea338f3..28ff20c9 100644 --- a/sig/openai/models/beta/threads/run_update_params.rbs +++ b/sig/openai/models/beta/threads/run_update_params.rbs @@ -19,8 +19,6 @@ module OpenAI ?metadata: OpenAI::Models::metadata?, ?request_options: OpenAI::request_opts ) -> void - - def to_hash: -> OpenAI::Models::Beta::Threads::run_update_params end end end diff --git a/sig/openai/models/beta/threads/runs/code_interpreter_logs.rbs b/sig/openai/models/beta/threads/runs/code_interpreter_logs.rbs index e002868b..35175f5b 100644 --- a/sig/openai/models/beta/threads/runs/code_interpreter_logs.rbs +++ b/sig/openai/models/beta/threads/runs/code_interpreter_logs.rbs @@ -20,8 +20,6 @@ module OpenAI ?logs: String, ?type: :logs ) -> void - - def to_hash: -> OpenAI::Models::Beta::Threads::Runs::code_interpreter_logs end end end diff --git a/sig/openai/models/beta/threads/runs/code_interpreter_output_image.rbs b/sig/openai/models/beta/threads/runs/code_interpreter_output_image.rbs index e05b9326..a90448ca 100644 --- a/sig/openai/models/beta/threads/runs/code_interpreter_output_image.rbs +++ b/sig/openai/models/beta/threads/runs/code_interpreter_output_image.rbs @@ -7,7 +7,7 @@ module OpenAI { index: Integer, type: :image, - image: OpenAI::Models::Beta::Threads::Runs::CodeInterpreterOutputImage::Image + image: OpenAI::Beta::Threads::Runs::CodeInterpreterOutputImage::Image } class CodeInterpreterOutputImage < OpenAI::Internal::Type::BaseModel @@ -15,20 +15,18 @@ module OpenAI attr_accessor type: :image - attr_reader image: OpenAI::Models::Beta::Threads::Runs::CodeInterpreterOutputImage::Image? + attr_reader image: OpenAI::Beta::Threads::Runs::CodeInterpreterOutputImage::Image? def image=: ( - OpenAI::Models::Beta::Threads::Runs::CodeInterpreterOutputImage::Image - ) -> OpenAI::Models::Beta::Threads::Runs::CodeInterpreterOutputImage::Image + OpenAI::Beta::Threads::Runs::CodeInterpreterOutputImage::Image + ) -> OpenAI::Beta::Threads::Runs::CodeInterpreterOutputImage::Image def initialize: ( index: Integer, - ?image: OpenAI::Models::Beta::Threads::Runs::CodeInterpreterOutputImage::Image, + ?image: OpenAI::Beta::Threads::Runs::CodeInterpreterOutputImage::Image, ?type: :image ) -> void - def to_hash: -> OpenAI::Models::Beta::Threads::Runs::code_interpreter_output_image - type image = { file_id: String } class Image < OpenAI::Internal::Type::BaseModel @@ -37,8 +35,6 @@ module OpenAI def file_id=: (String) -> String def initialize: (?file_id: String) -> void - - def to_hash: -> OpenAI::Models::Beta::Threads::Runs::CodeInterpreterOutputImage::image end end end diff --git a/sig/openai/models/beta/threads/runs/code_interpreter_tool_call.rbs b/sig/openai/models/beta/threads/runs/code_interpreter_tool_call.rbs index 6ded6a40..a5051e0b 100644 --- a/sig/openai/models/beta/threads/runs/code_interpreter_tool_call.rbs +++ b/sig/openai/models/beta/threads/runs/code_interpreter_tool_call.rbs @@ -6,46 +6,42 @@ module OpenAI type code_interpreter_tool_call = { id: String, - code_interpreter: OpenAI::Models::Beta::Threads::Runs::CodeInterpreterToolCall::CodeInterpreter, + code_interpreter: OpenAI::Beta::Threads::Runs::CodeInterpreterToolCall::CodeInterpreter, type: :code_interpreter } class CodeInterpreterToolCall < OpenAI::Internal::Type::BaseModel attr_accessor id: String - attr_accessor code_interpreter: OpenAI::Models::Beta::Threads::Runs::CodeInterpreterToolCall::CodeInterpreter + attr_accessor code_interpreter: OpenAI::Beta::Threads::Runs::CodeInterpreterToolCall::CodeInterpreter attr_accessor type: :code_interpreter def initialize: ( id: String, - code_interpreter: OpenAI::Models::Beta::Threads::Runs::CodeInterpreterToolCall::CodeInterpreter, + code_interpreter: OpenAI::Beta::Threads::Runs::CodeInterpreterToolCall::CodeInterpreter, ?type: :code_interpreter ) -> void - def to_hash: -> OpenAI::Models::Beta::Threads::Runs::code_interpreter_tool_call - type code_interpreter = { input: String, - outputs: ::Array[OpenAI::Models::Beta::Threads::Runs::CodeInterpreterToolCall::CodeInterpreter::output] + outputs: ::Array[OpenAI::Beta::Threads::Runs::CodeInterpreterToolCall::CodeInterpreter::output] } class CodeInterpreter < OpenAI::Internal::Type::BaseModel attr_accessor input: String - attr_accessor outputs: ::Array[OpenAI::Models::Beta::Threads::Runs::CodeInterpreterToolCall::CodeInterpreter::output] + attr_accessor outputs: ::Array[OpenAI::Beta::Threads::Runs::CodeInterpreterToolCall::CodeInterpreter::output] def initialize: ( input: String, - outputs: ::Array[OpenAI::Models::Beta::Threads::Runs::CodeInterpreterToolCall::CodeInterpreter::output] + outputs: ::Array[OpenAI::Beta::Threads::Runs::CodeInterpreterToolCall::CodeInterpreter::output] ) -> void - def to_hash: -> OpenAI::Models::Beta::Threads::Runs::CodeInterpreterToolCall::code_interpreter - type output = - OpenAI::Models::Beta::Threads::Runs::CodeInterpreterToolCall::CodeInterpreter::Output::Logs - | OpenAI::Models::Beta::Threads::Runs::CodeInterpreterToolCall::CodeInterpreter::Output::Image + OpenAI::Beta::Threads::Runs::CodeInterpreterToolCall::CodeInterpreter::Output::Logs + | OpenAI::Beta::Threads::Runs::CodeInterpreterToolCall::CodeInterpreter::Output::Image module Output extend OpenAI::Internal::Type::Union @@ -58,40 +54,34 @@ module OpenAI attr_accessor type: :logs def initialize: (logs: String, ?type: :logs) -> void - - def to_hash: -> OpenAI::Models::Beta::Threads::Runs::CodeInterpreterToolCall::CodeInterpreter::Output::logs end type image = { - image: OpenAI::Models::Beta::Threads::Runs::CodeInterpreterToolCall::CodeInterpreter::Output::Image::Image, + image: OpenAI::Beta::Threads::Runs::CodeInterpreterToolCall::CodeInterpreter::Output::Image::Image, type: :image } class Image < OpenAI::Internal::Type::BaseModel - attr_accessor image: OpenAI::Models::Beta::Threads::Runs::CodeInterpreterToolCall::CodeInterpreter::Output::Image::Image + attr_accessor image: OpenAI::Beta::Threads::Runs::CodeInterpreterToolCall::CodeInterpreter::Output::Image::Image attr_accessor type: :image def initialize: ( - image: OpenAI::Models::Beta::Threads::Runs::CodeInterpreterToolCall::CodeInterpreter::Output::Image::Image, + image: OpenAI::Beta::Threads::Runs::CodeInterpreterToolCall::CodeInterpreter::Output::Image::Image, ?type: :image ) -> void - def to_hash: -> OpenAI::Models::Beta::Threads::Runs::CodeInterpreterToolCall::CodeInterpreter::Output::image - type image = { file_id: String } class Image < OpenAI::Internal::Type::BaseModel attr_accessor file_id: String def initialize: (file_id: String) -> void - - def to_hash: -> OpenAI::Models::Beta::Threads::Runs::CodeInterpreterToolCall::CodeInterpreter::Output::Image::image end end - def self?.variants: -> [OpenAI::Models::Beta::Threads::Runs::CodeInterpreterToolCall::CodeInterpreter::Output::Logs, OpenAI::Models::Beta::Threads::Runs::CodeInterpreterToolCall::CodeInterpreter::Output::Image] + def self?.variants: -> ::Array[OpenAI::Beta::Threads::Runs::CodeInterpreterToolCall::CodeInterpreter::output] end end end diff --git a/sig/openai/models/beta/threads/runs/code_interpreter_tool_call_delta.rbs b/sig/openai/models/beta/threads/runs/code_interpreter_tool_call_delta.rbs index 632bed4c..e15f351d 100644 --- a/sig/openai/models/beta/threads/runs/code_interpreter_tool_call_delta.rbs +++ b/sig/openai/models/beta/threads/runs/code_interpreter_tool_call_delta.rbs @@ -8,7 +8,7 @@ module OpenAI index: Integer, type: :code_interpreter, id: String, - code_interpreter: OpenAI::Models::Beta::Threads::Runs::CodeInterpreterToolCallDelta::CodeInterpreter + code_interpreter: OpenAI::Beta::Threads::Runs::CodeInterpreterToolCallDelta::CodeInterpreter } class CodeInterpreterToolCallDelta < OpenAI::Internal::Type::BaseModel @@ -20,25 +20,23 @@ module OpenAI def id=: (String) -> String - attr_reader code_interpreter: OpenAI::Models::Beta::Threads::Runs::CodeInterpreterToolCallDelta::CodeInterpreter? + attr_reader code_interpreter: OpenAI::Beta::Threads::Runs::CodeInterpreterToolCallDelta::CodeInterpreter? def code_interpreter=: ( - OpenAI::Models::Beta::Threads::Runs::CodeInterpreterToolCallDelta::CodeInterpreter - ) -> OpenAI::Models::Beta::Threads::Runs::CodeInterpreterToolCallDelta::CodeInterpreter + OpenAI::Beta::Threads::Runs::CodeInterpreterToolCallDelta::CodeInterpreter + ) -> OpenAI::Beta::Threads::Runs::CodeInterpreterToolCallDelta::CodeInterpreter def initialize: ( index: Integer, ?id: String, - ?code_interpreter: OpenAI::Models::Beta::Threads::Runs::CodeInterpreterToolCallDelta::CodeInterpreter, + ?code_interpreter: OpenAI::Beta::Threads::Runs::CodeInterpreterToolCallDelta::CodeInterpreter, ?type: :code_interpreter ) -> void - def to_hash: -> OpenAI::Models::Beta::Threads::Runs::code_interpreter_tool_call_delta - type code_interpreter = { input: String, - outputs: ::Array[OpenAI::Models::Beta::Threads::Runs::CodeInterpreterToolCallDelta::CodeInterpreter::output] + outputs: ::Array[OpenAI::Beta::Threads::Runs::CodeInterpreterToolCallDelta::CodeInterpreter::output] } class CodeInterpreter < OpenAI::Internal::Type::BaseModel @@ -46,27 +44,25 @@ module OpenAI def input=: (String) -> String - attr_reader outputs: ::Array[OpenAI::Models::Beta::Threads::Runs::CodeInterpreterToolCallDelta::CodeInterpreter::output]? + attr_reader outputs: ::Array[OpenAI::Beta::Threads::Runs::CodeInterpreterToolCallDelta::CodeInterpreter::output]? def outputs=: ( - ::Array[OpenAI::Models::Beta::Threads::Runs::CodeInterpreterToolCallDelta::CodeInterpreter::output] - ) -> ::Array[OpenAI::Models::Beta::Threads::Runs::CodeInterpreterToolCallDelta::CodeInterpreter::output] + ::Array[OpenAI::Beta::Threads::Runs::CodeInterpreterToolCallDelta::CodeInterpreter::output] + ) -> ::Array[OpenAI::Beta::Threads::Runs::CodeInterpreterToolCallDelta::CodeInterpreter::output] def initialize: ( ?input: String, - ?outputs: ::Array[OpenAI::Models::Beta::Threads::Runs::CodeInterpreterToolCallDelta::CodeInterpreter::output] + ?outputs: ::Array[OpenAI::Beta::Threads::Runs::CodeInterpreterToolCallDelta::CodeInterpreter::output] ) -> void - def to_hash: -> OpenAI::Models::Beta::Threads::Runs::CodeInterpreterToolCallDelta::code_interpreter - type output = - OpenAI::Models::Beta::Threads::Runs::CodeInterpreterLogs - | OpenAI::Models::Beta::Threads::Runs::CodeInterpreterOutputImage + OpenAI::Beta::Threads::Runs::CodeInterpreterLogs + | OpenAI::Beta::Threads::Runs::CodeInterpreterOutputImage module Output extend OpenAI::Internal::Type::Union - def self?.variants: -> [OpenAI::Models::Beta::Threads::Runs::CodeInterpreterLogs, OpenAI::Models::Beta::Threads::Runs::CodeInterpreterOutputImage] + def self?.variants: -> ::Array[OpenAI::Beta::Threads::Runs::CodeInterpreterToolCallDelta::CodeInterpreter::output] end end end diff --git a/sig/openai/models/beta/threads/runs/file_search_tool_call.rbs b/sig/openai/models/beta/threads/runs/file_search_tool_call.rbs index c0437f96..5c49e956 100644 --- a/sig/openai/models/beta/threads/runs/file_search_tool_call.rbs +++ b/sig/openai/models/beta/threads/runs/file_search_tool_call.rbs @@ -6,69 +6,63 @@ module OpenAI type file_search_tool_call = { id: String, - file_search: OpenAI::Models::Beta::Threads::Runs::FileSearchToolCall::FileSearch, + file_search: OpenAI::Beta::Threads::Runs::FileSearchToolCall::FileSearch, type: :file_search } class FileSearchToolCall < OpenAI::Internal::Type::BaseModel attr_accessor id: String - attr_accessor file_search: OpenAI::Models::Beta::Threads::Runs::FileSearchToolCall::FileSearch + attr_accessor file_search: OpenAI::Beta::Threads::Runs::FileSearchToolCall::FileSearch attr_accessor type: :file_search def initialize: ( id: String, - file_search: OpenAI::Models::Beta::Threads::Runs::FileSearchToolCall::FileSearch, + file_search: OpenAI::Beta::Threads::Runs::FileSearchToolCall::FileSearch, ?type: :file_search ) -> void - def to_hash: -> OpenAI::Models::Beta::Threads::Runs::file_search_tool_call - type file_search = { - ranking_options: OpenAI::Models::Beta::Threads::Runs::FileSearchToolCall::FileSearch::RankingOptions, - results: ::Array[OpenAI::Models::Beta::Threads::Runs::FileSearchToolCall::FileSearch::Result] + ranking_options: OpenAI::Beta::Threads::Runs::FileSearchToolCall::FileSearch::RankingOptions, + results: ::Array[OpenAI::Beta::Threads::Runs::FileSearchToolCall::FileSearch::Result] } class FileSearch < OpenAI::Internal::Type::BaseModel - attr_reader ranking_options: OpenAI::Models::Beta::Threads::Runs::FileSearchToolCall::FileSearch::RankingOptions? + attr_reader ranking_options: OpenAI::Beta::Threads::Runs::FileSearchToolCall::FileSearch::RankingOptions? def ranking_options=: ( - OpenAI::Models::Beta::Threads::Runs::FileSearchToolCall::FileSearch::RankingOptions - ) -> OpenAI::Models::Beta::Threads::Runs::FileSearchToolCall::FileSearch::RankingOptions + OpenAI::Beta::Threads::Runs::FileSearchToolCall::FileSearch::RankingOptions + ) -> OpenAI::Beta::Threads::Runs::FileSearchToolCall::FileSearch::RankingOptions - attr_reader results: ::Array[OpenAI::Models::Beta::Threads::Runs::FileSearchToolCall::FileSearch::Result]? + attr_reader results: ::Array[OpenAI::Beta::Threads::Runs::FileSearchToolCall::FileSearch::Result]? def results=: ( - ::Array[OpenAI::Models::Beta::Threads::Runs::FileSearchToolCall::FileSearch::Result] - ) -> ::Array[OpenAI::Models::Beta::Threads::Runs::FileSearchToolCall::FileSearch::Result] + ::Array[OpenAI::Beta::Threads::Runs::FileSearchToolCall::FileSearch::Result] + ) -> ::Array[OpenAI::Beta::Threads::Runs::FileSearchToolCall::FileSearch::Result] def initialize: ( - ?ranking_options: OpenAI::Models::Beta::Threads::Runs::FileSearchToolCall::FileSearch::RankingOptions, - ?results: ::Array[OpenAI::Models::Beta::Threads::Runs::FileSearchToolCall::FileSearch::Result] + ?ranking_options: OpenAI::Beta::Threads::Runs::FileSearchToolCall::FileSearch::RankingOptions, + ?results: ::Array[OpenAI::Beta::Threads::Runs::FileSearchToolCall::FileSearch::Result] ) -> void - def to_hash: -> OpenAI::Models::Beta::Threads::Runs::FileSearchToolCall::file_search - type ranking_options = { - ranker: OpenAI::Models::Beta::Threads::Runs::FileSearchToolCall::FileSearch::RankingOptions::ranker, + ranker: OpenAI::Beta::Threads::Runs::FileSearchToolCall::FileSearch::RankingOptions::ranker, score_threshold: Float } class RankingOptions < OpenAI::Internal::Type::BaseModel - attr_accessor ranker: OpenAI::Models::Beta::Threads::Runs::FileSearchToolCall::FileSearch::RankingOptions::ranker + attr_accessor ranker: OpenAI::Beta::Threads::Runs::FileSearchToolCall::FileSearch::RankingOptions::ranker attr_accessor score_threshold: Float def initialize: ( - ranker: OpenAI::Models::Beta::Threads::Runs::FileSearchToolCall::FileSearch::RankingOptions::ranker, + ranker: OpenAI::Beta::Threads::Runs::FileSearchToolCall::FileSearch::RankingOptions::ranker, score_threshold: Float ) -> void - def to_hash: -> OpenAI::Models::Beta::Threads::Runs::FileSearchToolCall::FileSearch::ranking_options - type ranker = :auto | :default_2024_08_21 module Ranker @@ -77,7 +71,7 @@ module OpenAI AUTO: :auto DEFAULT_2024_08_21: :default_2024_08_21 - def self?.values: -> ::Array[OpenAI::Models::Beta::Threads::Runs::FileSearchToolCall::FileSearch::RankingOptions::ranker] + def self?.values: -> ::Array[OpenAI::Beta::Threads::Runs::FileSearchToolCall::FileSearch::RankingOptions::ranker] end end @@ -86,7 +80,7 @@ module OpenAI file_id: String, file_name: String, score: Float, - content: ::Array[OpenAI::Models::Beta::Threads::Runs::FileSearchToolCall::FileSearch::Result::Content] + content: ::Array[OpenAI::Beta::Threads::Runs::FileSearchToolCall::FileSearch::Result::Content] } class Result < OpenAI::Internal::Type::BaseModel @@ -96,25 +90,23 @@ module OpenAI attr_accessor score: Float - attr_reader content: ::Array[OpenAI::Models::Beta::Threads::Runs::FileSearchToolCall::FileSearch::Result::Content]? + attr_reader content: ::Array[OpenAI::Beta::Threads::Runs::FileSearchToolCall::FileSearch::Result::Content]? def content=: ( - ::Array[OpenAI::Models::Beta::Threads::Runs::FileSearchToolCall::FileSearch::Result::Content] - ) -> ::Array[OpenAI::Models::Beta::Threads::Runs::FileSearchToolCall::FileSearch::Result::Content] + ::Array[OpenAI::Beta::Threads::Runs::FileSearchToolCall::FileSearch::Result::Content] + ) -> ::Array[OpenAI::Beta::Threads::Runs::FileSearchToolCall::FileSearch::Result::Content] def initialize: ( file_id: String, file_name: String, score: Float, - ?content: ::Array[OpenAI::Models::Beta::Threads::Runs::FileSearchToolCall::FileSearch::Result::Content] + ?content: ::Array[OpenAI::Beta::Threads::Runs::FileSearchToolCall::FileSearch::Result::Content] ) -> void - def to_hash: -> OpenAI::Models::Beta::Threads::Runs::FileSearchToolCall::FileSearch::result - type content = { text: String, - type: OpenAI::Models::Beta::Threads::Runs::FileSearchToolCall::FileSearch::Result::Content::type_ + type: OpenAI::Beta::Threads::Runs::FileSearchToolCall::FileSearch::Result::Content::type_ } class Content < OpenAI::Internal::Type::BaseModel @@ -122,19 +114,17 @@ module OpenAI def text=: (String) -> String - attr_reader type: OpenAI::Models::Beta::Threads::Runs::FileSearchToolCall::FileSearch::Result::Content::type_? + attr_reader type: OpenAI::Beta::Threads::Runs::FileSearchToolCall::FileSearch::Result::Content::type_? def type=: ( - OpenAI::Models::Beta::Threads::Runs::FileSearchToolCall::FileSearch::Result::Content::type_ - ) -> OpenAI::Models::Beta::Threads::Runs::FileSearchToolCall::FileSearch::Result::Content::type_ + OpenAI::Beta::Threads::Runs::FileSearchToolCall::FileSearch::Result::Content::type_ + ) -> OpenAI::Beta::Threads::Runs::FileSearchToolCall::FileSearch::Result::Content::type_ def initialize: ( ?text: String, - ?type: OpenAI::Models::Beta::Threads::Runs::FileSearchToolCall::FileSearch::Result::Content::type_ + ?type: OpenAI::Beta::Threads::Runs::FileSearchToolCall::FileSearch::Result::Content::type_ ) -> void - def to_hash: -> OpenAI::Models::Beta::Threads::Runs::FileSearchToolCall::FileSearch::Result::content - type type_ = :text module Type @@ -142,7 +132,7 @@ module OpenAI TEXT: :text - def self?.values: -> ::Array[OpenAI::Models::Beta::Threads::Runs::FileSearchToolCall::FileSearch::Result::Content::type_] + def self?.values: -> ::Array[OpenAI::Beta::Threads::Runs::FileSearchToolCall::FileSearch::Result::Content::type_] end end end diff --git a/sig/openai/models/beta/threads/runs/file_search_tool_call_delta.rbs b/sig/openai/models/beta/threads/runs/file_search_tool_call_delta.rbs index 563a191d..15b045e3 100644 --- a/sig/openai/models/beta/threads/runs/file_search_tool_call_delta.rbs +++ b/sig/openai/models/beta/threads/runs/file_search_tool_call_delta.rbs @@ -23,8 +23,6 @@ module OpenAI ?id: String, ?type: :file_search ) -> void - - def to_hash: -> OpenAI::Models::Beta::Threads::Runs::file_search_tool_call_delta end end end diff --git a/sig/openai/models/beta/threads/runs/function_tool_call.rbs b/sig/openai/models/beta/threads/runs/function_tool_call.rbs index 324286aa..cb76a0f6 100644 --- a/sig/openai/models/beta/threads/runs/function_tool_call.rbs +++ b/sig/openai/models/beta/threads/runs/function_tool_call.rbs @@ -6,25 +6,23 @@ module OpenAI type function_tool_call = { id: String, - function: OpenAI::Models::Beta::Threads::Runs::FunctionToolCall::Function, + function: OpenAI::Beta::Threads::Runs::FunctionToolCall::Function, type: :function } class FunctionToolCall < OpenAI::Internal::Type::BaseModel attr_accessor id: String - attr_accessor function: OpenAI::Models::Beta::Threads::Runs::FunctionToolCall::Function + attr_accessor function: OpenAI::Beta::Threads::Runs::FunctionToolCall::Function attr_accessor type: :function def initialize: ( id: String, - function: OpenAI::Models::Beta::Threads::Runs::FunctionToolCall::Function, + function: OpenAI::Beta::Threads::Runs::FunctionToolCall::Function, ?type: :function ) -> void - def to_hash: -> OpenAI::Models::Beta::Threads::Runs::function_tool_call - type function = { arguments: String, name: String, output: String? } class Function < OpenAI::Internal::Type::BaseModel @@ -39,8 +37,6 @@ module OpenAI name: String, output: String? ) -> void - - def to_hash: -> OpenAI::Models::Beta::Threads::Runs::FunctionToolCall::function end end end diff --git a/sig/openai/models/beta/threads/runs/function_tool_call_delta.rbs b/sig/openai/models/beta/threads/runs/function_tool_call_delta.rbs index 0f96b130..44cf047c 100644 --- a/sig/openai/models/beta/threads/runs/function_tool_call_delta.rbs +++ b/sig/openai/models/beta/threads/runs/function_tool_call_delta.rbs @@ -8,7 +8,7 @@ module OpenAI index: Integer, type: :function, id: String, - function: OpenAI::Models::Beta::Threads::Runs::FunctionToolCallDelta::Function + function: OpenAI::Beta::Threads::Runs::FunctionToolCallDelta::Function } class FunctionToolCallDelta < OpenAI::Internal::Type::BaseModel @@ -20,21 +20,19 @@ module OpenAI def id=: (String) -> String - attr_reader function: OpenAI::Models::Beta::Threads::Runs::FunctionToolCallDelta::Function? + attr_reader function: OpenAI::Beta::Threads::Runs::FunctionToolCallDelta::Function? def function=: ( - OpenAI::Models::Beta::Threads::Runs::FunctionToolCallDelta::Function - ) -> OpenAI::Models::Beta::Threads::Runs::FunctionToolCallDelta::Function + OpenAI::Beta::Threads::Runs::FunctionToolCallDelta::Function + ) -> OpenAI::Beta::Threads::Runs::FunctionToolCallDelta::Function def initialize: ( index: Integer, ?id: String, - ?function: OpenAI::Models::Beta::Threads::Runs::FunctionToolCallDelta::Function, + ?function: OpenAI::Beta::Threads::Runs::FunctionToolCallDelta::Function, ?type: :function ) -> void - def to_hash: -> OpenAI::Models::Beta::Threads::Runs::function_tool_call_delta - type function = { arguments: String, name: String, output: String? } class Function < OpenAI::Internal::Type::BaseModel @@ -53,8 +51,6 @@ module OpenAI ?name: String, ?output: String? ) -> void - - def to_hash: -> OpenAI::Models::Beta::Threads::Runs::FunctionToolCallDelta::function end end end diff --git a/sig/openai/models/beta/threads/runs/message_creation_step_details.rbs b/sig/openai/models/beta/threads/runs/message_creation_step_details.rbs index f7300f72..0ec0c19f 100644 --- a/sig/openai/models/beta/threads/runs/message_creation_step_details.rbs +++ b/sig/openai/models/beta/threads/runs/message_creation_step_details.rbs @@ -5,30 +5,26 @@ module OpenAI module Runs type message_creation_step_details = { - message_creation: OpenAI::Models::Beta::Threads::Runs::MessageCreationStepDetails::MessageCreation, + message_creation: OpenAI::Beta::Threads::Runs::MessageCreationStepDetails::MessageCreation, type: :message_creation } class MessageCreationStepDetails < OpenAI::Internal::Type::BaseModel - attr_accessor message_creation: OpenAI::Models::Beta::Threads::Runs::MessageCreationStepDetails::MessageCreation + attr_accessor message_creation: OpenAI::Beta::Threads::Runs::MessageCreationStepDetails::MessageCreation attr_accessor type: :message_creation def initialize: ( - message_creation: OpenAI::Models::Beta::Threads::Runs::MessageCreationStepDetails::MessageCreation, + message_creation: OpenAI::Beta::Threads::Runs::MessageCreationStepDetails::MessageCreation, ?type: :message_creation ) -> void - def to_hash: -> OpenAI::Models::Beta::Threads::Runs::message_creation_step_details - type message_creation = { message_id: String } class MessageCreation < OpenAI::Internal::Type::BaseModel attr_accessor message_id: String def initialize: (message_id: String) -> void - - def to_hash: -> OpenAI::Models::Beta::Threads::Runs::MessageCreationStepDetails::message_creation end end end diff --git a/sig/openai/models/beta/threads/runs/run_step.rbs b/sig/openai/models/beta/threads/runs/run_step.rbs index 952766af..164ba811 100644 --- a/sig/openai/models/beta/threads/runs/run_step.rbs +++ b/sig/openai/models/beta/threads/runs/run_step.rbs @@ -14,15 +14,15 @@ module OpenAI created_at: Integer, expired_at: Integer?, failed_at: Integer?, - last_error: OpenAI::Models::Beta::Threads::Runs::RunStep::LastError?, + last_error: OpenAI::Beta::Threads::Runs::RunStep::LastError?, metadata: OpenAI::Models::metadata?, object: :"thread.run.step", run_id: String, - status: OpenAI::Models::Beta::Threads::Runs::RunStep::status, - step_details: OpenAI::Models::Beta::Threads::Runs::RunStep::step_details, + status: OpenAI::Beta::Threads::Runs::RunStep::status, + step_details: OpenAI::Beta::Threads::Runs::RunStep::step_details, thread_id: String, - type: OpenAI::Models::Beta::Threads::Runs::RunStep::type_, - usage: OpenAI::Models::Beta::Threads::Runs::RunStep::Usage? + type: OpenAI::Beta::Threads::Runs::RunStep::type_, + usage: OpenAI::Beta::Threads::Runs::RunStep::Usage? } class RunStep < OpenAI::Internal::Type::BaseModel @@ -40,7 +40,7 @@ module OpenAI attr_accessor failed_at: Integer? - attr_accessor last_error: OpenAI::Models::Beta::Threads::Runs::RunStep::LastError? + attr_accessor last_error: OpenAI::Beta::Threads::Runs::RunStep::LastError? attr_accessor metadata: OpenAI::Models::metadata? @@ -48,15 +48,15 @@ module OpenAI attr_accessor run_id: String - attr_accessor status: OpenAI::Models::Beta::Threads::Runs::RunStep::status + attr_accessor status: OpenAI::Beta::Threads::Runs::RunStep::status - attr_accessor step_details: OpenAI::Models::Beta::Threads::Runs::RunStep::step_details + attr_accessor step_details: OpenAI::Beta::Threads::Runs::RunStep::step_details attr_accessor thread_id: String - attr_accessor type: OpenAI::Models::Beta::Threads::Runs::RunStep::type_ + attr_accessor type: OpenAI::Beta::Threads::Runs::RunStep::type_ - attr_accessor usage: OpenAI::Models::Beta::Threads::Runs::RunStep::Usage? + attr_accessor usage: OpenAI::Beta::Threads::Runs::RunStep::Usage? def initialize: ( id: String, @@ -66,37 +66,33 @@ module OpenAI created_at: Integer, expired_at: Integer?, failed_at: Integer?, - last_error: OpenAI::Models::Beta::Threads::Runs::RunStep::LastError?, + last_error: OpenAI::Beta::Threads::Runs::RunStep::LastError?, metadata: OpenAI::Models::metadata?, run_id: String, - status: OpenAI::Models::Beta::Threads::Runs::RunStep::status, - step_details: OpenAI::Models::Beta::Threads::Runs::RunStep::step_details, + status: OpenAI::Beta::Threads::Runs::RunStep::status, + step_details: OpenAI::Beta::Threads::Runs::RunStep::step_details, thread_id: String, - type: OpenAI::Models::Beta::Threads::Runs::RunStep::type_, - usage: OpenAI::Models::Beta::Threads::Runs::RunStep::Usage?, + type: OpenAI::Beta::Threads::Runs::RunStep::type_, + usage: OpenAI::Beta::Threads::Runs::RunStep::Usage?, ?object: :"thread.run.step" ) -> void - def to_hash: -> OpenAI::Models::Beta::Threads::Runs::run_step - type last_error = { - code: OpenAI::Models::Beta::Threads::Runs::RunStep::LastError::code, + code: OpenAI::Beta::Threads::Runs::RunStep::LastError::code, message: String } class LastError < OpenAI::Internal::Type::BaseModel - attr_accessor code: OpenAI::Models::Beta::Threads::Runs::RunStep::LastError::code + attr_accessor code: OpenAI::Beta::Threads::Runs::RunStep::LastError::code attr_accessor message: String def initialize: ( - code: OpenAI::Models::Beta::Threads::Runs::RunStep::LastError::code, + code: OpenAI::Beta::Threads::Runs::RunStep::LastError::code, message: String ) -> void - def to_hash: -> OpenAI::Models::Beta::Threads::Runs::RunStep::last_error - type code = :server_error | :rate_limit_exceeded module Code @@ -105,7 +101,7 @@ module OpenAI SERVER_ERROR: :server_error RATE_LIMIT_EXCEEDED: :rate_limit_exceeded - def self?.values: -> ::Array[OpenAI::Models::Beta::Threads::Runs::RunStep::LastError::code] + def self?.values: -> ::Array[OpenAI::Beta::Threads::Runs::RunStep::LastError::code] end end @@ -121,17 +117,17 @@ module OpenAI COMPLETED: :completed EXPIRED: :expired - def self?.values: -> ::Array[OpenAI::Models::Beta::Threads::Runs::RunStep::status] + def self?.values: -> ::Array[OpenAI::Beta::Threads::Runs::RunStep::status] end type step_details = - OpenAI::Models::Beta::Threads::Runs::MessageCreationStepDetails - | OpenAI::Models::Beta::Threads::Runs::ToolCallsStepDetails + OpenAI::Beta::Threads::Runs::MessageCreationStepDetails + | OpenAI::Beta::Threads::Runs::ToolCallsStepDetails module StepDetails extend OpenAI::Internal::Type::Union - def self?.variants: -> [OpenAI::Models::Beta::Threads::Runs::MessageCreationStepDetails, OpenAI::Models::Beta::Threads::Runs::ToolCallsStepDetails] + def self?.variants: -> ::Array[OpenAI::Beta::Threads::Runs::RunStep::step_details] end type type_ = :message_creation | :tool_calls @@ -142,7 +138,7 @@ module OpenAI MESSAGE_CREATION: :message_creation TOOL_CALLS: :tool_calls - def self?.values: -> ::Array[OpenAI::Models::Beta::Threads::Runs::RunStep::type_] + def self?.values: -> ::Array[OpenAI::Beta::Threads::Runs::RunStep::type_] end type usage = @@ -164,8 +160,6 @@ module OpenAI prompt_tokens: Integer, total_tokens: Integer ) -> void - - def to_hash: -> OpenAI::Models::Beta::Threads::Runs::RunStep::usage end end end diff --git a/sig/openai/models/beta/threads/runs/run_step_delta.rbs b/sig/openai/models/beta/threads/runs/run_step_delta.rbs index 1f3143ee..cd977802 100644 --- a/sig/openai/models/beta/threads/runs/run_step_delta.rbs +++ b/sig/openai/models/beta/threads/runs/run_step_delta.rbs @@ -7,30 +7,28 @@ module OpenAI module Runs type run_step_delta = { - step_details: OpenAI::Models::Beta::Threads::Runs::RunStepDelta::step_details + step_details: OpenAI::Beta::Threads::Runs::RunStepDelta::step_details } class RunStepDelta < OpenAI::Internal::Type::BaseModel - attr_reader step_details: OpenAI::Models::Beta::Threads::Runs::RunStepDelta::step_details? + attr_reader step_details: OpenAI::Beta::Threads::Runs::RunStepDelta::step_details? def step_details=: ( - OpenAI::Models::Beta::Threads::Runs::RunStepDelta::step_details - ) -> OpenAI::Models::Beta::Threads::Runs::RunStepDelta::step_details + OpenAI::Beta::Threads::Runs::RunStepDelta::step_details + ) -> OpenAI::Beta::Threads::Runs::RunStepDelta::step_details def initialize: ( - ?step_details: OpenAI::Models::Beta::Threads::Runs::RunStepDelta::step_details + ?step_details: OpenAI::Beta::Threads::Runs::RunStepDelta::step_details ) -> void - def to_hash: -> OpenAI::Models::Beta::Threads::Runs::run_step_delta - type step_details = - OpenAI::Models::Beta::Threads::Runs::RunStepDeltaMessageDelta - | OpenAI::Models::Beta::Threads::Runs::ToolCallDeltaObject + OpenAI::Beta::Threads::Runs::RunStepDeltaMessageDelta + | OpenAI::Beta::Threads::Runs::ToolCallDeltaObject module StepDetails extend OpenAI::Internal::Type::Union - def self?.variants: -> [OpenAI::Models::Beta::Threads::Runs::RunStepDeltaMessageDelta, OpenAI::Models::Beta::Threads::Runs::ToolCallDeltaObject] + def self?.variants: -> ::Array[OpenAI::Beta::Threads::Runs::RunStepDelta::step_details] end end end diff --git a/sig/openai/models/beta/threads/runs/run_step_delta_event.rbs b/sig/openai/models/beta/threads/runs/run_step_delta_event.rbs index 0300ea33..a0e9f5e8 100644 --- a/sig/openai/models/beta/threads/runs/run_step_delta_event.rbs +++ b/sig/openai/models/beta/threads/runs/run_step_delta_event.rbs @@ -8,24 +8,22 @@ module OpenAI type run_step_delta_event = { id: String, - delta: OpenAI::Models::Beta::Threads::Runs::RunStepDelta, + delta: OpenAI::Beta::Threads::Runs::RunStepDelta, object: :"thread.run.step.delta" } class RunStepDeltaEvent < OpenAI::Internal::Type::BaseModel attr_accessor id: String - attr_accessor delta: OpenAI::Models::Beta::Threads::Runs::RunStepDelta + attr_accessor delta: OpenAI::Beta::Threads::Runs::RunStepDelta attr_accessor object: :"thread.run.step.delta" def initialize: ( id: String, - delta: OpenAI::Models::Beta::Threads::Runs::RunStepDelta, + delta: OpenAI::Beta::Threads::Runs::RunStepDelta, ?object: :"thread.run.step.delta" ) -> void - - def to_hash: -> OpenAI::Models::Beta::Threads::Runs::run_step_delta_event end end end diff --git a/sig/openai/models/beta/threads/runs/run_step_delta_message_delta.rbs b/sig/openai/models/beta/threads/runs/run_step_delta_message_delta.rbs index b397b858..dae61d3d 100644 --- a/sig/openai/models/beta/threads/runs/run_step_delta_message_delta.rbs +++ b/sig/openai/models/beta/threads/runs/run_step_delta_message_delta.rbs @@ -8,25 +8,23 @@ module OpenAI type run_step_delta_message_delta = { type: :message_creation, - message_creation: OpenAI::Models::Beta::Threads::Runs::RunStepDeltaMessageDelta::MessageCreation + message_creation: OpenAI::Beta::Threads::Runs::RunStepDeltaMessageDelta::MessageCreation } class RunStepDeltaMessageDelta < OpenAI::Internal::Type::BaseModel attr_accessor type: :message_creation - attr_reader message_creation: OpenAI::Models::Beta::Threads::Runs::RunStepDeltaMessageDelta::MessageCreation? + attr_reader message_creation: OpenAI::Beta::Threads::Runs::RunStepDeltaMessageDelta::MessageCreation? def message_creation=: ( - OpenAI::Models::Beta::Threads::Runs::RunStepDeltaMessageDelta::MessageCreation - ) -> OpenAI::Models::Beta::Threads::Runs::RunStepDeltaMessageDelta::MessageCreation + OpenAI::Beta::Threads::Runs::RunStepDeltaMessageDelta::MessageCreation + ) -> OpenAI::Beta::Threads::Runs::RunStepDeltaMessageDelta::MessageCreation def initialize: ( - ?message_creation: OpenAI::Models::Beta::Threads::Runs::RunStepDeltaMessageDelta::MessageCreation, + ?message_creation: OpenAI::Beta::Threads::Runs::RunStepDeltaMessageDelta::MessageCreation, ?type: :message_creation ) -> void - def to_hash: -> OpenAI::Models::Beta::Threads::Runs::run_step_delta_message_delta - type message_creation = { message_id: String } class MessageCreation < OpenAI::Internal::Type::BaseModel @@ -35,8 +33,6 @@ module OpenAI def message_id=: (String) -> String def initialize: (?message_id: String) -> void - - def to_hash: -> OpenAI::Models::Beta::Threads::Runs::RunStepDeltaMessageDelta::message_creation end end end diff --git a/sig/openai/models/beta/threads/runs/step_list_params.rbs b/sig/openai/models/beta/threads/runs/step_list_params.rbs index 5fe683ff..786d087f 100644 --- a/sig/openai/models/beta/threads/runs/step_list_params.rbs +++ b/sig/openai/models/beta/threads/runs/step_list_params.rbs @@ -54,8 +54,6 @@ module OpenAI ?request_options: OpenAI::request_opts ) -> void - def to_hash: -> OpenAI::Models::Beta::Threads::Runs::step_list_params - type order = :asc | :desc module Order diff --git a/sig/openai/models/beta/threads/runs/step_retrieve_params.rbs b/sig/openai/models/beta/threads/runs/step_retrieve_params.rbs index c759864c..414a4b61 100644 --- a/sig/openai/models/beta/threads/runs/step_retrieve_params.rbs +++ b/sig/openai/models/beta/threads/runs/step_retrieve_params.rbs @@ -31,8 +31,6 @@ module OpenAI ?include: ::Array[OpenAI::Models::Beta::Threads::Runs::run_step_include], ?request_options: OpenAI::request_opts ) -> void - - def to_hash: -> OpenAI::Models::Beta::Threads::Runs::step_retrieve_params end end end diff --git a/sig/openai/models/beta/threads/runs/tool_call.rbs b/sig/openai/models/beta/threads/runs/tool_call.rbs index f3604833..4337520d 100644 --- a/sig/openai/models/beta/threads/runs/tool_call.rbs +++ b/sig/openai/models/beta/threads/runs/tool_call.rbs @@ -4,14 +4,14 @@ module OpenAI module Threads module Runs type tool_call = - OpenAI::Models::Beta::Threads::Runs::CodeInterpreterToolCall - | OpenAI::Models::Beta::Threads::Runs::FileSearchToolCall - | OpenAI::Models::Beta::Threads::Runs::FunctionToolCall + OpenAI::Beta::Threads::Runs::CodeInterpreterToolCall + | OpenAI::Beta::Threads::Runs::FileSearchToolCall + | OpenAI::Beta::Threads::Runs::FunctionToolCall module ToolCall extend OpenAI::Internal::Type::Union - def self?.variants: -> [OpenAI::Models::Beta::Threads::Runs::CodeInterpreterToolCall, OpenAI::Models::Beta::Threads::Runs::FileSearchToolCall, OpenAI::Models::Beta::Threads::Runs::FunctionToolCall] + def self?.variants: -> ::Array[OpenAI::Models::Beta::Threads::Runs::tool_call] end end end diff --git a/sig/openai/models/beta/threads/runs/tool_call_delta.rbs b/sig/openai/models/beta/threads/runs/tool_call_delta.rbs index f5159374..9ab47252 100644 --- a/sig/openai/models/beta/threads/runs/tool_call_delta.rbs +++ b/sig/openai/models/beta/threads/runs/tool_call_delta.rbs @@ -4,14 +4,14 @@ module OpenAI module Threads module Runs type tool_call_delta = - OpenAI::Models::Beta::Threads::Runs::CodeInterpreterToolCallDelta - | OpenAI::Models::Beta::Threads::Runs::FileSearchToolCallDelta - | OpenAI::Models::Beta::Threads::Runs::FunctionToolCallDelta + OpenAI::Beta::Threads::Runs::CodeInterpreterToolCallDelta + | OpenAI::Beta::Threads::Runs::FileSearchToolCallDelta + | OpenAI::Beta::Threads::Runs::FunctionToolCallDelta module ToolCallDelta extend OpenAI::Internal::Type::Union - def self?.variants: -> [OpenAI::Models::Beta::Threads::Runs::CodeInterpreterToolCallDelta, OpenAI::Models::Beta::Threads::Runs::FileSearchToolCallDelta, OpenAI::Models::Beta::Threads::Runs::FunctionToolCallDelta] + def self?.variants: -> ::Array[OpenAI::Models::Beta::Threads::Runs::tool_call_delta] end end end diff --git a/sig/openai/models/beta/threads/runs/tool_call_delta_object.rbs b/sig/openai/models/beta/threads/runs/tool_call_delta_object.rbs index f693e116..2b6aefef 100644 --- a/sig/openai/models/beta/threads/runs/tool_call_delta_object.rbs +++ b/sig/openai/models/beta/threads/runs/tool_call_delta_object.rbs @@ -22,8 +22,6 @@ module OpenAI ?tool_calls: ::Array[OpenAI::Models::Beta::Threads::Runs::tool_call_delta], ?type: :tool_calls ) -> void - - def to_hash: -> OpenAI::Models::Beta::Threads::Runs::tool_call_delta_object end end end diff --git a/sig/openai/models/beta/threads/runs/tool_calls_step_details.rbs b/sig/openai/models/beta/threads/runs/tool_calls_step_details.rbs index c08bece5..b5aaf17e 100644 --- a/sig/openai/models/beta/threads/runs/tool_calls_step_details.rbs +++ b/sig/openai/models/beta/threads/runs/tool_calls_step_details.rbs @@ -18,8 +18,6 @@ module OpenAI tool_calls: ::Array[OpenAI::Models::Beta::Threads::Runs::tool_call], ?type: :tool_calls ) -> void - - def to_hash: -> OpenAI::Models::Beta::Threads::Runs::tool_calls_step_details end end end diff --git a/sig/openai/models/beta/threads/text.rbs b/sig/openai/models/beta/threads/text.rbs index a4aa3141..a6585bbd 100644 --- a/sig/openai/models/beta/threads/text.rbs +++ b/sig/openai/models/beta/threads/text.rbs @@ -17,8 +17,6 @@ module OpenAI annotations: ::Array[OpenAI::Models::Beta::Threads::annotation], value: String ) -> void - - def to_hash: -> OpenAI::Models::Beta::Threads::text end end end diff --git a/sig/openai/models/beta/threads/text_content_block.rbs b/sig/openai/models/beta/threads/text_content_block.rbs index 2bcf7f2a..5192465f 100644 --- a/sig/openai/models/beta/threads/text_content_block.rbs +++ b/sig/openai/models/beta/threads/text_content_block.rbs @@ -3,19 +3,17 @@ module OpenAI module Beta module Threads type text_content_block = - { text: OpenAI::Models::Beta::Threads::Text, type: :text } + { text: OpenAI::Beta::Threads::Text, type: :text } class TextContentBlock < OpenAI::Internal::Type::BaseModel - attr_accessor text: OpenAI::Models::Beta::Threads::Text + attr_accessor text: OpenAI::Beta::Threads::Text attr_accessor type: :text def initialize: ( - text: OpenAI::Models::Beta::Threads::Text, + text: OpenAI::Beta::Threads::Text, ?type: :text ) -> void - - def to_hash: -> OpenAI::Models::Beta::Threads::text_content_block end end end diff --git a/sig/openai/models/beta/threads/text_content_block_param.rbs b/sig/openai/models/beta/threads/text_content_block_param.rbs index 291be17d..7b4be77b 100644 --- a/sig/openai/models/beta/threads/text_content_block_param.rbs +++ b/sig/openai/models/beta/threads/text_content_block_param.rbs @@ -10,8 +10,6 @@ module OpenAI attr_accessor type: :text def initialize: (text: String, ?type: :text) -> void - - def to_hash: -> OpenAI::Models::Beta::Threads::text_content_block_param end end end diff --git a/sig/openai/models/beta/threads/text_delta.rbs b/sig/openai/models/beta/threads/text_delta.rbs index 0b5ac945..9bad2d71 100644 --- a/sig/openai/models/beta/threads/text_delta.rbs +++ b/sig/openai/models/beta/threads/text_delta.rbs @@ -23,8 +23,6 @@ module OpenAI ?annotations: ::Array[OpenAI::Models::Beta::Threads::annotation_delta], ?value: String ) -> void - - def to_hash: -> OpenAI::Models::Beta::Threads::text_delta end end end diff --git a/sig/openai/models/beta/threads/text_delta_block.rbs b/sig/openai/models/beta/threads/text_delta_block.rbs index 8d70d40b..261d3fc6 100644 --- a/sig/openai/models/beta/threads/text_delta_block.rbs +++ b/sig/openai/models/beta/threads/text_delta_block.rbs @@ -6,7 +6,7 @@ module OpenAI { index: Integer, type: :text, - text: OpenAI::Models::Beta::Threads::TextDelta + text: OpenAI::Beta::Threads::TextDelta } class TextDeltaBlock < OpenAI::Internal::Type::BaseModel @@ -14,19 +14,17 @@ module OpenAI attr_accessor type: :text - attr_reader text: OpenAI::Models::Beta::Threads::TextDelta? + attr_reader text: OpenAI::Beta::Threads::TextDelta? def text=: ( - OpenAI::Models::Beta::Threads::TextDelta - ) -> OpenAI::Models::Beta::Threads::TextDelta + OpenAI::Beta::Threads::TextDelta + ) -> OpenAI::Beta::Threads::TextDelta def initialize: ( index: Integer, - ?text: OpenAI::Models::Beta::Threads::TextDelta, + ?text: OpenAI::Beta::Threads::TextDelta, ?type: :text ) -> void - - def to_hash: -> OpenAI::Models::Beta::Threads::text_delta_block end end end diff --git a/sig/openai/models/chat/chat_completion.rbs b/sig/openai/models/chat/chat_completion.rbs index 8f3b42e4..b717a8ba 100644 --- a/sig/openai/models/chat/chat_completion.rbs +++ b/sig/openai/models/chat/chat_completion.rbs @@ -6,19 +6,19 @@ module OpenAI type chat_completion = { id: String, - choices: ::Array[OpenAI::Models::Chat::ChatCompletion::Choice], + choices: ::Array[OpenAI::Chat::ChatCompletion::Choice], created: Integer, model: String, object: :"chat.completion", - service_tier: OpenAI::Models::Chat::ChatCompletion::service_tier?, + service_tier: OpenAI::Chat::ChatCompletion::service_tier?, system_fingerprint: String, - usage: OpenAI::Models::CompletionUsage + usage: OpenAI::CompletionUsage } class ChatCompletion < OpenAI::Internal::Type::BaseModel attr_accessor id: String - attr_accessor choices: ::Array[OpenAI::Models::Chat::ChatCompletion::Choice] + attr_accessor choices: ::Array[OpenAI::Chat::ChatCompletion::Choice] attr_accessor created: Integer @@ -26,57 +26,51 @@ module OpenAI attr_accessor object: :"chat.completion" - attr_accessor service_tier: OpenAI::Models::Chat::ChatCompletion::service_tier? + attr_accessor service_tier: OpenAI::Chat::ChatCompletion::service_tier? attr_reader system_fingerprint: String? def system_fingerprint=: (String) -> String - attr_reader usage: OpenAI::Models::CompletionUsage? + attr_reader usage: OpenAI::CompletionUsage? - def usage=: ( - OpenAI::Models::CompletionUsage - ) -> OpenAI::Models::CompletionUsage + def usage=: (OpenAI::CompletionUsage) -> OpenAI::CompletionUsage def initialize: ( id: String, - choices: ::Array[OpenAI::Models::Chat::ChatCompletion::Choice], + choices: ::Array[OpenAI::Chat::ChatCompletion::Choice], created: Integer, model: String, - ?service_tier: OpenAI::Models::Chat::ChatCompletion::service_tier?, + ?service_tier: OpenAI::Chat::ChatCompletion::service_tier?, ?system_fingerprint: String, - ?usage: OpenAI::Models::CompletionUsage, + ?usage: OpenAI::CompletionUsage, ?object: :"chat.completion" ) -> void - def to_hash: -> OpenAI::Models::Chat::chat_completion - type choice = { - finish_reason: OpenAI::Models::Chat::ChatCompletion::Choice::finish_reason, + finish_reason: OpenAI::Chat::ChatCompletion::Choice::finish_reason, index: Integer, - logprobs: OpenAI::Models::Chat::ChatCompletion::Choice::Logprobs?, - message: OpenAI::Models::Chat::ChatCompletionMessage + logprobs: OpenAI::Chat::ChatCompletion::Choice::Logprobs?, + message: OpenAI::Chat::ChatCompletionMessage } class Choice < OpenAI::Internal::Type::BaseModel - attr_accessor finish_reason: OpenAI::Models::Chat::ChatCompletion::Choice::finish_reason + attr_accessor finish_reason: OpenAI::Chat::ChatCompletion::Choice::finish_reason attr_accessor index: Integer - attr_accessor logprobs: OpenAI::Models::Chat::ChatCompletion::Choice::Logprobs? + attr_accessor logprobs: OpenAI::Chat::ChatCompletion::Choice::Logprobs? - attr_accessor message: OpenAI::Models::Chat::ChatCompletionMessage + attr_accessor message: OpenAI::Chat::ChatCompletionMessage def initialize: ( - finish_reason: OpenAI::Models::Chat::ChatCompletion::Choice::finish_reason, + finish_reason: OpenAI::Chat::ChatCompletion::Choice::finish_reason, index: Integer, - logprobs: OpenAI::Models::Chat::ChatCompletion::Choice::Logprobs?, - message: OpenAI::Models::Chat::ChatCompletionMessage + logprobs: OpenAI::Chat::ChatCompletion::Choice::Logprobs?, + message: OpenAI::Chat::ChatCompletionMessage ) -> void - def to_hash: -> OpenAI::Models::Chat::ChatCompletion::choice - type finish_reason = :stop | :length | :tool_calls | :content_filter | :function_call @@ -89,26 +83,24 @@ module OpenAI CONTENT_FILTER: :content_filter FUNCTION_CALL: :function_call - def self?.values: -> ::Array[OpenAI::Models::Chat::ChatCompletion::Choice::finish_reason] + def self?.values: -> ::Array[OpenAI::Chat::ChatCompletion::Choice::finish_reason] end type logprobs = { - content: ::Array[OpenAI::Models::Chat::ChatCompletionTokenLogprob]?, - refusal: ::Array[OpenAI::Models::Chat::ChatCompletionTokenLogprob]? + content: ::Array[OpenAI::Chat::ChatCompletionTokenLogprob]?, + refusal: ::Array[OpenAI::Chat::ChatCompletionTokenLogprob]? } class Logprobs < OpenAI::Internal::Type::BaseModel - attr_accessor content: ::Array[OpenAI::Models::Chat::ChatCompletionTokenLogprob]? + attr_accessor content: ::Array[OpenAI::Chat::ChatCompletionTokenLogprob]? - attr_accessor refusal: ::Array[OpenAI::Models::Chat::ChatCompletionTokenLogprob]? + attr_accessor refusal: ::Array[OpenAI::Chat::ChatCompletionTokenLogprob]? def initialize: ( - content: ::Array[OpenAI::Models::Chat::ChatCompletionTokenLogprob]?, - refusal: ::Array[OpenAI::Models::Chat::ChatCompletionTokenLogprob]? + content: ::Array[OpenAI::Chat::ChatCompletionTokenLogprob]?, + refusal: ::Array[OpenAI::Chat::ChatCompletionTokenLogprob]? ) -> void - - def to_hash: -> OpenAI::Models::Chat::ChatCompletion::Choice::logprobs end end @@ -121,7 +113,7 @@ module OpenAI DEFAULT: :default FLEX: :flex - def self?.values: -> ::Array[OpenAI::Models::Chat::ChatCompletion::service_tier] + def self?.values: -> ::Array[OpenAI::Chat::ChatCompletion::service_tier] end end end diff --git a/sig/openai/models/chat/chat_completion_assistant_message_param.rbs b/sig/openai/models/chat/chat_completion_assistant_message_param.rbs index 6016de8d..bf03ff8c 100644 --- a/sig/openai/models/chat/chat_completion_assistant_message_param.rbs +++ b/sig/openai/models/chat/chat_completion_assistant_message_param.rbs @@ -6,22 +6,22 @@ module OpenAI type chat_completion_assistant_message_param = { role: :assistant, - audio: OpenAI::Models::Chat::ChatCompletionAssistantMessageParam::Audio?, - content: OpenAI::Models::Chat::ChatCompletionAssistantMessageParam::content?, - function_call: OpenAI::Models::Chat::ChatCompletionAssistantMessageParam::FunctionCall?, + audio: OpenAI::Chat::ChatCompletionAssistantMessageParam::Audio?, + content: OpenAI::Chat::ChatCompletionAssistantMessageParam::content?, + function_call: OpenAI::Chat::ChatCompletionAssistantMessageParam::FunctionCall?, name: String, refusal: String?, - tool_calls: ::Array[OpenAI::Models::Chat::ChatCompletionMessageToolCall] + tool_calls: ::Array[OpenAI::Chat::ChatCompletionMessageToolCall] } class ChatCompletionAssistantMessageParam < OpenAI::Internal::Type::BaseModel attr_accessor role: :assistant - attr_accessor audio: OpenAI::Models::Chat::ChatCompletionAssistantMessageParam::Audio? + attr_accessor audio: OpenAI::Chat::ChatCompletionAssistantMessageParam::Audio? - attr_accessor content: OpenAI::Models::Chat::ChatCompletionAssistantMessageParam::content? + attr_accessor content: OpenAI::Chat::ChatCompletionAssistantMessageParam::content? - attr_accessor function_call: OpenAI::Models::Chat::ChatCompletionAssistantMessageParam::FunctionCall? + attr_accessor function_call: OpenAI::Chat::ChatCompletionAssistantMessageParam::FunctionCall? attr_reader name: String? @@ -29,52 +29,48 @@ module OpenAI attr_accessor refusal: String? - attr_reader tool_calls: ::Array[OpenAI::Models::Chat::ChatCompletionMessageToolCall]? + attr_reader tool_calls: ::Array[OpenAI::Chat::ChatCompletionMessageToolCall]? def tool_calls=: ( - ::Array[OpenAI::Models::Chat::ChatCompletionMessageToolCall] - ) -> ::Array[OpenAI::Models::Chat::ChatCompletionMessageToolCall] + ::Array[OpenAI::Chat::ChatCompletionMessageToolCall] + ) -> ::Array[OpenAI::Chat::ChatCompletionMessageToolCall] def initialize: ( - ?audio: OpenAI::Models::Chat::ChatCompletionAssistantMessageParam::Audio?, - ?content: OpenAI::Models::Chat::ChatCompletionAssistantMessageParam::content?, - ?function_call: OpenAI::Models::Chat::ChatCompletionAssistantMessageParam::FunctionCall?, + ?audio: OpenAI::Chat::ChatCompletionAssistantMessageParam::Audio?, + ?content: OpenAI::Chat::ChatCompletionAssistantMessageParam::content?, + ?function_call: OpenAI::Chat::ChatCompletionAssistantMessageParam::FunctionCall?, ?name: String, ?refusal: String?, - ?tool_calls: ::Array[OpenAI::Models::Chat::ChatCompletionMessageToolCall], + ?tool_calls: ::Array[OpenAI::Chat::ChatCompletionMessageToolCall], ?role: :assistant ) -> void - def to_hash: -> OpenAI::Models::Chat::chat_completion_assistant_message_param - type audio = { id: String } class Audio < OpenAI::Internal::Type::BaseModel attr_accessor id: String def initialize: (id: String) -> void - - def to_hash: -> OpenAI::Models::Chat::ChatCompletionAssistantMessageParam::audio end type content = String - | ::Array[OpenAI::Models::Chat::ChatCompletionAssistantMessageParam::Content::array_of_content_part] + | ::Array[OpenAI::Chat::ChatCompletionAssistantMessageParam::Content::array_of_content_part] module Content extend OpenAI::Internal::Type::Union type array_of_content_part = - OpenAI::Models::Chat::ChatCompletionContentPartText - | OpenAI::Models::Chat::ChatCompletionContentPartRefusal + OpenAI::Chat::ChatCompletionContentPartText + | OpenAI::Chat::ChatCompletionContentPartRefusal module ArrayOfContentPart extend OpenAI::Internal::Type::Union - def self?.variants: -> [OpenAI::Models::Chat::ChatCompletionContentPartText, OpenAI::Models::Chat::ChatCompletionContentPartRefusal] + def self?.variants: -> ::Array[OpenAI::Chat::ChatCompletionAssistantMessageParam::Content::array_of_content_part] end - def self?.variants: -> [String, ::Array[OpenAI::Models::Chat::ChatCompletionAssistantMessageParam::Content::array_of_content_part]] + def self?.variants: -> ::Array[OpenAI::Chat::ChatCompletionAssistantMessageParam::content] ArrayOfContentPartArray: OpenAI::Internal::Type::Converter end @@ -87,8 +83,6 @@ module OpenAI attr_accessor name: String def initialize: (arguments: String, name: String) -> void - - def to_hash: -> OpenAI::Models::Chat::ChatCompletionAssistantMessageParam::function_call end end end diff --git a/sig/openai/models/chat/chat_completion_audio.rbs b/sig/openai/models/chat/chat_completion_audio.rbs index 18d4ba70..596be96d 100644 --- a/sig/openai/models/chat/chat_completion_audio.rbs +++ b/sig/openai/models/chat/chat_completion_audio.rbs @@ -21,8 +21,6 @@ module OpenAI expires_at: Integer, transcript: String ) -> void - - def to_hash: -> OpenAI::Models::Chat::chat_completion_audio end end end diff --git a/sig/openai/models/chat/chat_completion_audio_param.rbs b/sig/openai/models/chat/chat_completion_audio_param.rbs index fb20281b..b326faf7 100644 --- a/sig/openai/models/chat/chat_completion_audio_param.rbs +++ b/sig/openai/models/chat/chat_completion_audio_param.rbs @@ -5,22 +5,20 @@ module OpenAI module Chat type chat_completion_audio_param = { - format_: OpenAI::Models::Chat::ChatCompletionAudioParam::format_, - voice: OpenAI::Models::Chat::ChatCompletionAudioParam::voice + format_: OpenAI::Chat::ChatCompletionAudioParam::format_, + voice: OpenAI::Chat::ChatCompletionAudioParam::voice } class ChatCompletionAudioParam < OpenAI::Internal::Type::BaseModel - attr_accessor format_: OpenAI::Models::Chat::ChatCompletionAudioParam::format_ + attr_accessor format_: OpenAI::Chat::ChatCompletionAudioParam::format_ - attr_accessor voice: OpenAI::Models::Chat::ChatCompletionAudioParam::voice + attr_accessor voice: OpenAI::Chat::ChatCompletionAudioParam::voice def initialize: ( - format_: OpenAI::Models::Chat::ChatCompletionAudioParam::format_, - voice: OpenAI::Models::Chat::ChatCompletionAudioParam::voice + format_: OpenAI::Chat::ChatCompletionAudioParam::format_, + voice: OpenAI::Chat::ChatCompletionAudioParam::voice ) -> void - def to_hash: -> OpenAI::Models::Chat::chat_completion_audio_param - type format_ = :wav | :aac | :mp3 | :flac | :opus | :pcm16 module Format @@ -33,7 +31,7 @@ module OpenAI OPUS: :opus PCM16: :pcm16 - def self?.values: -> ::Array[OpenAI::Models::Chat::ChatCompletionAudioParam::format_] + def self?.values: -> ::Array[OpenAI::Chat::ChatCompletionAudioParam::format_] end type voice = @@ -53,17 +51,7 @@ module OpenAI module Voice extend OpenAI::Internal::Type::Union - def self?.variants: -> [String, (:alloy - | :ash - | :ballad - | :coral - | :echo - | :fable - | :onyx - | :nova - | :sage - | :shimmer - | :verse)] + def self?.variants: -> ::Array[OpenAI::Chat::ChatCompletionAudioParam::voice] ALLOY: :alloy ASH: :ash diff --git a/sig/openai/models/chat/chat_completion_chunk.rbs b/sig/openai/models/chat/chat_completion_chunk.rbs index aabd304a..2a451ed9 100644 --- a/sig/openai/models/chat/chat_completion_chunk.rbs +++ b/sig/openai/models/chat/chat_completion_chunk.rbs @@ -6,19 +6,19 @@ module OpenAI type chat_completion_chunk = { id: String, - choices: ::Array[OpenAI::Models::Chat::ChatCompletionChunk::Choice], + choices: ::Array[OpenAI::Chat::ChatCompletionChunk::Choice], created: Integer, model: String, object: :"chat.completion.chunk", - service_tier: OpenAI::Models::Chat::ChatCompletionChunk::service_tier?, + service_tier: OpenAI::Chat::ChatCompletionChunk::service_tier?, system_fingerprint: String, - usage: OpenAI::Models::CompletionUsage? + usage: OpenAI::CompletionUsage? } class ChatCompletionChunk < OpenAI::Internal::Type::BaseModel attr_accessor id: String - attr_accessor choices: ::Array[OpenAI::Models::Chat::ChatCompletionChunk::Choice] + attr_accessor choices: ::Array[OpenAI::Chat::ChatCompletionChunk::Choice] attr_accessor created: Integer @@ -26,95 +26,89 @@ module OpenAI attr_accessor object: :"chat.completion.chunk" - attr_accessor service_tier: OpenAI::Models::Chat::ChatCompletionChunk::service_tier? + attr_accessor service_tier: OpenAI::Chat::ChatCompletionChunk::service_tier? attr_reader system_fingerprint: String? def system_fingerprint=: (String) -> String - attr_accessor usage: OpenAI::Models::CompletionUsage? + attr_accessor usage: OpenAI::CompletionUsage? def initialize: ( id: String, - choices: ::Array[OpenAI::Models::Chat::ChatCompletionChunk::Choice], + choices: ::Array[OpenAI::Chat::ChatCompletionChunk::Choice], created: Integer, model: String, - ?service_tier: OpenAI::Models::Chat::ChatCompletionChunk::service_tier?, + ?service_tier: OpenAI::Chat::ChatCompletionChunk::service_tier?, ?system_fingerprint: String, - ?usage: OpenAI::Models::CompletionUsage?, + ?usage: OpenAI::CompletionUsage?, ?object: :"chat.completion.chunk" ) -> void - def to_hash: -> OpenAI::Models::Chat::chat_completion_chunk - type choice = { - delta: OpenAI::Models::Chat::ChatCompletionChunk::Choice::Delta, - finish_reason: OpenAI::Models::Chat::ChatCompletionChunk::Choice::finish_reason?, + delta: OpenAI::Chat::ChatCompletionChunk::Choice::Delta, + finish_reason: OpenAI::Chat::ChatCompletionChunk::Choice::finish_reason?, index: Integer, - logprobs: OpenAI::Models::Chat::ChatCompletionChunk::Choice::Logprobs? + logprobs: OpenAI::Chat::ChatCompletionChunk::Choice::Logprobs? } class Choice < OpenAI::Internal::Type::BaseModel - attr_accessor delta: OpenAI::Models::Chat::ChatCompletionChunk::Choice::Delta + attr_accessor delta: OpenAI::Chat::ChatCompletionChunk::Choice::Delta - attr_accessor finish_reason: OpenAI::Models::Chat::ChatCompletionChunk::Choice::finish_reason? + attr_accessor finish_reason: OpenAI::Chat::ChatCompletionChunk::Choice::finish_reason? attr_accessor index: Integer - attr_accessor logprobs: OpenAI::Models::Chat::ChatCompletionChunk::Choice::Logprobs? + attr_accessor logprobs: OpenAI::Chat::ChatCompletionChunk::Choice::Logprobs? def initialize: ( - delta: OpenAI::Models::Chat::ChatCompletionChunk::Choice::Delta, - finish_reason: OpenAI::Models::Chat::ChatCompletionChunk::Choice::finish_reason?, + delta: OpenAI::Chat::ChatCompletionChunk::Choice::Delta, + finish_reason: OpenAI::Chat::ChatCompletionChunk::Choice::finish_reason?, index: Integer, - ?logprobs: OpenAI::Models::Chat::ChatCompletionChunk::Choice::Logprobs? + ?logprobs: OpenAI::Chat::ChatCompletionChunk::Choice::Logprobs? ) -> void - def to_hash: -> OpenAI::Models::Chat::ChatCompletionChunk::choice - type delta = { content: String?, - function_call: OpenAI::Models::Chat::ChatCompletionChunk::Choice::Delta::FunctionCall, + function_call: OpenAI::Chat::ChatCompletionChunk::Choice::Delta::FunctionCall, refusal: String?, - role: OpenAI::Models::Chat::ChatCompletionChunk::Choice::Delta::role, - tool_calls: ::Array[OpenAI::Models::Chat::ChatCompletionChunk::Choice::Delta::ToolCall] + role: OpenAI::Chat::ChatCompletionChunk::Choice::Delta::role, + tool_calls: ::Array[OpenAI::Chat::ChatCompletionChunk::Choice::Delta::ToolCall] } class Delta < OpenAI::Internal::Type::BaseModel attr_accessor content: String? - attr_reader function_call: OpenAI::Models::Chat::ChatCompletionChunk::Choice::Delta::FunctionCall? + attr_reader function_call: OpenAI::Chat::ChatCompletionChunk::Choice::Delta::FunctionCall? def function_call=: ( - OpenAI::Models::Chat::ChatCompletionChunk::Choice::Delta::FunctionCall - ) -> OpenAI::Models::Chat::ChatCompletionChunk::Choice::Delta::FunctionCall + OpenAI::Chat::ChatCompletionChunk::Choice::Delta::FunctionCall + ) -> OpenAI::Chat::ChatCompletionChunk::Choice::Delta::FunctionCall attr_accessor refusal: String? - attr_reader role: OpenAI::Models::Chat::ChatCompletionChunk::Choice::Delta::role? + attr_reader role: OpenAI::Chat::ChatCompletionChunk::Choice::Delta::role? def role=: ( - OpenAI::Models::Chat::ChatCompletionChunk::Choice::Delta::role - ) -> OpenAI::Models::Chat::ChatCompletionChunk::Choice::Delta::role + OpenAI::Chat::ChatCompletionChunk::Choice::Delta::role + ) -> OpenAI::Chat::ChatCompletionChunk::Choice::Delta::role - attr_reader tool_calls: ::Array[OpenAI::Models::Chat::ChatCompletionChunk::Choice::Delta::ToolCall]? + attr_reader tool_calls: ::Array[OpenAI::Chat::ChatCompletionChunk::Choice::Delta::ToolCall]? def tool_calls=: ( - ::Array[OpenAI::Models::Chat::ChatCompletionChunk::Choice::Delta::ToolCall] - ) -> ::Array[OpenAI::Models::Chat::ChatCompletionChunk::Choice::Delta::ToolCall] + ::Array[OpenAI::Chat::ChatCompletionChunk::Choice::Delta::ToolCall] + ) -> ::Array[OpenAI::Chat::ChatCompletionChunk::Choice::Delta::ToolCall] def initialize: ( ?content: String?, - ?function_call: OpenAI::Models::Chat::ChatCompletionChunk::Choice::Delta::FunctionCall, + ?function_call: OpenAI::Chat::ChatCompletionChunk::Choice::Delta::FunctionCall, ?refusal: String?, - ?role: OpenAI::Models::Chat::ChatCompletionChunk::Choice::Delta::role, - ?tool_calls: ::Array[OpenAI::Models::Chat::ChatCompletionChunk::Choice::Delta::ToolCall] + ?role: OpenAI::Chat::ChatCompletionChunk::Choice::Delta::role, + ?tool_calls: ::Array[OpenAI::Chat::ChatCompletionChunk::Choice::Delta::ToolCall] ) -> void - def to_hash: -> OpenAI::Models::Chat::ChatCompletionChunk::Choice::delta - type function_call = { arguments: String, name: String } class FunctionCall < OpenAI::Internal::Type::BaseModel @@ -127,8 +121,6 @@ module OpenAI def name=: (String) -> String def initialize: (?arguments: String, ?name: String) -> void - - def to_hash: -> OpenAI::Models::Chat::ChatCompletionChunk::Choice::Delta::function_call end type role = :developer | :system | :user | :assistant | :tool @@ -142,15 +134,15 @@ module OpenAI ASSISTANT: :assistant TOOL: :tool - def self?.values: -> ::Array[OpenAI::Models::Chat::ChatCompletionChunk::Choice::Delta::role] + def self?.values: -> ::Array[OpenAI::Chat::ChatCompletionChunk::Choice::Delta::role] end type tool_call = { index: Integer, id: String, - function: OpenAI::Models::Chat::ChatCompletionChunk::Choice::Delta::ToolCall::Function, - type: OpenAI::Models::Chat::ChatCompletionChunk::Choice::Delta::ToolCall::type_ + function: OpenAI::Chat::ChatCompletionChunk::Choice::Delta::ToolCall::Function, + type: OpenAI::Chat::ChatCompletionChunk::Choice::Delta::ToolCall::type_ } class ToolCall < OpenAI::Internal::Type::BaseModel @@ -160,27 +152,25 @@ module OpenAI def id=: (String) -> String - attr_reader function: OpenAI::Models::Chat::ChatCompletionChunk::Choice::Delta::ToolCall::Function? + attr_reader function: OpenAI::Chat::ChatCompletionChunk::Choice::Delta::ToolCall::Function? def function=: ( - OpenAI::Models::Chat::ChatCompletionChunk::Choice::Delta::ToolCall::Function - ) -> OpenAI::Models::Chat::ChatCompletionChunk::Choice::Delta::ToolCall::Function + OpenAI::Chat::ChatCompletionChunk::Choice::Delta::ToolCall::Function + ) -> OpenAI::Chat::ChatCompletionChunk::Choice::Delta::ToolCall::Function - attr_reader type: OpenAI::Models::Chat::ChatCompletionChunk::Choice::Delta::ToolCall::type_? + attr_reader type: OpenAI::Chat::ChatCompletionChunk::Choice::Delta::ToolCall::type_? def type=: ( - OpenAI::Models::Chat::ChatCompletionChunk::Choice::Delta::ToolCall::type_ - ) -> OpenAI::Models::Chat::ChatCompletionChunk::Choice::Delta::ToolCall::type_ + OpenAI::Chat::ChatCompletionChunk::Choice::Delta::ToolCall::type_ + ) -> OpenAI::Chat::ChatCompletionChunk::Choice::Delta::ToolCall::type_ def initialize: ( index: Integer, ?id: String, - ?function: OpenAI::Models::Chat::ChatCompletionChunk::Choice::Delta::ToolCall::Function, - ?type: OpenAI::Models::Chat::ChatCompletionChunk::Choice::Delta::ToolCall::type_ + ?function: OpenAI::Chat::ChatCompletionChunk::Choice::Delta::ToolCall::Function, + ?type: OpenAI::Chat::ChatCompletionChunk::Choice::Delta::ToolCall::type_ ) -> void - def to_hash: -> OpenAI::Models::Chat::ChatCompletionChunk::Choice::Delta::tool_call - type function = { arguments: String, name: String } class Function < OpenAI::Internal::Type::BaseModel @@ -193,8 +183,6 @@ module OpenAI def name=: (String) -> String def initialize: (?arguments: String, ?name: String) -> void - - def to_hash: -> OpenAI::Models::Chat::ChatCompletionChunk::Choice::Delta::ToolCall::function end type type_ = :function @@ -204,7 +192,7 @@ module OpenAI FUNCTION: :function - def self?.values: -> ::Array[OpenAI::Models::Chat::ChatCompletionChunk::Choice::Delta::ToolCall::type_] + def self?.values: -> ::Array[OpenAI::Chat::ChatCompletionChunk::Choice::Delta::ToolCall::type_] end end end @@ -221,26 +209,24 @@ module OpenAI CONTENT_FILTER: :content_filter FUNCTION_CALL: :function_call - def self?.values: -> ::Array[OpenAI::Models::Chat::ChatCompletionChunk::Choice::finish_reason] + def self?.values: -> ::Array[OpenAI::Chat::ChatCompletionChunk::Choice::finish_reason] end type logprobs = { - content: ::Array[OpenAI::Models::Chat::ChatCompletionTokenLogprob]?, - refusal: ::Array[OpenAI::Models::Chat::ChatCompletionTokenLogprob]? + content: ::Array[OpenAI::Chat::ChatCompletionTokenLogprob]?, + refusal: ::Array[OpenAI::Chat::ChatCompletionTokenLogprob]? } class Logprobs < OpenAI::Internal::Type::BaseModel - attr_accessor content: ::Array[OpenAI::Models::Chat::ChatCompletionTokenLogprob]? + attr_accessor content: ::Array[OpenAI::Chat::ChatCompletionTokenLogprob]? - attr_accessor refusal: ::Array[OpenAI::Models::Chat::ChatCompletionTokenLogprob]? + attr_accessor refusal: ::Array[OpenAI::Chat::ChatCompletionTokenLogprob]? def initialize: ( - content: ::Array[OpenAI::Models::Chat::ChatCompletionTokenLogprob]?, - refusal: ::Array[OpenAI::Models::Chat::ChatCompletionTokenLogprob]? + content: ::Array[OpenAI::Chat::ChatCompletionTokenLogprob]?, + refusal: ::Array[OpenAI::Chat::ChatCompletionTokenLogprob]? ) -> void - - def to_hash: -> OpenAI::Models::Chat::ChatCompletionChunk::Choice::logprobs end end @@ -253,7 +239,7 @@ module OpenAI DEFAULT: :default FLEX: :flex - def self?.values: -> ::Array[OpenAI::Models::Chat::ChatCompletionChunk::service_tier] + def self?.values: -> ::Array[OpenAI::Chat::ChatCompletionChunk::service_tier] end end end diff --git a/sig/openai/models/chat/chat_completion_content_part.rbs b/sig/openai/models/chat/chat_completion_content_part.rbs index 470cda35..77010098 100644 --- a/sig/openai/models/chat/chat_completion_content_part.rbs +++ b/sig/openai/models/chat/chat_completion_content_part.rbs @@ -4,32 +4,30 @@ module OpenAI module Chat type chat_completion_content_part = - OpenAI::Models::Chat::ChatCompletionContentPartText - | OpenAI::Models::Chat::ChatCompletionContentPartImage - | OpenAI::Models::Chat::ChatCompletionContentPartInputAudio - | OpenAI::Models::Chat::ChatCompletionContentPart::File + OpenAI::Chat::ChatCompletionContentPartText + | OpenAI::Chat::ChatCompletionContentPartImage + | OpenAI::Chat::ChatCompletionContentPartInputAudio + | OpenAI::Chat::ChatCompletionContentPart::File module ChatCompletionContentPart extend OpenAI::Internal::Type::Union type file = { - file: OpenAI::Models::Chat::ChatCompletionContentPart::File::File, + file: OpenAI::Chat::ChatCompletionContentPart::File::File, type: :file } class File < OpenAI::Internal::Type::BaseModel - attr_accessor file: OpenAI::Models::Chat::ChatCompletionContentPart::File::File + attr_accessor file: OpenAI::Chat::ChatCompletionContentPart::File::File attr_accessor type: :file def initialize: ( - file: OpenAI::Models::Chat::ChatCompletionContentPart::File::File, + file: OpenAI::Chat::ChatCompletionContentPart::File::File, ?type: :file ) -> void - def to_hash: -> OpenAI::Models::Chat::ChatCompletionContentPart::file - type file = { file_data: String, file_id: String, filename: String } class File < OpenAI::Internal::Type::BaseModel @@ -50,12 +48,10 @@ module OpenAI ?file_id: String, ?filename: String ) -> void - - def to_hash: -> OpenAI::Models::Chat::ChatCompletionContentPart::File::file end end - def self?.variants: -> [OpenAI::Models::Chat::ChatCompletionContentPartText, OpenAI::Models::Chat::ChatCompletionContentPartImage, OpenAI::Models::Chat::ChatCompletionContentPartInputAudio, OpenAI::Models::Chat::ChatCompletionContentPart::File] + def self?.variants: -> ::Array[OpenAI::Models::Chat::chat_completion_content_part] end end end diff --git a/sig/openai/models/chat/chat_completion_content_part_image.rbs b/sig/openai/models/chat/chat_completion_content_part_image.rbs index 6aa104fb..f7088321 100644 --- a/sig/openai/models/chat/chat_completion_content_part_image.rbs +++ b/sig/openai/models/chat/chat_completion_content_part_image.rbs @@ -5,44 +5,40 @@ module OpenAI module Chat type chat_completion_content_part_image = { - image_url: OpenAI::Models::Chat::ChatCompletionContentPartImage::ImageURL, + image_url: OpenAI::Chat::ChatCompletionContentPartImage::ImageURL, type: :image_url } class ChatCompletionContentPartImage < OpenAI::Internal::Type::BaseModel - attr_accessor image_url: OpenAI::Models::Chat::ChatCompletionContentPartImage::ImageURL + attr_accessor image_url: OpenAI::Chat::ChatCompletionContentPartImage::ImageURL attr_accessor type: :image_url def initialize: ( - image_url: OpenAI::Models::Chat::ChatCompletionContentPartImage::ImageURL, + image_url: OpenAI::Chat::ChatCompletionContentPartImage::ImageURL, ?type: :image_url ) -> void - def to_hash: -> OpenAI::Models::Chat::chat_completion_content_part_image - type image_url = { url: String, - detail: OpenAI::Models::Chat::ChatCompletionContentPartImage::ImageURL::detail + detail: OpenAI::Chat::ChatCompletionContentPartImage::ImageURL::detail } class ImageURL < OpenAI::Internal::Type::BaseModel attr_accessor url: String - attr_reader detail: OpenAI::Models::Chat::ChatCompletionContentPartImage::ImageURL::detail? + attr_reader detail: OpenAI::Chat::ChatCompletionContentPartImage::ImageURL::detail? def detail=: ( - OpenAI::Models::Chat::ChatCompletionContentPartImage::ImageURL::detail - ) -> OpenAI::Models::Chat::ChatCompletionContentPartImage::ImageURL::detail + OpenAI::Chat::ChatCompletionContentPartImage::ImageURL::detail + ) -> OpenAI::Chat::ChatCompletionContentPartImage::ImageURL::detail def initialize: ( url: String, - ?detail: OpenAI::Models::Chat::ChatCompletionContentPartImage::ImageURL::detail + ?detail: OpenAI::Chat::ChatCompletionContentPartImage::ImageURL::detail ) -> void - def to_hash: -> OpenAI::Models::Chat::ChatCompletionContentPartImage::image_url - type detail = :auto | :low | :high module Detail @@ -52,7 +48,7 @@ module OpenAI LOW: :low HIGH: :high - def self?.values: -> ::Array[OpenAI::Models::Chat::ChatCompletionContentPartImage::ImageURL::detail] + def self?.values: -> ::Array[OpenAI::Chat::ChatCompletionContentPartImage::ImageURL::detail] end end end diff --git a/sig/openai/models/chat/chat_completion_content_part_input_audio.rbs b/sig/openai/models/chat/chat_completion_content_part_input_audio.rbs index e3267b32..85d1abea 100644 --- a/sig/openai/models/chat/chat_completion_content_part_input_audio.rbs +++ b/sig/openai/models/chat/chat_completion_content_part_input_audio.rbs @@ -5,40 +5,36 @@ module OpenAI module Chat type chat_completion_content_part_input_audio = { - input_audio: OpenAI::Models::Chat::ChatCompletionContentPartInputAudio::InputAudio, + input_audio: OpenAI::Chat::ChatCompletionContentPartInputAudio::InputAudio, type: :input_audio } class ChatCompletionContentPartInputAudio < OpenAI::Internal::Type::BaseModel - attr_accessor input_audio: OpenAI::Models::Chat::ChatCompletionContentPartInputAudio::InputAudio + attr_accessor input_audio: OpenAI::Chat::ChatCompletionContentPartInputAudio::InputAudio attr_accessor type: :input_audio def initialize: ( - input_audio: OpenAI::Models::Chat::ChatCompletionContentPartInputAudio::InputAudio, + input_audio: OpenAI::Chat::ChatCompletionContentPartInputAudio::InputAudio, ?type: :input_audio ) -> void - def to_hash: -> OpenAI::Models::Chat::chat_completion_content_part_input_audio - type input_audio = { data: String, - format_: OpenAI::Models::Chat::ChatCompletionContentPartInputAudio::InputAudio::format_ + format_: OpenAI::Chat::ChatCompletionContentPartInputAudio::InputAudio::format_ } class InputAudio < OpenAI::Internal::Type::BaseModel attr_accessor data: String - attr_accessor format_: OpenAI::Models::Chat::ChatCompletionContentPartInputAudio::InputAudio::format_ + attr_accessor format_: OpenAI::Chat::ChatCompletionContentPartInputAudio::InputAudio::format_ def initialize: ( data: String, - format_: OpenAI::Models::Chat::ChatCompletionContentPartInputAudio::InputAudio::format_ + format_: OpenAI::Chat::ChatCompletionContentPartInputAudio::InputAudio::format_ ) -> void - def to_hash: -> OpenAI::Models::Chat::ChatCompletionContentPartInputAudio::input_audio - type format_ = :wav | :mp3 module Format @@ -47,7 +43,7 @@ module OpenAI WAV: :wav MP3: :mp3 - def self?.values: -> ::Array[OpenAI::Models::Chat::ChatCompletionContentPartInputAudio::InputAudio::format_] + def self?.values: -> ::Array[OpenAI::Chat::ChatCompletionContentPartInputAudio::InputAudio::format_] end end end diff --git a/sig/openai/models/chat/chat_completion_content_part_refusal.rbs b/sig/openai/models/chat/chat_completion_content_part_refusal.rbs index e7b62c6b..9845f993 100644 --- a/sig/openai/models/chat/chat_completion_content_part_refusal.rbs +++ b/sig/openai/models/chat/chat_completion_content_part_refusal.rbs @@ -12,8 +12,6 @@ module OpenAI attr_accessor type: :refusal def initialize: (refusal: String, ?type: :refusal) -> void - - def to_hash: -> OpenAI::Models::Chat::chat_completion_content_part_refusal end end end diff --git a/sig/openai/models/chat/chat_completion_content_part_text.rbs b/sig/openai/models/chat/chat_completion_content_part_text.rbs index b8a43400..799d8e14 100644 --- a/sig/openai/models/chat/chat_completion_content_part_text.rbs +++ b/sig/openai/models/chat/chat_completion_content_part_text.rbs @@ -11,8 +11,6 @@ module OpenAI attr_accessor type: :text def initialize: (text: String, ?type: :text) -> void - - def to_hash: -> OpenAI::Models::Chat::chat_completion_content_part_text end end end diff --git a/sig/openai/models/chat/chat_completion_deleted.rbs b/sig/openai/models/chat/chat_completion_deleted.rbs index 6d7e613c..eb9ae980 100644 --- a/sig/openai/models/chat/chat_completion_deleted.rbs +++ b/sig/openai/models/chat/chat_completion_deleted.rbs @@ -18,8 +18,6 @@ module OpenAI deleted: bool, ?object: :"chat.completion.deleted" ) -> void - - def to_hash: -> OpenAI::Models::Chat::chat_completion_deleted end end end diff --git a/sig/openai/models/chat/chat_completion_developer_message_param.rbs b/sig/openai/models/chat/chat_completion_developer_message_param.rbs index ed1e4afb..ecf27a5d 100644 --- a/sig/openai/models/chat/chat_completion_developer_message_param.rbs +++ b/sig/openai/models/chat/chat_completion_developer_message_param.rbs @@ -5,13 +5,13 @@ module OpenAI module Chat type chat_completion_developer_message_param = { - content: OpenAI::Models::Chat::ChatCompletionDeveloperMessageParam::content, + content: OpenAI::Chat::ChatCompletionDeveloperMessageParam::content, role: :developer, name: String } class ChatCompletionDeveloperMessageParam < OpenAI::Internal::Type::BaseModel - attr_accessor content: OpenAI::Models::Chat::ChatCompletionDeveloperMessageParam::content + attr_accessor content: OpenAI::Chat::ChatCompletionDeveloperMessageParam::content attr_accessor role: :developer @@ -20,20 +20,18 @@ module OpenAI def name=: (String) -> String def initialize: ( - content: OpenAI::Models::Chat::ChatCompletionDeveloperMessageParam::content, + content: OpenAI::Chat::ChatCompletionDeveloperMessageParam::content, ?name: String, ?role: :developer ) -> void - def to_hash: -> OpenAI::Models::Chat::chat_completion_developer_message_param - type content = - String | ::Array[OpenAI::Models::Chat::ChatCompletionContentPartText] + String | ::Array[OpenAI::Chat::ChatCompletionContentPartText] module Content extend OpenAI::Internal::Type::Union - def self?.variants: -> [String, ::Array[OpenAI::Models::Chat::ChatCompletionContentPartText]] + def self?.variants: -> ::Array[OpenAI::Chat::ChatCompletionDeveloperMessageParam::content] ChatCompletionContentPartTextArray: OpenAI::Internal::Type::Converter end diff --git a/sig/openai/models/chat/chat_completion_function_call_option.rbs b/sig/openai/models/chat/chat_completion_function_call_option.rbs index fd033d17..b18d80c5 100644 --- a/sig/openai/models/chat/chat_completion_function_call_option.rbs +++ b/sig/openai/models/chat/chat_completion_function_call_option.rbs @@ -9,8 +9,6 @@ module OpenAI attr_accessor name: String def initialize: (name: String) -> void - - def to_hash: -> OpenAI::Models::Chat::chat_completion_function_call_option end end end diff --git a/sig/openai/models/chat/chat_completion_function_message_param.rbs b/sig/openai/models/chat/chat_completion_function_message_param.rbs index e83ffd82..17944160 100644 --- a/sig/openai/models/chat/chat_completion_function_message_param.rbs +++ b/sig/openai/models/chat/chat_completion_function_message_param.rbs @@ -18,8 +18,6 @@ module OpenAI name: String, ?role: :function ) -> void - - def to_hash: -> OpenAI::Models::Chat::chat_completion_function_message_param end end end diff --git a/sig/openai/models/chat/chat_completion_message.rbs b/sig/openai/models/chat/chat_completion_message.rbs index 7fa0b355..bea71029 100644 --- a/sig/openai/models/chat/chat_completion_message.rbs +++ b/sig/openai/models/chat/chat_completion_message.rbs @@ -8,10 +8,10 @@ module OpenAI content: String?, refusal: String?, role: :assistant, - annotations: ::Array[OpenAI::Models::Chat::ChatCompletionMessage::Annotation], - audio: OpenAI::Models::Chat::ChatCompletionAudio?, - function_call: OpenAI::Models::Chat::ChatCompletionMessage::FunctionCall, - tool_calls: ::Array[OpenAI::Models::Chat::ChatCompletionMessageToolCall] + annotations: ::Array[OpenAI::Chat::ChatCompletionMessage::Annotation], + audio: OpenAI::Chat::ChatCompletionAudio?, + function_call: OpenAI::Chat::ChatCompletionMessage::FunctionCall, + tool_calls: ::Array[OpenAI::Chat::ChatCompletionMessageToolCall] } class ChatCompletionMessage < OpenAI::Internal::Type::BaseModel @@ -21,56 +21,52 @@ module OpenAI attr_accessor role: :assistant - attr_reader annotations: ::Array[OpenAI::Models::Chat::ChatCompletionMessage::Annotation]? + attr_reader annotations: ::Array[OpenAI::Chat::ChatCompletionMessage::Annotation]? def annotations=: ( - ::Array[OpenAI::Models::Chat::ChatCompletionMessage::Annotation] - ) -> ::Array[OpenAI::Models::Chat::ChatCompletionMessage::Annotation] + ::Array[OpenAI::Chat::ChatCompletionMessage::Annotation] + ) -> ::Array[OpenAI::Chat::ChatCompletionMessage::Annotation] - attr_accessor audio: OpenAI::Models::Chat::ChatCompletionAudio? + attr_accessor audio: OpenAI::Chat::ChatCompletionAudio? - attr_reader function_call: OpenAI::Models::Chat::ChatCompletionMessage::FunctionCall? + attr_reader function_call: OpenAI::Chat::ChatCompletionMessage::FunctionCall? def function_call=: ( - OpenAI::Models::Chat::ChatCompletionMessage::FunctionCall - ) -> OpenAI::Models::Chat::ChatCompletionMessage::FunctionCall + OpenAI::Chat::ChatCompletionMessage::FunctionCall + ) -> OpenAI::Chat::ChatCompletionMessage::FunctionCall - attr_reader tool_calls: ::Array[OpenAI::Models::Chat::ChatCompletionMessageToolCall]? + attr_reader tool_calls: ::Array[OpenAI::Chat::ChatCompletionMessageToolCall]? def tool_calls=: ( - ::Array[OpenAI::Models::Chat::ChatCompletionMessageToolCall] - ) -> ::Array[OpenAI::Models::Chat::ChatCompletionMessageToolCall] + ::Array[OpenAI::Chat::ChatCompletionMessageToolCall] + ) -> ::Array[OpenAI::Chat::ChatCompletionMessageToolCall] def initialize: ( content: String?, refusal: String?, - ?annotations: ::Array[OpenAI::Models::Chat::ChatCompletionMessage::Annotation], - ?audio: OpenAI::Models::Chat::ChatCompletionAudio?, - ?function_call: OpenAI::Models::Chat::ChatCompletionMessage::FunctionCall, - ?tool_calls: ::Array[OpenAI::Models::Chat::ChatCompletionMessageToolCall], + ?annotations: ::Array[OpenAI::Chat::ChatCompletionMessage::Annotation], + ?audio: OpenAI::Chat::ChatCompletionAudio?, + ?function_call: OpenAI::Chat::ChatCompletionMessage::FunctionCall, + ?tool_calls: ::Array[OpenAI::Chat::ChatCompletionMessageToolCall], ?role: :assistant ) -> void - def to_hash: -> OpenAI::Models::Chat::chat_completion_message - type annotation = { type: :url_citation, - url_citation: OpenAI::Models::Chat::ChatCompletionMessage::Annotation::URLCitation + url_citation: OpenAI::Chat::ChatCompletionMessage::Annotation::URLCitation } class Annotation < OpenAI::Internal::Type::BaseModel attr_accessor type: :url_citation - attr_accessor url_citation: OpenAI::Models::Chat::ChatCompletionMessage::Annotation::URLCitation + attr_accessor url_citation: OpenAI::Chat::ChatCompletionMessage::Annotation::URLCitation def initialize: ( - url_citation: OpenAI::Models::Chat::ChatCompletionMessage::Annotation::URLCitation, + url_citation: OpenAI::Chat::ChatCompletionMessage::Annotation::URLCitation, ?type: :url_citation ) -> void - def to_hash: -> OpenAI::Models::Chat::ChatCompletionMessage::annotation - type url_citation = { end_index: Integer, @@ -94,8 +90,6 @@ module OpenAI title: String, url: String ) -> void - - def to_hash: -> OpenAI::Models::Chat::ChatCompletionMessage::Annotation::url_citation end end @@ -107,8 +101,6 @@ module OpenAI attr_accessor name: String def initialize: (arguments: String, name: String) -> void - - def to_hash: -> OpenAI::Models::Chat::ChatCompletionMessage::function_call end end end diff --git a/sig/openai/models/chat/chat_completion_message_param.rbs b/sig/openai/models/chat/chat_completion_message_param.rbs index e30fd658..8feb9872 100644 --- a/sig/openai/models/chat/chat_completion_message_param.rbs +++ b/sig/openai/models/chat/chat_completion_message_param.rbs @@ -4,17 +4,17 @@ module OpenAI module Chat type chat_completion_message_param = - OpenAI::Models::Chat::ChatCompletionDeveloperMessageParam - | OpenAI::Models::Chat::ChatCompletionSystemMessageParam - | OpenAI::Models::Chat::ChatCompletionUserMessageParam - | OpenAI::Models::Chat::ChatCompletionAssistantMessageParam - | OpenAI::Models::Chat::ChatCompletionToolMessageParam - | OpenAI::Models::Chat::ChatCompletionFunctionMessageParam + OpenAI::Chat::ChatCompletionDeveloperMessageParam + | OpenAI::Chat::ChatCompletionSystemMessageParam + | OpenAI::Chat::ChatCompletionUserMessageParam + | OpenAI::Chat::ChatCompletionAssistantMessageParam + | OpenAI::Chat::ChatCompletionToolMessageParam + | OpenAI::Chat::ChatCompletionFunctionMessageParam module ChatCompletionMessageParam extend OpenAI::Internal::Type::Union - def self?.variants: -> [OpenAI::Models::Chat::ChatCompletionDeveloperMessageParam, OpenAI::Models::Chat::ChatCompletionSystemMessageParam, OpenAI::Models::Chat::ChatCompletionUserMessageParam, OpenAI::Models::Chat::ChatCompletionAssistantMessageParam, OpenAI::Models::Chat::ChatCompletionToolMessageParam, OpenAI::Models::Chat::ChatCompletionFunctionMessageParam] + def self?.variants: -> ::Array[OpenAI::Models::Chat::chat_completion_message_param] end end end diff --git a/sig/openai/models/chat/chat_completion_message_tool_call.rbs b/sig/openai/models/chat/chat_completion_message_tool_call.rbs index ca90663e..d15d52bf 100644 --- a/sig/openai/models/chat/chat_completion_message_tool_call.rbs +++ b/sig/openai/models/chat/chat_completion_message_tool_call.rbs @@ -6,25 +6,23 @@ module OpenAI type chat_completion_message_tool_call = { id: String, - function: OpenAI::Models::Chat::ChatCompletionMessageToolCall::Function, + function: OpenAI::Chat::ChatCompletionMessageToolCall::Function, type: :function } class ChatCompletionMessageToolCall < OpenAI::Internal::Type::BaseModel attr_accessor id: String - attr_accessor function: OpenAI::Models::Chat::ChatCompletionMessageToolCall::Function + attr_accessor function: OpenAI::Chat::ChatCompletionMessageToolCall::Function attr_accessor type: :function def initialize: ( id: String, - function: OpenAI::Models::Chat::ChatCompletionMessageToolCall::Function, + function: OpenAI::Chat::ChatCompletionMessageToolCall::Function, ?type: :function ) -> void - def to_hash: -> OpenAI::Models::Chat::chat_completion_message_tool_call - type function = { arguments: String, name: String } class Function < OpenAI::Internal::Type::BaseModel @@ -33,8 +31,6 @@ module OpenAI attr_accessor name: String def initialize: (arguments: String, name: String) -> void - - def to_hash: -> OpenAI::Models::Chat::ChatCompletionMessageToolCall::function end end end diff --git a/sig/openai/models/chat/chat_completion_named_tool_choice.rbs b/sig/openai/models/chat/chat_completion_named_tool_choice.rbs index 77b79236..38e0aeb5 100644 --- a/sig/openai/models/chat/chat_completion_named_tool_choice.rbs +++ b/sig/openai/models/chat/chat_completion_named_tool_choice.rbs @@ -5,30 +5,26 @@ module OpenAI module Chat type chat_completion_named_tool_choice = { - function: OpenAI::Models::Chat::ChatCompletionNamedToolChoice::Function, + function: OpenAI::Chat::ChatCompletionNamedToolChoice::Function, type: :function } class ChatCompletionNamedToolChoice < OpenAI::Internal::Type::BaseModel - attr_accessor function: OpenAI::Models::Chat::ChatCompletionNamedToolChoice::Function + attr_accessor function: OpenAI::Chat::ChatCompletionNamedToolChoice::Function attr_accessor type: :function def initialize: ( - function: OpenAI::Models::Chat::ChatCompletionNamedToolChoice::Function, + function: OpenAI::Chat::ChatCompletionNamedToolChoice::Function, ?type: :function ) -> void - def to_hash: -> OpenAI::Models::Chat::chat_completion_named_tool_choice - type function = { name: String } class Function < OpenAI::Internal::Type::BaseModel attr_accessor name: String def initialize: (name: String) -> void - - def to_hash: -> OpenAI::Models::Chat::ChatCompletionNamedToolChoice::function end end end diff --git a/sig/openai/models/chat/chat_completion_prediction_content.rbs b/sig/openai/models/chat/chat_completion_prediction_content.rbs index ad9cdb21..65a4a7a6 100644 --- a/sig/openai/models/chat/chat_completion_prediction_content.rbs +++ b/sig/openai/models/chat/chat_completion_prediction_content.rbs @@ -5,29 +5,27 @@ module OpenAI module Chat type chat_completion_prediction_content = { - content: OpenAI::Models::Chat::ChatCompletionPredictionContent::content, + content: OpenAI::Chat::ChatCompletionPredictionContent::content, type: :content } class ChatCompletionPredictionContent < OpenAI::Internal::Type::BaseModel - attr_accessor content: OpenAI::Models::Chat::ChatCompletionPredictionContent::content + attr_accessor content: OpenAI::Chat::ChatCompletionPredictionContent::content attr_accessor type: :content def initialize: ( - content: OpenAI::Models::Chat::ChatCompletionPredictionContent::content, + content: OpenAI::Chat::ChatCompletionPredictionContent::content, ?type: :content ) -> void - def to_hash: -> OpenAI::Models::Chat::chat_completion_prediction_content - type content = - String | ::Array[OpenAI::Models::Chat::ChatCompletionContentPartText] + String | ::Array[OpenAI::Chat::ChatCompletionContentPartText] module Content extend OpenAI::Internal::Type::Union - def self?.variants: -> [String, ::Array[OpenAI::Models::Chat::ChatCompletionContentPartText]] + def self?.variants: -> ::Array[OpenAI::Chat::ChatCompletionPredictionContent::content] ChatCompletionContentPartTextArray: OpenAI::Internal::Type::Converter end diff --git a/sig/openai/models/chat/chat_completion_store_message.rbs b/sig/openai/models/chat/chat_completion_store_message.rbs index 75e77b6c..13440ab9 100644 --- a/sig/openai/models/chat/chat_completion_store_message.rbs +++ b/sig/openai/models/chat/chat_completion_store_message.rbs @@ -11,8 +11,6 @@ module OpenAI def id=: (String _) -> String def initialize: (id: String) -> void - - def to_hash: -> OpenAI::Models::Chat::chat_completion_store_message end end end diff --git a/sig/openai/models/chat/chat_completion_stream_options.rbs b/sig/openai/models/chat/chat_completion_stream_options.rbs index bf86a211..4b0267d1 100644 --- a/sig/openai/models/chat/chat_completion_stream_options.rbs +++ b/sig/openai/models/chat/chat_completion_stream_options.rbs @@ -11,8 +11,6 @@ module OpenAI def include_usage=: (bool) -> bool def initialize: (?include_usage: bool) -> void - - def to_hash: -> OpenAI::Models::Chat::chat_completion_stream_options end end end diff --git a/sig/openai/models/chat/chat_completion_system_message_param.rbs b/sig/openai/models/chat/chat_completion_system_message_param.rbs index 81cdf351..067f582c 100644 --- a/sig/openai/models/chat/chat_completion_system_message_param.rbs +++ b/sig/openai/models/chat/chat_completion_system_message_param.rbs @@ -5,13 +5,13 @@ module OpenAI module Chat type chat_completion_system_message_param = { - content: OpenAI::Models::Chat::ChatCompletionSystemMessageParam::content, + content: OpenAI::Chat::ChatCompletionSystemMessageParam::content, role: :system, name: String } class ChatCompletionSystemMessageParam < OpenAI::Internal::Type::BaseModel - attr_accessor content: OpenAI::Models::Chat::ChatCompletionSystemMessageParam::content + attr_accessor content: OpenAI::Chat::ChatCompletionSystemMessageParam::content attr_accessor role: :system @@ -20,20 +20,18 @@ module OpenAI def name=: (String) -> String def initialize: ( - content: OpenAI::Models::Chat::ChatCompletionSystemMessageParam::content, + content: OpenAI::Chat::ChatCompletionSystemMessageParam::content, ?name: String, ?role: :system ) -> void - def to_hash: -> OpenAI::Models::Chat::chat_completion_system_message_param - type content = - String | ::Array[OpenAI::Models::Chat::ChatCompletionContentPartText] + String | ::Array[OpenAI::Chat::ChatCompletionContentPartText] module Content extend OpenAI::Internal::Type::Union - def self?.variants: -> [String, ::Array[OpenAI::Models::Chat::ChatCompletionContentPartText]] + def self?.variants: -> ::Array[OpenAI::Chat::ChatCompletionSystemMessageParam::content] ChatCompletionContentPartTextArray: OpenAI::Internal::Type::Converter end diff --git a/sig/openai/models/chat/chat_completion_token_logprob.rbs b/sig/openai/models/chat/chat_completion_token_logprob.rbs index 968dd8a5..f2bd18a1 100644 --- a/sig/openai/models/chat/chat_completion_token_logprob.rbs +++ b/sig/openai/models/chat/chat_completion_token_logprob.rbs @@ -8,7 +8,7 @@ module OpenAI token: String, bytes: ::Array[Integer]?, logprob: Float, - top_logprobs: ::Array[OpenAI::Models::Chat::ChatCompletionTokenLogprob::TopLogprob] + top_logprobs: ::Array[OpenAI::Chat::ChatCompletionTokenLogprob::TopLogprob] } class ChatCompletionTokenLogprob < OpenAI::Internal::Type::BaseModel @@ -18,17 +18,15 @@ module OpenAI attr_accessor logprob: Float - attr_accessor top_logprobs: ::Array[OpenAI::Models::Chat::ChatCompletionTokenLogprob::TopLogprob] + attr_accessor top_logprobs: ::Array[OpenAI::Chat::ChatCompletionTokenLogprob::TopLogprob] def initialize: ( token: String, bytes: ::Array[Integer]?, logprob: Float, - top_logprobs: ::Array[OpenAI::Models::Chat::ChatCompletionTokenLogprob::TopLogprob] + top_logprobs: ::Array[OpenAI::Chat::ChatCompletionTokenLogprob::TopLogprob] ) -> void - def to_hash: -> OpenAI::Models::Chat::chat_completion_token_logprob - type top_logprob = { token: String, bytes: ::Array[Integer]?, logprob: Float } @@ -44,8 +42,6 @@ module OpenAI bytes: ::Array[Integer]?, logprob: Float ) -> void - - def to_hash: -> OpenAI::Models::Chat::ChatCompletionTokenLogprob::top_logprob end end end diff --git a/sig/openai/models/chat/chat_completion_tool.rbs b/sig/openai/models/chat/chat_completion_tool.rbs index 1fd217b1..e5d54e1b 100644 --- a/sig/openai/models/chat/chat_completion_tool.rbs +++ b/sig/openai/models/chat/chat_completion_tool.rbs @@ -4,19 +4,17 @@ module OpenAI module Chat type chat_completion_tool = - { function: OpenAI::Models::FunctionDefinition, type: :function } + { function: OpenAI::FunctionDefinition, type: :function } class ChatCompletionTool < OpenAI::Internal::Type::BaseModel - attr_accessor function: OpenAI::Models::FunctionDefinition + attr_accessor function: OpenAI::FunctionDefinition attr_accessor type: :function def initialize: ( - function: OpenAI::Models::FunctionDefinition, + function: OpenAI::FunctionDefinition, ?type: :function ) -> void - - def to_hash: -> OpenAI::Models::Chat::chat_completion_tool end end end diff --git a/sig/openai/models/chat/chat_completion_tool_choice_option.rbs b/sig/openai/models/chat/chat_completion_tool_choice_option.rbs index aadc1e00..a5c2df81 100644 --- a/sig/openai/models/chat/chat_completion_tool_choice_option.rbs +++ b/sig/openai/models/chat/chat_completion_tool_choice_option.rbs @@ -4,8 +4,8 @@ module OpenAI module Chat type chat_completion_tool_choice_option = - OpenAI::Models::Chat::ChatCompletionToolChoiceOption::auto - | OpenAI::Models::Chat::ChatCompletionNamedToolChoice + OpenAI::Chat::ChatCompletionToolChoiceOption::auto + | OpenAI::Chat::ChatCompletionNamedToolChoice module ChatCompletionToolChoiceOption extend OpenAI::Internal::Type::Union @@ -19,10 +19,10 @@ module OpenAI AUTO: :auto REQUIRED: :required - def self?.values: -> ::Array[OpenAI::Models::Chat::ChatCompletionToolChoiceOption::auto] + def self?.values: -> ::Array[OpenAI::Chat::ChatCompletionToolChoiceOption::auto] end - def self?.variants: -> [OpenAI::Models::Chat::ChatCompletionToolChoiceOption::auto, OpenAI::Models::Chat::ChatCompletionNamedToolChoice] + def self?.variants: -> ::Array[OpenAI::Models::Chat::chat_completion_tool_choice_option] end end end diff --git a/sig/openai/models/chat/chat_completion_tool_message_param.rbs b/sig/openai/models/chat/chat_completion_tool_message_param.rbs index 5b737943..21997531 100644 --- a/sig/openai/models/chat/chat_completion_tool_message_param.rbs +++ b/sig/openai/models/chat/chat_completion_tool_message_param.rbs @@ -5,33 +5,31 @@ module OpenAI module Chat type chat_completion_tool_message_param = { - content: OpenAI::Models::Chat::ChatCompletionToolMessageParam::content, + content: OpenAI::Chat::ChatCompletionToolMessageParam::content, role: :tool, tool_call_id: String } class ChatCompletionToolMessageParam < OpenAI::Internal::Type::BaseModel - attr_accessor content: OpenAI::Models::Chat::ChatCompletionToolMessageParam::content + attr_accessor content: OpenAI::Chat::ChatCompletionToolMessageParam::content attr_accessor role: :tool attr_accessor tool_call_id: String def initialize: ( - content: OpenAI::Models::Chat::ChatCompletionToolMessageParam::content, + content: OpenAI::Chat::ChatCompletionToolMessageParam::content, tool_call_id: String, ?role: :tool ) -> void - def to_hash: -> OpenAI::Models::Chat::chat_completion_tool_message_param - type content = - String | ::Array[OpenAI::Models::Chat::ChatCompletionContentPartText] + String | ::Array[OpenAI::Chat::ChatCompletionContentPartText] module Content extend OpenAI::Internal::Type::Union - def self?.variants: -> [String, ::Array[OpenAI::Models::Chat::ChatCompletionContentPartText]] + def self?.variants: -> ::Array[OpenAI::Chat::ChatCompletionToolMessageParam::content] ChatCompletionContentPartTextArray: OpenAI::Internal::Type::Converter end diff --git a/sig/openai/models/chat/chat_completion_user_message_param.rbs b/sig/openai/models/chat/chat_completion_user_message_param.rbs index 5f5c1a1c..9bc5d59c 100644 --- a/sig/openai/models/chat/chat_completion_user_message_param.rbs +++ b/sig/openai/models/chat/chat_completion_user_message_param.rbs @@ -5,13 +5,13 @@ module OpenAI module Chat type chat_completion_user_message_param = { - content: OpenAI::Models::Chat::ChatCompletionUserMessageParam::content, + content: OpenAI::Chat::ChatCompletionUserMessageParam::content, role: :user, name: String } class ChatCompletionUserMessageParam < OpenAI::Internal::Type::BaseModel - attr_accessor content: OpenAI::Models::Chat::ChatCompletionUserMessageParam::content + attr_accessor content: OpenAI::Chat::ChatCompletionUserMessageParam::content attr_accessor role: :user @@ -20,20 +20,18 @@ module OpenAI def name=: (String) -> String def initialize: ( - content: OpenAI::Models::Chat::ChatCompletionUserMessageParam::content, + content: OpenAI::Chat::ChatCompletionUserMessageParam::content, ?name: String, ?role: :user ) -> void - def to_hash: -> OpenAI::Models::Chat::chat_completion_user_message_param - type content = String | ::Array[OpenAI::Models::Chat::chat_completion_content_part] module Content extend OpenAI::Internal::Type::Union - def self?.variants: -> [String, ::Array[OpenAI::Models::Chat::chat_completion_content_part]] + def self?.variants: -> ::Array[OpenAI::Chat::ChatCompletionUserMessageParam::content] ChatCompletionContentPartArray: OpenAI::Internal::Type::Converter end diff --git a/sig/openai/models/chat/completion_create_params.rbs b/sig/openai/models/chat/completion_create_params.rbs index 1eb9953b..05054037 100644 --- a/sig/openai/models/chat/completion_create_params.rbs +++ b/sig/openai/models/chat/completion_create_params.rbs @@ -5,19 +5,19 @@ module OpenAI { messages: ::Array[OpenAI::Models::Chat::chat_completion_message_param], model: OpenAI::Models::Chat::CompletionCreateParams::model, - audio: OpenAI::Models::Chat::ChatCompletionAudioParam?, + audio: OpenAI::Chat::ChatCompletionAudioParam?, frequency_penalty: Float?, function_call: OpenAI::Models::Chat::CompletionCreateParams::function_call, - functions: ::Array[OpenAI::Models::Chat::CompletionCreateParams::Function], + functions: ::Array[OpenAI::Chat::CompletionCreateParams::Function], logit_bias: ::Hash[Symbol, Integer]?, logprobs: bool?, max_completion_tokens: Integer?, max_tokens: Integer?, metadata: OpenAI::Models::metadata?, - modalities: ::Array[OpenAI::Models::Chat::CompletionCreateParams::modality]?, + modalities: ::Array[OpenAI::Chat::CompletionCreateParams::modality]?, n: Integer?, parallel_tool_calls: bool, - prediction: OpenAI::Models::Chat::ChatCompletionPredictionContent?, + prediction: OpenAI::Chat::ChatCompletionPredictionContent?, presence_penalty: Float?, reasoning_effort: OpenAI::Models::reasoning_effort?, response_format: OpenAI::Models::Chat::CompletionCreateParams::response_format, @@ -25,14 +25,14 @@ module OpenAI service_tier: OpenAI::Models::Chat::CompletionCreateParams::service_tier?, stop: OpenAI::Models::Chat::CompletionCreateParams::stop?, store: bool?, - stream_options: OpenAI::Models::Chat::ChatCompletionStreamOptions?, + stream_options: OpenAI::Chat::ChatCompletionStreamOptions?, temperature: Float?, tool_choice: OpenAI::Models::Chat::chat_completion_tool_choice_option, - tools: ::Array[OpenAI::Models::Chat::ChatCompletionTool], + tools: ::Array[OpenAI::Chat::ChatCompletionTool], top_logprobs: Integer?, top_p: Float?, user: String, - web_search_options: OpenAI::Models::Chat::CompletionCreateParams::WebSearchOptions + web_search_options: OpenAI::Chat::CompletionCreateParams::WebSearchOptions } & OpenAI::Internal::Type::request_parameters @@ -44,7 +44,7 @@ module OpenAI attr_accessor model: OpenAI::Models::Chat::CompletionCreateParams::model - attr_accessor audio: OpenAI::Models::Chat::ChatCompletionAudioParam? + attr_accessor audio: OpenAI::Chat::ChatCompletionAudioParam? attr_accessor frequency_penalty: Float? @@ -54,11 +54,11 @@ module OpenAI OpenAI::Models::Chat::CompletionCreateParams::function_call ) -> OpenAI::Models::Chat::CompletionCreateParams::function_call - attr_reader functions: ::Array[OpenAI::Models::Chat::CompletionCreateParams::Function]? + attr_reader functions: ::Array[OpenAI::Chat::CompletionCreateParams::Function]? def functions=: ( - ::Array[OpenAI::Models::Chat::CompletionCreateParams::Function] - ) -> ::Array[OpenAI::Models::Chat::CompletionCreateParams::Function] + ::Array[OpenAI::Chat::CompletionCreateParams::Function] + ) -> ::Array[OpenAI::Chat::CompletionCreateParams::Function] attr_accessor logit_bias: ::Hash[Symbol, Integer]? @@ -70,7 +70,7 @@ module OpenAI attr_accessor metadata: OpenAI::Models::metadata? - attr_accessor modalities: ::Array[OpenAI::Models::Chat::CompletionCreateParams::modality]? + attr_accessor modalities: ::Array[OpenAI::Chat::CompletionCreateParams::modality]? attr_accessor n: Integer? @@ -78,7 +78,7 @@ module OpenAI def parallel_tool_calls=: (bool) -> bool - attr_accessor prediction: OpenAI::Models::Chat::ChatCompletionPredictionContent? + attr_accessor prediction: OpenAI::Chat::ChatCompletionPredictionContent? attr_accessor presence_penalty: Float? @@ -98,7 +98,7 @@ module OpenAI attr_accessor store: bool? - attr_accessor stream_options: OpenAI::Models::Chat::ChatCompletionStreamOptions? + attr_accessor stream_options: OpenAI::Chat::ChatCompletionStreamOptions? attr_accessor temperature: Float? @@ -108,11 +108,11 @@ module OpenAI OpenAI::Models::Chat::chat_completion_tool_choice_option ) -> OpenAI::Models::Chat::chat_completion_tool_choice_option - attr_reader tools: ::Array[OpenAI::Models::Chat::ChatCompletionTool]? + attr_reader tools: ::Array[OpenAI::Chat::ChatCompletionTool]? def tools=: ( - ::Array[OpenAI::Models::Chat::ChatCompletionTool] - ) -> ::Array[OpenAI::Models::Chat::ChatCompletionTool] + ::Array[OpenAI::Chat::ChatCompletionTool] + ) -> ::Array[OpenAI::Chat::ChatCompletionTool] attr_accessor top_logprobs: Integer? @@ -122,28 +122,28 @@ module OpenAI def user=: (String) -> String - attr_reader web_search_options: OpenAI::Models::Chat::CompletionCreateParams::WebSearchOptions? + attr_reader web_search_options: OpenAI::Chat::CompletionCreateParams::WebSearchOptions? def web_search_options=: ( - OpenAI::Models::Chat::CompletionCreateParams::WebSearchOptions - ) -> OpenAI::Models::Chat::CompletionCreateParams::WebSearchOptions + OpenAI::Chat::CompletionCreateParams::WebSearchOptions + ) -> OpenAI::Chat::CompletionCreateParams::WebSearchOptions def initialize: ( messages: ::Array[OpenAI::Models::Chat::chat_completion_message_param], model: OpenAI::Models::Chat::CompletionCreateParams::model, - ?audio: OpenAI::Models::Chat::ChatCompletionAudioParam?, + ?audio: OpenAI::Chat::ChatCompletionAudioParam?, ?frequency_penalty: Float?, ?function_call: OpenAI::Models::Chat::CompletionCreateParams::function_call, - ?functions: ::Array[OpenAI::Models::Chat::CompletionCreateParams::Function], + ?functions: ::Array[OpenAI::Chat::CompletionCreateParams::Function], ?logit_bias: ::Hash[Symbol, Integer]?, ?logprobs: bool?, ?max_completion_tokens: Integer?, ?max_tokens: Integer?, ?metadata: OpenAI::Models::metadata?, - ?modalities: ::Array[OpenAI::Models::Chat::CompletionCreateParams::modality]?, + ?modalities: ::Array[OpenAI::Chat::CompletionCreateParams::modality]?, ?n: Integer?, ?parallel_tool_calls: bool, - ?prediction: OpenAI::Models::Chat::ChatCompletionPredictionContent?, + ?prediction: OpenAI::Chat::ChatCompletionPredictionContent?, ?presence_penalty: Float?, ?reasoning_effort: OpenAI::Models::reasoning_effort?, ?response_format: OpenAI::Models::Chat::CompletionCreateParams::response_format, @@ -151,30 +151,28 @@ module OpenAI ?service_tier: OpenAI::Models::Chat::CompletionCreateParams::service_tier?, ?stop: OpenAI::Models::Chat::CompletionCreateParams::stop?, ?store: bool?, - ?stream_options: OpenAI::Models::Chat::ChatCompletionStreamOptions?, + ?stream_options: OpenAI::Chat::ChatCompletionStreamOptions?, ?temperature: Float?, ?tool_choice: OpenAI::Models::Chat::chat_completion_tool_choice_option, - ?tools: ::Array[OpenAI::Models::Chat::ChatCompletionTool], + ?tools: ::Array[OpenAI::Chat::ChatCompletionTool], ?top_logprobs: Integer?, ?top_p: Float?, ?user: String, - ?web_search_options: OpenAI::Models::Chat::CompletionCreateParams::WebSearchOptions, + ?web_search_options: OpenAI::Chat::CompletionCreateParams::WebSearchOptions, ?request_options: OpenAI::request_opts ) -> void - def to_hash: -> OpenAI::Models::Chat::completion_create_params - type model = String | OpenAI::Models::chat_model module Model extend OpenAI::Internal::Type::Union - def self?.variants: -> [String, OpenAI::Models::chat_model] + def self?.variants: -> ::Array[OpenAI::Models::Chat::CompletionCreateParams::model] end type function_call = - OpenAI::Models::Chat::CompletionCreateParams::FunctionCall::function_call_mode - | OpenAI::Models::Chat::ChatCompletionFunctionCallOption + OpenAI::Chat::CompletionCreateParams::FunctionCall::function_call_mode + | OpenAI::Chat::ChatCompletionFunctionCallOption module FunctionCall extend OpenAI::Internal::Type::Union @@ -187,10 +185,10 @@ module OpenAI NONE: :none AUTO: :auto - def self?.values: -> ::Array[OpenAI::Models::Chat::CompletionCreateParams::FunctionCall::function_call_mode] + def self?.values: -> ::Array[OpenAI::Chat::CompletionCreateParams::FunctionCall::function_call_mode] end - def self?.variants: -> [OpenAI::Models::Chat::CompletionCreateParams::FunctionCall::function_call_mode, OpenAI::Models::Chat::ChatCompletionFunctionCallOption] + def self?.variants: -> ::Array[OpenAI::Models::Chat::CompletionCreateParams::function_call] end type function = @@ -218,8 +216,6 @@ module OpenAI ?description: String, ?parameters: OpenAI::Models::function_parameters ) -> void - - def to_hash: -> OpenAI::Models::Chat::CompletionCreateParams::function end type modality = :text | :audio @@ -230,18 +226,18 @@ module OpenAI TEXT: :text AUDIO: :audio - def self?.values: -> ::Array[OpenAI::Models::Chat::CompletionCreateParams::modality] + def self?.values: -> ::Array[OpenAI::Chat::CompletionCreateParams::modality] end type response_format = - OpenAI::Models::ResponseFormatText - | OpenAI::Models::ResponseFormatJSONSchema - | OpenAI::Models::ResponseFormatJSONObject + OpenAI::ResponseFormatText + | OpenAI::ResponseFormatJSONSchema + | OpenAI::ResponseFormatJSONObject module ResponseFormat extend OpenAI::Internal::Type::Union - def self?.variants: -> [OpenAI::Models::ResponseFormatText, OpenAI::Models::ResponseFormatJSONSchema, OpenAI::Models::ResponseFormatJSONObject] + def self?.variants: -> ::Array[OpenAI::Models::Chat::CompletionCreateParams::response_format] end type service_tier = :auto | :default | :flex @@ -261,33 +257,31 @@ module OpenAI module Stop extend OpenAI::Internal::Type::Union - def self?.variants: -> [String, ::Array[String]] + def self?.variants: -> ::Array[OpenAI::Models::Chat::CompletionCreateParams::stop] StringArray: OpenAI::Internal::Type::Converter end type web_search_options = { - search_context_size: OpenAI::Models::Chat::CompletionCreateParams::WebSearchOptions::search_context_size, - user_location: OpenAI::Models::Chat::CompletionCreateParams::WebSearchOptions::UserLocation? + search_context_size: OpenAI::Chat::CompletionCreateParams::WebSearchOptions::search_context_size, + user_location: OpenAI::Chat::CompletionCreateParams::WebSearchOptions::UserLocation? } class WebSearchOptions < OpenAI::Internal::Type::BaseModel - attr_reader search_context_size: OpenAI::Models::Chat::CompletionCreateParams::WebSearchOptions::search_context_size? + attr_reader search_context_size: OpenAI::Chat::CompletionCreateParams::WebSearchOptions::search_context_size? def search_context_size=: ( - OpenAI::Models::Chat::CompletionCreateParams::WebSearchOptions::search_context_size - ) -> OpenAI::Models::Chat::CompletionCreateParams::WebSearchOptions::search_context_size + OpenAI::Chat::CompletionCreateParams::WebSearchOptions::search_context_size + ) -> OpenAI::Chat::CompletionCreateParams::WebSearchOptions::search_context_size - attr_accessor user_location: OpenAI::Models::Chat::CompletionCreateParams::WebSearchOptions::UserLocation? + attr_accessor user_location: OpenAI::Chat::CompletionCreateParams::WebSearchOptions::UserLocation? def initialize: ( - ?search_context_size: OpenAI::Models::Chat::CompletionCreateParams::WebSearchOptions::search_context_size, - ?user_location: OpenAI::Models::Chat::CompletionCreateParams::WebSearchOptions::UserLocation? + ?search_context_size: OpenAI::Chat::CompletionCreateParams::WebSearchOptions::search_context_size, + ?user_location: OpenAI::Chat::CompletionCreateParams::WebSearchOptions::UserLocation? ) -> void - def to_hash: -> OpenAI::Models::Chat::CompletionCreateParams::web_search_options - type search_context_size = :low | :medium | :high module SearchContextSize @@ -297,27 +291,25 @@ module OpenAI MEDIUM: :medium HIGH: :high - def self?.values: -> ::Array[OpenAI::Models::Chat::CompletionCreateParams::WebSearchOptions::search_context_size] + def self?.values: -> ::Array[OpenAI::Chat::CompletionCreateParams::WebSearchOptions::search_context_size] end type user_location = { - approximate: OpenAI::Models::Chat::CompletionCreateParams::WebSearchOptions::UserLocation::Approximate, + approximate: OpenAI::Chat::CompletionCreateParams::WebSearchOptions::UserLocation::Approximate, type: :approximate } class UserLocation < OpenAI::Internal::Type::BaseModel - attr_accessor approximate: OpenAI::Models::Chat::CompletionCreateParams::WebSearchOptions::UserLocation::Approximate + attr_accessor approximate: OpenAI::Chat::CompletionCreateParams::WebSearchOptions::UserLocation::Approximate attr_accessor type: :approximate def initialize: ( - approximate: OpenAI::Models::Chat::CompletionCreateParams::WebSearchOptions::UserLocation::Approximate, + approximate: OpenAI::Chat::CompletionCreateParams::WebSearchOptions::UserLocation::Approximate, ?type: :approximate ) -> void - def to_hash: -> OpenAI::Models::Chat::CompletionCreateParams::WebSearchOptions::user_location - type approximate = { city: String, @@ -349,8 +341,6 @@ module OpenAI ?region: String, ?timezone: String ) -> void - - def to_hash: -> OpenAI::Models::Chat::CompletionCreateParams::WebSearchOptions::UserLocation::approximate end end end diff --git a/sig/openai/models/chat/completion_delete_params.rbs b/sig/openai/models/chat/completion_delete_params.rbs index 324fe253..e20bc3a4 100644 --- a/sig/openai/models/chat/completion_delete_params.rbs +++ b/sig/openai/models/chat/completion_delete_params.rbs @@ -9,8 +9,6 @@ module OpenAI include OpenAI::Internal::Type::RequestParameters def initialize: (?request_options: OpenAI::request_opts) -> void - - def to_hash: -> OpenAI::Models::Chat::completion_delete_params end end end diff --git a/sig/openai/models/chat/completion_list_params.rbs b/sig/openai/models/chat/completion_list_params.rbs index e7bbb7d5..83b22904 100644 --- a/sig/openai/models/chat/completion_list_params.rbs +++ b/sig/openai/models/chat/completion_list_params.rbs @@ -44,8 +44,6 @@ module OpenAI ?request_options: OpenAI::request_opts ) -> void - def to_hash: -> OpenAI::Models::Chat::completion_list_params - type order = :asc | :desc module Order diff --git a/sig/openai/models/chat/completion_retrieve_params.rbs b/sig/openai/models/chat/completion_retrieve_params.rbs index 7d97ef11..8d4b832e 100644 --- a/sig/openai/models/chat/completion_retrieve_params.rbs +++ b/sig/openai/models/chat/completion_retrieve_params.rbs @@ -9,8 +9,6 @@ module OpenAI include OpenAI::Internal::Type::RequestParameters def initialize: (?request_options: OpenAI::request_opts) -> void - - def to_hash: -> OpenAI::Models::Chat::completion_retrieve_params end end end diff --git a/sig/openai/models/chat/completion_update_params.rbs b/sig/openai/models/chat/completion_update_params.rbs index dc63a22a..942741c4 100644 --- a/sig/openai/models/chat/completion_update_params.rbs +++ b/sig/openai/models/chat/completion_update_params.rbs @@ -15,8 +15,6 @@ module OpenAI metadata: OpenAI::Models::metadata?, ?request_options: OpenAI::request_opts ) -> void - - def to_hash: -> OpenAI::Models::Chat::completion_update_params end end end diff --git a/sig/openai/models/chat/completions/message_list_params.rbs b/sig/openai/models/chat/completions/message_list_params.rbs index 73db541f..0257770c 100644 --- a/sig/openai/models/chat/completions/message_list_params.rbs +++ b/sig/openai/models/chat/completions/message_list_params.rbs @@ -35,8 +35,6 @@ module OpenAI ?request_options: OpenAI::request_opts ) -> void - def to_hash: -> OpenAI::Models::Chat::Completions::message_list_params - type order = :asc | :desc module Order diff --git a/sig/openai/models/comparison_filter.rbs b/sig/openai/models/comparison_filter.rbs index e4a99bcf..a2288002 100644 --- a/sig/openai/models/comparison_filter.rbs +++ b/sig/openai/models/comparison_filter.rbs @@ -3,25 +3,23 @@ module OpenAI type comparison_filter = { key: String, - type: OpenAI::Models::ComparisonFilter::type_, - value: OpenAI::Models::ComparisonFilter::value + type: OpenAI::ComparisonFilter::type_, + value: OpenAI::ComparisonFilter::value } class ComparisonFilter < OpenAI::Internal::Type::BaseModel attr_accessor key: String - attr_accessor type: OpenAI::Models::ComparisonFilter::type_ + attr_accessor type: OpenAI::ComparisonFilter::type_ - attr_accessor value: OpenAI::Models::ComparisonFilter::value + attr_accessor value: OpenAI::ComparisonFilter::value def initialize: ( key: String, - type: OpenAI::Models::ComparisonFilter::type_, - value: OpenAI::Models::ComparisonFilter::value + type: OpenAI::ComparisonFilter::type_, + value: OpenAI::ComparisonFilter::value ) -> void - def to_hash: -> OpenAI::Models::comparison_filter - type type_ = :eq | :ne | :gt | :gte | :lt | :lte module Type @@ -34,7 +32,7 @@ module OpenAI LT: :lt LTE: :lte - def self?.values: -> ::Array[OpenAI::Models::ComparisonFilter::type_] + def self?.values: -> ::Array[OpenAI::ComparisonFilter::type_] end type value = String | Float | bool @@ -42,7 +40,7 @@ module OpenAI module Value extend OpenAI::Internal::Type::Union - def self?.variants: -> [String, Float, bool] + def self?.variants: -> ::Array[OpenAI::ComparisonFilter::value] end end end diff --git a/sig/openai/models/completion.rbs b/sig/openai/models/completion.rbs index ed2ca5d6..a9d8a71b 100644 --- a/sig/openai/models/completion.rbs +++ b/sig/openai/models/completion.rbs @@ -3,18 +3,18 @@ module OpenAI type completion = { id: String, - choices: ::Array[OpenAI::Models::CompletionChoice], + choices: ::Array[OpenAI::CompletionChoice], created: Integer, model: String, object: :text_completion, system_fingerprint: String, - usage: OpenAI::Models::CompletionUsage + usage: OpenAI::CompletionUsage } class Completion < OpenAI::Internal::Type::BaseModel attr_accessor id: String - attr_accessor choices: ::Array[OpenAI::Models::CompletionChoice] + attr_accessor choices: ::Array[OpenAI::CompletionChoice] attr_accessor created: Integer @@ -26,23 +26,19 @@ module OpenAI def system_fingerprint=: (String) -> String - attr_reader usage: OpenAI::Models::CompletionUsage? + attr_reader usage: OpenAI::CompletionUsage? - def usage=: ( - OpenAI::Models::CompletionUsage - ) -> OpenAI::Models::CompletionUsage + def usage=: (OpenAI::CompletionUsage) -> OpenAI::CompletionUsage def initialize: ( id: String, - choices: ::Array[OpenAI::Models::CompletionChoice], + choices: ::Array[OpenAI::CompletionChoice], created: Integer, model: String, ?system_fingerprint: String, - ?usage: OpenAI::Models::CompletionUsage, + ?usage: OpenAI::CompletionUsage, ?object: :text_completion ) -> void - - def to_hash: -> OpenAI::Models::completion end end end diff --git a/sig/openai/models/completion_choice.rbs b/sig/openai/models/completion_choice.rbs index 5e50fc5f..a42cad21 100644 --- a/sig/openai/models/completion_choice.rbs +++ b/sig/openai/models/completion_choice.rbs @@ -2,30 +2,28 @@ module OpenAI module Models type completion_choice = { - finish_reason: OpenAI::Models::CompletionChoice::finish_reason, + finish_reason: OpenAI::CompletionChoice::finish_reason, index: Integer, - logprobs: OpenAI::Models::CompletionChoice::Logprobs?, + logprobs: OpenAI::CompletionChoice::Logprobs?, text: String } class CompletionChoice < OpenAI::Internal::Type::BaseModel - attr_accessor finish_reason: OpenAI::Models::CompletionChoice::finish_reason + attr_accessor finish_reason: OpenAI::CompletionChoice::finish_reason attr_accessor index: Integer - attr_accessor logprobs: OpenAI::Models::CompletionChoice::Logprobs? + attr_accessor logprobs: OpenAI::CompletionChoice::Logprobs? attr_accessor text: String def initialize: ( - finish_reason: OpenAI::Models::CompletionChoice::finish_reason, + finish_reason: OpenAI::CompletionChoice::finish_reason, index: Integer, - logprobs: OpenAI::Models::CompletionChoice::Logprobs?, + logprobs: OpenAI::CompletionChoice::Logprobs?, text: String ) -> void - def to_hash: -> OpenAI::Models::completion_choice - type finish_reason = :stop | :length | :content_filter module FinishReason @@ -35,7 +33,7 @@ module OpenAI LENGTH: :length CONTENT_FILTER: :content_filter - def self?.values: -> ::Array[OpenAI::Models::CompletionChoice::finish_reason] + def self?.values: -> ::Array[OpenAI::CompletionChoice::finish_reason] end type logprobs = @@ -71,8 +69,6 @@ module OpenAI ?tokens: ::Array[String], ?top_logprobs: ::Array[::Hash[Symbol, Float]] ) -> void - - def to_hash: -> OpenAI::Models::CompletionChoice::logprobs end end end diff --git a/sig/openai/models/completion_create_params.rbs b/sig/openai/models/completion_create_params.rbs index 184a3c57..f2a4f357 100644 --- a/sig/openai/models/completion_create_params.rbs +++ b/sig/openai/models/completion_create_params.rbs @@ -14,7 +14,7 @@ module OpenAI presence_penalty: Float?, seed: Integer?, stop: OpenAI::Models::CompletionCreateParams::stop?, - stream_options: OpenAI::Models::Chat::ChatCompletionStreamOptions?, + stream_options: OpenAI::Chat::ChatCompletionStreamOptions?, suffix: String?, temperature: Float?, top_p: Float?, @@ -50,7 +50,7 @@ module OpenAI attr_accessor stop: OpenAI::Models::CompletionCreateParams::stop? - attr_accessor stream_options: OpenAI::Models::Chat::ChatCompletionStreamOptions? + attr_accessor stream_options: OpenAI::Chat::ChatCompletionStreamOptions? attr_accessor suffix: String? @@ -75,7 +75,7 @@ module OpenAI ?presence_penalty: Float?, ?seed: Integer?, ?stop: OpenAI::Models::CompletionCreateParams::stop?, - ?stream_options: OpenAI::Models::Chat::ChatCompletionStreamOptions?, + ?stream_options: OpenAI::Chat::ChatCompletionStreamOptions?, ?suffix: String?, ?temperature: Float?, ?top_p: Float?, @@ -83,17 +83,13 @@ module OpenAI ?request_options: OpenAI::request_opts ) -> void - def to_hash: -> OpenAI::Models::completion_create_params - type model = String | :"gpt-3.5-turbo-instruct" | :"davinci-002" | :"babbage-002" module Model extend OpenAI::Internal::Type::Union - def self?.variants: -> [String, (:"gpt-3.5-turbo-instruct" - | :"davinci-002" - | :"babbage-002")] + def self?.variants: -> ::Array[OpenAI::Models::CompletionCreateParams::model] GPT_3_5_TURBO_INSTRUCT: :"gpt-3.5-turbo-instruct" DAVINCI_002: :"davinci-002" @@ -106,7 +102,7 @@ module OpenAI module Prompt extend OpenAI::Internal::Type::Union - def self?.variants: -> [String, ::Array[String], ::Array[Integer], ::Array[::Array[Integer]]] + def self?.variants: -> ::Array[OpenAI::Models::CompletionCreateParams::prompt] StringArray: OpenAI::Internal::Type::Converter @@ -120,7 +116,7 @@ module OpenAI module Stop extend OpenAI::Internal::Type::Union - def self?.variants: -> [String, ::Array[String]] + def self?.variants: -> ::Array[OpenAI::Models::CompletionCreateParams::stop] StringArray: OpenAI::Internal::Type::Converter end diff --git a/sig/openai/models/completion_usage.rbs b/sig/openai/models/completion_usage.rbs index 5a98db8b..f50f1dad 100644 --- a/sig/openai/models/completion_usage.rbs +++ b/sig/openai/models/completion_usage.rbs @@ -5,8 +5,8 @@ module OpenAI completion_tokens: Integer, prompt_tokens: Integer, total_tokens: Integer, - completion_tokens_details: OpenAI::Models::CompletionUsage::CompletionTokensDetails, - prompt_tokens_details: OpenAI::Models::CompletionUsage::PromptTokensDetails + completion_tokens_details: OpenAI::CompletionUsage::CompletionTokensDetails, + prompt_tokens_details: OpenAI::CompletionUsage::PromptTokensDetails } class CompletionUsage < OpenAI::Internal::Type::BaseModel @@ -16,28 +16,26 @@ module OpenAI attr_accessor total_tokens: Integer - attr_reader completion_tokens_details: OpenAI::Models::CompletionUsage::CompletionTokensDetails? + attr_reader completion_tokens_details: OpenAI::CompletionUsage::CompletionTokensDetails? def completion_tokens_details=: ( - OpenAI::Models::CompletionUsage::CompletionTokensDetails - ) -> OpenAI::Models::CompletionUsage::CompletionTokensDetails + OpenAI::CompletionUsage::CompletionTokensDetails + ) -> OpenAI::CompletionUsage::CompletionTokensDetails - attr_reader prompt_tokens_details: OpenAI::Models::CompletionUsage::PromptTokensDetails? + attr_reader prompt_tokens_details: OpenAI::CompletionUsage::PromptTokensDetails? def prompt_tokens_details=: ( - OpenAI::Models::CompletionUsage::PromptTokensDetails - ) -> OpenAI::Models::CompletionUsage::PromptTokensDetails + OpenAI::CompletionUsage::PromptTokensDetails + ) -> OpenAI::CompletionUsage::PromptTokensDetails def initialize: ( completion_tokens: Integer, prompt_tokens: Integer, total_tokens: Integer, - ?completion_tokens_details: OpenAI::Models::CompletionUsage::CompletionTokensDetails, - ?prompt_tokens_details: OpenAI::Models::CompletionUsage::PromptTokensDetails + ?completion_tokens_details: OpenAI::CompletionUsage::CompletionTokensDetails, + ?prompt_tokens_details: OpenAI::CompletionUsage::PromptTokensDetails ) -> void - def to_hash: -> OpenAI::Models::completion_usage - type completion_tokens_details = { accepted_prediction_tokens: Integer, @@ -69,8 +67,6 @@ module OpenAI ?reasoning_tokens: Integer, ?rejected_prediction_tokens: Integer ) -> void - - def to_hash: -> OpenAI::Models::CompletionUsage::completion_tokens_details end type prompt_tokens_details = @@ -89,8 +85,6 @@ module OpenAI ?audio_tokens: Integer, ?cached_tokens: Integer ) -> void - - def to_hash: -> OpenAI::Models::CompletionUsage::prompt_tokens_details end end end diff --git a/sig/openai/models/compound_filter.rbs b/sig/openai/models/compound_filter.rbs index 2f98c0d3..f5c17954 100644 --- a/sig/openai/models/compound_filter.rbs +++ b/sig/openai/models/compound_filter.rbs @@ -2,28 +2,26 @@ module OpenAI module Models type compound_filter = { - filters: ::Array[OpenAI::Models::CompoundFilter::filter], - type: OpenAI::Models::CompoundFilter::type_ + filters: ::Array[OpenAI::CompoundFilter::filter], + type: OpenAI::CompoundFilter::type_ } class CompoundFilter < OpenAI::Internal::Type::BaseModel - attr_accessor filters: ::Array[OpenAI::Models::CompoundFilter::filter] + attr_accessor filters: ::Array[OpenAI::CompoundFilter::filter] - attr_accessor type: OpenAI::Models::CompoundFilter::type_ + attr_accessor type: OpenAI::CompoundFilter::type_ def initialize: ( - filters: ::Array[OpenAI::Models::CompoundFilter::filter], - type: OpenAI::Models::CompoundFilter::type_ + filters: ::Array[OpenAI::CompoundFilter::filter], + type: OpenAI::CompoundFilter::type_ ) -> void - def to_hash: -> OpenAI::Models::compound_filter - - type filter = OpenAI::Models::ComparisonFilter | top + type filter = OpenAI::ComparisonFilter | top module Filter extend OpenAI::Internal::Type::Union - def self?.variants: -> [OpenAI::Models::ComparisonFilter, top] + def self?.variants: -> ::Array[OpenAI::CompoundFilter::filter] end type type_ = :and | :or @@ -34,7 +32,7 @@ module OpenAI AND: :and OR: :or - def self?.values: -> ::Array[OpenAI::Models::CompoundFilter::type_] + def self?.values: -> ::Array[OpenAI::CompoundFilter::type_] end end end diff --git a/sig/openai/models/create_embedding_response.rbs b/sig/openai/models/create_embedding_response.rbs index d9d813c3..d406e7da 100644 --- a/sig/openai/models/create_embedding_response.rbs +++ b/sig/openai/models/create_embedding_response.rbs @@ -2,30 +2,28 @@ module OpenAI module Models type create_embedding_response = { - data: ::Array[OpenAI::Models::Embedding], + data: ::Array[OpenAI::Embedding], model: String, object: :list, - usage: OpenAI::Models::CreateEmbeddingResponse::Usage + usage: OpenAI::CreateEmbeddingResponse::Usage } class CreateEmbeddingResponse < OpenAI::Internal::Type::BaseModel - attr_accessor data: ::Array[OpenAI::Models::Embedding] + attr_accessor data: ::Array[OpenAI::Embedding] attr_accessor model: String attr_accessor object: :list - attr_accessor usage: OpenAI::Models::CreateEmbeddingResponse::Usage + attr_accessor usage: OpenAI::CreateEmbeddingResponse::Usage def initialize: ( - data: ::Array[OpenAI::Models::Embedding], + data: ::Array[OpenAI::Embedding], model: String, - usage: OpenAI::Models::CreateEmbeddingResponse::Usage, + usage: OpenAI::CreateEmbeddingResponse::Usage, ?object: :list ) -> void - def to_hash: -> OpenAI::Models::create_embedding_response - type usage = { prompt_tokens: Integer, total_tokens: Integer } class Usage < OpenAI::Internal::Type::BaseModel @@ -34,8 +32,6 @@ module OpenAI attr_accessor total_tokens: Integer def initialize: (prompt_tokens: Integer, total_tokens: Integer) -> void - - def to_hash: -> OpenAI::Models::CreateEmbeddingResponse::usage end end end diff --git a/sig/openai/models/embedding.rbs b/sig/openai/models/embedding.rbs index c0787d7b..88478e43 100644 --- a/sig/openai/models/embedding.rbs +++ b/sig/openai/models/embedding.rbs @@ -15,8 +15,6 @@ module OpenAI index: Integer, ?object: :embedding ) -> void - - def to_hash: -> OpenAI::Models::embedding end end end diff --git a/sig/openai/models/embedding_create_params.rbs b/sig/openai/models/embedding_create_params.rbs index 16c3bd6d..73e2bc84 100644 --- a/sig/openai/models/embedding_create_params.rbs +++ b/sig/openai/models/embedding_create_params.rbs @@ -41,15 +41,13 @@ module OpenAI ?request_options: OpenAI::request_opts ) -> void - def to_hash: -> OpenAI::Models::embedding_create_params - type input = String | ::Array[String] | ::Array[Integer] | ::Array[::Array[Integer]] module Input extend OpenAI::Internal::Type::Union - def self?.variants: -> [String, ::Array[String], ::Array[Integer], ::Array[::Array[Integer]]] + def self?.variants: -> ::Array[OpenAI::Models::EmbeddingCreateParams::input] StringArray: OpenAI::Internal::Type::Converter @@ -63,7 +61,7 @@ module OpenAI module Model extend OpenAI::Internal::Type::Union - def self?.variants: -> [String, OpenAI::Models::embedding_model] + def self?.variants: -> ::Array[OpenAI::Models::EmbeddingCreateParams::model] end type encoding_format = :float | :base64 diff --git a/sig/openai/models/error_object.rbs b/sig/openai/models/error_object.rbs index 0a526b8a..f3cb58bb 100644 --- a/sig/openai/models/error_object.rbs +++ b/sig/openai/models/error_object.rbs @@ -18,8 +18,6 @@ module OpenAI param: String?, type: String ) -> void - - def to_hash: -> OpenAI::Models::error_object end end end diff --git a/sig/openai/models/eval_create_params.rbs b/sig/openai/models/eval_create_params.rbs index 09ba33d8..ac24927c 100644 --- a/sig/openai/models/eval_create_params.rbs +++ b/sig/openai/models/eval_create_params.rbs @@ -3,7 +3,7 @@ module OpenAI type eval_create_params = { data_source_config: OpenAI::Models::EvalCreateParams::data_source_config, - testing_criteria: ::Array[OpenAI::Models::EvalCreateParams::testing_criterion], + testing_criteria: ::Array[OpenAI::EvalCreateParams::testing_criterion], metadata: OpenAI::Models::metadata?, name: String } @@ -15,7 +15,7 @@ module OpenAI attr_accessor data_source_config: OpenAI::Models::EvalCreateParams::data_source_config - attr_accessor testing_criteria: ::Array[OpenAI::Models::EvalCreateParams::testing_criterion] + attr_accessor testing_criteria: ::Array[OpenAI::EvalCreateParams::testing_criterion] attr_accessor metadata: OpenAI::Models::metadata? @@ -25,17 +25,15 @@ module OpenAI def initialize: ( data_source_config: OpenAI::Models::EvalCreateParams::data_source_config, - testing_criteria: ::Array[OpenAI::Models::EvalCreateParams::testing_criterion], + testing_criteria: ::Array[OpenAI::EvalCreateParams::testing_criterion], ?metadata: OpenAI::Models::metadata?, ?name: String, ?request_options: OpenAI::request_opts ) -> void - def to_hash: -> OpenAI::Models::eval_create_params - type data_source_config = - OpenAI::Models::EvalCreateParams::DataSourceConfig::Custom - | OpenAI::Models::EvalCreateParams::DataSourceConfig::Logs + OpenAI::EvalCreateParams::DataSourceConfig::Custom + | OpenAI::EvalCreateParams::DataSourceConfig::Logs module DataSourceConfig extend OpenAI::Internal::Type::Union @@ -61,8 +59,6 @@ module OpenAI ?include_sample_schema: bool, ?type: :custom ) -> void - - def to_hash: -> OpenAI::Models::EvalCreateParams::DataSourceConfig::custom end type logs = { type: :logs, metadata: ::Hash[Symbol, top] } @@ -75,26 +71,24 @@ module OpenAI def metadata=: (::Hash[Symbol, top]) -> ::Hash[Symbol, top] def initialize: (?metadata: ::Hash[Symbol, top], ?type: :logs) -> void - - def to_hash: -> OpenAI::Models::EvalCreateParams::DataSourceConfig::logs end - def self?.variants: -> [OpenAI::Models::EvalCreateParams::DataSourceConfig::Custom, OpenAI::Models::EvalCreateParams::DataSourceConfig::Logs] + def self?.variants: -> ::Array[OpenAI::Models::EvalCreateParams::data_source_config] end type testing_criterion = - OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel - | OpenAI::Models::EvalStringCheckGrader - | OpenAI::Models::EvalTextSimilarityGrader - | OpenAI::Models::EvalCreateParams::TestingCriterion::Python - | OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel + OpenAI::EvalCreateParams::TestingCriterion::LabelModel + | OpenAI::EvalStringCheckGrader + | OpenAI::EvalTextSimilarityGrader + | OpenAI::EvalCreateParams::TestingCriterion::Python + | OpenAI::EvalCreateParams::TestingCriterion::ScoreModel module TestingCriterion extend OpenAI::Internal::Type::Union type label_model = { - input: ::Array[OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::input], + input: ::Array[OpenAI::EvalCreateParams::TestingCriterion::LabelModel::input], labels: ::Array[String], model: String, name: String, @@ -103,7 +97,7 @@ module OpenAI } class LabelModel < OpenAI::Internal::Type::BaseModel - attr_accessor input: ::Array[OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::input] + attr_accessor input: ::Array[OpenAI::EvalCreateParams::TestingCriterion::LabelModel::input] attr_accessor labels: ::Array[String] @@ -116,7 +110,7 @@ module OpenAI attr_accessor type: :label_model def initialize: ( - input: ::Array[OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::input], + input: ::Array[OpenAI::EvalCreateParams::TestingCriterion::LabelModel::input], labels: ::Array[String], model: String, name: String, @@ -124,11 +118,9 @@ module OpenAI ?type: :label_model ) -> void - def to_hash: -> OpenAI::Models::EvalCreateParams::TestingCriterion::label_model - type input = - OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::SimpleInputMessage - | OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem + OpenAI::EvalCreateParams::TestingCriterion::LabelModel::Input::SimpleInputMessage + | OpenAI::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem module Input extend OpenAI::Internal::Type::Union @@ -141,40 +133,36 @@ module OpenAI attr_accessor role: String def initialize: (content: String, role: String) -> void - - def to_hash: -> OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::simple_input_message end type eval_item = { - content: OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::content, - role: OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::role, - type: OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::type_ + content: OpenAI::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::content, + role: OpenAI::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::role, + type: OpenAI::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::type_ } class EvalItem < OpenAI::Internal::Type::BaseModel - attr_accessor content: OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::content + attr_accessor content: OpenAI::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::content - attr_accessor role: OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::role + attr_accessor role: OpenAI::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::role - attr_reader type: OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::type_? + attr_reader type: OpenAI::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::type_? def type=: ( - OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::type_ - ) -> OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::type_ + OpenAI::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::type_ + ) -> OpenAI::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::type_ def initialize: ( - content: OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::content, - role: OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::role, - ?type: OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::type_ + content: OpenAI::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::content, + role: OpenAI::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::role, + ?type: OpenAI::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::type_ ) -> void - def to_hash: -> OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::eval_item - type content = String - | OpenAI::Models::Responses::ResponseInputText - | OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::Content::OutputText + | OpenAI::Responses::ResponseInputText + | OpenAI::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::Content::OutputText module Content extend OpenAI::Internal::Type::Union @@ -187,11 +175,9 @@ module OpenAI attr_accessor type: :output_text def initialize: (text: String, ?type: :output_text) -> void - - def to_hash: -> OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::Content::output_text end - def self?.variants: -> [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::Content::OutputText] + def self?.variants: -> ::Array[OpenAI::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::content] end type role = :user | :assistant | :system | :developer @@ -204,7 +190,7 @@ module OpenAI SYSTEM: :system DEVELOPER: :developer - def self?.values: -> ::Array[OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::role] + def self?.values: -> ::Array[OpenAI::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::role] end type type_ = :message @@ -214,11 +200,11 @@ module OpenAI MESSAGE: :message - def self?.values: -> ::Array[OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::type_] + def self?.values: -> ::Array[OpenAI::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::type_] end end - def self?.variants: -> [OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::SimpleInputMessage, OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem] + def self?.variants: -> ::Array[OpenAI::EvalCreateParams::TestingCriterion::LabelModel::input] end end @@ -253,13 +239,11 @@ module OpenAI ?pass_threshold: Float, ?type: :python ) -> void - - def to_hash: -> OpenAI::Models::EvalCreateParams::TestingCriterion::python end type score_model = { - input: ::Array[OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input], + input: ::Array[OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input], model: String, name: String, type: :score_model, @@ -269,7 +253,7 @@ module OpenAI } class ScoreModel < OpenAI::Internal::Type::BaseModel - attr_accessor input: ::Array[OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input] + attr_accessor input: ::Array[OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input] attr_accessor model: String @@ -290,7 +274,7 @@ module OpenAI def sampling_params=: (top) -> top def initialize: ( - input: ::Array[OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input], + input: ::Array[OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input], model: String, name: String, ?pass_threshold: Float, @@ -299,38 +283,34 @@ module OpenAI ?type: :score_model ) -> void - def to_hash: -> OpenAI::Models::EvalCreateParams::TestingCriterion::score_model - type input = { - content: OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input::content, - role: OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input::role, - type: OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input::type_ + content: OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input::content, + role: OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input::role, + type: OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input::type_ } class Input < OpenAI::Internal::Type::BaseModel - attr_accessor content: OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input::content + attr_accessor content: OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input::content - attr_accessor role: OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input::role + attr_accessor role: OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input::role - attr_reader type: OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input::type_? + attr_reader type: OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input::type_? def type=: ( - OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input::type_ - ) -> OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input::type_ + OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input::type_ + ) -> OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input::type_ def initialize: ( - content: OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input::content, - role: OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input::role, - ?type: OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input::type_ + content: OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input::content, + role: OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input::role, + ?type: OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input::type_ ) -> void - def to_hash: -> OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::input - type content = String - | OpenAI::Models::Responses::ResponseInputText - | OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input::Content::OutputText + | OpenAI::Responses::ResponseInputText + | OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input::Content::OutputText module Content extend OpenAI::Internal::Type::Union @@ -343,11 +323,9 @@ module OpenAI attr_accessor type: :output_text def initialize: (text: String, ?type: :output_text) -> void - - def to_hash: -> OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input::Content::output_text end - def self?.variants: -> [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input::Content::OutputText] + def self?.variants: -> ::Array[OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input::content] end type role = :user | :assistant | :system | :developer @@ -360,7 +338,7 @@ module OpenAI SYSTEM: :system DEVELOPER: :developer - def self?.values: -> ::Array[OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input::role] + def self?.values: -> ::Array[OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input::role] end type type_ = :message @@ -370,12 +348,12 @@ module OpenAI MESSAGE: :message - def self?.values: -> ::Array[OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel::Input::type_] + def self?.values: -> ::Array[OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input::type_] end end end - def self?.variants: -> [OpenAI::Models::EvalCreateParams::TestingCriterion::LabelModel, OpenAI::Models::EvalStringCheckGrader, OpenAI::Models::EvalTextSimilarityGrader, OpenAI::Models::EvalCreateParams::TestingCriterion::Python, OpenAI::Models::EvalCreateParams::TestingCriterion::ScoreModel] + def self?.variants: -> ::Array[OpenAI::EvalCreateParams::testing_criterion] end end end diff --git a/sig/openai/models/eval_create_response.rbs b/sig/openai/models/eval_create_response.rbs index 8ff0e39f..8f0a934e 100644 --- a/sig/openai/models/eval_create_response.rbs +++ b/sig/openai/models/eval_create_response.rbs @@ -36,22 +36,20 @@ module OpenAI ?object: :eval ) -> void - def to_hash: -> OpenAI::Models::eval_create_response - type data_source_config = - OpenAI::Models::EvalCustomDataSourceConfig - | OpenAI::Models::EvalStoredCompletionsDataSourceConfig + OpenAI::EvalCustomDataSourceConfig + | OpenAI::EvalStoredCompletionsDataSourceConfig module DataSourceConfig extend OpenAI::Internal::Type::Union - def self?.variants: -> [OpenAI::Models::EvalCustomDataSourceConfig, OpenAI::Models::EvalStoredCompletionsDataSourceConfig] + def self?.variants: -> ::Array[OpenAI::Models::EvalCreateResponse::data_source_config] end type testing_criterion = - OpenAI::Models::EvalLabelModelGrader - | OpenAI::Models::EvalStringCheckGrader - | OpenAI::Models::EvalTextSimilarityGrader + OpenAI::EvalLabelModelGrader + | OpenAI::EvalStringCheckGrader + | OpenAI::EvalTextSimilarityGrader | OpenAI::Models::EvalCreateResponse::TestingCriterion::Python | OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel @@ -89,8 +87,6 @@ module OpenAI ?pass_threshold: Float, ?type: :python ) -> void - - def to_hash: -> OpenAI::Models::EvalCreateResponse::TestingCriterion::python end type score_model = @@ -135,8 +131,6 @@ module OpenAI ?type: :score_model ) -> void - def to_hash: -> OpenAI::Models::EvalCreateResponse::TestingCriterion::score_model - type input = { content: OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::content, @@ -161,11 +155,9 @@ module OpenAI ?type: OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::type_ ) -> void - def to_hash: -> OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::input - type content = String - | OpenAI::Models::Responses::ResponseInputText + | OpenAI::Responses::ResponseInputText | OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Content::OutputText module Content @@ -179,11 +171,9 @@ module OpenAI attr_accessor type: :output_text def initialize: (text: String, ?type: :output_text) -> void - - def to_hash: -> OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Content::output_text end - def self?.variants: -> [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Content::OutputText] + def self?.variants: -> ::Array[OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::content] end type role = :user | :assistant | :system | :developer @@ -211,7 +201,7 @@ module OpenAI end end - def self?.variants: -> [OpenAI::Models::EvalLabelModelGrader, OpenAI::Models::EvalStringCheckGrader, OpenAI::Models::EvalTextSimilarityGrader, OpenAI::Models::EvalCreateResponse::TestingCriterion::Python, OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel] + def self?.variants: -> ::Array[OpenAI::Models::EvalCreateResponse::testing_criterion] end end end diff --git a/sig/openai/models/eval_custom_data_source_config.rbs b/sig/openai/models/eval_custom_data_source_config.rbs index d87e099d..8b53b580 100644 --- a/sig/openai/models/eval_custom_data_source_config.rbs +++ b/sig/openai/models/eval_custom_data_source_config.rbs @@ -9,8 +9,6 @@ module OpenAI attr_accessor type: :custom def initialize: (schema: ::Hash[Symbol, top], ?type: :custom) -> void - - def to_hash: -> OpenAI::Models::eval_custom_data_source_config end end end diff --git a/sig/openai/models/eval_delete_params.rbs b/sig/openai/models/eval_delete_params.rbs index cb820afd..4fb3f99f 100644 --- a/sig/openai/models/eval_delete_params.rbs +++ b/sig/openai/models/eval_delete_params.rbs @@ -7,8 +7,6 @@ module OpenAI include OpenAI::Internal::Type::RequestParameters def initialize: (?request_options: OpenAI::request_opts) -> void - - def to_hash: -> OpenAI::Models::eval_delete_params end end end diff --git a/sig/openai/models/eval_delete_response.rbs b/sig/openai/models/eval_delete_response.rbs index e06e798b..4f0adf53 100644 --- a/sig/openai/models/eval_delete_response.rbs +++ b/sig/openai/models/eval_delete_response.rbs @@ -11,8 +11,6 @@ module OpenAI attr_accessor object: String def initialize: (deleted: bool, eval_id: String, object: String) -> void - - def to_hash: -> OpenAI::Models::eval_delete_response end end end diff --git a/sig/openai/models/eval_label_model_grader.rbs b/sig/openai/models/eval_label_model_grader.rbs index dab1b730..63867ffd 100644 --- a/sig/openai/models/eval_label_model_grader.rbs +++ b/sig/openai/models/eval_label_model_grader.rbs @@ -2,7 +2,7 @@ module OpenAI module Models type eval_label_model_grader = { - input: ::Array[OpenAI::Models::EvalLabelModelGrader::Input], + input: ::Array[OpenAI::EvalLabelModelGrader::Input], labels: ::Array[String], model: String, name: String, @@ -11,7 +11,7 @@ module OpenAI } class EvalLabelModelGrader < OpenAI::Internal::Type::BaseModel - attr_accessor input: ::Array[OpenAI::Models::EvalLabelModelGrader::Input] + attr_accessor input: ::Array[OpenAI::EvalLabelModelGrader::Input] attr_accessor labels: ::Array[String] @@ -24,7 +24,7 @@ module OpenAI attr_accessor type: :label_model def initialize: ( - input: ::Array[OpenAI::Models::EvalLabelModelGrader::Input], + input: ::Array[OpenAI::EvalLabelModelGrader::Input], labels: ::Array[String], model: String, name: String, @@ -32,38 +32,34 @@ module OpenAI ?type: :label_model ) -> void - def to_hash: -> OpenAI::Models::eval_label_model_grader - type input = { - content: OpenAI::Models::EvalLabelModelGrader::Input::content, - role: OpenAI::Models::EvalLabelModelGrader::Input::role, - type: OpenAI::Models::EvalLabelModelGrader::Input::type_ + content: OpenAI::EvalLabelModelGrader::Input::content, + role: OpenAI::EvalLabelModelGrader::Input::role, + type: OpenAI::EvalLabelModelGrader::Input::type_ } class Input < OpenAI::Internal::Type::BaseModel - attr_accessor content: OpenAI::Models::EvalLabelModelGrader::Input::content + attr_accessor content: OpenAI::EvalLabelModelGrader::Input::content - attr_accessor role: OpenAI::Models::EvalLabelModelGrader::Input::role + attr_accessor role: OpenAI::EvalLabelModelGrader::Input::role - attr_reader type: OpenAI::Models::EvalLabelModelGrader::Input::type_? + attr_reader type: OpenAI::EvalLabelModelGrader::Input::type_? def type=: ( - OpenAI::Models::EvalLabelModelGrader::Input::type_ - ) -> OpenAI::Models::EvalLabelModelGrader::Input::type_ + OpenAI::EvalLabelModelGrader::Input::type_ + ) -> OpenAI::EvalLabelModelGrader::Input::type_ def initialize: ( - content: OpenAI::Models::EvalLabelModelGrader::Input::content, - role: OpenAI::Models::EvalLabelModelGrader::Input::role, - ?type: OpenAI::Models::EvalLabelModelGrader::Input::type_ + content: OpenAI::EvalLabelModelGrader::Input::content, + role: OpenAI::EvalLabelModelGrader::Input::role, + ?type: OpenAI::EvalLabelModelGrader::Input::type_ ) -> void - def to_hash: -> OpenAI::Models::EvalLabelModelGrader::input - type content = String - | OpenAI::Models::Responses::ResponseInputText - | OpenAI::Models::EvalLabelModelGrader::Input::Content::OutputText + | OpenAI::Responses::ResponseInputText + | OpenAI::EvalLabelModelGrader::Input::Content::OutputText module Content extend OpenAI::Internal::Type::Union @@ -76,11 +72,9 @@ module OpenAI attr_accessor type: :output_text def initialize: (text: String, ?type: :output_text) -> void - - def to_hash: -> OpenAI::Models::EvalLabelModelGrader::Input::Content::output_text end - def self?.variants: -> [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::EvalLabelModelGrader::Input::Content::OutputText] + def self?.variants: -> ::Array[OpenAI::EvalLabelModelGrader::Input::content] end type role = :user | :assistant | :system | :developer @@ -93,7 +87,7 @@ module OpenAI SYSTEM: :system DEVELOPER: :developer - def self?.values: -> ::Array[OpenAI::Models::EvalLabelModelGrader::Input::role] + def self?.values: -> ::Array[OpenAI::EvalLabelModelGrader::Input::role] end type type_ = :message @@ -103,7 +97,7 @@ module OpenAI MESSAGE: :message - def self?.values: -> ::Array[OpenAI::Models::EvalLabelModelGrader::Input::type_] + def self?.values: -> ::Array[OpenAI::EvalLabelModelGrader::Input::type_] end end end diff --git a/sig/openai/models/eval_list_params.rbs b/sig/openai/models/eval_list_params.rbs index f5a4316b..57ad5212 100644 --- a/sig/openai/models/eval_list_params.rbs +++ b/sig/openai/models/eval_list_params.rbs @@ -41,8 +41,6 @@ module OpenAI ?request_options: OpenAI::request_opts ) -> void - def to_hash: -> OpenAI::Models::eval_list_params - type order = :asc | :desc module Order diff --git a/sig/openai/models/eval_list_response.rbs b/sig/openai/models/eval_list_response.rbs index f7a1047b..0384d54a 100644 --- a/sig/openai/models/eval_list_response.rbs +++ b/sig/openai/models/eval_list_response.rbs @@ -36,22 +36,20 @@ module OpenAI ?object: :eval ) -> void - def to_hash: -> OpenAI::Models::eval_list_response - type data_source_config = - OpenAI::Models::EvalCustomDataSourceConfig - | OpenAI::Models::EvalStoredCompletionsDataSourceConfig + OpenAI::EvalCustomDataSourceConfig + | OpenAI::EvalStoredCompletionsDataSourceConfig module DataSourceConfig extend OpenAI::Internal::Type::Union - def self?.variants: -> [OpenAI::Models::EvalCustomDataSourceConfig, OpenAI::Models::EvalStoredCompletionsDataSourceConfig] + def self?.variants: -> ::Array[OpenAI::Models::EvalListResponse::data_source_config] end type testing_criterion = - OpenAI::Models::EvalLabelModelGrader - | OpenAI::Models::EvalStringCheckGrader - | OpenAI::Models::EvalTextSimilarityGrader + OpenAI::EvalLabelModelGrader + | OpenAI::EvalStringCheckGrader + | OpenAI::EvalTextSimilarityGrader | OpenAI::Models::EvalListResponse::TestingCriterion::Python | OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel @@ -89,8 +87,6 @@ module OpenAI ?pass_threshold: Float, ?type: :python ) -> void - - def to_hash: -> OpenAI::Models::EvalListResponse::TestingCriterion::python end type score_model = @@ -135,8 +131,6 @@ module OpenAI ?type: :score_model ) -> void - def to_hash: -> OpenAI::Models::EvalListResponse::TestingCriterion::score_model - type input = { content: OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::content, @@ -161,11 +155,9 @@ module OpenAI ?type: OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::type_ ) -> void - def to_hash: -> OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::input - type content = String - | OpenAI::Models::Responses::ResponseInputText + | OpenAI::Responses::ResponseInputText | OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Content::OutputText module Content @@ -179,11 +171,9 @@ module OpenAI attr_accessor type: :output_text def initialize: (text: String, ?type: :output_text) -> void - - def to_hash: -> OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Content::output_text end - def self?.variants: -> [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Content::OutputText] + def self?.variants: -> ::Array[OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::content] end type role = :user | :assistant | :system | :developer @@ -211,7 +201,7 @@ module OpenAI end end - def self?.variants: -> [OpenAI::Models::EvalLabelModelGrader, OpenAI::Models::EvalStringCheckGrader, OpenAI::Models::EvalTextSimilarityGrader, OpenAI::Models::EvalListResponse::TestingCriterion::Python, OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel] + def self?.variants: -> ::Array[OpenAI::Models::EvalListResponse::testing_criterion] end end end diff --git a/sig/openai/models/eval_retrieve_params.rbs b/sig/openai/models/eval_retrieve_params.rbs index 9b2a4444..c6242dcb 100644 --- a/sig/openai/models/eval_retrieve_params.rbs +++ b/sig/openai/models/eval_retrieve_params.rbs @@ -8,8 +8,6 @@ module OpenAI include OpenAI::Internal::Type::RequestParameters def initialize: (?request_options: OpenAI::request_opts) -> void - - def to_hash: -> OpenAI::Models::eval_retrieve_params end end end diff --git a/sig/openai/models/eval_retrieve_response.rbs b/sig/openai/models/eval_retrieve_response.rbs index b354045c..191c892e 100644 --- a/sig/openai/models/eval_retrieve_response.rbs +++ b/sig/openai/models/eval_retrieve_response.rbs @@ -36,22 +36,20 @@ module OpenAI ?object: :eval ) -> void - def to_hash: -> OpenAI::Models::eval_retrieve_response - type data_source_config = - OpenAI::Models::EvalCustomDataSourceConfig - | OpenAI::Models::EvalStoredCompletionsDataSourceConfig + OpenAI::EvalCustomDataSourceConfig + | OpenAI::EvalStoredCompletionsDataSourceConfig module DataSourceConfig extend OpenAI::Internal::Type::Union - def self?.variants: -> [OpenAI::Models::EvalCustomDataSourceConfig, OpenAI::Models::EvalStoredCompletionsDataSourceConfig] + def self?.variants: -> ::Array[OpenAI::Models::EvalRetrieveResponse::data_source_config] end type testing_criterion = - OpenAI::Models::EvalLabelModelGrader - | OpenAI::Models::EvalStringCheckGrader - | OpenAI::Models::EvalTextSimilarityGrader + OpenAI::EvalLabelModelGrader + | OpenAI::EvalStringCheckGrader + | OpenAI::EvalTextSimilarityGrader | OpenAI::Models::EvalRetrieveResponse::TestingCriterion::Python | OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel @@ -89,8 +87,6 @@ module OpenAI ?pass_threshold: Float, ?type: :python ) -> void - - def to_hash: -> OpenAI::Models::EvalRetrieveResponse::TestingCriterion::python end type score_model = @@ -135,8 +131,6 @@ module OpenAI ?type: :score_model ) -> void - def to_hash: -> OpenAI::Models::EvalRetrieveResponse::TestingCriterion::score_model - type input = { content: OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::content, @@ -161,11 +155,9 @@ module OpenAI ?type: OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::type_ ) -> void - def to_hash: -> OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::input - type content = String - | OpenAI::Models::Responses::ResponseInputText + | OpenAI::Responses::ResponseInputText | OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Content::OutputText module Content @@ -179,11 +171,9 @@ module OpenAI attr_accessor type: :output_text def initialize: (text: String, ?type: :output_text) -> void - - def to_hash: -> OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Content::output_text end - def self?.variants: -> [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Content::OutputText] + def self?.variants: -> ::Array[OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::content] end type role = :user | :assistant | :system | :developer @@ -211,7 +201,7 @@ module OpenAI end end - def self?.variants: -> [OpenAI::Models::EvalLabelModelGrader, OpenAI::Models::EvalStringCheckGrader, OpenAI::Models::EvalTextSimilarityGrader, OpenAI::Models::EvalRetrieveResponse::TestingCriterion::Python, OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel] + def self?.variants: -> ::Array[OpenAI::Models::EvalRetrieveResponse::testing_criterion] end end end diff --git a/sig/openai/models/eval_stored_completions_data_source_config.rbs b/sig/openai/models/eval_stored_completions_data_source_config.rbs index b99a1a02..345b12d6 100644 --- a/sig/openai/models/eval_stored_completions_data_source_config.rbs +++ b/sig/openai/models/eval_stored_completions_data_source_config.rbs @@ -19,8 +19,6 @@ module OpenAI ?metadata: OpenAI::Models::metadata?, ?type: :stored_completions ) -> void - - def to_hash: -> OpenAI::Models::eval_stored_completions_data_source_config end end end diff --git a/sig/openai/models/eval_string_check_grader.rbs b/sig/openai/models/eval_string_check_grader.rbs index c7d89a65..4fd28012 100644 --- a/sig/openai/models/eval_string_check_grader.rbs +++ b/sig/openai/models/eval_string_check_grader.rbs @@ -4,7 +4,7 @@ module OpenAI { input: String, name: String, - operation: OpenAI::Models::EvalStringCheckGrader::operation, + operation: OpenAI::EvalStringCheckGrader::operation, reference: String, type: :string_check } @@ -14,7 +14,7 @@ module OpenAI attr_accessor name: String - attr_accessor operation: OpenAI::Models::EvalStringCheckGrader::operation + attr_accessor operation: OpenAI::EvalStringCheckGrader::operation attr_accessor reference: String @@ -23,13 +23,11 @@ module OpenAI def initialize: ( input: String, name: String, - operation: OpenAI::Models::EvalStringCheckGrader::operation, + operation: OpenAI::EvalStringCheckGrader::operation, reference: String, ?type: :string_check ) -> void - def to_hash: -> OpenAI::Models::eval_string_check_grader - type operation = :eq | :ne | :like | :ilike module Operation @@ -40,7 +38,7 @@ module OpenAI LIKE: :like ILIKE: :ilike - def self?.values: -> ::Array[OpenAI::Models::EvalStringCheckGrader::operation] + def self?.values: -> ::Array[OpenAI::EvalStringCheckGrader::operation] end end end diff --git a/sig/openai/models/eval_text_similarity_grader.rbs b/sig/openai/models/eval_text_similarity_grader.rbs index 98059580..1e13b3f2 100644 --- a/sig/openai/models/eval_text_similarity_grader.rbs +++ b/sig/openai/models/eval_text_similarity_grader.rbs @@ -2,7 +2,7 @@ module OpenAI module Models type eval_text_similarity_grader = { - evaluation_metric: OpenAI::Models::EvalTextSimilarityGrader::evaluation_metric, + evaluation_metric: OpenAI::EvalTextSimilarityGrader::evaluation_metric, input: String, pass_threshold: Float, reference: String, @@ -11,7 +11,7 @@ module OpenAI } class EvalTextSimilarityGrader < OpenAI::Internal::Type::BaseModel - attr_accessor evaluation_metric: OpenAI::Models::EvalTextSimilarityGrader::evaluation_metric + attr_accessor evaluation_metric: OpenAI::EvalTextSimilarityGrader::evaluation_metric attr_accessor input: String @@ -26,7 +26,7 @@ module OpenAI def name=: (String) -> String def initialize: ( - evaluation_metric: OpenAI::Models::EvalTextSimilarityGrader::evaluation_metric, + evaluation_metric: OpenAI::EvalTextSimilarityGrader::evaluation_metric, input: String, pass_threshold: Float, reference: String, @@ -34,8 +34,6 @@ module OpenAI ?type: :text_similarity ) -> void - def to_hash: -> OpenAI::Models::eval_text_similarity_grader - type evaluation_metric = :fuzzy_match | :bleu @@ -62,7 +60,7 @@ module OpenAI ROUGE_5: :rouge_5 ROUGE_L: :rouge_l - def self?.values: -> ::Array[OpenAI::Models::EvalTextSimilarityGrader::evaluation_metric] + def self?.values: -> ::Array[OpenAI::EvalTextSimilarityGrader::evaluation_metric] end end end diff --git a/sig/openai/models/eval_update_params.rbs b/sig/openai/models/eval_update_params.rbs index aa2b67fa..cb60c3c2 100644 --- a/sig/openai/models/eval_update_params.rbs +++ b/sig/openai/models/eval_update_params.rbs @@ -19,8 +19,6 @@ module OpenAI ?name: String, ?request_options: OpenAI::request_opts ) -> void - - def to_hash: -> OpenAI::Models::eval_update_params end end end diff --git a/sig/openai/models/eval_update_response.rbs b/sig/openai/models/eval_update_response.rbs index 2cc7f800..5138ddc0 100644 --- a/sig/openai/models/eval_update_response.rbs +++ b/sig/openai/models/eval_update_response.rbs @@ -36,22 +36,20 @@ module OpenAI ?object: :eval ) -> void - def to_hash: -> OpenAI::Models::eval_update_response - type data_source_config = - OpenAI::Models::EvalCustomDataSourceConfig - | OpenAI::Models::EvalStoredCompletionsDataSourceConfig + OpenAI::EvalCustomDataSourceConfig + | OpenAI::EvalStoredCompletionsDataSourceConfig module DataSourceConfig extend OpenAI::Internal::Type::Union - def self?.variants: -> [OpenAI::Models::EvalCustomDataSourceConfig, OpenAI::Models::EvalStoredCompletionsDataSourceConfig] + def self?.variants: -> ::Array[OpenAI::Models::EvalUpdateResponse::data_source_config] end type testing_criterion = - OpenAI::Models::EvalLabelModelGrader - | OpenAI::Models::EvalStringCheckGrader - | OpenAI::Models::EvalTextSimilarityGrader + OpenAI::EvalLabelModelGrader + | OpenAI::EvalStringCheckGrader + | OpenAI::EvalTextSimilarityGrader | OpenAI::Models::EvalUpdateResponse::TestingCriterion::Python | OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel @@ -89,8 +87,6 @@ module OpenAI ?pass_threshold: Float, ?type: :python ) -> void - - def to_hash: -> OpenAI::Models::EvalUpdateResponse::TestingCriterion::python end type score_model = @@ -135,8 +131,6 @@ module OpenAI ?type: :score_model ) -> void - def to_hash: -> OpenAI::Models::EvalUpdateResponse::TestingCriterion::score_model - type input = { content: OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::content, @@ -161,11 +155,9 @@ module OpenAI ?type: OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::type_ ) -> void - def to_hash: -> OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::input - type content = String - | OpenAI::Models::Responses::ResponseInputText + | OpenAI::Responses::ResponseInputText | OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Content::OutputText module Content @@ -179,11 +171,9 @@ module OpenAI attr_accessor type: :output_text def initialize: (text: String, ?type: :output_text) -> void - - def to_hash: -> OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Content::output_text end - def self?.variants: -> [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Content::OutputText] + def self?.variants: -> ::Array[OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::content] end type role = :user | :assistant | :system | :developer @@ -211,7 +201,7 @@ module OpenAI end end - def self?.variants: -> [OpenAI::Models::EvalLabelModelGrader, OpenAI::Models::EvalStringCheckGrader, OpenAI::Models::EvalTextSimilarityGrader, OpenAI::Models::EvalUpdateResponse::TestingCriterion::Python, OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel] + def self?.variants: -> ::Array[OpenAI::Models::EvalUpdateResponse::testing_criterion] end end end diff --git a/sig/openai/models/evals/create_eval_completions_run_data_source.rbs b/sig/openai/models/evals/create_eval_completions_run_data_source.rbs index bbe22adb..bec2dc8b 100644 --- a/sig/openai/models/evals/create_eval_completions_run_data_source.rbs +++ b/sig/openai/models/evals/create_eval_completions_run_data_source.rbs @@ -3,70 +3,66 @@ module OpenAI module Evals type create_eval_completions_run_data_source = { - source: OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::source, - type: OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::type_, - input_messages: OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::input_messages, + source: OpenAI::Evals::CreateEvalCompletionsRunDataSource::source, + type: OpenAI::Evals::CreateEvalCompletionsRunDataSource::type_, + input_messages: OpenAI::Evals::CreateEvalCompletionsRunDataSource::input_messages, model: String, - sampling_params: OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::SamplingParams + sampling_params: OpenAI::Evals::CreateEvalCompletionsRunDataSource::SamplingParams } class CreateEvalCompletionsRunDataSource < OpenAI::Internal::Type::BaseModel - attr_accessor source: OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::source + attr_accessor source: OpenAI::Evals::CreateEvalCompletionsRunDataSource::source - attr_accessor type: OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::type_ + attr_accessor type: OpenAI::Evals::CreateEvalCompletionsRunDataSource::type_ - attr_reader input_messages: OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::input_messages? + attr_reader input_messages: OpenAI::Evals::CreateEvalCompletionsRunDataSource::input_messages? def input_messages=: ( - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::input_messages - ) -> OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::input_messages + OpenAI::Evals::CreateEvalCompletionsRunDataSource::input_messages + ) -> OpenAI::Evals::CreateEvalCompletionsRunDataSource::input_messages attr_reader model: String? def model=: (String) -> String - attr_reader sampling_params: OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::SamplingParams? + attr_reader sampling_params: OpenAI::Evals::CreateEvalCompletionsRunDataSource::SamplingParams? def sampling_params=: ( - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::SamplingParams - ) -> OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::SamplingParams + OpenAI::Evals::CreateEvalCompletionsRunDataSource::SamplingParams + ) -> OpenAI::Evals::CreateEvalCompletionsRunDataSource::SamplingParams def initialize: ( - source: OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::source, - type: OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::type_, - ?input_messages: OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::input_messages, + source: OpenAI::Evals::CreateEvalCompletionsRunDataSource::source, + type: OpenAI::Evals::CreateEvalCompletionsRunDataSource::type_, + ?input_messages: OpenAI::Evals::CreateEvalCompletionsRunDataSource::input_messages, ?model: String, - ?sampling_params: OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::SamplingParams + ?sampling_params: OpenAI::Evals::CreateEvalCompletionsRunDataSource::SamplingParams ) -> void - def to_hash: -> OpenAI::Models::Evals::create_eval_completions_run_data_source - type source = - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Source::FileContent - | OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Source::FileID - | OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Source::StoredCompletions + OpenAI::Evals::CreateEvalCompletionsRunDataSource::Source::FileContent + | OpenAI::Evals::CreateEvalCompletionsRunDataSource::Source::FileID + | OpenAI::Evals::CreateEvalCompletionsRunDataSource::Source::StoredCompletions module Source extend OpenAI::Internal::Type::Union type file_content = { - content: ::Array[OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Source::FileContent::Content], + content: ::Array[OpenAI::Evals::CreateEvalCompletionsRunDataSource::Source::FileContent::Content], type: :file_content } class FileContent < OpenAI::Internal::Type::BaseModel - attr_accessor content: ::Array[OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Source::FileContent::Content] + attr_accessor content: ::Array[OpenAI::Evals::CreateEvalCompletionsRunDataSource::Source::FileContent::Content] attr_accessor type: :file_content def initialize: ( - content: ::Array[OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Source::FileContent::Content], + content: ::Array[OpenAI::Evals::CreateEvalCompletionsRunDataSource::Source::FileContent::Content], ?type: :file_content ) -> void - def to_hash: -> OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Source::file_content - type content = { item: ::Hash[Symbol, top], sample: ::Hash[Symbol, top] } @@ -81,8 +77,6 @@ module OpenAI item: ::Hash[Symbol, top], ?sample: ::Hash[Symbol, top] ) -> void - - def to_hash: -> OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Source::FileContent::content end end @@ -94,8 +88,6 @@ module OpenAI attr_accessor type: :file_id def initialize: (id: String, ?type: :file_id) -> void - - def to_hash: -> OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Source::file_id end type stored_completions = @@ -129,11 +121,9 @@ module OpenAI ?model: String?, ?type: :stored_completions ) -> void - - def to_hash: -> OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Source::stored_completions end - def self?.variants: -> [OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Source::FileContent, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Source::FileID, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::Source::StoredCompletions] + def self?.variants: -> ::Array[OpenAI::Evals::CreateEvalCompletionsRunDataSource::source] end type type_ = :completions @@ -143,71 +133,67 @@ module OpenAI COMPLETIONS: :completions - def self?.values: -> ::Array[OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::type_] + def self?.values: -> ::Array[OpenAI::Evals::CreateEvalCompletionsRunDataSource::type_] end type input_messages = - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template - | OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::ItemReference + OpenAI::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template + | OpenAI::Evals::CreateEvalCompletionsRunDataSource::InputMessages::ItemReference module InputMessages extend OpenAI::Internal::Type::Union type template = { - template: ::Array[OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::template], + template: ::Array[OpenAI::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::template], type: :template } class Template < OpenAI::Internal::Type::BaseModel - attr_accessor template: ::Array[OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::template] + attr_accessor template: ::Array[OpenAI::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::template] attr_accessor type: :template def initialize: ( - template: ::Array[OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::template], + template: ::Array[OpenAI::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::template], ?type: :template ) -> void - def to_hash: -> OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::template - type template = - OpenAI::Models::Responses::EasyInputMessage - | OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message + OpenAI::Responses::EasyInputMessage + | OpenAI::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message module Template extend OpenAI::Internal::Type::Union type message = { - content: OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::content, - role: OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::role, - type: OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::type_ + content: OpenAI::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::content, + role: OpenAI::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::role, + type: OpenAI::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::type_ } class Message < OpenAI::Internal::Type::BaseModel - attr_accessor content: OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::content + attr_accessor content: OpenAI::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::content - attr_accessor role: OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::role + attr_accessor role: OpenAI::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::role - attr_reader type: OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::type_? + attr_reader type: OpenAI::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::type_? def type=: ( - OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::type_ - ) -> OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::type_ + OpenAI::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::type_ + ) -> OpenAI::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::type_ def initialize: ( - content: OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::content, - role: OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::role, - ?type: OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::type_ + content: OpenAI::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::content, + role: OpenAI::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::role, + ?type: OpenAI::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::type_ ) -> void - def to_hash: -> OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::message - type content = String - | OpenAI::Models::Responses::ResponseInputText - | OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::Content::OutputText + | OpenAI::Responses::ResponseInputText + | OpenAI::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::Content::OutputText module Content extend OpenAI::Internal::Type::Union @@ -220,11 +206,9 @@ module OpenAI attr_accessor type: :output_text def initialize: (text: String, ?type: :output_text) -> void - - def to_hash: -> OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::Content::output_text end - def self?.variants: -> [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::Content::OutputText] + def self?.variants: -> ::Array[OpenAI::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::content] end type role = :user | :assistant | :system | :developer @@ -237,7 +221,7 @@ module OpenAI SYSTEM: :system DEVELOPER: :developer - def self?.values: -> ::Array[OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::role] + def self?.values: -> ::Array[OpenAI::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::role] end type type_ = :message @@ -247,11 +231,11 @@ module OpenAI MESSAGE: :message - def self?.values: -> ::Array[OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::type_] + def self?.values: -> ::Array[OpenAI::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::type_] end end - def self?.variants: -> [OpenAI::Models::Responses::EasyInputMessage, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message] + def self?.variants: -> ::Array[OpenAI::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::template] end end @@ -267,11 +251,9 @@ module OpenAI item_reference: String, ?type: :item_reference ) -> void - - def to_hash: -> OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::item_reference end - def self?.variants: -> [OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::InputMessages::ItemReference] + def self?.variants: -> ::Array[OpenAI::Evals::CreateEvalCompletionsRunDataSource::input_messages] end type sampling_params = @@ -305,8 +287,6 @@ module OpenAI ?temperature: Float, ?top_p: Float ) -> void - - def to_hash: -> OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource::sampling_params end end end diff --git a/sig/openai/models/evals/create_eval_jsonl_run_data_source.rbs b/sig/openai/models/evals/create_eval_jsonl_run_data_source.rbs index 46524f62..c376b674 100644 --- a/sig/openai/models/evals/create_eval_jsonl_run_data_source.rbs +++ b/sig/openai/models/evals/create_eval_jsonl_run_data_source.rbs @@ -3,47 +3,43 @@ module OpenAI module Evals type create_eval_jsonl_run_data_source = { - source: OpenAI::Models::Evals::CreateEvalJSONLRunDataSource::source, + source: OpenAI::Evals::CreateEvalJSONLRunDataSource::source, type: :jsonl } class CreateEvalJSONLRunDataSource < OpenAI::Internal::Type::BaseModel - attr_accessor source: OpenAI::Models::Evals::CreateEvalJSONLRunDataSource::source + attr_accessor source: OpenAI::Evals::CreateEvalJSONLRunDataSource::source attr_accessor type: :jsonl def initialize: ( - source: OpenAI::Models::Evals::CreateEvalJSONLRunDataSource::source, + source: OpenAI::Evals::CreateEvalJSONLRunDataSource::source, ?type: :jsonl ) -> void - def to_hash: -> OpenAI::Models::Evals::create_eval_jsonl_run_data_source - type source = - OpenAI::Models::Evals::CreateEvalJSONLRunDataSource::Source::FileContent - | OpenAI::Models::Evals::CreateEvalJSONLRunDataSource::Source::FileID + OpenAI::Evals::CreateEvalJSONLRunDataSource::Source::FileContent + | OpenAI::Evals::CreateEvalJSONLRunDataSource::Source::FileID module Source extend OpenAI::Internal::Type::Union type file_content = { - content: ::Array[OpenAI::Models::Evals::CreateEvalJSONLRunDataSource::Source::FileContent::Content], + content: ::Array[OpenAI::Evals::CreateEvalJSONLRunDataSource::Source::FileContent::Content], type: :file_content } class FileContent < OpenAI::Internal::Type::BaseModel - attr_accessor content: ::Array[OpenAI::Models::Evals::CreateEvalJSONLRunDataSource::Source::FileContent::Content] + attr_accessor content: ::Array[OpenAI::Evals::CreateEvalJSONLRunDataSource::Source::FileContent::Content] attr_accessor type: :file_content def initialize: ( - content: ::Array[OpenAI::Models::Evals::CreateEvalJSONLRunDataSource::Source::FileContent::Content], + content: ::Array[OpenAI::Evals::CreateEvalJSONLRunDataSource::Source::FileContent::Content], ?type: :file_content ) -> void - def to_hash: -> OpenAI::Models::Evals::CreateEvalJSONLRunDataSource::Source::file_content - type content = { item: ::Hash[Symbol, top], sample: ::Hash[Symbol, top] } @@ -58,8 +54,6 @@ module OpenAI item: ::Hash[Symbol, top], ?sample: ::Hash[Symbol, top] ) -> void - - def to_hash: -> OpenAI::Models::Evals::CreateEvalJSONLRunDataSource::Source::FileContent::content end end @@ -71,11 +65,9 @@ module OpenAI attr_accessor type: :file_id def initialize: (id: String, ?type: :file_id) -> void - - def to_hash: -> OpenAI::Models::Evals::CreateEvalJSONLRunDataSource::Source::file_id end - def self?.variants: -> [OpenAI::Models::Evals::CreateEvalJSONLRunDataSource::Source::FileContent, OpenAI::Models::Evals::CreateEvalJSONLRunDataSource::Source::FileID] + def self?.variants: -> ::Array[OpenAI::Evals::CreateEvalJSONLRunDataSource::source] end end end diff --git a/sig/openai/models/evals/eval_api_error.rbs b/sig/openai/models/evals/eval_api_error.rbs index eaf19bc5..70bd686a 100644 --- a/sig/openai/models/evals/eval_api_error.rbs +++ b/sig/openai/models/evals/eval_api_error.rbs @@ -11,8 +11,6 @@ module OpenAI attr_accessor message: String def initialize: (code: String, message: String) -> void - - def to_hash: -> OpenAI::Models::Evals::eval_api_error end end end diff --git a/sig/openai/models/evals/run_cancel_params.rbs b/sig/openai/models/evals/run_cancel_params.rbs index fd4d80f8..32a0b270 100644 --- a/sig/openai/models/evals/run_cancel_params.rbs +++ b/sig/openai/models/evals/run_cancel_params.rbs @@ -14,8 +14,6 @@ module OpenAI eval_id: String, ?request_options: OpenAI::request_opts ) -> void - - def to_hash: -> OpenAI::Models::Evals::run_cancel_params end end end diff --git a/sig/openai/models/evals/run_cancel_response.rbs b/sig/openai/models/evals/run_cancel_response.rbs index d6a2ba57..359ecd76 100644 --- a/sig/openai/models/evals/run_cancel_response.rbs +++ b/sig/openai/models/evals/run_cancel_response.rbs @@ -6,7 +6,7 @@ module OpenAI id: String, created_at: Integer, data_source: OpenAI::Models::Evals::RunCancelResponse::data_source, - error: OpenAI::Models::Evals::EvalAPIError, + error: OpenAI::Evals::EvalAPIError, eval_id: String, metadata: OpenAI::Models::metadata?, model: String, @@ -26,7 +26,7 @@ module OpenAI attr_accessor data_source: OpenAI::Models::Evals::RunCancelResponse::data_source - attr_accessor error: OpenAI::Models::Evals::EvalAPIError + attr_accessor error: OpenAI::Evals::EvalAPIError attr_accessor eval_id: String @@ -52,7 +52,7 @@ module OpenAI id: String, created_at: Integer, data_source: OpenAI::Models::Evals::RunCancelResponse::data_source, - error: OpenAI::Models::Evals::EvalAPIError, + error: OpenAI::Evals::EvalAPIError, eval_id: String, metadata: OpenAI::Models::metadata?, model: String, @@ -65,11 +65,9 @@ module OpenAI ?object: :"eval.run" ) -> void - def to_hash: -> OpenAI::Models::Evals::run_cancel_response - type data_source = - OpenAI::Models::Evals::CreateEvalJSONLRunDataSource - | OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource + OpenAI::Evals::CreateEvalJSONLRunDataSource + | OpenAI::Evals::CreateEvalCompletionsRunDataSource | OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions module DataSource @@ -113,8 +111,6 @@ module OpenAI ?type: :completions ) -> void - def to_hash: -> OpenAI::Models::Evals::RunCancelResponse::DataSource::completions - type source = OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::Source::FileContent | OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::Source::FileID @@ -139,8 +135,6 @@ module OpenAI ?type: :file_content ) -> void - def to_hash: -> OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::Source::file_content - type content = { item: ::Hash[Symbol, top], sample: ::Hash[Symbol, top] } @@ -155,8 +149,6 @@ module OpenAI item: ::Hash[Symbol, top], ?sample: ::Hash[Symbol, top] ) -> void - - def to_hash: -> OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::Source::FileContent::content end end @@ -168,8 +160,6 @@ module OpenAI attr_accessor type: :file_id def initialize: (id: String, ?type: :file_id) -> void - - def to_hash: -> OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::Source::file_id end type responses = @@ -227,11 +217,9 @@ module OpenAI ?users: ::Array[String]?, ?type: :responses ) -> void - - def to_hash: -> OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::Source::responses end - def self?.variants: -> [OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::Source::FileContent, OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::Source::FileID, OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::Source::Responses] + def self?.variants: -> ::Array[OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::source] end type input_messages = @@ -257,8 +245,6 @@ module OpenAI ?type: :template ) -> void - def to_hash: -> OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::template - type template = OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::ChatMessage | OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem @@ -274,8 +260,6 @@ module OpenAI attr_accessor role: String def initialize: (content: String, role: String) -> void - - def to_hash: -> OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::chat_message end type eval_item = @@ -302,11 +286,9 @@ module OpenAI ?type: OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::type_ ) -> void - def to_hash: -> OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::eval_item - type content = String - | OpenAI::Models::Responses::ResponseInputText + | OpenAI::Responses::ResponseInputText | OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText module Content @@ -323,11 +305,9 @@ module OpenAI text: String, ?type: :output_text ) -> void - - def to_hash: -> OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::output_text end - def self?.variants: -> [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText] + def self?.variants: -> ::Array[OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::content] end type role = :user | :assistant | :system | :developer @@ -354,7 +334,7 @@ module OpenAI end end - def self?.variants: -> [OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::ChatMessage, OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem] + def self?.variants: -> ::Array[OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::template] end end @@ -370,11 +350,9 @@ module OpenAI item_reference: String, ?type: :item_reference ) -> void - - def to_hash: -> OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::item_reference end - def self?.variants: -> [OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template, OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::ItemReference] + def self?.variants: -> ::Array[OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::input_messages] end type sampling_params = @@ -408,12 +386,10 @@ module OpenAI ?temperature: Float, ?top_p: Float ) -> void - - def to_hash: -> OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::sampling_params end end - def self?.variants: -> [OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource, OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions] + def self?.variants: -> ::Array[OpenAI::Models::Evals::RunCancelResponse::data_source] end type per_model_usage = @@ -447,8 +423,6 @@ module OpenAI prompt_tokens: Integer, total_tokens: Integer ) -> void - - def to_hash: -> OpenAI::Models::Evals::RunCancelResponse::per_model_usage end type per_testing_criteria_result = @@ -466,8 +440,6 @@ module OpenAI passed: Integer, testing_criteria: String ) -> void - - def to_hash: -> OpenAI::Models::Evals::RunCancelResponse::per_testing_criteria_result end type result_counts = @@ -488,8 +460,6 @@ module OpenAI passed: Integer, total: Integer ) -> void - - def to_hash: -> OpenAI::Models::Evals::RunCancelResponse::result_counts end end end diff --git a/sig/openai/models/evals/run_create_params.rbs b/sig/openai/models/evals/run_create_params.rbs index f38000c8..81184938 100644 --- a/sig/openai/models/evals/run_create_params.rbs +++ b/sig/openai/models/evals/run_create_params.rbs @@ -28,82 +28,76 @@ module OpenAI ?request_options: OpenAI::request_opts ) -> void - def to_hash: -> OpenAI::Models::Evals::run_create_params - type data_source = - OpenAI::Models::Evals::CreateEvalJSONLRunDataSource - | OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource - | OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource + OpenAI::Evals::CreateEvalJSONLRunDataSource + | OpenAI::Evals::CreateEvalCompletionsRunDataSource + | OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource module DataSource extend OpenAI::Internal::Type::Union type create_eval_responses_run_data_source = { - source: OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::source, - type: OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::type_, - input_messages: OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::input_messages, + source: OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::source, + type: OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::type_, + input_messages: OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::input_messages, model: String, - sampling_params: OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::SamplingParams + sampling_params: OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::SamplingParams } class CreateEvalResponsesRunDataSource < OpenAI::Internal::Type::BaseModel - attr_accessor source: OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::source + attr_accessor source: OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::source - attr_accessor type: OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::type_ + attr_accessor type: OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::type_ - attr_reader input_messages: OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::input_messages? + attr_reader input_messages: OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::input_messages? def input_messages=: ( - OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::input_messages - ) -> OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::input_messages + OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::input_messages + ) -> OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::input_messages attr_reader model: String? def model=: (String) -> String - attr_reader sampling_params: OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::SamplingParams? + attr_reader sampling_params: OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::SamplingParams? def sampling_params=: ( - OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::SamplingParams - ) -> OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::SamplingParams + OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::SamplingParams + ) -> OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::SamplingParams def initialize: ( - source: OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::source, - type: OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::type_, - ?input_messages: OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::input_messages, + source: OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::source, + type: OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::type_, + ?input_messages: OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::input_messages, ?model: String, - ?sampling_params: OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::SamplingParams + ?sampling_params: OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::SamplingParams ) -> void - def to_hash: -> OpenAI::Models::Evals::RunCreateParams::DataSource::create_eval_responses_run_data_source - type source = - OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::FileContent - | OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::FileID - | OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::Responses + OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::FileContent + | OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::FileID + | OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::Responses module Source extend OpenAI::Internal::Type::Union type file_content = { - content: ::Array[OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::FileContent::Content], + content: ::Array[OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::FileContent::Content], type: :file_content } class FileContent < OpenAI::Internal::Type::BaseModel - attr_accessor content: ::Array[OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::FileContent::Content] + attr_accessor content: ::Array[OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::FileContent::Content] attr_accessor type: :file_content def initialize: ( - content: ::Array[OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::FileContent::Content], + content: ::Array[OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::FileContent::Content], ?type: :file_content ) -> void - def to_hash: -> OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::file_content - type content = { item: ::Hash[Symbol, top], sample: ::Hash[Symbol, top] } @@ -118,8 +112,6 @@ module OpenAI item: ::Hash[Symbol, top], ?sample: ::Hash[Symbol, top] ) -> void - - def to_hash: -> OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::FileContent::content end end @@ -131,8 +123,6 @@ module OpenAI attr_accessor type: :file_id def initialize: (id: String, ?type: :file_id) -> void - - def to_hash: -> OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::file_id end type responses = @@ -190,11 +180,9 @@ module OpenAI ?users: ::Array[String]?, ?type: :responses ) -> void - - def to_hash: -> OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::responses end - def self?.variants: -> [OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::FileContent, OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::FileID, OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::Responses] + def self?.variants: -> ::Array[OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::source] end type type_ = :completions @@ -204,37 +192,35 @@ module OpenAI COMPLETIONS: :completions - def self?.values: -> ::Array[OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::type_] + def self?.values: -> ::Array[OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::type_] end type input_messages = - OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template - | OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::ItemReference + OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template + | OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::ItemReference module InputMessages extend OpenAI::Internal::Type::Union type template = { - template: ::Array[OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::template], + template: ::Array[OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::template], type: :template } class Template < OpenAI::Internal::Type::BaseModel - attr_accessor template: ::Array[OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::template] + attr_accessor template: ::Array[OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::template] attr_accessor type: :template def initialize: ( - template: ::Array[OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::template], + template: ::Array[OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::template], ?type: :template ) -> void - def to_hash: -> OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::template - type template = - OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::ChatMessage - | OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem + OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::ChatMessage + | OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem module Template extend OpenAI::Internal::Type::Union @@ -247,40 +233,36 @@ module OpenAI attr_accessor role: String def initialize: (content: String, role: String) -> void - - def to_hash: -> OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::chat_message end type eval_item = { - content: OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::content, - role: OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::role, - type: OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::type_ + content: OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::content, + role: OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::role, + type: OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::type_ } class EvalItem < OpenAI::Internal::Type::BaseModel - attr_accessor content: OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::content + attr_accessor content: OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::content - attr_accessor role: OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::role + attr_accessor role: OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::role - attr_reader type: OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::type_? + attr_reader type: OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::type_? def type=: ( - OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::type_ - ) -> OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::type_ + OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::type_ + ) -> OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::type_ def initialize: ( - content: OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::content, - role: OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::role, - ?type: OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::type_ + content: OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::content, + role: OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::role, + ?type: OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::type_ ) -> void - def to_hash: -> OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::eval_item - type content = String - | OpenAI::Models::Responses::ResponseInputText - | OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::Content::OutputText + | OpenAI::Responses::ResponseInputText + | OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::Content::OutputText module Content extend OpenAI::Internal::Type::Union @@ -296,11 +278,9 @@ module OpenAI text: String, ?type: :output_text ) -> void - - def to_hash: -> OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::Content::output_text end - def self?.variants: -> [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::Content::OutputText] + def self?.variants: -> ::Array[OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::content] end type role = :user | :assistant | :system | :developer @@ -313,7 +293,7 @@ module OpenAI SYSTEM: :system DEVELOPER: :developer - def self?.values: -> ::Array[OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::role] + def self?.values: -> ::Array[OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::role] end type type_ = :message @@ -323,11 +303,11 @@ module OpenAI MESSAGE: :message - def self?.values: -> ::Array[OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::type_] + def self?.values: -> ::Array[OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::type_] end end - def self?.variants: -> [OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::ChatMessage, OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem] + def self?.variants: -> ::Array[OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::template] end end @@ -343,11 +323,9 @@ module OpenAI item_reference: String, ?type: :item_reference ) -> void - - def to_hash: -> OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::item_reference end - def self?.variants: -> [OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template, OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::ItemReference] + def self?.variants: -> ::Array[OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::input_messages] end type sampling_params = @@ -381,12 +359,10 @@ module OpenAI ?temperature: Float, ?top_p: Float ) -> void - - def to_hash: -> OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::sampling_params end end - def self?.variants: -> [OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource, OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource] + def self?.variants: -> ::Array[OpenAI::Models::Evals::RunCreateParams::data_source] end end end diff --git a/sig/openai/models/evals/run_create_response.rbs b/sig/openai/models/evals/run_create_response.rbs index 571e81b9..f6ab37df 100644 --- a/sig/openai/models/evals/run_create_response.rbs +++ b/sig/openai/models/evals/run_create_response.rbs @@ -6,7 +6,7 @@ module OpenAI id: String, created_at: Integer, data_source: OpenAI::Models::Evals::RunCreateResponse::data_source, - error: OpenAI::Models::Evals::EvalAPIError, + error: OpenAI::Evals::EvalAPIError, eval_id: String, metadata: OpenAI::Models::metadata?, model: String, @@ -26,7 +26,7 @@ module OpenAI attr_accessor data_source: OpenAI::Models::Evals::RunCreateResponse::data_source - attr_accessor error: OpenAI::Models::Evals::EvalAPIError + attr_accessor error: OpenAI::Evals::EvalAPIError attr_accessor eval_id: String @@ -52,7 +52,7 @@ module OpenAI id: String, created_at: Integer, data_source: OpenAI::Models::Evals::RunCreateResponse::data_source, - error: OpenAI::Models::Evals::EvalAPIError, + error: OpenAI::Evals::EvalAPIError, eval_id: String, metadata: OpenAI::Models::metadata?, model: String, @@ -65,11 +65,9 @@ module OpenAI ?object: :"eval.run" ) -> void - def to_hash: -> OpenAI::Models::Evals::run_create_response - type data_source = - OpenAI::Models::Evals::CreateEvalJSONLRunDataSource - | OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource + OpenAI::Evals::CreateEvalJSONLRunDataSource + | OpenAI::Evals::CreateEvalCompletionsRunDataSource | OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions module DataSource @@ -113,8 +111,6 @@ module OpenAI ?type: :completions ) -> void - def to_hash: -> OpenAI::Models::Evals::RunCreateResponse::DataSource::completions - type source = OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::Source::FileContent | OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::Source::FileID @@ -139,8 +135,6 @@ module OpenAI ?type: :file_content ) -> void - def to_hash: -> OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::Source::file_content - type content = { item: ::Hash[Symbol, top], sample: ::Hash[Symbol, top] } @@ -155,8 +149,6 @@ module OpenAI item: ::Hash[Symbol, top], ?sample: ::Hash[Symbol, top] ) -> void - - def to_hash: -> OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::Source::FileContent::content end end @@ -168,8 +160,6 @@ module OpenAI attr_accessor type: :file_id def initialize: (id: String, ?type: :file_id) -> void - - def to_hash: -> OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::Source::file_id end type responses = @@ -227,11 +217,9 @@ module OpenAI ?users: ::Array[String]?, ?type: :responses ) -> void - - def to_hash: -> OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::Source::responses end - def self?.variants: -> [OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::Source::FileContent, OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::Source::FileID, OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::Source::Responses] + def self?.variants: -> ::Array[OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::source] end type input_messages = @@ -257,8 +245,6 @@ module OpenAI ?type: :template ) -> void - def to_hash: -> OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::template - type template = OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::ChatMessage | OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem @@ -274,8 +260,6 @@ module OpenAI attr_accessor role: String def initialize: (content: String, role: String) -> void - - def to_hash: -> OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::chat_message end type eval_item = @@ -302,11 +286,9 @@ module OpenAI ?type: OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::type_ ) -> void - def to_hash: -> OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::eval_item - type content = String - | OpenAI::Models::Responses::ResponseInputText + | OpenAI::Responses::ResponseInputText | OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText module Content @@ -323,11 +305,9 @@ module OpenAI text: String, ?type: :output_text ) -> void - - def to_hash: -> OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::output_text end - def self?.variants: -> [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText] + def self?.variants: -> ::Array[OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::content] end type role = :user | :assistant | :system | :developer @@ -354,7 +334,7 @@ module OpenAI end end - def self?.variants: -> [OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::ChatMessage, OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem] + def self?.variants: -> ::Array[OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::template] end end @@ -370,11 +350,9 @@ module OpenAI item_reference: String, ?type: :item_reference ) -> void - - def to_hash: -> OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::item_reference end - def self?.variants: -> [OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template, OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::ItemReference] + def self?.variants: -> ::Array[OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::input_messages] end type sampling_params = @@ -408,12 +386,10 @@ module OpenAI ?temperature: Float, ?top_p: Float ) -> void - - def to_hash: -> OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::sampling_params end end - def self?.variants: -> [OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource, OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions] + def self?.variants: -> ::Array[OpenAI::Models::Evals::RunCreateResponse::data_source] end type per_model_usage = @@ -447,8 +423,6 @@ module OpenAI prompt_tokens: Integer, total_tokens: Integer ) -> void - - def to_hash: -> OpenAI::Models::Evals::RunCreateResponse::per_model_usage end type per_testing_criteria_result = @@ -466,8 +440,6 @@ module OpenAI passed: Integer, testing_criteria: String ) -> void - - def to_hash: -> OpenAI::Models::Evals::RunCreateResponse::per_testing_criteria_result end type result_counts = @@ -488,8 +460,6 @@ module OpenAI passed: Integer, total: Integer ) -> void - - def to_hash: -> OpenAI::Models::Evals::RunCreateResponse::result_counts end end end diff --git a/sig/openai/models/evals/run_delete_params.rbs b/sig/openai/models/evals/run_delete_params.rbs index db7ba2df..f775e4d5 100644 --- a/sig/openai/models/evals/run_delete_params.rbs +++ b/sig/openai/models/evals/run_delete_params.rbs @@ -14,8 +14,6 @@ module OpenAI eval_id: String, ?request_options: OpenAI::request_opts ) -> void - - def to_hash: -> OpenAI::Models::Evals::run_delete_params end end end diff --git a/sig/openai/models/evals/run_delete_response.rbs b/sig/openai/models/evals/run_delete_response.rbs index c3fe313f..21d23706 100644 --- a/sig/openai/models/evals/run_delete_response.rbs +++ b/sig/openai/models/evals/run_delete_response.rbs @@ -22,8 +22,6 @@ module OpenAI ?object: String, ?run_id: String ) -> void - - def to_hash: -> OpenAI::Models::Evals::run_delete_response end end end diff --git a/sig/openai/models/evals/run_list_params.rbs b/sig/openai/models/evals/run_list_params.rbs index 7a65ceef..33c002ca 100644 --- a/sig/openai/models/evals/run_list_params.rbs +++ b/sig/openai/models/evals/run_list_params.rbs @@ -42,8 +42,6 @@ module OpenAI ?request_options: OpenAI::request_opts ) -> void - def to_hash: -> OpenAI::Models::Evals::run_list_params - type order = :asc | :desc module Order diff --git a/sig/openai/models/evals/run_list_response.rbs b/sig/openai/models/evals/run_list_response.rbs index 60062163..baadd18a 100644 --- a/sig/openai/models/evals/run_list_response.rbs +++ b/sig/openai/models/evals/run_list_response.rbs @@ -6,7 +6,7 @@ module OpenAI id: String, created_at: Integer, data_source: OpenAI::Models::Evals::RunListResponse::data_source, - error: OpenAI::Models::Evals::EvalAPIError, + error: OpenAI::Evals::EvalAPIError, eval_id: String, metadata: OpenAI::Models::metadata?, model: String, @@ -26,7 +26,7 @@ module OpenAI attr_accessor data_source: OpenAI::Models::Evals::RunListResponse::data_source - attr_accessor error: OpenAI::Models::Evals::EvalAPIError + attr_accessor error: OpenAI::Evals::EvalAPIError attr_accessor eval_id: String @@ -52,7 +52,7 @@ module OpenAI id: String, created_at: Integer, data_source: OpenAI::Models::Evals::RunListResponse::data_source, - error: OpenAI::Models::Evals::EvalAPIError, + error: OpenAI::Evals::EvalAPIError, eval_id: String, metadata: OpenAI::Models::metadata?, model: String, @@ -65,11 +65,9 @@ module OpenAI ?object: :"eval.run" ) -> void - def to_hash: -> OpenAI::Models::Evals::run_list_response - type data_source = - OpenAI::Models::Evals::CreateEvalJSONLRunDataSource - | OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource + OpenAI::Evals::CreateEvalJSONLRunDataSource + | OpenAI::Evals::CreateEvalCompletionsRunDataSource | OpenAI::Models::Evals::RunListResponse::DataSource::Completions module DataSource @@ -113,8 +111,6 @@ module OpenAI ?type: :completions ) -> void - def to_hash: -> OpenAI::Models::Evals::RunListResponse::DataSource::completions - type source = OpenAI::Models::Evals::RunListResponse::DataSource::Completions::Source::FileContent | OpenAI::Models::Evals::RunListResponse::DataSource::Completions::Source::FileID @@ -139,8 +135,6 @@ module OpenAI ?type: :file_content ) -> void - def to_hash: -> OpenAI::Models::Evals::RunListResponse::DataSource::Completions::Source::file_content - type content = { item: ::Hash[Symbol, top], sample: ::Hash[Symbol, top] } @@ -155,8 +149,6 @@ module OpenAI item: ::Hash[Symbol, top], ?sample: ::Hash[Symbol, top] ) -> void - - def to_hash: -> OpenAI::Models::Evals::RunListResponse::DataSource::Completions::Source::FileContent::content end end @@ -168,8 +160,6 @@ module OpenAI attr_accessor type: :file_id def initialize: (id: String, ?type: :file_id) -> void - - def to_hash: -> OpenAI::Models::Evals::RunListResponse::DataSource::Completions::Source::file_id end type responses = @@ -227,11 +217,9 @@ module OpenAI ?users: ::Array[String]?, ?type: :responses ) -> void - - def to_hash: -> OpenAI::Models::Evals::RunListResponse::DataSource::Completions::Source::responses end - def self?.variants: -> [OpenAI::Models::Evals::RunListResponse::DataSource::Completions::Source::FileContent, OpenAI::Models::Evals::RunListResponse::DataSource::Completions::Source::FileID, OpenAI::Models::Evals::RunListResponse::DataSource::Completions::Source::Responses] + def self?.variants: -> ::Array[OpenAI::Models::Evals::RunListResponse::DataSource::Completions::source] end type input_messages = @@ -257,8 +245,6 @@ module OpenAI ?type: :template ) -> void - def to_hash: -> OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::template - type template = OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::ChatMessage | OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem @@ -274,8 +260,6 @@ module OpenAI attr_accessor role: String def initialize: (content: String, role: String) -> void - - def to_hash: -> OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::chat_message end type eval_item = @@ -302,11 +286,9 @@ module OpenAI ?type: OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::type_ ) -> void - def to_hash: -> OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::eval_item - type content = String - | OpenAI::Models::Responses::ResponseInputText + | OpenAI::Responses::ResponseInputText | OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText module Content @@ -323,11 +305,9 @@ module OpenAI text: String, ?type: :output_text ) -> void - - def to_hash: -> OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::output_text end - def self?.variants: -> [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText] + def self?.variants: -> ::Array[OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::content] end type role = :user | :assistant | :system | :developer @@ -354,7 +334,7 @@ module OpenAI end end - def self?.variants: -> [OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::ChatMessage, OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem] + def self?.variants: -> ::Array[OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::template] end end @@ -370,11 +350,9 @@ module OpenAI item_reference: String, ?type: :item_reference ) -> void - - def to_hash: -> OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::item_reference end - def self?.variants: -> [OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template, OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::ItemReference] + def self?.variants: -> ::Array[OpenAI::Models::Evals::RunListResponse::DataSource::Completions::input_messages] end type sampling_params = @@ -408,12 +386,10 @@ module OpenAI ?temperature: Float, ?top_p: Float ) -> void - - def to_hash: -> OpenAI::Models::Evals::RunListResponse::DataSource::Completions::sampling_params end end - def self?.variants: -> [OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource, OpenAI::Models::Evals::RunListResponse::DataSource::Completions] + def self?.variants: -> ::Array[OpenAI::Models::Evals::RunListResponse::data_source] end type per_model_usage = @@ -447,8 +423,6 @@ module OpenAI prompt_tokens: Integer, total_tokens: Integer ) -> void - - def to_hash: -> OpenAI::Models::Evals::RunListResponse::per_model_usage end type per_testing_criteria_result = @@ -466,8 +440,6 @@ module OpenAI passed: Integer, testing_criteria: String ) -> void - - def to_hash: -> OpenAI::Models::Evals::RunListResponse::per_testing_criteria_result end type result_counts = @@ -488,8 +460,6 @@ module OpenAI passed: Integer, total: Integer ) -> void - - def to_hash: -> OpenAI::Models::Evals::RunListResponse::result_counts end end end diff --git a/sig/openai/models/evals/run_retrieve_params.rbs b/sig/openai/models/evals/run_retrieve_params.rbs index 50130d18..955259eb 100644 --- a/sig/openai/models/evals/run_retrieve_params.rbs +++ b/sig/openai/models/evals/run_retrieve_params.rbs @@ -14,8 +14,6 @@ module OpenAI eval_id: String, ?request_options: OpenAI::request_opts ) -> void - - def to_hash: -> OpenAI::Models::Evals::run_retrieve_params end end end diff --git a/sig/openai/models/evals/run_retrieve_response.rbs b/sig/openai/models/evals/run_retrieve_response.rbs index 6714cb0c..d8bce8d1 100644 --- a/sig/openai/models/evals/run_retrieve_response.rbs +++ b/sig/openai/models/evals/run_retrieve_response.rbs @@ -6,7 +6,7 @@ module OpenAI id: String, created_at: Integer, data_source: OpenAI::Models::Evals::RunRetrieveResponse::data_source, - error: OpenAI::Models::Evals::EvalAPIError, + error: OpenAI::Evals::EvalAPIError, eval_id: String, metadata: OpenAI::Models::metadata?, model: String, @@ -26,7 +26,7 @@ module OpenAI attr_accessor data_source: OpenAI::Models::Evals::RunRetrieveResponse::data_source - attr_accessor error: OpenAI::Models::Evals::EvalAPIError + attr_accessor error: OpenAI::Evals::EvalAPIError attr_accessor eval_id: String @@ -52,7 +52,7 @@ module OpenAI id: String, created_at: Integer, data_source: OpenAI::Models::Evals::RunRetrieveResponse::data_source, - error: OpenAI::Models::Evals::EvalAPIError, + error: OpenAI::Evals::EvalAPIError, eval_id: String, metadata: OpenAI::Models::metadata?, model: String, @@ -65,11 +65,9 @@ module OpenAI ?object: :"eval.run" ) -> void - def to_hash: -> OpenAI::Models::Evals::run_retrieve_response - type data_source = - OpenAI::Models::Evals::CreateEvalJSONLRunDataSource - | OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource + OpenAI::Evals::CreateEvalJSONLRunDataSource + | OpenAI::Evals::CreateEvalCompletionsRunDataSource | OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions module DataSource @@ -113,8 +111,6 @@ module OpenAI ?type: :completions ) -> void - def to_hash: -> OpenAI::Models::Evals::RunRetrieveResponse::DataSource::completions - type source = OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::Source::FileContent | OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::Source::FileID @@ -139,8 +135,6 @@ module OpenAI ?type: :file_content ) -> void - def to_hash: -> OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::Source::file_content - type content = { item: ::Hash[Symbol, top], sample: ::Hash[Symbol, top] } @@ -155,8 +149,6 @@ module OpenAI item: ::Hash[Symbol, top], ?sample: ::Hash[Symbol, top] ) -> void - - def to_hash: -> OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::Source::FileContent::content end end @@ -168,8 +160,6 @@ module OpenAI attr_accessor type: :file_id def initialize: (id: String, ?type: :file_id) -> void - - def to_hash: -> OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::Source::file_id end type responses = @@ -227,11 +217,9 @@ module OpenAI ?users: ::Array[String]?, ?type: :responses ) -> void - - def to_hash: -> OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::Source::responses end - def self?.variants: -> [OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::Source::FileContent, OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::Source::FileID, OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::Source::Responses] + def self?.variants: -> ::Array[OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::source] end type input_messages = @@ -257,8 +245,6 @@ module OpenAI ?type: :template ) -> void - def to_hash: -> OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::template - type template = OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::ChatMessage | OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem @@ -274,8 +260,6 @@ module OpenAI attr_accessor role: String def initialize: (content: String, role: String) -> void - - def to_hash: -> OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::chat_message end type eval_item = @@ -302,11 +286,9 @@ module OpenAI ?type: OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::type_ ) -> void - def to_hash: -> OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::eval_item - type content = String - | OpenAI::Models::Responses::ResponseInputText + | OpenAI::Responses::ResponseInputText | OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText module Content @@ -323,11 +305,9 @@ module OpenAI text: String, ?type: :output_text ) -> void - - def to_hash: -> OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::output_text end - def self?.variants: -> [String, OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText] + def self?.variants: -> ::Array[OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::content] end type role = :user | :assistant | :system | :developer @@ -354,7 +334,7 @@ module OpenAI end end - def self?.variants: -> [OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::ChatMessage, OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem] + def self?.variants: -> ::Array[OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::template] end end @@ -370,11 +350,9 @@ module OpenAI item_reference: String, ?type: :item_reference ) -> void - - def to_hash: -> OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::item_reference end - def self?.variants: -> [OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template, OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::ItemReference] + def self?.variants: -> ::Array[OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::input_messages] end type sampling_params = @@ -408,12 +386,10 @@ module OpenAI ?temperature: Float, ?top_p: Float ) -> void - - def to_hash: -> OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::sampling_params end end - def self?.variants: -> [OpenAI::Models::Evals::CreateEvalJSONLRunDataSource, OpenAI::Models::Evals::CreateEvalCompletionsRunDataSource, OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions] + def self?.variants: -> ::Array[OpenAI::Models::Evals::RunRetrieveResponse::data_source] end type per_model_usage = @@ -447,8 +423,6 @@ module OpenAI prompt_tokens: Integer, total_tokens: Integer ) -> void - - def to_hash: -> OpenAI::Models::Evals::RunRetrieveResponse::per_model_usage end type per_testing_criteria_result = @@ -466,8 +440,6 @@ module OpenAI passed: Integer, testing_criteria: String ) -> void - - def to_hash: -> OpenAI::Models::Evals::RunRetrieveResponse::per_testing_criteria_result end type result_counts = @@ -488,8 +460,6 @@ module OpenAI passed: Integer, total: Integer ) -> void - - def to_hash: -> OpenAI::Models::Evals::RunRetrieveResponse::result_counts end end end diff --git a/sig/openai/models/evals/runs/output_item_list_params.rbs b/sig/openai/models/evals/runs/output_item_list_params.rbs index 53ec2a12..4ff88c6f 100644 --- a/sig/openai/models/evals/runs/output_item_list_params.rbs +++ b/sig/openai/models/evals/runs/output_item_list_params.rbs @@ -47,8 +47,6 @@ module OpenAI ?request_options: OpenAI::request_opts ) -> void - def to_hash: -> OpenAI::Models::Evals::Runs::output_item_list_params - type order = :asc | :desc module Order diff --git a/sig/openai/models/evals/runs/output_item_list_response.rbs b/sig/openai/models/evals/runs/output_item_list_response.rbs index f33ed688..8f79060c 100644 --- a/sig/openai/models/evals/runs/output_item_list_response.rbs +++ b/sig/openai/models/evals/runs/output_item_list_response.rbs @@ -50,11 +50,9 @@ module OpenAI ?object: :"eval.run.output_item" ) -> void - def to_hash: -> OpenAI::Models::Evals::Runs::output_item_list_response - type sample = { - error: OpenAI::Models::Evals::EvalAPIError, + error: OpenAI::Evals::EvalAPIError, finish_reason: String, input: ::Array[OpenAI::Models::Evals::Runs::OutputItemListResponse::Sample::Input], max_completion_tokens: Integer, @@ -67,7 +65,7 @@ module OpenAI } class Sample < OpenAI::Internal::Type::BaseModel - attr_accessor error: OpenAI::Models::Evals::EvalAPIError + attr_accessor error: OpenAI::Evals::EvalAPIError attr_accessor finish_reason: String @@ -88,7 +86,7 @@ module OpenAI attr_accessor usage: OpenAI::Models::Evals::Runs::OutputItemListResponse::Sample::Usage def initialize: ( - error: OpenAI::Models::Evals::EvalAPIError, + error: OpenAI::Evals::EvalAPIError, finish_reason: String, input: ::Array[OpenAI::Models::Evals::Runs::OutputItemListResponse::Sample::Input], max_completion_tokens: Integer, @@ -100,8 +98,6 @@ module OpenAI usage: OpenAI::Models::Evals::Runs::OutputItemListResponse::Sample::Usage ) -> void - def to_hash: -> OpenAI::Models::Evals::Runs::OutputItemListResponse::sample - type input = { content: String, role: String } class Input < OpenAI::Internal::Type::BaseModel @@ -110,8 +106,6 @@ module OpenAI attr_accessor role: String def initialize: (content: String, role: String) -> void - - def to_hash: -> OpenAI::Models::Evals::Runs::OutputItemListResponse::Sample::input end type output = { content: String, role: String } @@ -126,8 +120,6 @@ module OpenAI def role=: (String) -> String def initialize: (?content: String, ?role: String) -> void - - def to_hash: -> OpenAI::Models::Evals::Runs::OutputItemListResponse::Sample::output end type usage = @@ -153,8 +145,6 @@ module OpenAI prompt_tokens: Integer, total_tokens: Integer ) -> void - - def to_hash: -> OpenAI::Models::Evals::Runs::OutputItemListResponse::Sample::usage end end end diff --git a/sig/openai/models/evals/runs/output_item_retrieve_params.rbs b/sig/openai/models/evals/runs/output_item_retrieve_params.rbs index 1631b85e..91add94f 100644 --- a/sig/openai/models/evals/runs/output_item_retrieve_params.rbs +++ b/sig/openai/models/evals/runs/output_item_retrieve_params.rbs @@ -19,8 +19,6 @@ module OpenAI run_id: String, ?request_options: OpenAI::request_opts ) -> void - - def to_hash: -> OpenAI::Models::Evals::Runs::output_item_retrieve_params end end end diff --git a/sig/openai/models/evals/runs/output_item_retrieve_response.rbs b/sig/openai/models/evals/runs/output_item_retrieve_response.rbs index fc662a02..87d32fa3 100644 --- a/sig/openai/models/evals/runs/output_item_retrieve_response.rbs +++ b/sig/openai/models/evals/runs/output_item_retrieve_response.rbs @@ -50,11 +50,9 @@ module OpenAI ?object: :"eval.run.output_item" ) -> void - def to_hash: -> OpenAI::Models::Evals::Runs::output_item_retrieve_response - type sample = { - error: OpenAI::Models::Evals::EvalAPIError, + error: OpenAI::Evals::EvalAPIError, finish_reason: String, input: ::Array[OpenAI::Models::Evals::Runs::OutputItemRetrieveResponse::Sample::Input], max_completion_tokens: Integer, @@ -67,7 +65,7 @@ module OpenAI } class Sample < OpenAI::Internal::Type::BaseModel - attr_accessor error: OpenAI::Models::Evals::EvalAPIError + attr_accessor error: OpenAI::Evals::EvalAPIError attr_accessor finish_reason: String @@ -88,7 +86,7 @@ module OpenAI attr_accessor usage: OpenAI::Models::Evals::Runs::OutputItemRetrieveResponse::Sample::Usage def initialize: ( - error: OpenAI::Models::Evals::EvalAPIError, + error: OpenAI::Evals::EvalAPIError, finish_reason: String, input: ::Array[OpenAI::Models::Evals::Runs::OutputItemRetrieveResponse::Sample::Input], max_completion_tokens: Integer, @@ -100,8 +98,6 @@ module OpenAI usage: OpenAI::Models::Evals::Runs::OutputItemRetrieveResponse::Sample::Usage ) -> void - def to_hash: -> OpenAI::Models::Evals::Runs::OutputItemRetrieveResponse::sample - type input = { content: String, role: String } class Input < OpenAI::Internal::Type::BaseModel @@ -110,8 +106,6 @@ module OpenAI attr_accessor role: String def initialize: (content: String, role: String) -> void - - def to_hash: -> OpenAI::Models::Evals::Runs::OutputItemRetrieveResponse::Sample::input end type output = { content: String, role: String } @@ -126,8 +120,6 @@ module OpenAI def role=: (String) -> String def initialize: (?content: String, ?role: String) -> void - - def to_hash: -> OpenAI::Models::Evals::Runs::OutputItemRetrieveResponse::Sample::output end type usage = @@ -153,8 +145,6 @@ module OpenAI prompt_tokens: Integer, total_tokens: Integer ) -> void - - def to_hash: -> OpenAI::Models::Evals::Runs::OutputItemRetrieveResponse::Sample::usage end end end diff --git a/sig/openai/models/file_chunking_strategy.rbs b/sig/openai/models/file_chunking_strategy.rbs index ebe4dcb5..5f6d7277 100644 --- a/sig/openai/models/file_chunking_strategy.rbs +++ b/sig/openai/models/file_chunking_strategy.rbs @@ -1,13 +1,13 @@ module OpenAI module Models type file_chunking_strategy = - OpenAI::Models::StaticFileChunkingStrategyObject - | OpenAI::Models::OtherFileChunkingStrategyObject + OpenAI::StaticFileChunkingStrategyObject + | OpenAI::OtherFileChunkingStrategyObject module FileChunkingStrategy extend OpenAI::Internal::Type::Union - def self?.variants: -> [OpenAI::Models::StaticFileChunkingStrategyObject, OpenAI::Models::OtherFileChunkingStrategyObject] + def self?.variants: -> ::Array[OpenAI::Models::file_chunking_strategy] end end end diff --git a/sig/openai/models/file_chunking_strategy_param.rbs b/sig/openai/models/file_chunking_strategy_param.rbs index 22233a43..434e01b4 100644 --- a/sig/openai/models/file_chunking_strategy_param.rbs +++ b/sig/openai/models/file_chunking_strategy_param.rbs @@ -1,13 +1,13 @@ module OpenAI module Models type file_chunking_strategy_param = - OpenAI::Models::AutoFileChunkingStrategyParam - | OpenAI::Models::StaticFileChunkingStrategyObjectParam + OpenAI::AutoFileChunkingStrategyParam + | OpenAI::StaticFileChunkingStrategyObjectParam module FileChunkingStrategyParam extend OpenAI::Internal::Type::Union - def self?.variants: -> [OpenAI::Models::AutoFileChunkingStrategyParam, OpenAI::Models::StaticFileChunkingStrategyObjectParam] + def self?.variants: -> ::Array[OpenAI::Models::file_chunking_strategy_param] end end end diff --git a/sig/openai/models/file_content_params.rbs b/sig/openai/models/file_content_params.rbs index d0eb084a..df1a12a0 100644 --- a/sig/openai/models/file_content_params.rbs +++ b/sig/openai/models/file_content_params.rbs @@ -7,8 +7,6 @@ module OpenAI include OpenAI::Internal::Type::RequestParameters def initialize: (?request_options: OpenAI::request_opts) -> void - - def to_hash: -> OpenAI::Models::file_content_params end end end diff --git a/sig/openai/models/file_create_params.rbs b/sig/openai/models/file_create_params.rbs index 33f381f0..54eaab64 100644 --- a/sig/openai/models/file_create_params.rbs +++ b/sig/openai/models/file_create_params.rbs @@ -20,8 +20,6 @@ module OpenAI purpose: OpenAI::Models::file_purpose, ?request_options: OpenAI::request_opts ) -> void - - def to_hash: -> OpenAI::Models::file_create_params end end end diff --git a/sig/openai/models/file_delete_params.rbs b/sig/openai/models/file_delete_params.rbs index bd9575f3..8cd08d59 100644 --- a/sig/openai/models/file_delete_params.rbs +++ b/sig/openai/models/file_delete_params.rbs @@ -7,8 +7,6 @@ module OpenAI include OpenAI::Internal::Type::RequestParameters def initialize: (?request_options: OpenAI::request_opts) -> void - - def to_hash: -> OpenAI::Models::file_delete_params end end end diff --git a/sig/openai/models/file_deleted.rbs b/sig/openai/models/file_deleted.rbs index e4134f28..fd681d7c 100644 --- a/sig/openai/models/file_deleted.rbs +++ b/sig/openai/models/file_deleted.rbs @@ -10,8 +10,6 @@ module OpenAI attr_accessor object: :file def initialize: (id: String, deleted: bool, ?object: :file) -> void - - def to_hash: -> OpenAI::Models::file_deleted end end end diff --git a/sig/openai/models/file_list_params.rbs b/sig/openai/models/file_list_params.rbs index 8cc477d7..51c07c76 100644 --- a/sig/openai/models/file_list_params.rbs +++ b/sig/openai/models/file_list_params.rbs @@ -39,8 +39,6 @@ module OpenAI ?request_options: OpenAI::request_opts ) -> void - def to_hash: -> OpenAI::Models::file_list_params - type order = :asc | :desc module Order diff --git a/sig/openai/models/file_object.rbs b/sig/openai/models/file_object.rbs index 2ea4ec93..3ebcb910 100644 --- a/sig/openai/models/file_object.rbs +++ b/sig/openai/models/file_object.rbs @@ -7,8 +7,8 @@ module OpenAI created_at: Integer, filename: String, object: :file, - purpose: OpenAI::Models::FileObject::purpose, - status: OpenAI::Models::FileObject::status, + purpose: OpenAI::FileObject::purpose, + status: OpenAI::FileObject::status, expires_at: Integer, status_details: String } @@ -24,9 +24,9 @@ module OpenAI attr_accessor object: :file - attr_accessor purpose: OpenAI::Models::FileObject::purpose + attr_accessor purpose: OpenAI::FileObject::purpose - attr_accessor status: OpenAI::Models::FileObject::status + attr_accessor status: OpenAI::FileObject::status attr_reader expires_at: Integer? @@ -41,15 +41,13 @@ module OpenAI bytes: Integer, created_at: Integer, filename: String, - purpose: OpenAI::Models::FileObject::purpose, - status: OpenAI::Models::FileObject::status, + purpose: OpenAI::FileObject::purpose, + status: OpenAI::FileObject::status, ?expires_at: Integer, ?status_details: String, ?object: :file ) -> void - def to_hash: -> OpenAI::Models::file_object - type purpose = :assistants | :assistants_output @@ -70,7 +68,7 @@ module OpenAI FINE_TUNE_RESULTS: :"fine-tune-results" VISION: :vision - def self?.values: -> ::Array[OpenAI::Models::FileObject::purpose] + def self?.values: -> ::Array[OpenAI::FileObject::purpose] end type status = :uploaded | :processed | :error @@ -82,7 +80,7 @@ module OpenAI PROCESSED: :processed ERROR: :error - def self?.values: -> ::Array[OpenAI::Models::FileObject::status] + def self?.values: -> ::Array[OpenAI::FileObject::status] end end end diff --git a/sig/openai/models/file_retrieve_params.rbs b/sig/openai/models/file_retrieve_params.rbs index 818e9432..4788e5a6 100644 --- a/sig/openai/models/file_retrieve_params.rbs +++ b/sig/openai/models/file_retrieve_params.rbs @@ -8,8 +8,6 @@ module OpenAI include OpenAI::Internal::Type::RequestParameters def initialize: (?request_options: OpenAI::request_opts) -> void - - def to_hash: -> OpenAI::Models::file_retrieve_params end end end diff --git a/sig/openai/models/fine_tuning/checkpoints/permission_create_params.rbs b/sig/openai/models/fine_tuning/checkpoints/permission_create_params.rbs index 2a715c70..d8a52d89 100644 --- a/sig/openai/models/fine_tuning/checkpoints/permission_create_params.rbs +++ b/sig/openai/models/fine_tuning/checkpoints/permission_create_params.rbs @@ -16,8 +16,6 @@ module OpenAI project_ids: ::Array[String], ?request_options: OpenAI::request_opts ) -> void - - def to_hash: -> OpenAI::Models::FineTuning::Checkpoints::permission_create_params end end end diff --git a/sig/openai/models/fine_tuning/checkpoints/permission_create_response.rbs b/sig/openai/models/fine_tuning/checkpoints/permission_create_response.rbs index 65e33f69..1bb85f1a 100644 --- a/sig/openai/models/fine_tuning/checkpoints/permission_create_response.rbs +++ b/sig/openai/models/fine_tuning/checkpoints/permission_create_response.rbs @@ -25,8 +25,6 @@ module OpenAI project_id: String, ?object: :"checkpoint.permission" ) -> void - - def to_hash: -> OpenAI::Models::FineTuning::Checkpoints::permission_create_response end end end diff --git a/sig/openai/models/fine_tuning/checkpoints/permission_delete_params.rbs b/sig/openai/models/fine_tuning/checkpoints/permission_delete_params.rbs index d57abc16..78bbd44d 100644 --- a/sig/openai/models/fine_tuning/checkpoints/permission_delete_params.rbs +++ b/sig/openai/models/fine_tuning/checkpoints/permission_delete_params.rbs @@ -16,8 +16,6 @@ module OpenAI fine_tuned_model_checkpoint: String, ?request_options: OpenAI::request_opts ) -> void - - def to_hash: -> OpenAI::Models::FineTuning::Checkpoints::permission_delete_params end end end diff --git a/sig/openai/models/fine_tuning/checkpoints/permission_delete_response.rbs b/sig/openai/models/fine_tuning/checkpoints/permission_delete_response.rbs index f3920ae7..7cf0427b 100644 --- a/sig/openai/models/fine_tuning/checkpoints/permission_delete_response.rbs +++ b/sig/openai/models/fine_tuning/checkpoints/permission_delete_response.rbs @@ -17,8 +17,6 @@ module OpenAI deleted: bool, ?object: :"checkpoint.permission" ) -> void - - def to_hash: -> OpenAI::Models::FineTuning::Checkpoints::permission_delete_response end end end diff --git a/sig/openai/models/fine_tuning/checkpoints/permission_retrieve_params.rbs b/sig/openai/models/fine_tuning/checkpoints/permission_retrieve_params.rbs index fe2c9c7d..0b609dbc 100644 --- a/sig/openai/models/fine_tuning/checkpoints/permission_retrieve_params.rbs +++ b/sig/openai/models/fine_tuning/checkpoints/permission_retrieve_params.rbs @@ -41,8 +41,6 @@ module OpenAI ?request_options: OpenAI::request_opts ) -> void - def to_hash: -> OpenAI::Models::FineTuning::Checkpoints::permission_retrieve_params - type order = :ascending | :descending module Order diff --git a/sig/openai/models/fine_tuning/checkpoints/permission_retrieve_response.rbs b/sig/openai/models/fine_tuning/checkpoints/permission_retrieve_response.rbs index 061528d5..db9a1b9d 100644 --- a/sig/openai/models/fine_tuning/checkpoints/permission_retrieve_response.rbs +++ b/sig/openai/models/fine_tuning/checkpoints/permission_retrieve_response.rbs @@ -30,8 +30,6 @@ module OpenAI ?object: :list ) -> void - def to_hash: -> OpenAI::Models::FineTuning::Checkpoints::permission_retrieve_response - type data = { id: String, @@ -55,8 +53,6 @@ module OpenAI project_id: String, ?object: :"checkpoint.permission" ) -> void - - def to_hash: -> OpenAI::Models::FineTuning::Checkpoints::PermissionRetrieveResponse::data end end end diff --git a/sig/openai/models/fine_tuning/fine_tuning_job.rbs b/sig/openai/models/fine_tuning/fine_tuning_job.rbs index 8a66e5a9..bcf014f4 100644 --- a/sig/openai/models/fine_tuning/fine_tuning_job.rbs +++ b/sig/openai/models/fine_tuning/fine_tuning_job.rbs @@ -7,23 +7,23 @@ module OpenAI { id: String, created_at: Integer, - error: OpenAI::Models::FineTuning::FineTuningJob::Error?, + error: OpenAI::FineTuning::FineTuningJob::Error?, fine_tuned_model: String?, finished_at: Integer?, - hyperparameters: OpenAI::Models::FineTuning::FineTuningJob::Hyperparameters, + hyperparameters: OpenAI::FineTuning::FineTuningJob::Hyperparameters, model: String, object: :"fine_tuning.job", organization_id: String, result_files: ::Array[String], seed: Integer, - status: OpenAI::Models::FineTuning::FineTuningJob::status, + status: OpenAI::FineTuning::FineTuningJob::status, trained_tokens: Integer?, training_file: String, validation_file: String?, estimated_finish: Integer?, - integrations: ::Array[OpenAI::Models::FineTuning::FineTuningJobWandbIntegrationObject]?, + integrations: ::Array[OpenAI::FineTuning::FineTuningJobWandbIntegrationObject]?, metadata: OpenAI::Models::metadata?, - method_: OpenAI::Models::FineTuning::FineTuningJob::Method + method_: OpenAI::FineTuning::FineTuningJob::Method } class FineTuningJob < OpenAI::Internal::Type::BaseModel @@ -31,13 +31,13 @@ module OpenAI attr_accessor created_at: Integer - attr_accessor error: OpenAI::Models::FineTuning::FineTuningJob::Error? + attr_accessor error: OpenAI::FineTuning::FineTuningJob::Error? attr_accessor fine_tuned_model: String? attr_accessor finished_at: Integer? - attr_accessor hyperparameters: OpenAI::Models::FineTuning::FineTuningJob::Hyperparameters + attr_accessor hyperparameters: OpenAI::FineTuning::FineTuningJob::Hyperparameters attr_accessor model: String @@ -49,7 +49,7 @@ module OpenAI attr_accessor seed: Integer - attr_accessor status: OpenAI::Models::FineTuning::FineTuningJob::status + attr_accessor status: OpenAI::FineTuning::FineTuningJob::status attr_accessor trained_tokens: Integer? @@ -59,40 +59,38 @@ module OpenAI attr_accessor estimated_finish: Integer? - attr_accessor integrations: ::Array[OpenAI::Models::FineTuning::FineTuningJobWandbIntegrationObject]? + attr_accessor integrations: ::Array[OpenAI::FineTuning::FineTuningJobWandbIntegrationObject]? attr_accessor metadata: OpenAI::Models::metadata? - attr_reader method_: OpenAI::Models::FineTuning::FineTuningJob::Method? + attr_reader method_: OpenAI::FineTuning::FineTuningJob::Method? def method_=: ( - OpenAI::Models::FineTuning::FineTuningJob::Method - ) -> OpenAI::Models::FineTuning::FineTuningJob::Method + OpenAI::FineTuning::FineTuningJob::Method + ) -> OpenAI::FineTuning::FineTuningJob::Method def initialize: ( id: String, created_at: Integer, - error: OpenAI::Models::FineTuning::FineTuningJob::Error?, + error: OpenAI::FineTuning::FineTuningJob::Error?, fine_tuned_model: String?, finished_at: Integer?, - hyperparameters: OpenAI::Models::FineTuning::FineTuningJob::Hyperparameters, + hyperparameters: OpenAI::FineTuning::FineTuningJob::Hyperparameters, model: String, organization_id: String, result_files: ::Array[String], seed: Integer, - status: OpenAI::Models::FineTuning::FineTuningJob::status, + status: OpenAI::FineTuning::FineTuningJob::status, trained_tokens: Integer?, training_file: String, validation_file: String?, ?estimated_finish: Integer?, - ?integrations: ::Array[OpenAI::Models::FineTuning::FineTuningJobWandbIntegrationObject]?, + ?integrations: ::Array[OpenAI::FineTuning::FineTuningJobWandbIntegrationObject]?, ?metadata: OpenAI::Models::metadata?, - ?method_: OpenAI::Models::FineTuning::FineTuningJob::Method, + ?method_: OpenAI::FineTuning::FineTuningJob::Method, ?object: :"fine_tuning.job" ) -> void - def to_hash: -> OpenAI::Models::FineTuning::fine_tuning_job - type error = { code: String, message: String, param: String? } class Error < OpenAI::Internal::Type::BaseModel @@ -107,50 +105,46 @@ module OpenAI message: String, param: String? ) -> void - - def to_hash: -> OpenAI::Models::FineTuning::FineTuningJob::error end type hyperparameters = { - batch_size: OpenAI::Models::FineTuning::FineTuningJob::Hyperparameters::batch_size, - learning_rate_multiplier: OpenAI::Models::FineTuning::FineTuningJob::Hyperparameters::learning_rate_multiplier, - n_epochs: OpenAI::Models::FineTuning::FineTuningJob::Hyperparameters::n_epochs + batch_size: OpenAI::FineTuning::FineTuningJob::Hyperparameters::batch_size, + learning_rate_multiplier: OpenAI::FineTuning::FineTuningJob::Hyperparameters::learning_rate_multiplier, + n_epochs: OpenAI::FineTuning::FineTuningJob::Hyperparameters::n_epochs } class Hyperparameters < OpenAI::Internal::Type::BaseModel - attr_reader batch_size: OpenAI::Models::FineTuning::FineTuningJob::Hyperparameters::batch_size? + attr_reader batch_size: OpenAI::FineTuning::FineTuningJob::Hyperparameters::batch_size? def batch_size=: ( - OpenAI::Models::FineTuning::FineTuningJob::Hyperparameters::batch_size - ) -> OpenAI::Models::FineTuning::FineTuningJob::Hyperparameters::batch_size + OpenAI::FineTuning::FineTuningJob::Hyperparameters::batch_size + ) -> OpenAI::FineTuning::FineTuningJob::Hyperparameters::batch_size - attr_reader learning_rate_multiplier: OpenAI::Models::FineTuning::FineTuningJob::Hyperparameters::learning_rate_multiplier? + attr_reader learning_rate_multiplier: OpenAI::FineTuning::FineTuningJob::Hyperparameters::learning_rate_multiplier? def learning_rate_multiplier=: ( - OpenAI::Models::FineTuning::FineTuningJob::Hyperparameters::learning_rate_multiplier - ) -> OpenAI::Models::FineTuning::FineTuningJob::Hyperparameters::learning_rate_multiplier + OpenAI::FineTuning::FineTuningJob::Hyperparameters::learning_rate_multiplier + ) -> OpenAI::FineTuning::FineTuningJob::Hyperparameters::learning_rate_multiplier - attr_reader n_epochs: OpenAI::Models::FineTuning::FineTuningJob::Hyperparameters::n_epochs? + attr_reader n_epochs: OpenAI::FineTuning::FineTuningJob::Hyperparameters::n_epochs? def n_epochs=: ( - OpenAI::Models::FineTuning::FineTuningJob::Hyperparameters::n_epochs - ) -> OpenAI::Models::FineTuning::FineTuningJob::Hyperparameters::n_epochs + OpenAI::FineTuning::FineTuningJob::Hyperparameters::n_epochs + ) -> OpenAI::FineTuning::FineTuningJob::Hyperparameters::n_epochs def initialize: ( - ?batch_size: OpenAI::Models::FineTuning::FineTuningJob::Hyperparameters::batch_size, - ?learning_rate_multiplier: OpenAI::Models::FineTuning::FineTuningJob::Hyperparameters::learning_rate_multiplier, - ?n_epochs: OpenAI::Models::FineTuning::FineTuningJob::Hyperparameters::n_epochs + ?batch_size: OpenAI::FineTuning::FineTuningJob::Hyperparameters::batch_size, + ?learning_rate_multiplier: OpenAI::FineTuning::FineTuningJob::Hyperparameters::learning_rate_multiplier, + ?n_epochs: OpenAI::FineTuning::FineTuningJob::Hyperparameters::n_epochs ) -> void - def to_hash: -> OpenAI::Models::FineTuning::FineTuningJob::hyperparameters - type batch_size = :auto | Integer module BatchSize extend OpenAI::Internal::Type::Union - def self?.variants: -> [:auto, Integer] + def self?.variants: -> ::Array[OpenAI::FineTuning::FineTuningJob::Hyperparameters::batch_size] end type learning_rate_multiplier = :auto | Float @@ -158,7 +152,7 @@ module OpenAI module LearningRateMultiplier extend OpenAI::Internal::Type::Union - def self?.variants: -> [:auto, Float] + def self?.variants: -> ::Array[OpenAI::FineTuning::FineTuningJob::Hyperparameters::learning_rate_multiplier] end type n_epochs = :auto | Integer @@ -166,7 +160,7 @@ module OpenAI module NEpochs extend OpenAI::Internal::Type::Union - def self?.variants: -> [:auto, Integer] + def self?.variants: -> ::Array[OpenAI::FineTuning::FineTuningJob::Hyperparameters::n_epochs] end end @@ -188,109 +182,103 @@ module OpenAI FAILED: :failed CANCELLED: :cancelled - def self?.values: -> ::Array[OpenAI::Models::FineTuning::FineTuningJob::status] + def self?.values: -> ::Array[OpenAI::FineTuning::FineTuningJob::status] end type method_ = { - dpo: OpenAI::Models::FineTuning::FineTuningJob::Method::Dpo, - supervised: OpenAI::Models::FineTuning::FineTuningJob::Method::Supervised, - type: OpenAI::Models::FineTuning::FineTuningJob::Method::type_ + dpo: OpenAI::FineTuning::FineTuningJob::Method::Dpo, + supervised: OpenAI::FineTuning::FineTuningJob::Method::Supervised, + type: OpenAI::FineTuning::FineTuningJob::Method::type_ } class Method < OpenAI::Internal::Type::BaseModel - attr_reader dpo: OpenAI::Models::FineTuning::FineTuningJob::Method::Dpo? + attr_reader dpo: OpenAI::FineTuning::FineTuningJob::Method::Dpo? def dpo=: ( - OpenAI::Models::FineTuning::FineTuningJob::Method::Dpo - ) -> OpenAI::Models::FineTuning::FineTuningJob::Method::Dpo + OpenAI::FineTuning::FineTuningJob::Method::Dpo + ) -> OpenAI::FineTuning::FineTuningJob::Method::Dpo - attr_reader supervised: OpenAI::Models::FineTuning::FineTuningJob::Method::Supervised? + attr_reader supervised: OpenAI::FineTuning::FineTuningJob::Method::Supervised? def supervised=: ( - OpenAI::Models::FineTuning::FineTuningJob::Method::Supervised - ) -> OpenAI::Models::FineTuning::FineTuningJob::Method::Supervised + OpenAI::FineTuning::FineTuningJob::Method::Supervised + ) -> OpenAI::FineTuning::FineTuningJob::Method::Supervised - attr_reader type: OpenAI::Models::FineTuning::FineTuningJob::Method::type_? + attr_reader type: OpenAI::FineTuning::FineTuningJob::Method::type_? def type=: ( - OpenAI::Models::FineTuning::FineTuningJob::Method::type_ - ) -> OpenAI::Models::FineTuning::FineTuningJob::Method::type_ + OpenAI::FineTuning::FineTuningJob::Method::type_ + ) -> OpenAI::FineTuning::FineTuningJob::Method::type_ def initialize: ( - ?dpo: OpenAI::Models::FineTuning::FineTuningJob::Method::Dpo, - ?supervised: OpenAI::Models::FineTuning::FineTuningJob::Method::Supervised, - ?type: OpenAI::Models::FineTuning::FineTuningJob::Method::type_ + ?dpo: OpenAI::FineTuning::FineTuningJob::Method::Dpo, + ?supervised: OpenAI::FineTuning::FineTuningJob::Method::Supervised, + ?type: OpenAI::FineTuning::FineTuningJob::Method::type_ ) -> void - def to_hash: -> OpenAI::Models::FineTuning::FineTuningJob::method_ - type dpo = { - hyperparameters: OpenAI::Models::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters + hyperparameters: OpenAI::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters } class Dpo < OpenAI::Internal::Type::BaseModel - attr_reader hyperparameters: OpenAI::Models::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters? + attr_reader hyperparameters: OpenAI::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters? def hyperparameters=: ( - OpenAI::Models::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters - ) -> OpenAI::Models::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters + OpenAI::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters + ) -> OpenAI::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters def initialize: ( - ?hyperparameters: OpenAI::Models::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters + ?hyperparameters: OpenAI::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters ) -> void - def to_hash: -> OpenAI::Models::FineTuning::FineTuningJob::Method::dpo - type hyperparameters = { - batch_size: OpenAI::Models::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters::batch_size, - beta: OpenAI::Models::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters::beta, - learning_rate_multiplier: OpenAI::Models::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters::learning_rate_multiplier, - n_epochs: OpenAI::Models::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters::n_epochs + batch_size: OpenAI::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters::batch_size, + beta: OpenAI::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters::beta, + learning_rate_multiplier: OpenAI::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters::learning_rate_multiplier, + n_epochs: OpenAI::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters::n_epochs } class Hyperparameters < OpenAI::Internal::Type::BaseModel - attr_reader batch_size: OpenAI::Models::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters::batch_size? + attr_reader batch_size: OpenAI::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters::batch_size? def batch_size=: ( - OpenAI::Models::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters::batch_size - ) -> OpenAI::Models::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters::batch_size + OpenAI::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters::batch_size + ) -> OpenAI::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters::batch_size - attr_reader beta: OpenAI::Models::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters::beta? + attr_reader beta: OpenAI::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters::beta? def beta=: ( - OpenAI::Models::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters::beta - ) -> OpenAI::Models::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters::beta + OpenAI::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters::beta + ) -> OpenAI::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters::beta - attr_reader learning_rate_multiplier: OpenAI::Models::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters::learning_rate_multiplier? + attr_reader learning_rate_multiplier: OpenAI::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters::learning_rate_multiplier? def learning_rate_multiplier=: ( - OpenAI::Models::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters::learning_rate_multiplier - ) -> OpenAI::Models::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters::learning_rate_multiplier + OpenAI::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters::learning_rate_multiplier + ) -> OpenAI::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters::learning_rate_multiplier - attr_reader n_epochs: OpenAI::Models::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters::n_epochs? + attr_reader n_epochs: OpenAI::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters::n_epochs? def n_epochs=: ( - OpenAI::Models::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters::n_epochs - ) -> OpenAI::Models::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters::n_epochs + OpenAI::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters::n_epochs + ) -> OpenAI::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters::n_epochs def initialize: ( - ?batch_size: OpenAI::Models::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters::batch_size, - ?beta: OpenAI::Models::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters::beta, - ?learning_rate_multiplier: OpenAI::Models::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters::learning_rate_multiplier, - ?n_epochs: OpenAI::Models::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters::n_epochs + ?batch_size: OpenAI::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters::batch_size, + ?beta: OpenAI::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters::beta, + ?learning_rate_multiplier: OpenAI::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters::learning_rate_multiplier, + ?n_epochs: OpenAI::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters::n_epochs ) -> void - def to_hash: -> OpenAI::Models::FineTuning::FineTuningJob::Method::Dpo::hyperparameters - type batch_size = :auto | Integer module BatchSize extend OpenAI::Internal::Type::Union - def self?.variants: -> [:auto, Integer] + def self?.variants: -> ::Array[OpenAI::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters::batch_size] end type beta = :auto | Float @@ -298,7 +286,7 @@ module OpenAI module Beta extend OpenAI::Internal::Type::Union - def self?.variants: -> [:auto, Float] + def self?.variants: -> ::Array[OpenAI::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters::beta] end type learning_rate_multiplier = :auto | Float @@ -306,7 +294,7 @@ module OpenAI module LearningRateMultiplier extend OpenAI::Internal::Type::Union - def self?.variants: -> [:auto, Float] + def self?.variants: -> ::Array[OpenAI::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters::learning_rate_multiplier] end type n_epochs = :auto | Integer @@ -314,69 +302,65 @@ module OpenAI module NEpochs extend OpenAI::Internal::Type::Union - def self?.variants: -> [:auto, Integer] + def self?.variants: -> ::Array[OpenAI::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters::n_epochs] end end end type supervised = { - hyperparameters: OpenAI::Models::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters + hyperparameters: OpenAI::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters } class Supervised < OpenAI::Internal::Type::BaseModel - attr_reader hyperparameters: OpenAI::Models::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters? + attr_reader hyperparameters: OpenAI::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters? def hyperparameters=: ( - OpenAI::Models::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters - ) -> OpenAI::Models::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters + OpenAI::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters + ) -> OpenAI::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters def initialize: ( - ?hyperparameters: OpenAI::Models::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters + ?hyperparameters: OpenAI::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters ) -> void - def to_hash: -> OpenAI::Models::FineTuning::FineTuningJob::Method::supervised - type hyperparameters = { - batch_size: OpenAI::Models::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters::batch_size, - learning_rate_multiplier: OpenAI::Models::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters::learning_rate_multiplier, - n_epochs: OpenAI::Models::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters::n_epochs + batch_size: OpenAI::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters::batch_size, + learning_rate_multiplier: OpenAI::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters::learning_rate_multiplier, + n_epochs: OpenAI::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters::n_epochs } class Hyperparameters < OpenAI::Internal::Type::BaseModel - attr_reader batch_size: OpenAI::Models::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters::batch_size? + attr_reader batch_size: OpenAI::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters::batch_size? def batch_size=: ( - OpenAI::Models::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters::batch_size - ) -> OpenAI::Models::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters::batch_size + OpenAI::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters::batch_size + ) -> OpenAI::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters::batch_size - attr_reader learning_rate_multiplier: OpenAI::Models::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters::learning_rate_multiplier? + attr_reader learning_rate_multiplier: OpenAI::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters::learning_rate_multiplier? def learning_rate_multiplier=: ( - OpenAI::Models::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters::learning_rate_multiplier - ) -> OpenAI::Models::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters::learning_rate_multiplier + OpenAI::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters::learning_rate_multiplier + ) -> OpenAI::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters::learning_rate_multiplier - attr_reader n_epochs: OpenAI::Models::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters::n_epochs? + attr_reader n_epochs: OpenAI::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters::n_epochs? def n_epochs=: ( - OpenAI::Models::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters::n_epochs - ) -> OpenAI::Models::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters::n_epochs + OpenAI::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters::n_epochs + ) -> OpenAI::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters::n_epochs def initialize: ( - ?batch_size: OpenAI::Models::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters::batch_size, - ?learning_rate_multiplier: OpenAI::Models::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters::learning_rate_multiplier, - ?n_epochs: OpenAI::Models::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters::n_epochs + ?batch_size: OpenAI::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters::batch_size, + ?learning_rate_multiplier: OpenAI::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters::learning_rate_multiplier, + ?n_epochs: OpenAI::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters::n_epochs ) -> void - def to_hash: -> OpenAI::Models::FineTuning::FineTuningJob::Method::Supervised::hyperparameters - type batch_size = :auto | Integer module BatchSize extend OpenAI::Internal::Type::Union - def self?.variants: -> [:auto, Integer] + def self?.variants: -> ::Array[OpenAI::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters::batch_size] end type learning_rate_multiplier = :auto | Float @@ -384,7 +368,7 @@ module OpenAI module LearningRateMultiplier extend OpenAI::Internal::Type::Union - def self?.variants: -> [:auto, Float] + def self?.variants: -> ::Array[OpenAI::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters::learning_rate_multiplier] end type n_epochs = :auto | Integer @@ -392,7 +376,7 @@ module OpenAI module NEpochs extend OpenAI::Internal::Type::Union - def self?.variants: -> [:auto, Integer] + def self?.variants: -> ::Array[OpenAI::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters::n_epochs] end end end @@ -405,7 +389,7 @@ module OpenAI SUPERVISED: :supervised DPO: :dpo - def self?.values: -> ::Array[OpenAI::Models::FineTuning::FineTuningJob::Method::type_] + def self?.values: -> ::Array[OpenAI::FineTuning::FineTuningJob::Method::type_] end end end diff --git a/sig/openai/models/fine_tuning/fine_tuning_job_event.rbs b/sig/openai/models/fine_tuning/fine_tuning_job_event.rbs index dfc567a3..018e7195 100644 --- a/sig/openai/models/fine_tuning/fine_tuning_job_event.rbs +++ b/sig/openai/models/fine_tuning/fine_tuning_job_event.rbs @@ -7,11 +7,11 @@ module OpenAI { id: String, created_at: Integer, - level: OpenAI::Models::FineTuning::FineTuningJobEvent::level, + level: OpenAI::FineTuning::FineTuningJobEvent::level, message: String, object: :"fine_tuning.job.event", data: top, - type: OpenAI::Models::FineTuning::FineTuningJobEvent::type_ + type: OpenAI::FineTuning::FineTuningJobEvent::type_ } class FineTuningJobEvent < OpenAI::Internal::Type::BaseModel @@ -19,7 +19,7 @@ module OpenAI attr_accessor created_at: Integer - attr_accessor level: OpenAI::Models::FineTuning::FineTuningJobEvent::level + attr_accessor level: OpenAI::FineTuning::FineTuningJobEvent::level attr_accessor message: String @@ -29,24 +29,22 @@ module OpenAI def data=: (top) -> top - attr_reader type: OpenAI::Models::FineTuning::FineTuningJobEvent::type_? + attr_reader type: OpenAI::FineTuning::FineTuningJobEvent::type_? def type=: ( - OpenAI::Models::FineTuning::FineTuningJobEvent::type_ - ) -> OpenAI::Models::FineTuning::FineTuningJobEvent::type_ + OpenAI::FineTuning::FineTuningJobEvent::type_ + ) -> OpenAI::FineTuning::FineTuningJobEvent::type_ def initialize: ( id: String, created_at: Integer, - level: OpenAI::Models::FineTuning::FineTuningJobEvent::level, + level: OpenAI::FineTuning::FineTuningJobEvent::level, message: String, ?data: top, - ?type: OpenAI::Models::FineTuning::FineTuningJobEvent::type_, + ?type: OpenAI::FineTuning::FineTuningJobEvent::type_, ?object: :"fine_tuning.job.event" ) -> void - def to_hash: -> OpenAI::Models::FineTuning::fine_tuning_job_event - type level = :info | :warn | :error module Level @@ -56,7 +54,7 @@ module OpenAI WARN: :warn ERROR: :error - def self?.values: -> ::Array[OpenAI::Models::FineTuning::FineTuningJobEvent::level] + def self?.values: -> ::Array[OpenAI::FineTuning::FineTuningJobEvent::level] end type type_ = :message | :metrics @@ -67,7 +65,7 @@ module OpenAI MESSAGE: :message METRICS: :metrics - def self?.values: -> ::Array[OpenAI::Models::FineTuning::FineTuningJobEvent::type_] + def self?.values: -> ::Array[OpenAI::FineTuning::FineTuningJobEvent::type_] end end end diff --git a/sig/openai/models/fine_tuning/fine_tuning_job_wandb_integration.rbs b/sig/openai/models/fine_tuning/fine_tuning_job_wandb_integration.rbs index b952d550..a1e46c1a 100644 --- a/sig/openai/models/fine_tuning/fine_tuning_job_wandb_integration.rbs +++ b/sig/openai/models/fine_tuning/fine_tuning_job_wandb_integration.rbs @@ -28,8 +28,6 @@ module OpenAI ?name: String?, ?tags: ::Array[String] ) -> void - - def to_hash: -> OpenAI::Models::FineTuning::fine_tuning_job_wandb_integration end end end diff --git a/sig/openai/models/fine_tuning/fine_tuning_job_wandb_integration_object.rbs b/sig/openai/models/fine_tuning/fine_tuning_job_wandb_integration_object.rbs index 559090c6..cef52fc6 100644 --- a/sig/openai/models/fine_tuning/fine_tuning_job_wandb_integration_object.rbs +++ b/sig/openai/models/fine_tuning/fine_tuning_job_wandb_integration_object.rbs @@ -6,20 +6,18 @@ module OpenAI type fine_tuning_job_wandb_integration_object = { type: :wandb, - wandb: OpenAI::Models::FineTuning::FineTuningJobWandbIntegration + wandb: OpenAI::FineTuning::FineTuningJobWandbIntegration } class FineTuningJobWandbIntegrationObject < OpenAI::Internal::Type::BaseModel attr_accessor type: :wandb - attr_accessor wandb: OpenAI::Models::FineTuning::FineTuningJobWandbIntegration + attr_accessor wandb: OpenAI::FineTuning::FineTuningJobWandbIntegration def initialize: ( - wandb: OpenAI::Models::FineTuning::FineTuningJobWandbIntegration, + wandb: OpenAI::FineTuning::FineTuningJobWandbIntegration, ?type: :wandb ) -> void - - def to_hash: -> OpenAI::Models::FineTuning::fine_tuning_job_wandb_integration_object end end end diff --git a/sig/openai/models/fine_tuning/job_cancel_params.rbs b/sig/openai/models/fine_tuning/job_cancel_params.rbs index 46fadbe0..bba98884 100644 --- a/sig/openai/models/fine_tuning/job_cancel_params.rbs +++ b/sig/openai/models/fine_tuning/job_cancel_params.rbs @@ -8,8 +8,6 @@ module OpenAI include OpenAI::Internal::Type::RequestParameters def initialize: (?request_options: OpenAI::request_opts) -> void - - def to_hash: -> OpenAI::Models::FineTuning::job_cancel_params end end end diff --git a/sig/openai/models/fine_tuning/job_create_params.rbs b/sig/openai/models/fine_tuning/job_create_params.rbs index 86773182..0669fd09 100644 --- a/sig/openai/models/fine_tuning/job_create_params.rbs +++ b/sig/openai/models/fine_tuning/job_create_params.rbs @@ -5,10 +5,10 @@ module OpenAI { model: OpenAI::Models::FineTuning::JobCreateParams::model, training_file: String, - hyperparameters: OpenAI::Models::FineTuning::JobCreateParams::Hyperparameters, - integrations: ::Array[OpenAI::Models::FineTuning::JobCreateParams::Integration]?, + hyperparameters: OpenAI::FineTuning::JobCreateParams::Hyperparameters, + integrations: ::Array[OpenAI::FineTuning::JobCreateParams::Integration]?, metadata: OpenAI::Models::metadata?, - method_: OpenAI::Models::FineTuning::JobCreateParams::Method, + method_: OpenAI::FineTuning::JobCreateParams::Method, seed: Integer?, suffix: String?, validation_file: String? @@ -23,21 +23,21 @@ module OpenAI attr_accessor training_file: String - attr_reader hyperparameters: OpenAI::Models::FineTuning::JobCreateParams::Hyperparameters? + attr_reader hyperparameters: OpenAI::FineTuning::JobCreateParams::Hyperparameters? def hyperparameters=: ( - OpenAI::Models::FineTuning::JobCreateParams::Hyperparameters - ) -> OpenAI::Models::FineTuning::JobCreateParams::Hyperparameters + OpenAI::FineTuning::JobCreateParams::Hyperparameters + ) -> OpenAI::FineTuning::JobCreateParams::Hyperparameters - attr_accessor integrations: ::Array[OpenAI::Models::FineTuning::JobCreateParams::Integration]? + attr_accessor integrations: ::Array[OpenAI::FineTuning::JobCreateParams::Integration]? attr_accessor metadata: OpenAI::Models::metadata? - attr_reader method_: OpenAI::Models::FineTuning::JobCreateParams::Method? + attr_reader method_: OpenAI::FineTuning::JobCreateParams::Method? def method_=: ( - OpenAI::Models::FineTuning::JobCreateParams::Method - ) -> OpenAI::Models::FineTuning::JobCreateParams::Method + OpenAI::FineTuning::JobCreateParams::Method + ) -> OpenAI::FineTuning::JobCreateParams::Method attr_accessor seed: Integer? @@ -48,18 +48,16 @@ module OpenAI def initialize: ( model: OpenAI::Models::FineTuning::JobCreateParams::model, training_file: String, - ?hyperparameters: OpenAI::Models::FineTuning::JobCreateParams::Hyperparameters, - ?integrations: ::Array[OpenAI::Models::FineTuning::JobCreateParams::Integration]?, + ?hyperparameters: OpenAI::FineTuning::JobCreateParams::Hyperparameters, + ?integrations: ::Array[OpenAI::FineTuning::JobCreateParams::Integration]?, ?metadata: OpenAI::Models::metadata?, - ?method_: OpenAI::Models::FineTuning::JobCreateParams::Method, + ?method_: OpenAI::FineTuning::JobCreateParams::Method, ?seed: Integer?, ?suffix: String?, ?validation_file: String?, ?request_options: OpenAI::request_opts ) -> void - def to_hash: -> OpenAI::Models::FineTuning::job_create_params - type model = String | :"babbage-002" @@ -70,10 +68,7 @@ module OpenAI module Model extend OpenAI::Internal::Type::Union - def self?.variants: -> [String, (:"babbage-002" - | :"davinci-002" - | :"gpt-3.5-turbo" - | :"gpt-4o-mini")] + def self?.variants: -> ::Array[OpenAI::Models::FineTuning::JobCreateParams::model] BABBAGE_002: :"babbage-002" DAVINCI_002: :"davinci-002" @@ -83,44 +78,42 @@ module OpenAI type hyperparameters = { - batch_size: OpenAI::Models::FineTuning::JobCreateParams::Hyperparameters::batch_size, - learning_rate_multiplier: OpenAI::Models::FineTuning::JobCreateParams::Hyperparameters::learning_rate_multiplier, - n_epochs: OpenAI::Models::FineTuning::JobCreateParams::Hyperparameters::n_epochs + batch_size: OpenAI::FineTuning::JobCreateParams::Hyperparameters::batch_size, + learning_rate_multiplier: OpenAI::FineTuning::JobCreateParams::Hyperparameters::learning_rate_multiplier, + n_epochs: OpenAI::FineTuning::JobCreateParams::Hyperparameters::n_epochs } class Hyperparameters < OpenAI::Internal::Type::BaseModel - attr_reader batch_size: OpenAI::Models::FineTuning::JobCreateParams::Hyperparameters::batch_size? + attr_reader batch_size: OpenAI::FineTuning::JobCreateParams::Hyperparameters::batch_size? def batch_size=: ( - OpenAI::Models::FineTuning::JobCreateParams::Hyperparameters::batch_size - ) -> OpenAI::Models::FineTuning::JobCreateParams::Hyperparameters::batch_size + OpenAI::FineTuning::JobCreateParams::Hyperparameters::batch_size + ) -> OpenAI::FineTuning::JobCreateParams::Hyperparameters::batch_size - attr_reader learning_rate_multiplier: OpenAI::Models::FineTuning::JobCreateParams::Hyperparameters::learning_rate_multiplier? + attr_reader learning_rate_multiplier: OpenAI::FineTuning::JobCreateParams::Hyperparameters::learning_rate_multiplier? def learning_rate_multiplier=: ( - OpenAI::Models::FineTuning::JobCreateParams::Hyperparameters::learning_rate_multiplier - ) -> OpenAI::Models::FineTuning::JobCreateParams::Hyperparameters::learning_rate_multiplier + OpenAI::FineTuning::JobCreateParams::Hyperparameters::learning_rate_multiplier + ) -> OpenAI::FineTuning::JobCreateParams::Hyperparameters::learning_rate_multiplier - attr_reader n_epochs: OpenAI::Models::FineTuning::JobCreateParams::Hyperparameters::n_epochs? + attr_reader n_epochs: OpenAI::FineTuning::JobCreateParams::Hyperparameters::n_epochs? def n_epochs=: ( - OpenAI::Models::FineTuning::JobCreateParams::Hyperparameters::n_epochs - ) -> OpenAI::Models::FineTuning::JobCreateParams::Hyperparameters::n_epochs + OpenAI::FineTuning::JobCreateParams::Hyperparameters::n_epochs + ) -> OpenAI::FineTuning::JobCreateParams::Hyperparameters::n_epochs def initialize: ( - ?batch_size: OpenAI::Models::FineTuning::JobCreateParams::Hyperparameters::batch_size, - ?learning_rate_multiplier: OpenAI::Models::FineTuning::JobCreateParams::Hyperparameters::learning_rate_multiplier, - ?n_epochs: OpenAI::Models::FineTuning::JobCreateParams::Hyperparameters::n_epochs + ?batch_size: OpenAI::FineTuning::JobCreateParams::Hyperparameters::batch_size, + ?learning_rate_multiplier: OpenAI::FineTuning::JobCreateParams::Hyperparameters::learning_rate_multiplier, + ?n_epochs: OpenAI::FineTuning::JobCreateParams::Hyperparameters::n_epochs ) -> void - def to_hash: -> OpenAI::Models::FineTuning::JobCreateParams::hyperparameters - type batch_size = :auto | Integer module BatchSize extend OpenAI::Internal::Type::Union - def self?.variants: -> [:auto, Integer] + def self?.variants: -> ::Array[OpenAI::FineTuning::JobCreateParams::Hyperparameters::batch_size] end type learning_rate_multiplier = :auto | Float @@ -128,7 +121,7 @@ module OpenAI module LearningRateMultiplier extend OpenAI::Internal::Type::Union - def self?.variants: -> [:auto, Float] + def self?.variants: -> ::Array[OpenAI::FineTuning::JobCreateParams::Hyperparameters::learning_rate_multiplier] end type n_epochs = :auto | Integer @@ -136,28 +129,26 @@ module OpenAI module NEpochs extend OpenAI::Internal::Type::Union - def self?.variants: -> [:auto, Integer] + def self?.variants: -> ::Array[OpenAI::FineTuning::JobCreateParams::Hyperparameters::n_epochs] end end type integration = { type: :wandb, - wandb: OpenAI::Models::FineTuning::JobCreateParams::Integration::Wandb + wandb: OpenAI::FineTuning::JobCreateParams::Integration::Wandb } class Integration < OpenAI::Internal::Type::BaseModel attr_accessor type: :wandb - attr_accessor wandb: OpenAI::Models::FineTuning::JobCreateParams::Integration::Wandb + attr_accessor wandb: OpenAI::FineTuning::JobCreateParams::Integration::Wandb def initialize: ( - wandb: OpenAI::Models::FineTuning::JobCreateParams::Integration::Wandb, + wandb: OpenAI::FineTuning::JobCreateParams::Integration::Wandb, ?type: :wandb ) -> void - def to_hash: -> OpenAI::Models::FineTuning::JobCreateParams::integration - type wandb = { project: String, @@ -183,111 +174,103 @@ module OpenAI ?name: String?, ?tags: ::Array[String] ) -> void - - def to_hash: -> OpenAI::Models::FineTuning::JobCreateParams::Integration::wandb end end type method_ = { - dpo: OpenAI::Models::FineTuning::JobCreateParams::Method::Dpo, - supervised: OpenAI::Models::FineTuning::JobCreateParams::Method::Supervised, - type: OpenAI::Models::FineTuning::JobCreateParams::Method::type_ + dpo: OpenAI::FineTuning::JobCreateParams::Method::Dpo, + supervised: OpenAI::FineTuning::JobCreateParams::Method::Supervised, + type: OpenAI::FineTuning::JobCreateParams::Method::type_ } class Method < OpenAI::Internal::Type::BaseModel - attr_reader dpo: OpenAI::Models::FineTuning::JobCreateParams::Method::Dpo? + attr_reader dpo: OpenAI::FineTuning::JobCreateParams::Method::Dpo? def dpo=: ( - OpenAI::Models::FineTuning::JobCreateParams::Method::Dpo - ) -> OpenAI::Models::FineTuning::JobCreateParams::Method::Dpo + OpenAI::FineTuning::JobCreateParams::Method::Dpo + ) -> OpenAI::FineTuning::JobCreateParams::Method::Dpo - attr_reader supervised: OpenAI::Models::FineTuning::JobCreateParams::Method::Supervised? + attr_reader supervised: OpenAI::FineTuning::JobCreateParams::Method::Supervised? def supervised=: ( - OpenAI::Models::FineTuning::JobCreateParams::Method::Supervised - ) -> OpenAI::Models::FineTuning::JobCreateParams::Method::Supervised + OpenAI::FineTuning::JobCreateParams::Method::Supervised + ) -> OpenAI::FineTuning::JobCreateParams::Method::Supervised - attr_reader type: OpenAI::Models::FineTuning::JobCreateParams::Method::type_? + attr_reader type: OpenAI::FineTuning::JobCreateParams::Method::type_? def type=: ( - OpenAI::Models::FineTuning::JobCreateParams::Method::type_ - ) -> OpenAI::Models::FineTuning::JobCreateParams::Method::type_ + OpenAI::FineTuning::JobCreateParams::Method::type_ + ) -> OpenAI::FineTuning::JobCreateParams::Method::type_ def initialize: ( - ?dpo: OpenAI::Models::FineTuning::JobCreateParams::Method::Dpo, - ?supervised: OpenAI::Models::FineTuning::JobCreateParams::Method::Supervised, - ?type: OpenAI::Models::FineTuning::JobCreateParams::Method::type_ + ?dpo: OpenAI::FineTuning::JobCreateParams::Method::Dpo, + ?supervised: OpenAI::FineTuning::JobCreateParams::Method::Supervised, + ?type: OpenAI::FineTuning::JobCreateParams::Method::type_ ) -> void - def to_hash: -> OpenAI::Models::FineTuning::JobCreateParams::method_ - type dpo = { - hyperparameters: OpenAI::Models::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters + hyperparameters: OpenAI::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters } class Dpo < OpenAI::Internal::Type::BaseModel - attr_reader hyperparameters: OpenAI::Models::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters? + attr_reader hyperparameters: OpenAI::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters? def hyperparameters=: ( - OpenAI::Models::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters - ) -> OpenAI::Models::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters + OpenAI::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters + ) -> OpenAI::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters def initialize: ( - ?hyperparameters: OpenAI::Models::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters + ?hyperparameters: OpenAI::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters ) -> void - def to_hash: -> OpenAI::Models::FineTuning::JobCreateParams::Method::dpo - type hyperparameters = { - batch_size: OpenAI::Models::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters::batch_size, - beta: OpenAI::Models::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters::beta, - learning_rate_multiplier: OpenAI::Models::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters::learning_rate_multiplier, - n_epochs: OpenAI::Models::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters::n_epochs + batch_size: OpenAI::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters::batch_size, + beta: OpenAI::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters::beta, + learning_rate_multiplier: OpenAI::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters::learning_rate_multiplier, + n_epochs: OpenAI::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters::n_epochs } class Hyperparameters < OpenAI::Internal::Type::BaseModel - attr_reader batch_size: OpenAI::Models::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters::batch_size? + attr_reader batch_size: OpenAI::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters::batch_size? def batch_size=: ( - OpenAI::Models::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters::batch_size - ) -> OpenAI::Models::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters::batch_size + OpenAI::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters::batch_size + ) -> OpenAI::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters::batch_size - attr_reader beta: OpenAI::Models::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters::beta? + attr_reader beta: OpenAI::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters::beta? def beta=: ( - OpenAI::Models::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters::beta - ) -> OpenAI::Models::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters::beta + OpenAI::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters::beta + ) -> OpenAI::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters::beta - attr_reader learning_rate_multiplier: OpenAI::Models::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters::learning_rate_multiplier? + attr_reader learning_rate_multiplier: OpenAI::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters::learning_rate_multiplier? def learning_rate_multiplier=: ( - OpenAI::Models::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters::learning_rate_multiplier - ) -> OpenAI::Models::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters::learning_rate_multiplier + OpenAI::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters::learning_rate_multiplier + ) -> OpenAI::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters::learning_rate_multiplier - attr_reader n_epochs: OpenAI::Models::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters::n_epochs? + attr_reader n_epochs: OpenAI::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters::n_epochs? def n_epochs=: ( - OpenAI::Models::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters::n_epochs - ) -> OpenAI::Models::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters::n_epochs + OpenAI::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters::n_epochs + ) -> OpenAI::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters::n_epochs def initialize: ( - ?batch_size: OpenAI::Models::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters::batch_size, - ?beta: OpenAI::Models::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters::beta, - ?learning_rate_multiplier: OpenAI::Models::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters::learning_rate_multiplier, - ?n_epochs: OpenAI::Models::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters::n_epochs + ?batch_size: OpenAI::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters::batch_size, + ?beta: OpenAI::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters::beta, + ?learning_rate_multiplier: OpenAI::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters::learning_rate_multiplier, + ?n_epochs: OpenAI::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters::n_epochs ) -> void - def to_hash: -> OpenAI::Models::FineTuning::JobCreateParams::Method::Dpo::hyperparameters - type batch_size = :auto | Integer module BatchSize extend OpenAI::Internal::Type::Union - def self?.variants: -> [:auto, Integer] + def self?.variants: -> ::Array[OpenAI::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters::batch_size] end type beta = :auto | Float @@ -295,7 +278,7 @@ module OpenAI module Beta extend OpenAI::Internal::Type::Union - def self?.variants: -> [:auto, Float] + def self?.variants: -> ::Array[OpenAI::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters::beta] end type learning_rate_multiplier = :auto | Float @@ -303,7 +286,7 @@ module OpenAI module LearningRateMultiplier extend OpenAI::Internal::Type::Union - def self?.variants: -> [:auto, Float] + def self?.variants: -> ::Array[OpenAI::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters::learning_rate_multiplier] end type n_epochs = :auto | Integer @@ -311,69 +294,65 @@ module OpenAI module NEpochs extend OpenAI::Internal::Type::Union - def self?.variants: -> [:auto, Integer] + def self?.variants: -> ::Array[OpenAI::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters::n_epochs] end end end type supervised = { - hyperparameters: OpenAI::Models::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters + hyperparameters: OpenAI::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters } class Supervised < OpenAI::Internal::Type::BaseModel - attr_reader hyperparameters: OpenAI::Models::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters? + attr_reader hyperparameters: OpenAI::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters? def hyperparameters=: ( - OpenAI::Models::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters - ) -> OpenAI::Models::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters + OpenAI::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters + ) -> OpenAI::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters def initialize: ( - ?hyperparameters: OpenAI::Models::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters + ?hyperparameters: OpenAI::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters ) -> void - def to_hash: -> OpenAI::Models::FineTuning::JobCreateParams::Method::supervised - type hyperparameters = { - batch_size: OpenAI::Models::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters::batch_size, - learning_rate_multiplier: OpenAI::Models::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters::learning_rate_multiplier, - n_epochs: OpenAI::Models::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters::n_epochs + batch_size: OpenAI::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters::batch_size, + learning_rate_multiplier: OpenAI::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters::learning_rate_multiplier, + n_epochs: OpenAI::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters::n_epochs } class Hyperparameters < OpenAI::Internal::Type::BaseModel - attr_reader batch_size: OpenAI::Models::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters::batch_size? + attr_reader batch_size: OpenAI::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters::batch_size? def batch_size=: ( - OpenAI::Models::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters::batch_size - ) -> OpenAI::Models::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters::batch_size + OpenAI::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters::batch_size + ) -> OpenAI::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters::batch_size - attr_reader learning_rate_multiplier: OpenAI::Models::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters::learning_rate_multiplier? + attr_reader learning_rate_multiplier: OpenAI::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters::learning_rate_multiplier? def learning_rate_multiplier=: ( - OpenAI::Models::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters::learning_rate_multiplier - ) -> OpenAI::Models::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters::learning_rate_multiplier + OpenAI::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters::learning_rate_multiplier + ) -> OpenAI::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters::learning_rate_multiplier - attr_reader n_epochs: OpenAI::Models::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters::n_epochs? + attr_reader n_epochs: OpenAI::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters::n_epochs? def n_epochs=: ( - OpenAI::Models::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters::n_epochs - ) -> OpenAI::Models::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters::n_epochs + OpenAI::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters::n_epochs + ) -> OpenAI::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters::n_epochs def initialize: ( - ?batch_size: OpenAI::Models::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters::batch_size, - ?learning_rate_multiplier: OpenAI::Models::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters::learning_rate_multiplier, - ?n_epochs: OpenAI::Models::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters::n_epochs + ?batch_size: OpenAI::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters::batch_size, + ?learning_rate_multiplier: OpenAI::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters::learning_rate_multiplier, + ?n_epochs: OpenAI::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters::n_epochs ) -> void - def to_hash: -> OpenAI::Models::FineTuning::JobCreateParams::Method::Supervised::hyperparameters - type batch_size = :auto | Integer module BatchSize extend OpenAI::Internal::Type::Union - def self?.variants: -> [:auto, Integer] + def self?.variants: -> ::Array[OpenAI::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters::batch_size] end type learning_rate_multiplier = :auto | Float @@ -381,7 +360,7 @@ module OpenAI module LearningRateMultiplier extend OpenAI::Internal::Type::Union - def self?.variants: -> [:auto, Float] + def self?.variants: -> ::Array[OpenAI::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters::learning_rate_multiplier] end type n_epochs = :auto | Integer @@ -389,7 +368,7 @@ module OpenAI module NEpochs extend OpenAI::Internal::Type::Union - def self?.variants: -> [:auto, Integer] + def self?.variants: -> ::Array[OpenAI::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters::n_epochs] end end end @@ -402,7 +381,7 @@ module OpenAI SUPERVISED: :supervised DPO: :dpo - def self?.values: -> ::Array[OpenAI::Models::FineTuning::JobCreateParams::Method::type_] + def self?.values: -> ::Array[OpenAI::FineTuning::JobCreateParams::Method::type_] end end end diff --git a/sig/openai/models/fine_tuning/job_list_events_params.rbs b/sig/openai/models/fine_tuning/job_list_events_params.rbs index 79968e83..f3d26bd2 100644 --- a/sig/openai/models/fine_tuning/job_list_events_params.rbs +++ b/sig/openai/models/fine_tuning/job_list_events_params.rbs @@ -22,8 +22,6 @@ module OpenAI ?limit: Integer, ?request_options: OpenAI::request_opts ) -> void - - def to_hash: -> OpenAI::Models::FineTuning::job_list_events_params end end end diff --git a/sig/openai/models/fine_tuning/job_list_params.rbs b/sig/openai/models/fine_tuning/job_list_params.rbs index b32ac587..db301888 100644 --- a/sig/openai/models/fine_tuning/job_list_params.rbs +++ b/sig/openai/models/fine_tuning/job_list_params.rbs @@ -25,8 +25,6 @@ module OpenAI ?metadata: ::Hash[Symbol, String]?, ?request_options: OpenAI::request_opts ) -> void - - def to_hash: -> OpenAI::Models::FineTuning::job_list_params end end end diff --git a/sig/openai/models/fine_tuning/job_retrieve_params.rbs b/sig/openai/models/fine_tuning/job_retrieve_params.rbs index 179216b1..ed195b91 100644 --- a/sig/openai/models/fine_tuning/job_retrieve_params.rbs +++ b/sig/openai/models/fine_tuning/job_retrieve_params.rbs @@ -9,8 +9,6 @@ module OpenAI include OpenAI::Internal::Type::RequestParameters def initialize: (?request_options: OpenAI::request_opts) -> void - - def to_hash: -> OpenAI::Models::FineTuning::job_retrieve_params end end end diff --git a/sig/openai/models/fine_tuning/jobs/checkpoint_list_params.rbs b/sig/openai/models/fine_tuning/jobs/checkpoint_list_params.rbs index 012833d8..2cf57298 100644 --- a/sig/openai/models/fine_tuning/jobs/checkpoint_list_params.rbs +++ b/sig/openai/models/fine_tuning/jobs/checkpoint_list_params.rbs @@ -23,8 +23,6 @@ module OpenAI ?limit: Integer, ?request_options: OpenAI::request_opts ) -> void - - def to_hash: -> OpenAI::Models::FineTuning::Jobs::checkpoint_list_params end end end diff --git a/sig/openai/models/fine_tuning/jobs/fine_tuning_job_checkpoint.rbs b/sig/openai/models/fine_tuning/jobs/fine_tuning_job_checkpoint.rbs index 1f11cb97..51e7737c 100644 --- a/sig/openai/models/fine_tuning/jobs/fine_tuning_job_checkpoint.rbs +++ b/sig/openai/models/fine_tuning/jobs/fine_tuning_job_checkpoint.rbs @@ -8,7 +8,7 @@ module OpenAI created_at: Integer, fine_tuned_model_checkpoint: String, fine_tuning_job_id: String, - metrics: OpenAI::Models::FineTuning::Jobs::FineTuningJobCheckpoint::Metrics, + metrics: OpenAI::FineTuning::Jobs::FineTuningJobCheckpoint::Metrics, object: :"fine_tuning.job.checkpoint", step_number: Integer } @@ -22,7 +22,7 @@ module OpenAI attr_accessor fine_tuning_job_id: String - attr_accessor metrics: OpenAI::Models::FineTuning::Jobs::FineTuningJobCheckpoint::Metrics + attr_accessor metrics: OpenAI::FineTuning::Jobs::FineTuningJobCheckpoint::Metrics attr_accessor object: :"fine_tuning.job.checkpoint" @@ -33,13 +33,11 @@ module OpenAI created_at: Integer, fine_tuned_model_checkpoint: String, fine_tuning_job_id: String, - metrics: OpenAI::Models::FineTuning::Jobs::FineTuningJobCheckpoint::Metrics, + metrics: OpenAI::FineTuning::Jobs::FineTuningJobCheckpoint::Metrics, step_number: Integer, ?object: :"fine_tuning.job.checkpoint" ) -> void - def to_hash: -> OpenAI::Models::FineTuning::Jobs::fine_tuning_job_checkpoint - type metrics = { full_valid_loss: Float, @@ -89,8 +87,6 @@ module OpenAI ?valid_loss: Float, ?valid_mean_token_accuracy: Float ) -> void - - def to_hash: -> OpenAI::Models::FineTuning::Jobs::FineTuningJobCheckpoint::metrics end end end diff --git a/sig/openai/models/function_definition.rbs b/sig/openai/models/function_definition.rbs index c8acb986..40bf94b9 100644 --- a/sig/openai/models/function_definition.rbs +++ b/sig/openai/models/function_definition.rbs @@ -29,8 +29,6 @@ module OpenAI ?parameters: OpenAI::Models::function_parameters, ?strict: bool? ) -> void - - def to_hash: -> OpenAI::Models::function_definition end end end diff --git a/sig/openai/models/image.rbs b/sig/openai/models/image.rbs index f95aa74f..96a4fccc 100644 --- a/sig/openai/models/image.rbs +++ b/sig/openai/models/image.rbs @@ -20,8 +20,6 @@ module OpenAI ?revised_prompt: String, ?url: String ) -> void - - def to_hash: -> OpenAI::Models::image end end end diff --git a/sig/openai/models/image_create_variation_params.rbs b/sig/openai/models/image_create_variation_params.rbs index 1d87d6c6..e47b6178 100644 --- a/sig/openai/models/image_create_variation_params.rbs +++ b/sig/openai/models/image_create_variation_params.rbs @@ -39,14 +39,12 @@ module OpenAI ?request_options: OpenAI::request_opts ) -> void - def to_hash: -> OpenAI::Models::image_create_variation_params - type model = String | OpenAI::Models::image_model module Model extend OpenAI::Internal::Type::Union - def self?.variants: -> [String, OpenAI::Models::image_model] + def self?.variants: -> ::Array[OpenAI::Models::ImageCreateVariationParams::model] end type response_format = :url | :b64_json diff --git a/sig/openai/models/image_edit_params.rbs b/sig/openai/models/image_edit_params.rbs index b8499e7e..75a3c9e4 100644 --- a/sig/openai/models/image_edit_params.rbs +++ b/sig/openai/models/image_edit_params.rbs @@ -59,8 +59,6 @@ module OpenAI ?request_options: OpenAI::request_opts ) -> void - def to_hash: -> OpenAI::Models::image_edit_params - type image = Pathname | StringIO @@ -71,7 +69,7 @@ module OpenAI module Image extend OpenAI::Internal::Type::Union - def self?.variants: -> [StringIO, ::Array[StringIO]] + def self?.variants: -> ::Array[OpenAI::Models::ImageEditParams::image] StringArray: OpenAI::Internal::Type::Converter end @@ -93,7 +91,7 @@ module OpenAI module Model extend OpenAI::Internal::Type::Union - def self?.variants: -> [String, OpenAI::Models::image_model] + def self?.variants: -> ::Array[OpenAI::Models::ImageEditParams::model] end type quality = :standard | :low | :medium | :high | :auto diff --git a/sig/openai/models/image_generate_params.rbs b/sig/openai/models/image_generate_params.rbs index c5efaac8..d6367505 100644 --- a/sig/openai/models/image_generate_params.rbs +++ b/sig/openai/models/image_generate_params.rbs @@ -63,8 +63,6 @@ module OpenAI ?request_options: OpenAI::request_opts ) -> void - def to_hash: -> OpenAI::Models::image_generate_params - type background = :transparent | :opaque | :auto module Background @@ -82,7 +80,7 @@ module OpenAI module Model extend OpenAI::Internal::Type::Union - def self?.variants: -> [String, OpenAI::Models::image_model] + def self?.variants: -> ::Array[OpenAI::Models::ImageGenerateParams::model] end type moderation = :low | :auto diff --git a/sig/openai/models/images_response.rbs b/sig/openai/models/images_response.rbs index 5f23336d..da6579dc 100644 --- a/sig/openai/models/images_response.rbs +++ b/sig/openai/models/images_response.rbs @@ -3,37 +3,33 @@ module OpenAI type images_response = { created: Integer, - data: ::Array[OpenAI::Models::Image], - usage: OpenAI::Models::ImagesResponse::Usage + data: ::Array[OpenAI::Image], + usage: OpenAI::ImagesResponse::Usage } class ImagesResponse < OpenAI::Internal::Type::BaseModel attr_accessor created: Integer - attr_reader data: ::Array[OpenAI::Models::Image]? + attr_reader data: ::Array[OpenAI::Image]? - def data=: ( - ::Array[OpenAI::Models::Image] - ) -> ::Array[OpenAI::Models::Image] + def data=: (::Array[OpenAI::Image]) -> ::Array[OpenAI::Image] - attr_reader usage: OpenAI::Models::ImagesResponse::Usage? + attr_reader usage: OpenAI::ImagesResponse::Usage? def usage=: ( - OpenAI::Models::ImagesResponse::Usage - ) -> OpenAI::Models::ImagesResponse::Usage + OpenAI::ImagesResponse::Usage + ) -> OpenAI::ImagesResponse::Usage def initialize: ( created: Integer, - ?data: ::Array[OpenAI::Models::Image], - ?usage: OpenAI::Models::ImagesResponse::Usage + ?data: ::Array[OpenAI::Image], + ?usage: OpenAI::ImagesResponse::Usage ) -> void - def to_hash: -> OpenAI::Models::images_response - type usage = { input_tokens: Integer, - input_tokens_details: OpenAI::Models::ImagesResponse::Usage::InputTokensDetails, + input_tokens_details: OpenAI::ImagesResponse::Usage::InputTokensDetails, output_tokens: Integer, total_tokens: Integer } @@ -41,7 +37,7 @@ module OpenAI class Usage < OpenAI::Internal::Type::BaseModel attr_accessor input_tokens: Integer - attr_accessor input_tokens_details: OpenAI::Models::ImagesResponse::Usage::InputTokensDetails + attr_accessor input_tokens_details: OpenAI::ImagesResponse::Usage::InputTokensDetails attr_accessor output_tokens: Integer @@ -49,13 +45,11 @@ module OpenAI def initialize: ( input_tokens: Integer, - input_tokens_details: OpenAI::Models::ImagesResponse::Usage::InputTokensDetails, + input_tokens_details: OpenAI::ImagesResponse::Usage::InputTokensDetails, output_tokens: Integer, total_tokens: Integer ) -> void - def to_hash: -> OpenAI::Models::ImagesResponse::usage - type input_tokens_details = { image_tokens: Integer, text_tokens: Integer } @@ -65,8 +59,6 @@ module OpenAI attr_accessor text_tokens: Integer def initialize: (image_tokens: Integer, text_tokens: Integer) -> void - - def to_hash: -> OpenAI::Models::ImagesResponse::Usage::input_tokens_details end end end diff --git a/sig/openai/models/model.rbs b/sig/openai/models/model.rbs index 88000ee1..79402173 100644 --- a/sig/openai/models/model.rbs +++ b/sig/openai/models/model.rbs @@ -18,8 +18,6 @@ module OpenAI owned_by: String, ?object: :model ) -> void - - def to_hash: -> OpenAI::Models::model end end end diff --git a/sig/openai/models/model_delete_params.rbs b/sig/openai/models/model_delete_params.rbs index ab28b6e7..16285da7 100644 --- a/sig/openai/models/model_delete_params.rbs +++ b/sig/openai/models/model_delete_params.rbs @@ -7,8 +7,6 @@ module OpenAI include OpenAI::Internal::Type::RequestParameters def initialize: (?request_options: OpenAI::request_opts) -> void - - def to_hash: -> OpenAI::Models::model_delete_params end end end diff --git a/sig/openai/models/model_deleted.rbs b/sig/openai/models/model_deleted.rbs index f1c1b5f9..b95b2a67 100644 --- a/sig/openai/models/model_deleted.rbs +++ b/sig/openai/models/model_deleted.rbs @@ -10,8 +10,6 @@ module OpenAI attr_accessor object: String def initialize: (id: String, deleted: bool, object: String) -> void - - def to_hash: -> OpenAI::Models::model_deleted end end end diff --git a/sig/openai/models/model_list_params.rbs b/sig/openai/models/model_list_params.rbs index ffbe02ed..37d678e8 100644 --- a/sig/openai/models/model_list_params.rbs +++ b/sig/openai/models/model_list_params.rbs @@ -7,8 +7,6 @@ module OpenAI include OpenAI::Internal::Type::RequestParameters def initialize: (?request_options: OpenAI::request_opts) -> void - - def to_hash: -> OpenAI::Models::model_list_params end end end diff --git a/sig/openai/models/model_retrieve_params.rbs b/sig/openai/models/model_retrieve_params.rbs index 8cf3afab..fed08da1 100644 --- a/sig/openai/models/model_retrieve_params.rbs +++ b/sig/openai/models/model_retrieve_params.rbs @@ -8,8 +8,6 @@ module OpenAI include OpenAI::Internal::Type::RequestParameters def initialize: (?request_options: OpenAI::request_opts) -> void - - def to_hash: -> OpenAI::Models::model_retrieve_params end end end diff --git a/sig/openai/models/moderation.rbs b/sig/openai/models/moderation.rbs index 2a38be49..7d543126 100644 --- a/sig/openai/models/moderation.rbs +++ b/sig/openai/models/moderation.rbs @@ -2,30 +2,28 @@ module OpenAI module Models type moderation = { - categories: OpenAI::Models::Moderation::Categories, - category_applied_input_types: OpenAI::Models::Moderation::CategoryAppliedInputTypes, - category_scores: OpenAI::Models::Moderation::CategoryScores, + categories: OpenAI::Moderation::Categories, + category_applied_input_types: OpenAI::Moderation::CategoryAppliedInputTypes, + category_scores: OpenAI::Moderation::CategoryScores, flagged: bool } class Moderation < OpenAI::Internal::Type::BaseModel - attr_accessor categories: OpenAI::Models::Moderation::Categories + attr_accessor categories: OpenAI::Moderation::Categories - attr_accessor category_applied_input_types: OpenAI::Models::Moderation::CategoryAppliedInputTypes + attr_accessor category_applied_input_types: OpenAI::Moderation::CategoryAppliedInputTypes - attr_accessor category_scores: OpenAI::Models::Moderation::CategoryScores + attr_accessor category_scores: OpenAI::Moderation::CategoryScores attr_accessor flagged: bool def initialize: ( - categories: OpenAI::Models::Moderation::Categories, - category_applied_input_types: OpenAI::Models::Moderation::CategoryAppliedInputTypes, - category_scores: OpenAI::Models::Moderation::CategoryScores, + categories: OpenAI::Moderation::Categories, + category_applied_input_types: OpenAI::Moderation::CategoryAppliedInputTypes, + category_scores: OpenAI::Moderation::CategoryScores, flagged: bool ) -> void - def to_hash: -> OpenAI::Models::moderation - type categories = { harassment: bool, @@ -85,72 +83,68 @@ module OpenAI violence: bool, violence_graphic: bool ) -> void - - def to_hash: -> OpenAI::Models::Moderation::categories end type category_applied_input_types = { - harassment: ::Array[OpenAI::Models::Moderation::CategoryAppliedInputTypes::harassment], - harassment_threatening: ::Array[OpenAI::Models::Moderation::CategoryAppliedInputTypes::harassment_threatening], - hate: ::Array[OpenAI::Models::Moderation::CategoryAppliedInputTypes::hate], - hate_threatening: ::Array[OpenAI::Models::Moderation::CategoryAppliedInputTypes::hate_threatening], - illicit: ::Array[OpenAI::Models::Moderation::CategoryAppliedInputTypes::illicit], - illicit_violent: ::Array[OpenAI::Models::Moderation::CategoryAppliedInputTypes::illicit_violent], - self_harm: ::Array[OpenAI::Models::Moderation::CategoryAppliedInputTypes::self_harm], - self_harm_instructions: ::Array[OpenAI::Models::Moderation::CategoryAppliedInputTypes::self_harm_instruction], - self_harm_intent: ::Array[OpenAI::Models::Moderation::CategoryAppliedInputTypes::self_harm_intent], - sexual: ::Array[OpenAI::Models::Moderation::CategoryAppliedInputTypes::sexual], - sexual_minors: ::Array[OpenAI::Models::Moderation::CategoryAppliedInputTypes::sexual_minor], - violence: ::Array[OpenAI::Models::Moderation::CategoryAppliedInputTypes::violence], - violence_graphic: ::Array[OpenAI::Models::Moderation::CategoryAppliedInputTypes::violence_graphic] + harassment: ::Array[OpenAI::Moderation::CategoryAppliedInputTypes::harassment], + harassment_threatening: ::Array[OpenAI::Moderation::CategoryAppliedInputTypes::harassment_threatening], + hate: ::Array[OpenAI::Moderation::CategoryAppliedInputTypes::hate], + hate_threatening: ::Array[OpenAI::Moderation::CategoryAppliedInputTypes::hate_threatening], + illicit: ::Array[OpenAI::Moderation::CategoryAppliedInputTypes::illicit], + illicit_violent: ::Array[OpenAI::Moderation::CategoryAppliedInputTypes::illicit_violent], + self_harm: ::Array[OpenAI::Moderation::CategoryAppliedInputTypes::self_harm], + self_harm_instructions: ::Array[OpenAI::Moderation::CategoryAppliedInputTypes::self_harm_instruction], + self_harm_intent: ::Array[OpenAI::Moderation::CategoryAppliedInputTypes::self_harm_intent], + sexual: ::Array[OpenAI::Moderation::CategoryAppliedInputTypes::sexual], + sexual_minors: ::Array[OpenAI::Moderation::CategoryAppliedInputTypes::sexual_minor], + violence: ::Array[OpenAI::Moderation::CategoryAppliedInputTypes::violence], + violence_graphic: ::Array[OpenAI::Moderation::CategoryAppliedInputTypes::violence_graphic] } class CategoryAppliedInputTypes < OpenAI::Internal::Type::BaseModel - attr_accessor harassment: ::Array[OpenAI::Models::Moderation::CategoryAppliedInputTypes::harassment] + attr_accessor harassment: ::Array[OpenAI::Moderation::CategoryAppliedInputTypes::harassment] - attr_accessor harassment_threatening: ::Array[OpenAI::Models::Moderation::CategoryAppliedInputTypes::harassment_threatening] + attr_accessor harassment_threatening: ::Array[OpenAI::Moderation::CategoryAppliedInputTypes::harassment_threatening] - attr_accessor hate: ::Array[OpenAI::Models::Moderation::CategoryAppliedInputTypes::hate] + attr_accessor hate: ::Array[OpenAI::Moderation::CategoryAppliedInputTypes::hate] - attr_accessor hate_threatening: ::Array[OpenAI::Models::Moderation::CategoryAppliedInputTypes::hate_threatening] + attr_accessor hate_threatening: ::Array[OpenAI::Moderation::CategoryAppliedInputTypes::hate_threatening] - attr_accessor illicit: ::Array[OpenAI::Models::Moderation::CategoryAppliedInputTypes::illicit] + attr_accessor illicit: ::Array[OpenAI::Moderation::CategoryAppliedInputTypes::illicit] - attr_accessor illicit_violent: ::Array[OpenAI::Models::Moderation::CategoryAppliedInputTypes::illicit_violent] + attr_accessor illicit_violent: ::Array[OpenAI::Moderation::CategoryAppliedInputTypes::illicit_violent] - attr_accessor self_harm: ::Array[OpenAI::Models::Moderation::CategoryAppliedInputTypes::self_harm] + attr_accessor self_harm: ::Array[OpenAI::Moderation::CategoryAppliedInputTypes::self_harm] - attr_accessor self_harm_instructions: ::Array[OpenAI::Models::Moderation::CategoryAppliedInputTypes::self_harm_instruction] + attr_accessor self_harm_instructions: ::Array[OpenAI::Moderation::CategoryAppliedInputTypes::self_harm_instruction] - attr_accessor self_harm_intent: ::Array[OpenAI::Models::Moderation::CategoryAppliedInputTypes::self_harm_intent] + attr_accessor self_harm_intent: ::Array[OpenAI::Moderation::CategoryAppliedInputTypes::self_harm_intent] - attr_accessor sexual: ::Array[OpenAI::Models::Moderation::CategoryAppliedInputTypes::sexual] + attr_accessor sexual: ::Array[OpenAI::Moderation::CategoryAppliedInputTypes::sexual] - attr_accessor sexual_minors: ::Array[OpenAI::Models::Moderation::CategoryAppliedInputTypes::sexual_minor] + attr_accessor sexual_minors: ::Array[OpenAI::Moderation::CategoryAppliedInputTypes::sexual_minor] - attr_accessor violence: ::Array[OpenAI::Models::Moderation::CategoryAppliedInputTypes::violence] + attr_accessor violence: ::Array[OpenAI::Moderation::CategoryAppliedInputTypes::violence] - attr_accessor violence_graphic: ::Array[OpenAI::Models::Moderation::CategoryAppliedInputTypes::violence_graphic] + attr_accessor violence_graphic: ::Array[OpenAI::Moderation::CategoryAppliedInputTypes::violence_graphic] def initialize: ( - harassment: ::Array[OpenAI::Models::Moderation::CategoryAppliedInputTypes::harassment], - harassment_threatening: ::Array[OpenAI::Models::Moderation::CategoryAppliedInputTypes::harassment_threatening], - hate: ::Array[OpenAI::Models::Moderation::CategoryAppliedInputTypes::hate], - hate_threatening: ::Array[OpenAI::Models::Moderation::CategoryAppliedInputTypes::hate_threatening], - illicit: ::Array[OpenAI::Models::Moderation::CategoryAppliedInputTypes::illicit], - illicit_violent: ::Array[OpenAI::Models::Moderation::CategoryAppliedInputTypes::illicit_violent], - self_harm: ::Array[OpenAI::Models::Moderation::CategoryAppliedInputTypes::self_harm], - self_harm_instructions: ::Array[OpenAI::Models::Moderation::CategoryAppliedInputTypes::self_harm_instruction], - self_harm_intent: ::Array[OpenAI::Models::Moderation::CategoryAppliedInputTypes::self_harm_intent], - sexual: ::Array[OpenAI::Models::Moderation::CategoryAppliedInputTypes::sexual], - sexual_minors: ::Array[OpenAI::Models::Moderation::CategoryAppliedInputTypes::sexual_minor], - violence: ::Array[OpenAI::Models::Moderation::CategoryAppliedInputTypes::violence], - violence_graphic: ::Array[OpenAI::Models::Moderation::CategoryAppliedInputTypes::violence_graphic] + harassment: ::Array[OpenAI::Moderation::CategoryAppliedInputTypes::harassment], + harassment_threatening: ::Array[OpenAI::Moderation::CategoryAppliedInputTypes::harassment_threatening], + hate: ::Array[OpenAI::Moderation::CategoryAppliedInputTypes::hate], + hate_threatening: ::Array[OpenAI::Moderation::CategoryAppliedInputTypes::hate_threatening], + illicit: ::Array[OpenAI::Moderation::CategoryAppliedInputTypes::illicit], + illicit_violent: ::Array[OpenAI::Moderation::CategoryAppliedInputTypes::illicit_violent], + self_harm: ::Array[OpenAI::Moderation::CategoryAppliedInputTypes::self_harm], + self_harm_instructions: ::Array[OpenAI::Moderation::CategoryAppliedInputTypes::self_harm_instruction], + self_harm_intent: ::Array[OpenAI::Moderation::CategoryAppliedInputTypes::self_harm_intent], + sexual: ::Array[OpenAI::Moderation::CategoryAppliedInputTypes::sexual], + sexual_minors: ::Array[OpenAI::Moderation::CategoryAppliedInputTypes::sexual_minor], + violence: ::Array[OpenAI::Moderation::CategoryAppliedInputTypes::violence], + violence_graphic: ::Array[OpenAI::Moderation::CategoryAppliedInputTypes::violence_graphic] ) -> void - def to_hash: -> OpenAI::Models::Moderation::category_applied_input_types - type harassment = :text module Harassment @@ -158,7 +152,7 @@ module OpenAI TEXT: :text - def self?.values: -> ::Array[OpenAI::Models::Moderation::CategoryAppliedInputTypes::harassment] + def self?.values: -> ::Array[OpenAI::Moderation::CategoryAppliedInputTypes::harassment] end type harassment_threatening = :text @@ -168,7 +162,7 @@ module OpenAI TEXT: :text - def self?.values: -> ::Array[OpenAI::Models::Moderation::CategoryAppliedInputTypes::harassment_threatening] + def self?.values: -> ::Array[OpenAI::Moderation::CategoryAppliedInputTypes::harassment_threatening] end type hate = :text @@ -178,7 +172,7 @@ module OpenAI TEXT: :text - def self?.values: -> ::Array[OpenAI::Models::Moderation::CategoryAppliedInputTypes::hate] + def self?.values: -> ::Array[OpenAI::Moderation::CategoryAppliedInputTypes::hate] end type hate_threatening = :text @@ -188,7 +182,7 @@ module OpenAI TEXT: :text - def self?.values: -> ::Array[OpenAI::Models::Moderation::CategoryAppliedInputTypes::hate_threatening] + def self?.values: -> ::Array[OpenAI::Moderation::CategoryAppliedInputTypes::hate_threatening] end type illicit = :text @@ -198,7 +192,7 @@ module OpenAI TEXT: :text - def self?.values: -> ::Array[OpenAI::Models::Moderation::CategoryAppliedInputTypes::illicit] + def self?.values: -> ::Array[OpenAI::Moderation::CategoryAppliedInputTypes::illicit] end type illicit_violent = :text @@ -208,7 +202,7 @@ module OpenAI TEXT: :text - def self?.values: -> ::Array[OpenAI::Models::Moderation::CategoryAppliedInputTypes::illicit_violent] + def self?.values: -> ::Array[OpenAI::Moderation::CategoryAppliedInputTypes::illicit_violent] end type self_harm = :text | :image @@ -219,7 +213,7 @@ module OpenAI TEXT: :text IMAGE: :image - def self?.values: -> ::Array[OpenAI::Models::Moderation::CategoryAppliedInputTypes::self_harm] + def self?.values: -> ::Array[OpenAI::Moderation::CategoryAppliedInputTypes::self_harm] end type self_harm_instruction = :text | :image @@ -230,7 +224,7 @@ module OpenAI TEXT: :text IMAGE: :image - def self?.values: -> ::Array[OpenAI::Models::Moderation::CategoryAppliedInputTypes::self_harm_instruction] + def self?.values: -> ::Array[OpenAI::Moderation::CategoryAppliedInputTypes::self_harm_instruction] end type self_harm_intent = :text | :image @@ -241,7 +235,7 @@ module OpenAI TEXT: :text IMAGE: :image - def self?.values: -> ::Array[OpenAI::Models::Moderation::CategoryAppliedInputTypes::self_harm_intent] + def self?.values: -> ::Array[OpenAI::Moderation::CategoryAppliedInputTypes::self_harm_intent] end type sexual = :text | :image @@ -252,7 +246,7 @@ module OpenAI TEXT: :text IMAGE: :image - def self?.values: -> ::Array[OpenAI::Models::Moderation::CategoryAppliedInputTypes::sexual] + def self?.values: -> ::Array[OpenAI::Moderation::CategoryAppliedInputTypes::sexual] end type sexual_minor = :text @@ -262,7 +256,7 @@ module OpenAI TEXT: :text - def self?.values: -> ::Array[OpenAI::Models::Moderation::CategoryAppliedInputTypes::sexual_minor] + def self?.values: -> ::Array[OpenAI::Moderation::CategoryAppliedInputTypes::sexual_minor] end type violence = :text | :image @@ -273,7 +267,7 @@ module OpenAI TEXT: :text IMAGE: :image - def self?.values: -> ::Array[OpenAI::Models::Moderation::CategoryAppliedInputTypes::violence] + def self?.values: -> ::Array[OpenAI::Moderation::CategoryAppliedInputTypes::violence] end type violence_graphic = :text | :image @@ -284,7 +278,7 @@ module OpenAI TEXT: :text IMAGE: :image - def self?.values: -> ::Array[OpenAI::Models::Moderation::CategoryAppliedInputTypes::violence_graphic] + def self?.values: -> ::Array[OpenAI::Moderation::CategoryAppliedInputTypes::violence_graphic] end end @@ -347,8 +341,6 @@ module OpenAI violence: Float, violence_graphic: Float ) -> void - - def to_hash: -> OpenAI::Models::Moderation::category_scores end end end diff --git a/sig/openai/models/moderation_create_params.rbs b/sig/openai/models/moderation_create_params.rbs index e6f8668e..f681a3bb 100644 --- a/sig/openai/models/moderation_create_params.rbs +++ b/sig/openai/models/moderation_create_params.rbs @@ -25,8 +25,6 @@ module OpenAI ?request_options: OpenAI::request_opts ) -> void - def to_hash: -> OpenAI::Models::moderation_create_params - type input = String | ::Array[String] @@ -35,7 +33,7 @@ module OpenAI module Input extend OpenAI::Internal::Type::Union - def self?.variants: -> [String, ::Array[String], ::Array[OpenAI::Models::moderation_multi_modal_input]] + def self?.variants: -> ::Array[OpenAI::Models::ModerationCreateParams::input] StringArray: OpenAI::Internal::Type::Converter @@ -47,7 +45,7 @@ module OpenAI module Model extend OpenAI::Internal::Type::Union - def self?.variants: -> [String, OpenAI::Models::moderation_model] + def self?.variants: -> ::Array[OpenAI::Models::ModerationCreateParams::model] end end end diff --git a/sig/openai/models/moderation_create_response.rbs b/sig/openai/models/moderation_create_response.rbs index d6432898..616ad949 100644 --- a/sig/openai/models/moderation_create_response.rbs +++ b/sig/openai/models/moderation_create_response.rbs @@ -1,26 +1,20 @@ module OpenAI module Models type moderation_create_response = - { - id: String, - model: String, - results: ::Array[OpenAI::Models::Moderation] - } + { id: String, model: String, results: ::Array[OpenAI::Moderation] } class ModerationCreateResponse < OpenAI::Internal::Type::BaseModel attr_accessor id: String attr_accessor model: String - attr_accessor results: ::Array[OpenAI::Models::Moderation] + attr_accessor results: ::Array[OpenAI::Moderation] def initialize: ( id: String, model: String, - results: ::Array[OpenAI::Models::Moderation] + results: ::Array[OpenAI::Moderation] ) -> void - - def to_hash: -> OpenAI::Models::moderation_create_response end end end diff --git a/sig/openai/models/moderation_image_url_input.rbs b/sig/openai/models/moderation_image_url_input.rbs index 4aa41a71..e099ab00 100644 --- a/sig/openai/models/moderation_image_url_input.rbs +++ b/sig/openai/models/moderation_image_url_input.rbs @@ -1,31 +1,24 @@ module OpenAI module Models type moderation_image_url_input = - { - image_url: OpenAI::Models::ModerationImageURLInput::ImageURL, - type: :image_url - } + { image_url: OpenAI::ModerationImageURLInput::ImageURL, type: :image_url } class ModerationImageURLInput < OpenAI::Internal::Type::BaseModel - attr_accessor image_url: OpenAI::Models::ModerationImageURLInput::ImageURL + attr_accessor image_url: OpenAI::ModerationImageURLInput::ImageURL attr_accessor type: :image_url def initialize: ( - image_url: OpenAI::Models::ModerationImageURLInput::ImageURL, + image_url: OpenAI::ModerationImageURLInput::ImageURL, ?type: :image_url ) -> void - def to_hash: -> OpenAI::Models::moderation_image_url_input - type image_url = { url: String } class ImageURL < OpenAI::Internal::Type::BaseModel attr_accessor url: String def initialize: (url: String) -> void - - def to_hash: -> OpenAI::Models::ModerationImageURLInput::image_url end end end diff --git a/sig/openai/models/moderation_multi_modal_input.rbs b/sig/openai/models/moderation_multi_modal_input.rbs index 61d672c1..ba782390 100644 --- a/sig/openai/models/moderation_multi_modal_input.rbs +++ b/sig/openai/models/moderation_multi_modal_input.rbs @@ -1,13 +1,12 @@ module OpenAI module Models type moderation_multi_modal_input = - OpenAI::Models::ModerationImageURLInput - | OpenAI::Models::ModerationTextInput + OpenAI::ModerationImageURLInput | OpenAI::ModerationTextInput module ModerationMultiModalInput extend OpenAI::Internal::Type::Union - def self?.variants: -> [OpenAI::Models::ModerationImageURLInput, OpenAI::Models::ModerationTextInput] + def self?.variants: -> ::Array[OpenAI::Models::moderation_multi_modal_input] end end end diff --git a/sig/openai/models/moderation_text_input.rbs b/sig/openai/models/moderation_text_input.rbs index c6d70b96..6f258e86 100644 --- a/sig/openai/models/moderation_text_input.rbs +++ b/sig/openai/models/moderation_text_input.rbs @@ -8,8 +8,6 @@ module OpenAI attr_accessor type: :text def initialize: (text: String, ?type: :text) -> void - - def to_hash: -> OpenAI::Models::moderation_text_input end end end diff --git a/sig/openai/models/other_file_chunking_strategy_object.rbs b/sig/openai/models/other_file_chunking_strategy_object.rbs index 01290f70..90cc48b4 100644 --- a/sig/openai/models/other_file_chunking_strategy_object.rbs +++ b/sig/openai/models/other_file_chunking_strategy_object.rbs @@ -6,8 +6,6 @@ module OpenAI attr_accessor type: :other def initialize: (?type: :other) -> void - - def to_hash: -> OpenAI::Models::other_file_chunking_strategy_object end end end diff --git a/sig/openai/models/reasoning.rbs b/sig/openai/models/reasoning.rbs index 30c6ad68..9cfe03fc 100644 --- a/sig/openai/models/reasoning.rbs +++ b/sig/openai/models/reasoning.rbs @@ -3,25 +3,23 @@ module OpenAI type reasoning = { effort: OpenAI::Models::reasoning_effort?, - generate_summary: OpenAI::Models::Reasoning::generate_summary?, - summary: OpenAI::Models::Reasoning::summary? + generate_summary: OpenAI::Reasoning::generate_summary?, + summary: OpenAI::Reasoning::summary? } class Reasoning < OpenAI::Internal::Type::BaseModel attr_accessor effort: OpenAI::Models::reasoning_effort? - attr_accessor generate_summary: OpenAI::Models::Reasoning::generate_summary? + attr_accessor generate_summary: OpenAI::Reasoning::generate_summary? - attr_accessor summary: OpenAI::Models::Reasoning::summary? + attr_accessor summary: OpenAI::Reasoning::summary? def initialize: ( ?effort: OpenAI::Models::reasoning_effort?, - ?generate_summary: OpenAI::Models::Reasoning::generate_summary?, - ?summary: OpenAI::Models::Reasoning::summary? + ?generate_summary: OpenAI::Reasoning::generate_summary?, + ?summary: OpenAI::Reasoning::summary? ) -> void - def to_hash: -> OpenAI::Models::reasoning - type generate_summary = :auto | :concise | :detailed module GenerateSummary @@ -31,7 +29,7 @@ module OpenAI CONCISE: :concise DETAILED: :detailed - def self?.values: -> ::Array[OpenAI::Models::Reasoning::generate_summary] + def self?.values: -> ::Array[OpenAI::Reasoning::generate_summary] end type summary = :auto | :concise | :detailed @@ -43,7 +41,7 @@ module OpenAI CONCISE: :concise DETAILED: :detailed - def self?.values: -> ::Array[OpenAI::Models::Reasoning::summary] + def self?.values: -> ::Array[OpenAI::Reasoning::summary] end end end diff --git a/sig/openai/models/response_format_json_object.rbs b/sig/openai/models/response_format_json_object.rbs index 09c67374..b34ea82e 100644 --- a/sig/openai/models/response_format_json_object.rbs +++ b/sig/openai/models/response_format_json_object.rbs @@ -6,8 +6,6 @@ module OpenAI attr_accessor type: :json_object def initialize: (?type: :json_object) -> void - - def to_hash: -> OpenAI::Models::response_format_json_object end end end diff --git a/sig/openai/models/response_format_json_schema.rbs b/sig/openai/models/response_format_json_schema.rbs index 4d9f4d87..6f200e90 100644 --- a/sig/openai/models/response_format_json_schema.rbs +++ b/sig/openai/models/response_format_json_schema.rbs @@ -2,22 +2,20 @@ module OpenAI module Models type response_format_json_schema = { - json_schema: OpenAI::Models::ResponseFormatJSONSchema::JSONSchema, + json_schema: OpenAI::ResponseFormatJSONSchema::JSONSchema, type: :json_schema } class ResponseFormatJSONSchema < OpenAI::Internal::Type::BaseModel - attr_accessor json_schema: OpenAI::Models::ResponseFormatJSONSchema::JSONSchema + attr_accessor json_schema: OpenAI::ResponseFormatJSONSchema::JSONSchema attr_accessor type: :json_schema def initialize: ( - json_schema: OpenAI::Models::ResponseFormatJSONSchema::JSONSchema, + json_schema: OpenAI::ResponseFormatJSONSchema::JSONSchema, ?type: :json_schema ) -> void - def to_hash: -> OpenAI::Models::response_format_json_schema - type json_schema = { name: String, @@ -45,8 +43,6 @@ module OpenAI ?schema: ::Hash[Symbol, top], ?strict: bool? ) -> void - - def to_hash: -> OpenAI::Models::ResponseFormatJSONSchema::json_schema end end end diff --git a/sig/openai/models/response_format_text.rbs b/sig/openai/models/response_format_text.rbs index 7b892f07..b245c218 100644 --- a/sig/openai/models/response_format_text.rbs +++ b/sig/openai/models/response_format_text.rbs @@ -6,8 +6,6 @@ module OpenAI attr_accessor type: :text def initialize: (?type: :text) -> void - - def to_hash: -> OpenAI::Models::response_format_text end end end diff --git a/sig/openai/models/responses/computer_tool.rbs b/sig/openai/models/responses/computer_tool.rbs index f362244f..23544e1a 100644 --- a/sig/openai/models/responses/computer_tool.rbs +++ b/sig/openai/models/responses/computer_tool.rbs @@ -5,7 +5,7 @@ module OpenAI { display_height: Integer, display_width: Integer, - environment: OpenAI::Models::Responses::ComputerTool::environment, + environment: OpenAI::Responses::ComputerTool::environment, type: :computer_use_preview } @@ -14,19 +14,17 @@ module OpenAI attr_accessor display_width: Integer - attr_accessor environment: OpenAI::Models::Responses::ComputerTool::environment + attr_accessor environment: OpenAI::Responses::ComputerTool::environment attr_accessor type: :computer_use_preview def initialize: ( display_height: Integer, display_width: Integer, - environment: OpenAI::Models::Responses::ComputerTool::environment, + environment: OpenAI::Responses::ComputerTool::environment, ?type: :computer_use_preview ) -> void - def to_hash: -> OpenAI::Models::Responses::computer_tool - type environment = :windows | :mac | :linux | :ubuntu | :browser module Environment @@ -38,7 +36,7 @@ module OpenAI UBUNTU: :ubuntu BROWSER: :browser - def self?.values: -> ::Array[OpenAI::Models::Responses::ComputerTool::environment] + def self?.values: -> ::Array[OpenAI::Responses::ComputerTool::environment] end end end diff --git a/sig/openai/models/responses/easy_input_message.rbs b/sig/openai/models/responses/easy_input_message.rbs index 1120ea2c..0b52f94f 100644 --- a/sig/openai/models/responses/easy_input_message.rbs +++ b/sig/openai/models/responses/easy_input_message.rbs @@ -3,30 +3,28 @@ module OpenAI module Responses type easy_input_message = { - content: OpenAI::Models::Responses::EasyInputMessage::content, - role: OpenAI::Models::Responses::EasyInputMessage::role, - type: OpenAI::Models::Responses::EasyInputMessage::type_ + content: OpenAI::Responses::EasyInputMessage::content, + role: OpenAI::Responses::EasyInputMessage::role, + type: OpenAI::Responses::EasyInputMessage::type_ } class EasyInputMessage < OpenAI::Internal::Type::BaseModel - attr_accessor content: OpenAI::Models::Responses::EasyInputMessage::content + attr_accessor content: OpenAI::Responses::EasyInputMessage::content - attr_accessor role: OpenAI::Models::Responses::EasyInputMessage::role + attr_accessor role: OpenAI::Responses::EasyInputMessage::role - attr_reader type: OpenAI::Models::Responses::EasyInputMessage::type_? + attr_reader type: OpenAI::Responses::EasyInputMessage::type_? def type=: ( - OpenAI::Models::Responses::EasyInputMessage::type_ - ) -> OpenAI::Models::Responses::EasyInputMessage::type_ + OpenAI::Responses::EasyInputMessage::type_ + ) -> OpenAI::Responses::EasyInputMessage::type_ def initialize: ( - content: OpenAI::Models::Responses::EasyInputMessage::content, - role: OpenAI::Models::Responses::EasyInputMessage::role, - ?type: OpenAI::Models::Responses::EasyInputMessage::type_ + content: OpenAI::Responses::EasyInputMessage::content, + role: OpenAI::Responses::EasyInputMessage::role, + ?type: OpenAI::Responses::EasyInputMessage::type_ ) -> void - def to_hash: -> OpenAI::Models::Responses::easy_input_message - type content = String | OpenAI::Models::Responses::response_input_message_content_list @@ -34,7 +32,7 @@ module OpenAI module Content extend OpenAI::Internal::Type::Union - def self?.variants: -> [String, OpenAI::Models::Responses::response_input_message_content_list] + def self?.variants: -> ::Array[OpenAI::Responses::EasyInputMessage::content] end type role = :user | :assistant | :system | :developer @@ -47,7 +45,7 @@ module OpenAI SYSTEM: :system DEVELOPER: :developer - def self?.values: -> ::Array[OpenAI::Models::Responses::EasyInputMessage::role] + def self?.values: -> ::Array[OpenAI::Responses::EasyInputMessage::role] end type type_ = :message @@ -57,7 +55,7 @@ module OpenAI MESSAGE: :message - def self?.values: -> ::Array[OpenAI::Models::Responses::EasyInputMessage::type_] + def self?.values: -> ::Array[OpenAI::Responses::EasyInputMessage::type_] end end end diff --git a/sig/openai/models/responses/file_search_tool.rbs b/sig/openai/models/responses/file_search_tool.rbs index 07747db5..da6a8189 100644 --- a/sig/openai/models/responses/file_search_tool.rbs +++ b/sig/openai/models/responses/file_search_tool.rbs @@ -5,9 +5,9 @@ module OpenAI { type: :file_search, vector_store_ids: ::Array[String], - filters: OpenAI::Models::Responses::FileSearchTool::filters?, + filters: OpenAI::Responses::FileSearchTool::filters?, max_num_results: Integer, - ranking_options: OpenAI::Models::Responses::FileSearchTool::RankingOptions + ranking_options: OpenAI::Responses::FileSearchTool::RankingOptions } class FileSearchTool < OpenAI::Internal::Type::BaseModel @@ -15,61 +15,56 @@ module OpenAI attr_accessor vector_store_ids: ::Array[String] - attr_accessor filters: OpenAI::Models::Responses::FileSearchTool::filters? + attr_accessor filters: OpenAI::Responses::FileSearchTool::filters? attr_reader max_num_results: Integer? def max_num_results=: (Integer) -> Integer - attr_reader ranking_options: OpenAI::Models::Responses::FileSearchTool::RankingOptions? + attr_reader ranking_options: OpenAI::Responses::FileSearchTool::RankingOptions? def ranking_options=: ( - OpenAI::Models::Responses::FileSearchTool::RankingOptions - ) -> OpenAI::Models::Responses::FileSearchTool::RankingOptions + OpenAI::Responses::FileSearchTool::RankingOptions + ) -> OpenAI::Responses::FileSearchTool::RankingOptions def initialize: ( vector_store_ids: ::Array[String], - ?filters: OpenAI::Models::Responses::FileSearchTool::filters?, + ?filters: OpenAI::Responses::FileSearchTool::filters?, ?max_num_results: Integer, - ?ranking_options: OpenAI::Models::Responses::FileSearchTool::RankingOptions, + ?ranking_options: OpenAI::Responses::FileSearchTool::RankingOptions, ?type: :file_search ) -> void - def to_hash: -> OpenAI::Models::Responses::file_search_tool - - type filters = - OpenAI::Models::ComparisonFilter | OpenAI::Models::CompoundFilter + type filters = OpenAI::ComparisonFilter | OpenAI::CompoundFilter module Filters extend OpenAI::Internal::Type::Union - def self?.variants: -> [OpenAI::Models::ComparisonFilter, OpenAI::Models::CompoundFilter] + def self?.variants: -> ::Array[OpenAI::Responses::FileSearchTool::filters] end type ranking_options = { - ranker: OpenAI::Models::Responses::FileSearchTool::RankingOptions::ranker, + ranker: OpenAI::Responses::FileSearchTool::RankingOptions::ranker, score_threshold: Float } class RankingOptions < OpenAI::Internal::Type::BaseModel - attr_reader ranker: OpenAI::Models::Responses::FileSearchTool::RankingOptions::ranker? + attr_reader ranker: OpenAI::Responses::FileSearchTool::RankingOptions::ranker? def ranker=: ( - OpenAI::Models::Responses::FileSearchTool::RankingOptions::ranker - ) -> OpenAI::Models::Responses::FileSearchTool::RankingOptions::ranker + OpenAI::Responses::FileSearchTool::RankingOptions::ranker + ) -> OpenAI::Responses::FileSearchTool::RankingOptions::ranker attr_reader score_threshold: Float? def score_threshold=: (Float) -> Float def initialize: ( - ?ranker: OpenAI::Models::Responses::FileSearchTool::RankingOptions::ranker, + ?ranker: OpenAI::Responses::FileSearchTool::RankingOptions::ranker, ?score_threshold: Float ) -> void - def to_hash: -> OpenAI::Models::Responses::FileSearchTool::ranking_options - type ranker = :auto | :"default-2024-11-15" module Ranker @@ -78,7 +73,7 @@ module OpenAI AUTO: :auto DEFAULT_2024_11_15: :"default-2024-11-15" - def self?.values: -> ::Array[OpenAI::Models::Responses::FileSearchTool::RankingOptions::ranker] + def self?.values: -> ::Array[OpenAI::Responses::FileSearchTool::RankingOptions::ranker] end end end diff --git a/sig/openai/models/responses/function_tool.rbs b/sig/openai/models/responses/function_tool.rbs index 3121cb1d..eb7df928 100644 --- a/sig/openai/models/responses/function_tool.rbs +++ b/sig/openai/models/responses/function_tool.rbs @@ -28,8 +28,6 @@ module OpenAI ?description: String?, ?type: :function ) -> void - - def to_hash: -> OpenAI::Models::Responses::function_tool end end end diff --git a/sig/openai/models/responses/input_item_list_params.rbs b/sig/openai/models/responses/input_item_list_params.rbs index 3e047f28..0897b4e9 100644 --- a/sig/openai/models/responses/input_item_list_params.rbs +++ b/sig/openai/models/responses/input_item_list_params.rbs @@ -48,8 +48,6 @@ module OpenAI ?request_options: OpenAI::request_opts ) -> void - def to_hash: -> OpenAI::Models::Responses::input_item_list_params - type order = :asc | :desc module Order diff --git a/sig/openai/models/responses/response.rbs b/sig/openai/models/responses/response.rbs index 2957a8d3..ea887796 100644 --- a/sig/openai/models/responses/response.rbs +++ b/sig/openai/models/responses/response.rbs @@ -5,8 +5,8 @@ module OpenAI { id: String, created_at: Float, - error: OpenAI::Models::Responses::ResponseError?, - incomplete_details: OpenAI::Models::Responses::Response::IncompleteDetails?, + error: OpenAI::Responses::ResponseError?, + incomplete_details: OpenAI::Responses::Response::IncompleteDetails?, instructions: String?, metadata: OpenAI::Models::metadata?, model: OpenAI::Models::responses_model, @@ -14,17 +14,17 @@ module OpenAI output: ::Array[OpenAI::Models::Responses::response_output_item], parallel_tool_calls: bool, temperature: Float?, - tool_choice: OpenAI::Models::Responses::Response::tool_choice, + tool_choice: OpenAI::Responses::Response::tool_choice, tools: ::Array[OpenAI::Models::Responses::tool], top_p: Float?, max_output_tokens: Integer?, previous_response_id: String?, - reasoning: OpenAI::Models::Reasoning?, - service_tier: OpenAI::Models::Responses::Response::service_tier?, + reasoning: OpenAI::Reasoning?, + service_tier: OpenAI::Responses::Response::service_tier?, status: OpenAI::Models::Responses::response_status, - text: OpenAI::Models::Responses::ResponseTextConfig, - truncation: OpenAI::Models::Responses::Response::truncation?, - usage: OpenAI::Models::Responses::ResponseUsage, + text: OpenAI::Responses::ResponseTextConfig, + truncation: OpenAI::Responses::Response::truncation?, + usage: OpenAI::Responses::ResponseUsage, user: String } @@ -33,9 +33,9 @@ module OpenAI attr_accessor created_at: Float - attr_accessor error: OpenAI::Models::Responses::ResponseError? + attr_accessor error: OpenAI::Responses::ResponseError? - attr_accessor incomplete_details: OpenAI::Models::Responses::Response::IncompleteDetails? + attr_accessor incomplete_details: OpenAI::Responses::Response::IncompleteDetails? attr_accessor instructions: String? @@ -51,7 +51,7 @@ module OpenAI attr_accessor temperature: Float? - attr_accessor tool_choice: OpenAI::Models::Responses::Response::tool_choice + attr_accessor tool_choice: OpenAI::Responses::Response::tool_choice attr_accessor tools: ::Array[OpenAI::Models::Responses::tool] @@ -61,9 +61,9 @@ module OpenAI attr_accessor previous_response_id: String? - attr_accessor reasoning: OpenAI::Models::Reasoning? + attr_accessor reasoning: OpenAI::Reasoning? - attr_accessor service_tier: OpenAI::Models::Responses::Response::service_tier? + attr_accessor service_tier: OpenAI::Responses::Response::service_tier? attr_reader status: OpenAI::Models::Responses::response_status? @@ -71,19 +71,19 @@ module OpenAI OpenAI::Models::Responses::response_status ) -> OpenAI::Models::Responses::response_status - attr_reader text: OpenAI::Models::Responses::ResponseTextConfig? + attr_reader text: OpenAI::Responses::ResponseTextConfig? def text=: ( - OpenAI::Models::Responses::ResponseTextConfig - ) -> OpenAI::Models::Responses::ResponseTextConfig + OpenAI::Responses::ResponseTextConfig + ) -> OpenAI::Responses::ResponseTextConfig - attr_accessor truncation: OpenAI::Models::Responses::Response::truncation? + attr_accessor truncation: OpenAI::Responses::Response::truncation? - attr_reader usage: OpenAI::Models::Responses::ResponseUsage? + attr_reader usage: OpenAI::Responses::ResponseUsage? def usage=: ( - OpenAI::Models::Responses::ResponseUsage - ) -> OpenAI::Models::Responses::ResponseUsage + OpenAI::Responses::ResponseUsage + ) -> OpenAI::Responses::ResponseUsage attr_reader user: String? @@ -92,49 +92,43 @@ module OpenAI def initialize: ( id: String, created_at: Float, - error: OpenAI::Models::Responses::ResponseError?, - incomplete_details: OpenAI::Models::Responses::Response::IncompleteDetails?, + error: OpenAI::Responses::ResponseError?, + incomplete_details: OpenAI::Responses::Response::IncompleteDetails?, instructions: String?, metadata: OpenAI::Models::metadata?, model: OpenAI::Models::responses_model, output: ::Array[OpenAI::Models::Responses::response_output_item], parallel_tool_calls: bool, temperature: Float?, - tool_choice: OpenAI::Models::Responses::Response::tool_choice, + tool_choice: OpenAI::Responses::Response::tool_choice, tools: ::Array[OpenAI::Models::Responses::tool], top_p: Float?, ?max_output_tokens: Integer?, ?previous_response_id: String?, - ?reasoning: OpenAI::Models::Reasoning?, - ?service_tier: OpenAI::Models::Responses::Response::service_tier?, + ?reasoning: OpenAI::Reasoning?, + ?service_tier: OpenAI::Responses::Response::service_tier?, ?status: OpenAI::Models::Responses::response_status, - ?text: OpenAI::Models::Responses::ResponseTextConfig, - ?truncation: OpenAI::Models::Responses::Response::truncation?, - ?usage: OpenAI::Models::Responses::ResponseUsage, + ?text: OpenAI::Responses::ResponseTextConfig, + ?truncation: OpenAI::Responses::Response::truncation?, + ?usage: OpenAI::Responses::ResponseUsage, ?user: String, ?object: :response ) -> void - def to_hash: -> OpenAI::Models::Responses::response - type incomplete_details = - { - reason: OpenAI::Models::Responses::Response::IncompleteDetails::reason - } + { reason: OpenAI::Responses::Response::IncompleteDetails::reason } class IncompleteDetails < OpenAI::Internal::Type::BaseModel - attr_reader reason: OpenAI::Models::Responses::Response::IncompleteDetails::reason? + attr_reader reason: OpenAI::Responses::Response::IncompleteDetails::reason? def reason=: ( - OpenAI::Models::Responses::Response::IncompleteDetails::reason - ) -> OpenAI::Models::Responses::Response::IncompleteDetails::reason + OpenAI::Responses::Response::IncompleteDetails::reason + ) -> OpenAI::Responses::Response::IncompleteDetails::reason def initialize: ( - ?reason: OpenAI::Models::Responses::Response::IncompleteDetails::reason + ?reason: OpenAI::Responses::Response::IncompleteDetails::reason ) -> void - def to_hash: -> OpenAI::Models::Responses::Response::incomplete_details - type reason = :max_output_tokens | :content_filter module Reason @@ -143,19 +137,19 @@ module OpenAI MAX_OUTPUT_TOKENS: :max_output_tokens CONTENT_FILTER: :content_filter - def self?.values: -> ::Array[OpenAI::Models::Responses::Response::IncompleteDetails::reason] + def self?.values: -> ::Array[OpenAI::Responses::Response::IncompleteDetails::reason] end end type tool_choice = OpenAI::Models::Responses::tool_choice_options - | OpenAI::Models::Responses::ToolChoiceTypes - | OpenAI::Models::Responses::ToolChoiceFunction + | OpenAI::Responses::ToolChoiceTypes + | OpenAI::Responses::ToolChoiceFunction module ToolChoice extend OpenAI::Internal::Type::Union - def self?.variants: -> [OpenAI::Models::Responses::tool_choice_options, OpenAI::Models::Responses::ToolChoiceTypes, OpenAI::Models::Responses::ToolChoiceFunction] + def self?.variants: -> ::Array[OpenAI::Responses::Response::tool_choice] end type service_tier = :auto | :default | :flex @@ -167,7 +161,7 @@ module OpenAI DEFAULT: :default FLEX: :flex - def self?.values: -> ::Array[OpenAI::Models::Responses::Response::service_tier] + def self?.values: -> ::Array[OpenAI::Responses::Response::service_tier] end type truncation = :auto | :disabled @@ -178,7 +172,7 @@ module OpenAI AUTO: :auto DISABLED: :disabled - def self?.values: -> ::Array[OpenAI::Models::Responses::Response::truncation] + def self?.values: -> ::Array[OpenAI::Responses::Response::truncation] end end end diff --git a/sig/openai/models/responses/response_audio_delta_event.rbs b/sig/openai/models/responses/response_audio_delta_event.rbs index 7a218696..370be606 100644 --- a/sig/openai/models/responses/response_audio_delta_event.rbs +++ b/sig/openai/models/responses/response_audio_delta_event.rbs @@ -10,8 +10,6 @@ module OpenAI attr_accessor type: :"response.audio.delta" def initialize: (delta: String, ?type: :"response.audio.delta") -> void - - def to_hash: -> OpenAI::Models::Responses::response_audio_delta_event end end end diff --git a/sig/openai/models/responses/response_audio_done_event.rbs b/sig/openai/models/responses/response_audio_done_event.rbs index cbff6d81..9399bfae 100644 --- a/sig/openai/models/responses/response_audio_done_event.rbs +++ b/sig/openai/models/responses/response_audio_done_event.rbs @@ -7,8 +7,6 @@ module OpenAI attr_accessor type: :"response.audio.done" def initialize: (?type: :"response.audio.done") -> void - - def to_hash: -> OpenAI::Models::Responses::response_audio_done_event end end end diff --git a/sig/openai/models/responses/response_audio_transcript_delta_event.rbs b/sig/openai/models/responses/response_audio_transcript_delta_event.rbs index 6f8fc8cb..ef7c93c3 100644 --- a/sig/openai/models/responses/response_audio_transcript_delta_event.rbs +++ b/sig/openai/models/responses/response_audio_transcript_delta_event.rbs @@ -13,8 +13,6 @@ module OpenAI delta: String, ?type: :"response.audio.transcript.delta" ) -> void - - def to_hash: -> OpenAI::Models::Responses::response_audio_transcript_delta_event end end end diff --git a/sig/openai/models/responses/response_audio_transcript_done_event.rbs b/sig/openai/models/responses/response_audio_transcript_done_event.rbs index 9d7072d8..7397feff 100644 --- a/sig/openai/models/responses/response_audio_transcript_done_event.rbs +++ b/sig/openai/models/responses/response_audio_transcript_done_event.rbs @@ -8,8 +8,6 @@ module OpenAI attr_accessor type: :"response.audio.transcript.done" def initialize: (?type: :"response.audio.transcript.done") -> void - - def to_hash: -> OpenAI::Models::Responses::response_audio_transcript_done_event end end end diff --git a/sig/openai/models/responses/response_code_interpreter_call_code_delta_event.rbs b/sig/openai/models/responses/response_code_interpreter_call_code_delta_event.rbs index 23837b29..212d9bfa 100644 --- a/sig/openai/models/responses/response_code_interpreter_call_code_delta_event.rbs +++ b/sig/openai/models/responses/response_code_interpreter_call_code_delta_event.rbs @@ -20,8 +20,6 @@ module OpenAI output_index: Integer, ?type: :"response.code_interpreter_call.code.delta" ) -> void - - def to_hash: -> OpenAI::Models::Responses::response_code_interpreter_call_code_delta_event end end end diff --git a/sig/openai/models/responses/response_code_interpreter_call_code_done_event.rbs b/sig/openai/models/responses/response_code_interpreter_call_code_done_event.rbs index d1358071..72f8bc5d 100644 --- a/sig/openai/models/responses/response_code_interpreter_call_code_done_event.rbs +++ b/sig/openai/models/responses/response_code_interpreter_call_code_done_event.rbs @@ -20,8 +20,6 @@ module OpenAI output_index: Integer, ?type: :"response.code_interpreter_call.code.done" ) -> void - - def to_hash: -> OpenAI::Models::Responses::response_code_interpreter_call_code_done_event end end end diff --git a/sig/openai/models/responses/response_code_interpreter_call_completed_event.rbs b/sig/openai/models/responses/response_code_interpreter_call_completed_event.rbs index 840dabb1..d2d8e451 100644 --- a/sig/openai/models/responses/response_code_interpreter_call_completed_event.rbs +++ b/sig/openai/models/responses/response_code_interpreter_call_completed_event.rbs @@ -3,25 +3,23 @@ module OpenAI module Responses type response_code_interpreter_call_completed_event = { - code_interpreter_call: OpenAI::Models::Responses::ResponseCodeInterpreterToolCall, + code_interpreter_call: OpenAI::Responses::ResponseCodeInterpreterToolCall, output_index: Integer, type: :"response.code_interpreter_call.completed" } class ResponseCodeInterpreterCallCompletedEvent < OpenAI::Internal::Type::BaseModel - attr_accessor code_interpreter_call: OpenAI::Models::Responses::ResponseCodeInterpreterToolCall + attr_accessor code_interpreter_call: OpenAI::Responses::ResponseCodeInterpreterToolCall attr_accessor output_index: Integer attr_accessor type: :"response.code_interpreter_call.completed" def initialize: ( - code_interpreter_call: OpenAI::Models::Responses::ResponseCodeInterpreterToolCall, + code_interpreter_call: OpenAI::Responses::ResponseCodeInterpreterToolCall, output_index: Integer, ?type: :"response.code_interpreter_call.completed" ) -> void - - def to_hash: -> OpenAI::Models::Responses::response_code_interpreter_call_completed_event end end end diff --git a/sig/openai/models/responses/response_code_interpreter_call_in_progress_event.rbs b/sig/openai/models/responses/response_code_interpreter_call_in_progress_event.rbs index f19814d0..d4d09537 100644 --- a/sig/openai/models/responses/response_code_interpreter_call_in_progress_event.rbs +++ b/sig/openai/models/responses/response_code_interpreter_call_in_progress_event.rbs @@ -3,25 +3,23 @@ module OpenAI module Responses type response_code_interpreter_call_in_progress_event = { - code_interpreter_call: OpenAI::Models::Responses::ResponseCodeInterpreterToolCall, + code_interpreter_call: OpenAI::Responses::ResponseCodeInterpreterToolCall, output_index: Integer, type: :"response.code_interpreter_call.in_progress" } class ResponseCodeInterpreterCallInProgressEvent < OpenAI::Internal::Type::BaseModel - attr_accessor code_interpreter_call: OpenAI::Models::Responses::ResponseCodeInterpreterToolCall + attr_accessor code_interpreter_call: OpenAI::Responses::ResponseCodeInterpreterToolCall attr_accessor output_index: Integer attr_accessor type: :"response.code_interpreter_call.in_progress" def initialize: ( - code_interpreter_call: OpenAI::Models::Responses::ResponseCodeInterpreterToolCall, + code_interpreter_call: OpenAI::Responses::ResponseCodeInterpreterToolCall, output_index: Integer, ?type: :"response.code_interpreter_call.in_progress" ) -> void - - def to_hash: -> OpenAI::Models::Responses::response_code_interpreter_call_in_progress_event end end end diff --git a/sig/openai/models/responses/response_code_interpreter_call_interpreting_event.rbs b/sig/openai/models/responses/response_code_interpreter_call_interpreting_event.rbs index fdaebc1e..8fd6cac0 100644 --- a/sig/openai/models/responses/response_code_interpreter_call_interpreting_event.rbs +++ b/sig/openai/models/responses/response_code_interpreter_call_interpreting_event.rbs @@ -3,25 +3,23 @@ module OpenAI module Responses type response_code_interpreter_call_interpreting_event = { - code_interpreter_call: OpenAI::Models::Responses::ResponseCodeInterpreterToolCall, + code_interpreter_call: OpenAI::Responses::ResponseCodeInterpreterToolCall, output_index: Integer, type: :"response.code_interpreter_call.interpreting" } class ResponseCodeInterpreterCallInterpretingEvent < OpenAI::Internal::Type::BaseModel - attr_accessor code_interpreter_call: OpenAI::Models::Responses::ResponseCodeInterpreterToolCall + attr_accessor code_interpreter_call: OpenAI::Responses::ResponseCodeInterpreterToolCall attr_accessor output_index: Integer attr_accessor type: :"response.code_interpreter_call.interpreting" def initialize: ( - code_interpreter_call: OpenAI::Models::Responses::ResponseCodeInterpreterToolCall, + code_interpreter_call: OpenAI::Responses::ResponseCodeInterpreterToolCall, output_index: Integer, ?type: :"response.code_interpreter_call.interpreting" ) -> void - - def to_hash: -> OpenAI::Models::Responses::response_code_interpreter_call_interpreting_event end end end diff --git a/sig/openai/models/responses/response_code_interpreter_tool_call.rbs b/sig/openai/models/responses/response_code_interpreter_tool_call.rbs index b6aa4db6..c892569f 100644 --- a/sig/openai/models/responses/response_code_interpreter_tool_call.rbs +++ b/sig/openai/models/responses/response_code_interpreter_tool_call.rbs @@ -5,8 +5,8 @@ module OpenAI { id: String, code: String, - results: ::Array[OpenAI::Models::Responses::ResponseCodeInterpreterToolCall::result], - status: OpenAI::Models::Responses::ResponseCodeInterpreterToolCall::status, + results: ::Array[OpenAI::Responses::ResponseCodeInterpreterToolCall::result], + status: OpenAI::Responses::ResponseCodeInterpreterToolCall::status, type: :code_interpreter_call } @@ -15,25 +15,23 @@ module OpenAI attr_accessor code: String - attr_accessor results: ::Array[OpenAI::Models::Responses::ResponseCodeInterpreterToolCall::result] + attr_accessor results: ::Array[OpenAI::Responses::ResponseCodeInterpreterToolCall::result] - attr_accessor status: OpenAI::Models::Responses::ResponseCodeInterpreterToolCall::status + attr_accessor status: OpenAI::Responses::ResponseCodeInterpreterToolCall::status attr_accessor type: :code_interpreter_call def initialize: ( id: String, code: String, - results: ::Array[OpenAI::Models::Responses::ResponseCodeInterpreterToolCall::result], - status: OpenAI::Models::Responses::ResponseCodeInterpreterToolCall::status, + results: ::Array[OpenAI::Responses::ResponseCodeInterpreterToolCall::result], + status: OpenAI::Responses::ResponseCodeInterpreterToolCall::status, ?type: :code_interpreter_call ) -> void - def to_hash: -> OpenAI::Models::Responses::response_code_interpreter_tool_call - type result = - OpenAI::Models::Responses::ResponseCodeInterpreterToolCall::Result::Logs - | OpenAI::Models::Responses::ResponseCodeInterpreterToolCall::Result::Files + OpenAI::Responses::ResponseCodeInterpreterToolCall::Result::Logs + | OpenAI::Responses::ResponseCodeInterpreterToolCall::Result::Files module Result extend OpenAI::Internal::Type::Union @@ -46,28 +44,24 @@ module OpenAI attr_accessor type: :logs def initialize: (logs: String, ?type: :logs) -> void - - def to_hash: -> OpenAI::Models::Responses::ResponseCodeInterpreterToolCall::Result::logs end type files = { - files: ::Array[OpenAI::Models::Responses::ResponseCodeInterpreterToolCall::Result::Files::File], + files: ::Array[OpenAI::Responses::ResponseCodeInterpreterToolCall::Result::Files::File], type: :files } class Files < OpenAI::Internal::Type::BaseModel - attr_accessor files: ::Array[OpenAI::Models::Responses::ResponseCodeInterpreterToolCall::Result::Files::File] + attr_accessor files: ::Array[OpenAI::Responses::ResponseCodeInterpreterToolCall::Result::Files::File] attr_accessor type: :files def initialize: ( - files: ::Array[OpenAI::Models::Responses::ResponseCodeInterpreterToolCall::Result::Files::File], + files: ::Array[OpenAI::Responses::ResponseCodeInterpreterToolCall::Result::Files::File], ?type: :files ) -> void - def to_hash: -> OpenAI::Models::Responses::ResponseCodeInterpreterToolCall::Result::files - type file = { file_id: String, mime_type: String } class File < OpenAI::Internal::Type::BaseModel @@ -76,12 +70,10 @@ module OpenAI attr_accessor mime_type: String def initialize: (file_id: String, mime_type: String) -> void - - def to_hash: -> OpenAI::Models::Responses::ResponseCodeInterpreterToolCall::Result::Files::file end end - def self?.variants: -> [OpenAI::Models::Responses::ResponseCodeInterpreterToolCall::Result::Logs, OpenAI::Models::Responses::ResponseCodeInterpreterToolCall::Result::Files] + def self?.variants: -> ::Array[OpenAI::Responses::ResponseCodeInterpreterToolCall::result] end type status = :in_progress | :interpreting | :completed @@ -93,7 +85,7 @@ module OpenAI INTERPRETING: :interpreting COMPLETED: :completed - def self?.values: -> ::Array[OpenAI::Models::Responses::ResponseCodeInterpreterToolCall::status] + def self?.values: -> ::Array[OpenAI::Responses::ResponseCodeInterpreterToolCall::status] end end end diff --git a/sig/openai/models/responses/response_completed_event.rbs b/sig/openai/models/responses/response_completed_event.rbs index 5ef101ac..4900852e 100644 --- a/sig/openai/models/responses/response_completed_event.rbs +++ b/sig/openai/models/responses/response_completed_event.rbs @@ -2,22 +2,17 @@ module OpenAI module Models module Responses type response_completed_event = - { - response: OpenAI::Models::Responses::Response, - type: :"response.completed" - } + { response: OpenAI::Responses::Response, type: :"response.completed" } class ResponseCompletedEvent < OpenAI::Internal::Type::BaseModel - attr_accessor response: OpenAI::Models::Responses::Response + attr_accessor response: OpenAI::Responses::Response attr_accessor type: :"response.completed" def initialize: ( - response: OpenAI::Models::Responses::Response, + response: OpenAI::Responses::Response, ?type: :"response.completed" ) -> void - - def to_hash: -> OpenAI::Models::Responses::response_completed_event end end end diff --git a/sig/openai/models/responses/response_computer_tool_call.rbs b/sig/openai/models/responses/response_computer_tool_call.rbs index ab81a03e..52c82604 100644 --- a/sig/openai/models/responses/response_computer_tool_call.rbs +++ b/sig/openai/models/responses/response_computer_tool_call.rbs @@ -4,61 +4,59 @@ module OpenAI type response_computer_tool_call = { id: String, - action: OpenAI::Models::Responses::ResponseComputerToolCall::action, + action: OpenAI::Responses::ResponseComputerToolCall::action, call_id: String, - pending_safety_checks: ::Array[OpenAI::Models::Responses::ResponseComputerToolCall::PendingSafetyCheck], - status: OpenAI::Models::Responses::ResponseComputerToolCall::status, - type: OpenAI::Models::Responses::ResponseComputerToolCall::type_ + pending_safety_checks: ::Array[OpenAI::Responses::ResponseComputerToolCall::PendingSafetyCheck], + status: OpenAI::Responses::ResponseComputerToolCall::status, + type: OpenAI::Responses::ResponseComputerToolCall::type_ } class ResponseComputerToolCall < OpenAI::Internal::Type::BaseModel attr_accessor id: String - attr_accessor action: OpenAI::Models::Responses::ResponseComputerToolCall::action + attr_accessor action: OpenAI::Responses::ResponseComputerToolCall::action attr_accessor call_id: String - attr_accessor pending_safety_checks: ::Array[OpenAI::Models::Responses::ResponseComputerToolCall::PendingSafetyCheck] + attr_accessor pending_safety_checks: ::Array[OpenAI::Responses::ResponseComputerToolCall::PendingSafetyCheck] - attr_accessor status: OpenAI::Models::Responses::ResponseComputerToolCall::status + attr_accessor status: OpenAI::Responses::ResponseComputerToolCall::status - attr_accessor type: OpenAI::Models::Responses::ResponseComputerToolCall::type_ + attr_accessor type: OpenAI::Responses::ResponseComputerToolCall::type_ def initialize: ( id: String, - action: OpenAI::Models::Responses::ResponseComputerToolCall::action, + action: OpenAI::Responses::ResponseComputerToolCall::action, call_id: String, - pending_safety_checks: ::Array[OpenAI::Models::Responses::ResponseComputerToolCall::PendingSafetyCheck], - status: OpenAI::Models::Responses::ResponseComputerToolCall::status, - type: OpenAI::Models::Responses::ResponseComputerToolCall::type_ + pending_safety_checks: ::Array[OpenAI::Responses::ResponseComputerToolCall::PendingSafetyCheck], + status: OpenAI::Responses::ResponseComputerToolCall::status, + type: OpenAI::Responses::ResponseComputerToolCall::type_ ) -> void - def to_hash: -> OpenAI::Models::Responses::response_computer_tool_call - type action = - OpenAI::Models::Responses::ResponseComputerToolCall::Action::Click - | OpenAI::Models::Responses::ResponseComputerToolCall::Action::DoubleClick - | OpenAI::Models::Responses::ResponseComputerToolCall::Action::Drag - | OpenAI::Models::Responses::ResponseComputerToolCall::Action::Keypress - | OpenAI::Models::Responses::ResponseComputerToolCall::Action::Move - | OpenAI::Models::Responses::ResponseComputerToolCall::Action::Screenshot - | OpenAI::Models::Responses::ResponseComputerToolCall::Action::Scroll - | OpenAI::Models::Responses::ResponseComputerToolCall::Action::Type - | OpenAI::Models::Responses::ResponseComputerToolCall::Action::Wait + OpenAI::Responses::ResponseComputerToolCall::Action::Click + | OpenAI::Responses::ResponseComputerToolCall::Action::DoubleClick + | OpenAI::Responses::ResponseComputerToolCall::Action::Drag + | OpenAI::Responses::ResponseComputerToolCall::Action::Keypress + | OpenAI::Responses::ResponseComputerToolCall::Action::Move + | OpenAI::Responses::ResponseComputerToolCall::Action::Screenshot + | OpenAI::Responses::ResponseComputerToolCall::Action::Scroll + | OpenAI::Responses::ResponseComputerToolCall::Action::Type + | OpenAI::Responses::ResponseComputerToolCall::Action::Wait module Action extend OpenAI::Internal::Type::Union type click = { - button: OpenAI::Models::Responses::ResponseComputerToolCall::Action::Click::button, + button: OpenAI::Responses::ResponseComputerToolCall::Action::Click::button, type: :click, x: Integer, y_: Integer } class Click < OpenAI::Internal::Type::BaseModel - attr_accessor button: OpenAI::Models::Responses::ResponseComputerToolCall::Action::Click::button + attr_accessor button: OpenAI::Responses::ResponseComputerToolCall::Action::Click::button attr_accessor type: :click @@ -67,14 +65,12 @@ module OpenAI attr_accessor y_: Integer def initialize: ( - button: OpenAI::Models::Responses::ResponseComputerToolCall::Action::Click::button, + button: OpenAI::Responses::ResponseComputerToolCall::Action::Click::button, x: Integer, y_: Integer, ?type: :click ) -> void - def to_hash: -> OpenAI::Models::Responses::ResponseComputerToolCall::Action::click - type button = :left | :right | :wheel | :back | :forward module Button @@ -86,7 +82,7 @@ module OpenAI BACK: :back FORWARD: :forward - def self?.values: -> ::Array[OpenAI::Models::Responses::ResponseComputerToolCall::Action::Click::button] + def self?.values: -> ::Array[OpenAI::Responses::ResponseComputerToolCall::Action::Click::button] end end @@ -104,28 +100,24 @@ module OpenAI y_: Integer, ?type: :double_click ) -> void - - def to_hash: -> OpenAI::Models::Responses::ResponseComputerToolCall::Action::double_click end type drag = { - path: ::Array[OpenAI::Models::Responses::ResponseComputerToolCall::Action::Drag::Path], + path: ::Array[OpenAI::Responses::ResponseComputerToolCall::Action::Drag::Path], type: :drag } class Drag < OpenAI::Internal::Type::BaseModel - attr_accessor path: ::Array[OpenAI::Models::Responses::ResponseComputerToolCall::Action::Drag::Path] + attr_accessor path: ::Array[OpenAI::Responses::ResponseComputerToolCall::Action::Drag::Path] attr_accessor type: :drag def initialize: ( - path: ::Array[OpenAI::Models::Responses::ResponseComputerToolCall::Action::Drag::Path], + path: ::Array[OpenAI::Responses::ResponseComputerToolCall::Action::Drag::Path], ?type: :drag ) -> void - def to_hash: -> OpenAI::Models::Responses::ResponseComputerToolCall::Action::drag - type path = { x: Integer, y_: Integer } class Path < OpenAI::Internal::Type::BaseModel @@ -134,8 +126,6 @@ module OpenAI attr_accessor y_: Integer def initialize: (x: Integer, y_: Integer) -> void - - def to_hash: -> OpenAI::Models::Responses::ResponseComputerToolCall::Action::Drag::path end end @@ -147,8 +137,6 @@ module OpenAI attr_accessor type: :keypress def initialize: (keys: ::Array[String], ?type: :keypress) -> void - - def to_hash: -> OpenAI::Models::Responses::ResponseComputerToolCall::Action::keypress end type move = { type: :move, x: Integer, y_: Integer } @@ -161,8 +149,6 @@ module OpenAI attr_accessor y_: Integer def initialize: (x: Integer, y_: Integer, ?type: :move) -> void - - def to_hash: -> OpenAI::Models::Responses::ResponseComputerToolCall::Action::move end type screenshot = { type: :screenshot } @@ -171,8 +157,6 @@ module OpenAI attr_accessor type: :screenshot def initialize: (?type: :screenshot) -> void - - def to_hash: -> OpenAI::Models::Responses::ResponseComputerToolCall::Action::screenshot end type scroll = @@ -202,8 +186,6 @@ module OpenAI y_: Integer, ?type: :scroll ) -> void - - def to_hash: -> OpenAI::Models::Responses::ResponseComputerToolCall::Action::scroll end type type_ = { text: String, type: :type } @@ -214,8 +196,6 @@ module OpenAI attr_accessor type: :type def initialize: (text: String, ?type: :type) -> void - - def to_hash: -> OpenAI::Models::Responses::ResponseComputerToolCall::Action::type_ end type wait = { type: :wait } @@ -224,11 +204,9 @@ module OpenAI attr_accessor type: :wait def initialize: (?type: :wait) -> void - - def to_hash: -> OpenAI::Models::Responses::ResponseComputerToolCall::Action::wait end - def self?.variants: -> [OpenAI::Models::Responses::ResponseComputerToolCall::Action::Click, OpenAI::Models::Responses::ResponseComputerToolCall::Action::DoubleClick, OpenAI::Models::Responses::ResponseComputerToolCall::Action::Drag, OpenAI::Models::Responses::ResponseComputerToolCall::Action::Keypress, OpenAI::Models::Responses::ResponseComputerToolCall::Action::Move, OpenAI::Models::Responses::ResponseComputerToolCall::Action::Screenshot, OpenAI::Models::Responses::ResponseComputerToolCall::Action::Scroll, OpenAI::Models::Responses::ResponseComputerToolCall::Action::Type, OpenAI::Models::Responses::ResponseComputerToolCall::Action::Wait] + def self?.variants: -> ::Array[OpenAI::Responses::ResponseComputerToolCall::action] end type pending_safety_check = @@ -242,8 +220,6 @@ module OpenAI attr_accessor message: String def initialize: (id: String, code: String, message: String) -> void - - def to_hash: -> OpenAI::Models::Responses::ResponseComputerToolCall::pending_safety_check end type status = :in_progress | :completed | :incomplete @@ -255,7 +231,7 @@ module OpenAI COMPLETED: :completed INCOMPLETE: :incomplete - def self?.values: -> ::Array[OpenAI::Models::Responses::ResponseComputerToolCall::status] + def self?.values: -> ::Array[OpenAI::Responses::ResponseComputerToolCall::status] end type type_ = :computer_call @@ -265,7 +241,7 @@ module OpenAI COMPUTER_CALL: :computer_call - def self?.values: -> ::Array[OpenAI::Models::Responses::ResponseComputerToolCall::type_] + def self?.values: -> ::Array[OpenAI::Responses::ResponseComputerToolCall::type_] end end end diff --git a/sig/openai/models/responses/response_computer_tool_call_output_item.rbs b/sig/openai/models/responses/response_computer_tool_call_output_item.rbs index 32edd0b4..4ce6f3a0 100644 --- a/sig/openai/models/responses/response_computer_tool_call_output_item.rbs +++ b/sig/openai/models/responses/response_computer_tool_call_output_item.rbs @@ -5,10 +5,10 @@ module OpenAI { id: String, call_id: String, - output: OpenAI::Models::Responses::ResponseComputerToolCallOutputScreenshot, + output: OpenAI::Responses::ResponseComputerToolCallOutputScreenshot, type: :computer_call_output, - acknowledged_safety_checks: ::Array[OpenAI::Models::Responses::ResponseComputerToolCallOutputItem::AcknowledgedSafetyCheck], - status: OpenAI::Models::Responses::ResponseComputerToolCallOutputItem::status + acknowledged_safety_checks: ::Array[OpenAI::Responses::ResponseComputerToolCallOutputItem::AcknowledgedSafetyCheck], + status: OpenAI::Responses::ResponseComputerToolCallOutputItem::status } class ResponseComputerToolCallOutputItem < OpenAI::Internal::Type::BaseModel @@ -16,33 +16,31 @@ module OpenAI attr_accessor call_id: String - attr_accessor output: OpenAI::Models::Responses::ResponseComputerToolCallOutputScreenshot + attr_accessor output: OpenAI::Responses::ResponseComputerToolCallOutputScreenshot attr_accessor type: :computer_call_output - attr_reader acknowledged_safety_checks: ::Array[OpenAI::Models::Responses::ResponseComputerToolCallOutputItem::AcknowledgedSafetyCheck]? + attr_reader acknowledged_safety_checks: ::Array[OpenAI::Responses::ResponseComputerToolCallOutputItem::AcknowledgedSafetyCheck]? def acknowledged_safety_checks=: ( - ::Array[OpenAI::Models::Responses::ResponseComputerToolCallOutputItem::AcknowledgedSafetyCheck] - ) -> ::Array[OpenAI::Models::Responses::ResponseComputerToolCallOutputItem::AcknowledgedSafetyCheck] + ::Array[OpenAI::Responses::ResponseComputerToolCallOutputItem::AcknowledgedSafetyCheck] + ) -> ::Array[OpenAI::Responses::ResponseComputerToolCallOutputItem::AcknowledgedSafetyCheck] - attr_reader status: OpenAI::Models::Responses::ResponseComputerToolCallOutputItem::status? + attr_reader status: OpenAI::Responses::ResponseComputerToolCallOutputItem::status? def status=: ( - OpenAI::Models::Responses::ResponseComputerToolCallOutputItem::status - ) -> OpenAI::Models::Responses::ResponseComputerToolCallOutputItem::status + OpenAI::Responses::ResponseComputerToolCallOutputItem::status + ) -> OpenAI::Responses::ResponseComputerToolCallOutputItem::status def initialize: ( id: String, call_id: String, - output: OpenAI::Models::Responses::ResponseComputerToolCallOutputScreenshot, - ?acknowledged_safety_checks: ::Array[OpenAI::Models::Responses::ResponseComputerToolCallOutputItem::AcknowledgedSafetyCheck], - ?status: OpenAI::Models::Responses::ResponseComputerToolCallOutputItem::status, + output: OpenAI::Responses::ResponseComputerToolCallOutputScreenshot, + ?acknowledged_safety_checks: ::Array[OpenAI::Responses::ResponseComputerToolCallOutputItem::AcknowledgedSafetyCheck], + ?status: OpenAI::Responses::ResponseComputerToolCallOutputItem::status, ?type: :computer_call_output ) -> void - def to_hash: -> OpenAI::Models::Responses::response_computer_tool_call_output_item - type acknowledged_safety_check = { id: String, code: String, message: String } @@ -54,8 +52,6 @@ module OpenAI attr_accessor message: String def initialize: (id: String, code: String, message: String) -> void - - def to_hash: -> OpenAI::Models::Responses::ResponseComputerToolCallOutputItem::acknowledged_safety_check end type status = :in_progress | :completed | :incomplete @@ -67,7 +63,7 @@ module OpenAI COMPLETED: :completed INCOMPLETE: :incomplete - def self?.values: -> ::Array[OpenAI::Models::Responses::ResponseComputerToolCallOutputItem::status] + def self?.values: -> ::Array[OpenAI::Responses::ResponseComputerToolCallOutputItem::status] end end end diff --git a/sig/openai/models/responses/response_computer_tool_call_output_screenshot.rbs b/sig/openai/models/responses/response_computer_tool_call_output_screenshot.rbs index eae3e223..5cea0d21 100644 --- a/sig/openai/models/responses/response_computer_tool_call_output_screenshot.rbs +++ b/sig/openai/models/responses/response_computer_tool_call_output_screenshot.rbs @@ -20,8 +20,6 @@ module OpenAI ?image_url: String, ?type: :computer_screenshot ) -> void - - def to_hash: -> OpenAI::Models::Responses::response_computer_tool_call_output_screenshot end end end diff --git a/sig/openai/models/responses/response_content.rbs b/sig/openai/models/responses/response_content.rbs index 4e48827c..deb9917d 100644 --- a/sig/openai/models/responses/response_content.rbs +++ b/sig/openai/models/responses/response_content.rbs @@ -2,16 +2,16 @@ module OpenAI module Models module Responses type response_content = - OpenAI::Models::Responses::ResponseInputText - | OpenAI::Models::Responses::ResponseInputImage - | OpenAI::Models::Responses::ResponseInputFile - | OpenAI::Models::Responses::ResponseOutputText - | OpenAI::Models::Responses::ResponseOutputRefusal + OpenAI::Responses::ResponseInputText + | OpenAI::Responses::ResponseInputImage + | OpenAI::Responses::ResponseInputFile + | OpenAI::Responses::ResponseOutputText + | OpenAI::Responses::ResponseOutputRefusal module ResponseContent extend OpenAI::Internal::Type::Union - def self?.variants: -> [OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::Responses::ResponseInputImage, OpenAI::Models::Responses::ResponseInputFile, OpenAI::Models::Responses::ResponseOutputText, OpenAI::Models::Responses::ResponseOutputRefusal] + def self?.variants: -> ::Array[OpenAI::Models::Responses::response_content] end end end diff --git a/sig/openai/models/responses/response_content_part_added_event.rbs b/sig/openai/models/responses/response_content_part_added_event.rbs index e4c3e4bf..7f1ecbc3 100644 --- a/sig/openai/models/responses/response_content_part_added_event.rbs +++ b/sig/openai/models/responses/response_content_part_added_event.rbs @@ -6,7 +6,7 @@ module OpenAI content_index: Integer, item_id: String, output_index: Integer, - part: OpenAI::Models::Responses::ResponseContentPartAddedEvent::part, + part: OpenAI::Responses::ResponseContentPartAddedEvent::part, type: :"response.content_part.added" } @@ -17,7 +17,7 @@ module OpenAI attr_accessor output_index: Integer - attr_accessor part: OpenAI::Models::Responses::ResponseContentPartAddedEvent::part + attr_accessor part: OpenAI::Responses::ResponseContentPartAddedEvent::part attr_accessor type: :"response.content_part.added" @@ -25,20 +25,18 @@ module OpenAI content_index: Integer, item_id: String, output_index: Integer, - part: OpenAI::Models::Responses::ResponseContentPartAddedEvent::part, + part: OpenAI::Responses::ResponseContentPartAddedEvent::part, ?type: :"response.content_part.added" ) -> void - def to_hash: -> OpenAI::Models::Responses::response_content_part_added_event - type part = - OpenAI::Models::Responses::ResponseOutputText - | OpenAI::Models::Responses::ResponseOutputRefusal + OpenAI::Responses::ResponseOutputText + | OpenAI::Responses::ResponseOutputRefusal module Part extend OpenAI::Internal::Type::Union - def self?.variants: -> [OpenAI::Models::Responses::ResponseOutputText, OpenAI::Models::Responses::ResponseOutputRefusal] + def self?.variants: -> ::Array[OpenAI::Responses::ResponseContentPartAddedEvent::part] end end end diff --git a/sig/openai/models/responses/response_content_part_done_event.rbs b/sig/openai/models/responses/response_content_part_done_event.rbs index ff72b2b3..2cfd7195 100644 --- a/sig/openai/models/responses/response_content_part_done_event.rbs +++ b/sig/openai/models/responses/response_content_part_done_event.rbs @@ -6,7 +6,7 @@ module OpenAI content_index: Integer, item_id: String, output_index: Integer, - part: OpenAI::Models::Responses::ResponseContentPartDoneEvent::part, + part: OpenAI::Responses::ResponseContentPartDoneEvent::part, type: :"response.content_part.done" } @@ -17,7 +17,7 @@ module OpenAI attr_accessor output_index: Integer - attr_accessor part: OpenAI::Models::Responses::ResponseContentPartDoneEvent::part + attr_accessor part: OpenAI::Responses::ResponseContentPartDoneEvent::part attr_accessor type: :"response.content_part.done" @@ -25,20 +25,18 @@ module OpenAI content_index: Integer, item_id: String, output_index: Integer, - part: OpenAI::Models::Responses::ResponseContentPartDoneEvent::part, + part: OpenAI::Responses::ResponseContentPartDoneEvent::part, ?type: :"response.content_part.done" ) -> void - def to_hash: -> OpenAI::Models::Responses::response_content_part_done_event - type part = - OpenAI::Models::Responses::ResponseOutputText - | OpenAI::Models::Responses::ResponseOutputRefusal + OpenAI::Responses::ResponseOutputText + | OpenAI::Responses::ResponseOutputRefusal module Part extend OpenAI::Internal::Type::Union - def self?.variants: -> [OpenAI::Models::Responses::ResponseOutputText, OpenAI::Models::Responses::ResponseOutputRefusal] + def self?.variants: -> ::Array[OpenAI::Responses::ResponseContentPartDoneEvent::part] end end end diff --git a/sig/openai/models/responses/response_create_params.rbs b/sig/openai/models/responses/response_create_params.rbs index 1e84251f..cf306e43 100644 --- a/sig/openai/models/responses/response_create_params.rbs +++ b/sig/openai/models/responses/response_create_params.rbs @@ -11,11 +11,11 @@ module OpenAI metadata: OpenAI::Models::metadata?, parallel_tool_calls: bool?, previous_response_id: String?, - reasoning: OpenAI::Models::Reasoning?, + reasoning: OpenAI::Reasoning?, service_tier: OpenAI::Models::Responses::ResponseCreateParams::service_tier?, store: bool?, temperature: Float?, - text: OpenAI::Models::Responses::ResponseTextConfig, + text: OpenAI::Responses::ResponseTextConfig, tool_choice: OpenAI::Models::Responses::ResponseCreateParams::tool_choice, tools: ::Array[OpenAI::Models::Responses::tool], top_p: Float?, @@ -44,7 +44,7 @@ module OpenAI attr_accessor previous_response_id: String? - attr_accessor reasoning: OpenAI::Models::Reasoning? + attr_accessor reasoning: OpenAI::Reasoning? attr_accessor service_tier: OpenAI::Models::Responses::ResponseCreateParams::service_tier? @@ -52,11 +52,11 @@ module OpenAI attr_accessor temperature: Float? - attr_reader text: OpenAI::Models::Responses::ResponseTextConfig? + attr_reader text: OpenAI::Responses::ResponseTextConfig? def text=: ( - OpenAI::Models::Responses::ResponseTextConfig - ) -> OpenAI::Models::Responses::ResponseTextConfig + OpenAI::Responses::ResponseTextConfig + ) -> OpenAI::Responses::ResponseTextConfig attr_reader tool_choice: OpenAI::Models::Responses::ResponseCreateParams::tool_choice? @@ -87,11 +87,11 @@ module OpenAI ?metadata: OpenAI::Models::metadata?, ?parallel_tool_calls: bool?, ?previous_response_id: String?, - ?reasoning: OpenAI::Models::Reasoning?, + ?reasoning: OpenAI::Reasoning?, ?service_tier: OpenAI::Models::Responses::ResponseCreateParams::service_tier?, ?store: bool?, ?temperature: Float?, - ?text: OpenAI::Models::Responses::ResponseTextConfig, + ?text: OpenAI::Responses::ResponseTextConfig, ?tool_choice: OpenAI::Models::Responses::ResponseCreateParams::tool_choice, ?tools: ::Array[OpenAI::Models::Responses::tool], ?top_p: Float?, @@ -100,14 +100,12 @@ module OpenAI ?request_options: OpenAI::request_opts ) -> void - def to_hash: -> OpenAI::Models::Responses::response_create_params - type input = String | OpenAI::Models::Responses::response_input module Input extend OpenAI::Internal::Type::Union - def self?.variants: -> [String, OpenAI::Models::Responses::response_input] + def self?.variants: -> ::Array[OpenAI::Models::Responses::ResponseCreateParams::input] end type service_tier = :auto | :default | :flex @@ -124,13 +122,13 @@ module OpenAI type tool_choice = OpenAI::Models::Responses::tool_choice_options - | OpenAI::Models::Responses::ToolChoiceTypes - | OpenAI::Models::Responses::ToolChoiceFunction + | OpenAI::Responses::ToolChoiceTypes + | OpenAI::Responses::ToolChoiceFunction module ToolChoice extend OpenAI::Internal::Type::Union - def self?.variants: -> [OpenAI::Models::Responses::tool_choice_options, OpenAI::Models::Responses::ToolChoiceTypes, OpenAI::Models::Responses::ToolChoiceFunction] + def self?.variants: -> ::Array[OpenAI::Models::Responses::ResponseCreateParams::tool_choice] end type truncation = :auto | :disabled diff --git a/sig/openai/models/responses/response_created_event.rbs b/sig/openai/models/responses/response_created_event.rbs index 6848ecf7..e93fe5a7 100644 --- a/sig/openai/models/responses/response_created_event.rbs +++ b/sig/openai/models/responses/response_created_event.rbs @@ -2,22 +2,17 @@ module OpenAI module Models module Responses type response_created_event = - { - response: OpenAI::Models::Responses::Response, - type: :"response.created" - } + { response: OpenAI::Responses::Response, type: :"response.created" } class ResponseCreatedEvent < OpenAI::Internal::Type::BaseModel - attr_accessor response: OpenAI::Models::Responses::Response + attr_accessor response: OpenAI::Responses::Response attr_accessor type: :"response.created" def initialize: ( - response: OpenAI::Models::Responses::Response, + response: OpenAI::Responses::Response, ?type: :"response.created" ) -> void - - def to_hash: -> OpenAI::Models::Responses::response_created_event end end end diff --git a/sig/openai/models/responses/response_delete_params.rbs b/sig/openai/models/responses/response_delete_params.rbs index 1cedd65a..fceca07d 100644 --- a/sig/openai/models/responses/response_delete_params.rbs +++ b/sig/openai/models/responses/response_delete_params.rbs @@ -9,8 +9,6 @@ module OpenAI include OpenAI::Internal::Type::RequestParameters def initialize: (?request_options: OpenAI::request_opts) -> void - - def to_hash: -> OpenAI::Models::Responses::response_delete_params end end end diff --git a/sig/openai/models/responses/response_error.rbs b/sig/openai/models/responses/response_error.rbs index f9721f01..ee1b5f7a 100644 --- a/sig/openai/models/responses/response_error.rbs +++ b/sig/openai/models/responses/response_error.rbs @@ -2,23 +2,18 @@ module OpenAI module Models module Responses type response_error = - { - code: OpenAI::Models::Responses::ResponseError::code, - message: String - } + { code: OpenAI::Responses::ResponseError::code, message: String } class ResponseError < OpenAI::Internal::Type::BaseModel - attr_accessor code: OpenAI::Models::Responses::ResponseError::code + attr_accessor code: OpenAI::Responses::ResponseError::code attr_accessor message: String def initialize: ( - code: OpenAI::Models::Responses::ResponseError::code, + code: OpenAI::Responses::ResponseError::code, message: String ) -> void - def to_hash: -> OpenAI::Models::Responses::response_error - type code = :server_error | :rate_limit_exceeded @@ -61,7 +56,7 @@ module OpenAI FAILED_TO_DOWNLOAD_IMAGE: :failed_to_download_image IMAGE_FILE_NOT_FOUND: :image_file_not_found - def self?.values: -> ::Array[OpenAI::Models::Responses::ResponseError::code] + def self?.values: -> ::Array[OpenAI::Responses::ResponseError::code] end end end diff --git a/sig/openai/models/responses/response_error_event.rbs b/sig/openai/models/responses/response_error_event.rbs index b64588ae..ac79ae54 100644 --- a/sig/openai/models/responses/response_error_event.rbs +++ b/sig/openai/models/responses/response_error_event.rbs @@ -19,8 +19,6 @@ module OpenAI param: String?, ?type: :error ) -> void - - def to_hash: -> OpenAI::Models::Responses::response_error_event end end end diff --git a/sig/openai/models/responses/response_failed_event.rbs b/sig/openai/models/responses/response_failed_event.rbs index f6f26208..fe0562a3 100644 --- a/sig/openai/models/responses/response_failed_event.rbs +++ b/sig/openai/models/responses/response_failed_event.rbs @@ -2,22 +2,17 @@ module OpenAI module Models module Responses type response_failed_event = - { - response: OpenAI::Models::Responses::Response, - type: :"response.failed" - } + { response: OpenAI::Responses::Response, type: :"response.failed" } class ResponseFailedEvent < OpenAI::Internal::Type::BaseModel - attr_accessor response: OpenAI::Models::Responses::Response + attr_accessor response: OpenAI::Responses::Response attr_accessor type: :"response.failed" def initialize: ( - response: OpenAI::Models::Responses::Response, + response: OpenAI::Responses::Response, ?type: :"response.failed" ) -> void - - def to_hash: -> OpenAI::Models::Responses::response_failed_event end end end diff --git a/sig/openai/models/responses/response_file_search_call_completed_event.rbs b/sig/openai/models/responses/response_file_search_call_completed_event.rbs index 8249564b..dc0013fc 100644 --- a/sig/openai/models/responses/response_file_search_call_completed_event.rbs +++ b/sig/openai/models/responses/response_file_search_call_completed_event.rbs @@ -20,8 +20,6 @@ module OpenAI output_index: Integer, ?type: :"response.file_search_call.completed" ) -> void - - def to_hash: -> OpenAI::Models::Responses::response_file_search_call_completed_event end end end diff --git a/sig/openai/models/responses/response_file_search_call_in_progress_event.rbs b/sig/openai/models/responses/response_file_search_call_in_progress_event.rbs index 5008567b..36f69c57 100644 --- a/sig/openai/models/responses/response_file_search_call_in_progress_event.rbs +++ b/sig/openai/models/responses/response_file_search_call_in_progress_event.rbs @@ -20,8 +20,6 @@ module OpenAI output_index: Integer, ?type: :"response.file_search_call.in_progress" ) -> void - - def to_hash: -> OpenAI::Models::Responses::response_file_search_call_in_progress_event end end end diff --git a/sig/openai/models/responses/response_file_search_call_searching_event.rbs b/sig/openai/models/responses/response_file_search_call_searching_event.rbs index ba475249..f1994439 100644 --- a/sig/openai/models/responses/response_file_search_call_searching_event.rbs +++ b/sig/openai/models/responses/response_file_search_call_searching_event.rbs @@ -20,8 +20,6 @@ module OpenAI output_index: Integer, ?type: :"response.file_search_call.searching" ) -> void - - def to_hash: -> OpenAI::Models::Responses::response_file_search_call_searching_event end end end diff --git a/sig/openai/models/responses/response_file_search_tool_call.rbs b/sig/openai/models/responses/response_file_search_tool_call.rbs index 6e6bfb5c..d97daaa2 100644 --- a/sig/openai/models/responses/response_file_search_tool_call.rbs +++ b/sig/openai/models/responses/response_file_search_tool_call.rbs @@ -5,9 +5,9 @@ module OpenAI { id: String, queries: ::Array[String], - status: OpenAI::Models::Responses::ResponseFileSearchToolCall::status, + status: OpenAI::Responses::ResponseFileSearchToolCall::status, type: :file_search_call, - results: ::Array[OpenAI::Models::Responses::ResponseFileSearchToolCall::Result]? + results: ::Array[OpenAI::Responses::ResponseFileSearchToolCall::Result]? } class ResponseFileSearchToolCall < OpenAI::Internal::Type::BaseModel @@ -15,22 +15,20 @@ module OpenAI attr_accessor queries: ::Array[String] - attr_accessor status: OpenAI::Models::Responses::ResponseFileSearchToolCall::status + attr_accessor status: OpenAI::Responses::ResponseFileSearchToolCall::status attr_accessor type: :file_search_call - attr_accessor results: ::Array[OpenAI::Models::Responses::ResponseFileSearchToolCall::Result]? + attr_accessor results: ::Array[OpenAI::Responses::ResponseFileSearchToolCall::Result]? def initialize: ( id: String, queries: ::Array[String], - status: OpenAI::Models::Responses::ResponseFileSearchToolCall::status, - ?results: ::Array[OpenAI::Models::Responses::ResponseFileSearchToolCall::Result]?, + status: OpenAI::Responses::ResponseFileSearchToolCall::status, + ?results: ::Array[OpenAI::Responses::ResponseFileSearchToolCall::Result]?, ?type: :file_search_call ) -> void - def to_hash: -> OpenAI::Models::Responses::response_file_search_tool_call - type status = :in_progress | :searching | :completed | :incomplete | :failed @@ -43,12 +41,12 @@ module OpenAI INCOMPLETE: :incomplete FAILED: :failed - def self?.values: -> ::Array[OpenAI::Models::Responses::ResponseFileSearchToolCall::status] + def self?.values: -> ::Array[OpenAI::Responses::ResponseFileSearchToolCall::status] end type result = { - attributes: ::Hash[Symbol, OpenAI::Models::Responses::ResponseFileSearchToolCall::Result::attribute]?, + attributes: ::Hash[Symbol, OpenAI::Responses::ResponseFileSearchToolCall::Result::attribute]?, file_id: String, filename: String, score: Float, @@ -56,7 +54,7 @@ module OpenAI } class Result < OpenAI::Internal::Type::BaseModel - attr_accessor attributes: ::Hash[Symbol, OpenAI::Models::Responses::ResponseFileSearchToolCall::Result::attribute]? + attr_accessor attributes: ::Hash[Symbol, OpenAI::Responses::ResponseFileSearchToolCall::Result::attribute]? attr_reader file_id: String? @@ -75,21 +73,19 @@ module OpenAI def text=: (String) -> String def initialize: ( - ?attributes: ::Hash[Symbol, OpenAI::Models::Responses::ResponseFileSearchToolCall::Result::attribute]?, + ?attributes: ::Hash[Symbol, OpenAI::Responses::ResponseFileSearchToolCall::Result::attribute]?, ?file_id: String, ?filename: String, ?score: Float, ?text: String ) -> void - def to_hash: -> OpenAI::Models::Responses::ResponseFileSearchToolCall::result - type attribute = String | Float | bool module Attribute extend OpenAI::Internal::Type::Union - def self?.variants: -> [String, Float, bool] + def self?.variants: -> ::Array[OpenAI::Responses::ResponseFileSearchToolCall::Result::attribute] end end end diff --git a/sig/openai/models/responses/response_format_text_config.rbs b/sig/openai/models/responses/response_format_text_config.rbs index 11e70474..c085d693 100644 --- a/sig/openai/models/responses/response_format_text_config.rbs +++ b/sig/openai/models/responses/response_format_text_config.rbs @@ -2,14 +2,14 @@ module OpenAI module Models module Responses type response_format_text_config = - OpenAI::Models::ResponseFormatText - | OpenAI::Models::Responses::ResponseFormatTextJSONSchemaConfig - | OpenAI::Models::ResponseFormatJSONObject + OpenAI::ResponseFormatText + | OpenAI::Responses::ResponseFormatTextJSONSchemaConfig + | OpenAI::ResponseFormatJSONObject module ResponseFormatTextConfig extend OpenAI::Internal::Type::Union - def self?.variants: -> [OpenAI::Models::ResponseFormatText, OpenAI::Models::Responses::ResponseFormatTextJSONSchemaConfig, OpenAI::Models::ResponseFormatJSONObject] + def self?.variants: -> ::Array[OpenAI::Models::Responses::response_format_text_config] end end end diff --git a/sig/openai/models/responses/response_format_text_json_schema_config.rbs b/sig/openai/models/responses/response_format_text_json_schema_config.rbs index f6a08df7..319fd52e 100644 --- a/sig/openai/models/responses/response_format_text_json_schema_config.rbs +++ b/sig/openai/models/responses/response_format_text_json_schema_config.rbs @@ -30,8 +30,6 @@ module OpenAI ?strict: bool?, ?type: :json_schema ) -> void - - def to_hash: -> OpenAI::Models::Responses::response_format_text_json_schema_config end end end diff --git a/sig/openai/models/responses/response_function_call_arguments_delta_event.rbs b/sig/openai/models/responses/response_function_call_arguments_delta_event.rbs index 19067caf..e4486520 100644 --- a/sig/openai/models/responses/response_function_call_arguments_delta_event.rbs +++ b/sig/openai/models/responses/response_function_call_arguments_delta_event.rbs @@ -24,8 +24,6 @@ module OpenAI output_index: Integer, ?type: :"response.function_call_arguments.delta" ) -> void - - def to_hash: -> OpenAI::Models::Responses::response_function_call_arguments_delta_event end end end diff --git a/sig/openai/models/responses/response_function_call_arguments_done_event.rbs b/sig/openai/models/responses/response_function_call_arguments_done_event.rbs index 9a6c9073..3e023f5c 100644 --- a/sig/openai/models/responses/response_function_call_arguments_done_event.rbs +++ b/sig/openai/models/responses/response_function_call_arguments_done_event.rbs @@ -24,8 +24,6 @@ module OpenAI output_index: Integer, ?type: :"response.function_call_arguments.done" ) -> void - - def to_hash: -> OpenAI::Models::Responses::response_function_call_arguments_done_event end end end diff --git a/sig/openai/models/responses/response_function_tool_call.rbs b/sig/openai/models/responses/response_function_tool_call.rbs index ec454c7d..47884c8a 100644 --- a/sig/openai/models/responses/response_function_tool_call.rbs +++ b/sig/openai/models/responses/response_function_tool_call.rbs @@ -8,7 +8,7 @@ module OpenAI name: String, type: :function_call, id: String, - status: OpenAI::Models::Responses::ResponseFunctionToolCall::status + status: OpenAI::Responses::ResponseFunctionToolCall::status } class ResponseFunctionToolCall < OpenAI::Internal::Type::BaseModel @@ -24,23 +24,21 @@ module OpenAI def id=: (String) -> String - attr_reader status: OpenAI::Models::Responses::ResponseFunctionToolCall::status? + attr_reader status: OpenAI::Responses::ResponseFunctionToolCall::status? def status=: ( - OpenAI::Models::Responses::ResponseFunctionToolCall::status - ) -> OpenAI::Models::Responses::ResponseFunctionToolCall::status + OpenAI::Responses::ResponseFunctionToolCall::status + ) -> OpenAI::Responses::ResponseFunctionToolCall::status def initialize: ( arguments: String, call_id: String, name: String, ?id: String, - ?status: OpenAI::Models::Responses::ResponseFunctionToolCall::status, + ?status: OpenAI::Responses::ResponseFunctionToolCall::status, ?type: :function_call ) -> void - def to_hash: -> OpenAI::Models::Responses::response_function_tool_call - type status = :in_progress | :completed | :incomplete module Status @@ -50,7 +48,7 @@ module OpenAI COMPLETED: :completed INCOMPLETE: :incomplete - def self?.values: -> ::Array[OpenAI::Models::Responses::ResponseFunctionToolCall::status] + def self?.values: -> ::Array[OpenAI::Responses::ResponseFunctionToolCall::status] end end end diff --git a/sig/openai/models/responses/response_function_tool_call_item.rbs b/sig/openai/models/responses/response_function_tool_call_item.rbs index 86727e9b..81206561 100644 --- a/sig/openai/models/responses/response_function_tool_call_item.rbs +++ b/sig/openai/models/responses/response_function_tool_call_item.rbs @@ -9,8 +9,6 @@ module OpenAI def id=: (String _) -> String def initialize: (id: String) -> void - - def to_hash: -> OpenAI::Models::Responses::response_function_tool_call_item end end end diff --git a/sig/openai/models/responses/response_function_tool_call_output_item.rbs b/sig/openai/models/responses/response_function_tool_call_output_item.rbs index 7fd2c526..048189b6 100644 --- a/sig/openai/models/responses/response_function_tool_call_output_item.rbs +++ b/sig/openai/models/responses/response_function_tool_call_output_item.rbs @@ -7,7 +7,7 @@ module OpenAI call_id: String, output: String, type: :function_call_output, - status: OpenAI::Models::Responses::ResponseFunctionToolCallOutputItem::status + status: OpenAI::Responses::ResponseFunctionToolCallOutputItem::status } class ResponseFunctionToolCallOutputItem < OpenAI::Internal::Type::BaseModel @@ -19,22 +19,20 @@ module OpenAI attr_accessor type: :function_call_output - attr_reader status: OpenAI::Models::Responses::ResponseFunctionToolCallOutputItem::status? + attr_reader status: OpenAI::Responses::ResponseFunctionToolCallOutputItem::status? def status=: ( - OpenAI::Models::Responses::ResponseFunctionToolCallOutputItem::status - ) -> OpenAI::Models::Responses::ResponseFunctionToolCallOutputItem::status + OpenAI::Responses::ResponseFunctionToolCallOutputItem::status + ) -> OpenAI::Responses::ResponseFunctionToolCallOutputItem::status def initialize: ( id: String, call_id: String, output: String, - ?status: OpenAI::Models::Responses::ResponseFunctionToolCallOutputItem::status, + ?status: OpenAI::Responses::ResponseFunctionToolCallOutputItem::status, ?type: :function_call_output ) -> void - def to_hash: -> OpenAI::Models::Responses::response_function_tool_call_output_item - type status = :in_progress | :completed | :incomplete module Status @@ -44,7 +42,7 @@ module OpenAI COMPLETED: :completed INCOMPLETE: :incomplete - def self?.values: -> ::Array[OpenAI::Models::Responses::ResponseFunctionToolCallOutputItem::status] + def self?.values: -> ::Array[OpenAI::Responses::ResponseFunctionToolCallOutputItem::status] end end end diff --git a/sig/openai/models/responses/response_function_web_search.rbs b/sig/openai/models/responses/response_function_web_search.rbs index 3a2241fe..5efa6740 100644 --- a/sig/openai/models/responses/response_function_web_search.rbs +++ b/sig/openai/models/responses/response_function_web_search.rbs @@ -4,25 +4,23 @@ module OpenAI type response_function_web_search = { id: String, - status: OpenAI::Models::Responses::ResponseFunctionWebSearch::status, + status: OpenAI::Responses::ResponseFunctionWebSearch::status, type: :web_search_call } class ResponseFunctionWebSearch < OpenAI::Internal::Type::BaseModel attr_accessor id: String - attr_accessor status: OpenAI::Models::Responses::ResponseFunctionWebSearch::status + attr_accessor status: OpenAI::Responses::ResponseFunctionWebSearch::status attr_accessor type: :web_search_call def initialize: ( id: String, - status: OpenAI::Models::Responses::ResponseFunctionWebSearch::status, + status: OpenAI::Responses::ResponseFunctionWebSearch::status, ?type: :web_search_call ) -> void - def to_hash: -> OpenAI::Models::Responses::response_function_web_search - type status = :in_progress | :searching | :completed | :failed module Status @@ -33,7 +31,7 @@ module OpenAI COMPLETED: :completed FAILED: :failed - def self?.values: -> ::Array[OpenAI::Models::Responses::ResponseFunctionWebSearch::status] + def self?.values: -> ::Array[OpenAI::Responses::ResponseFunctionWebSearch::status] end end end diff --git a/sig/openai/models/responses/response_in_progress_event.rbs b/sig/openai/models/responses/response_in_progress_event.rbs index fb29e454..4d9f9e2a 100644 --- a/sig/openai/models/responses/response_in_progress_event.rbs +++ b/sig/openai/models/responses/response_in_progress_event.rbs @@ -2,22 +2,17 @@ module OpenAI module Models module Responses type response_in_progress_event = - { - response: OpenAI::Models::Responses::Response, - type: :"response.in_progress" - } + { response: OpenAI::Responses::Response, type: :"response.in_progress" } class ResponseInProgressEvent < OpenAI::Internal::Type::BaseModel - attr_accessor response: OpenAI::Models::Responses::Response + attr_accessor response: OpenAI::Responses::Response attr_accessor type: :"response.in_progress" def initialize: ( - response: OpenAI::Models::Responses::Response, + response: OpenAI::Responses::Response, ?type: :"response.in_progress" ) -> void - - def to_hash: -> OpenAI::Models::Responses::response_in_progress_event end end end diff --git a/sig/openai/models/responses/response_incomplete_event.rbs b/sig/openai/models/responses/response_incomplete_event.rbs index 8e4251ac..5e527b2f 100644 --- a/sig/openai/models/responses/response_incomplete_event.rbs +++ b/sig/openai/models/responses/response_incomplete_event.rbs @@ -2,22 +2,17 @@ module OpenAI module Models module Responses type response_incomplete_event = - { - response: OpenAI::Models::Responses::Response, - type: :"response.incomplete" - } + { response: OpenAI::Responses::Response, type: :"response.incomplete" } class ResponseIncompleteEvent < OpenAI::Internal::Type::BaseModel - attr_accessor response: OpenAI::Models::Responses::Response + attr_accessor response: OpenAI::Responses::Response attr_accessor type: :"response.incomplete" def initialize: ( - response: OpenAI::Models::Responses::Response, + response: OpenAI::Responses::Response, ?type: :"response.incomplete" ) -> void - - def to_hash: -> OpenAI::Models::Responses::response_incomplete_event end end end diff --git a/sig/openai/models/responses/response_input_audio.rbs b/sig/openai/models/responses/response_input_audio.rbs index 605fd682..542c1371 100644 --- a/sig/openai/models/responses/response_input_audio.rbs +++ b/sig/openai/models/responses/response_input_audio.rbs @@ -4,25 +4,23 @@ module OpenAI type response_input_audio = { data: String, - format_: OpenAI::Models::Responses::ResponseInputAudio::format_, + format_: OpenAI::Responses::ResponseInputAudio::format_, type: :input_audio } class ResponseInputAudio < OpenAI::Internal::Type::BaseModel attr_accessor data: String - attr_accessor format_: OpenAI::Models::Responses::ResponseInputAudio::format_ + attr_accessor format_: OpenAI::Responses::ResponseInputAudio::format_ attr_accessor type: :input_audio def initialize: ( data: String, - format_: OpenAI::Models::Responses::ResponseInputAudio::format_, + format_: OpenAI::Responses::ResponseInputAudio::format_, ?type: :input_audio ) -> void - def to_hash: -> OpenAI::Models::Responses::response_input_audio - type format_ = :mp3 | :wav module Format @@ -31,7 +29,7 @@ module OpenAI MP3: :mp3 WAV: :wav - def self?.values: -> ::Array[OpenAI::Models::Responses::ResponseInputAudio::format_] + def self?.values: -> ::Array[OpenAI::Responses::ResponseInputAudio::format_] end end end diff --git a/sig/openai/models/responses/response_input_content.rbs b/sig/openai/models/responses/response_input_content.rbs index 04d4f7b9..81fa4a14 100644 --- a/sig/openai/models/responses/response_input_content.rbs +++ b/sig/openai/models/responses/response_input_content.rbs @@ -2,14 +2,14 @@ module OpenAI module Models module Responses type response_input_content = - OpenAI::Models::Responses::ResponseInputText - | OpenAI::Models::Responses::ResponseInputImage - | OpenAI::Models::Responses::ResponseInputFile + OpenAI::Responses::ResponseInputText + | OpenAI::Responses::ResponseInputImage + | OpenAI::Responses::ResponseInputFile module ResponseInputContent extend OpenAI::Internal::Type::Union - def self?.variants: -> [OpenAI::Models::Responses::ResponseInputText, OpenAI::Models::Responses::ResponseInputImage, OpenAI::Models::Responses::ResponseInputFile] + def self?.variants: -> ::Array[OpenAI::Models::Responses::response_input_content] end end end diff --git a/sig/openai/models/responses/response_input_file.rbs b/sig/openai/models/responses/response_input_file.rbs index 20c40b3a..c5060c70 100644 --- a/sig/openai/models/responses/response_input_file.rbs +++ b/sig/openai/models/responses/response_input_file.rbs @@ -28,8 +28,6 @@ module OpenAI ?filename: String, ?type: :input_file ) -> void - - def to_hash: -> OpenAI::Models::Responses::response_input_file end end end diff --git a/sig/openai/models/responses/response_input_image.rbs b/sig/openai/models/responses/response_input_image.rbs index f9a423cc..ebc718c8 100644 --- a/sig/openai/models/responses/response_input_image.rbs +++ b/sig/openai/models/responses/response_input_image.rbs @@ -3,14 +3,14 @@ module OpenAI module Responses type response_input_image = { - detail: OpenAI::Models::Responses::ResponseInputImage::detail, + detail: OpenAI::Responses::ResponseInputImage::detail, type: :input_image, file_id: String?, image_url: String? } class ResponseInputImage < OpenAI::Internal::Type::BaseModel - attr_accessor detail: OpenAI::Models::Responses::ResponseInputImage::detail + attr_accessor detail: OpenAI::Responses::ResponseInputImage::detail attr_accessor type: :input_image @@ -19,14 +19,12 @@ module OpenAI attr_accessor image_url: String? def initialize: ( - detail: OpenAI::Models::Responses::ResponseInputImage::detail, + detail: OpenAI::Responses::ResponseInputImage::detail, ?file_id: String?, ?image_url: String?, ?type: :input_image ) -> void - def to_hash: -> OpenAI::Models::Responses::response_input_image - type detail = :low | :high | :auto module Detail @@ -36,7 +34,7 @@ module OpenAI HIGH: :high AUTO: :auto - def self?.values: -> ::Array[OpenAI::Models::Responses::ResponseInputImage::detail] + def self?.values: -> ::Array[OpenAI::Responses::ResponseInputImage::detail] end end end diff --git a/sig/openai/models/responses/response_input_item.rbs b/sig/openai/models/responses/response_input_item.rbs index f5de100d..f3cb1160 100644 --- a/sig/openai/models/responses/response_input_item.rbs +++ b/sig/openai/models/responses/response_input_item.rbs @@ -2,17 +2,17 @@ module OpenAI module Models module Responses type response_input_item = - OpenAI::Models::Responses::EasyInputMessage - | OpenAI::Models::Responses::ResponseInputItem::Message - | OpenAI::Models::Responses::ResponseOutputMessage - | OpenAI::Models::Responses::ResponseFileSearchToolCall - | OpenAI::Models::Responses::ResponseComputerToolCall - | OpenAI::Models::Responses::ResponseInputItem::ComputerCallOutput - | OpenAI::Models::Responses::ResponseFunctionWebSearch - | OpenAI::Models::Responses::ResponseFunctionToolCall - | OpenAI::Models::Responses::ResponseInputItem::FunctionCallOutput - | OpenAI::Models::Responses::ResponseReasoningItem - | OpenAI::Models::Responses::ResponseInputItem::ItemReference + OpenAI::Responses::EasyInputMessage + | OpenAI::Responses::ResponseInputItem::Message + | OpenAI::Responses::ResponseOutputMessage + | OpenAI::Responses::ResponseFileSearchToolCall + | OpenAI::Responses::ResponseComputerToolCall + | OpenAI::Responses::ResponseInputItem::ComputerCallOutput + | OpenAI::Responses::ResponseFunctionWebSearch + | OpenAI::Responses::ResponseFunctionToolCall + | OpenAI::Responses::ResponseInputItem::FunctionCallOutput + | OpenAI::Responses::ResponseReasoningItem + | OpenAI::Responses::ResponseInputItem::ItemReference module ResponseInputItem extend OpenAI::Internal::Type::Union @@ -20,37 +20,35 @@ module OpenAI type message = { content: OpenAI::Models::Responses::response_input_message_content_list, - role: OpenAI::Models::Responses::ResponseInputItem::Message::role, - status: OpenAI::Models::Responses::ResponseInputItem::Message::status, - type: OpenAI::Models::Responses::ResponseInputItem::Message::type_ + role: OpenAI::Responses::ResponseInputItem::Message::role, + status: OpenAI::Responses::ResponseInputItem::Message::status, + type: OpenAI::Responses::ResponseInputItem::Message::type_ } class Message < OpenAI::Internal::Type::BaseModel attr_accessor content: OpenAI::Models::Responses::response_input_message_content_list - attr_accessor role: OpenAI::Models::Responses::ResponseInputItem::Message::role + attr_accessor role: OpenAI::Responses::ResponseInputItem::Message::role - attr_reader status: OpenAI::Models::Responses::ResponseInputItem::Message::status? + attr_reader status: OpenAI::Responses::ResponseInputItem::Message::status? def status=: ( - OpenAI::Models::Responses::ResponseInputItem::Message::status - ) -> OpenAI::Models::Responses::ResponseInputItem::Message::status + OpenAI::Responses::ResponseInputItem::Message::status + ) -> OpenAI::Responses::ResponseInputItem::Message::status - attr_reader type: OpenAI::Models::Responses::ResponseInputItem::Message::type_? + attr_reader type: OpenAI::Responses::ResponseInputItem::Message::type_? def type=: ( - OpenAI::Models::Responses::ResponseInputItem::Message::type_ - ) -> OpenAI::Models::Responses::ResponseInputItem::Message::type_ + OpenAI::Responses::ResponseInputItem::Message::type_ + ) -> OpenAI::Responses::ResponseInputItem::Message::type_ def initialize: ( content: OpenAI::Models::Responses::response_input_message_content_list, - role: OpenAI::Models::Responses::ResponseInputItem::Message::role, - ?status: OpenAI::Models::Responses::ResponseInputItem::Message::status, - ?type: OpenAI::Models::Responses::ResponseInputItem::Message::type_ + role: OpenAI::Responses::ResponseInputItem::Message::role, + ?status: OpenAI::Responses::ResponseInputItem::Message::status, + ?type: OpenAI::Responses::ResponseInputItem::Message::type_ ) -> void - def to_hash: -> OpenAI::Models::Responses::ResponseInputItem::message - type role = :user | :system | :developer module Role @@ -60,7 +58,7 @@ module OpenAI SYSTEM: :system DEVELOPER: :developer - def self?.values: -> ::Array[OpenAI::Models::Responses::ResponseInputItem::Message::role] + def self?.values: -> ::Array[OpenAI::Responses::ResponseInputItem::Message::role] end type status = :in_progress | :completed | :incomplete @@ -72,7 +70,7 @@ module OpenAI COMPLETED: :completed INCOMPLETE: :incomplete - def self?.values: -> ::Array[OpenAI::Models::Responses::ResponseInputItem::Message::status] + def self?.values: -> ::Array[OpenAI::Responses::ResponseInputItem::Message::status] end type type_ = :message @@ -82,44 +80,42 @@ module OpenAI MESSAGE: :message - def self?.values: -> ::Array[OpenAI::Models::Responses::ResponseInputItem::Message::type_] + def self?.values: -> ::Array[OpenAI::Responses::ResponseInputItem::Message::type_] end end type computer_call_output = { call_id: String, - output: OpenAI::Models::Responses::ResponseComputerToolCallOutputScreenshot, + output: OpenAI::Responses::ResponseComputerToolCallOutputScreenshot, type: :computer_call_output, id: String?, - acknowledged_safety_checks: ::Array[OpenAI::Models::Responses::ResponseInputItem::ComputerCallOutput::AcknowledgedSafetyCheck]?, - status: OpenAI::Models::Responses::ResponseInputItem::ComputerCallOutput::status? + acknowledged_safety_checks: ::Array[OpenAI::Responses::ResponseInputItem::ComputerCallOutput::AcknowledgedSafetyCheck]?, + status: OpenAI::Responses::ResponseInputItem::ComputerCallOutput::status? } class ComputerCallOutput < OpenAI::Internal::Type::BaseModel attr_accessor call_id: String - attr_accessor output: OpenAI::Models::Responses::ResponseComputerToolCallOutputScreenshot + attr_accessor output: OpenAI::Responses::ResponseComputerToolCallOutputScreenshot attr_accessor type: :computer_call_output attr_accessor id: String? - attr_accessor acknowledged_safety_checks: ::Array[OpenAI::Models::Responses::ResponseInputItem::ComputerCallOutput::AcknowledgedSafetyCheck]? + attr_accessor acknowledged_safety_checks: ::Array[OpenAI::Responses::ResponseInputItem::ComputerCallOutput::AcknowledgedSafetyCheck]? - attr_accessor status: OpenAI::Models::Responses::ResponseInputItem::ComputerCallOutput::status? + attr_accessor status: OpenAI::Responses::ResponseInputItem::ComputerCallOutput::status? def initialize: ( call_id: String, - output: OpenAI::Models::Responses::ResponseComputerToolCallOutputScreenshot, + output: OpenAI::Responses::ResponseComputerToolCallOutputScreenshot, ?id: String?, - ?acknowledged_safety_checks: ::Array[OpenAI::Models::Responses::ResponseInputItem::ComputerCallOutput::AcknowledgedSafetyCheck]?, - ?status: OpenAI::Models::Responses::ResponseInputItem::ComputerCallOutput::status?, + ?acknowledged_safety_checks: ::Array[OpenAI::Responses::ResponseInputItem::ComputerCallOutput::AcknowledgedSafetyCheck]?, + ?status: OpenAI::Responses::ResponseInputItem::ComputerCallOutput::status?, ?type: :computer_call_output ) -> void - def to_hash: -> OpenAI::Models::Responses::ResponseInputItem::computer_call_output - type acknowledged_safety_check = { id: String, code: String?, message: String? } @@ -135,8 +131,6 @@ module OpenAI ?code: String?, ?message: String? ) -> void - - def to_hash: -> OpenAI::Models::Responses::ResponseInputItem::ComputerCallOutput::acknowledged_safety_check end type status = :in_progress | :completed | :incomplete @@ -148,7 +142,7 @@ module OpenAI COMPLETED: :completed INCOMPLETE: :incomplete - def self?.values: -> ::Array[OpenAI::Models::Responses::ResponseInputItem::ComputerCallOutput::status] + def self?.values: -> ::Array[OpenAI::Responses::ResponseInputItem::ComputerCallOutput::status] end end @@ -158,7 +152,7 @@ module OpenAI output: String, type: :function_call_output, id: String?, - status: OpenAI::Models::Responses::ResponseInputItem::FunctionCallOutput::status? + status: OpenAI::Responses::ResponseInputItem::FunctionCallOutput::status? } class FunctionCallOutput < OpenAI::Internal::Type::BaseModel @@ -170,18 +164,16 @@ module OpenAI attr_accessor id: String? - attr_accessor status: OpenAI::Models::Responses::ResponseInputItem::FunctionCallOutput::status? + attr_accessor status: OpenAI::Responses::ResponseInputItem::FunctionCallOutput::status? def initialize: ( call_id: String, output: String, ?id: String?, - ?status: OpenAI::Models::Responses::ResponseInputItem::FunctionCallOutput::status?, + ?status: OpenAI::Responses::ResponseInputItem::FunctionCallOutput::status?, ?type: :function_call_output ) -> void - def to_hash: -> OpenAI::Models::Responses::ResponseInputItem::function_call_output - type status = :in_progress | :completed | :incomplete module Status @@ -191,28 +183,26 @@ module OpenAI COMPLETED: :completed INCOMPLETE: :incomplete - def self?.values: -> ::Array[OpenAI::Models::Responses::ResponseInputItem::FunctionCallOutput::status] + def self?.values: -> ::Array[OpenAI::Responses::ResponseInputItem::FunctionCallOutput::status] end end type item_reference = { id: String, - type: OpenAI::Models::Responses::ResponseInputItem::ItemReference::type_? + type: OpenAI::Responses::ResponseInputItem::ItemReference::type_? } class ItemReference < OpenAI::Internal::Type::BaseModel attr_accessor id: String - attr_accessor type: OpenAI::Models::Responses::ResponseInputItem::ItemReference::type_? + attr_accessor type: OpenAI::Responses::ResponseInputItem::ItemReference::type_? def initialize: ( id: String, - ?type: OpenAI::Models::Responses::ResponseInputItem::ItemReference::type_? + ?type: OpenAI::Responses::ResponseInputItem::ItemReference::type_? ) -> void - def to_hash: -> OpenAI::Models::Responses::ResponseInputItem::item_reference - type type_ = :item_reference module Type @@ -220,11 +210,11 @@ module OpenAI ITEM_REFERENCE: :item_reference - def self?.values: -> ::Array[OpenAI::Models::Responses::ResponseInputItem::ItemReference::type_] + def self?.values: -> ::Array[OpenAI::Responses::ResponseInputItem::ItemReference::type_] end end - def self?.variants: -> [OpenAI::Models::Responses::EasyInputMessage, OpenAI::Models::Responses::ResponseInputItem::Message, OpenAI::Models::Responses::ResponseOutputMessage, OpenAI::Models::Responses::ResponseFileSearchToolCall, OpenAI::Models::Responses::ResponseComputerToolCall, OpenAI::Models::Responses::ResponseInputItem::ComputerCallOutput, OpenAI::Models::Responses::ResponseFunctionWebSearch, OpenAI::Models::Responses::ResponseFunctionToolCall, OpenAI::Models::Responses::ResponseInputItem::FunctionCallOutput, OpenAI::Models::Responses::ResponseReasoningItem, OpenAI::Models::Responses::ResponseInputItem::ItemReference] + def self?.variants: -> ::Array[OpenAI::Models::Responses::response_input_item] end end end diff --git a/sig/openai/models/responses/response_input_message_item.rbs b/sig/openai/models/responses/response_input_message_item.rbs index 96c1aa3d..f9cfd8b8 100644 --- a/sig/openai/models/responses/response_input_message_item.rbs +++ b/sig/openai/models/responses/response_input_message_item.rbs @@ -5,9 +5,9 @@ module OpenAI { id: String, content: OpenAI::Models::Responses::response_input_message_content_list, - role: OpenAI::Models::Responses::ResponseInputMessageItem::role, - status: OpenAI::Models::Responses::ResponseInputMessageItem::status, - type: OpenAI::Models::Responses::ResponseInputMessageItem::type_ + role: OpenAI::Responses::ResponseInputMessageItem::role, + status: OpenAI::Responses::ResponseInputMessageItem::status, + type: OpenAI::Responses::ResponseInputMessageItem::type_ } class ResponseInputMessageItem < OpenAI::Internal::Type::BaseModel @@ -15,30 +15,28 @@ module OpenAI attr_accessor content: OpenAI::Models::Responses::response_input_message_content_list - attr_accessor role: OpenAI::Models::Responses::ResponseInputMessageItem::role + attr_accessor role: OpenAI::Responses::ResponseInputMessageItem::role - attr_reader status: OpenAI::Models::Responses::ResponseInputMessageItem::status? + attr_reader status: OpenAI::Responses::ResponseInputMessageItem::status? def status=: ( - OpenAI::Models::Responses::ResponseInputMessageItem::status - ) -> OpenAI::Models::Responses::ResponseInputMessageItem::status + OpenAI::Responses::ResponseInputMessageItem::status + ) -> OpenAI::Responses::ResponseInputMessageItem::status - attr_reader type: OpenAI::Models::Responses::ResponseInputMessageItem::type_? + attr_reader type: OpenAI::Responses::ResponseInputMessageItem::type_? def type=: ( - OpenAI::Models::Responses::ResponseInputMessageItem::type_ - ) -> OpenAI::Models::Responses::ResponseInputMessageItem::type_ + OpenAI::Responses::ResponseInputMessageItem::type_ + ) -> OpenAI::Responses::ResponseInputMessageItem::type_ def initialize: ( id: String, content: OpenAI::Models::Responses::response_input_message_content_list, - role: OpenAI::Models::Responses::ResponseInputMessageItem::role, - ?status: OpenAI::Models::Responses::ResponseInputMessageItem::status, - ?type: OpenAI::Models::Responses::ResponseInputMessageItem::type_ + role: OpenAI::Responses::ResponseInputMessageItem::role, + ?status: OpenAI::Responses::ResponseInputMessageItem::status, + ?type: OpenAI::Responses::ResponseInputMessageItem::type_ ) -> void - def to_hash: -> OpenAI::Models::Responses::response_input_message_item - type role = :user | :system | :developer module Role @@ -48,7 +46,7 @@ module OpenAI SYSTEM: :system DEVELOPER: :developer - def self?.values: -> ::Array[OpenAI::Models::Responses::ResponseInputMessageItem::role] + def self?.values: -> ::Array[OpenAI::Responses::ResponseInputMessageItem::role] end type status = :in_progress | :completed | :incomplete @@ -60,7 +58,7 @@ module OpenAI COMPLETED: :completed INCOMPLETE: :incomplete - def self?.values: -> ::Array[OpenAI::Models::Responses::ResponseInputMessageItem::status] + def self?.values: -> ::Array[OpenAI::Responses::ResponseInputMessageItem::status] end type type_ = :message @@ -70,7 +68,7 @@ module OpenAI MESSAGE: :message - def self?.values: -> ::Array[OpenAI::Models::Responses::ResponseInputMessageItem::type_] + def self?.values: -> ::Array[OpenAI::Responses::ResponseInputMessageItem::type_] end end end diff --git a/sig/openai/models/responses/response_input_text.rbs b/sig/openai/models/responses/response_input_text.rbs index bb0b03f9..e60a488e 100644 --- a/sig/openai/models/responses/response_input_text.rbs +++ b/sig/openai/models/responses/response_input_text.rbs @@ -9,8 +9,6 @@ module OpenAI attr_accessor type: :input_text def initialize: (text: String, ?type: :input_text) -> void - - def to_hash: -> OpenAI::Models::Responses::response_input_text end end end diff --git a/sig/openai/models/responses/response_item.rbs b/sig/openai/models/responses/response_item.rbs index a84d2504..ab5eaa4c 100644 --- a/sig/openai/models/responses/response_item.rbs +++ b/sig/openai/models/responses/response_item.rbs @@ -2,19 +2,19 @@ module OpenAI module Models module Responses type response_item = - OpenAI::Models::Responses::ResponseInputMessageItem - | OpenAI::Models::Responses::ResponseOutputMessage - | OpenAI::Models::Responses::ResponseFileSearchToolCall - | OpenAI::Models::Responses::ResponseComputerToolCall - | OpenAI::Models::Responses::ResponseComputerToolCallOutputItem - | OpenAI::Models::Responses::ResponseFunctionWebSearch - | OpenAI::Models::Responses::ResponseFunctionToolCallItem - | OpenAI::Models::Responses::ResponseFunctionToolCallOutputItem + OpenAI::Responses::ResponseInputMessageItem + | OpenAI::Responses::ResponseOutputMessage + | OpenAI::Responses::ResponseFileSearchToolCall + | OpenAI::Responses::ResponseComputerToolCall + | OpenAI::Responses::ResponseComputerToolCallOutputItem + | OpenAI::Responses::ResponseFunctionWebSearch + | OpenAI::Responses::ResponseFunctionToolCallItem + | OpenAI::Responses::ResponseFunctionToolCallOutputItem module ResponseItem extend OpenAI::Internal::Type::Union - def self?.variants: -> [OpenAI::Models::Responses::ResponseInputMessageItem, OpenAI::Models::Responses::ResponseOutputMessage, OpenAI::Models::Responses::ResponseFileSearchToolCall, OpenAI::Models::Responses::ResponseComputerToolCall, OpenAI::Models::Responses::ResponseComputerToolCallOutputItem, OpenAI::Models::Responses::ResponseFunctionWebSearch, OpenAI::Models::Responses::ResponseFunctionToolCallItem, OpenAI::Models::Responses::ResponseFunctionToolCallOutputItem] + def self?.variants: -> ::Array[OpenAI::Models::Responses::response_item] end end end diff --git a/sig/openai/models/responses/response_item_list.rbs b/sig/openai/models/responses/response_item_list.rbs index 196112a5..e7390def 100644 --- a/sig/openai/models/responses/response_item_list.rbs +++ b/sig/openai/models/responses/response_item_list.rbs @@ -30,8 +30,6 @@ module OpenAI last_id: String, ?object: :list ) -> void - - def to_hash: -> OpenAI::Models::Responses::response_item_list end end end diff --git a/sig/openai/models/responses/response_output_audio.rbs b/sig/openai/models/responses/response_output_audio.rbs index 23c68656..a2c7f16e 100644 --- a/sig/openai/models/responses/response_output_audio.rbs +++ b/sig/openai/models/responses/response_output_audio.rbs @@ -16,8 +16,6 @@ module OpenAI transcript: String, ?type: :output_audio ) -> void - - def to_hash: -> OpenAI::Models::Responses::response_output_audio end end end diff --git a/sig/openai/models/responses/response_output_item.rbs b/sig/openai/models/responses/response_output_item.rbs index f3a5b7b5..cee5b2c7 100644 --- a/sig/openai/models/responses/response_output_item.rbs +++ b/sig/openai/models/responses/response_output_item.rbs @@ -2,17 +2,17 @@ module OpenAI module Models module Responses type response_output_item = - OpenAI::Models::Responses::ResponseOutputMessage - | OpenAI::Models::Responses::ResponseFileSearchToolCall - | OpenAI::Models::Responses::ResponseFunctionToolCall - | OpenAI::Models::Responses::ResponseFunctionWebSearch - | OpenAI::Models::Responses::ResponseComputerToolCall - | OpenAI::Models::Responses::ResponseReasoningItem + OpenAI::Responses::ResponseOutputMessage + | OpenAI::Responses::ResponseFileSearchToolCall + | OpenAI::Responses::ResponseFunctionToolCall + | OpenAI::Responses::ResponseFunctionWebSearch + | OpenAI::Responses::ResponseComputerToolCall + | OpenAI::Responses::ResponseReasoningItem module ResponseOutputItem extend OpenAI::Internal::Type::Union - def self?.variants: -> [OpenAI::Models::Responses::ResponseOutputMessage, OpenAI::Models::Responses::ResponseFileSearchToolCall, OpenAI::Models::Responses::ResponseFunctionToolCall, OpenAI::Models::Responses::ResponseFunctionWebSearch, OpenAI::Models::Responses::ResponseComputerToolCall, OpenAI::Models::Responses::ResponseReasoningItem] + def self?.variants: -> ::Array[OpenAI::Models::Responses::response_output_item] end end end diff --git a/sig/openai/models/responses/response_output_item_added_event.rbs b/sig/openai/models/responses/response_output_item_added_event.rbs index bdbcfb2e..03ac25c8 100644 --- a/sig/openai/models/responses/response_output_item_added_event.rbs +++ b/sig/openai/models/responses/response_output_item_added_event.rbs @@ -20,8 +20,6 @@ module OpenAI output_index: Integer, ?type: :"response.output_item.added" ) -> void - - def to_hash: -> OpenAI::Models::Responses::response_output_item_added_event end end end diff --git a/sig/openai/models/responses/response_output_item_done_event.rbs b/sig/openai/models/responses/response_output_item_done_event.rbs index 076a3f09..506bcabd 100644 --- a/sig/openai/models/responses/response_output_item_done_event.rbs +++ b/sig/openai/models/responses/response_output_item_done_event.rbs @@ -20,8 +20,6 @@ module OpenAI output_index: Integer, ?type: :"response.output_item.done" ) -> void - - def to_hash: -> OpenAI::Models::Responses::response_output_item_done_event end end end diff --git a/sig/openai/models/responses/response_output_message.rbs b/sig/openai/models/responses/response_output_message.rbs index 8662cc68..47827460 100644 --- a/sig/openai/models/responses/response_output_message.rbs +++ b/sig/openai/models/responses/response_output_message.rbs @@ -4,41 +4,39 @@ module OpenAI type response_output_message = { id: String, - content: ::Array[OpenAI::Models::Responses::ResponseOutputMessage::content], + content: ::Array[OpenAI::Responses::ResponseOutputMessage::content], role: :assistant, - status: OpenAI::Models::Responses::ResponseOutputMessage::status, + status: OpenAI::Responses::ResponseOutputMessage::status, type: :message } class ResponseOutputMessage < OpenAI::Internal::Type::BaseModel attr_accessor id: String - attr_accessor content: ::Array[OpenAI::Models::Responses::ResponseOutputMessage::content] + attr_accessor content: ::Array[OpenAI::Responses::ResponseOutputMessage::content] attr_accessor role: :assistant - attr_accessor status: OpenAI::Models::Responses::ResponseOutputMessage::status + attr_accessor status: OpenAI::Responses::ResponseOutputMessage::status attr_accessor type: :message def initialize: ( id: String, - content: ::Array[OpenAI::Models::Responses::ResponseOutputMessage::content], - status: OpenAI::Models::Responses::ResponseOutputMessage::status, + content: ::Array[OpenAI::Responses::ResponseOutputMessage::content], + status: OpenAI::Responses::ResponseOutputMessage::status, ?role: :assistant, ?type: :message ) -> void - def to_hash: -> OpenAI::Models::Responses::response_output_message - type content = - OpenAI::Models::Responses::ResponseOutputText - | OpenAI::Models::Responses::ResponseOutputRefusal + OpenAI::Responses::ResponseOutputText + | OpenAI::Responses::ResponseOutputRefusal module Content extend OpenAI::Internal::Type::Union - def self?.variants: -> [OpenAI::Models::Responses::ResponseOutputText, OpenAI::Models::Responses::ResponseOutputRefusal] + def self?.variants: -> ::Array[OpenAI::Responses::ResponseOutputMessage::content] end type status = :in_progress | :completed | :incomplete @@ -50,7 +48,7 @@ module OpenAI COMPLETED: :completed INCOMPLETE: :incomplete - def self?.values: -> ::Array[OpenAI::Models::Responses::ResponseOutputMessage::status] + def self?.values: -> ::Array[OpenAI::Responses::ResponseOutputMessage::status] end end end diff --git a/sig/openai/models/responses/response_output_refusal.rbs b/sig/openai/models/responses/response_output_refusal.rbs index 69e08eed..14de45aa 100644 --- a/sig/openai/models/responses/response_output_refusal.rbs +++ b/sig/openai/models/responses/response_output_refusal.rbs @@ -9,8 +9,6 @@ module OpenAI attr_accessor type: :refusal def initialize: (refusal: String, ?type: :refusal) -> void - - def to_hash: -> OpenAI::Models::Responses::response_output_refusal end end end diff --git a/sig/openai/models/responses/response_output_text.rbs b/sig/openai/models/responses/response_output_text.rbs index e3814bc4..368b2b07 100644 --- a/sig/openai/models/responses/response_output_text.rbs +++ b/sig/openai/models/responses/response_output_text.rbs @@ -3,30 +3,28 @@ module OpenAI module Responses type response_output_text = { - annotations: ::Array[OpenAI::Models::Responses::ResponseOutputText::annotation], + annotations: ::Array[OpenAI::Responses::ResponseOutputText::annotation], text: String, type: :output_text } class ResponseOutputText < OpenAI::Internal::Type::BaseModel - attr_accessor annotations: ::Array[OpenAI::Models::Responses::ResponseOutputText::annotation] + attr_accessor annotations: ::Array[OpenAI::Responses::ResponseOutputText::annotation] attr_accessor text: String attr_accessor type: :output_text def initialize: ( - annotations: ::Array[OpenAI::Models::Responses::ResponseOutputText::annotation], + annotations: ::Array[OpenAI::Responses::ResponseOutputText::annotation], text: String, ?type: :output_text ) -> void - def to_hash: -> OpenAI::Models::Responses::response_output_text - type annotation = - OpenAI::Models::Responses::ResponseOutputText::Annotation::FileCitation - | OpenAI::Models::Responses::ResponseOutputText::Annotation::URLCitation - | OpenAI::Models::Responses::ResponseOutputText::Annotation::FilePath + OpenAI::Responses::ResponseOutputText::Annotation::FileCitation + | OpenAI::Responses::ResponseOutputText::Annotation::URLCitation + | OpenAI::Responses::ResponseOutputText::Annotation::FilePath module Annotation extend OpenAI::Internal::Type::Union @@ -46,8 +44,6 @@ module OpenAI index: Integer, ?type: :file_citation ) -> void - - def to_hash: -> OpenAI::Models::Responses::ResponseOutputText::Annotation::file_citation end type url_citation = @@ -77,8 +73,6 @@ module OpenAI url: String, ?type: :url_citation ) -> void - - def to_hash: -> OpenAI::Models::Responses::ResponseOutputText::Annotation::url_citation end type file_path = { file_id: String, index: Integer, type: :file_path } @@ -95,11 +89,9 @@ module OpenAI index: Integer, ?type: :file_path ) -> void - - def to_hash: -> OpenAI::Models::Responses::ResponseOutputText::Annotation::file_path end - def self?.variants: -> [OpenAI::Models::Responses::ResponseOutputText::Annotation::FileCitation, OpenAI::Models::Responses::ResponseOutputText::Annotation::URLCitation, OpenAI::Models::Responses::ResponseOutputText::Annotation::FilePath] + def self?.variants: -> ::Array[OpenAI::Responses::ResponseOutputText::annotation] end end end diff --git a/sig/openai/models/responses/response_reasoning_item.rbs b/sig/openai/models/responses/response_reasoning_item.rbs index 19c0882c..7efc2a2d 100644 --- a/sig/openai/models/responses/response_reasoning_item.rbs +++ b/sig/openai/models/responses/response_reasoning_item.rbs @@ -4,37 +4,35 @@ module OpenAI type response_reasoning_item = { id: String, - summary: ::Array[OpenAI::Models::Responses::ResponseReasoningItem::Summary], + summary: ::Array[OpenAI::Responses::ResponseReasoningItem::Summary], type: :reasoning, encrypted_content: String?, - status: OpenAI::Models::Responses::ResponseReasoningItem::status + status: OpenAI::Responses::ResponseReasoningItem::status } class ResponseReasoningItem < OpenAI::Internal::Type::BaseModel attr_accessor id: String - attr_accessor summary: ::Array[OpenAI::Models::Responses::ResponseReasoningItem::Summary] + attr_accessor summary: ::Array[OpenAI::Responses::ResponseReasoningItem::Summary] attr_accessor type: :reasoning attr_accessor encrypted_content: String? - attr_reader status: OpenAI::Models::Responses::ResponseReasoningItem::status? + attr_reader status: OpenAI::Responses::ResponseReasoningItem::status? def status=: ( - OpenAI::Models::Responses::ResponseReasoningItem::status - ) -> OpenAI::Models::Responses::ResponseReasoningItem::status + OpenAI::Responses::ResponseReasoningItem::status + ) -> OpenAI::Responses::ResponseReasoningItem::status def initialize: ( id: String, - summary: ::Array[OpenAI::Models::Responses::ResponseReasoningItem::Summary], + summary: ::Array[OpenAI::Responses::ResponseReasoningItem::Summary], ?encrypted_content: String?, - ?status: OpenAI::Models::Responses::ResponseReasoningItem::status, + ?status: OpenAI::Responses::ResponseReasoningItem::status, ?type: :reasoning ) -> void - def to_hash: -> OpenAI::Models::Responses::response_reasoning_item - type summary = { text: String, type: :summary_text } class Summary < OpenAI::Internal::Type::BaseModel @@ -43,8 +41,6 @@ module OpenAI attr_accessor type: :summary_text def initialize: (text: String, ?type: :summary_text) -> void - - def to_hash: -> OpenAI::Models::Responses::ResponseReasoningItem::summary end type status = :in_progress | :completed | :incomplete @@ -56,7 +52,7 @@ module OpenAI COMPLETED: :completed INCOMPLETE: :incomplete - def self?.values: -> ::Array[OpenAI::Models::Responses::ResponseReasoningItem::status] + def self?.values: -> ::Array[OpenAI::Responses::ResponseReasoningItem::status] end end end diff --git a/sig/openai/models/responses/response_reasoning_summary_part_added_event.rbs b/sig/openai/models/responses/response_reasoning_summary_part_added_event.rbs index d970d8a3..05c6f71d 100644 --- a/sig/openai/models/responses/response_reasoning_summary_part_added_event.rbs +++ b/sig/openai/models/responses/response_reasoning_summary_part_added_event.rbs @@ -5,7 +5,7 @@ module OpenAI { item_id: String, output_index: Integer, - part: OpenAI::Models::Responses::ResponseReasoningSummaryPartAddedEvent::Part, + part: OpenAI::Responses::ResponseReasoningSummaryPartAddedEvent::Part, summary_index: Integer, type: :"response.reasoning_summary_part.added" } @@ -15,7 +15,7 @@ module OpenAI attr_accessor output_index: Integer - attr_accessor part: OpenAI::Models::Responses::ResponseReasoningSummaryPartAddedEvent::Part + attr_accessor part: OpenAI::Responses::ResponseReasoningSummaryPartAddedEvent::Part attr_accessor summary_index: Integer @@ -24,13 +24,11 @@ module OpenAI def initialize: ( item_id: String, output_index: Integer, - part: OpenAI::Models::Responses::ResponseReasoningSummaryPartAddedEvent::Part, + part: OpenAI::Responses::ResponseReasoningSummaryPartAddedEvent::Part, summary_index: Integer, ?type: :"response.reasoning_summary_part.added" ) -> void - def to_hash: -> OpenAI::Models::Responses::response_reasoning_summary_part_added_event - type part = { text: String, type: :summary_text } class Part < OpenAI::Internal::Type::BaseModel @@ -39,8 +37,6 @@ module OpenAI attr_accessor type: :summary_text def initialize: (text: String, ?type: :summary_text) -> void - - def to_hash: -> OpenAI::Models::Responses::ResponseReasoningSummaryPartAddedEvent::part end end end diff --git a/sig/openai/models/responses/response_reasoning_summary_part_done_event.rbs b/sig/openai/models/responses/response_reasoning_summary_part_done_event.rbs index 88fe9e2a..c03f6cf4 100644 --- a/sig/openai/models/responses/response_reasoning_summary_part_done_event.rbs +++ b/sig/openai/models/responses/response_reasoning_summary_part_done_event.rbs @@ -5,7 +5,7 @@ module OpenAI { item_id: String, output_index: Integer, - part: OpenAI::Models::Responses::ResponseReasoningSummaryPartDoneEvent::Part, + part: OpenAI::Responses::ResponseReasoningSummaryPartDoneEvent::Part, summary_index: Integer, type: :"response.reasoning_summary_part.done" } @@ -15,7 +15,7 @@ module OpenAI attr_accessor output_index: Integer - attr_accessor part: OpenAI::Models::Responses::ResponseReasoningSummaryPartDoneEvent::Part + attr_accessor part: OpenAI::Responses::ResponseReasoningSummaryPartDoneEvent::Part attr_accessor summary_index: Integer @@ -24,13 +24,11 @@ module OpenAI def initialize: ( item_id: String, output_index: Integer, - part: OpenAI::Models::Responses::ResponseReasoningSummaryPartDoneEvent::Part, + part: OpenAI::Responses::ResponseReasoningSummaryPartDoneEvent::Part, summary_index: Integer, ?type: :"response.reasoning_summary_part.done" ) -> void - def to_hash: -> OpenAI::Models::Responses::response_reasoning_summary_part_done_event - type part = { text: String, type: :summary_text } class Part < OpenAI::Internal::Type::BaseModel @@ -39,8 +37,6 @@ module OpenAI attr_accessor type: :summary_text def initialize: (text: String, ?type: :summary_text) -> void - - def to_hash: -> OpenAI::Models::Responses::ResponseReasoningSummaryPartDoneEvent::part end end end diff --git a/sig/openai/models/responses/response_reasoning_summary_text_delta_event.rbs b/sig/openai/models/responses/response_reasoning_summary_text_delta_event.rbs index d73f86b6..494fa8c3 100644 --- a/sig/openai/models/responses/response_reasoning_summary_text_delta_event.rbs +++ b/sig/openai/models/responses/response_reasoning_summary_text_delta_event.rbs @@ -28,8 +28,6 @@ module OpenAI summary_index: Integer, ?type: :"response.reasoning_summary_text.delta" ) -> void - - def to_hash: -> OpenAI::Models::Responses::response_reasoning_summary_text_delta_event end end end diff --git a/sig/openai/models/responses/response_reasoning_summary_text_done_event.rbs b/sig/openai/models/responses/response_reasoning_summary_text_done_event.rbs index 63b910b7..36bb9006 100644 --- a/sig/openai/models/responses/response_reasoning_summary_text_done_event.rbs +++ b/sig/openai/models/responses/response_reasoning_summary_text_done_event.rbs @@ -28,8 +28,6 @@ module OpenAI text: String, ?type: :"response.reasoning_summary_text.done" ) -> void - - def to_hash: -> OpenAI::Models::Responses::response_reasoning_summary_text_done_event end end end diff --git a/sig/openai/models/responses/response_refusal_delta_event.rbs b/sig/openai/models/responses/response_refusal_delta_event.rbs index 0ab5e996..2dc7df34 100644 --- a/sig/openai/models/responses/response_refusal_delta_event.rbs +++ b/sig/openai/models/responses/response_refusal_delta_event.rbs @@ -28,8 +28,6 @@ module OpenAI output_index: Integer, ?type: :"response.refusal.delta" ) -> void - - def to_hash: -> OpenAI::Models::Responses::response_refusal_delta_event end end end diff --git a/sig/openai/models/responses/response_refusal_done_event.rbs b/sig/openai/models/responses/response_refusal_done_event.rbs index 761e42a0..852fbb7b 100644 --- a/sig/openai/models/responses/response_refusal_done_event.rbs +++ b/sig/openai/models/responses/response_refusal_done_event.rbs @@ -28,8 +28,6 @@ module OpenAI refusal: String, ?type: :"response.refusal.done" ) -> void - - def to_hash: -> OpenAI::Models::Responses::response_refusal_done_event end end end diff --git a/sig/openai/models/responses/response_retrieve_params.rbs b/sig/openai/models/responses/response_retrieve_params.rbs index 9a99b74c..2a8ef689 100644 --- a/sig/openai/models/responses/response_retrieve_params.rbs +++ b/sig/openai/models/responses/response_retrieve_params.rbs @@ -19,8 +19,6 @@ module OpenAI ?include: ::Array[OpenAI::Models::Responses::response_includable], ?request_options: OpenAI::request_opts ) -> void - - def to_hash: -> OpenAI::Models::Responses::response_retrieve_params end end end diff --git a/sig/openai/models/responses/response_stream_event.rbs b/sig/openai/models/responses/response_stream_event.rbs index e81d05de..b8f72810 100644 --- a/sig/openai/models/responses/response_stream_event.rbs +++ b/sig/openai/models/responses/response_stream_event.rbs @@ -2,47 +2,47 @@ module OpenAI module Models module Responses type response_stream_event = - OpenAI::Models::Responses::ResponseAudioDeltaEvent - | OpenAI::Models::Responses::ResponseAudioDoneEvent - | OpenAI::Models::Responses::ResponseAudioTranscriptDeltaEvent - | OpenAI::Models::Responses::ResponseAudioTranscriptDoneEvent - | OpenAI::Models::Responses::ResponseCodeInterpreterCallCodeDeltaEvent - | OpenAI::Models::Responses::ResponseCodeInterpreterCallCodeDoneEvent - | OpenAI::Models::Responses::ResponseCodeInterpreterCallCompletedEvent - | OpenAI::Models::Responses::ResponseCodeInterpreterCallInProgressEvent - | OpenAI::Models::Responses::ResponseCodeInterpreterCallInterpretingEvent - | OpenAI::Models::Responses::ResponseCompletedEvent - | OpenAI::Models::Responses::ResponseContentPartAddedEvent - | OpenAI::Models::Responses::ResponseContentPartDoneEvent - | OpenAI::Models::Responses::ResponseCreatedEvent - | OpenAI::Models::Responses::ResponseErrorEvent - | OpenAI::Models::Responses::ResponseFileSearchCallCompletedEvent - | OpenAI::Models::Responses::ResponseFileSearchCallInProgressEvent - | OpenAI::Models::Responses::ResponseFileSearchCallSearchingEvent - | OpenAI::Models::Responses::ResponseFunctionCallArgumentsDeltaEvent - | OpenAI::Models::Responses::ResponseFunctionCallArgumentsDoneEvent - | OpenAI::Models::Responses::ResponseInProgressEvent - | OpenAI::Models::Responses::ResponseFailedEvent - | OpenAI::Models::Responses::ResponseIncompleteEvent - | OpenAI::Models::Responses::ResponseOutputItemAddedEvent - | OpenAI::Models::Responses::ResponseOutputItemDoneEvent - | OpenAI::Models::Responses::ResponseReasoningSummaryPartAddedEvent - | OpenAI::Models::Responses::ResponseReasoningSummaryPartDoneEvent - | OpenAI::Models::Responses::ResponseReasoningSummaryTextDeltaEvent - | OpenAI::Models::Responses::ResponseReasoningSummaryTextDoneEvent - | OpenAI::Models::Responses::ResponseRefusalDeltaEvent - | OpenAI::Models::Responses::ResponseRefusalDoneEvent - | OpenAI::Models::Responses::ResponseTextAnnotationDeltaEvent - | OpenAI::Models::Responses::ResponseTextDeltaEvent - | OpenAI::Models::Responses::ResponseTextDoneEvent - | OpenAI::Models::Responses::ResponseWebSearchCallCompletedEvent - | OpenAI::Models::Responses::ResponseWebSearchCallInProgressEvent - | OpenAI::Models::Responses::ResponseWebSearchCallSearchingEvent + OpenAI::Responses::ResponseAudioDeltaEvent + | OpenAI::Responses::ResponseAudioDoneEvent + | OpenAI::Responses::ResponseAudioTranscriptDeltaEvent + | OpenAI::Responses::ResponseAudioTranscriptDoneEvent + | OpenAI::Responses::ResponseCodeInterpreterCallCodeDeltaEvent + | OpenAI::Responses::ResponseCodeInterpreterCallCodeDoneEvent + | OpenAI::Responses::ResponseCodeInterpreterCallCompletedEvent + | OpenAI::Responses::ResponseCodeInterpreterCallInProgressEvent + | OpenAI::Responses::ResponseCodeInterpreterCallInterpretingEvent + | OpenAI::Responses::ResponseCompletedEvent + | OpenAI::Responses::ResponseContentPartAddedEvent + | OpenAI::Responses::ResponseContentPartDoneEvent + | OpenAI::Responses::ResponseCreatedEvent + | OpenAI::Responses::ResponseErrorEvent + | OpenAI::Responses::ResponseFileSearchCallCompletedEvent + | OpenAI::Responses::ResponseFileSearchCallInProgressEvent + | OpenAI::Responses::ResponseFileSearchCallSearchingEvent + | OpenAI::Responses::ResponseFunctionCallArgumentsDeltaEvent + | OpenAI::Responses::ResponseFunctionCallArgumentsDoneEvent + | OpenAI::Responses::ResponseInProgressEvent + | OpenAI::Responses::ResponseFailedEvent + | OpenAI::Responses::ResponseIncompleteEvent + | OpenAI::Responses::ResponseOutputItemAddedEvent + | OpenAI::Responses::ResponseOutputItemDoneEvent + | OpenAI::Responses::ResponseReasoningSummaryPartAddedEvent + | OpenAI::Responses::ResponseReasoningSummaryPartDoneEvent + | OpenAI::Responses::ResponseReasoningSummaryTextDeltaEvent + | OpenAI::Responses::ResponseReasoningSummaryTextDoneEvent + | OpenAI::Responses::ResponseRefusalDeltaEvent + | OpenAI::Responses::ResponseRefusalDoneEvent + | OpenAI::Responses::ResponseTextAnnotationDeltaEvent + | OpenAI::Responses::ResponseTextDeltaEvent + | OpenAI::Responses::ResponseTextDoneEvent + | OpenAI::Responses::ResponseWebSearchCallCompletedEvent + | OpenAI::Responses::ResponseWebSearchCallInProgressEvent + | OpenAI::Responses::ResponseWebSearchCallSearchingEvent module ResponseStreamEvent extend OpenAI::Internal::Type::Union - def self?.variants: -> [OpenAI::Models::Responses::ResponseAudioDeltaEvent, OpenAI::Models::Responses::ResponseAudioDoneEvent, OpenAI::Models::Responses::ResponseAudioTranscriptDeltaEvent, OpenAI::Models::Responses::ResponseAudioTranscriptDoneEvent, OpenAI::Models::Responses::ResponseCodeInterpreterCallCodeDeltaEvent, OpenAI::Models::Responses::ResponseCodeInterpreterCallCodeDoneEvent, OpenAI::Models::Responses::ResponseCodeInterpreterCallCompletedEvent, OpenAI::Models::Responses::ResponseCodeInterpreterCallInProgressEvent, OpenAI::Models::Responses::ResponseCodeInterpreterCallInterpretingEvent, OpenAI::Models::Responses::ResponseCompletedEvent, OpenAI::Models::Responses::ResponseContentPartAddedEvent, OpenAI::Models::Responses::ResponseContentPartDoneEvent, OpenAI::Models::Responses::ResponseCreatedEvent, OpenAI::Models::Responses::ResponseErrorEvent, OpenAI::Models::Responses::ResponseFileSearchCallCompletedEvent, OpenAI::Models::Responses::ResponseFileSearchCallInProgressEvent, OpenAI::Models::Responses::ResponseFileSearchCallSearchingEvent, OpenAI::Models::Responses::ResponseFunctionCallArgumentsDeltaEvent, OpenAI::Models::Responses::ResponseFunctionCallArgumentsDoneEvent, OpenAI::Models::Responses::ResponseInProgressEvent, OpenAI::Models::Responses::ResponseFailedEvent, OpenAI::Models::Responses::ResponseIncompleteEvent, OpenAI::Models::Responses::ResponseOutputItemAddedEvent, OpenAI::Models::Responses::ResponseOutputItemDoneEvent, OpenAI::Models::Responses::ResponseReasoningSummaryPartAddedEvent, OpenAI::Models::Responses::ResponseReasoningSummaryPartDoneEvent, OpenAI::Models::Responses::ResponseReasoningSummaryTextDeltaEvent, OpenAI::Models::Responses::ResponseReasoningSummaryTextDoneEvent, OpenAI::Models::Responses::ResponseRefusalDeltaEvent, OpenAI::Models::Responses::ResponseRefusalDoneEvent, OpenAI::Models::Responses::ResponseTextAnnotationDeltaEvent, OpenAI::Models::Responses::ResponseTextDeltaEvent, OpenAI::Models::Responses::ResponseTextDoneEvent, OpenAI::Models::Responses::ResponseWebSearchCallCompletedEvent, OpenAI::Models::Responses::ResponseWebSearchCallInProgressEvent, OpenAI::Models::Responses::ResponseWebSearchCallSearchingEvent] + def self?.variants: -> ::Array[OpenAI::Models::Responses::response_stream_event] end end end diff --git a/sig/openai/models/responses/response_text_annotation_delta_event.rbs b/sig/openai/models/responses/response_text_annotation_delta_event.rbs index 54d32aa3..36d79ace 100644 --- a/sig/openai/models/responses/response_text_annotation_delta_event.rbs +++ b/sig/openai/models/responses/response_text_annotation_delta_event.rbs @@ -3,7 +3,7 @@ module OpenAI module Responses type response_text_annotation_delta_event = { - annotation: OpenAI::Models::Responses::ResponseTextAnnotationDeltaEvent::annotation, + annotation: OpenAI::Responses::ResponseTextAnnotationDeltaEvent::annotation, annotation_index: Integer, content_index: Integer, item_id: String, @@ -12,7 +12,7 @@ module OpenAI } class ResponseTextAnnotationDeltaEvent < OpenAI::Internal::Type::BaseModel - attr_accessor annotation: OpenAI::Models::Responses::ResponseTextAnnotationDeltaEvent::annotation + attr_accessor annotation: OpenAI::Responses::ResponseTextAnnotationDeltaEvent::annotation attr_accessor annotation_index: Integer @@ -25,7 +25,7 @@ module OpenAI attr_accessor type: :"response.output_text.annotation.added" def initialize: ( - annotation: OpenAI::Models::Responses::ResponseTextAnnotationDeltaEvent::annotation, + annotation: OpenAI::Responses::ResponseTextAnnotationDeltaEvent::annotation, annotation_index: Integer, content_index: Integer, item_id: String, @@ -33,12 +33,10 @@ module OpenAI ?type: :"response.output_text.annotation.added" ) -> void - def to_hash: -> OpenAI::Models::Responses::response_text_annotation_delta_event - type annotation = - OpenAI::Models::Responses::ResponseTextAnnotationDeltaEvent::Annotation::FileCitation - | OpenAI::Models::Responses::ResponseTextAnnotationDeltaEvent::Annotation::URLCitation - | OpenAI::Models::Responses::ResponseTextAnnotationDeltaEvent::Annotation::FilePath + OpenAI::Responses::ResponseTextAnnotationDeltaEvent::Annotation::FileCitation + | OpenAI::Responses::ResponseTextAnnotationDeltaEvent::Annotation::URLCitation + | OpenAI::Responses::ResponseTextAnnotationDeltaEvent::Annotation::FilePath module Annotation extend OpenAI::Internal::Type::Union @@ -58,8 +56,6 @@ module OpenAI index: Integer, ?type: :file_citation ) -> void - - def to_hash: -> OpenAI::Models::Responses::ResponseTextAnnotationDeltaEvent::Annotation::file_citation end type url_citation = @@ -89,8 +85,6 @@ module OpenAI url: String, ?type: :url_citation ) -> void - - def to_hash: -> OpenAI::Models::Responses::ResponseTextAnnotationDeltaEvent::Annotation::url_citation end type file_path = { file_id: String, index: Integer, type: :file_path } @@ -107,11 +101,9 @@ module OpenAI index: Integer, ?type: :file_path ) -> void - - def to_hash: -> OpenAI::Models::Responses::ResponseTextAnnotationDeltaEvent::Annotation::file_path end - def self?.variants: -> [OpenAI::Models::Responses::ResponseTextAnnotationDeltaEvent::Annotation::FileCitation, OpenAI::Models::Responses::ResponseTextAnnotationDeltaEvent::Annotation::URLCitation, OpenAI::Models::Responses::ResponseTextAnnotationDeltaEvent::Annotation::FilePath] + def self?.variants: -> ::Array[OpenAI::Responses::ResponseTextAnnotationDeltaEvent::annotation] end end end diff --git a/sig/openai/models/responses/response_text_config.rbs b/sig/openai/models/responses/response_text_config.rbs index 30ff82f7..816d5b67 100644 --- a/sig/openai/models/responses/response_text_config.rbs +++ b/sig/openai/models/responses/response_text_config.rbs @@ -14,8 +14,6 @@ module OpenAI def initialize: ( ?format_: OpenAI::Models::Responses::response_format_text_config ) -> void - - def to_hash: -> OpenAI::Models::Responses::response_text_config end end end diff --git a/sig/openai/models/responses/response_text_delta_event.rbs b/sig/openai/models/responses/response_text_delta_event.rbs index 2c36a1bf..c5025499 100644 --- a/sig/openai/models/responses/response_text_delta_event.rbs +++ b/sig/openai/models/responses/response_text_delta_event.rbs @@ -28,8 +28,6 @@ module OpenAI output_index: Integer, ?type: :"response.output_text.delta" ) -> void - - def to_hash: -> OpenAI::Models::Responses::response_text_delta_event end end end diff --git a/sig/openai/models/responses/response_text_done_event.rbs b/sig/openai/models/responses/response_text_done_event.rbs index 86dc66db..0585e9f1 100644 --- a/sig/openai/models/responses/response_text_done_event.rbs +++ b/sig/openai/models/responses/response_text_done_event.rbs @@ -28,8 +28,6 @@ module OpenAI text: String, ?type: :"response.output_text.done" ) -> void - - def to_hash: -> OpenAI::Models::Responses::response_text_done_event end end end diff --git a/sig/openai/models/responses/response_usage.rbs b/sig/openai/models/responses/response_usage.rbs index 28b094d0..a5b8cbc5 100644 --- a/sig/openai/models/responses/response_usage.rbs +++ b/sig/openai/models/responses/response_usage.rbs @@ -4,41 +4,37 @@ module OpenAI type response_usage = { input_tokens: Integer, - input_tokens_details: OpenAI::Models::Responses::ResponseUsage::InputTokensDetails, + input_tokens_details: OpenAI::Responses::ResponseUsage::InputTokensDetails, output_tokens: Integer, - output_tokens_details: OpenAI::Models::Responses::ResponseUsage::OutputTokensDetails, + output_tokens_details: OpenAI::Responses::ResponseUsage::OutputTokensDetails, total_tokens: Integer } class ResponseUsage < OpenAI::Internal::Type::BaseModel attr_accessor input_tokens: Integer - attr_accessor input_tokens_details: OpenAI::Models::Responses::ResponseUsage::InputTokensDetails + attr_accessor input_tokens_details: OpenAI::Responses::ResponseUsage::InputTokensDetails attr_accessor output_tokens: Integer - attr_accessor output_tokens_details: OpenAI::Models::Responses::ResponseUsage::OutputTokensDetails + attr_accessor output_tokens_details: OpenAI::Responses::ResponseUsage::OutputTokensDetails attr_accessor total_tokens: Integer def initialize: ( input_tokens: Integer, - input_tokens_details: OpenAI::Models::Responses::ResponseUsage::InputTokensDetails, + input_tokens_details: OpenAI::Responses::ResponseUsage::InputTokensDetails, output_tokens: Integer, - output_tokens_details: OpenAI::Models::Responses::ResponseUsage::OutputTokensDetails, + output_tokens_details: OpenAI::Responses::ResponseUsage::OutputTokensDetails, total_tokens: Integer ) -> void - def to_hash: -> OpenAI::Models::Responses::response_usage - type input_tokens_details = { cached_tokens: Integer } class InputTokensDetails < OpenAI::Internal::Type::BaseModel attr_accessor cached_tokens: Integer def initialize: (cached_tokens: Integer) -> void - - def to_hash: -> OpenAI::Models::Responses::ResponseUsage::input_tokens_details end type output_tokens_details = { reasoning_tokens: Integer } @@ -47,8 +43,6 @@ module OpenAI attr_accessor reasoning_tokens: Integer def initialize: (reasoning_tokens: Integer) -> void - - def to_hash: -> OpenAI::Models::Responses::ResponseUsage::output_tokens_details end end end diff --git a/sig/openai/models/responses/response_web_search_call_completed_event.rbs b/sig/openai/models/responses/response_web_search_call_completed_event.rbs index d5772178..852a046e 100644 --- a/sig/openai/models/responses/response_web_search_call_completed_event.rbs +++ b/sig/openai/models/responses/response_web_search_call_completed_event.rbs @@ -20,8 +20,6 @@ module OpenAI output_index: Integer, ?type: :"response.web_search_call.completed" ) -> void - - def to_hash: -> OpenAI::Models::Responses::response_web_search_call_completed_event end end end diff --git a/sig/openai/models/responses/response_web_search_call_in_progress_event.rbs b/sig/openai/models/responses/response_web_search_call_in_progress_event.rbs index 56dfa277..996acf2e 100644 --- a/sig/openai/models/responses/response_web_search_call_in_progress_event.rbs +++ b/sig/openai/models/responses/response_web_search_call_in_progress_event.rbs @@ -20,8 +20,6 @@ module OpenAI output_index: Integer, ?type: :"response.web_search_call.in_progress" ) -> void - - def to_hash: -> OpenAI::Models::Responses::response_web_search_call_in_progress_event end end end diff --git a/sig/openai/models/responses/response_web_search_call_searching_event.rbs b/sig/openai/models/responses/response_web_search_call_searching_event.rbs index 3a70544f..b77bc5aa 100644 --- a/sig/openai/models/responses/response_web_search_call_searching_event.rbs +++ b/sig/openai/models/responses/response_web_search_call_searching_event.rbs @@ -20,8 +20,6 @@ module OpenAI output_index: Integer, ?type: :"response.web_search_call.searching" ) -> void - - def to_hash: -> OpenAI::Models::Responses::response_web_search_call_searching_event end end end diff --git a/sig/openai/models/responses/tool.rbs b/sig/openai/models/responses/tool.rbs index 0d3a572d..81616de5 100644 --- a/sig/openai/models/responses/tool.rbs +++ b/sig/openai/models/responses/tool.rbs @@ -2,15 +2,15 @@ module OpenAI module Models module Responses type tool = - OpenAI::Models::Responses::FileSearchTool - | OpenAI::Models::Responses::FunctionTool - | OpenAI::Models::Responses::ComputerTool - | OpenAI::Models::Responses::WebSearchTool + OpenAI::Responses::FileSearchTool + | OpenAI::Responses::FunctionTool + | OpenAI::Responses::ComputerTool + | OpenAI::Responses::WebSearchTool module Tool extend OpenAI::Internal::Type::Union - def self?.variants: -> [OpenAI::Models::Responses::FileSearchTool, OpenAI::Models::Responses::FunctionTool, OpenAI::Models::Responses::ComputerTool, OpenAI::Models::Responses::WebSearchTool] + def self?.variants: -> ::Array[OpenAI::Models::Responses::tool] end end end diff --git a/sig/openai/models/responses/tool_choice_function.rbs b/sig/openai/models/responses/tool_choice_function.rbs index a1881b61..1aa68ba1 100644 --- a/sig/openai/models/responses/tool_choice_function.rbs +++ b/sig/openai/models/responses/tool_choice_function.rbs @@ -9,8 +9,6 @@ module OpenAI attr_accessor type: :function def initialize: (name: String, ?type: :function) -> void - - def to_hash: -> OpenAI::Models::Responses::tool_choice_function end end end diff --git a/sig/openai/models/responses/tool_choice_types.rbs b/sig/openai/models/responses/tool_choice_types.rbs index 588a58ac..71458e63 100644 --- a/sig/openai/models/responses/tool_choice_types.rbs +++ b/sig/openai/models/responses/tool_choice_types.rbs @@ -2,17 +2,15 @@ module OpenAI module Models module Responses type tool_choice_types = - { type: OpenAI::Models::Responses::ToolChoiceTypes::type_ } + { type: OpenAI::Responses::ToolChoiceTypes::type_ } class ToolChoiceTypes < OpenAI::Internal::Type::BaseModel - attr_accessor type: OpenAI::Models::Responses::ToolChoiceTypes::type_ + attr_accessor type: OpenAI::Responses::ToolChoiceTypes::type_ def initialize: ( - type: OpenAI::Models::Responses::ToolChoiceTypes::type_ + type: OpenAI::Responses::ToolChoiceTypes::type_ ) -> void - def to_hash: -> OpenAI::Models::Responses::tool_choice_types - type type_ = :file_search | :web_search_preview @@ -27,7 +25,7 @@ module OpenAI COMPUTER_USE_PREVIEW: :computer_use_preview WEB_SEARCH_PREVIEW_2025_03_11: :web_search_preview_2025_03_11 - def self?.values: -> ::Array[OpenAI::Models::Responses::ToolChoiceTypes::type_] + def self?.values: -> ::Array[OpenAI::Responses::ToolChoiceTypes::type_] end end end diff --git a/sig/openai/models/responses/web_search_tool.rbs b/sig/openai/models/responses/web_search_tool.rbs index 6b68aad5..dba0454c 100644 --- a/sig/openai/models/responses/web_search_tool.rbs +++ b/sig/openai/models/responses/web_search_tool.rbs @@ -3,30 +3,28 @@ module OpenAI module Responses type web_search_tool = { - type: OpenAI::Models::Responses::WebSearchTool::type_, - search_context_size: OpenAI::Models::Responses::WebSearchTool::search_context_size, - user_location: OpenAI::Models::Responses::WebSearchTool::UserLocation? + type: OpenAI::Responses::WebSearchTool::type_, + search_context_size: OpenAI::Responses::WebSearchTool::search_context_size, + user_location: OpenAI::Responses::WebSearchTool::UserLocation? } class WebSearchTool < OpenAI::Internal::Type::BaseModel - attr_accessor type: OpenAI::Models::Responses::WebSearchTool::type_ + attr_accessor type: OpenAI::Responses::WebSearchTool::type_ - attr_reader search_context_size: OpenAI::Models::Responses::WebSearchTool::search_context_size? + attr_reader search_context_size: OpenAI::Responses::WebSearchTool::search_context_size? def search_context_size=: ( - OpenAI::Models::Responses::WebSearchTool::search_context_size - ) -> OpenAI::Models::Responses::WebSearchTool::search_context_size + OpenAI::Responses::WebSearchTool::search_context_size + ) -> OpenAI::Responses::WebSearchTool::search_context_size - attr_accessor user_location: OpenAI::Models::Responses::WebSearchTool::UserLocation? + attr_accessor user_location: OpenAI::Responses::WebSearchTool::UserLocation? def initialize: ( - type: OpenAI::Models::Responses::WebSearchTool::type_, - ?search_context_size: OpenAI::Models::Responses::WebSearchTool::search_context_size, - ?user_location: OpenAI::Models::Responses::WebSearchTool::UserLocation? + type: OpenAI::Responses::WebSearchTool::type_, + ?search_context_size: OpenAI::Responses::WebSearchTool::search_context_size, + ?user_location: OpenAI::Responses::WebSearchTool::UserLocation? ) -> void - def to_hash: -> OpenAI::Models::Responses::web_search_tool - type type_ = :web_search_preview | :web_search_preview_2025_03_11 module Type @@ -35,7 +33,7 @@ module OpenAI WEB_SEARCH_PREVIEW: :web_search_preview WEB_SEARCH_PREVIEW_2025_03_11: :web_search_preview_2025_03_11 - def self?.values: -> ::Array[OpenAI::Models::Responses::WebSearchTool::type_] + def self?.values: -> ::Array[OpenAI::Responses::WebSearchTool::type_] end type search_context_size = :low | :medium | :high @@ -47,7 +45,7 @@ module OpenAI MEDIUM: :medium HIGH: :high - def self?.values: -> ::Array[OpenAI::Models::Responses::WebSearchTool::search_context_size] + def self?.values: -> ::Array[OpenAI::Responses::WebSearchTool::search_context_size] end type user_location = @@ -77,8 +75,6 @@ module OpenAI ?timezone: String?, ?type: :approximate ) -> void - - def to_hash: -> OpenAI::Models::Responses::WebSearchTool::user_location end end end diff --git a/sig/openai/models/responses_model.rbs b/sig/openai/models/responses_model.rbs index bc8de438..42a66641 100644 --- a/sig/openai/models/responses_model.rbs +++ b/sig/openai/models/responses_model.rbs @@ -3,7 +3,7 @@ module OpenAI type responses_model = String | OpenAI::Models::chat_model - | OpenAI::Models::ResponsesModel::responses_only_model + | OpenAI::ResponsesModel::responses_only_model module ResponsesModel extend OpenAI::Internal::Type::Union @@ -22,10 +22,10 @@ module OpenAI COMPUTER_USE_PREVIEW: :"computer-use-preview" COMPUTER_USE_PREVIEW_2025_03_11: :"computer-use-preview-2025-03-11" - def self?.values: -> ::Array[OpenAI::Models::ResponsesModel::responses_only_model] + def self?.values: -> ::Array[OpenAI::ResponsesModel::responses_only_model] end - def self?.variants: -> [String, OpenAI::Models::chat_model, OpenAI::Models::ResponsesModel::responses_only_model] + def self?.variants: -> ::Array[OpenAI::Models::responses_model] end end end diff --git a/sig/openai/models/static_file_chunking_strategy.rbs b/sig/openai/models/static_file_chunking_strategy.rbs index 7c00abb0..0ba93ae4 100644 --- a/sig/openai/models/static_file_chunking_strategy.rbs +++ b/sig/openai/models/static_file_chunking_strategy.rbs @@ -12,8 +12,6 @@ module OpenAI chunk_overlap_tokens: Integer, max_chunk_size_tokens: Integer ) -> void - - def to_hash: -> OpenAI::Models::static_file_chunking_strategy end end end diff --git a/sig/openai/models/static_file_chunking_strategy_object.rbs b/sig/openai/models/static_file_chunking_strategy_object.rbs index 1122e914..6b2d231e 100644 --- a/sig/openai/models/static_file_chunking_strategy_object.rbs +++ b/sig/openai/models/static_file_chunking_strategy_object.rbs @@ -1,19 +1,17 @@ module OpenAI module Models type static_file_chunking_strategy_object = - { static: OpenAI::Models::StaticFileChunkingStrategy, type: :static } + { static: OpenAI::StaticFileChunkingStrategy, type: :static } class StaticFileChunkingStrategyObject < OpenAI::Internal::Type::BaseModel - attr_accessor static: OpenAI::Models::StaticFileChunkingStrategy + attr_accessor static: OpenAI::StaticFileChunkingStrategy attr_accessor type: :static def initialize: ( - static: OpenAI::Models::StaticFileChunkingStrategy, + static: OpenAI::StaticFileChunkingStrategy, ?type: :static ) -> void - - def to_hash: -> OpenAI::Models::static_file_chunking_strategy_object end end end diff --git a/sig/openai/models/static_file_chunking_strategy_object_param.rbs b/sig/openai/models/static_file_chunking_strategy_object_param.rbs index 639a7ea1..c0f5182c 100644 --- a/sig/openai/models/static_file_chunking_strategy_object_param.rbs +++ b/sig/openai/models/static_file_chunking_strategy_object_param.rbs @@ -1,19 +1,17 @@ module OpenAI module Models type static_file_chunking_strategy_object_param = - { static: OpenAI::Models::StaticFileChunkingStrategy, type: :static } + { static: OpenAI::StaticFileChunkingStrategy, type: :static } class StaticFileChunkingStrategyObjectParam < OpenAI::Internal::Type::BaseModel - attr_accessor static: OpenAI::Models::StaticFileChunkingStrategy + attr_accessor static: OpenAI::StaticFileChunkingStrategy attr_accessor type: :static def initialize: ( - static: OpenAI::Models::StaticFileChunkingStrategy, + static: OpenAI::StaticFileChunkingStrategy, ?type: :static ) -> void - - def to_hash: -> OpenAI::Models::static_file_chunking_strategy_object_param end end end diff --git a/sig/openai/models/upload.rbs b/sig/openai/models/upload.rbs index 0a50164d..955ba4fe 100644 --- a/sig/openai/models/upload.rbs +++ b/sig/openai/models/upload.rbs @@ -9,8 +9,8 @@ module OpenAI filename: String, object: :upload, purpose: String, - status: OpenAI::Models::Upload::status, - file: OpenAI::Models::FileObject? + status: OpenAI::Upload::status, + file: OpenAI::FileObject? } class Upload < OpenAI::Internal::Type::BaseModel @@ -28,9 +28,9 @@ module OpenAI attr_accessor purpose: String - attr_accessor status: OpenAI::Models::Upload::status + attr_accessor status: OpenAI::Upload::status - attr_accessor file: OpenAI::Models::FileObject? + attr_accessor file: OpenAI::FileObject? def initialize: ( id: String, @@ -39,13 +39,11 @@ module OpenAI expires_at: Integer, filename: String, purpose: String, - status: OpenAI::Models::Upload::status, - ?file: OpenAI::Models::FileObject?, + status: OpenAI::Upload::status, + ?file: OpenAI::FileObject?, ?object: :upload ) -> void - def to_hash: -> OpenAI::Models::upload - type status = :pending | :completed | :cancelled | :expired module Status @@ -56,7 +54,7 @@ module OpenAI CANCELLED: :cancelled EXPIRED: :expired - def self?.values: -> ::Array[OpenAI::Models::Upload::status] + def self?.values: -> ::Array[OpenAI::Upload::status] end end end diff --git a/sig/openai/models/upload_cancel_params.rbs b/sig/openai/models/upload_cancel_params.rbs index 669ffc83..c5cb5b12 100644 --- a/sig/openai/models/upload_cancel_params.rbs +++ b/sig/openai/models/upload_cancel_params.rbs @@ -8,8 +8,6 @@ module OpenAI include OpenAI::Internal::Type::RequestParameters def initialize: (?request_options: OpenAI::request_opts) -> void - - def to_hash: -> OpenAI::Models::upload_cancel_params end end end diff --git a/sig/openai/models/upload_complete_params.rbs b/sig/openai/models/upload_complete_params.rbs index 5cfff932..4bdf3d87 100644 --- a/sig/openai/models/upload_complete_params.rbs +++ b/sig/openai/models/upload_complete_params.rbs @@ -19,8 +19,6 @@ module OpenAI ?md5: String, ?request_options: OpenAI::request_opts ) -> void - - def to_hash: -> OpenAI::Models::upload_complete_params end end end diff --git a/sig/openai/models/upload_create_params.rbs b/sig/openai/models/upload_create_params.rbs index 9b68eb00..dce638fe 100644 --- a/sig/openai/models/upload_create_params.rbs +++ b/sig/openai/models/upload_create_params.rbs @@ -28,8 +28,6 @@ module OpenAI purpose: OpenAI::Models::file_purpose, ?request_options: OpenAI::request_opts ) -> void - - def to_hash: -> OpenAI::Models::upload_create_params end end end diff --git a/sig/openai/models/uploads/part_create_params.rbs b/sig/openai/models/uploads/part_create_params.rbs index f3ea9aa1..7a94c0ae 100644 --- a/sig/openai/models/uploads/part_create_params.rbs +++ b/sig/openai/models/uploads/part_create_params.rbs @@ -15,8 +15,6 @@ module OpenAI data: Pathname | StringIO | IO | OpenAI::FilePart, ?request_options: OpenAI::request_opts ) -> void - - def to_hash: -> OpenAI::Models::Uploads::part_create_params end end end diff --git a/sig/openai/models/uploads/upload_part.rbs b/sig/openai/models/uploads/upload_part.rbs index 93530d14..17613909 100644 --- a/sig/openai/models/uploads/upload_part.rbs +++ b/sig/openai/models/uploads/upload_part.rbs @@ -26,8 +26,6 @@ module OpenAI upload_id: String, ?object: :"upload.part" ) -> void - - def to_hash: -> OpenAI::Models::Uploads::upload_part end end end diff --git a/sig/openai/models/vector_store.rbs b/sig/openai/models/vector_store.rbs index a29d28eb..5ba3aa0f 100644 --- a/sig/openai/models/vector_store.rbs +++ b/sig/openai/models/vector_store.rbs @@ -4,14 +4,14 @@ module OpenAI { id: String, created_at: Integer, - file_counts: OpenAI::Models::VectorStore::FileCounts, + file_counts: OpenAI::VectorStore::FileCounts, last_active_at: Integer?, metadata: OpenAI::Models::metadata?, name: String, object: :vector_store, - status: OpenAI::Models::VectorStore::status, + status: OpenAI::VectorStore::status, usage_bytes: Integer, - expires_after: OpenAI::Models::VectorStore::ExpiresAfter, + expires_after: OpenAI::VectorStore::ExpiresAfter, expires_at: Integer? } @@ -20,7 +20,7 @@ module OpenAI attr_accessor created_at: Integer - attr_accessor file_counts: OpenAI::Models::VectorStore::FileCounts + attr_accessor file_counts: OpenAI::VectorStore::FileCounts attr_accessor last_active_at: Integer? @@ -30,34 +30,32 @@ module OpenAI attr_accessor object: :vector_store - attr_accessor status: OpenAI::Models::VectorStore::status + attr_accessor status: OpenAI::VectorStore::status attr_accessor usage_bytes: Integer - attr_reader expires_after: OpenAI::Models::VectorStore::ExpiresAfter? + attr_reader expires_after: OpenAI::VectorStore::ExpiresAfter? def expires_after=: ( - OpenAI::Models::VectorStore::ExpiresAfter - ) -> OpenAI::Models::VectorStore::ExpiresAfter + OpenAI::VectorStore::ExpiresAfter + ) -> OpenAI::VectorStore::ExpiresAfter attr_accessor expires_at: Integer? def initialize: ( id: String, created_at: Integer, - file_counts: OpenAI::Models::VectorStore::FileCounts, + file_counts: OpenAI::VectorStore::FileCounts, last_active_at: Integer?, metadata: OpenAI::Models::metadata?, name: String, - status: OpenAI::Models::VectorStore::status, + status: OpenAI::VectorStore::status, usage_bytes: Integer, - ?expires_after: OpenAI::Models::VectorStore::ExpiresAfter, + ?expires_after: OpenAI::VectorStore::ExpiresAfter, ?expires_at: Integer?, ?object: :vector_store ) -> void - def to_hash: -> OpenAI::Models::vector_store - type file_counts = { cancelled: Integer, @@ -85,8 +83,6 @@ module OpenAI in_progress: Integer, total: Integer ) -> void - - def to_hash: -> OpenAI::Models::VectorStore::file_counts end type status = :expired | :in_progress | :completed @@ -98,7 +94,7 @@ module OpenAI IN_PROGRESS: :in_progress COMPLETED: :completed - def self?.values: -> ::Array[OpenAI::Models::VectorStore::status] + def self?.values: -> ::Array[OpenAI::VectorStore::status] end type expires_after = { anchor: :last_active_at, days: Integer } @@ -109,8 +105,6 @@ module OpenAI attr_accessor days: Integer def initialize: (days: Integer, ?anchor: :last_active_at) -> void - - def to_hash: -> OpenAI::Models::VectorStore::expires_after end end end diff --git a/sig/openai/models/vector_store_create_params.rbs b/sig/openai/models/vector_store_create_params.rbs index accb9698..67a550f7 100644 --- a/sig/openai/models/vector_store_create_params.rbs +++ b/sig/openai/models/vector_store_create_params.rbs @@ -3,7 +3,7 @@ module OpenAI type vector_store_create_params = { chunking_strategy: OpenAI::Models::file_chunking_strategy_param, - expires_after: OpenAI::Models::VectorStoreCreateParams::ExpiresAfter, + expires_after: OpenAI::VectorStoreCreateParams::ExpiresAfter, file_ids: ::Array[String], metadata: OpenAI::Models::metadata?, name: String @@ -20,11 +20,11 @@ module OpenAI OpenAI::Models::file_chunking_strategy_param ) -> OpenAI::Models::file_chunking_strategy_param - attr_reader expires_after: OpenAI::Models::VectorStoreCreateParams::ExpiresAfter? + attr_reader expires_after: OpenAI::VectorStoreCreateParams::ExpiresAfter? def expires_after=: ( - OpenAI::Models::VectorStoreCreateParams::ExpiresAfter - ) -> OpenAI::Models::VectorStoreCreateParams::ExpiresAfter + OpenAI::VectorStoreCreateParams::ExpiresAfter + ) -> OpenAI::VectorStoreCreateParams::ExpiresAfter attr_reader file_ids: ::Array[String]? @@ -38,15 +38,13 @@ module OpenAI def initialize: ( ?chunking_strategy: OpenAI::Models::file_chunking_strategy_param, - ?expires_after: OpenAI::Models::VectorStoreCreateParams::ExpiresAfter, + ?expires_after: OpenAI::VectorStoreCreateParams::ExpiresAfter, ?file_ids: ::Array[String], ?metadata: OpenAI::Models::metadata?, ?name: String, ?request_options: OpenAI::request_opts ) -> void - def to_hash: -> OpenAI::Models::vector_store_create_params - type expires_after = { anchor: :last_active_at, days: Integer } class ExpiresAfter < OpenAI::Internal::Type::BaseModel @@ -55,8 +53,6 @@ module OpenAI attr_accessor days: Integer def initialize: (days: Integer, ?anchor: :last_active_at) -> void - - def to_hash: -> OpenAI::Models::VectorStoreCreateParams::expires_after end end end diff --git a/sig/openai/models/vector_store_delete_params.rbs b/sig/openai/models/vector_store_delete_params.rbs index 1dfb12b4..89da672f 100644 --- a/sig/openai/models/vector_store_delete_params.rbs +++ b/sig/openai/models/vector_store_delete_params.rbs @@ -8,8 +8,6 @@ module OpenAI include OpenAI::Internal::Type::RequestParameters def initialize: (?request_options: OpenAI::request_opts) -> void - - def to_hash: -> OpenAI::Models::vector_store_delete_params end end end diff --git a/sig/openai/models/vector_store_deleted.rbs b/sig/openai/models/vector_store_deleted.rbs index 1c8ca3ae..8bc51626 100644 --- a/sig/openai/models/vector_store_deleted.rbs +++ b/sig/openai/models/vector_store_deleted.rbs @@ -15,8 +15,6 @@ module OpenAI deleted: bool, ?object: :"vector_store.deleted" ) -> void - - def to_hash: -> OpenAI::Models::vector_store_deleted end end end diff --git a/sig/openai/models/vector_store_list_params.rbs b/sig/openai/models/vector_store_list_params.rbs index 5c2aa3f9..ed5b3079 100644 --- a/sig/openai/models/vector_store_list_params.rbs +++ b/sig/openai/models/vector_store_list_params.rbs @@ -39,8 +39,6 @@ module OpenAI ?request_options: OpenAI::request_opts ) -> void - def to_hash: -> OpenAI::Models::vector_store_list_params - type order = :asc | :desc module Order diff --git a/sig/openai/models/vector_store_retrieve_params.rbs b/sig/openai/models/vector_store_retrieve_params.rbs index 51b51332..6b466528 100644 --- a/sig/openai/models/vector_store_retrieve_params.rbs +++ b/sig/openai/models/vector_store_retrieve_params.rbs @@ -8,8 +8,6 @@ module OpenAI include OpenAI::Internal::Type::RequestParameters def initialize: (?request_options: OpenAI::request_opts) -> void - - def to_hash: -> OpenAI::Models::vector_store_retrieve_params end end end diff --git a/sig/openai/models/vector_store_search_params.rbs b/sig/openai/models/vector_store_search_params.rbs index 9d571eee..863ea4ab 100644 --- a/sig/openai/models/vector_store_search_params.rbs +++ b/sig/openai/models/vector_store_search_params.rbs @@ -5,7 +5,7 @@ module OpenAI query: OpenAI::Models::VectorStoreSearchParams::query, filters: OpenAI::Models::VectorStoreSearchParams::filters, max_num_results: Integer, - ranking_options: OpenAI::Models::VectorStoreSearchParams::RankingOptions, + ranking_options: OpenAI::VectorStoreSearchParams::RankingOptions, rewrite_query: bool } & OpenAI::Internal::Type::request_parameters @@ -26,11 +26,11 @@ module OpenAI def max_num_results=: (Integer) -> Integer - attr_reader ranking_options: OpenAI::Models::VectorStoreSearchParams::RankingOptions? + attr_reader ranking_options: OpenAI::VectorStoreSearchParams::RankingOptions? def ranking_options=: ( - OpenAI::Models::VectorStoreSearchParams::RankingOptions - ) -> OpenAI::Models::VectorStoreSearchParams::RankingOptions + OpenAI::VectorStoreSearchParams::RankingOptions + ) -> OpenAI::VectorStoreSearchParams::RankingOptions attr_reader rewrite_query: bool? @@ -40,56 +40,51 @@ module OpenAI query: OpenAI::Models::VectorStoreSearchParams::query, ?filters: OpenAI::Models::VectorStoreSearchParams::filters, ?max_num_results: Integer, - ?ranking_options: OpenAI::Models::VectorStoreSearchParams::RankingOptions, + ?ranking_options: OpenAI::VectorStoreSearchParams::RankingOptions, ?rewrite_query: bool, ?request_options: OpenAI::request_opts ) -> void - def to_hash: -> OpenAI::Models::vector_store_search_params - type query = String | ::Array[String] module Query extend OpenAI::Internal::Type::Union - def self?.variants: -> [String, ::Array[String]] + def self?.variants: -> ::Array[OpenAI::Models::VectorStoreSearchParams::query] StringArray: OpenAI::Internal::Type::Converter end - type filters = - OpenAI::Models::ComparisonFilter | OpenAI::Models::CompoundFilter + type filters = OpenAI::ComparisonFilter | OpenAI::CompoundFilter module Filters extend OpenAI::Internal::Type::Union - def self?.variants: -> [OpenAI::Models::ComparisonFilter, OpenAI::Models::CompoundFilter] + def self?.variants: -> ::Array[OpenAI::Models::VectorStoreSearchParams::filters] end type ranking_options = { - ranker: OpenAI::Models::VectorStoreSearchParams::RankingOptions::ranker, + ranker: OpenAI::VectorStoreSearchParams::RankingOptions::ranker, score_threshold: Float } class RankingOptions < OpenAI::Internal::Type::BaseModel - attr_reader ranker: OpenAI::Models::VectorStoreSearchParams::RankingOptions::ranker? + attr_reader ranker: OpenAI::VectorStoreSearchParams::RankingOptions::ranker? def ranker=: ( - OpenAI::Models::VectorStoreSearchParams::RankingOptions::ranker - ) -> OpenAI::Models::VectorStoreSearchParams::RankingOptions::ranker + OpenAI::VectorStoreSearchParams::RankingOptions::ranker + ) -> OpenAI::VectorStoreSearchParams::RankingOptions::ranker attr_reader score_threshold: Float? def score_threshold=: (Float) -> Float def initialize: ( - ?ranker: OpenAI::Models::VectorStoreSearchParams::RankingOptions::ranker, + ?ranker: OpenAI::VectorStoreSearchParams::RankingOptions::ranker, ?score_threshold: Float ) -> void - def to_hash: -> OpenAI::Models::VectorStoreSearchParams::ranking_options - type ranker = :auto | :"default-2024-11-15" module Ranker @@ -98,7 +93,7 @@ module OpenAI AUTO: :auto DEFAULT_2024_11_15: :"default-2024-11-15" - def self?.values: -> ::Array[OpenAI::Models::VectorStoreSearchParams::RankingOptions::ranker] + def self?.values: -> ::Array[OpenAI::VectorStoreSearchParams::RankingOptions::ranker] end end end diff --git a/sig/openai/models/vector_store_search_response.rbs b/sig/openai/models/vector_store_search_response.rbs index d7c590bd..2c977b03 100644 --- a/sig/openai/models/vector_store_search_response.rbs +++ b/sig/openai/models/vector_store_search_response.rbs @@ -28,14 +28,12 @@ module OpenAI score: Float ) -> void - def to_hash: -> OpenAI::Models::vector_store_search_response - type attribute = String | Float | bool module Attribute extend OpenAI::Internal::Type::Union - def self?.variants: -> [String, Float, bool] + def self?.variants: -> ::Array[OpenAI::Models::VectorStoreSearchResponse::attribute] end type content = @@ -54,8 +52,6 @@ module OpenAI type: OpenAI::Models::VectorStoreSearchResponse::Content::type_ ) -> void - def to_hash: -> OpenAI::Models::VectorStoreSearchResponse::content - type type_ = :text module Type diff --git a/sig/openai/models/vector_store_update_params.rbs b/sig/openai/models/vector_store_update_params.rbs index f8258d41..cb5a0433 100644 --- a/sig/openai/models/vector_store_update_params.rbs +++ b/sig/openai/models/vector_store_update_params.rbs @@ -2,7 +2,7 @@ module OpenAI module Models type vector_store_update_params = { - expires_after: OpenAI::Models::VectorStoreUpdateParams::ExpiresAfter?, + expires_after: OpenAI::VectorStoreUpdateParams::ExpiresAfter?, metadata: OpenAI::Models::metadata?, name: String? } @@ -12,21 +12,19 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters - attr_accessor expires_after: OpenAI::Models::VectorStoreUpdateParams::ExpiresAfter? + attr_accessor expires_after: OpenAI::VectorStoreUpdateParams::ExpiresAfter? attr_accessor metadata: OpenAI::Models::metadata? attr_accessor name: String? def initialize: ( - ?expires_after: OpenAI::Models::VectorStoreUpdateParams::ExpiresAfter?, + ?expires_after: OpenAI::VectorStoreUpdateParams::ExpiresAfter?, ?metadata: OpenAI::Models::metadata?, ?name: String?, ?request_options: OpenAI::request_opts ) -> void - def to_hash: -> OpenAI::Models::vector_store_update_params - type expires_after = { anchor: :last_active_at, days: Integer } class ExpiresAfter < OpenAI::Internal::Type::BaseModel @@ -35,8 +33,6 @@ module OpenAI attr_accessor days: Integer def initialize: (days: Integer, ?anchor: :last_active_at) -> void - - def to_hash: -> OpenAI::Models::VectorStoreUpdateParams::expires_after end end end diff --git a/sig/openai/models/vector_stores/file_batch_cancel_params.rbs b/sig/openai/models/vector_stores/file_batch_cancel_params.rbs index 26c9d893..0ee2d4d8 100644 --- a/sig/openai/models/vector_stores/file_batch_cancel_params.rbs +++ b/sig/openai/models/vector_stores/file_batch_cancel_params.rbs @@ -14,8 +14,6 @@ module OpenAI vector_store_id: String, ?request_options: OpenAI::request_opts ) -> void - - def to_hash: -> OpenAI::Models::VectorStores::file_batch_cancel_params end end end diff --git a/sig/openai/models/vector_stores/file_batch_create_params.rbs b/sig/openai/models/vector_stores/file_batch_create_params.rbs index 03b56b5a..3715958c 100644 --- a/sig/openai/models/vector_stores/file_batch_create_params.rbs +++ b/sig/openai/models/vector_stores/file_batch_create_params.rbs @@ -4,7 +4,7 @@ module OpenAI type file_batch_create_params = { file_ids: ::Array[String], - attributes: ::Hash[Symbol, OpenAI::Models::VectorStores::FileBatchCreateParams::attribute]?, + attributes: ::Hash[Symbol, OpenAI::VectorStores::FileBatchCreateParams::attribute]?, chunking_strategy: OpenAI::Models::file_chunking_strategy_param } & OpenAI::Internal::Type::request_parameters @@ -15,7 +15,7 @@ module OpenAI attr_accessor file_ids: ::Array[String] - attr_accessor attributes: ::Hash[Symbol, OpenAI::Models::VectorStores::FileBatchCreateParams::attribute]? + attr_accessor attributes: ::Hash[Symbol, OpenAI::VectorStores::FileBatchCreateParams::attribute]? attr_reader chunking_strategy: OpenAI::Models::file_chunking_strategy_param? @@ -25,19 +25,17 @@ module OpenAI def initialize: ( file_ids: ::Array[String], - ?attributes: ::Hash[Symbol, OpenAI::Models::VectorStores::FileBatchCreateParams::attribute]?, + ?attributes: ::Hash[Symbol, OpenAI::VectorStores::FileBatchCreateParams::attribute]?, ?chunking_strategy: OpenAI::Models::file_chunking_strategy_param, ?request_options: OpenAI::request_opts ) -> void - def to_hash: -> OpenAI::Models::VectorStores::file_batch_create_params - type attribute = String | Float | bool module Attribute extend OpenAI::Internal::Type::Union - def self?.variants: -> [String, Float, bool] + def self?.variants: -> ::Array[OpenAI::VectorStores::FileBatchCreateParams::attribute] end end end diff --git a/sig/openai/models/vector_stores/file_batch_list_files_params.rbs b/sig/openai/models/vector_stores/file_batch_list_files_params.rbs index 87868689..918e28f0 100644 --- a/sig/openai/models/vector_stores/file_batch_list_files_params.rbs +++ b/sig/openai/models/vector_stores/file_batch_list_files_params.rbs @@ -52,8 +52,6 @@ module OpenAI ?request_options: OpenAI::request_opts ) -> void - def to_hash: -> OpenAI::Models::VectorStores::file_batch_list_files_params - type filter = :in_progress | :completed | :failed | :cancelled module Filter diff --git a/sig/openai/models/vector_stores/file_batch_retrieve_params.rbs b/sig/openai/models/vector_stores/file_batch_retrieve_params.rbs index b43f76b8..1e21e9d1 100644 --- a/sig/openai/models/vector_stores/file_batch_retrieve_params.rbs +++ b/sig/openai/models/vector_stores/file_batch_retrieve_params.rbs @@ -14,8 +14,6 @@ module OpenAI vector_store_id: String, ?request_options: OpenAI::request_opts ) -> void - - def to_hash: -> OpenAI::Models::VectorStores::file_batch_retrieve_params end end end diff --git a/sig/openai/models/vector_stores/file_content_params.rbs b/sig/openai/models/vector_stores/file_content_params.rbs index a3f37f30..5d35fcf1 100644 --- a/sig/openai/models/vector_stores/file_content_params.rbs +++ b/sig/openai/models/vector_stores/file_content_params.rbs @@ -14,8 +14,6 @@ module OpenAI vector_store_id: String, ?request_options: OpenAI::request_opts ) -> void - - def to_hash: -> OpenAI::Models::VectorStores::file_content_params end end end diff --git a/sig/openai/models/vector_stores/file_content_response.rbs b/sig/openai/models/vector_stores/file_content_response.rbs index df2aa45a..23306b97 100644 --- a/sig/openai/models/vector_stores/file_content_response.rbs +++ b/sig/openai/models/vector_stores/file_content_response.rbs @@ -13,8 +13,6 @@ module OpenAI def type=: (String) -> String def initialize: (?text: String, ?type: String) -> void - - def to_hash: -> OpenAI::Models::VectorStores::file_content_response end end end diff --git a/sig/openai/models/vector_stores/file_create_params.rbs b/sig/openai/models/vector_stores/file_create_params.rbs index 9a396ee0..29469ef1 100644 --- a/sig/openai/models/vector_stores/file_create_params.rbs +++ b/sig/openai/models/vector_stores/file_create_params.rbs @@ -4,7 +4,7 @@ module OpenAI type file_create_params = { file_id: String, - attributes: ::Hash[Symbol, OpenAI::Models::VectorStores::FileCreateParams::attribute]?, + attributes: ::Hash[Symbol, OpenAI::VectorStores::FileCreateParams::attribute]?, chunking_strategy: OpenAI::Models::file_chunking_strategy_param } & OpenAI::Internal::Type::request_parameters @@ -15,7 +15,7 @@ module OpenAI attr_accessor file_id: String - attr_accessor attributes: ::Hash[Symbol, OpenAI::Models::VectorStores::FileCreateParams::attribute]? + attr_accessor attributes: ::Hash[Symbol, OpenAI::VectorStores::FileCreateParams::attribute]? attr_reader chunking_strategy: OpenAI::Models::file_chunking_strategy_param? @@ -25,19 +25,17 @@ module OpenAI def initialize: ( file_id: String, - ?attributes: ::Hash[Symbol, OpenAI::Models::VectorStores::FileCreateParams::attribute]?, + ?attributes: ::Hash[Symbol, OpenAI::VectorStores::FileCreateParams::attribute]?, ?chunking_strategy: OpenAI::Models::file_chunking_strategy_param, ?request_options: OpenAI::request_opts ) -> void - def to_hash: -> OpenAI::Models::VectorStores::file_create_params - type attribute = String | Float | bool module Attribute extend OpenAI::Internal::Type::Union - def self?.variants: -> [String, Float, bool] + def self?.variants: -> ::Array[OpenAI::VectorStores::FileCreateParams::attribute] end end end diff --git a/sig/openai/models/vector_stores/file_delete_params.rbs b/sig/openai/models/vector_stores/file_delete_params.rbs index a80ed26d..5fc9986b 100644 --- a/sig/openai/models/vector_stores/file_delete_params.rbs +++ b/sig/openai/models/vector_stores/file_delete_params.rbs @@ -14,8 +14,6 @@ module OpenAI vector_store_id: String, ?request_options: OpenAI::request_opts ) -> void - - def to_hash: -> OpenAI::Models::VectorStores::file_delete_params end end end diff --git a/sig/openai/models/vector_stores/file_list_params.rbs b/sig/openai/models/vector_stores/file_list_params.rbs index 7b916738..623629d4 100644 --- a/sig/openai/models/vector_stores/file_list_params.rbs +++ b/sig/openai/models/vector_stores/file_list_params.rbs @@ -48,8 +48,6 @@ module OpenAI ?request_options: OpenAI::request_opts ) -> void - def to_hash: -> OpenAI::Models::VectorStores::file_list_params - type filter = :in_progress | :completed | :failed | :cancelled module Filter diff --git a/sig/openai/models/vector_stores/file_retrieve_params.rbs b/sig/openai/models/vector_stores/file_retrieve_params.rbs index 266f9e3c..d46822ed 100644 --- a/sig/openai/models/vector_stores/file_retrieve_params.rbs +++ b/sig/openai/models/vector_stores/file_retrieve_params.rbs @@ -14,8 +14,6 @@ module OpenAI vector_store_id: String, ?request_options: OpenAI::request_opts ) -> void - - def to_hash: -> OpenAI::Models::VectorStores::file_retrieve_params end end end diff --git a/sig/openai/models/vector_stores/file_update_params.rbs b/sig/openai/models/vector_stores/file_update_params.rbs index 7b75e4f2..58700418 100644 --- a/sig/openai/models/vector_stores/file_update_params.rbs +++ b/sig/openai/models/vector_stores/file_update_params.rbs @@ -4,7 +4,7 @@ module OpenAI type file_update_params = { vector_store_id: String, - attributes: ::Hash[Symbol, OpenAI::Models::VectorStores::FileUpdateParams::attribute]? + attributes: ::Hash[Symbol, OpenAI::VectorStores::FileUpdateParams::attribute]? } & OpenAI::Internal::Type::request_parameters @@ -14,22 +14,20 @@ module OpenAI attr_accessor vector_store_id: String - attr_accessor attributes: ::Hash[Symbol, OpenAI::Models::VectorStores::FileUpdateParams::attribute]? + attr_accessor attributes: ::Hash[Symbol, OpenAI::VectorStores::FileUpdateParams::attribute]? def initialize: ( vector_store_id: String, - attributes: ::Hash[Symbol, OpenAI::Models::VectorStores::FileUpdateParams::attribute]?, + attributes: ::Hash[Symbol, OpenAI::VectorStores::FileUpdateParams::attribute]?, ?request_options: OpenAI::request_opts ) -> void - def to_hash: -> OpenAI::Models::VectorStores::file_update_params - type attribute = String | Float | bool module Attribute extend OpenAI::Internal::Type::Union - def self?.variants: -> [String, Float, bool] + def self?.variants: -> ::Array[OpenAI::VectorStores::FileUpdateParams::attribute] end end end diff --git a/sig/openai/models/vector_stores/vector_store_file.rbs b/sig/openai/models/vector_stores/vector_store_file.rbs index 7039aa57..5bbb1310 100644 --- a/sig/openai/models/vector_stores/vector_store_file.rbs +++ b/sig/openai/models/vector_stores/vector_store_file.rbs @@ -7,12 +7,12 @@ module OpenAI { id: String, created_at: Integer, - last_error: OpenAI::Models::VectorStores::VectorStoreFile::LastError?, + last_error: OpenAI::VectorStores::VectorStoreFile::LastError?, object: :"vector_store.file", - status: OpenAI::Models::VectorStores::VectorStoreFile::status, + status: OpenAI::VectorStores::VectorStoreFile::status, usage_bytes: Integer, vector_store_id: String, - attributes: ::Hash[Symbol, OpenAI::Models::VectorStores::VectorStoreFile::attribute]?, + attributes: ::Hash[Symbol, OpenAI::VectorStores::VectorStoreFile::attribute]?, chunking_strategy: OpenAI::Models::file_chunking_strategy } @@ -21,17 +21,17 @@ module OpenAI attr_accessor created_at: Integer - attr_accessor last_error: OpenAI::Models::VectorStores::VectorStoreFile::LastError? + attr_accessor last_error: OpenAI::VectorStores::VectorStoreFile::LastError? attr_accessor object: :"vector_store.file" - attr_accessor status: OpenAI::Models::VectorStores::VectorStoreFile::status + attr_accessor status: OpenAI::VectorStores::VectorStoreFile::status attr_accessor usage_bytes: Integer attr_accessor vector_store_id: String - attr_accessor attributes: ::Hash[Symbol, OpenAI::Models::VectorStores::VectorStoreFile::attribute]? + attr_accessor attributes: ::Hash[Symbol, OpenAI::VectorStores::VectorStoreFile::attribute]? attr_reader chunking_strategy: OpenAI::Models::file_chunking_strategy? @@ -42,35 +42,31 @@ module OpenAI def initialize: ( id: String, created_at: Integer, - last_error: OpenAI::Models::VectorStores::VectorStoreFile::LastError?, - status: OpenAI::Models::VectorStores::VectorStoreFile::status, + last_error: OpenAI::VectorStores::VectorStoreFile::LastError?, + status: OpenAI::VectorStores::VectorStoreFile::status, usage_bytes: Integer, vector_store_id: String, - ?attributes: ::Hash[Symbol, OpenAI::Models::VectorStores::VectorStoreFile::attribute]?, + ?attributes: ::Hash[Symbol, OpenAI::VectorStores::VectorStoreFile::attribute]?, ?chunking_strategy: OpenAI::Models::file_chunking_strategy, ?object: :"vector_store.file" ) -> void - def to_hash: -> OpenAI::Models::VectorStores::vector_store_file - type last_error = { - code: OpenAI::Models::VectorStores::VectorStoreFile::LastError::code, + code: OpenAI::VectorStores::VectorStoreFile::LastError::code, message: String } class LastError < OpenAI::Internal::Type::BaseModel - attr_accessor code: OpenAI::Models::VectorStores::VectorStoreFile::LastError::code + attr_accessor code: OpenAI::VectorStores::VectorStoreFile::LastError::code attr_accessor message: String def initialize: ( - code: OpenAI::Models::VectorStores::VectorStoreFile::LastError::code, + code: OpenAI::VectorStores::VectorStoreFile::LastError::code, message: String ) -> void - def to_hash: -> OpenAI::Models::VectorStores::VectorStoreFile::last_error - type code = :server_error | :unsupported_file | :invalid_file module Code @@ -80,7 +76,7 @@ module OpenAI UNSUPPORTED_FILE: :unsupported_file INVALID_FILE: :invalid_file - def self?.values: -> ::Array[OpenAI::Models::VectorStores::VectorStoreFile::LastError::code] + def self?.values: -> ::Array[OpenAI::VectorStores::VectorStoreFile::LastError::code] end end @@ -94,7 +90,7 @@ module OpenAI CANCELLED: :cancelled FAILED: :failed - def self?.values: -> ::Array[OpenAI::Models::VectorStores::VectorStoreFile::status] + def self?.values: -> ::Array[OpenAI::VectorStores::VectorStoreFile::status] end type attribute = String | Float | bool @@ -102,7 +98,7 @@ module OpenAI module Attribute extend OpenAI::Internal::Type::Union - def self?.variants: -> [String, Float, bool] + def self?.variants: -> ::Array[OpenAI::VectorStores::VectorStoreFile::attribute] end end end diff --git a/sig/openai/models/vector_stores/vector_store_file_batch.rbs b/sig/openai/models/vector_stores/vector_store_file_batch.rbs index 6c286435..b21e96bd 100644 --- a/sig/openai/models/vector_stores/vector_store_file_batch.rbs +++ b/sig/openai/models/vector_stores/vector_store_file_batch.rbs @@ -7,9 +7,9 @@ module OpenAI { id: String, created_at: Integer, - file_counts: OpenAI::Models::VectorStores::VectorStoreFileBatch::FileCounts, + file_counts: OpenAI::VectorStores::VectorStoreFileBatch::FileCounts, object: :"vector_store.files_batch", - status: OpenAI::Models::VectorStores::VectorStoreFileBatch::status, + status: OpenAI::VectorStores::VectorStoreFileBatch::status, vector_store_id: String } @@ -18,25 +18,23 @@ module OpenAI attr_accessor created_at: Integer - attr_accessor file_counts: OpenAI::Models::VectorStores::VectorStoreFileBatch::FileCounts + attr_accessor file_counts: OpenAI::VectorStores::VectorStoreFileBatch::FileCounts attr_accessor object: :"vector_store.files_batch" - attr_accessor status: OpenAI::Models::VectorStores::VectorStoreFileBatch::status + attr_accessor status: OpenAI::VectorStores::VectorStoreFileBatch::status attr_accessor vector_store_id: String def initialize: ( id: String, created_at: Integer, - file_counts: OpenAI::Models::VectorStores::VectorStoreFileBatch::FileCounts, - status: OpenAI::Models::VectorStores::VectorStoreFileBatch::status, + file_counts: OpenAI::VectorStores::VectorStoreFileBatch::FileCounts, + status: OpenAI::VectorStores::VectorStoreFileBatch::status, vector_store_id: String, ?object: :"vector_store.files_batch" ) -> void - def to_hash: -> OpenAI::Models::VectorStores::vector_store_file_batch - type file_counts = { cancelled: Integer, @@ -64,8 +62,6 @@ module OpenAI in_progress: Integer, total: Integer ) -> void - - def to_hash: -> OpenAI::Models::VectorStores::VectorStoreFileBatch::file_counts end type status = :in_progress | :completed | :cancelled | :failed @@ -78,7 +74,7 @@ module OpenAI CANCELLED: :cancelled FAILED: :failed - def self?.values: -> ::Array[OpenAI::Models::VectorStores::VectorStoreFileBatch::status] + def self?.values: -> ::Array[OpenAI::VectorStores::VectorStoreFileBatch::status] end end end diff --git a/sig/openai/models/vector_stores/vector_store_file_deleted.rbs b/sig/openai/models/vector_stores/vector_store_file_deleted.rbs index 15ae080f..d9d9038a 100644 --- a/sig/openai/models/vector_stores/vector_store_file_deleted.rbs +++ b/sig/openai/models/vector_stores/vector_store_file_deleted.rbs @@ -18,8 +18,6 @@ module OpenAI deleted: bool, ?object: :"vector_store.file.deleted" ) -> void - - def to_hash: -> OpenAI::Models::VectorStores::vector_store_file_deleted end end end diff --git a/sig/openai/request_options.rbs b/sig/openai/request_options.rbs index a3ac246f..0b21f3e7 100644 --- a/sig/openai/request_options.rbs +++ b/sig/openai/request_options.rbs @@ -13,7 +13,7 @@ module OpenAI } class RequestOptions < OpenAI::Internal::Type::BaseModel - def self.validate!: (self | ::Hash[Symbol, top] opts) -> void + def self.validate!: (OpenAI::request_opts opts) -> void attr_accessor idempotency_key: String? diff --git a/sig/openai/resources/audio/transcriptions.rbs b/sig/openai/resources/audio/transcriptions.rbs index 50dccae8..6877c0f6 100644 --- a/sig/openai/resources/audio/transcriptions.rbs +++ b/sig/openai/resources/audio/transcriptions.rbs @@ -10,7 +10,7 @@ module OpenAI ?prompt: String, ?response_format: OpenAI::Models::audio_response_format, ?temperature: Float, - ?timestamp_granularities: ::Array[OpenAI::Models::Audio::TranscriptionCreateParams::timestamp_granularity], + ?timestamp_granularities: ::Array[OpenAI::Audio::TranscriptionCreateParams::timestamp_granularity], ?request_options: OpenAI::request_opts ) -> OpenAI::Models::Audio::transcription_create_response @@ -22,7 +22,7 @@ module OpenAI ?prompt: String, ?response_format: OpenAI::Models::audio_response_format, ?temperature: Float, - ?timestamp_granularities: ::Array[OpenAI::Models::Audio::TranscriptionCreateParams::timestamp_granularity], + ?timestamp_granularities: ::Array[OpenAI::Audio::TranscriptionCreateParams::timestamp_granularity], ?request_options: OpenAI::request_opts ) -> OpenAI::Internal::Stream[OpenAI::Models::Audio::transcription_stream_event] diff --git a/sig/openai/resources/batches.rbs b/sig/openai/resources/batches.rbs index 338c2671..b5382fa1 100644 --- a/sig/openai/resources/batches.rbs +++ b/sig/openai/resources/batches.rbs @@ -7,23 +7,23 @@ module OpenAI input_file_id: String, ?metadata: OpenAI::Models::metadata?, ?request_options: OpenAI::request_opts - ) -> OpenAI::Models::Batch + ) -> OpenAI::Batch def retrieve: ( String batch_id, ?request_options: OpenAI::request_opts - ) -> OpenAI::Models::Batch + ) -> OpenAI::Batch def list: ( ?after: String, ?limit: Integer, ?request_options: OpenAI::request_opts - ) -> OpenAI::Internal::CursorPage[OpenAI::Models::Batch] + ) -> OpenAI::Internal::CursorPage[OpenAI::Batch] def cancel: ( String batch_id, ?request_options: OpenAI::request_opts - ) -> OpenAI::Models::Batch + ) -> OpenAI::Batch def initialize: (client: OpenAI::Client) -> void end diff --git a/sig/openai/resources/beta/assistants.rbs b/sig/openai/resources/beta/assistants.rbs index fa36413e..223b3916 100644 --- a/sig/openai/resources/beta/assistants.rbs +++ b/sig/openai/resources/beta/assistants.rbs @@ -11,16 +11,16 @@ module OpenAI ?reasoning_effort: OpenAI::Models::reasoning_effort?, ?response_format: OpenAI::Models::Beta::assistant_response_format_option?, ?temperature: Float?, - ?tool_resources: OpenAI::Models::Beta::AssistantCreateParams::ToolResources?, + ?tool_resources: OpenAI::Beta::AssistantCreateParams::ToolResources?, ?tools: ::Array[OpenAI::Models::Beta::assistant_tool], ?top_p: Float?, ?request_options: OpenAI::request_opts - ) -> OpenAI::Models::Beta::Assistant + ) -> OpenAI::Beta::Assistant def retrieve: ( String assistant_id, ?request_options: OpenAI::request_opts - ) -> OpenAI::Models::Beta::Assistant + ) -> OpenAI::Beta::Assistant def update: ( String assistant_id, @@ -32,11 +32,11 @@ module OpenAI ?reasoning_effort: OpenAI::Models::reasoning_effort?, ?response_format: OpenAI::Models::Beta::assistant_response_format_option?, ?temperature: Float?, - ?tool_resources: OpenAI::Models::Beta::AssistantUpdateParams::ToolResources?, + ?tool_resources: OpenAI::Beta::AssistantUpdateParams::ToolResources?, ?tools: ::Array[OpenAI::Models::Beta::assistant_tool], ?top_p: Float?, ?request_options: OpenAI::request_opts - ) -> OpenAI::Models::Beta::Assistant + ) -> OpenAI::Beta::Assistant def list: ( ?after: String, @@ -44,12 +44,12 @@ module OpenAI ?limit: Integer, ?order: OpenAI::Models::Beta::AssistantListParams::order, ?request_options: OpenAI::request_opts - ) -> OpenAI::Internal::CursorPage[OpenAI::Models::Beta::Assistant] + ) -> OpenAI::Internal::CursorPage[OpenAI::Beta::Assistant] def delete: ( String assistant_id, ?request_options: OpenAI::request_opts - ) -> OpenAI::Models::Beta::AssistantDeleted + ) -> OpenAI::Beta::AssistantDeleted def initialize: (client: OpenAI::Client) -> void end diff --git a/sig/openai/resources/beta/threads.rbs b/sig/openai/resources/beta/threads.rbs index 2ef9c298..27b8eeaa 100644 --- a/sig/openai/resources/beta/threads.rbs +++ b/sig/openai/resources/beta/threads.rbs @@ -7,28 +7,28 @@ module OpenAI attr_reader messages: OpenAI::Resources::Beta::Threads::Messages def create: ( - ?messages: ::Array[OpenAI::Models::Beta::ThreadCreateParams::Message], + ?messages: ::Array[OpenAI::Beta::ThreadCreateParams::Message], ?metadata: OpenAI::Models::metadata?, - ?tool_resources: OpenAI::Models::Beta::ThreadCreateParams::ToolResources?, + ?tool_resources: OpenAI::Beta::ThreadCreateParams::ToolResources?, ?request_options: OpenAI::request_opts - ) -> OpenAI::Models::Beta::Thread + ) -> OpenAI::Beta::Thread def retrieve: ( String thread_id, ?request_options: OpenAI::request_opts - ) -> OpenAI::Models::Beta::Thread + ) -> OpenAI::Beta::Thread def update: ( String thread_id, ?metadata: OpenAI::Models::metadata?, - ?tool_resources: OpenAI::Models::Beta::ThreadUpdateParams::ToolResources?, + ?tool_resources: OpenAI::Beta::ThreadUpdateParams::ToolResources?, ?request_options: OpenAI::request_opts - ) -> OpenAI::Models::Beta::Thread + ) -> OpenAI::Beta::Thread def delete: ( String thread_id, ?request_options: OpenAI::request_opts - ) -> OpenAI::Models::Beta::ThreadDeleted + ) -> OpenAI::Beta::ThreadDeleted def create_and_run: ( assistant_id: String, @@ -40,14 +40,14 @@ module OpenAI ?parallel_tool_calls: bool, ?response_format: OpenAI::Models::Beta::assistant_response_format_option?, ?temperature: Float?, - ?thread: OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread, + ?thread: OpenAI::Beta::ThreadCreateAndRunParams::Thread, ?tool_choice: OpenAI::Models::Beta::assistant_tool_choice_option?, - ?tool_resources: OpenAI::Models::Beta::ThreadCreateAndRunParams::ToolResources?, + ?tool_resources: OpenAI::Beta::ThreadCreateAndRunParams::ToolResources?, ?tools: ::Array[OpenAI::Models::Beta::assistant_tool]?, ?top_p: Float?, - ?truncation_strategy: OpenAI::Models::Beta::ThreadCreateAndRunParams::TruncationStrategy?, + ?truncation_strategy: OpenAI::Beta::ThreadCreateAndRunParams::TruncationStrategy?, ?request_options: OpenAI::request_opts - ) -> OpenAI::Models::Beta::Threads::Run + ) -> OpenAI::Beta::Threads::Run def stream_raw: ( assistant_id: String, @@ -59,12 +59,12 @@ module OpenAI ?parallel_tool_calls: bool, ?response_format: OpenAI::Models::Beta::assistant_response_format_option?, ?temperature: Float?, - ?thread: OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread, + ?thread: OpenAI::Beta::ThreadCreateAndRunParams::Thread, ?tool_choice: OpenAI::Models::Beta::assistant_tool_choice_option?, - ?tool_resources: OpenAI::Models::Beta::ThreadCreateAndRunParams::ToolResources?, + ?tool_resources: OpenAI::Beta::ThreadCreateAndRunParams::ToolResources?, ?tools: ::Array[OpenAI::Models::Beta::assistant_tool]?, ?top_p: Float?, - ?truncation_strategy: OpenAI::Models::Beta::ThreadCreateAndRunParams::TruncationStrategy?, + ?truncation_strategy: OpenAI::Beta::ThreadCreateAndRunParams::TruncationStrategy?, ?request_options: OpenAI::request_opts ) -> OpenAI::Internal::Stream[OpenAI::Models::Beta::assistant_stream_event] diff --git a/sig/openai/resources/beta/threads/messages.rbs b/sig/openai/resources/beta/threads/messages.rbs index 560d8eb7..8a02c24b 100644 --- a/sig/openai/resources/beta/threads/messages.rbs +++ b/sig/openai/resources/beta/threads/messages.rbs @@ -7,23 +7,23 @@ module OpenAI String thread_id, content: OpenAI::Models::Beta::Threads::MessageCreateParams::content, role: OpenAI::Models::Beta::Threads::MessageCreateParams::role, - ?attachments: ::Array[OpenAI::Models::Beta::Threads::MessageCreateParams::Attachment]?, + ?attachments: ::Array[OpenAI::Beta::Threads::MessageCreateParams::Attachment]?, ?metadata: OpenAI::Models::metadata?, ?request_options: OpenAI::request_opts - ) -> OpenAI::Models::Beta::Threads::Message + ) -> OpenAI::Beta::Threads::Message def retrieve: ( String message_id, thread_id: String, ?request_options: OpenAI::request_opts - ) -> OpenAI::Models::Beta::Threads::Message + ) -> OpenAI::Beta::Threads::Message def update: ( String message_id, thread_id: String, ?metadata: OpenAI::Models::metadata?, ?request_options: OpenAI::request_opts - ) -> OpenAI::Models::Beta::Threads::Message + ) -> OpenAI::Beta::Threads::Message def list: ( String thread_id, @@ -33,13 +33,13 @@ module OpenAI ?order: OpenAI::Models::Beta::Threads::MessageListParams::order, ?run_id: String, ?request_options: OpenAI::request_opts - ) -> OpenAI::Internal::CursorPage[OpenAI::Models::Beta::Threads::Message] + ) -> OpenAI::Internal::CursorPage[OpenAI::Beta::Threads::Message] def delete: ( String message_id, thread_id: String, ?request_options: OpenAI::request_opts - ) -> OpenAI::Models::Beta::Threads::MessageDeleted + ) -> OpenAI::Beta::Threads::MessageDeleted def initialize: (client: OpenAI::Client) -> void end diff --git a/sig/openai/resources/beta/threads/runs.rbs b/sig/openai/resources/beta/threads/runs.rbs index df8265f2..38743701 100644 --- a/sig/openai/resources/beta/threads/runs.rbs +++ b/sig/openai/resources/beta/threads/runs.rbs @@ -10,7 +10,7 @@ module OpenAI assistant_id: String, ?include: ::Array[OpenAI::Models::Beta::Threads::Runs::run_step_include], ?additional_instructions: String?, - ?additional_messages: ::Array[OpenAI::Models::Beta::Threads::RunCreateParams::AdditionalMessage]?, + ?additional_messages: ::Array[OpenAI::Beta::Threads::RunCreateParams::AdditionalMessage]?, ?instructions: String?, ?max_completion_tokens: Integer?, ?max_prompt_tokens: Integer?, @@ -23,16 +23,16 @@ module OpenAI ?tool_choice: OpenAI::Models::Beta::assistant_tool_choice_option?, ?tools: ::Array[OpenAI::Models::Beta::assistant_tool]?, ?top_p: Float?, - ?truncation_strategy: OpenAI::Models::Beta::Threads::RunCreateParams::TruncationStrategy?, + ?truncation_strategy: OpenAI::Beta::Threads::RunCreateParams::TruncationStrategy?, ?request_options: OpenAI::request_opts - ) -> OpenAI::Models::Beta::Threads::Run + ) -> OpenAI::Beta::Threads::Run def create_stream_raw: ( String thread_id, assistant_id: String, ?include: ::Array[OpenAI::Models::Beta::Threads::Runs::run_step_include], ?additional_instructions: String?, - ?additional_messages: ::Array[OpenAI::Models::Beta::Threads::RunCreateParams::AdditionalMessage]?, + ?additional_messages: ::Array[OpenAI::Beta::Threads::RunCreateParams::AdditionalMessage]?, ?instructions: String?, ?max_completion_tokens: Integer?, ?max_prompt_tokens: Integer?, @@ -45,7 +45,7 @@ module OpenAI ?tool_choice: OpenAI::Models::Beta::assistant_tool_choice_option?, ?tools: ::Array[OpenAI::Models::Beta::assistant_tool]?, ?top_p: Float?, - ?truncation_strategy: OpenAI::Models::Beta::Threads::RunCreateParams::TruncationStrategy?, + ?truncation_strategy: OpenAI::Beta::Threads::RunCreateParams::TruncationStrategy?, ?request_options: OpenAI::request_opts ) -> OpenAI::Internal::Stream[OpenAI::Models::Beta::assistant_stream_event] @@ -53,14 +53,14 @@ module OpenAI String run_id, thread_id: String, ?request_options: OpenAI::request_opts - ) -> OpenAI::Models::Beta::Threads::Run + ) -> OpenAI::Beta::Threads::Run def update: ( String run_id, thread_id: String, ?metadata: OpenAI::Models::metadata?, ?request_options: OpenAI::request_opts - ) -> OpenAI::Models::Beta::Threads::Run + ) -> OpenAI::Beta::Threads::Run def list: ( String thread_id, @@ -69,25 +69,25 @@ module OpenAI ?limit: Integer, ?order: OpenAI::Models::Beta::Threads::RunListParams::order, ?request_options: OpenAI::request_opts - ) -> OpenAI::Internal::CursorPage[OpenAI::Models::Beta::Threads::Run] + ) -> OpenAI::Internal::CursorPage[OpenAI::Beta::Threads::Run] def cancel: ( String run_id, thread_id: String, ?request_options: OpenAI::request_opts - ) -> OpenAI::Models::Beta::Threads::Run + ) -> OpenAI::Beta::Threads::Run def submit_tool_outputs: ( String run_id, thread_id: String, - tool_outputs: ::Array[OpenAI::Models::Beta::Threads::RunSubmitToolOutputsParams::ToolOutput], + tool_outputs: ::Array[OpenAI::Beta::Threads::RunSubmitToolOutputsParams::ToolOutput], ?request_options: OpenAI::request_opts - ) -> OpenAI::Models::Beta::Threads::Run + ) -> OpenAI::Beta::Threads::Run def submit_tool_outputs_stream_raw: ( String run_id, thread_id: String, - tool_outputs: ::Array[OpenAI::Models::Beta::Threads::RunSubmitToolOutputsParams::ToolOutput], + tool_outputs: ::Array[OpenAI::Beta::Threads::RunSubmitToolOutputsParams::ToolOutput], ?request_options: OpenAI::request_opts ) -> OpenAI::Internal::Stream[OpenAI::Models::Beta::assistant_stream_event] diff --git a/sig/openai/resources/beta/threads/runs/steps.rbs b/sig/openai/resources/beta/threads/runs/steps.rbs index 7cdcbff4..85af5cd8 100644 --- a/sig/openai/resources/beta/threads/runs/steps.rbs +++ b/sig/openai/resources/beta/threads/runs/steps.rbs @@ -10,7 +10,7 @@ module OpenAI run_id: String, ?include: ::Array[OpenAI::Models::Beta::Threads::Runs::run_step_include], ?request_options: OpenAI::request_opts - ) -> OpenAI::Models::Beta::Threads::Runs::RunStep + ) -> OpenAI::Beta::Threads::Runs::RunStep def list: ( String run_id, @@ -21,7 +21,7 @@ module OpenAI ?limit: Integer, ?order: OpenAI::Models::Beta::Threads::Runs::StepListParams::order, ?request_options: OpenAI::request_opts - ) -> OpenAI::Internal::CursorPage[OpenAI::Models::Beta::Threads::Runs::RunStep] + ) -> OpenAI::Internal::CursorPage[OpenAI::Beta::Threads::Runs::RunStep] def initialize: (client: OpenAI::Client) -> void end diff --git a/sig/openai/resources/chat/completions.rbs b/sig/openai/resources/chat/completions.rbs index 0e8a88ef..3eb309a0 100644 --- a/sig/openai/resources/chat/completions.rbs +++ b/sig/openai/resources/chat/completions.rbs @@ -7,19 +7,19 @@ module OpenAI def create: ( messages: ::Array[OpenAI::Models::Chat::chat_completion_message_param], model: OpenAI::Models::Chat::CompletionCreateParams::model, - ?audio: OpenAI::Models::Chat::ChatCompletionAudioParam?, + ?audio: OpenAI::Chat::ChatCompletionAudioParam?, ?frequency_penalty: Float?, ?function_call: OpenAI::Models::Chat::CompletionCreateParams::function_call, - ?functions: ::Array[OpenAI::Models::Chat::CompletionCreateParams::Function], + ?functions: ::Array[OpenAI::Chat::CompletionCreateParams::Function], ?logit_bias: ::Hash[Symbol, Integer]?, ?logprobs: bool?, ?max_completion_tokens: Integer?, ?max_tokens: Integer?, ?metadata: OpenAI::Models::metadata?, - ?modalities: ::Array[OpenAI::Models::Chat::CompletionCreateParams::modality]?, + ?modalities: ::Array[OpenAI::Chat::CompletionCreateParams::modality]?, ?n: Integer?, ?parallel_tool_calls: bool, - ?prediction: OpenAI::Models::Chat::ChatCompletionPredictionContent?, + ?prediction: OpenAI::Chat::ChatCompletionPredictionContent?, ?presence_penalty: Float?, ?reasoning_effort: OpenAI::Models::reasoning_effort?, ?response_format: OpenAI::Models::Chat::CompletionCreateParams::response_format, @@ -27,33 +27,33 @@ module OpenAI ?service_tier: OpenAI::Models::Chat::CompletionCreateParams::service_tier?, ?stop: OpenAI::Models::Chat::CompletionCreateParams::stop?, ?store: bool?, - ?stream_options: OpenAI::Models::Chat::ChatCompletionStreamOptions?, + ?stream_options: OpenAI::Chat::ChatCompletionStreamOptions?, ?temperature: Float?, ?tool_choice: OpenAI::Models::Chat::chat_completion_tool_choice_option, - ?tools: ::Array[OpenAI::Models::Chat::ChatCompletionTool], + ?tools: ::Array[OpenAI::Chat::ChatCompletionTool], ?top_logprobs: Integer?, ?top_p: Float?, ?user: String, - ?web_search_options: OpenAI::Models::Chat::CompletionCreateParams::WebSearchOptions, + ?web_search_options: OpenAI::Chat::CompletionCreateParams::WebSearchOptions, ?request_options: OpenAI::request_opts - ) -> OpenAI::Models::Chat::ChatCompletion + ) -> OpenAI::Chat::ChatCompletion def stream_raw: ( messages: ::Array[OpenAI::Models::Chat::chat_completion_message_param], model: OpenAI::Models::Chat::CompletionCreateParams::model, - ?audio: OpenAI::Models::Chat::ChatCompletionAudioParam?, + ?audio: OpenAI::Chat::ChatCompletionAudioParam?, ?frequency_penalty: Float?, ?function_call: OpenAI::Models::Chat::CompletionCreateParams::function_call, - ?functions: ::Array[OpenAI::Models::Chat::CompletionCreateParams::Function], + ?functions: ::Array[OpenAI::Chat::CompletionCreateParams::Function], ?logit_bias: ::Hash[Symbol, Integer]?, ?logprobs: bool?, ?max_completion_tokens: Integer?, ?max_tokens: Integer?, ?metadata: OpenAI::Models::metadata?, - ?modalities: ::Array[OpenAI::Models::Chat::CompletionCreateParams::modality]?, + ?modalities: ::Array[OpenAI::Chat::CompletionCreateParams::modality]?, ?n: Integer?, ?parallel_tool_calls: bool, - ?prediction: OpenAI::Models::Chat::ChatCompletionPredictionContent?, + ?prediction: OpenAI::Chat::ChatCompletionPredictionContent?, ?presence_penalty: Float?, ?reasoning_effort: OpenAI::Models::reasoning_effort?, ?response_format: OpenAI::Models::Chat::CompletionCreateParams::response_format, @@ -61,27 +61,27 @@ module OpenAI ?service_tier: OpenAI::Models::Chat::CompletionCreateParams::service_tier?, ?stop: OpenAI::Models::Chat::CompletionCreateParams::stop?, ?store: bool?, - ?stream_options: OpenAI::Models::Chat::ChatCompletionStreamOptions?, + ?stream_options: OpenAI::Chat::ChatCompletionStreamOptions?, ?temperature: Float?, ?tool_choice: OpenAI::Models::Chat::chat_completion_tool_choice_option, - ?tools: ::Array[OpenAI::Models::Chat::ChatCompletionTool], + ?tools: ::Array[OpenAI::Chat::ChatCompletionTool], ?top_logprobs: Integer?, ?top_p: Float?, ?user: String, - ?web_search_options: OpenAI::Models::Chat::CompletionCreateParams::WebSearchOptions, + ?web_search_options: OpenAI::Chat::CompletionCreateParams::WebSearchOptions, ?request_options: OpenAI::request_opts - ) -> OpenAI::Internal::Stream[OpenAI::Models::Chat::ChatCompletionChunk] + ) -> OpenAI::Internal::Stream[OpenAI::Chat::ChatCompletionChunk] def retrieve: ( String completion_id, ?request_options: OpenAI::request_opts - ) -> OpenAI::Models::Chat::ChatCompletion + ) -> OpenAI::Chat::ChatCompletion def update: ( String completion_id, metadata: OpenAI::Models::metadata?, ?request_options: OpenAI::request_opts - ) -> OpenAI::Models::Chat::ChatCompletion + ) -> OpenAI::Chat::ChatCompletion def list: ( ?after: String, @@ -90,12 +90,12 @@ module OpenAI ?model: String, ?order: OpenAI::Models::Chat::CompletionListParams::order, ?request_options: OpenAI::request_opts - ) -> OpenAI::Internal::CursorPage[OpenAI::Models::Chat::ChatCompletion] + ) -> OpenAI::Internal::CursorPage[OpenAI::Chat::ChatCompletion] def delete: ( String completion_id, ?request_options: OpenAI::request_opts - ) -> OpenAI::Models::Chat::ChatCompletionDeleted + ) -> OpenAI::Chat::ChatCompletionDeleted def initialize: (client: OpenAI::Client) -> void end diff --git a/sig/openai/resources/chat/completions/messages.rbs b/sig/openai/resources/chat/completions/messages.rbs index 6af4409f..29b994c0 100644 --- a/sig/openai/resources/chat/completions/messages.rbs +++ b/sig/openai/resources/chat/completions/messages.rbs @@ -9,7 +9,7 @@ module OpenAI ?limit: Integer, ?order: OpenAI::Models::Chat::Completions::MessageListParams::order, ?request_options: OpenAI::request_opts - ) -> OpenAI::Internal::CursorPage[OpenAI::Models::Chat::ChatCompletionStoreMessage] + ) -> OpenAI::Internal::CursorPage[OpenAI::Chat::ChatCompletionStoreMessage] def initialize: (client: OpenAI::Client) -> void end diff --git a/sig/openai/resources/completions.rbs b/sig/openai/resources/completions.rbs index c266af82..6828d284 100644 --- a/sig/openai/resources/completions.rbs +++ b/sig/openai/resources/completions.rbs @@ -14,13 +14,13 @@ module OpenAI ?presence_penalty: Float?, ?seed: Integer?, ?stop: OpenAI::Models::CompletionCreateParams::stop?, - ?stream_options: OpenAI::Models::Chat::ChatCompletionStreamOptions?, + ?stream_options: OpenAI::Chat::ChatCompletionStreamOptions?, ?suffix: String?, ?temperature: Float?, ?top_p: Float?, ?user: String, ?request_options: OpenAI::request_opts - ) -> OpenAI::Models::Completion + ) -> OpenAI::Completion def create_streaming: ( model: OpenAI::Models::CompletionCreateParams::model, @@ -35,13 +35,13 @@ module OpenAI ?presence_penalty: Float?, ?seed: Integer?, ?stop: OpenAI::Models::CompletionCreateParams::stop?, - ?stream_options: OpenAI::Models::Chat::ChatCompletionStreamOptions?, + ?stream_options: OpenAI::Chat::ChatCompletionStreamOptions?, ?suffix: String?, ?temperature: Float?, ?top_p: Float?, ?user: String, ?request_options: OpenAI::request_opts - ) -> OpenAI::Internal::Stream[OpenAI::Models::Completion] + ) -> OpenAI::Internal::Stream[OpenAI::Completion] def initialize: (client: OpenAI::Client) -> void end diff --git a/sig/openai/resources/embeddings.rbs b/sig/openai/resources/embeddings.rbs index 3babf508..0f73d65c 100644 --- a/sig/openai/resources/embeddings.rbs +++ b/sig/openai/resources/embeddings.rbs @@ -8,7 +8,7 @@ module OpenAI ?encoding_format: OpenAI::Models::EmbeddingCreateParams::encoding_format, ?user: String, ?request_options: OpenAI::request_opts - ) -> OpenAI::Models::CreateEmbeddingResponse + ) -> OpenAI::CreateEmbeddingResponse def initialize: (client: OpenAI::Client) -> void end diff --git a/sig/openai/resources/evals.rbs b/sig/openai/resources/evals.rbs index dd3d6cc5..b4ed4454 100644 --- a/sig/openai/resources/evals.rbs +++ b/sig/openai/resources/evals.rbs @@ -5,7 +5,7 @@ module OpenAI def create: ( data_source_config: OpenAI::Models::EvalCreateParams::data_source_config, - testing_criteria: ::Array[OpenAI::Models::EvalCreateParams::testing_criterion], + testing_criteria: ::Array[OpenAI::EvalCreateParams::testing_criterion], ?metadata: OpenAI::Models::metadata?, ?name: String, ?request_options: OpenAI::request_opts diff --git a/sig/openai/resources/files.rbs b/sig/openai/resources/files.rbs index b6cefa86..2af65729 100644 --- a/sig/openai/resources/files.rbs +++ b/sig/openai/resources/files.rbs @@ -5,12 +5,12 @@ module OpenAI file: Pathname | StringIO | IO | OpenAI::FilePart, purpose: OpenAI::Models::file_purpose, ?request_options: OpenAI::request_opts - ) -> OpenAI::Models::FileObject + ) -> OpenAI::FileObject def retrieve: ( String file_id, ?request_options: OpenAI::request_opts - ) -> OpenAI::Models::FileObject + ) -> OpenAI::FileObject def list: ( ?after: String, @@ -18,12 +18,12 @@ module OpenAI ?order: OpenAI::Models::FileListParams::order, ?purpose: String, ?request_options: OpenAI::request_opts - ) -> OpenAI::Internal::CursorPage[OpenAI::Models::FileObject] + ) -> OpenAI::Internal::CursorPage[OpenAI::FileObject] def delete: ( String file_id, ?request_options: OpenAI::request_opts - ) -> OpenAI::Models::FileDeleted + ) -> OpenAI::FileDeleted def content: ( String file_id, diff --git a/sig/openai/resources/fine_tuning/jobs.rbs b/sig/openai/resources/fine_tuning/jobs.rbs index 4264a1e9..fe96137a 100644 --- a/sig/openai/resources/fine_tuning/jobs.rbs +++ b/sig/openai/resources/fine_tuning/jobs.rbs @@ -7,39 +7,39 @@ module OpenAI def create: ( model: OpenAI::Models::FineTuning::JobCreateParams::model, training_file: String, - ?hyperparameters: OpenAI::Models::FineTuning::JobCreateParams::Hyperparameters, - ?integrations: ::Array[OpenAI::Models::FineTuning::JobCreateParams::Integration]?, + ?hyperparameters: OpenAI::FineTuning::JobCreateParams::Hyperparameters, + ?integrations: ::Array[OpenAI::FineTuning::JobCreateParams::Integration]?, ?metadata: OpenAI::Models::metadata?, - ?method_: OpenAI::Models::FineTuning::JobCreateParams::Method, + ?method_: OpenAI::FineTuning::JobCreateParams::Method, ?seed: Integer?, ?suffix: String?, ?validation_file: String?, ?request_options: OpenAI::request_opts - ) -> OpenAI::Models::FineTuning::FineTuningJob + ) -> OpenAI::FineTuning::FineTuningJob def retrieve: ( String fine_tuning_job_id, ?request_options: OpenAI::request_opts - ) -> OpenAI::Models::FineTuning::FineTuningJob + ) -> OpenAI::FineTuning::FineTuningJob def list: ( ?after: String, ?limit: Integer, ?metadata: ::Hash[Symbol, String]?, ?request_options: OpenAI::request_opts - ) -> OpenAI::Internal::CursorPage[OpenAI::Models::FineTuning::FineTuningJob] + ) -> OpenAI::Internal::CursorPage[OpenAI::FineTuning::FineTuningJob] def cancel: ( String fine_tuning_job_id, ?request_options: OpenAI::request_opts - ) -> OpenAI::Models::FineTuning::FineTuningJob + ) -> OpenAI::FineTuning::FineTuningJob def list_events: ( String fine_tuning_job_id, ?after: String, ?limit: Integer, ?request_options: OpenAI::request_opts - ) -> OpenAI::Internal::CursorPage[OpenAI::Models::FineTuning::FineTuningJobEvent] + ) -> OpenAI::Internal::CursorPage[OpenAI::FineTuning::FineTuningJobEvent] def initialize: (client: OpenAI::Client) -> void end diff --git a/sig/openai/resources/fine_tuning/jobs/checkpoints.rbs b/sig/openai/resources/fine_tuning/jobs/checkpoints.rbs index 45bec94e..3770d993 100644 --- a/sig/openai/resources/fine_tuning/jobs/checkpoints.rbs +++ b/sig/openai/resources/fine_tuning/jobs/checkpoints.rbs @@ -8,7 +8,7 @@ module OpenAI ?after: String, ?limit: Integer, ?request_options: OpenAI::request_opts - ) -> OpenAI::Internal::CursorPage[OpenAI::Models::FineTuning::Jobs::FineTuningJobCheckpoint] + ) -> OpenAI::Internal::CursorPage[OpenAI::FineTuning::Jobs::FineTuningJobCheckpoint] def initialize: (client: OpenAI::Client) -> void end diff --git a/sig/openai/resources/images.rbs b/sig/openai/resources/images.rbs index 20b05ba5..387d37d0 100644 --- a/sig/openai/resources/images.rbs +++ b/sig/openai/resources/images.rbs @@ -9,7 +9,7 @@ module OpenAI ?size: OpenAI::Models::ImageCreateVariationParams::size?, ?user: String, ?request_options: OpenAI::request_opts - ) -> OpenAI::Models::ImagesResponse + ) -> OpenAI::ImagesResponse def edit: ( image: OpenAI::Models::ImageEditParams::image, @@ -23,7 +23,7 @@ module OpenAI ?size: OpenAI::Models::ImageEditParams::size?, ?user: String, ?request_options: OpenAI::request_opts - ) -> OpenAI::Models::ImagesResponse + ) -> OpenAI::ImagesResponse def generate: ( prompt: String, @@ -39,7 +39,7 @@ module OpenAI ?style: OpenAI::Models::ImageGenerateParams::style?, ?user: String, ?request_options: OpenAI::request_opts - ) -> OpenAI::Models::ImagesResponse + ) -> OpenAI::ImagesResponse def initialize: (client: OpenAI::Client) -> void end diff --git a/sig/openai/resources/models.rbs b/sig/openai/resources/models.rbs index 042eaed1..dfe23787 100644 --- a/sig/openai/resources/models.rbs +++ b/sig/openai/resources/models.rbs @@ -4,16 +4,16 @@ module OpenAI def retrieve: ( String model, ?request_options: OpenAI::request_opts - ) -> OpenAI::Models::Model + ) -> OpenAI::Model def list: ( ?request_options: OpenAI::request_opts - ) -> OpenAI::Internal::Page[OpenAI::Models::Model] + ) -> OpenAI::Internal::Page[OpenAI::Model] def delete: ( String model, ?request_options: OpenAI::request_opts - ) -> OpenAI::Models::ModelDeleted + ) -> OpenAI::ModelDeleted def initialize: (client: OpenAI::Client) -> void end diff --git a/sig/openai/resources/responses.rbs b/sig/openai/resources/responses.rbs index 40041a27..6cbfd4aa 100644 --- a/sig/openai/resources/responses.rbs +++ b/sig/openai/resources/responses.rbs @@ -12,18 +12,18 @@ module OpenAI ?metadata: OpenAI::Models::metadata?, ?parallel_tool_calls: bool?, ?previous_response_id: String?, - ?reasoning: OpenAI::Models::Reasoning?, + ?reasoning: OpenAI::Reasoning?, ?service_tier: OpenAI::Models::Responses::ResponseCreateParams::service_tier?, ?store: bool?, ?temperature: Float?, - ?text: OpenAI::Models::Responses::ResponseTextConfig, + ?text: OpenAI::Responses::ResponseTextConfig, ?tool_choice: OpenAI::Models::Responses::ResponseCreateParams::tool_choice, ?tools: ::Array[OpenAI::Models::Responses::tool], ?top_p: Float?, ?truncation: OpenAI::Models::Responses::ResponseCreateParams::truncation?, ?user: String, ?request_options: OpenAI::request_opts - ) -> OpenAI::Models::Responses::Response + ) -> OpenAI::Responses::Response def stream_raw: ( input: OpenAI::Models::Responses::ResponseCreateParams::input, @@ -34,11 +34,11 @@ module OpenAI ?metadata: OpenAI::Models::metadata?, ?parallel_tool_calls: bool?, ?previous_response_id: String?, - ?reasoning: OpenAI::Models::Reasoning?, + ?reasoning: OpenAI::Reasoning?, ?service_tier: OpenAI::Models::Responses::ResponseCreateParams::service_tier?, ?store: bool?, ?temperature: Float?, - ?text: OpenAI::Models::Responses::ResponseTextConfig, + ?text: OpenAI::Responses::ResponseTextConfig, ?tool_choice: OpenAI::Models::Responses::ResponseCreateParams::tool_choice, ?tools: ::Array[OpenAI::Models::Responses::tool], ?top_p: Float?, @@ -51,7 +51,7 @@ module OpenAI String response_id, ?include: ::Array[OpenAI::Models::Responses::response_includable], ?request_options: OpenAI::request_opts - ) -> OpenAI::Models::Responses::Response + ) -> OpenAI::Responses::Response def delete: ( String response_id, diff --git a/sig/openai/resources/uploads.rbs b/sig/openai/resources/uploads.rbs index c60f0054..50996546 100644 --- a/sig/openai/resources/uploads.rbs +++ b/sig/openai/resources/uploads.rbs @@ -9,19 +9,19 @@ module OpenAI mime_type: String, purpose: OpenAI::Models::file_purpose, ?request_options: OpenAI::request_opts - ) -> OpenAI::Models::Upload + ) -> OpenAI::Upload def cancel: ( String upload_id, ?request_options: OpenAI::request_opts - ) -> OpenAI::Models::Upload + ) -> OpenAI::Upload def complete: ( String upload_id, part_ids: ::Array[String], ?md5: String, ?request_options: OpenAI::request_opts - ) -> OpenAI::Models::Upload + ) -> OpenAI::Upload def initialize: (client: OpenAI::Client) -> void end diff --git a/sig/openai/resources/uploads/parts.rbs b/sig/openai/resources/uploads/parts.rbs index f296f1ef..20aac99a 100644 --- a/sig/openai/resources/uploads/parts.rbs +++ b/sig/openai/resources/uploads/parts.rbs @@ -6,7 +6,7 @@ module OpenAI String upload_id, data: Pathname | StringIO | IO | OpenAI::FilePart, ?request_options: OpenAI::request_opts - ) -> OpenAI::Models::Uploads::UploadPart + ) -> OpenAI::Uploads::UploadPart def initialize: (client: OpenAI::Client) -> void end diff --git a/sig/openai/resources/vector_stores.rbs b/sig/openai/resources/vector_stores.rbs index c60ff766..d717bd54 100644 --- a/sig/openai/resources/vector_stores.rbs +++ b/sig/openai/resources/vector_stores.rbs @@ -7,25 +7,25 @@ module OpenAI def create: ( ?chunking_strategy: OpenAI::Models::file_chunking_strategy_param, - ?expires_after: OpenAI::Models::VectorStoreCreateParams::ExpiresAfter, + ?expires_after: OpenAI::VectorStoreCreateParams::ExpiresAfter, ?file_ids: ::Array[String], ?metadata: OpenAI::Models::metadata?, ?name: String, ?request_options: OpenAI::request_opts - ) -> OpenAI::Models::VectorStore + ) -> OpenAI::VectorStore def retrieve: ( String vector_store_id, ?request_options: OpenAI::request_opts - ) -> OpenAI::Models::VectorStore + ) -> OpenAI::VectorStore def update: ( String vector_store_id, - ?expires_after: OpenAI::Models::VectorStoreUpdateParams::ExpiresAfter?, + ?expires_after: OpenAI::VectorStoreUpdateParams::ExpiresAfter?, ?metadata: OpenAI::Models::metadata?, ?name: String?, ?request_options: OpenAI::request_opts - ) -> OpenAI::Models::VectorStore + ) -> OpenAI::VectorStore def list: ( ?after: String, @@ -33,19 +33,19 @@ module OpenAI ?limit: Integer, ?order: OpenAI::Models::VectorStoreListParams::order, ?request_options: OpenAI::request_opts - ) -> OpenAI::Internal::CursorPage[OpenAI::Models::VectorStore] + ) -> OpenAI::Internal::CursorPage[OpenAI::VectorStore] def delete: ( String vector_store_id, ?request_options: OpenAI::request_opts - ) -> OpenAI::Models::VectorStoreDeleted + ) -> OpenAI::VectorStoreDeleted def search: ( String vector_store_id, query: OpenAI::Models::VectorStoreSearchParams::query, ?filters: OpenAI::Models::VectorStoreSearchParams::filters, ?max_num_results: Integer, - ?ranking_options: OpenAI::Models::VectorStoreSearchParams::RankingOptions, + ?ranking_options: OpenAI::VectorStoreSearchParams::RankingOptions, ?rewrite_query: bool, ?request_options: OpenAI::request_opts ) -> OpenAI::Internal::Page[OpenAI::Models::VectorStoreSearchResponse] diff --git a/sig/openai/resources/vector_stores/file_batches.rbs b/sig/openai/resources/vector_stores/file_batches.rbs index 39606ed6..448f8ebb 100644 --- a/sig/openai/resources/vector_stores/file_batches.rbs +++ b/sig/openai/resources/vector_stores/file_batches.rbs @@ -5,22 +5,22 @@ module OpenAI def create: ( String vector_store_id, file_ids: ::Array[String], - ?attributes: ::Hash[Symbol, OpenAI::Models::VectorStores::FileBatchCreateParams::attribute]?, + ?attributes: ::Hash[Symbol, OpenAI::VectorStores::FileBatchCreateParams::attribute]?, ?chunking_strategy: OpenAI::Models::file_chunking_strategy_param, ?request_options: OpenAI::request_opts - ) -> OpenAI::Models::VectorStores::VectorStoreFileBatch + ) -> OpenAI::VectorStores::VectorStoreFileBatch def retrieve: ( String batch_id, vector_store_id: String, ?request_options: OpenAI::request_opts - ) -> OpenAI::Models::VectorStores::VectorStoreFileBatch + ) -> OpenAI::VectorStores::VectorStoreFileBatch def cancel: ( String batch_id, vector_store_id: String, ?request_options: OpenAI::request_opts - ) -> OpenAI::Models::VectorStores::VectorStoreFileBatch + ) -> OpenAI::VectorStores::VectorStoreFileBatch def list_files: ( String batch_id, @@ -31,7 +31,7 @@ module OpenAI ?limit: Integer, ?order: OpenAI::Models::VectorStores::FileBatchListFilesParams::order, ?request_options: OpenAI::request_opts - ) -> OpenAI::Internal::CursorPage[OpenAI::Models::VectorStores::VectorStoreFile] + ) -> OpenAI::Internal::CursorPage[OpenAI::VectorStores::VectorStoreFile] def initialize: (client: OpenAI::Client) -> void end diff --git a/sig/openai/resources/vector_stores/files.rbs b/sig/openai/resources/vector_stores/files.rbs index 3669f6a7..2a650189 100644 --- a/sig/openai/resources/vector_stores/files.rbs +++ b/sig/openai/resources/vector_stores/files.rbs @@ -5,23 +5,23 @@ module OpenAI def create: ( String vector_store_id, file_id: String, - ?attributes: ::Hash[Symbol, OpenAI::Models::VectorStores::FileCreateParams::attribute]?, + ?attributes: ::Hash[Symbol, OpenAI::VectorStores::FileCreateParams::attribute]?, ?chunking_strategy: OpenAI::Models::file_chunking_strategy_param, ?request_options: OpenAI::request_opts - ) -> OpenAI::Models::VectorStores::VectorStoreFile + ) -> OpenAI::VectorStores::VectorStoreFile def retrieve: ( String file_id, vector_store_id: String, ?request_options: OpenAI::request_opts - ) -> OpenAI::Models::VectorStores::VectorStoreFile + ) -> OpenAI::VectorStores::VectorStoreFile def update: ( String file_id, vector_store_id: String, - attributes: ::Hash[Symbol, OpenAI::Models::VectorStores::FileUpdateParams::attribute]?, + attributes: ::Hash[Symbol, OpenAI::VectorStores::FileUpdateParams::attribute]?, ?request_options: OpenAI::request_opts - ) -> OpenAI::Models::VectorStores::VectorStoreFile + ) -> OpenAI::VectorStores::VectorStoreFile def list: ( String vector_store_id, @@ -31,13 +31,13 @@ module OpenAI ?limit: Integer, ?order: OpenAI::Models::VectorStores::FileListParams::order, ?request_options: OpenAI::request_opts - ) -> OpenAI::Internal::CursorPage[OpenAI::Models::VectorStores::VectorStoreFile] + ) -> OpenAI::Internal::CursorPage[OpenAI::VectorStores::VectorStoreFile] def delete: ( String file_id, vector_store_id: String, ?request_options: OpenAI::request_opts - ) -> OpenAI::Models::VectorStores::VectorStoreFileDeleted + ) -> OpenAI::VectorStores::VectorStoreFileDeleted def content: ( String file_id, diff --git a/test/openai/resources/audio/transcriptions_test.rb b/test/openai/resources/audio/transcriptions_test.rb index b074f1ba..f4f5b94b 100644 --- a/test/openai/resources/audio/transcriptions_test.rb +++ b/test/openai/resources/audio/transcriptions_test.rb @@ -12,8 +12,8 @@ def test_create_required_params assert_pattern do case response - in OpenAI::Models::Audio::Transcription - in OpenAI::Models::Audio::TranscriptionVerbose + in OpenAI::Audio::Transcription + in OpenAI::Audio::TranscriptionVerbose end end end diff --git a/test/openai/resources/audio/translations_test.rb b/test/openai/resources/audio/translations_test.rb index c6a64ad3..feb7ccc7 100644 --- a/test/openai/resources/audio/translations_test.rb +++ b/test/openai/resources/audio/translations_test.rb @@ -12,8 +12,8 @@ def test_create_required_params assert_pattern do case response - in OpenAI::Models::Audio::Translation - in OpenAI::Models::Audio::TranslationVerbose + in OpenAI::Audio::Translation + in OpenAI::Audio::TranslationVerbose end end end diff --git a/test/openai/resources/batches_test.rb b/test/openai/resources/batches_test.rb index 8ba0d03e..37bc1861 100644 --- a/test/openai/resources/batches_test.rb +++ b/test/openai/resources/batches_test.rb @@ -12,7 +12,7 @@ def test_create_required_params ) assert_pattern do - response => OpenAI::Models::Batch + response => OpenAI::Batch end assert_pattern do @@ -23,12 +23,12 @@ def test_create_required_params endpoint: String, input_file_id: String, object: Symbol, - status: OpenAI::Models::Batch::Status, + status: OpenAI::Batch::Status, cancelled_at: Integer | nil, cancelling_at: Integer | nil, completed_at: Integer | nil, error_file_id: String | nil, - errors: OpenAI::Models::Batch::Errors | nil, + errors: OpenAI::Batch::Errors | nil, expired_at: Integer | nil, expires_at: Integer | nil, failed_at: Integer | nil, @@ -36,7 +36,7 @@ def test_create_required_params in_progress_at: Integer | nil, metadata: ^(OpenAI::Internal::Type::HashOf[String]) | nil, output_file_id: String | nil, - request_counts: OpenAI::Models::BatchRequestCounts | nil + request_counts: OpenAI::BatchRequestCounts | nil } end end @@ -45,7 +45,7 @@ def test_retrieve response = @openai.batches.retrieve("batch_id") assert_pattern do - response => OpenAI::Models::Batch + response => OpenAI::Batch end assert_pattern do @@ -56,12 +56,12 @@ def test_retrieve endpoint: String, input_file_id: String, object: Symbol, - status: OpenAI::Models::Batch::Status, + status: OpenAI::Batch::Status, cancelled_at: Integer | nil, cancelling_at: Integer | nil, completed_at: Integer | nil, error_file_id: String | nil, - errors: OpenAI::Models::Batch::Errors | nil, + errors: OpenAI::Batch::Errors | nil, expired_at: Integer | nil, expires_at: Integer | nil, failed_at: Integer | nil, @@ -69,7 +69,7 @@ def test_retrieve in_progress_at: Integer | nil, metadata: ^(OpenAI::Internal::Type::HashOf[String]) | nil, output_file_id: String | nil, - request_counts: OpenAI::Models::BatchRequestCounts | nil + request_counts: OpenAI::BatchRequestCounts | nil } end end @@ -85,7 +85,7 @@ def test_list return if row.nil? assert_pattern do - row => OpenAI::Models::Batch + row => OpenAI::Batch end assert_pattern do @@ -96,12 +96,12 @@ def test_list endpoint: String, input_file_id: String, object: Symbol, - status: OpenAI::Models::Batch::Status, + status: OpenAI::Batch::Status, cancelled_at: Integer | nil, cancelling_at: Integer | nil, completed_at: Integer | nil, error_file_id: String | nil, - errors: OpenAI::Models::Batch::Errors | nil, + errors: OpenAI::Batch::Errors | nil, expired_at: Integer | nil, expires_at: Integer | nil, failed_at: Integer | nil, @@ -109,7 +109,7 @@ def test_list in_progress_at: Integer | nil, metadata: ^(OpenAI::Internal::Type::HashOf[String]) | nil, output_file_id: String | nil, - request_counts: OpenAI::Models::BatchRequestCounts | nil + request_counts: OpenAI::BatchRequestCounts | nil } end end @@ -118,7 +118,7 @@ def test_cancel response = @openai.batches.cancel("batch_id") assert_pattern do - response => OpenAI::Models::Batch + response => OpenAI::Batch end assert_pattern do @@ -129,12 +129,12 @@ def test_cancel endpoint: String, input_file_id: String, object: Symbol, - status: OpenAI::Models::Batch::Status, + status: OpenAI::Batch::Status, cancelled_at: Integer | nil, cancelling_at: Integer | nil, completed_at: Integer | nil, error_file_id: String | nil, - errors: OpenAI::Models::Batch::Errors | nil, + errors: OpenAI::Batch::Errors | nil, expired_at: Integer | nil, expires_at: Integer | nil, failed_at: Integer | nil, @@ -142,7 +142,7 @@ def test_cancel in_progress_at: Integer | nil, metadata: ^(OpenAI::Internal::Type::HashOf[String]) | nil, output_file_id: String | nil, - request_counts: OpenAI::Models::BatchRequestCounts | nil + request_counts: OpenAI::BatchRequestCounts | nil } end end diff --git a/test/openai/resources/beta/assistants_test.rb b/test/openai/resources/beta/assistants_test.rb index b76d7856..ea241550 100644 --- a/test/openai/resources/beta/assistants_test.rb +++ b/test/openai/resources/beta/assistants_test.rb @@ -7,7 +7,7 @@ def test_create_required_params response = @openai.beta.assistants.create(model: :"gpt-4.1") assert_pattern do - response => OpenAI::Models::Beta::Assistant + response => OpenAI::Beta::Assistant end assert_pattern do @@ -20,10 +20,10 @@ def test_create_required_params model: String, name: String | nil, object: Symbol, - tools: ^(OpenAI::Internal::Type::ArrayOf[union: OpenAI::Models::Beta::AssistantTool]), - response_format: OpenAI::Models::Beta::AssistantResponseFormatOption | nil, + tools: ^(OpenAI::Internal::Type::ArrayOf[union: OpenAI::Beta::AssistantTool]), + response_format: OpenAI::Beta::AssistantResponseFormatOption | nil, temperature: Float | nil, - tool_resources: OpenAI::Models::Beta::Assistant::ToolResources | nil, + tool_resources: OpenAI::Beta::Assistant::ToolResources | nil, top_p: Float | nil } end @@ -33,7 +33,7 @@ def test_retrieve response = @openai.beta.assistants.retrieve("assistant_id") assert_pattern do - response => OpenAI::Models::Beta::Assistant + response => OpenAI::Beta::Assistant end assert_pattern do @@ -46,10 +46,10 @@ def test_retrieve model: String, name: String | nil, object: Symbol, - tools: ^(OpenAI::Internal::Type::ArrayOf[union: OpenAI::Models::Beta::AssistantTool]), - response_format: OpenAI::Models::Beta::AssistantResponseFormatOption | nil, + tools: ^(OpenAI::Internal::Type::ArrayOf[union: OpenAI::Beta::AssistantTool]), + response_format: OpenAI::Beta::AssistantResponseFormatOption | nil, temperature: Float | nil, - tool_resources: OpenAI::Models::Beta::Assistant::ToolResources | nil, + tool_resources: OpenAI::Beta::Assistant::ToolResources | nil, top_p: Float | nil } end @@ -59,7 +59,7 @@ def test_update response = @openai.beta.assistants.update("assistant_id") assert_pattern do - response => OpenAI::Models::Beta::Assistant + response => OpenAI::Beta::Assistant end assert_pattern do @@ -72,10 +72,10 @@ def test_update model: String, name: String | nil, object: Symbol, - tools: ^(OpenAI::Internal::Type::ArrayOf[union: OpenAI::Models::Beta::AssistantTool]), - response_format: OpenAI::Models::Beta::AssistantResponseFormatOption | nil, + tools: ^(OpenAI::Internal::Type::ArrayOf[union: OpenAI::Beta::AssistantTool]), + response_format: OpenAI::Beta::AssistantResponseFormatOption | nil, temperature: Float | nil, - tool_resources: OpenAI::Models::Beta::Assistant::ToolResources | nil, + tool_resources: OpenAI::Beta::Assistant::ToolResources | nil, top_p: Float | nil } end @@ -92,7 +92,7 @@ def test_list return if row.nil? assert_pattern do - row => OpenAI::Models::Beta::Assistant + row => OpenAI::Beta::Assistant end assert_pattern do @@ -105,10 +105,10 @@ def test_list model: String, name: String | nil, object: Symbol, - tools: ^(OpenAI::Internal::Type::ArrayOf[union: OpenAI::Models::Beta::AssistantTool]), - response_format: OpenAI::Models::Beta::AssistantResponseFormatOption | nil, + tools: ^(OpenAI::Internal::Type::ArrayOf[union: OpenAI::Beta::AssistantTool]), + response_format: OpenAI::Beta::AssistantResponseFormatOption | nil, temperature: Float | nil, - tool_resources: OpenAI::Models::Beta::Assistant::ToolResources | nil, + tool_resources: OpenAI::Beta::Assistant::ToolResources | nil, top_p: Float | nil } end @@ -118,7 +118,7 @@ def test_delete response = @openai.beta.assistants.delete("assistant_id") assert_pattern do - response => OpenAI::Models::Beta::AssistantDeleted + response => OpenAI::Beta::AssistantDeleted end assert_pattern do diff --git a/test/openai/resources/beta/threads/messages_test.rb b/test/openai/resources/beta/threads/messages_test.rb index e9d4d46c..c2904ac0 100644 --- a/test/openai/resources/beta/threads/messages_test.rb +++ b/test/openai/resources/beta/threads/messages_test.rb @@ -7,24 +7,24 @@ def test_create_required_params response = @openai.beta.threads.messages.create("thread_id", content: "string", role: :user) assert_pattern do - response => OpenAI::Models::Beta::Threads::Message + response => OpenAI::Beta::Threads::Message end assert_pattern do response => { id: String, assistant_id: String | nil, - attachments: ^(OpenAI::Internal::Type::ArrayOf[OpenAI::Models::Beta::Threads::Message::Attachment]) | nil, + attachments: ^(OpenAI::Internal::Type::ArrayOf[OpenAI::Beta::Threads::Message::Attachment]) | nil, completed_at: Integer | nil, - content: ^(OpenAI::Internal::Type::ArrayOf[union: OpenAI::Models::Beta::Threads::MessageContent]), + content: ^(OpenAI::Internal::Type::ArrayOf[union: OpenAI::Beta::Threads::MessageContent]), created_at: Integer, incomplete_at: Integer | nil, - incomplete_details: OpenAI::Models::Beta::Threads::Message::IncompleteDetails | nil, + incomplete_details: OpenAI::Beta::Threads::Message::IncompleteDetails | nil, metadata: ^(OpenAI::Internal::Type::HashOf[String]) | nil, object: Symbol, - role: OpenAI::Models::Beta::Threads::Message::Role, + role: OpenAI::Beta::Threads::Message::Role, run_id: String | nil, - status: OpenAI::Models::Beta::Threads::Message::Status, + status: OpenAI::Beta::Threads::Message::Status, thread_id: String } end @@ -34,24 +34,24 @@ def test_retrieve_required_params response = @openai.beta.threads.messages.retrieve("message_id", thread_id: "thread_id") assert_pattern do - response => OpenAI::Models::Beta::Threads::Message + response => OpenAI::Beta::Threads::Message end assert_pattern do response => { id: String, assistant_id: String | nil, - attachments: ^(OpenAI::Internal::Type::ArrayOf[OpenAI::Models::Beta::Threads::Message::Attachment]) | nil, + attachments: ^(OpenAI::Internal::Type::ArrayOf[OpenAI::Beta::Threads::Message::Attachment]) | nil, completed_at: Integer | nil, - content: ^(OpenAI::Internal::Type::ArrayOf[union: OpenAI::Models::Beta::Threads::MessageContent]), + content: ^(OpenAI::Internal::Type::ArrayOf[union: OpenAI::Beta::Threads::MessageContent]), created_at: Integer, incomplete_at: Integer | nil, - incomplete_details: OpenAI::Models::Beta::Threads::Message::IncompleteDetails | nil, + incomplete_details: OpenAI::Beta::Threads::Message::IncompleteDetails | nil, metadata: ^(OpenAI::Internal::Type::HashOf[String]) | nil, object: Symbol, - role: OpenAI::Models::Beta::Threads::Message::Role, + role: OpenAI::Beta::Threads::Message::Role, run_id: String | nil, - status: OpenAI::Models::Beta::Threads::Message::Status, + status: OpenAI::Beta::Threads::Message::Status, thread_id: String } end @@ -61,24 +61,24 @@ def test_update_required_params response = @openai.beta.threads.messages.update("message_id", thread_id: "thread_id") assert_pattern do - response => OpenAI::Models::Beta::Threads::Message + response => OpenAI::Beta::Threads::Message end assert_pattern do response => { id: String, assistant_id: String | nil, - attachments: ^(OpenAI::Internal::Type::ArrayOf[OpenAI::Models::Beta::Threads::Message::Attachment]) | nil, + attachments: ^(OpenAI::Internal::Type::ArrayOf[OpenAI::Beta::Threads::Message::Attachment]) | nil, completed_at: Integer | nil, - content: ^(OpenAI::Internal::Type::ArrayOf[union: OpenAI::Models::Beta::Threads::MessageContent]), + content: ^(OpenAI::Internal::Type::ArrayOf[union: OpenAI::Beta::Threads::MessageContent]), created_at: Integer, incomplete_at: Integer | nil, - incomplete_details: OpenAI::Models::Beta::Threads::Message::IncompleteDetails | nil, + incomplete_details: OpenAI::Beta::Threads::Message::IncompleteDetails | nil, metadata: ^(OpenAI::Internal::Type::HashOf[String]) | nil, object: Symbol, - role: OpenAI::Models::Beta::Threads::Message::Role, + role: OpenAI::Beta::Threads::Message::Role, run_id: String | nil, - status: OpenAI::Models::Beta::Threads::Message::Status, + status: OpenAI::Beta::Threads::Message::Status, thread_id: String } end @@ -95,24 +95,24 @@ def test_list return if row.nil? assert_pattern do - row => OpenAI::Models::Beta::Threads::Message + row => OpenAI::Beta::Threads::Message end assert_pattern do row => { id: String, assistant_id: String | nil, - attachments: ^(OpenAI::Internal::Type::ArrayOf[OpenAI::Models::Beta::Threads::Message::Attachment]) | nil, + attachments: ^(OpenAI::Internal::Type::ArrayOf[OpenAI::Beta::Threads::Message::Attachment]) | nil, completed_at: Integer | nil, - content: ^(OpenAI::Internal::Type::ArrayOf[union: OpenAI::Models::Beta::Threads::MessageContent]), + content: ^(OpenAI::Internal::Type::ArrayOf[union: OpenAI::Beta::Threads::MessageContent]), created_at: Integer, incomplete_at: Integer | nil, - incomplete_details: OpenAI::Models::Beta::Threads::Message::IncompleteDetails | nil, + incomplete_details: OpenAI::Beta::Threads::Message::IncompleteDetails | nil, metadata: ^(OpenAI::Internal::Type::HashOf[String]) | nil, object: Symbol, - role: OpenAI::Models::Beta::Threads::Message::Role, + role: OpenAI::Beta::Threads::Message::Role, run_id: String | nil, - status: OpenAI::Models::Beta::Threads::Message::Status, + status: OpenAI::Beta::Threads::Message::Status, thread_id: String } end @@ -122,7 +122,7 @@ def test_delete_required_params response = @openai.beta.threads.messages.delete("message_id", thread_id: "thread_id") assert_pattern do - response => OpenAI::Models::Beta::Threads::MessageDeleted + response => OpenAI::Beta::Threads::MessageDeleted end assert_pattern do diff --git a/test/openai/resources/beta/threads/runs/steps_test.rb b/test/openai/resources/beta/threads/runs/steps_test.rb index 200fc186..bb9c7355 100644 --- a/test/openai/resources/beta/threads/runs/steps_test.rb +++ b/test/openai/resources/beta/threads/runs/steps_test.rb @@ -7,7 +7,7 @@ def test_retrieve_required_params response = @openai.beta.threads.runs.steps.retrieve("step_id", thread_id: "thread_id", run_id: "run_id") assert_pattern do - response => OpenAI::Models::Beta::Threads::Runs::RunStep + response => OpenAI::Beta::Threads::Runs::RunStep end assert_pattern do @@ -19,15 +19,15 @@ def test_retrieve_required_params created_at: Integer, expired_at: Integer | nil, failed_at: Integer | nil, - last_error: OpenAI::Models::Beta::Threads::Runs::RunStep::LastError | nil, + last_error: OpenAI::Beta::Threads::Runs::RunStep::LastError | nil, metadata: ^(OpenAI::Internal::Type::HashOf[String]) | nil, object: Symbol, run_id: String, - status: OpenAI::Models::Beta::Threads::Runs::RunStep::Status, - step_details: OpenAI::Models::Beta::Threads::Runs::RunStep::StepDetails, + status: OpenAI::Beta::Threads::Runs::RunStep::Status, + step_details: OpenAI::Beta::Threads::Runs::RunStep::StepDetails, thread_id: String, - type: OpenAI::Models::Beta::Threads::Runs::RunStep::Type, - usage: OpenAI::Models::Beta::Threads::Runs::RunStep::Usage | nil + type: OpenAI::Beta::Threads::Runs::RunStep::Type, + usage: OpenAI::Beta::Threads::Runs::RunStep::Usage | nil } end end @@ -43,7 +43,7 @@ def test_list_required_params return if row.nil? assert_pattern do - row => OpenAI::Models::Beta::Threads::Runs::RunStep + row => OpenAI::Beta::Threads::Runs::RunStep end assert_pattern do @@ -55,15 +55,15 @@ def test_list_required_params created_at: Integer, expired_at: Integer | nil, failed_at: Integer | nil, - last_error: OpenAI::Models::Beta::Threads::Runs::RunStep::LastError | nil, + last_error: OpenAI::Beta::Threads::Runs::RunStep::LastError | nil, metadata: ^(OpenAI::Internal::Type::HashOf[String]) | nil, object: Symbol, run_id: String, - status: OpenAI::Models::Beta::Threads::Runs::RunStep::Status, - step_details: OpenAI::Models::Beta::Threads::Runs::RunStep::StepDetails, + status: OpenAI::Beta::Threads::Runs::RunStep::Status, + step_details: OpenAI::Beta::Threads::Runs::RunStep::StepDetails, thread_id: String, - type: OpenAI::Models::Beta::Threads::Runs::RunStep::Type, - usage: OpenAI::Models::Beta::Threads::Runs::RunStep::Usage | nil + type: OpenAI::Beta::Threads::Runs::RunStep::Type, + usage: OpenAI::Beta::Threads::Runs::RunStep::Usage | nil } end end diff --git a/test/openai/resources/beta/threads/runs_test.rb b/test/openai/resources/beta/threads/runs_test.rb index 2ada16a3..bed1e829 100644 --- a/test/openai/resources/beta/threads/runs_test.rb +++ b/test/openai/resources/beta/threads/runs_test.rb @@ -7,7 +7,7 @@ def test_create_required_params response = @openai.beta.threads.runs.create("thread_id", assistant_id: "assistant_id") assert_pattern do - response => OpenAI::Models::Beta::Threads::Run + response => OpenAI::Beta::Threads::Run end assert_pattern do @@ -19,24 +19,24 @@ def test_create_required_params created_at: Integer, expires_at: Integer | nil, failed_at: Integer | nil, - incomplete_details: OpenAI::Models::Beta::Threads::Run::IncompleteDetails | nil, + incomplete_details: OpenAI::Beta::Threads::Run::IncompleteDetails | nil, instructions: String, - last_error: OpenAI::Models::Beta::Threads::Run::LastError | nil, + last_error: OpenAI::Beta::Threads::Run::LastError | nil, max_completion_tokens: Integer | nil, max_prompt_tokens: Integer | nil, metadata: ^(OpenAI::Internal::Type::HashOf[String]) | nil, model: String, object: Symbol, parallel_tool_calls: OpenAI::Internal::Type::Boolean, - required_action: OpenAI::Models::Beta::Threads::Run::RequiredAction | nil, - response_format: OpenAI::Models::Beta::AssistantResponseFormatOption | nil, + required_action: OpenAI::Beta::Threads::Run::RequiredAction | nil, + response_format: OpenAI::Beta::AssistantResponseFormatOption | nil, started_at: Integer | nil, - status: OpenAI::Models::Beta::Threads::RunStatus, + status: OpenAI::Beta::Threads::RunStatus, thread_id: String, - tool_choice: OpenAI::Models::Beta::AssistantToolChoiceOption | nil, - tools: ^(OpenAI::Internal::Type::ArrayOf[union: OpenAI::Models::Beta::AssistantTool]), - truncation_strategy: OpenAI::Models::Beta::Threads::Run::TruncationStrategy | nil, - usage: OpenAI::Models::Beta::Threads::Run::Usage | nil, + tool_choice: OpenAI::Beta::AssistantToolChoiceOption | nil, + tools: ^(OpenAI::Internal::Type::ArrayOf[union: OpenAI::Beta::AssistantTool]), + truncation_strategy: OpenAI::Beta::Threads::Run::TruncationStrategy | nil, + usage: OpenAI::Beta::Threads::Run::Usage | nil, temperature: Float | nil, top_p: Float | nil } @@ -47,7 +47,7 @@ def test_retrieve_required_params response = @openai.beta.threads.runs.retrieve("run_id", thread_id: "thread_id") assert_pattern do - response => OpenAI::Models::Beta::Threads::Run + response => OpenAI::Beta::Threads::Run end assert_pattern do @@ -59,24 +59,24 @@ def test_retrieve_required_params created_at: Integer, expires_at: Integer | nil, failed_at: Integer | nil, - incomplete_details: OpenAI::Models::Beta::Threads::Run::IncompleteDetails | nil, + incomplete_details: OpenAI::Beta::Threads::Run::IncompleteDetails | nil, instructions: String, - last_error: OpenAI::Models::Beta::Threads::Run::LastError | nil, + last_error: OpenAI::Beta::Threads::Run::LastError | nil, max_completion_tokens: Integer | nil, max_prompt_tokens: Integer | nil, metadata: ^(OpenAI::Internal::Type::HashOf[String]) | nil, model: String, object: Symbol, parallel_tool_calls: OpenAI::Internal::Type::Boolean, - required_action: OpenAI::Models::Beta::Threads::Run::RequiredAction | nil, - response_format: OpenAI::Models::Beta::AssistantResponseFormatOption | nil, + required_action: OpenAI::Beta::Threads::Run::RequiredAction | nil, + response_format: OpenAI::Beta::AssistantResponseFormatOption | nil, started_at: Integer | nil, - status: OpenAI::Models::Beta::Threads::RunStatus, + status: OpenAI::Beta::Threads::RunStatus, thread_id: String, - tool_choice: OpenAI::Models::Beta::AssistantToolChoiceOption | nil, - tools: ^(OpenAI::Internal::Type::ArrayOf[union: OpenAI::Models::Beta::AssistantTool]), - truncation_strategy: OpenAI::Models::Beta::Threads::Run::TruncationStrategy | nil, - usage: OpenAI::Models::Beta::Threads::Run::Usage | nil, + tool_choice: OpenAI::Beta::AssistantToolChoiceOption | nil, + tools: ^(OpenAI::Internal::Type::ArrayOf[union: OpenAI::Beta::AssistantTool]), + truncation_strategy: OpenAI::Beta::Threads::Run::TruncationStrategy | nil, + usage: OpenAI::Beta::Threads::Run::Usage | nil, temperature: Float | nil, top_p: Float | nil } @@ -87,7 +87,7 @@ def test_update_required_params response = @openai.beta.threads.runs.update("run_id", thread_id: "thread_id") assert_pattern do - response => OpenAI::Models::Beta::Threads::Run + response => OpenAI::Beta::Threads::Run end assert_pattern do @@ -99,24 +99,24 @@ def test_update_required_params created_at: Integer, expires_at: Integer | nil, failed_at: Integer | nil, - incomplete_details: OpenAI::Models::Beta::Threads::Run::IncompleteDetails | nil, + incomplete_details: OpenAI::Beta::Threads::Run::IncompleteDetails | nil, instructions: String, - last_error: OpenAI::Models::Beta::Threads::Run::LastError | nil, + last_error: OpenAI::Beta::Threads::Run::LastError | nil, max_completion_tokens: Integer | nil, max_prompt_tokens: Integer | nil, metadata: ^(OpenAI::Internal::Type::HashOf[String]) | nil, model: String, object: Symbol, parallel_tool_calls: OpenAI::Internal::Type::Boolean, - required_action: OpenAI::Models::Beta::Threads::Run::RequiredAction | nil, - response_format: OpenAI::Models::Beta::AssistantResponseFormatOption | nil, + required_action: OpenAI::Beta::Threads::Run::RequiredAction | nil, + response_format: OpenAI::Beta::AssistantResponseFormatOption | nil, started_at: Integer | nil, - status: OpenAI::Models::Beta::Threads::RunStatus, + status: OpenAI::Beta::Threads::RunStatus, thread_id: String, - tool_choice: OpenAI::Models::Beta::AssistantToolChoiceOption | nil, - tools: ^(OpenAI::Internal::Type::ArrayOf[union: OpenAI::Models::Beta::AssistantTool]), - truncation_strategy: OpenAI::Models::Beta::Threads::Run::TruncationStrategy | nil, - usage: OpenAI::Models::Beta::Threads::Run::Usage | nil, + tool_choice: OpenAI::Beta::AssistantToolChoiceOption | nil, + tools: ^(OpenAI::Internal::Type::ArrayOf[union: OpenAI::Beta::AssistantTool]), + truncation_strategy: OpenAI::Beta::Threads::Run::TruncationStrategy | nil, + usage: OpenAI::Beta::Threads::Run::Usage | nil, temperature: Float | nil, top_p: Float | nil } @@ -134,7 +134,7 @@ def test_list return if row.nil? assert_pattern do - row => OpenAI::Models::Beta::Threads::Run + row => OpenAI::Beta::Threads::Run end assert_pattern do @@ -146,24 +146,24 @@ def test_list created_at: Integer, expires_at: Integer | nil, failed_at: Integer | nil, - incomplete_details: OpenAI::Models::Beta::Threads::Run::IncompleteDetails | nil, + incomplete_details: OpenAI::Beta::Threads::Run::IncompleteDetails | nil, instructions: String, - last_error: OpenAI::Models::Beta::Threads::Run::LastError | nil, + last_error: OpenAI::Beta::Threads::Run::LastError | nil, max_completion_tokens: Integer | nil, max_prompt_tokens: Integer | nil, metadata: ^(OpenAI::Internal::Type::HashOf[String]) | nil, model: String, object: Symbol, parallel_tool_calls: OpenAI::Internal::Type::Boolean, - required_action: OpenAI::Models::Beta::Threads::Run::RequiredAction | nil, - response_format: OpenAI::Models::Beta::AssistantResponseFormatOption | nil, + required_action: OpenAI::Beta::Threads::Run::RequiredAction | nil, + response_format: OpenAI::Beta::AssistantResponseFormatOption | nil, started_at: Integer | nil, - status: OpenAI::Models::Beta::Threads::RunStatus, + status: OpenAI::Beta::Threads::RunStatus, thread_id: String, - tool_choice: OpenAI::Models::Beta::AssistantToolChoiceOption | nil, - tools: ^(OpenAI::Internal::Type::ArrayOf[union: OpenAI::Models::Beta::AssistantTool]), - truncation_strategy: OpenAI::Models::Beta::Threads::Run::TruncationStrategy | nil, - usage: OpenAI::Models::Beta::Threads::Run::Usage | nil, + tool_choice: OpenAI::Beta::AssistantToolChoiceOption | nil, + tools: ^(OpenAI::Internal::Type::ArrayOf[union: OpenAI::Beta::AssistantTool]), + truncation_strategy: OpenAI::Beta::Threads::Run::TruncationStrategy | nil, + usage: OpenAI::Beta::Threads::Run::Usage | nil, temperature: Float | nil, top_p: Float | nil } @@ -174,7 +174,7 @@ def test_cancel_required_params response = @openai.beta.threads.runs.cancel("run_id", thread_id: "thread_id") assert_pattern do - response => OpenAI::Models::Beta::Threads::Run + response => OpenAI::Beta::Threads::Run end assert_pattern do @@ -186,24 +186,24 @@ def test_cancel_required_params created_at: Integer, expires_at: Integer | nil, failed_at: Integer | nil, - incomplete_details: OpenAI::Models::Beta::Threads::Run::IncompleteDetails | nil, + incomplete_details: OpenAI::Beta::Threads::Run::IncompleteDetails | nil, instructions: String, - last_error: OpenAI::Models::Beta::Threads::Run::LastError | nil, + last_error: OpenAI::Beta::Threads::Run::LastError | nil, max_completion_tokens: Integer | nil, max_prompt_tokens: Integer | nil, metadata: ^(OpenAI::Internal::Type::HashOf[String]) | nil, model: String, object: Symbol, parallel_tool_calls: OpenAI::Internal::Type::Boolean, - required_action: OpenAI::Models::Beta::Threads::Run::RequiredAction | nil, - response_format: OpenAI::Models::Beta::AssistantResponseFormatOption | nil, + required_action: OpenAI::Beta::Threads::Run::RequiredAction | nil, + response_format: OpenAI::Beta::AssistantResponseFormatOption | nil, started_at: Integer | nil, - status: OpenAI::Models::Beta::Threads::RunStatus, + status: OpenAI::Beta::Threads::RunStatus, thread_id: String, - tool_choice: OpenAI::Models::Beta::AssistantToolChoiceOption | nil, - tools: ^(OpenAI::Internal::Type::ArrayOf[union: OpenAI::Models::Beta::AssistantTool]), - truncation_strategy: OpenAI::Models::Beta::Threads::Run::TruncationStrategy | nil, - usage: OpenAI::Models::Beta::Threads::Run::Usage | nil, + tool_choice: OpenAI::Beta::AssistantToolChoiceOption | nil, + tools: ^(OpenAI::Internal::Type::ArrayOf[union: OpenAI::Beta::AssistantTool]), + truncation_strategy: OpenAI::Beta::Threads::Run::TruncationStrategy | nil, + usage: OpenAI::Beta::Threads::Run::Usage | nil, temperature: Float | nil, top_p: Float | nil } @@ -215,7 +215,7 @@ def test_submit_tool_outputs_required_params @openai.beta.threads.runs.submit_tool_outputs("run_id", thread_id: "thread_id", tool_outputs: [{}]) assert_pattern do - response => OpenAI::Models::Beta::Threads::Run + response => OpenAI::Beta::Threads::Run end assert_pattern do @@ -227,24 +227,24 @@ def test_submit_tool_outputs_required_params created_at: Integer, expires_at: Integer | nil, failed_at: Integer | nil, - incomplete_details: OpenAI::Models::Beta::Threads::Run::IncompleteDetails | nil, + incomplete_details: OpenAI::Beta::Threads::Run::IncompleteDetails | nil, instructions: String, - last_error: OpenAI::Models::Beta::Threads::Run::LastError | nil, + last_error: OpenAI::Beta::Threads::Run::LastError | nil, max_completion_tokens: Integer | nil, max_prompt_tokens: Integer | nil, metadata: ^(OpenAI::Internal::Type::HashOf[String]) | nil, model: String, object: Symbol, parallel_tool_calls: OpenAI::Internal::Type::Boolean, - required_action: OpenAI::Models::Beta::Threads::Run::RequiredAction | nil, - response_format: OpenAI::Models::Beta::AssistantResponseFormatOption | nil, + required_action: OpenAI::Beta::Threads::Run::RequiredAction | nil, + response_format: OpenAI::Beta::AssistantResponseFormatOption | nil, started_at: Integer | nil, - status: OpenAI::Models::Beta::Threads::RunStatus, + status: OpenAI::Beta::Threads::RunStatus, thread_id: String, - tool_choice: OpenAI::Models::Beta::AssistantToolChoiceOption | nil, - tools: ^(OpenAI::Internal::Type::ArrayOf[union: OpenAI::Models::Beta::AssistantTool]), - truncation_strategy: OpenAI::Models::Beta::Threads::Run::TruncationStrategy | nil, - usage: OpenAI::Models::Beta::Threads::Run::Usage | nil, + tool_choice: OpenAI::Beta::AssistantToolChoiceOption | nil, + tools: ^(OpenAI::Internal::Type::ArrayOf[union: OpenAI::Beta::AssistantTool]), + truncation_strategy: OpenAI::Beta::Threads::Run::TruncationStrategy | nil, + usage: OpenAI::Beta::Threads::Run::Usage | nil, temperature: Float | nil, top_p: Float | nil } diff --git a/test/openai/resources/beta/threads_test.rb b/test/openai/resources/beta/threads_test.rb index da2960dc..903a5185 100644 --- a/test/openai/resources/beta/threads_test.rb +++ b/test/openai/resources/beta/threads_test.rb @@ -7,7 +7,7 @@ def test_create response = @openai.beta.threads.create assert_pattern do - response => OpenAI::Models::Beta::Thread + response => OpenAI::Beta::Thread end assert_pattern do @@ -16,7 +16,7 @@ def test_create created_at: Integer, metadata: ^(OpenAI::Internal::Type::HashOf[String]) | nil, object: Symbol, - tool_resources: OpenAI::Models::Beta::Thread::ToolResources | nil + tool_resources: OpenAI::Beta::Thread::ToolResources | nil } end end @@ -25,7 +25,7 @@ def test_retrieve response = @openai.beta.threads.retrieve("thread_id") assert_pattern do - response => OpenAI::Models::Beta::Thread + response => OpenAI::Beta::Thread end assert_pattern do @@ -34,7 +34,7 @@ def test_retrieve created_at: Integer, metadata: ^(OpenAI::Internal::Type::HashOf[String]) | nil, object: Symbol, - tool_resources: OpenAI::Models::Beta::Thread::ToolResources | nil + tool_resources: OpenAI::Beta::Thread::ToolResources | nil } end end @@ -43,7 +43,7 @@ def test_update response = @openai.beta.threads.update("thread_id") assert_pattern do - response => OpenAI::Models::Beta::Thread + response => OpenAI::Beta::Thread end assert_pattern do @@ -52,7 +52,7 @@ def test_update created_at: Integer, metadata: ^(OpenAI::Internal::Type::HashOf[String]) | nil, object: Symbol, - tool_resources: OpenAI::Models::Beta::Thread::ToolResources | nil + tool_resources: OpenAI::Beta::Thread::ToolResources | nil } end end @@ -61,7 +61,7 @@ def test_delete response = @openai.beta.threads.delete("thread_id") assert_pattern do - response => OpenAI::Models::Beta::ThreadDeleted + response => OpenAI::Beta::ThreadDeleted end assert_pattern do @@ -77,7 +77,7 @@ def test_create_and_run_required_params response = @openai.beta.threads.create_and_run(assistant_id: "assistant_id") assert_pattern do - response => OpenAI::Models::Beta::Threads::Run + response => OpenAI::Beta::Threads::Run end assert_pattern do @@ -89,24 +89,24 @@ def test_create_and_run_required_params created_at: Integer, expires_at: Integer | nil, failed_at: Integer | nil, - incomplete_details: OpenAI::Models::Beta::Threads::Run::IncompleteDetails | nil, + incomplete_details: OpenAI::Beta::Threads::Run::IncompleteDetails | nil, instructions: String, - last_error: OpenAI::Models::Beta::Threads::Run::LastError | nil, + last_error: OpenAI::Beta::Threads::Run::LastError | nil, max_completion_tokens: Integer | nil, max_prompt_tokens: Integer | nil, metadata: ^(OpenAI::Internal::Type::HashOf[String]) | nil, model: String, object: Symbol, parallel_tool_calls: OpenAI::Internal::Type::Boolean, - required_action: OpenAI::Models::Beta::Threads::Run::RequiredAction | nil, - response_format: OpenAI::Models::Beta::AssistantResponseFormatOption | nil, + required_action: OpenAI::Beta::Threads::Run::RequiredAction | nil, + response_format: OpenAI::Beta::AssistantResponseFormatOption | nil, started_at: Integer | nil, - status: OpenAI::Models::Beta::Threads::RunStatus, + status: OpenAI::Beta::Threads::RunStatus, thread_id: String, - tool_choice: OpenAI::Models::Beta::AssistantToolChoiceOption | nil, - tools: ^(OpenAI::Internal::Type::ArrayOf[union: OpenAI::Models::Beta::AssistantTool]), - truncation_strategy: OpenAI::Models::Beta::Threads::Run::TruncationStrategy | nil, - usage: OpenAI::Models::Beta::Threads::Run::Usage | nil, + tool_choice: OpenAI::Beta::AssistantToolChoiceOption | nil, + tools: ^(OpenAI::Internal::Type::ArrayOf[union: OpenAI::Beta::AssistantTool]), + truncation_strategy: OpenAI::Beta::Threads::Run::TruncationStrategy | nil, + usage: OpenAI::Beta::Threads::Run::Usage | nil, temperature: Float | nil, top_p: Float | nil } diff --git a/test/openai/resources/chat/completions/messages_test.rb b/test/openai/resources/chat/completions/messages_test.rb index 1b68a1b0..99f3a865 100644 --- a/test/openai/resources/chat/completions/messages_test.rb +++ b/test/openai/resources/chat/completions/messages_test.rb @@ -14,7 +14,7 @@ def test_list return if row.nil? assert_pattern do - row => OpenAI::Models::Chat::ChatCompletionStoreMessage + row => OpenAI::Chat::ChatCompletionStoreMessage end end end diff --git a/test/openai/resources/chat/completions_test.rb b/test/openai/resources/chat/completions_test.rb index f73285f4..2bb2db4b 100644 --- a/test/openai/resources/chat/completions_test.rb +++ b/test/openai/resources/chat/completions_test.rb @@ -8,19 +8,19 @@ def test_create_required_params @openai.chat.completions.create(messages: [{content: "string", role: :developer}], model: :"gpt-4.1") assert_pattern do - response => OpenAI::Models::Chat::ChatCompletion + response => OpenAI::Chat::ChatCompletion end assert_pattern do response => { id: String, - choices: ^(OpenAI::Internal::Type::ArrayOf[OpenAI::Models::Chat::ChatCompletion::Choice]), + choices: ^(OpenAI::Internal::Type::ArrayOf[OpenAI::Chat::ChatCompletion::Choice]), created: Integer, model: String, object: Symbol, - service_tier: OpenAI::Models::Chat::ChatCompletion::ServiceTier | nil, + service_tier: OpenAI::Chat::ChatCompletion::ServiceTier | nil, system_fingerprint: String | nil, - usage: OpenAI::Models::CompletionUsage | nil + usage: OpenAI::CompletionUsage | nil } end end @@ -29,19 +29,19 @@ def test_retrieve response = @openai.chat.completions.retrieve("completion_id") assert_pattern do - response => OpenAI::Models::Chat::ChatCompletion + response => OpenAI::Chat::ChatCompletion end assert_pattern do response => { id: String, - choices: ^(OpenAI::Internal::Type::ArrayOf[OpenAI::Models::Chat::ChatCompletion::Choice]), + choices: ^(OpenAI::Internal::Type::ArrayOf[OpenAI::Chat::ChatCompletion::Choice]), created: Integer, model: String, object: Symbol, - service_tier: OpenAI::Models::Chat::ChatCompletion::ServiceTier | nil, + service_tier: OpenAI::Chat::ChatCompletion::ServiceTier | nil, system_fingerprint: String | nil, - usage: OpenAI::Models::CompletionUsage | nil + usage: OpenAI::CompletionUsage | nil } end end @@ -50,19 +50,19 @@ def test_update_required_params response = @openai.chat.completions.update("completion_id", metadata: {foo: "string"}) assert_pattern do - response => OpenAI::Models::Chat::ChatCompletion + response => OpenAI::Chat::ChatCompletion end assert_pattern do response => { id: String, - choices: ^(OpenAI::Internal::Type::ArrayOf[OpenAI::Models::Chat::ChatCompletion::Choice]), + choices: ^(OpenAI::Internal::Type::ArrayOf[OpenAI::Chat::ChatCompletion::Choice]), created: Integer, model: String, object: Symbol, - service_tier: OpenAI::Models::Chat::ChatCompletion::ServiceTier | nil, + service_tier: OpenAI::Chat::ChatCompletion::ServiceTier | nil, system_fingerprint: String | nil, - usage: OpenAI::Models::CompletionUsage | nil + usage: OpenAI::CompletionUsage | nil } end end @@ -78,19 +78,19 @@ def test_list return if row.nil? assert_pattern do - row => OpenAI::Models::Chat::ChatCompletion + row => OpenAI::Chat::ChatCompletion end assert_pattern do row => { id: String, - choices: ^(OpenAI::Internal::Type::ArrayOf[OpenAI::Models::Chat::ChatCompletion::Choice]), + choices: ^(OpenAI::Internal::Type::ArrayOf[OpenAI::Chat::ChatCompletion::Choice]), created: Integer, model: String, object: Symbol, - service_tier: OpenAI::Models::Chat::ChatCompletion::ServiceTier | nil, + service_tier: OpenAI::Chat::ChatCompletion::ServiceTier | nil, system_fingerprint: String | nil, - usage: OpenAI::Models::CompletionUsage | nil + usage: OpenAI::CompletionUsage | nil } end end @@ -99,7 +99,7 @@ def test_delete response = @openai.chat.completions.delete("completion_id") assert_pattern do - response => OpenAI::Models::Chat::ChatCompletionDeleted + response => OpenAI::Chat::ChatCompletionDeleted end assert_pattern do diff --git a/test/openai/resources/completions_test.rb b/test/openai/resources/completions_test.rb index e37c502a..349c682e 100644 --- a/test/openai/resources/completions_test.rb +++ b/test/openai/resources/completions_test.rb @@ -7,18 +7,18 @@ def test_create_required_params response = @openai.completions.create(model: :"gpt-3.5-turbo-instruct", prompt: "This is a test.") assert_pattern do - response => OpenAI::Models::Completion + response => OpenAI::Completion end assert_pattern do response => { id: String, - choices: ^(OpenAI::Internal::Type::ArrayOf[OpenAI::Models::CompletionChoice]), + choices: ^(OpenAI::Internal::Type::ArrayOf[OpenAI::CompletionChoice]), created: Integer, model: String, object: Symbol, system_fingerprint: String | nil, - usage: OpenAI::Models::CompletionUsage | nil + usage: OpenAI::CompletionUsage | nil } end end diff --git a/test/openai/resources/embeddings_test.rb b/test/openai/resources/embeddings_test.rb index a280c031..b5539280 100644 --- a/test/openai/resources/embeddings_test.rb +++ b/test/openai/resources/embeddings_test.rb @@ -11,15 +11,15 @@ def test_create_required_params ) assert_pattern do - response => OpenAI::Models::CreateEmbeddingResponse + response => OpenAI::CreateEmbeddingResponse end assert_pattern do response => { - data: ^(OpenAI::Internal::Type::ArrayOf[OpenAI::Models::Embedding]), + data: ^(OpenAI::Internal::Type::ArrayOf[OpenAI::Embedding]), model: String, object: Symbol, - usage: OpenAI::Models::CreateEmbeddingResponse::Usage + usage: OpenAI::CreateEmbeddingResponse::Usage } end end diff --git a/test/openai/resources/evals/runs_test.rb b/test/openai/resources/evals/runs_test.rb index d55ad6a8..cb839c51 100644 --- a/test/openai/resources/evals/runs_test.rb +++ b/test/openai/resources/evals/runs_test.rb @@ -19,7 +19,7 @@ def test_create_required_params id: String, created_at: Integer, data_source: OpenAI::Models::Evals::RunCreateResponse::DataSource, - error: OpenAI::Models::Evals::EvalAPIError, + error: OpenAI::Evals::EvalAPIError, eval_id: String, metadata: ^(OpenAI::Internal::Type::HashOf[String]) | nil, model: String, @@ -46,7 +46,7 @@ def test_retrieve_required_params id: String, created_at: Integer, data_source: OpenAI::Models::Evals::RunRetrieveResponse::DataSource, - error: OpenAI::Models::Evals::EvalAPIError, + error: OpenAI::Evals::EvalAPIError, eval_id: String, metadata: ^(OpenAI::Internal::Type::HashOf[String]) | nil, model: String, @@ -80,7 +80,7 @@ def test_list id: String, created_at: Integer, data_source: OpenAI::Models::Evals::RunListResponse::DataSource, - error: OpenAI::Models::Evals::EvalAPIError, + error: OpenAI::Evals::EvalAPIError, eval_id: String, metadata: ^(OpenAI::Internal::Type::HashOf[String]) | nil, model: String, @@ -123,7 +123,7 @@ def test_cancel_required_params id: String, created_at: Integer, data_source: OpenAI::Models::Evals::RunCancelResponse::DataSource, - error: OpenAI::Models::Evals::EvalAPIError, + error: OpenAI::Evals::EvalAPIError, eval_id: String, metadata: ^(OpenAI::Internal::Type::HashOf[String]) | nil, model: String, diff --git a/test/openai/resources/files_test.rb b/test/openai/resources/files_test.rb index 9fceee6a..de03395e 100644 --- a/test/openai/resources/files_test.rb +++ b/test/openai/resources/files_test.rb @@ -7,7 +7,7 @@ def test_create_required_params response = @openai.files.create(file: Pathname(__FILE__), purpose: :assistants) assert_pattern do - response => OpenAI::Models::FileObject + response => OpenAI::FileObject end assert_pattern do @@ -17,8 +17,8 @@ def test_create_required_params created_at: Integer, filename: String, object: Symbol, - purpose: OpenAI::Models::FileObject::Purpose, - status: OpenAI::Models::FileObject::Status, + purpose: OpenAI::FileObject::Purpose, + status: OpenAI::FileObject::Status, expires_at: Integer | nil, status_details: String | nil } @@ -29,7 +29,7 @@ def test_retrieve response = @openai.files.retrieve("file_id") assert_pattern do - response => OpenAI::Models::FileObject + response => OpenAI::FileObject end assert_pattern do @@ -39,8 +39,8 @@ def test_retrieve created_at: Integer, filename: String, object: Symbol, - purpose: OpenAI::Models::FileObject::Purpose, - status: OpenAI::Models::FileObject::Status, + purpose: OpenAI::FileObject::Purpose, + status: OpenAI::FileObject::Status, expires_at: Integer | nil, status_details: String | nil } @@ -58,7 +58,7 @@ def test_list return if row.nil? assert_pattern do - row => OpenAI::Models::FileObject + row => OpenAI::FileObject end assert_pattern do @@ -68,8 +68,8 @@ def test_list created_at: Integer, filename: String, object: Symbol, - purpose: OpenAI::Models::FileObject::Purpose, - status: OpenAI::Models::FileObject::Status, + purpose: OpenAI::FileObject::Purpose, + status: OpenAI::FileObject::Status, expires_at: Integer | nil, status_details: String | nil } @@ -80,7 +80,7 @@ def test_delete response = @openai.files.delete("file_id") assert_pattern do - response => OpenAI::Models::FileDeleted + response => OpenAI::FileDeleted end assert_pattern do diff --git a/test/openai/resources/fine_tuning/jobs/checkpoints_test.rb b/test/openai/resources/fine_tuning/jobs/checkpoints_test.rb index 08154e71..ab4136ce 100644 --- a/test/openai/resources/fine_tuning/jobs/checkpoints_test.rb +++ b/test/openai/resources/fine_tuning/jobs/checkpoints_test.rb @@ -14,7 +14,7 @@ def test_list return if row.nil? assert_pattern do - row => OpenAI::Models::FineTuning::Jobs::FineTuningJobCheckpoint + row => OpenAI::FineTuning::Jobs::FineTuningJobCheckpoint end assert_pattern do @@ -23,7 +23,7 @@ def test_list created_at: Integer, fine_tuned_model_checkpoint: String, fine_tuning_job_id: String, - metrics: OpenAI::Models::FineTuning::Jobs::FineTuningJobCheckpoint::Metrics, + metrics: OpenAI::FineTuning::Jobs::FineTuningJobCheckpoint::Metrics, object: Symbol, step_number: Integer } diff --git a/test/openai/resources/fine_tuning/jobs_test.rb b/test/openai/resources/fine_tuning/jobs_test.rb index 9f164929..188a79e7 100644 --- a/test/openai/resources/fine_tuning/jobs_test.rb +++ b/test/openai/resources/fine_tuning/jobs_test.rb @@ -7,30 +7,30 @@ def test_create_required_params response = @openai.fine_tuning.jobs.create(model: :"babbage-002", training_file: "file-abc123") assert_pattern do - response => OpenAI::Models::FineTuning::FineTuningJob + response => OpenAI::FineTuning::FineTuningJob end assert_pattern do response => { id: String, created_at: Integer, - error: OpenAI::Models::FineTuning::FineTuningJob::Error | nil, + error: OpenAI::FineTuning::FineTuningJob::Error | nil, fine_tuned_model: String | nil, finished_at: Integer | nil, - hyperparameters: OpenAI::Models::FineTuning::FineTuningJob::Hyperparameters, + hyperparameters: OpenAI::FineTuning::FineTuningJob::Hyperparameters, model: String, object: Symbol, organization_id: String, result_files: ^(OpenAI::Internal::Type::ArrayOf[String]), seed: Integer, - status: OpenAI::Models::FineTuning::FineTuningJob::Status, + status: OpenAI::FineTuning::FineTuningJob::Status, trained_tokens: Integer | nil, training_file: String, validation_file: String | nil, estimated_finish: Integer | nil, - integrations: ^(OpenAI::Internal::Type::ArrayOf[OpenAI::Models::FineTuning::FineTuningJobWandbIntegrationObject]) | nil, + integrations: ^(OpenAI::Internal::Type::ArrayOf[OpenAI::FineTuning::FineTuningJobWandbIntegrationObject]) | nil, metadata: ^(OpenAI::Internal::Type::HashOf[String]) | nil, - method_: OpenAI::Models::FineTuning::FineTuningJob::Method | nil + method_: OpenAI::FineTuning::FineTuningJob::Method | nil } end end @@ -39,30 +39,30 @@ def test_retrieve response = @openai.fine_tuning.jobs.retrieve("ft-AF1WoRqd3aJAHsqc9NY7iL8F") assert_pattern do - response => OpenAI::Models::FineTuning::FineTuningJob + response => OpenAI::FineTuning::FineTuningJob end assert_pattern do response => { id: String, created_at: Integer, - error: OpenAI::Models::FineTuning::FineTuningJob::Error | nil, + error: OpenAI::FineTuning::FineTuningJob::Error | nil, fine_tuned_model: String | nil, finished_at: Integer | nil, - hyperparameters: OpenAI::Models::FineTuning::FineTuningJob::Hyperparameters, + hyperparameters: OpenAI::FineTuning::FineTuningJob::Hyperparameters, model: String, object: Symbol, organization_id: String, result_files: ^(OpenAI::Internal::Type::ArrayOf[String]), seed: Integer, - status: OpenAI::Models::FineTuning::FineTuningJob::Status, + status: OpenAI::FineTuning::FineTuningJob::Status, trained_tokens: Integer | nil, training_file: String, validation_file: String | nil, estimated_finish: Integer | nil, - integrations: ^(OpenAI::Internal::Type::ArrayOf[OpenAI::Models::FineTuning::FineTuningJobWandbIntegrationObject]) | nil, + integrations: ^(OpenAI::Internal::Type::ArrayOf[OpenAI::FineTuning::FineTuningJobWandbIntegrationObject]) | nil, metadata: ^(OpenAI::Internal::Type::HashOf[String]) | nil, - method_: OpenAI::Models::FineTuning::FineTuningJob::Method | nil + method_: OpenAI::FineTuning::FineTuningJob::Method | nil } end end @@ -78,30 +78,30 @@ def test_list return if row.nil? assert_pattern do - row => OpenAI::Models::FineTuning::FineTuningJob + row => OpenAI::FineTuning::FineTuningJob end assert_pattern do row => { id: String, created_at: Integer, - error: OpenAI::Models::FineTuning::FineTuningJob::Error | nil, + error: OpenAI::FineTuning::FineTuningJob::Error | nil, fine_tuned_model: String | nil, finished_at: Integer | nil, - hyperparameters: OpenAI::Models::FineTuning::FineTuningJob::Hyperparameters, + hyperparameters: OpenAI::FineTuning::FineTuningJob::Hyperparameters, model: String, object: Symbol, organization_id: String, result_files: ^(OpenAI::Internal::Type::ArrayOf[String]), seed: Integer, - status: OpenAI::Models::FineTuning::FineTuningJob::Status, + status: OpenAI::FineTuning::FineTuningJob::Status, trained_tokens: Integer | nil, training_file: String, validation_file: String | nil, estimated_finish: Integer | nil, - integrations: ^(OpenAI::Internal::Type::ArrayOf[OpenAI::Models::FineTuning::FineTuningJobWandbIntegrationObject]) | nil, + integrations: ^(OpenAI::Internal::Type::ArrayOf[OpenAI::FineTuning::FineTuningJobWandbIntegrationObject]) | nil, metadata: ^(OpenAI::Internal::Type::HashOf[String]) | nil, - method_: OpenAI::Models::FineTuning::FineTuningJob::Method | nil + method_: OpenAI::FineTuning::FineTuningJob::Method | nil } end end @@ -110,30 +110,30 @@ def test_cancel response = @openai.fine_tuning.jobs.cancel("ft-AF1WoRqd3aJAHsqc9NY7iL8F") assert_pattern do - response => OpenAI::Models::FineTuning::FineTuningJob + response => OpenAI::FineTuning::FineTuningJob end assert_pattern do response => { id: String, created_at: Integer, - error: OpenAI::Models::FineTuning::FineTuningJob::Error | nil, + error: OpenAI::FineTuning::FineTuningJob::Error | nil, fine_tuned_model: String | nil, finished_at: Integer | nil, - hyperparameters: OpenAI::Models::FineTuning::FineTuningJob::Hyperparameters, + hyperparameters: OpenAI::FineTuning::FineTuningJob::Hyperparameters, model: String, object: Symbol, organization_id: String, result_files: ^(OpenAI::Internal::Type::ArrayOf[String]), seed: Integer, - status: OpenAI::Models::FineTuning::FineTuningJob::Status, + status: OpenAI::FineTuning::FineTuningJob::Status, trained_tokens: Integer | nil, training_file: String, validation_file: String | nil, estimated_finish: Integer | nil, - integrations: ^(OpenAI::Internal::Type::ArrayOf[OpenAI::Models::FineTuning::FineTuningJobWandbIntegrationObject]) | nil, + integrations: ^(OpenAI::Internal::Type::ArrayOf[OpenAI::FineTuning::FineTuningJobWandbIntegrationObject]) | nil, metadata: ^(OpenAI::Internal::Type::HashOf[String]) | nil, - method_: OpenAI::Models::FineTuning::FineTuningJob::Method | nil + method_: OpenAI::FineTuning::FineTuningJob::Method | nil } end end @@ -149,18 +149,18 @@ def test_list_events return if row.nil? assert_pattern do - row => OpenAI::Models::FineTuning::FineTuningJobEvent + row => OpenAI::FineTuning::FineTuningJobEvent end assert_pattern do row => { id: String, created_at: Integer, - level: OpenAI::Models::FineTuning::FineTuningJobEvent::Level, + level: OpenAI::FineTuning::FineTuningJobEvent::Level, message: String, object: Symbol, data: OpenAI::Internal::Type::Unknown | nil, - type: OpenAI::Models::FineTuning::FineTuningJobEvent::Type | nil + type: OpenAI::FineTuning::FineTuningJobEvent::Type | nil } end end diff --git a/test/openai/resources/images_test.rb b/test/openai/resources/images_test.rb index ccfee747..6d6dd917 100644 --- a/test/openai/resources/images_test.rb +++ b/test/openai/resources/images_test.rb @@ -7,14 +7,14 @@ def test_create_variation_required_params response = @openai.images.create_variation(image: Pathname(__FILE__)) assert_pattern do - response => OpenAI::Models::ImagesResponse + response => OpenAI::ImagesResponse end assert_pattern do response => { created: Integer, - data: ^(OpenAI::Internal::Type::ArrayOf[OpenAI::Models::Image]) | nil, - usage: OpenAI::Models::ImagesResponse::Usage | nil + data: ^(OpenAI::Internal::Type::ArrayOf[OpenAI::Image]) | nil, + usage: OpenAI::ImagesResponse::Usage | nil } end end @@ -24,14 +24,14 @@ def test_edit_required_params @openai.images.edit(image: Pathname(__FILE__), prompt: "A cute baby sea otter wearing a beret") assert_pattern do - response => OpenAI::Models::ImagesResponse + response => OpenAI::ImagesResponse end assert_pattern do response => { created: Integer, - data: ^(OpenAI::Internal::Type::ArrayOf[OpenAI::Models::Image]) | nil, - usage: OpenAI::Models::ImagesResponse::Usage | nil + data: ^(OpenAI::Internal::Type::ArrayOf[OpenAI::Image]) | nil, + usage: OpenAI::ImagesResponse::Usage | nil } end end @@ -40,14 +40,14 @@ def test_generate_required_params response = @openai.images.generate(prompt: "A cute baby sea otter") assert_pattern do - response => OpenAI::Models::ImagesResponse + response => OpenAI::ImagesResponse end assert_pattern do response => { created: Integer, - data: ^(OpenAI::Internal::Type::ArrayOf[OpenAI::Models::Image]) | nil, - usage: OpenAI::Models::ImagesResponse::Usage | nil + data: ^(OpenAI::Internal::Type::ArrayOf[OpenAI::Image]) | nil, + usage: OpenAI::ImagesResponse::Usage | nil } end end diff --git a/test/openai/resources/models_test.rb b/test/openai/resources/models_test.rb index 291a9a89..1a9ae880 100644 --- a/test/openai/resources/models_test.rb +++ b/test/openai/resources/models_test.rb @@ -7,7 +7,7 @@ def test_retrieve response = @openai.models.retrieve("gpt-4o-mini") assert_pattern do - response => OpenAI::Models::Model + response => OpenAI::Model end assert_pattern do @@ -31,7 +31,7 @@ def test_list return if row.nil? assert_pattern do - row => OpenAI::Models::Model + row => OpenAI::Model end assert_pattern do @@ -48,7 +48,7 @@ def test_delete response = @openai.models.delete("ft:gpt-4o-mini:acemeco:suffix:abc123") assert_pattern do - response => OpenAI::Models::ModelDeleted + response => OpenAI::ModelDeleted end assert_pattern do diff --git a/test/openai/resources/moderations_test.rb b/test/openai/resources/moderations_test.rb index d77f7d0b..8e1ce626 100644 --- a/test/openai/resources/moderations_test.rb +++ b/test/openai/resources/moderations_test.rb @@ -14,7 +14,7 @@ def test_create_required_params response => { id: String, model: String, - results: ^(OpenAI::Internal::Type::ArrayOf[OpenAI::Models::Moderation]) + results: ^(OpenAI::Internal::Type::ArrayOf[OpenAI::Moderation]) } end end diff --git a/test/openai/resources/responses/input_items_test.rb b/test/openai/resources/responses/input_items_test.rb index 705de078..3c32f365 100644 --- a/test/openai/resources/responses/input_items_test.rb +++ b/test/openai/resources/responses/input_items_test.rb @@ -14,19 +14,19 @@ def test_list return if row.nil? assert_pattern do - row => OpenAI::Models::Responses::ResponseItem + row => OpenAI::Responses::ResponseItem end assert_pattern do case row - in OpenAI::Models::Responses::ResponseInputMessageItem - in OpenAI::Models::Responses::ResponseOutputMessage - in OpenAI::Models::Responses::ResponseFileSearchToolCall - in OpenAI::Models::Responses::ResponseComputerToolCall - in OpenAI::Models::Responses::ResponseComputerToolCallOutputItem - in OpenAI::Models::Responses::ResponseFunctionWebSearch - in OpenAI::Models::Responses::ResponseFunctionToolCallItem - in OpenAI::Models::Responses::ResponseFunctionToolCallOutputItem + in OpenAI::Responses::ResponseInputMessageItem + in OpenAI::Responses::ResponseOutputMessage + in OpenAI::Responses::ResponseFileSearchToolCall + in OpenAI::Responses::ResponseComputerToolCall + in OpenAI::Responses::ResponseComputerToolCallOutputItem + in OpenAI::Responses::ResponseFunctionWebSearch + in OpenAI::Responses::ResponseFunctionToolCallItem + in OpenAI::Responses::ResponseFunctionToolCallOutputItem end end @@ -35,47 +35,47 @@ def test_list in { type: :message, id: String, - content: ^(OpenAI::Internal::Type::ArrayOf[union: OpenAI::Models::Responses::ResponseInputContent]), - role: OpenAI::Models::Responses::ResponseInputMessageItem::Role, - status: OpenAI::Models::Responses::ResponseInputMessageItem::Status | nil + content: ^(OpenAI::Internal::Type::ArrayOf[union: OpenAI::Responses::ResponseInputContent]), + role: OpenAI::Responses::ResponseInputMessageItem::Role, + status: OpenAI::Responses::ResponseInputMessageItem::Status | nil } in { type: :message, id: String, - content: ^(OpenAI::Internal::Type::ArrayOf[union: OpenAI::Models::Responses::ResponseOutputMessage::Content]), + content: ^(OpenAI::Internal::Type::ArrayOf[union: OpenAI::Responses::ResponseOutputMessage::Content]), role: Symbol, - status: OpenAI::Models::Responses::ResponseOutputMessage::Status + status: OpenAI::Responses::ResponseOutputMessage::Status } in { type: :file_search_call, id: String, queries: ^(OpenAI::Internal::Type::ArrayOf[String]), - status: OpenAI::Models::Responses::ResponseFileSearchToolCall::Status, - results: ^(OpenAI::Internal::Type::ArrayOf[OpenAI::Models::Responses::ResponseFileSearchToolCall::Result]) | nil + status: OpenAI::Responses::ResponseFileSearchToolCall::Status, + results: ^(OpenAI::Internal::Type::ArrayOf[OpenAI::Responses::ResponseFileSearchToolCall::Result]) | nil } in { type: :computer_call, id: String, - action: OpenAI::Models::Responses::ResponseComputerToolCall::Action, + action: OpenAI::Responses::ResponseComputerToolCall::Action, call_id: String, - pending_safety_checks: ^(OpenAI::Internal::Type::ArrayOf[OpenAI::Models::Responses::ResponseComputerToolCall::PendingSafetyCheck]), - status: OpenAI::Models::Responses::ResponseComputerToolCall::Status + pending_safety_checks: ^(OpenAI::Internal::Type::ArrayOf[OpenAI::Responses::ResponseComputerToolCall::PendingSafetyCheck]), + status: OpenAI::Responses::ResponseComputerToolCall::Status } in { type: :computer_call_output, id: String, call_id: String, - output: OpenAI::Models::Responses::ResponseComputerToolCallOutputScreenshot, - acknowledged_safety_checks: ^(OpenAI::Internal::Type::ArrayOf[OpenAI::Models::Responses::ResponseComputerToolCallOutputItem::AcknowledgedSafetyCheck]) | nil, - status: OpenAI::Models::Responses::ResponseComputerToolCallOutputItem::Status | nil + output: OpenAI::Responses::ResponseComputerToolCallOutputScreenshot, + acknowledged_safety_checks: ^(OpenAI::Internal::Type::ArrayOf[OpenAI::Responses::ResponseComputerToolCallOutputItem::AcknowledgedSafetyCheck]) | nil, + status: OpenAI::Responses::ResponseComputerToolCallOutputItem::Status | nil } - in {type: :web_search_call, id: String, status: OpenAI::Models::Responses::ResponseFunctionWebSearch::Status} + in {type: :web_search_call, id: String, status: OpenAI::Responses::ResponseFunctionWebSearch::Status} in { type: :function_call_output, id: String, call_id: String, output: String, - status: OpenAI::Models::Responses::ResponseFunctionToolCallOutputItem::Status | nil + status: OpenAI::Responses::ResponseFunctionToolCallOutputItem::Status | nil } end end diff --git a/test/openai/resources/responses_test.rb b/test/openai/resources/responses_test.rb index c5066e33..a01200f4 100644 --- a/test/openai/resources/responses_test.rb +++ b/test/openai/resources/responses_test.rb @@ -7,33 +7,33 @@ def test_create_required_params response = @openai.responses.create(input: "string", model: :"gpt-4o") assert_pattern do - response => OpenAI::Models::Responses::Response + response => OpenAI::Responses::Response end assert_pattern do response => { id: String, created_at: Float, - error: OpenAI::Models::Responses::ResponseError | nil, - incomplete_details: OpenAI::Models::Responses::Response::IncompleteDetails | nil, + error: OpenAI::Responses::ResponseError | nil, + incomplete_details: OpenAI::Responses::Response::IncompleteDetails | nil, instructions: String | nil, metadata: ^(OpenAI::Internal::Type::HashOf[String]) | nil, - model: OpenAI::Models::ResponsesModel, + model: OpenAI::ResponsesModel, object: Symbol, - output: ^(OpenAI::Internal::Type::ArrayOf[union: OpenAI::Models::Responses::ResponseOutputItem]), + output: ^(OpenAI::Internal::Type::ArrayOf[union: OpenAI::Responses::ResponseOutputItem]), parallel_tool_calls: OpenAI::Internal::Type::Boolean, temperature: Float | nil, - tool_choice: OpenAI::Models::Responses::Response::ToolChoice, - tools: ^(OpenAI::Internal::Type::ArrayOf[union: OpenAI::Models::Responses::Tool]), + tool_choice: OpenAI::Responses::Response::ToolChoice, + tools: ^(OpenAI::Internal::Type::ArrayOf[union: OpenAI::Responses::Tool]), top_p: Float | nil, max_output_tokens: Integer | nil, previous_response_id: String | nil, - reasoning: OpenAI::Models::Reasoning | nil, - service_tier: OpenAI::Models::Responses::Response::ServiceTier | nil, - status: OpenAI::Models::Responses::ResponseStatus | nil, - text: OpenAI::Models::Responses::ResponseTextConfig | nil, - truncation: OpenAI::Models::Responses::Response::Truncation | nil, - usage: OpenAI::Models::Responses::ResponseUsage | nil, + reasoning: OpenAI::Reasoning | nil, + service_tier: OpenAI::Responses::Response::ServiceTier | nil, + status: OpenAI::Responses::ResponseStatus | nil, + text: OpenAI::Responses::ResponseTextConfig | nil, + truncation: OpenAI::Responses::Response::Truncation | nil, + usage: OpenAI::Responses::ResponseUsage | nil, user: String | nil } end @@ -43,33 +43,33 @@ def test_retrieve response = @openai.responses.retrieve("resp_677efb5139a88190b512bc3fef8e535d") assert_pattern do - response => OpenAI::Models::Responses::Response + response => OpenAI::Responses::Response end assert_pattern do response => { id: String, created_at: Float, - error: OpenAI::Models::Responses::ResponseError | nil, - incomplete_details: OpenAI::Models::Responses::Response::IncompleteDetails | nil, + error: OpenAI::Responses::ResponseError | nil, + incomplete_details: OpenAI::Responses::Response::IncompleteDetails | nil, instructions: String | nil, metadata: ^(OpenAI::Internal::Type::HashOf[String]) | nil, - model: OpenAI::Models::ResponsesModel, + model: OpenAI::ResponsesModel, object: Symbol, - output: ^(OpenAI::Internal::Type::ArrayOf[union: OpenAI::Models::Responses::ResponseOutputItem]), + output: ^(OpenAI::Internal::Type::ArrayOf[union: OpenAI::Responses::ResponseOutputItem]), parallel_tool_calls: OpenAI::Internal::Type::Boolean, temperature: Float | nil, - tool_choice: OpenAI::Models::Responses::Response::ToolChoice, - tools: ^(OpenAI::Internal::Type::ArrayOf[union: OpenAI::Models::Responses::Tool]), + tool_choice: OpenAI::Responses::Response::ToolChoice, + tools: ^(OpenAI::Internal::Type::ArrayOf[union: OpenAI::Responses::Tool]), top_p: Float | nil, max_output_tokens: Integer | nil, previous_response_id: String | nil, - reasoning: OpenAI::Models::Reasoning | nil, - service_tier: OpenAI::Models::Responses::Response::ServiceTier | nil, - status: OpenAI::Models::Responses::ResponseStatus | nil, - text: OpenAI::Models::Responses::ResponseTextConfig | nil, - truncation: OpenAI::Models::Responses::Response::Truncation | nil, - usage: OpenAI::Models::Responses::ResponseUsage | nil, + reasoning: OpenAI::Reasoning | nil, + service_tier: OpenAI::Responses::Response::ServiceTier | nil, + status: OpenAI::Responses::ResponseStatus | nil, + text: OpenAI::Responses::ResponseTextConfig | nil, + truncation: OpenAI::Responses::Response::Truncation | nil, + usage: OpenAI::Responses::ResponseUsage | nil, user: String | nil } end diff --git a/test/openai/resources/uploads/parts_test.rb b/test/openai/resources/uploads/parts_test.rb index b10dcbb3..92fbc11f 100644 --- a/test/openai/resources/uploads/parts_test.rb +++ b/test/openai/resources/uploads/parts_test.rb @@ -7,7 +7,7 @@ def test_create_required_params response = @openai.uploads.parts.create("upload_abc123", data: Pathname(__FILE__)) assert_pattern do - response => OpenAI::Models::Uploads::UploadPart + response => OpenAI::Uploads::UploadPart end assert_pattern do diff --git a/test/openai/resources/uploads_test.rb b/test/openai/resources/uploads_test.rb index 3b3e356c..38a3a1e4 100644 --- a/test/openai/resources/uploads_test.rb +++ b/test/openai/resources/uploads_test.rb @@ -8,7 +8,7 @@ def test_create_required_params @openai.uploads.create(bytes: 0, filename: "filename", mime_type: "mime_type", purpose: :assistants) assert_pattern do - response => OpenAI::Models::Upload + response => OpenAI::Upload end assert_pattern do @@ -20,8 +20,8 @@ def test_create_required_params filename: String, object: Symbol, purpose: String, - status: OpenAI::Models::Upload::Status, - file: OpenAI::Models::FileObject | nil + status: OpenAI::Upload::Status, + file: OpenAI::FileObject | nil } end end @@ -30,7 +30,7 @@ def test_cancel response = @openai.uploads.cancel("upload_abc123") assert_pattern do - response => OpenAI::Models::Upload + response => OpenAI::Upload end assert_pattern do @@ -42,8 +42,8 @@ def test_cancel filename: String, object: Symbol, purpose: String, - status: OpenAI::Models::Upload::Status, - file: OpenAI::Models::FileObject | nil + status: OpenAI::Upload::Status, + file: OpenAI::FileObject | nil } end end @@ -52,7 +52,7 @@ def test_complete_required_params response = @openai.uploads.complete("upload_abc123", part_ids: ["string"]) assert_pattern do - response => OpenAI::Models::Upload + response => OpenAI::Upload end assert_pattern do @@ -64,8 +64,8 @@ def test_complete_required_params filename: String, object: Symbol, purpose: String, - status: OpenAI::Models::Upload::Status, - file: OpenAI::Models::FileObject | nil + status: OpenAI::Upload::Status, + file: OpenAI::FileObject | nil } end end diff --git a/test/openai/resources/vector_stores/file_batches_test.rb b/test/openai/resources/vector_stores/file_batches_test.rb index 55dce57e..ccaeb85e 100644 --- a/test/openai/resources/vector_stores/file_batches_test.rb +++ b/test/openai/resources/vector_stores/file_batches_test.rb @@ -7,16 +7,16 @@ def test_create_required_params response = @openai.vector_stores.file_batches.create("vs_abc123", file_ids: ["string"]) assert_pattern do - response => OpenAI::Models::VectorStores::VectorStoreFileBatch + response => OpenAI::VectorStores::VectorStoreFileBatch end assert_pattern do response => { id: String, created_at: Integer, - file_counts: OpenAI::Models::VectorStores::VectorStoreFileBatch::FileCounts, + file_counts: OpenAI::VectorStores::VectorStoreFileBatch::FileCounts, object: Symbol, - status: OpenAI::Models::VectorStores::VectorStoreFileBatch::Status, + status: OpenAI::VectorStores::VectorStoreFileBatch::Status, vector_store_id: String } end @@ -26,16 +26,16 @@ def test_retrieve_required_params response = @openai.vector_stores.file_batches.retrieve("vsfb_abc123", vector_store_id: "vs_abc123") assert_pattern do - response => OpenAI::Models::VectorStores::VectorStoreFileBatch + response => OpenAI::VectorStores::VectorStoreFileBatch end assert_pattern do response => { id: String, created_at: Integer, - file_counts: OpenAI::Models::VectorStores::VectorStoreFileBatch::FileCounts, + file_counts: OpenAI::VectorStores::VectorStoreFileBatch::FileCounts, object: Symbol, - status: OpenAI::Models::VectorStores::VectorStoreFileBatch::Status, + status: OpenAI::VectorStores::VectorStoreFileBatch::Status, vector_store_id: String } end @@ -45,16 +45,16 @@ def test_cancel_required_params response = @openai.vector_stores.file_batches.cancel("batch_id", vector_store_id: "vector_store_id") assert_pattern do - response => OpenAI::Models::VectorStores::VectorStoreFileBatch + response => OpenAI::VectorStores::VectorStoreFileBatch end assert_pattern do response => { id: String, created_at: Integer, - file_counts: OpenAI::Models::VectorStores::VectorStoreFileBatch::FileCounts, + file_counts: OpenAI::VectorStores::VectorStoreFileBatch::FileCounts, object: Symbol, - status: OpenAI::Models::VectorStores::VectorStoreFileBatch::Status, + status: OpenAI::VectorStores::VectorStoreFileBatch::Status, vector_store_id: String } end @@ -71,20 +71,20 @@ def test_list_files_required_params return if row.nil? assert_pattern do - row => OpenAI::Models::VectorStores::VectorStoreFile + row => OpenAI::VectorStores::VectorStoreFile end assert_pattern do row => { id: String, created_at: Integer, - last_error: OpenAI::Models::VectorStores::VectorStoreFile::LastError | nil, + last_error: OpenAI::VectorStores::VectorStoreFile::LastError | nil, object: Symbol, - status: OpenAI::Models::VectorStores::VectorStoreFile::Status, + status: OpenAI::VectorStores::VectorStoreFile::Status, usage_bytes: Integer, vector_store_id: String, - attributes: ^(OpenAI::Internal::Type::HashOf[union: OpenAI::Models::VectorStores::VectorStoreFile::Attribute]) | nil, - chunking_strategy: OpenAI::Models::FileChunkingStrategy | nil + attributes: ^(OpenAI::Internal::Type::HashOf[union: OpenAI::VectorStores::VectorStoreFile::Attribute]) | nil, + chunking_strategy: OpenAI::FileChunkingStrategy | nil } end end diff --git a/test/openai/resources/vector_stores/files_test.rb b/test/openai/resources/vector_stores/files_test.rb index b7573f30..e322a6ba 100644 --- a/test/openai/resources/vector_stores/files_test.rb +++ b/test/openai/resources/vector_stores/files_test.rb @@ -7,20 +7,20 @@ def test_create_required_params response = @openai.vector_stores.files.create("vs_abc123", file_id: "file_id") assert_pattern do - response => OpenAI::Models::VectorStores::VectorStoreFile + response => OpenAI::VectorStores::VectorStoreFile end assert_pattern do response => { id: String, created_at: Integer, - last_error: OpenAI::Models::VectorStores::VectorStoreFile::LastError | nil, + last_error: OpenAI::VectorStores::VectorStoreFile::LastError | nil, object: Symbol, - status: OpenAI::Models::VectorStores::VectorStoreFile::Status, + status: OpenAI::VectorStores::VectorStoreFile::Status, usage_bytes: Integer, vector_store_id: String, - attributes: ^(OpenAI::Internal::Type::HashOf[union: OpenAI::Models::VectorStores::VectorStoreFile::Attribute]) | nil, - chunking_strategy: OpenAI::Models::FileChunkingStrategy | nil + attributes: ^(OpenAI::Internal::Type::HashOf[union: OpenAI::VectorStores::VectorStoreFile::Attribute]) | nil, + chunking_strategy: OpenAI::FileChunkingStrategy | nil } end end @@ -29,20 +29,20 @@ def test_retrieve_required_params response = @openai.vector_stores.files.retrieve("file-abc123", vector_store_id: "vs_abc123") assert_pattern do - response => OpenAI::Models::VectorStores::VectorStoreFile + response => OpenAI::VectorStores::VectorStoreFile end assert_pattern do response => { id: String, created_at: Integer, - last_error: OpenAI::Models::VectorStores::VectorStoreFile::LastError | nil, + last_error: OpenAI::VectorStores::VectorStoreFile::LastError | nil, object: Symbol, - status: OpenAI::Models::VectorStores::VectorStoreFile::Status, + status: OpenAI::VectorStores::VectorStoreFile::Status, usage_bytes: Integer, vector_store_id: String, - attributes: ^(OpenAI::Internal::Type::HashOf[union: OpenAI::Models::VectorStores::VectorStoreFile::Attribute]) | nil, - chunking_strategy: OpenAI::Models::FileChunkingStrategy | nil + attributes: ^(OpenAI::Internal::Type::HashOf[union: OpenAI::VectorStores::VectorStoreFile::Attribute]) | nil, + chunking_strategy: OpenAI::FileChunkingStrategy | nil } end end @@ -56,20 +56,20 @@ def test_update_required_params ) assert_pattern do - response => OpenAI::Models::VectorStores::VectorStoreFile + response => OpenAI::VectorStores::VectorStoreFile end assert_pattern do response => { id: String, created_at: Integer, - last_error: OpenAI::Models::VectorStores::VectorStoreFile::LastError | nil, + last_error: OpenAI::VectorStores::VectorStoreFile::LastError | nil, object: Symbol, - status: OpenAI::Models::VectorStores::VectorStoreFile::Status, + status: OpenAI::VectorStores::VectorStoreFile::Status, usage_bytes: Integer, vector_store_id: String, - attributes: ^(OpenAI::Internal::Type::HashOf[union: OpenAI::Models::VectorStores::VectorStoreFile::Attribute]) | nil, - chunking_strategy: OpenAI::Models::FileChunkingStrategy | nil + attributes: ^(OpenAI::Internal::Type::HashOf[union: OpenAI::VectorStores::VectorStoreFile::Attribute]) | nil, + chunking_strategy: OpenAI::FileChunkingStrategy | nil } end end @@ -85,20 +85,20 @@ def test_list return if row.nil? assert_pattern do - row => OpenAI::Models::VectorStores::VectorStoreFile + row => OpenAI::VectorStores::VectorStoreFile end assert_pattern do row => { id: String, created_at: Integer, - last_error: OpenAI::Models::VectorStores::VectorStoreFile::LastError | nil, + last_error: OpenAI::VectorStores::VectorStoreFile::LastError | nil, object: Symbol, - status: OpenAI::Models::VectorStores::VectorStoreFile::Status, + status: OpenAI::VectorStores::VectorStoreFile::Status, usage_bytes: Integer, vector_store_id: String, - attributes: ^(OpenAI::Internal::Type::HashOf[union: OpenAI::Models::VectorStores::VectorStoreFile::Attribute]) | nil, - chunking_strategy: OpenAI::Models::FileChunkingStrategy | nil + attributes: ^(OpenAI::Internal::Type::HashOf[union: OpenAI::VectorStores::VectorStoreFile::Attribute]) | nil, + chunking_strategy: OpenAI::FileChunkingStrategy | nil } end end @@ -107,7 +107,7 @@ def test_delete_required_params response = @openai.vector_stores.files.delete("file_id", vector_store_id: "vector_store_id") assert_pattern do - response => OpenAI::Models::VectorStores::VectorStoreFileDeleted + response => OpenAI::VectorStores::VectorStoreFileDeleted end assert_pattern do diff --git a/test/openai/resources/vector_stores_test.rb b/test/openai/resources/vector_stores_test.rb index a68725ca..bbce9895 100644 --- a/test/openai/resources/vector_stores_test.rb +++ b/test/openai/resources/vector_stores_test.rb @@ -7,21 +7,21 @@ def test_create response = @openai.vector_stores.create assert_pattern do - response => OpenAI::Models::VectorStore + response => OpenAI::VectorStore end assert_pattern do response => { id: String, created_at: Integer, - file_counts: OpenAI::Models::VectorStore::FileCounts, + file_counts: OpenAI::VectorStore::FileCounts, last_active_at: Integer | nil, metadata: ^(OpenAI::Internal::Type::HashOf[String]) | nil, name: String, object: Symbol, - status: OpenAI::Models::VectorStore::Status, + status: OpenAI::VectorStore::Status, usage_bytes: Integer, - expires_after: OpenAI::Models::VectorStore::ExpiresAfter | nil, + expires_after: OpenAI::VectorStore::ExpiresAfter | nil, expires_at: Integer | nil } end @@ -31,21 +31,21 @@ def test_retrieve response = @openai.vector_stores.retrieve("vector_store_id") assert_pattern do - response => OpenAI::Models::VectorStore + response => OpenAI::VectorStore end assert_pattern do response => { id: String, created_at: Integer, - file_counts: OpenAI::Models::VectorStore::FileCounts, + file_counts: OpenAI::VectorStore::FileCounts, last_active_at: Integer | nil, metadata: ^(OpenAI::Internal::Type::HashOf[String]) | nil, name: String, object: Symbol, - status: OpenAI::Models::VectorStore::Status, + status: OpenAI::VectorStore::Status, usage_bytes: Integer, - expires_after: OpenAI::Models::VectorStore::ExpiresAfter | nil, + expires_after: OpenAI::VectorStore::ExpiresAfter | nil, expires_at: Integer | nil } end @@ -55,21 +55,21 @@ def test_update response = @openai.vector_stores.update("vector_store_id") assert_pattern do - response => OpenAI::Models::VectorStore + response => OpenAI::VectorStore end assert_pattern do response => { id: String, created_at: Integer, - file_counts: OpenAI::Models::VectorStore::FileCounts, + file_counts: OpenAI::VectorStore::FileCounts, last_active_at: Integer | nil, metadata: ^(OpenAI::Internal::Type::HashOf[String]) | nil, name: String, object: Symbol, - status: OpenAI::Models::VectorStore::Status, + status: OpenAI::VectorStore::Status, usage_bytes: Integer, - expires_after: OpenAI::Models::VectorStore::ExpiresAfter | nil, + expires_after: OpenAI::VectorStore::ExpiresAfter | nil, expires_at: Integer | nil } end @@ -86,21 +86,21 @@ def test_list return if row.nil? assert_pattern do - row => OpenAI::Models::VectorStore + row => OpenAI::VectorStore end assert_pattern do row => { id: String, created_at: Integer, - file_counts: OpenAI::Models::VectorStore::FileCounts, + file_counts: OpenAI::VectorStore::FileCounts, last_active_at: Integer | nil, metadata: ^(OpenAI::Internal::Type::HashOf[String]) | nil, name: String, object: Symbol, - status: OpenAI::Models::VectorStore::Status, + status: OpenAI::VectorStore::Status, usage_bytes: Integer, - expires_after: OpenAI::Models::VectorStore::ExpiresAfter | nil, + expires_after: OpenAI::VectorStore::ExpiresAfter | nil, expires_at: Integer | nil } end @@ -110,7 +110,7 @@ def test_delete response = @openai.vector_stores.delete("vector_store_id") assert_pattern do - response => OpenAI::Models::VectorStoreDeleted + response => OpenAI::VectorStoreDeleted end assert_pattern do From 65834c605a43d8d4b0bce44bd9048efe3dc874e8 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Thu, 8 May 2025 17:24:33 +0000 Subject: [PATCH 46/47] feat(api): Add reinforcement fine-tuning api support --- .stats.yml | 8 +- lib/openai.rb | 26 +- lib/openai/client.rb | 4 + lib/openai/models.rb | 8 +- lib/openai/models/eval_create_params.rb | 245 ++-------- lib/openai/models/eval_create_response.rb | 223 +-------- lib/openai/models/eval_label_model_grader.rb | 166 ------- lib/openai/models/eval_list_response.rb | 223 +-------- lib/openai/models/eval_retrieve_response.rb | 225 +-------- lib/openai/models/eval_string_check_grader.rb | 66 --- .../models/eval_text_similarity_grader.rb | 84 ---- lib/openai/models/eval_update_response.rb | 223 +-------- .../fine_tuning/alpha/grader_run_params.rb | 89 ++++ .../fine_tuning/alpha/grader_run_response.rb | 175 +++++++ .../alpha/grader_validate_params.rb | 49 ++ .../alpha/grader_validate_response.rb | 46 ++ .../models/fine_tuning/dpo_hyperparameters.rb | 112 +++++ lib/openai/models/fine_tuning/dpo_method.rb | 20 + .../models/fine_tuning/fine_tuning_job.rb | 279 +---------- .../models/fine_tuning/job_create_params.rb | 282 +---------- .../models/fine_tuning/job_pause_params.rb | 16 + .../models/fine_tuning/job_resume_params.rb | 16 + .../reinforcement_hyperparameters.rb | 181 ++++++++ .../fine_tuning/reinforcement_method.rb | 53 +++ .../fine_tuning/supervised_hyperparameters.rb | 88 ++++ .../models/fine_tuning/supervised_method.rb | 20 + .../models/graders/label_model_grader.rb | 171 +++++++ lib/openai/models/graders/multi_grader.rb | 71 +++ lib/openai/models/graders/python_grader.rb | 46 ++ .../models/graders/score_model_grader.rb | 171 +++++++ .../models/graders/string_check_grader.rb | 70 +++ .../models/graders/text_similarity_grader.rb | 80 ++++ lib/openai/resources/evals.rb | 4 +- lib/openai/resources/fine_tuning.rb | 8 + lib/openai/resources/fine_tuning/alpha.rb | 20 + .../resources/fine_tuning/alpha/graders.rb | 66 +++ lib/openai/resources/fine_tuning/jobs.rb | 46 ++ lib/openai/resources/fine_tuning/methods.rb | 16 + lib/openai/resources/graders.rb | 18 + lib/openai/resources/graders/grader_models.rb | 16 + rbi/openai/client.rbi | 3 + rbi/openai/models.rbi | 8 +- rbi/openai/models/eval_create_params.rbi | 408 ++-------------- rbi/openai/models/eval_create_response.rbi | 412 ++-------------- rbi/openai/models/eval_label_model_grader.rbi | 268 ----------- rbi/openai/models/eval_list_response.rbi | 412 ++-------------- rbi/openai/models/eval_retrieve_response.rbi | 412 ++-------------- .../models/eval_string_check_grader.rbi | 94 ---- .../models/eval_text_similarity_grader.rbi | 157 ------- rbi/openai/models/eval_update_response.rbi | 412 ++-------------- .../fine_tuning/alpha/grader_run_params.rbi | 143 ++++++ .../fine_tuning/alpha/grader_run_response.rbi | 253 ++++++++++ .../alpha/grader_validate_params.rbi | 95 ++++ .../alpha/grader_validate_response.rbi | 105 +++++ .../fine_tuning/dpo_hyperparameters.rbi | 151 ++++++ rbi/openai/models/fine_tuning/dpo_method.rbi | 42 ++ .../models/fine_tuning/fine_tuning_job.rbi | 439 ++---------------- .../models/fine_tuning/job_create_params.rbi | 437 ++--------------- .../models/fine_tuning/job_pause_params.rbi | 26 ++ .../models/fine_tuning/job_resume_params.rbi | 26 ++ .../reinforcement_hyperparameters.rbi | 275 +++++++++++ .../fine_tuning/reinforcement_method.rbi | 106 +++++ .../supervised_hyperparameters.rbi | 122 +++++ .../models/fine_tuning/supervised_method.rbi | 46 ++ .../models/graders/label_model_grader.rbi | 287 ++++++++++++ rbi/openai/models/graders/multi_grader.rbi | 120 +++++ rbi/openai/models/graders/python_grader.rbi | 61 +++ .../models/graders/score_model_grader.rbi | 294 ++++++++++++ .../models/graders/string_check_grader.rbi | 115 +++++ .../models/graders/text_similarity_grader.rbi | 155 +++++++ rbi/openai/resources/evals.rbi | 6 +- rbi/openai/resources/fine_tuning.rbi | 6 + rbi/openai/resources/fine_tuning/alpha.rbi | 17 + .../resources/fine_tuning/alpha/graders.rbi | 65 +++ rbi/openai/resources/fine_tuning/jobs.rbi | 28 ++ rbi/openai/resources/fine_tuning/methods.rbi | 14 + rbi/openai/resources/graders.rbi | 15 + .../resources/graders/grader_models.rbi | 14 + sig/openai/client.rbs | 2 + sig/openai/models.rbs | 8 +- sig/openai/models/eval_create_params.rbs | 165 ++----- sig/openai/models/eval_create_response.rbs | 157 +------ sig/openai/models/eval_label_model_grader.rbs | 105 ----- sig/openai/models/eval_list_response.rbs | 157 +------ sig/openai/models/eval_retrieve_response.rbs | 157 +------ .../models/eval_string_check_grader.rbs | 45 -- .../models/eval_text_similarity_grader.rbs | 67 --- sig/openai/models/eval_update_response.rbs | 157 +------ .../fine_tuning/alpha/grader_run_params.rbs | 56 +++ .../fine_tuning/alpha/grader_run_response.rbs | 134 ++++++ .../alpha/grader_validate_params.rbs | 38 ++ .../alpha/grader_validate_response.rbs | 37 ++ .../fine_tuning/dpo_hyperparameters.rbs | 78 ++++ sig/openai/models/fine_tuning/dpo_method.rbs | 20 + .../models/fine_tuning/fine_tuning_job.rbs | 205 +------- .../models/fine_tuning/job_create_params.rbs | 205 +------- .../models/fine_tuning/job_pause_params.rbs | 14 + .../models/fine_tuning/job_resume_params.rbs | 14 + .../reinforcement_hyperparameters.rbs | 131 ++++++ .../fine_tuning/reinforcement_method.rbs | 39 ++ .../supervised_hyperparameters.rbs | 62 +++ .../models/fine_tuning/supervised_method.rbs | 20 + .../models/graders/label_model_grader.rbs | 109 +++++ sig/openai/models/graders/multi_grader.rbs | 45 ++ sig/openai/models/graders/python_grader.rbs | 29 ++ .../models/graders/score_model_grader.rbs | 113 +++++ .../models/graders/string_check_grader.rbs | 49 ++ .../models/graders/text_similarity_grader.rbs | 65 +++ sig/openai/resources/fine_tuning.rbs | 4 + sig/openai/resources/fine_tuning/alpha.rbs | 11 + .../resources/fine_tuning/alpha/graders.rbs | 23 + sig/openai/resources/fine_tuning/jobs.rbs | 10 + sig/openai/resources/fine_tuning/methods.rbs | 9 + sig/openai/resources/graders.rbs | 9 + .../resources/graders/grader_models.rbs | 9 + test/openai/resource_namespaces.rb | 9 + .../fine_tuning/alpha/graders_test.rb | 44 ++ .../resources/fine_tuning/alpha_test.rb | 6 + .../openai/resources/fine_tuning/jobs_test.rb | 64 +++ .../resources/fine_tuning/methods_test.rb | 6 + .../resources/graders/grader_models_test.rb | 6 + test/openai/resources/graders_test.rb | 6 + 122 files changed, 6177 insertions(+), 6301 deletions(-) delete mode 100644 lib/openai/models/eval_label_model_grader.rb delete mode 100644 lib/openai/models/eval_string_check_grader.rb delete mode 100644 lib/openai/models/eval_text_similarity_grader.rb create mode 100644 lib/openai/models/fine_tuning/alpha/grader_run_params.rb create mode 100644 lib/openai/models/fine_tuning/alpha/grader_run_response.rb create mode 100644 lib/openai/models/fine_tuning/alpha/grader_validate_params.rb create mode 100644 lib/openai/models/fine_tuning/alpha/grader_validate_response.rb create mode 100644 lib/openai/models/fine_tuning/dpo_hyperparameters.rb create mode 100644 lib/openai/models/fine_tuning/dpo_method.rb create mode 100644 lib/openai/models/fine_tuning/job_pause_params.rb create mode 100644 lib/openai/models/fine_tuning/job_resume_params.rb create mode 100644 lib/openai/models/fine_tuning/reinforcement_hyperparameters.rb create mode 100644 lib/openai/models/fine_tuning/reinforcement_method.rb create mode 100644 lib/openai/models/fine_tuning/supervised_hyperparameters.rb create mode 100644 lib/openai/models/fine_tuning/supervised_method.rb create mode 100644 lib/openai/models/graders/label_model_grader.rb create mode 100644 lib/openai/models/graders/multi_grader.rb create mode 100644 lib/openai/models/graders/python_grader.rb create mode 100644 lib/openai/models/graders/score_model_grader.rb create mode 100644 lib/openai/models/graders/string_check_grader.rb create mode 100644 lib/openai/models/graders/text_similarity_grader.rb create mode 100644 lib/openai/resources/fine_tuning/alpha.rb create mode 100644 lib/openai/resources/fine_tuning/alpha/graders.rb create mode 100644 lib/openai/resources/fine_tuning/methods.rb create mode 100644 lib/openai/resources/graders.rb create mode 100644 lib/openai/resources/graders/grader_models.rb delete mode 100644 rbi/openai/models/eval_label_model_grader.rbi delete mode 100644 rbi/openai/models/eval_string_check_grader.rbi delete mode 100644 rbi/openai/models/eval_text_similarity_grader.rbi create mode 100644 rbi/openai/models/fine_tuning/alpha/grader_run_params.rbi create mode 100644 rbi/openai/models/fine_tuning/alpha/grader_run_response.rbi create mode 100644 rbi/openai/models/fine_tuning/alpha/grader_validate_params.rbi create mode 100644 rbi/openai/models/fine_tuning/alpha/grader_validate_response.rbi create mode 100644 rbi/openai/models/fine_tuning/dpo_hyperparameters.rbi create mode 100644 rbi/openai/models/fine_tuning/dpo_method.rbi create mode 100644 rbi/openai/models/fine_tuning/job_pause_params.rbi create mode 100644 rbi/openai/models/fine_tuning/job_resume_params.rbi create mode 100644 rbi/openai/models/fine_tuning/reinforcement_hyperparameters.rbi create mode 100644 rbi/openai/models/fine_tuning/reinforcement_method.rbi create mode 100644 rbi/openai/models/fine_tuning/supervised_hyperparameters.rbi create mode 100644 rbi/openai/models/fine_tuning/supervised_method.rbi create mode 100644 rbi/openai/models/graders/label_model_grader.rbi create mode 100644 rbi/openai/models/graders/multi_grader.rbi create mode 100644 rbi/openai/models/graders/python_grader.rbi create mode 100644 rbi/openai/models/graders/score_model_grader.rbi create mode 100644 rbi/openai/models/graders/string_check_grader.rbi create mode 100644 rbi/openai/models/graders/text_similarity_grader.rbi create mode 100644 rbi/openai/resources/fine_tuning/alpha.rbi create mode 100644 rbi/openai/resources/fine_tuning/alpha/graders.rbi create mode 100644 rbi/openai/resources/fine_tuning/methods.rbi create mode 100644 rbi/openai/resources/graders.rbi create mode 100644 rbi/openai/resources/graders/grader_models.rbi delete mode 100644 sig/openai/models/eval_label_model_grader.rbs delete mode 100644 sig/openai/models/eval_string_check_grader.rbs delete mode 100644 sig/openai/models/eval_text_similarity_grader.rbs create mode 100644 sig/openai/models/fine_tuning/alpha/grader_run_params.rbs create mode 100644 sig/openai/models/fine_tuning/alpha/grader_run_response.rbs create mode 100644 sig/openai/models/fine_tuning/alpha/grader_validate_params.rbs create mode 100644 sig/openai/models/fine_tuning/alpha/grader_validate_response.rbs create mode 100644 sig/openai/models/fine_tuning/dpo_hyperparameters.rbs create mode 100644 sig/openai/models/fine_tuning/dpo_method.rbs create mode 100644 sig/openai/models/fine_tuning/job_pause_params.rbs create mode 100644 sig/openai/models/fine_tuning/job_resume_params.rbs create mode 100644 sig/openai/models/fine_tuning/reinforcement_hyperparameters.rbs create mode 100644 sig/openai/models/fine_tuning/reinforcement_method.rbs create mode 100644 sig/openai/models/fine_tuning/supervised_hyperparameters.rbs create mode 100644 sig/openai/models/fine_tuning/supervised_method.rbs create mode 100644 sig/openai/models/graders/label_model_grader.rbs create mode 100644 sig/openai/models/graders/multi_grader.rbs create mode 100644 sig/openai/models/graders/python_grader.rbs create mode 100644 sig/openai/models/graders/score_model_grader.rbs create mode 100644 sig/openai/models/graders/string_check_grader.rbs create mode 100644 sig/openai/models/graders/text_similarity_grader.rbs create mode 100644 sig/openai/resources/fine_tuning/alpha.rbs create mode 100644 sig/openai/resources/fine_tuning/alpha/graders.rbs create mode 100644 sig/openai/resources/fine_tuning/methods.rbs create mode 100644 sig/openai/resources/graders.rbs create mode 100644 sig/openai/resources/graders/grader_models.rbs create mode 100644 test/openai/resources/fine_tuning/alpha/graders_test.rb create mode 100644 test/openai/resources/fine_tuning/alpha_test.rb create mode 100644 test/openai/resources/fine_tuning/methods_test.rb create mode 100644 test/openai/resources/graders/grader_models_test.rb create mode 100644 test/openai/resources/graders_test.rb diff --git a/.stats.yml b/.stats.yml index 089abe5d..5a1f2ff0 100644 --- a/.stats.yml +++ b/.stats.yml @@ -1,4 +1,4 @@ -configured_endpoints: 95 -openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/openai%2Fopenai-0ee6b36cf3cc278cef4199a6aec5f7d530a6c1f17a74830037e96d50ca1edc50.yml -openapi_spec_hash: e8ec5f46bc0655b34f292422d58a60f6 -config_hash: d9b6b6e6bc85744663e300eebc482067 +configured_endpoints: 99 +openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/openai%2Fopenai-794a6ed3c3d3d77887564755168056af8a426b17cf1ec721e3a300503dc22a41.yml +openapi_spec_hash: 25a81c220713cd5b0bafc221d1dfa79a +config_hash: 0b768ed1b56c6d82816f0fa40dc4aaf5 diff --git a/lib/openai.rb b/lib/openai.rb index cbef9cd5..a6caf578 100644 --- a/lib/openai.rb +++ b/lib/openai.rb @@ -60,6 +60,9 @@ require_relative "openai/structured_output" require_relative "openai/models/reasoning_effort" require_relative "openai/models/chat/chat_completion_message" +require_relative "openai/models/graders/score_model_grader" +require_relative "openai/models/graders/python_grader" +require_relative "openai/models/graders/text_similarity_grader" require_relative "openai/models/fine_tuning/fine_tuning_job_wandb_integration_object" require_relative "openai/models/responses/response_function_tool_call" require_relative "openai/models/all_models" @@ -230,7 +233,6 @@ require_relative "openai/models/eval_custom_data_source_config" require_relative "openai/models/eval_delete_params" require_relative "openai/models/eval_delete_response" -require_relative "openai/models/eval_label_model_grader" require_relative "openai/models/eval_list_params" require_relative "openai/models/eval_list_response" require_relative "openai/models/eval_retrieve_params" @@ -253,8 +255,6 @@ require_relative "openai/models/evals/runs/output_item_retrieve_params" require_relative "openai/models/evals/runs/output_item_retrieve_response" require_relative "openai/models/eval_stored_completions_data_source_config" -require_relative "openai/models/eval_string_check_grader" -require_relative "openai/models/eval_text_similarity_grader" require_relative "openai/models/eval_update_params" require_relative "openai/models/eval_update_response" require_relative "openai/models/file_chunking_strategy" @@ -268,12 +268,18 @@ require_relative "openai/models/file_object" require_relative "openai/models/file_purpose" require_relative "openai/models/file_retrieve_params" +require_relative "openai/models/fine_tuning/alpha/grader_run_params" +require_relative "openai/models/fine_tuning/alpha/grader_run_response" +require_relative "openai/models/fine_tuning/alpha/grader_validate_params" +require_relative "openai/models/fine_tuning/alpha/grader_validate_response" require_relative "openai/models/fine_tuning/checkpoints/permission_create_params" require_relative "openai/models/fine_tuning/checkpoints/permission_create_response" require_relative "openai/models/fine_tuning/checkpoints/permission_delete_params" require_relative "openai/models/fine_tuning/checkpoints/permission_delete_response" require_relative "openai/models/fine_tuning/checkpoints/permission_retrieve_params" require_relative "openai/models/fine_tuning/checkpoints/permission_retrieve_response" +require_relative "openai/models/fine_tuning/dpo_hyperparameters" +require_relative "openai/models/fine_tuning/dpo_method" require_relative "openai/models/fine_tuning/fine_tuning_job" require_relative "openai/models/fine_tuning/fine_tuning_job_event" require_relative "openai/models/fine_tuning/fine_tuning_job_integration" @@ -282,11 +288,20 @@ require_relative "openai/models/fine_tuning/job_create_params" require_relative "openai/models/fine_tuning/job_list_events_params" require_relative "openai/models/fine_tuning/job_list_params" +require_relative "openai/models/fine_tuning/job_pause_params" +require_relative "openai/models/fine_tuning/job_resume_params" require_relative "openai/models/fine_tuning/job_retrieve_params" require_relative "openai/models/fine_tuning/jobs/checkpoint_list_params" require_relative "openai/models/fine_tuning/jobs/fine_tuning_job_checkpoint" +require_relative "openai/models/fine_tuning/reinforcement_hyperparameters" +require_relative "openai/models/fine_tuning/reinforcement_method" +require_relative "openai/models/fine_tuning/supervised_hyperparameters" +require_relative "openai/models/fine_tuning/supervised_method" require_relative "openai/models/function_definition" require_relative "openai/models/function_parameters" +require_relative "openai/models/graders/label_model_grader" +require_relative "openai/models/graders/multi_grader" +require_relative "openai/models/graders/string_check_grader" require_relative "openai/models/image" require_relative "openai/models/image_create_variation_params" require_relative "openai/models/image_edit_params" @@ -450,10 +465,15 @@ require_relative "openai/resources/evals/runs/output_items" require_relative "openai/resources/files" require_relative "openai/resources/fine_tuning" +require_relative "openai/resources/fine_tuning/alpha" +require_relative "openai/resources/fine_tuning/alpha/graders" require_relative "openai/resources/fine_tuning/checkpoints" require_relative "openai/resources/fine_tuning/checkpoints/permissions" require_relative "openai/resources/fine_tuning/jobs" require_relative "openai/resources/fine_tuning/jobs/checkpoints" +require_relative "openai/resources/fine_tuning/methods" +require_relative "openai/resources/graders" +require_relative "openai/resources/graders/grader_models" require_relative "openai/resources/images" require_relative "openai/resources/models" require_relative "openai/resources/moderations" diff --git a/lib/openai/client.rb b/lib/openai/client.rb index c79c1a83..f1ae51e6 100644 --- a/lib/openai/client.rb +++ b/lib/openai/client.rb @@ -51,6 +51,9 @@ class Client < OpenAI::Internal::Transport::BaseClient # @return [OpenAI::Resources::FineTuning] attr_reader :fine_tuning + # @return [OpenAI::Resources::Graders] + attr_reader :graders + # @return [OpenAI::Resources::VectorStores] attr_reader :vector_stores @@ -137,6 +140,7 @@ def initialize( @moderations = OpenAI::Resources::Moderations.new(client: self) @models = OpenAI::Resources::Models.new(client: self) @fine_tuning = OpenAI::Resources::FineTuning.new(client: self) + @graders = OpenAI::Resources::Graders.new(client: self) @vector_stores = OpenAI::Resources::VectorStores.new(client: self) @beta = OpenAI::Resources::Beta.new(client: self) @batches = OpenAI::Resources::Batches.new(client: self) diff --git a/lib/openai/models.rb b/lib/openai/models.rb index 2a0f2cef..31c2a050 100644 --- a/lib/openai/models.rb +++ b/lib/openai/models.rb @@ -59,8 +59,6 @@ module OpenAI EvalDeleteParams = OpenAI::Models::EvalDeleteParams - EvalLabelModelGrader = OpenAI::Models::EvalLabelModelGrader - EvalListParams = OpenAI::Models::EvalListParams EvalRetrieveParams = OpenAI::Models::EvalRetrieveParams @@ -69,10 +67,6 @@ module OpenAI EvalStoredCompletionsDataSourceConfig = OpenAI::Models::EvalStoredCompletionsDataSourceConfig - EvalStringCheckGrader = OpenAI::Models::EvalStringCheckGrader - - EvalTextSimilarityGrader = OpenAI::Models::EvalTextSimilarityGrader - EvalUpdateParams = OpenAI::Models::EvalUpdateParams FileChunkingStrategy = OpenAI::Models::FileChunkingStrategy @@ -104,6 +98,8 @@ module OpenAI # @type [OpenAI::Internal::Type::Converter] FunctionParameters = OpenAI::Models::FunctionParameters + Graders = OpenAI::Models::Graders + Image = OpenAI::Models::Image ImageCreateVariationParams = OpenAI::Models::ImageCreateVariationParams diff --git a/lib/openai/models/eval_create_params.rb b/lib/openai/models/eval_create_params.rb index 91a2a00f..668813af 100644 --- a/lib/openai/models/eval_create_params.rb +++ b/lib/openai/models/eval_create_params.rb @@ -10,13 +10,13 @@ class EvalCreateParams < OpenAI::Internal::Type::BaseModel # @!attribute data_source_config # The configuration for the data source used for the evaluation runs. # - # @return [OpenAI::EvalCreateParams::DataSourceConfig::Custom, OpenAI::EvalCreateParams::DataSourceConfig::Logs] + # @return [OpenAI::EvalCreateParams::DataSourceConfig::Custom, OpenAI::EvalCreateParams::DataSourceConfig::StoredCompletions] required :data_source_config, union: -> { OpenAI::EvalCreateParams::DataSourceConfig } # @!attribute testing_criteria # A list of graders for all eval runs in this group. # - # @return [Array] + # @return [Array] required :testing_criteria, -> { OpenAI::Internal::Type::ArrayOf[union: OpenAI::EvalCreateParams::TestingCriterion] } @@ -41,9 +41,9 @@ class EvalCreateParams < OpenAI::Internal::Type::BaseModel # Some parameter documentations has been truncated, see # {OpenAI::Models::EvalCreateParams} for more details. # - # @param data_source_config [OpenAI::EvalCreateParams::DataSourceConfig::Custom, OpenAI::EvalCreateParams::DataSourceConfig::Logs] The configuration for the data source used for the evaluation runs. + # @param data_source_config [OpenAI::EvalCreateParams::DataSourceConfig::Custom, OpenAI::EvalCreateParams::DataSourceConfig::StoredCompletions] The configuration for the data source used for the evaluation runs. # - # @param testing_criteria [Array] A list of graders for all eval runs in this group. + # @param testing_criteria [Array] A list of graders for all eval runs in this group. # # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be # @@ -65,7 +65,7 @@ module DataSourceConfig # A data source config which specifies the metadata property of your stored completions query. # This is usually metadata like `usecase=chatbot` or `prompt-version=v2`, etc. - variant :logs, -> { OpenAI::EvalCreateParams::DataSourceConfig::Logs } + variant :stored_completions, -> { OpenAI::EvalCreateParams::DataSourceConfig::StoredCompletions } class Custom < OpenAI::Internal::Type::BaseModel # @!attribute item_schema @@ -105,31 +105,31 @@ class Custom < OpenAI::Internal::Type::BaseModel # @param type [Symbol, :custom] The type of data source. Always `custom`. end - class Logs < OpenAI::Internal::Type::BaseModel + class StoredCompletions < OpenAI::Internal::Type::BaseModel # @!attribute type - # The type of data source. Always `logs`. + # The type of data source. Always `stored_completions`. # - # @return [Symbol, :logs] - required :type, const: :logs + # @return [Symbol, :stored_completions] + required :type, const: :stored_completions # @!attribute metadata - # Metadata filters for the logs data source. + # Metadata filters for the stored completions data source. # # @return [Hash{Symbol=>Object}, nil] optional :metadata, OpenAI::Internal::Type::HashOf[OpenAI::Internal::Type::Unknown] - # @!method initialize(metadata: nil, type: :logs) + # @!method initialize(metadata: nil, type: :stored_completions) # A data source config which specifies the metadata property of your stored # completions query. This is usually metadata like `usecase=chatbot` or # `prompt-version=v2`, etc. # - # @param metadata [Hash{Symbol=>Object}] Metadata filters for the logs data source. + # @param metadata [Hash{Symbol=>Object}] Metadata filters for the stored completions data source. # - # @param type [Symbol, :logs] The type of data source. Always `logs`. + # @param type [Symbol, :stored_completions] The type of data source. Always `stored_completions`. end # @!method self.variants - # @return [Array(OpenAI::EvalCreateParams::DataSourceConfig::Custom, OpenAI::EvalCreateParams::DataSourceConfig::Logs)] + # @return [Array(OpenAI::EvalCreateParams::DataSourceConfig::Custom, OpenAI::EvalCreateParams::DataSourceConfig::StoredCompletions)] end # A LabelModelGrader object which uses a model to assign labels to each item in @@ -144,10 +144,10 @@ module TestingCriterion variant :label_model, -> { OpenAI::EvalCreateParams::TestingCriterion::LabelModel } # A StringCheckGrader object that performs a string comparison between input and reference using a specified operation. - variant :string_check, -> { OpenAI::EvalStringCheckGrader } + variant :string_check, -> { OpenAI::Graders::StringCheckGrader } # A TextSimilarityGrader object which grades text based on similarity metrics. - variant :text_similarity, -> { OpenAI::EvalTextSimilarityGrader } + variant :text_similarity, -> { OpenAI::EvalCreateParams::TestingCriterion::TextSimilarity } # A PythonGrader object that runs a python script on the input. variant :python, -> { OpenAI::EvalCreateParams::TestingCriterion::Python } @@ -374,232 +374,47 @@ module Type end end - class Python < OpenAI::Internal::Type::BaseModel - # @!attribute name - # The name of the grader. - # - # @return [String] - required :name, String - - # @!attribute source - # The source code of the python script. - # - # @return [String] - required :source, String - - # @!attribute type - # The object type, which is always `python`. + class TextSimilarity < OpenAI::Models::Graders::TextSimilarityGrader + # @!attribute pass_threshold + # The threshold for the score. # - # @return [Symbol, :python] - required :type, const: :python + # @return [Float] + required :pass_threshold, Float - # @!attribute image_tag - # The image tag to use for the python script. + # @!method initialize(pass_threshold:) + # A TextSimilarityGrader object which grades text based on similarity metrics. # - # @return [String, nil] - optional :image_tag, String + # @param pass_threshold [Float] The threshold for the score. + end + class Python < OpenAI::Models::Graders::PythonGrader # @!attribute pass_threshold # The threshold for the score. # # @return [Float, nil] optional :pass_threshold, Float - # @!method initialize(name:, source:, image_tag: nil, pass_threshold: nil, type: :python) + # @!method initialize(pass_threshold: nil) # A PythonGrader object that runs a python script on the input. # - # @param name [String] The name of the grader. - # - # @param source [String] The source code of the python script. - # - # @param image_tag [String] The image tag to use for the python script. - # # @param pass_threshold [Float] The threshold for the score. - # - # @param type [Symbol, :python] The object type, which is always `python`. end - class ScoreModel < OpenAI::Internal::Type::BaseModel - # @!attribute input - # The input text. This may include template strings. - # - # @return [Array] - required :input, - -> { - OpenAI::Internal::Type::ArrayOf[OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input] - } - - # @!attribute model - # The model to use for the evaluation. - # - # @return [String] - required :model, String - - # @!attribute name - # The name of the grader. - # - # @return [String] - required :name, String - - # @!attribute type - # The object type, which is always `score_model`. - # - # @return [Symbol, :score_model] - required :type, const: :score_model - + class ScoreModel < OpenAI::Models::Graders::ScoreModelGrader # @!attribute pass_threshold # The threshold for the score. # # @return [Float, nil] optional :pass_threshold, Float - # @!attribute range - # The range of the score. Defaults to `[0, 1]`. - # - # @return [Array, nil] - optional :range, OpenAI::Internal::Type::ArrayOf[Float] - - # @!attribute sampling_params - # The sampling parameters for the model. - # - # @return [Object, nil] - optional :sampling_params, OpenAI::Internal::Type::Unknown - - # @!method initialize(input:, model:, name:, pass_threshold: nil, range: nil, sampling_params: nil, type: :score_model) + # @!method initialize(pass_threshold: nil) # A ScoreModelGrader object that uses a model to assign a score to the input. # - # @param input [Array] The input text. This may include template strings. - # - # @param model [String] The model to use for the evaluation. - # - # @param name [String] The name of the grader. - # # @param pass_threshold [Float] The threshold for the score. - # - # @param range [Array] The range of the score. Defaults to `[0, 1]`. - # - # @param sampling_params [Object] The sampling parameters for the model. - # - # @param type [Symbol, :score_model] The object type, which is always `score_model`. - - class Input < OpenAI::Internal::Type::BaseModel - # @!attribute content - # Text inputs to the model - can contain template strings. - # - # @return [String, OpenAI::Responses::ResponseInputText, OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input::Content::OutputText] - required :content, - union: -> { - OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input::Content - } - - # @!attribute role - # The role of the message input. One of `user`, `assistant`, `system`, or - # `developer`. - # - # @return [Symbol, OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input::Role] - required :role, enum: -> { OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input::Role } - - # @!attribute type - # The type of the message input. Always `message`. - # - # @return [Symbol, OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input::Type, nil] - optional :type, enum: -> { OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input::Type } - - # @!method initialize(content:, role:, type: nil) - # Some parameter documentations has been truncated, see - # {OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input} for more - # details. - # - # A message input to the model with a role indicating instruction following - # hierarchy. Instructions given with the `developer` or `system` role take - # precedence over instructions given with the `user` role. Messages with the - # `assistant` role are presumed to have been generated by the model in previous - # interactions. - # - # @param content [String, OpenAI::Responses::ResponseInputText, OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input::Content::OutputText] Text inputs to the model - can contain template strings. - # - # @param role [Symbol, OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input::Role] The role of the message input. One of `user`, `assistant`, `system`, or - # - # @param type [Symbol, OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input::Type] The type of the message input. Always `message`. - - # Text inputs to the model - can contain template strings. - # - # @see OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input#content - module Content - extend OpenAI::Internal::Type::Union - - # A text input to the model. - variant String - - # A text input to the model. - variant -> { OpenAI::Responses::ResponseInputText } - - # A text output from the model. - variant -> { - OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input::Content::OutputText - } - - class OutputText < OpenAI::Internal::Type::BaseModel - # @!attribute text - # The text output from the model. - # - # @return [String] - required :text, String - - # @!attribute type - # The type of the output text. Always `output_text`. - # - # @return [Symbol, :output_text] - required :type, const: :output_text - - # @!method initialize(text:, type: :output_text) - # Some parameter documentations has been truncated, see - # {OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input::Content::OutputText} - # for more details. - # - # A text output from the model. - # - # @param text [String] The text output from the model. - # - # @param type [Symbol, :output_text] The type of the output text. Always `output_text`. - end - - # @!method self.variants - # @return [Array(String, OpenAI::Responses::ResponseInputText, OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input::Content::OutputText)] - end - - # The role of the message input. One of `user`, `assistant`, `system`, or - # `developer`. - # - # @see OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input#role - module Role - extend OpenAI::Internal::Type::Enum - - USER = :user - ASSISTANT = :assistant - SYSTEM = :system - DEVELOPER = :developer - - # @!method self.values - # @return [Array] - end - - # The type of the message input. Always `message`. - # - # @see OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input#type - module Type - extend OpenAI::Internal::Type::Enum - - MESSAGE = :message - - # @!method self.values - # @return [Array] - end - end end # @!method self.variants - # @return [Array(OpenAI::EvalCreateParams::TestingCriterion::LabelModel, OpenAI::EvalStringCheckGrader, OpenAI::EvalTextSimilarityGrader, OpenAI::EvalCreateParams::TestingCriterion::Python, OpenAI::EvalCreateParams::TestingCriterion::ScoreModel)] + # @return [Array(OpenAI::EvalCreateParams::TestingCriterion::LabelModel, OpenAI::Graders::StringCheckGrader, OpenAI::EvalCreateParams::TestingCriterion::TextSimilarity, OpenAI::EvalCreateParams::TestingCriterion::Python, OpenAI::EvalCreateParams::TestingCriterion::ScoreModel)] end end end diff --git a/lib/openai/models/eval_create_response.rb b/lib/openai/models/eval_create_response.rb index db8e08f0..992dbed4 100644 --- a/lib/openai/models/eval_create_response.rb +++ b/lib/openai/models/eval_create_response.rb @@ -48,7 +48,7 @@ class EvalCreateResponse < OpenAI::Internal::Type::BaseModel # @!attribute testing_criteria # A list of testing criteria. # - # @return [Array] + # @return [Array] required :testing_criteria, -> { OpenAI::Internal::Type::ArrayOf[union: OpenAI::Models::EvalCreateResponse::TestingCriterion] } @@ -73,7 +73,7 @@ class EvalCreateResponse < OpenAI::Internal::Type::BaseModel # # @param name [String] The name of the evaluation. # - # @param testing_criteria [Array] A list of testing criteria. + # @param testing_criteria [Array] A list of testing criteria. # # @param object [Symbol, :eval] The object type. @@ -106,244 +106,63 @@ module DataSourceConfig module TestingCriterion extend OpenAI::Internal::Type::Union - discriminator :type - # A LabelModelGrader object which uses a model to assign labels to each item # in the evaluation. - variant :label_model, -> { OpenAI::EvalLabelModelGrader } + variant -> { OpenAI::Graders::LabelModelGrader } # A StringCheckGrader object that performs a string comparison between input and reference using a specified operation. - variant :string_check, -> { OpenAI::EvalStringCheckGrader } + variant -> { OpenAI::Graders::StringCheckGrader } # A TextSimilarityGrader object which grades text based on similarity metrics. - variant :text_similarity, -> { OpenAI::EvalTextSimilarityGrader } + variant -> { OpenAI::Models::EvalCreateResponse::TestingCriterion::EvalGraderTextSimilarity } # A PythonGrader object that runs a python script on the input. - variant :python, -> { OpenAI::Models::EvalCreateResponse::TestingCriterion::Python } + variant -> { OpenAI::Models::EvalCreateResponse::TestingCriterion::EvalGraderPython } # A ScoreModelGrader object that uses a model to assign a score to the input. - variant :score_model, -> { OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel } - - class Python < OpenAI::Internal::Type::BaseModel - # @!attribute name - # The name of the grader. - # - # @return [String] - required :name, String + variant -> { OpenAI::Models::EvalCreateResponse::TestingCriterion::EvalGraderScoreModel } - # @!attribute source - # The source code of the python script. - # - # @return [String] - required :source, String - - # @!attribute type - # The object type, which is always `python`. + class EvalGraderTextSimilarity < OpenAI::Models::Graders::TextSimilarityGrader + # @!attribute pass_threshold + # The threshold for the score. # - # @return [Symbol, :python] - required :type, const: :python + # @return [Float] + required :pass_threshold, Float - # @!attribute image_tag - # The image tag to use for the python script. + # @!method initialize(pass_threshold:) + # A TextSimilarityGrader object which grades text based on similarity metrics. # - # @return [String, nil] - optional :image_tag, String + # @param pass_threshold [Float] The threshold for the score. + end + class EvalGraderPython < OpenAI::Models::Graders::PythonGrader # @!attribute pass_threshold # The threshold for the score. # # @return [Float, nil] optional :pass_threshold, Float - # @!method initialize(name:, source:, image_tag: nil, pass_threshold: nil, type: :python) + # @!method initialize(pass_threshold: nil) # A PythonGrader object that runs a python script on the input. # - # @param name [String] The name of the grader. - # - # @param source [String] The source code of the python script. - # - # @param image_tag [String] The image tag to use for the python script. - # # @param pass_threshold [Float] The threshold for the score. - # - # @param type [Symbol, :python] The object type, which is always `python`. end - class ScoreModel < OpenAI::Internal::Type::BaseModel - # @!attribute input - # The input text. This may include template strings. - # - # @return [Array] - required :input, - -> { OpenAI::Internal::Type::ArrayOf[OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input] } - - # @!attribute model - # The model to use for the evaluation. - # - # @return [String] - required :model, String - - # @!attribute name - # The name of the grader. - # - # @return [String] - required :name, String - - # @!attribute type - # The object type, which is always `score_model`. - # - # @return [Symbol, :score_model] - required :type, const: :score_model - + class EvalGraderScoreModel < OpenAI::Models::Graders::ScoreModelGrader # @!attribute pass_threshold # The threshold for the score. # # @return [Float, nil] optional :pass_threshold, Float - # @!attribute range - # The range of the score. Defaults to `[0, 1]`. - # - # @return [Array, nil] - optional :range, OpenAI::Internal::Type::ArrayOf[Float] - - # @!attribute sampling_params - # The sampling parameters for the model. - # - # @return [Object, nil] - optional :sampling_params, OpenAI::Internal::Type::Unknown - - # @!method initialize(input:, model:, name:, pass_threshold: nil, range: nil, sampling_params: nil, type: :score_model) + # @!method initialize(pass_threshold: nil) # A ScoreModelGrader object that uses a model to assign a score to the input. # - # @param input [Array] The input text. This may include template strings. - # - # @param model [String] The model to use for the evaluation. - # - # @param name [String] The name of the grader. - # # @param pass_threshold [Float] The threshold for the score. - # - # @param range [Array] The range of the score. Defaults to `[0, 1]`. - # - # @param sampling_params [Object] The sampling parameters for the model. - # - # @param type [Symbol, :score_model] The object type, which is always `score_model`. - - class Input < OpenAI::Internal::Type::BaseModel - # @!attribute content - # Text inputs to the model - can contain template strings. - # - # @return [String, OpenAI::Responses::ResponseInputText, OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Content::OutputText] - required :content, - union: -> { OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Content } - - # @!attribute role - # The role of the message input. One of `user`, `assistant`, `system`, or - # `developer`. - # - # @return [Symbol, OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Role] - required :role, enum: -> { OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Role } - - # @!attribute type - # The type of the message input. Always `message`. - # - # @return [Symbol, OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Type, nil] - optional :type, enum: -> { OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Type } - - # @!method initialize(content:, role:, type: nil) - # Some parameter documentations has been truncated, see - # {OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input} for - # more details. - # - # A message input to the model with a role indicating instruction following - # hierarchy. Instructions given with the `developer` or `system` role take - # precedence over instructions given with the `user` role. Messages with the - # `assistant` role are presumed to have been generated by the model in previous - # interactions. - # - # @param content [String, OpenAI::Responses::ResponseInputText, OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Content::OutputText] Text inputs to the model - can contain template strings. - # - # @param role [Symbol, OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Role] The role of the message input. One of `user`, `assistant`, `system`, or - # - # @param type [Symbol, OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Type] The type of the message input. Always `message`. - - # Text inputs to the model - can contain template strings. - # - # @see OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input#content - module Content - extend OpenAI::Internal::Type::Union - - # A text input to the model. - variant String - - # A text input to the model. - variant -> { OpenAI::Responses::ResponseInputText } - - # A text output from the model. - variant -> { OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Content::OutputText } - - class OutputText < OpenAI::Internal::Type::BaseModel - # @!attribute text - # The text output from the model. - # - # @return [String] - required :text, String - - # @!attribute type - # The type of the output text. Always `output_text`. - # - # @return [Symbol, :output_text] - required :type, const: :output_text - - # @!method initialize(text:, type: :output_text) - # Some parameter documentations has been truncated, see - # {OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Content::OutputText} - # for more details. - # - # A text output from the model. - # - # @param text [String] The text output from the model. - # - # @param type [Symbol, :output_text] The type of the output text. Always `output_text`. - end - - # @!method self.variants - # @return [Array(String, OpenAI::Responses::ResponseInputText, OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Content::OutputText)] - end - - # The role of the message input. One of `user`, `assistant`, `system`, or - # `developer`. - # - # @see OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input#role - module Role - extend OpenAI::Internal::Type::Enum - - USER = :user - ASSISTANT = :assistant - SYSTEM = :system - DEVELOPER = :developer - - # @!method self.values - # @return [Array] - end - - # The type of the message input. Always `message`. - # - # @see OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input#type - module Type - extend OpenAI::Internal::Type::Enum - - MESSAGE = :message - - # @!method self.values - # @return [Array] - end - end end # @!method self.variants - # @return [Array(OpenAI::EvalLabelModelGrader, OpenAI::EvalStringCheckGrader, OpenAI::EvalTextSimilarityGrader, OpenAI::Models::EvalCreateResponse::TestingCriterion::Python, OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel)] + # @return [Array(OpenAI::Graders::LabelModelGrader, OpenAI::Graders::StringCheckGrader, OpenAI::Models::EvalCreateResponse::TestingCriterion::EvalGraderTextSimilarity, OpenAI::Models::EvalCreateResponse::TestingCriterion::EvalGraderPython, OpenAI::Models::EvalCreateResponse::TestingCriterion::EvalGraderScoreModel)] end end end diff --git a/lib/openai/models/eval_label_model_grader.rb b/lib/openai/models/eval_label_model_grader.rb deleted file mode 100644 index 271e8884..00000000 --- a/lib/openai/models/eval_label_model_grader.rb +++ /dev/null @@ -1,166 +0,0 @@ -# frozen_string_literal: true - -module OpenAI - module Models - class EvalLabelModelGrader < OpenAI::Internal::Type::BaseModel - # @!attribute input - # - # @return [Array] - required :input, -> { OpenAI::Internal::Type::ArrayOf[OpenAI::EvalLabelModelGrader::Input] } - - # @!attribute labels - # The labels to assign to each item in the evaluation. - # - # @return [Array] - required :labels, OpenAI::Internal::Type::ArrayOf[String] - - # @!attribute model - # The model to use for the evaluation. Must support structured outputs. - # - # @return [String] - required :model, String - - # @!attribute name - # The name of the grader. - # - # @return [String] - required :name, String - - # @!attribute passing_labels - # The labels that indicate a passing result. Must be a subset of labels. - # - # @return [Array] - required :passing_labels, OpenAI::Internal::Type::ArrayOf[String] - - # @!attribute type - # The object type, which is always `label_model`. - # - # @return [Symbol, :label_model] - required :type, const: :label_model - - # @!method initialize(input:, labels:, model:, name:, passing_labels:, type: :label_model) - # A LabelModelGrader object which uses a model to assign labels to each item in - # the evaluation. - # - # @param input [Array] - # - # @param labels [Array] The labels to assign to each item in the evaluation. - # - # @param model [String] The model to use for the evaluation. Must support structured outputs. - # - # @param name [String] The name of the grader. - # - # @param passing_labels [Array] The labels that indicate a passing result. Must be a subset of labels. - # - # @param type [Symbol, :label_model] The object type, which is always `label_model`. - - class Input < OpenAI::Internal::Type::BaseModel - # @!attribute content - # Text inputs to the model - can contain template strings. - # - # @return [String, OpenAI::Responses::ResponseInputText, OpenAI::EvalLabelModelGrader::Input::Content::OutputText] - required :content, union: -> { OpenAI::EvalLabelModelGrader::Input::Content } - - # @!attribute role - # The role of the message input. One of `user`, `assistant`, `system`, or - # `developer`. - # - # @return [Symbol, OpenAI::EvalLabelModelGrader::Input::Role] - required :role, enum: -> { OpenAI::EvalLabelModelGrader::Input::Role } - - # @!attribute type - # The type of the message input. Always `message`. - # - # @return [Symbol, OpenAI::EvalLabelModelGrader::Input::Type, nil] - optional :type, enum: -> { OpenAI::EvalLabelModelGrader::Input::Type } - - # @!method initialize(content:, role:, type: nil) - # Some parameter documentations has been truncated, see - # {OpenAI::EvalLabelModelGrader::Input} for more details. - # - # A message input to the model with a role indicating instruction following - # hierarchy. Instructions given with the `developer` or `system` role take - # precedence over instructions given with the `user` role. Messages with the - # `assistant` role are presumed to have been generated by the model in previous - # interactions. - # - # @param content [String, OpenAI::Responses::ResponseInputText, OpenAI::EvalLabelModelGrader::Input::Content::OutputText] Text inputs to the model - can contain template strings. - # - # @param role [Symbol, OpenAI::EvalLabelModelGrader::Input::Role] The role of the message input. One of `user`, `assistant`, `system`, or - # - # @param type [Symbol, OpenAI::EvalLabelModelGrader::Input::Type] The type of the message input. Always `message`. - - # Text inputs to the model - can contain template strings. - # - # @see OpenAI::EvalLabelModelGrader::Input#content - module Content - extend OpenAI::Internal::Type::Union - - # A text input to the model. - variant String - - # A text input to the model. - variant -> { OpenAI::Responses::ResponseInputText } - - # A text output from the model. - variant -> { OpenAI::EvalLabelModelGrader::Input::Content::OutputText } - - class OutputText < OpenAI::Internal::Type::BaseModel - # @!attribute text - # The text output from the model. - # - # @return [String] - required :text, String - - # @!attribute type - # The type of the output text. Always `output_text`. - # - # @return [Symbol, :output_text] - required :type, const: :output_text - - # @!method initialize(text:, type: :output_text) - # Some parameter documentations has been truncated, see - # {OpenAI::EvalLabelModelGrader::Input::Content::OutputText} for more details. - # - # A text output from the model. - # - # @param text [String] The text output from the model. - # - # @param type [Symbol, :output_text] The type of the output text. Always `output_text`. - end - - # @!method self.variants - # @return [Array(String, OpenAI::Responses::ResponseInputText, OpenAI::EvalLabelModelGrader::Input::Content::OutputText)] - end - - # The role of the message input. One of `user`, `assistant`, `system`, or - # `developer`. - # - # @see OpenAI::EvalLabelModelGrader::Input#role - module Role - extend OpenAI::Internal::Type::Enum - - USER = :user - ASSISTANT = :assistant - SYSTEM = :system - DEVELOPER = :developer - - # @!method self.values - # @return [Array] - end - - # The type of the message input. Always `message`. - # - # @see OpenAI::EvalLabelModelGrader::Input#type - module Type - extend OpenAI::Internal::Type::Enum - - MESSAGE = :message - - # @!method self.values - # @return [Array] - end - end - end - end -end diff --git a/lib/openai/models/eval_list_response.rb b/lib/openai/models/eval_list_response.rb index 7ff9c586..d75a67aa 100644 --- a/lib/openai/models/eval_list_response.rb +++ b/lib/openai/models/eval_list_response.rb @@ -48,7 +48,7 @@ class EvalListResponse < OpenAI::Internal::Type::BaseModel # @!attribute testing_criteria # A list of testing criteria. # - # @return [Array] + # @return [Array] required :testing_criteria, -> { OpenAI::Internal::Type::ArrayOf[union: OpenAI::Models::EvalListResponse::TestingCriterion] } @@ -73,7 +73,7 @@ class EvalListResponse < OpenAI::Internal::Type::BaseModel # # @param name [String] The name of the evaluation. # - # @param testing_criteria [Array] A list of testing criteria. + # @param testing_criteria [Array] A list of testing criteria. # # @param object [Symbol, :eval] The object type. @@ -106,244 +106,63 @@ module DataSourceConfig module TestingCriterion extend OpenAI::Internal::Type::Union - discriminator :type - # A LabelModelGrader object which uses a model to assign labels to each item # in the evaluation. - variant :label_model, -> { OpenAI::EvalLabelModelGrader } + variant -> { OpenAI::Graders::LabelModelGrader } # A StringCheckGrader object that performs a string comparison between input and reference using a specified operation. - variant :string_check, -> { OpenAI::EvalStringCheckGrader } + variant -> { OpenAI::Graders::StringCheckGrader } # A TextSimilarityGrader object which grades text based on similarity metrics. - variant :text_similarity, -> { OpenAI::EvalTextSimilarityGrader } + variant -> { OpenAI::Models::EvalListResponse::TestingCriterion::EvalGraderTextSimilarity } # A PythonGrader object that runs a python script on the input. - variant :python, -> { OpenAI::Models::EvalListResponse::TestingCriterion::Python } + variant -> { OpenAI::Models::EvalListResponse::TestingCriterion::EvalGraderPython } # A ScoreModelGrader object that uses a model to assign a score to the input. - variant :score_model, -> { OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel } - - class Python < OpenAI::Internal::Type::BaseModel - # @!attribute name - # The name of the grader. - # - # @return [String] - required :name, String + variant -> { OpenAI::Models::EvalListResponse::TestingCriterion::EvalGraderScoreModel } - # @!attribute source - # The source code of the python script. - # - # @return [String] - required :source, String - - # @!attribute type - # The object type, which is always `python`. + class EvalGraderTextSimilarity < OpenAI::Models::Graders::TextSimilarityGrader + # @!attribute pass_threshold + # The threshold for the score. # - # @return [Symbol, :python] - required :type, const: :python + # @return [Float] + required :pass_threshold, Float - # @!attribute image_tag - # The image tag to use for the python script. + # @!method initialize(pass_threshold:) + # A TextSimilarityGrader object which grades text based on similarity metrics. # - # @return [String, nil] - optional :image_tag, String + # @param pass_threshold [Float] The threshold for the score. + end + class EvalGraderPython < OpenAI::Models::Graders::PythonGrader # @!attribute pass_threshold # The threshold for the score. # # @return [Float, nil] optional :pass_threshold, Float - # @!method initialize(name:, source:, image_tag: nil, pass_threshold: nil, type: :python) + # @!method initialize(pass_threshold: nil) # A PythonGrader object that runs a python script on the input. # - # @param name [String] The name of the grader. - # - # @param source [String] The source code of the python script. - # - # @param image_tag [String] The image tag to use for the python script. - # # @param pass_threshold [Float] The threshold for the score. - # - # @param type [Symbol, :python] The object type, which is always `python`. end - class ScoreModel < OpenAI::Internal::Type::BaseModel - # @!attribute input - # The input text. This may include template strings. - # - # @return [Array] - required :input, - -> { OpenAI::Internal::Type::ArrayOf[OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input] } - - # @!attribute model - # The model to use for the evaluation. - # - # @return [String] - required :model, String - - # @!attribute name - # The name of the grader. - # - # @return [String] - required :name, String - - # @!attribute type - # The object type, which is always `score_model`. - # - # @return [Symbol, :score_model] - required :type, const: :score_model - + class EvalGraderScoreModel < OpenAI::Models::Graders::ScoreModelGrader # @!attribute pass_threshold # The threshold for the score. # # @return [Float, nil] optional :pass_threshold, Float - # @!attribute range - # The range of the score. Defaults to `[0, 1]`. - # - # @return [Array, nil] - optional :range, OpenAI::Internal::Type::ArrayOf[Float] - - # @!attribute sampling_params - # The sampling parameters for the model. - # - # @return [Object, nil] - optional :sampling_params, OpenAI::Internal::Type::Unknown - - # @!method initialize(input:, model:, name:, pass_threshold: nil, range: nil, sampling_params: nil, type: :score_model) + # @!method initialize(pass_threshold: nil) # A ScoreModelGrader object that uses a model to assign a score to the input. # - # @param input [Array] The input text. This may include template strings. - # - # @param model [String] The model to use for the evaluation. - # - # @param name [String] The name of the grader. - # # @param pass_threshold [Float] The threshold for the score. - # - # @param range [Array] The range of the score. Defaults to `[0, 1]`. - # - # @param sampling_params [Object] The sampling parameters for the model. - # - # @param type [Symbol, :score_model] The object type, which is always `score_model`. - - class Input < OpenAI::Internal::Type::BaseModel - # @!attribute content - # Text inputs to the model - can contain template strings. - # - # @return [String, OpenAI::Responses::ResponseInputText, OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Content::OutputText] - required :content, - union: -> { OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Content } - - # @!attribute role - # The role of the message input. One of `user`, `assistant`, `system`, or - # `developer`. - # - # @return [Symbol, OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Role] - required :role, enum: -> { OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Role } - - # @!attribute type - # The type of the message input. Always `message`. - # - # @return [Symbol, OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Type, nil] - optional :type, enum: -> { OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Type } - - # @!method initialize(content:, role:, type: nil) - # Some parameter documentations has been truncated, see - # {OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input} for more - # details. - # - # A message input to the model with a role indicating instruction following - # hierarchy. Instructions given with the `developer` or `system` role take - # precedence over instructions given with the `user` role. Messages with the - # `assistant` role are presumed to have been generated by the model in previous - # interactions. - # - # @param content [String, OpenAI::Responses::ResponseInputText, OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Content::OutputText] Text inputs to the model - can contain template strings. - # - # @param role [Symbol, OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Role] The role of the message input. One of `user`, `assistant`, `system`, or - # - # @param type [Symbol, OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Type] The type of the message input. Always `message`. - - # Text inputs to the model - can contain template strings. - # - # @see OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input#content - module Content - extend OpenAI::Internal::Type::Union - - # A text input to the model. - variant String - - # A text input to the model. - variant -> { OpenAI::Responses::ResponseInputText } - - # A text output from the model. - variant -> { OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Content::OutputText } - - class OutputText < OpenAI::Internal::Type::BaseModel - # @!attribute text - # The text output from the model. - # - # @return [String] - required :text, String - - # @!attribute type - # The type of the output text. Always `output_text`. - # - # @return [Symbol, :output_text] - required :type, const: :output_text - - # @!method initialize(text:, type: :output_text) - # Some parameter documentations has been truncated, see - # {OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Content::OutputText} - # for more details. - # - # A text output from the model. - # - # @param text [String] The text output from the model. - # - # @param type [Symbol, :output_text] The type of the output text. Always `output_text`. - end - - # @!method self.variants - # @return [Array(String, OpenAI::Responses::ResponseInputText, OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Content::OutputText)] - end - - # The role of the message input. One of `user`, `assistant`, `system`, or - # `developer`. - # - # @see OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input#role - module Role - extend OpenAI::Internal::Type::Enum - - USER = :user - ASSISTANT = :assistant - SYSTEM = :system - DEVELOPER = :developer - - # @!method self.values - # @return [Array] - end - - # The type of the message input. Always `message`. - # - # @see OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input#type - module Type - extend OpenAI::Internal::Type::Enum - - MESSAGE = :message - - # @!method self.values - # @return [Array] - end - end end # @!method self.variants - # @return [Array(OpenAI::EvalLabelModelGrader, OpenAI::EvalStringCheckGrader, OpenAI::EvalTextSimilarityGrader, OpenAI::Models::EvalListResponse::TestingCriterion::Python, OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel)] + # @return [Array(OpenAI::Graders::LabelModelGrader, OpenAI::Graders::StringCheckGrader, OpenAI::Models::EvalListResponse::TestingCriterion::EvalGraderTextSimilarity, OpenAI::Models::EvalListResponse::TestingCriterion::EvalGraderPython, OpenAI::Models::EvalListResponse::TestingCriterion::EvalGraderScoreModel)] end end end diff --git a/lib/openai/models/eval_retrieve_response.rb b/lib/openai/models/eval_retrieve_response.rb index 51f2d27c..8cfd179d 100644 --- a/lib/openai/models/eval_retrieve_response.rb +++ b/lib/openai/models/eval_retrieve_response.rb @@ -48,7 +48,7 @@ class EvalRetrieveResponse < OpenAI::Internal::Type::BaseModel # @!attribute testing_criteria # A list of testing criteria. # - # @return [Array] + # @return [Array] required :testing_criteria, -> { OpenAI::Internal::Type::ArrayOf[union: OpenAI::Models::EvalRetrieveResponse::TestingCriterion] } @@ -73,7 +73,7 @@ class EvalRetrieveResponse < OpenAI::Internal::Type::BaseModel # # @param name [String] The name of the evaluation. # - # @param testing_criteria [Array] A list of testing criteria. + # @param testing_criteria [Array] A list of testing criteria. # # @param object [Symbol, :eval] The object type. @@ -106,246 +106,63 @@ module DataSourceConfig module TestingCriterion extend OpenAI::Internal::Type::Union - discriminator :type - # A LabelModelGrader object which uses a model to assign labels to each item # in the evaluation. - variant :label_model, -> { OpenAI::EvalLabelModelGrader } + variant -> { OpenAI::Graders::LabelModelGrader } # A StringCheckGrader object that performs a string comparison between input and reference using a specified operation. - variant :string_check, -> { OpenAI::EvalStringCheckGrader } + variant -> { OpenAI::Graders::StringCheckGrader } # A TextSimilarityGrader object which grades text based on similarity metrics. - variant :text_similarity, -> { OpenAI::EvalTextSimilarityGrader } + variant -> { OpenAI::Models::EvalRetrieveResponse::TestingCriterion::EvalGraderTextSimilarity } # A PythonGrader object that runs a python script on the input. - variant :python, -> { OpenAI::Models::EvalRetrieveResponse::TestingCriterion::Python } + variant -> { OpenAI::Models::EvalRetrieveResponse::TestingCriterion::EvalGraderPython } # A ScoreModelGrader object that uses a model to assign a score to the input. - variant :score_model, -> { OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel } - - class Python < OpenAI::Internal::Type::BaseModel - # @!attribute name - # The name of the grader. - # - # @return [String] - required :name, String + variant -> { OpenAI::Models::EvalRetrieveResponse::TestingCriterion::EvalGraderScoreModel } - # @!attribute source - # The source code of the python script. - # - # @return [String] - required :source, String - - # @!attribute type - # The object type, which is always `python`. + class EvalGraderTextSimilarity < OpenAI::Models::Graders::TextSimilarityGrader + # @!attribute pass_threshold + # The threshold for the score. # - # @return [Symbol, :python] - required :type, const: :python + # @return [Float] + required :pass_threshold, Float - # @!attribute image_tag - # The image tag to use for the python script. + # @!method initialize(pass_threshold:) + # A TextSimilarityGrader object which grades text based on similarity metrics. # - # @return [String, nil] - optional :image_tag, String + # @param pass_threshold [Float] The threshold for the score. + end + class EvalGraderPython < OpenAI::Models::Graders::PythonGrader # @!attribute pass_threshold # The threshold for the score. # # @return [Float, nil] optional :pass_threshold, Float - # @!method initialize(name:, source:, image_tag: nil, pass_threshold: nil, type: :python) + # @!method initialize(pass_threshold: nil) # A PythonGrader object that runs a python script on the input. # - # @param name [String] The name of the grader. - # - # @param source [String] The source code of the python script. - # - # @param image_tag [String] The image tag to use for the python script. - # # @param pass_threshold [Float] The threshold for the score. - # - # @param type [Symbol, :python] The object type, which is always `python`. end - class ScoreModel < OpenAI::Internal::Type::BaseModel - # @!attribute input - # The input text. This may include template strings. - # - # @return [Array] - required :input, - -> { OpenAI::Internal::Type::ArrayOf[OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input] } - - # @!attribute model - # The model to use for the evaluation. - # - # @return [String] - required :model, String - - # @!attribute name - # The name of the grader. - # - # @return [String] - required :name, String - - # @!attribute type - # The object type, which is always `score_model`. - # - # @return [Symbol, :score_model] - required :type, const: :score_model - + class EvalGraderScoreModel < OpenAI::Models::Graders::ScoreModelGrader # @!attribute pass_threshold # The threshold for the score. # # @return [Float, nil] optional :pass_threshold, Float - # @!attribute range - # The range of the score. Defaults to `[0, 1]`. - # - # @return [Array, nil] - optional :range, OpenAI::Internal::Type::ArrayOf[Float] - - # @!attribute sampling_params - # The sampling parameters for the model. - # - # @return [Object, nil] - optional :sampling_params, OpenAI::Internal::Type::Unknown - - # @!method initialize(input:, model:, name:, pass_threshold: nil, range: nil, sampling_params: nil, type: :score_model) + # @!method initialize(pass_threshold: nil) # A ScoreModelGrader object that uses a model to assign a score to the input. # - # @param input [Array] The input text. This may include template strings. - # - # @param model [String] The model to use for the evaluation. - # - # @param name [String] The name of the grader. - # # @param pass_threshold [Float] The threshold for the score. - # - # @param range [Array] The range of the score. Defaults to `[0, 1]`. - # - # @param sampling_params [Object] The sampling parameters for the model. - # - # @param type [Symbol, :score_model] The object type, which is always `score_model`. - - class Input < OpenAI::Internal::Type::BaseModel - # @!attribute content - # Text inputs to the model - can contain template strings. - # - # @return [String, OpenAI::Responses::ResponseInputText, OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Content::OutputText] - required :content, - union: -> { OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Content } - - # @!attribute role - # The role of the message input. One of `user`, `assistant`, `system`, or - # `developer`. - # - # @return [Symbol, OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Role] - required :role, - enum: -> { OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Role } - - # @!attribute type - # The type of the message input. Always `message`. - # - # @return [Symbol, OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Type, nil] - optional :type, - enum: -> { OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Type } - - # @!method initialize(content:, role:, type: nil) - # Some parameter documentations has been truncated, see - # {OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input} for - # more details. - # - # A message input to the model with a role indicating instruction following - # hierarchy. Instructions given with the `developer` or `system` role take - # precedence over instructions given with the `user` role. Messages with the - # `assistant` role are presumed to have been generated by the model in previous - # interactions. - # - # @param content [String, OpenAI::Responses::ResponseInputText, OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Content::OutputText] Text inputs to the model - can contain template strings. - # - # @param role [Symbol, OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Role] The role of the message input. One of `user`, `assistant`, `system`, or - # - # @param type [Symbol, OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Type] The type of the message input. Always `message`. - - # Text inputs to the model - can contain template strings. - # - # @see OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input#content - module Content - extend OpenAI::Internal::Type::Union - - # A text input to the model. - variant String - - # A text input to the model. - variant -> { OpenAI::Responses::ResponseInputText } - - # A text output from the model. - variant -> { OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Content::OutputText } - - class OutputText < OpenAI::Internal::Type::BaseModel - # @!attribute text - # The text output from the model. - # - # @return [String] - required :text, String - - # @!attribute type - # The type of the output text. Always `output_text`. - # - # @return [Symbol, :output_text] - required :type, const: :output_text - - # @!method initialize(text:, type: :output_text) - # Some parameter documentations has been truncated, see - # {OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Content::OutputText} - # for more details. - # - # A text output from the model. - # - # @param text [String] The text output from the model. - # - # @param type [Symbol, :output_text] The type of the output text. Always `output_text`. - end - - # @!method self.variants - # @return [Array(String, OpenAI::Responses::ResponseInputText, OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Content::OutputText)] - end - - # The role of the message input. One of `user`, `assistant`, `system`, or - # `developer`. - # - # @see OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input#role - module Role - extend OpenAI::Internal::Type::Enum - - USER = :user - ASSISTANT = :assistant - SYSTEM = :system - DEVELOPER = :developer - - # @!method self.values - # @return [Array] - end - - # The type of the message input. Always `message`. - # - # @see OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input#type - module Type - extend OpenAI::Internal::Type::Enum - - MESSAGE = :message - - # @!method self.values - # @return [Array] - end - end end # @!method self.variants - # @return [Array(OpenAI::EvalLabelModelGrader, OpenAI::EvalStringCheckGrader, OpenAI::EvalTextSimilarityGrader, OpenAI::Models::EvalRetrieveResponse::TestingCriterion::Python, OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel)] + # @return [Array(OpenAI::Graders::LabelModelGrader, OpenAI::Graders::StringCheckGrader, OpenAI::Models::EvalRetrieveResponse::TestingCriterion::EvalGraderTextSimilarity, OpenAI::Models::EvalRetrieveResponse::TestingCriterion::EvalGraderPython, OpenAI::Models::EvalRetrieveResponse::TestingCriterion::EvalGraderScoreModel)] end end end diff --git a/lib/openai/models/eval_string_check_grader.rb b/lib/openai/models/eval_string_check_grader.rb deleted file mode 100644 index 494f8199..00000000 --- a/lib/openai/models/eval_string_check_grader.rb +++ /dev/null @@ -1,66 +0,0 @@ -# frozen_string_literal: true - -module OpenAI - module Models - class EvalStringCheckGrader < OpenAI::Internal::Type::BaseModel - # @!attribute input - # The input text. This may include template strings. - # - # @return [String] - required :input, String - - # @!attribute name - # The name of the grader. - # - # @return [String] - required :name, String - - # @!attribute operation - # The string check operation to perform. One of `eq`, `ne`, `like`, or `ilike`. - # - # @return [Symbol, OpenAI::EvalStringCheckGrader::Operation] - required :operation, enum: -> { OpenAI::EvalStringCheckGrader::Operation } - - # @!attribute reference - # The reference text. This may include template strings. - # - # @return [String] - required :reference, String - - # @!attribute type - # The object type, which is always `string_check`. - # - # @return [Symbol, :string_check] - required :type, const: :string_check - - # @!method initialize(input:, name:, operation:, reference:, type: :string_check) - # A StringCheckGrader object that performs a string comparison between input and - # reference using a specified operation. - # - # @param input [String] The input text. This may include template strings. - # - # @param name [String] The name of the grader. - # - # @param operation [Symbol, OpenAI::EvalStringCheckGrader::Operation] The string check operation to perform. One of `eq`, `ne`, `like`, or `ilike`. - # - # @param reference [String] The reference text. This may include template strings. - # - # @param type [Symbol, :string_check] The object type, which is always `string_check`. - - # The string check operation to perform. One of `eq`, `ne`, `like`, or `ilike`. - # - # @see OpenAI::EvalStringCheckGrader#operation - module Operation - extend OpenAI::Internal::Type::Enum - - EQ = :eq - NE = :ne - LIKE = :like - ILIKE = :ilike - - # @!method self.values - # @return [Array] - end - end - end -end diff --git a/lib/openai/models/eval_text_similarity_grader.rb b/lib/openai/models/eval_text_similarity_grader.rb deleted file mode 100644 index 765bb9c6..00000000 --- a/lib/openai/models/eval_text_similarity_grader.rb +++ /dev/null @@ -1,84 +0,0 @@ -# frozen_string_literal: true - -module OpenAI - module Models - class EvalTextSimilarityGrader < OpenAI::Internal::Type::BaseModel - # @!attribute evaluation_metric - # The evaluation metric to use. One of `fuzzy_match`, `bleu`, `gleu`, `meteor`, - # `rouge_1`, `rouge_2`, `rouge_3`, `rouge_4`, `rouge_5`, or `rouge_l`. - # - # @return [Symbol, OpenAI::EvalTextSimilarityGrader::EvaluationMetric] - required :evaluation_metric, enum: -> { OpenAI::EvalTextSimilarityGrader::EvaluationMetric } - - # @!attribute input - # The text being graded. - # - # @return [String] - required :input, String - - # @!attribute pass_threshold - # A float score where a value greater than or equal indicates a passing grade. - # - # @return [Float] - required :pass_threshold, Float - - # @!attribute reference - # The text being graded against. - # - # @return [String] - required :reference, String - - # @!attribute type - # The type of grader. - # - # @return [Symbol, :text_similarity] - required :type, const: :text_similarity - - # @!attribute name - # The name of the grader. - # - # @return [String, nil] - optional :name, String - - # @!method initialize(evaluation_metric:, input:, pass_threshold:, reference:, name: nil, type: :text_similarity) - # Some parameter documentations has been truncated, see - # {OpenAI::EvalTextSimilarityGrader} for more details. - # - # A TextSimilarityGrader object which grades text based on similarity metrics. - # - # @param evaluation_metric [Symbol, OpenAI::EvalTextSimilarityGrader::EvaluationMetric] The evaluation metric to use. One of `fuzzy_match`, `bleu`, `gleu`, `meteor`, `r - # - # @param input [String] The text being graded. - # - # @param pass_threshold [Float] A float score where a value greater than or equal indicates a passing grade. - # - # @param reference [String] The text being graded against. - # - # @param name [String] The name of the grader. - # - # @param type [Symbol, :text_similarity] The type of grader. - - # The evaluation metric to use. One of `fuzzy_match`, `bleu`, `gleu`, `meteor`, - # `rouge_1`, `rouge_2`, `rouge_3`, `rouge_4`, `rouge_5`, or `rouge_l`. - # - # @see OpenAI::EvalTextSimilarityGrader#evaluation_metric - module EvaluationMetric - extend OpenAI::Internal::Type::Enum - - FUZZY_MATCH = :fuzzy_match - BLEU = :bleu - GLEU = :gleu - METEOR = :meteor - ROUGE_1 = :rouge_1 - ROUGE_2 = :rouge_2 - ROUGE_3 = :rouge_3 - ROUGE_4 = :rouge_4 - ROUGE_5 = :rouge_5 - ROUGE_L = :rouge_l - - # @!method self.values - # @return [Array] - end - end - end -end diff --git a/lib/openai/models/eval_update_response.rb b/lib/openai/models/eval_update_response.rb index 12986ff3..67e02168 100644 --- a/lib/openai/models/eval_update_response.rb +++ b/lib/openai/models/eval_update_response.rb @@ -48,7 +48,7 @@ class EvalUpdateResponse < OpenAI::Internal::Type::BaseModel # @!attribute testing_criteria # A list of testing criteria. # - # @return [Array] + # @return [Array] required :testing_criteria, -> { OpenAI::Internal::Type::ArrayOf[union: OpenAI::Models::EvalUpdateResponse::TestingCriterion] } @@ -73,7 +73,7 @@ class EvalUpdateResponse < OpenAI::Internal::Type::BaseModel # # @param name [String] The name of the evaluation. # - # @param testing_criteria [Array] A list of testing criteria. + # @param testing_criteria [Array] A list of testing criteria. # # @param object [Symbol, :eval] The object type. @@ -106,244 +106,63 @@ module DataSourceConfig module TestingCriterion extend OpenAI::Internal::Type::Union - discriminator :type - # A LabelModelGrader object which uses a model to assign labels to each item # in the evaluation. - variant :label_model, -> { OpenAI::EvalLabelModelGrader } + variant -> { OpenAI::Graders::LabelModelGrader } # A StringCheckGrader object that performs a string comparison between input and reference using a specified operation. - variant :string_check, -> { OpenAI::EvalStringCheckGrader } + variant -> { OpenAI::Graders::StringCheckGrader } # A TextSimilarityGrader object which grades text based on similarity metrics. - variant :text_similarity, -> { OpenAI::EvalTextSimilarityGrader } + variant -> { OpenAI::Models::EvalUpdateResponse::TestingCriterion::EvalGraderTextSimilarity } # A PythonGrader object that runs a python script on the input. - variant :python, -> { OpenAI::Models::EvalUpdateResponse::TestingCriterion::Python } + variant -> { OpenAI::Models::EvalUpdateResponse::TestingCriterion::EvalGraderPython } # A ScoreModelGrader object that uses a model to assign a score to the input. - variant :score_model, -> { OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel } - - class Python < OpenAI::Internal::Type::BaseModel - # @!attribute name - # The name of the grader. - # - # @return [String] - required :name, String + variant -> { OpenAI::Models::EvalUpdateResponse::TestingCriterion::EvalGraderScoreModel } - # @!attribute source - # The source code of the python script. - # - # @return [String] - required :source, String - - # @!attribute type - # The object type, which is always `python`. + class EvalGraderTextSimilarity < OpenAI::Models::Graders::TextSimilarityGrader + # @!attribute pass_threshold + # The threshold for the score. # - # @return [Symbol, :python] - required :type, const: :python + # @return [Float] + required :pass_threshold, Float - # @!attribute image_tag - # The image tag to use for the python script. + # @!method initialize(pass_threshold:) + # A TextSimilarityGrader object which grades text based on similarity metrics. # - # @return [String, nil] - optional :image_tag, String + # @param pass_threshold [Float] The threshold for the score. + end + class EvalGraderPython < OpenAI::Models::Graders::PythonGrader # @!attribute pass_threshold # The threshold for the score. # # @return [Float, nil] optional :pass_threshold, Float - # @!method initialize(name:, source:, image_tag: nil, pass_threshold: nil, type: :python) + # @!method initialize(pass_threshold: nil) # A PythonGrader object that runs a python script on the input. # - # @param name [String] The name of the grader. - # - # @param source [String] The source code of the python script. - # - # @param image_tag [String] The image tag to use for the python script. - # # @param pass_threshold [Float] The threshold for the score. - # - # @param type [Symbol, :python] The object type, which is always `python`. end - class ScoreModel < OpenAI::Internal::Type::BaseModel - # @!attribute input - # The input text. This may include template strings. - # - # @return [Array] - required :input, - -> { OpenAI::Internal::Type::ArrayOf[OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input] } - - # @!attribute model - # The model to use for the evaluation. - # - # @return [String] - required :model, String - - # @!attribute name - # The name of the grader. - # - # @return [String] - required :name, String - - # @!attribute type - # The object type, which is always `score_model`. - # - # @return [Symbol, :score_model] - required :type, const: :score_model - + class EvalGraderScoreModel < OpenAI::Models::Graders::ScoreModelGrader # @!attribute pass_threshold # The threshold for the score. # # @return [Float, nil] optional :pass_threshold, Float - # @!attribute range - # The range of the score. Defaults to `[0, 1]`. - # - # @return [Array, nil] - optional :range, OpenAI::Internal::Type::ArrayOf[Float] - - # @!attribute sampling_params - # The sampling parameters for the model. - # - # @return [Object, nil] - optional :sampling_params, OpenAI::Internal::Type::Unknown - - # @!method initialize(input:, model:, name:, pass_threshold: nil, range: nil, sampling_params: nil, type: :score_model) + # @!method initialize(pass_threshold: nil) # A ScoreModelGrader object that uses a model to assign a score to the input. # - # @param input [Array] The input text. This may include template strings. - # - # @param model [String] The model to use for the evaluation. - # - # @param name [String] The name of the grader. - # # @param pass_threshold [Float] The threshold for the score. - # - # @param range [Array] The range of the score. Defaults to `[0, 1]`. - # - # @param sampling_params [Object] The sampling parameters for the model. - # - # @param type [Symbol, :score_model] The object type, which is always `score_model`. - - class Input < OpenAI::Internal::Type::BaseModel - # @!attribute content - # Text inputs to the model - can contain template strings. - # - # @return [String, OpenAI::Responses::ResponseInputText, OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Content::OutputText] - required :content, - union: -> { OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Content } - - # @!attribute role - # The role of the message input. One of `user`, `assistant`, `system`, or - # `developer`. - # - # @return [Symbol, OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Role] - required :role, enum: -> { OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Role } - - # @!attribute type - # The type of the message input. Always `message`. - # - # @return [Symbol, OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Type, nil] - optional :type, enum: -> { OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Type } - - # @!method initialize(content:, role:, type: nil) - # Some parameter documentations has been truncated, see - # {OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input} for - # more details. - # - # A message input to the model with a role indicating instruction following - # hierarchy. Instructions given with the `developer` or `system` role take - # precedence over instructions given with the `user` role. Messages with the - # `assistant` role are presumed to have been generated by the model in previous - # interactions. - # - # @param content [String, OpenAI::Responses::ResponseInputText, OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Content::OutputText] Text inputs to the model - can contain template strings. - # - # @param role [Symbol, OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Role] The role of the message input. One of `user`, `assistant`, `system`, or - # - # @param type [Symbol, OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Type] The type of the message input. Always `message`. - - # Text inputs to the model - can contain template strings. - # - # @see OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input#content - module Content - extend OpenAI::Internal::Type::Union - - # A text input to the model. - variant String - - # A text input to the model. - variant -> { OpenAI::Responses::ResponseInputText } - - # A text output from the model. - variant -> { OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Content::OutputText } - - class OutputText < OpenAI::Internal::Type::BaseModel - # @!attribute text - # The text output from the model. - # - # @return [String] - required :text, String - - # @!attribute type - # The type of the output text. Always `output_text`. - # - # @return [Symbol, :output_text] - required :type, const: :output_text - - # @!method initialize(text:, type: :output_text) - # Some parameter documentations has been truncated, see - # {OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Content::OutputText} - # for more details. - # - # A text output from the model. - # - # @param text [String] The text output from the model. - # - # @param type [Symbol, :output_text] The type of the output text. Always `output_text`. - end - - # @!method self.variants - # @return [Array(String, OpenAI::Responses::ResponseInputText, OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Content::OutputText)] - end - - # The role of the message input. One of `user`, `assistant`, `system`, or - # `developer`. - # - # @see OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input#role - module Role - extend OpenAI::Internal::Type::Enum - - USER = :user - ASSISTANT = :assistant - SYSTEM = :system - DEVELOPER = :developer - - # @!method self.values - # @return [Array] - end - - # The type of the message input. Always `message`. - # - # @see OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input#type - module Type - extend OpenAI::Internal::Type::Enum - - MESSAGE = :message - - # @!method self.values - # @return [Array] - end - end end # @!method self.variants - # @return [Array(OpenAI::EvalLabelModelGrader, OpenAI::EvalStringCheckGrader, OpenAI::EvalTextSimilarityGrader, OpenAI::Models::EvalUpdateResponse::TestingCriterion::Python, OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel)] + # @return [Array(OpenAI::Graders::LabelModelGrader, OpenAI::Graders::StringCheckGrader, OpenAI::Models::EvalUpdateResponse::TestingCriterion::EvalGraderTextSimilarity, OpenAI::Models::EvalUpdateResponse::TestingCriterion::EvalGraderPython, OpenAI::Models::EvalUpdateResponse::TestingCriterion::EvalGraderScoreModel)] end end end diff --git a/lib/openai/models/fine_tuning/alpha/grader_run_params.rb b/lib/openai/models/fine_tuning/alpha/grader_run_params.rb new file mode 100644 index 00000000..921ece7c --- /dev/null +++ b/lib/openai/models/fine_tuning/alpha/grader_run_params.rb @@ -0,0 +1,89 @@ +# frozen_string_literal: true + +module OpenAI + module Models + module FineTuning + module Alpha + # @see OpenAI::Resources::FineTuning::Alpha::Graders#run + class GraderRunParams < OpenAI::Internal::Type::BaseModel + extend OpenAI::Internal::Type::RequestParameters::Converter + include OpenAI::Internal::Type::RequestParameters + + # @!attribute grader + # The grader used for the fine-tuning job. + # + # @return [OpenAI::Graders::StringCheckGrader, OpenAI::Graders::TextSimilarityGrader, OpenAI::Graders::PythonGrader, OpenAI::Graders::ScoreModelGrader, OpenAI::Graders::MultiGrader] + required :grader, union: -> { OpenAI::FineTuning::Alpha::GraderRunParams::Grader } + + # @!attribute model_sample + # The model sample to be evaluated. + # + # @return [String] + required :model_sample, String + + # @!attribute reference_answer + # The reference answer for the evaluation. + # + # @return [String, Object, Array, Float] + required :reference_answer, + union: -> { + OpenAI::FineTuning::Alpha::GraderRunParams::ReferenceAnswer + } + + # @!method initialize(grader:, model_sample:, reference_answer:, request_options: {}) + # @param grader [OpenAI::Graders::StringCheckGrader, OpenAI::Graders::TextSimilarityGrader, OpenAI::Graders::PythonGrader, OpenAI::Graders::ScoreModelGrader, OpenAI::Graders::MultiGrader] The grader used for the fine-tuning job. + # + # @param model_sample [String] The model sample to be evaluated. + # + # @param reference_answer [String, Object, Array, Float] The reference answer for the evaluation. + # + # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] + + # The grader used for the fine-tuning job. + module Grader + extend OpenAI::Internal::Type::Union + + discriminator :type + + # A StringCheckGrader object that performs a string comparison between input and reference using a specified operation. + variant :string_check, -> { OpenAI::Graders::StringCheckGrader } + + # A TextSimilarityGrader object which grades text based on similarity metrics. + variant :text_similarity, -> { OpenAI::Graders::TextSimilarityGrader } + + # A PythonGrader object that runs a python script on the input. + variant :python, -> { OpenAI::Graders::PythonGrader } + + # A ScoreModelGrader object that uses a model to assign a score to the input. + variant :score_model, -> { OpenAI::Graders::ScoreModelGrader } + + # A MultiGrader object combines the output of multiple graders to produce a single score. + variant :multi, -> { OpenAI::Graders::MultiGrader } + + # @!method self.variants + # @return [Array(OpenAI::Graders::StringCheckGrader, OpenAI::Graders::TextSimilarityGrader, OpenAI::Graders::PythonGrader, OpenAI::Graders::ScoreModelGrader, OpenAI::Graders::MultiGrader)] + end + + # The reference answer for the evaluation. + module ReferenceAnswer + extend OpenAI::Internal::Type::Union + + variant String + + variant OpenAI::Internal::Type::Unknown + + variant -> { OpenAI::FineTuning::Alpha::GraderRunParams::ReferenceAnswer::UnionMember2Array } + + variant Float + + # @!method self.variants + # @return [Array(String, Object, Array, Float)] + + # @type [OpenAI::Internal::Type::Converter] + UnionMember2Array = OpenAI::Internal::Type::ArrayOf[OpenAI::Internal::Type::Unknown] + end + end + end + end + end +end diff --git a/lib/openai/models/fine_tuning/alpha/grader_run_response.rb b/lib/openai/models/fine_tuning/alpha/grader_run_response.rb new file mode 100644 index 00000000..2b6bdaff --- /dev/null +++ b/lib/openai/models/fine_tuning/alpha/grader_run_response.rb @@ -0,0 +1,175 @@ +# frozen_string_literal: true + +module OpenAI + module Models + module FineTuning + module Alpha + # @see OpenAI::Resources::FineTuning::Alpha::Graders#run + class GraderRunResponse < OpenAI::Internal::Type::BaseModel + # @!attribute metadata + # + # @return [OpenAI::Models::FineTuning::Alpha::GraderRunResponse::Metadata] + required :metadata, -> { OpenAI::Models::FineTuning::Alpha::GraderRunResponse::Metadata } + + # @!attribute model_grader_token_usage_per_model + # + # @return [Hash{Symbol=>Object}] + required :model_grader_token_usage_per_model, + OpenAI::Internal::Type::HashOf[OpenAI::Internal::Type::Unknown] + + # @!attribute reward + # + # @return [Float] + required :reward, Float + + # @!attribute sub_rewards + # + # @return [Hash{Symbol=>Object}] + required :sub_rewards, OpenAI::Internal::Type::HashOf[OpenAI::Internal::Type::Unknown] + + # @!method initialize(metadata:, model_grader_token_usage_per_model:, reward:, sub_rewards:) + # @param metadata [OpenAI::Models::FineTuning::Alpha::GraderRunResponse::Metadata] + # @param model_grader_token_usage_per_model [Hash{Symbol=>Object}] + # @param reward [Float] + # @param sub_rewards [Hash{Symbol=>Object}] + + # @see OpenAI::Models::FineTuning::Alpha::GraderRunResponse#metadata + class Metadata < OpenAI::Internal::Type::BaseModel + # @!attribute errors + # + # @return [OpenAI::Models::FineTuning::Alpha::GraderRunResponse::Metadata::Errors] + required :errors, -> { OpenAI::Models::FineTuning::Alpha::GraderRunResponse::Metadata::Errors } + + # @!attribute execution_time + # + # @return [Float] + required :execution_time, Float + + # @!attribute name + # + # @return [String] + required :name, String + + # @!attribute sampled_model_name + # + # @return [String, nil] + required :sampled_model_name, String, nil?: true + + # @!attribute scores + # + # @return [Hash{Symbol=>Object}] + required :scores, OpenAI::Internal::Type::HashOf[OpenAI::Internal::Type::Unknown] + + # @!attribute token_usage + # + # @return [Integer, nil] + required :token_usage, Integer, nil?: true + + # @!attribute type + # + # @return [String] + required :type, String + + # @!method initialize(errors:, execution_time:, name:, sampled_model_name:, scores:, token_usage:, type:) + # @param errors [OpenAI::Models::FineTuning::Alpha::GraderRunResponse::Metadata::Errors] + # @param execution_time [Float] + # @param name [String] + # @param sampled_model_name [String, nil] + # @param scores [Hash{Symbol=>Object}] + # @param token_usage [Integer, nil] + # @param type [String] + + # @see OpenAI::Models::FineTuning::Alpha::GraderRunResponse::Metadata#errors + class Errors < OpenAI::Internal::Type::BaseModel + # @!attribute formula_parse_error + # + # @return [Boolean] + required :formula_parse_error, OpenAI::Internal::Type::Boolean + + # @!attribute invalid_variable_error + # + # @return [Boolean] + required :invalid_variable_error, OpenAI::Internal::Type::Boolean + + # @!attribute model_grader_parse_error + # + # @return [Boolean] + required :model_grader_parse_error, OpenAI::Internal::Type::Boolean + + # @!attribute model_grader_refusal_error + # + # @return [Boolean] + required :model_grader_refusal_error, OpenAI::Internal::Type::Boolean + + # @!attribute model_grader_server_error + # + # @return [Boolean] + required :model_grader_server_error, OpenAI::Internal::Type::Boolean + + # @!attribute model_grader_server_error_details + # + # @return [String, nil] + required :model_grader_server_error_details, String, nil?: true + + # @!attribute other_error + # + # @return [Boolean] + required :other_error, OpenAI::Internal::Type::Boolean + + # @!attribute python_grader_runtime_error + # + # @return [Boolean] + required :python_grader_runtime_error, OpenAI::Internal::Type::Boolean + + # @!attribute python_grader_runtime_error_details + # + # @return [String, nil] + required :python_grader_runtime_error_details, String, nil?: true + + # @!attribute python_grader_server_error + # + # @return [Boolean] + required :python_grader_server_error, OpenAI::Internal::Type::Boolean + + # @!attribute python_grader_server_error_type + # + # @return [String, nil] + required :python_grader_server_error_type, String, nil?: true + + # @!attribute sample_parse_error + # + # @return [Boolean] + required :sample_parse_error, OpenAI::Internal::Type::Boolean + + # @!attribute truncated_observation_error + # + # @return [Boolean] + required :truncated_observation_error, OpenAI::Internal::Type::Boolean + + # @!attribute unresponsive_reward_error + # + # @return [Boolean] + required :unresponsive_reward_error, OpenAI::Internal::Type::Boolean + + # @!method initialize(formula_parse_error:, invalid_variable_error:, model_grader_parse_error:, model_grader_refusal_error:, model_grader_server_error:, model_grader_server_error_details:, other_error:, python_grader_runtime_error:, python_grader_runtime_error_details:, python_grader_server_error:, python_grader_server_error_type:, sample_parse_error:, truncated_observation_error:, unresponsive_reward_error:) + # @param formula_parse_error [Boolean] + # @param invalid_variable_error [Boolean] + # @param model_grader_parse_error [Boolean] + # @param model_grader_refusal_error [Boolean] + # @param model_grader_server_error [Boolean] + # @param model_grader_server_error_details [String, nil] + # @param other_error [Boolean] + # @param python_grader_runtime_error [Boolean] + # @param python_grader_runtime_error_details [String, nil] + # @param python_grader_server_error [Boolean] + # @param python_grader_server_error_type [String, nil] + # @param sample_parse_error [Boolean] + # @param truncated_observation_error [Boolean] + # @param unresponsive_reward_error [Boolean] + end + end + end + end + end + end +end diff --git a/lib/openai/models/fine_tuning/alpha/grader_validate_params.rb b/lib/openai/models/fine_tuning/alpha/grader_validate_params.rb new file mode 100644 index 00000000..a252fb6a --- /dev/null +++ b/lib/openai/models/fine_tuning/alpha/grader_validate_params.rb @@ -0,0 +1,49 @@ +# frozen_string_literal: true + +module OpenAI + module Models + module FineTuning + module Alpha + # @see OpenAI::Resources::FineTuning::Alpha::Graders#validate + class GraderValidateParams < OpenAI::Internal::Type::BaseModel + extend OpenAI::Internal::Type::RequestParameters::Converter + include OpenAI::Internal::Type::RequestParameters + + # @!attribute grader + # The grader used for the fine-tuning job. + # + # @return [OpenAI::Graders::StringCheckGrader, OpenAI::Graders::TextSimilarityGrader, OpenAI::Graders::PythonGrader, OpenAI::Graders::ScoreModelGrader, OpenAI::Graders::MultiGrader] + required :grader, union: -> { OpenAI::FineTuning::Alpha::GraderValidateParams::Grader } + + # @!method initialize(grader:, request_options: {}) + # @param grader [OpenAI::Graders::StringCheckGrader, OpenAI::Graders::TextSimilarityGrader, OpenAI::Graders::PythonGrader, OpenAI::Graders::ScoreModelGrader, OpenAI::Graders::MultiGrader] The grader used for the fine-tuning job. + # + # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] + + # The grader used for the fine-tuning job. + module Grader + extend OpenAI::Internal::Type::Union + + # A StringCheckGrader object that performs a string comparison between input and reference using a specified operation. + variant -> { OpenAI::Graders::StringCheckGrader } + + # A TextSimilarityGrader object which grades text based on similarity metrics. + variant -> { OpenAI::Graders::TextSimilarityGrader } + + # A PythonGrader object that runs a python script on the input. + variant -> { OpenAI::Graders::PythonGrader } + + # A ScoreModelGrader object that uses a model to assign a score to the input. + variant -> { OpenAI::Graders::ScoreModelGrader } + + # A MultiGrader object combines the output of multiple graders to produce a single score. + variant -> { OpenAI::Graders::MultiGrader } + + # @!method self.variants + # @return [Array(OpenAI::Graders::StringCheckGrader, OpenAI::Graders::TextSimilarityGrader, OpenAI::Graders::PythonGrader, OpenAI::Graders::ScoreModelGrader, OpenAI::Graders::MultiGrader)] + end + end + end + end + end +end diff --git a/lib/openai/models/fine_tuning/alpha/grader_validate_response.rb b/lib/openai/models/fine_tuning/alpha/grader_validate_response.rb new file mode 100644 index 00000000..a89553ee --- /dev/null +++ b/lib/openai/models/fine_tuning/alpha/grader_validate_response.rb @@ -0,0 +1,46 @@ +# frozen_string_literal: true + +module OpenAI + module Models + module FineTuning + module Alpha + # @see OpenAI::Resources::FineTuning::Alpha::Graders#validate + class GraderValidateResponse < OpenAI::Internal::Type::BaseModel + # @!attribute grader + # The grader used for the fine-tuning job. + # + # @return [OpenAI::Graders::StringCheckGrader, OpenAI::Graders::TextSimilarityGrader, OpenAI::Graders::PythonGrader, OpenAI::Graders::ScoreModelGrader, OpenAI::Graders::MultiGrader, nil] + optional :grader, union: -> { OpenAI::Models::FineTuning::Alpha::GraderValidateResponse::Grader } + + # @!method initialize(grader: nil) + # @param grader [OpenAI::Graders::StringCheckGrader, OpenAI::Graders::TextSimilarityGrader, OpenAI::Graders::PythonGrader, OpenAI::Graders::ScoreModelGrader, OpenAI::Graders::MultiGrader] The grader used for the fine-tuning job. + + # The grader used for the fine-tuning job. + # + # @see OpenAI::Models::FineTuning::Alpha::GraderValidateResponse#grader + module Grader + extend OpenAI::Internal::Type::Union + + # A StringCheckGrader object that performs a string comparison between input and reference using a specified operation. + variant -> { OpenAI::Graders::StringCheckGrader } + + # A TextSimilarityGrader object which grades text based on similarity metrics. + variant -> { OpenAI::Graders::TextSimilarityGrader } + + # A PythonGrader object that runs a python script on the input. + variant -> { OpenAI::Graders::PythonGrader } + + # A ScoreModelGrader object that uses a model to assign a score to the input. + variant -> { OpenAI::Graders::ScoreModelGrader } + + # A MultiGrader object combines the output of multiple graders to produce a single score. + variant -> { OpenAI::Graders::MultiGrader } + + # @!method self.variants + # @return [Array(OpenAI::Graders::StringCheckGrader, OpenAI::Graders::TextSimilarityGrader, OpenAI::Graders::PythonGrader, OpenAI::Graders::ScoreModelGrader, OpenAI::Graders::MultiGrader)] + end + end + end + end + end +end diff --git a/lib/openai/models/fine_tuning/dpo_hyperparameters.rb b/lib/openai/models/fine_tuning/dpo_hyperparameters.rb new file mode 100644 index 00000000..b57d2245 --- /dev/null +++ b/lib/openai/models/fine_tuning/dpo_hyperparameters.rb @@ -0,0 +1,112 @@ +# frozen_string_literal: true + +module OpenAI + module Models + module FineTuning + class DpoHyperparameters < OpenAI::Internal::Type::BaseModel + # @!attribute batch_size + # Number of examples in each batch. A larger batch size means that model + # parameters are updated less frequently, but with lower variance. + # + # @return [Symbol, :auto, Integer, nil] + optional :batch_size, union: -> { OpenAI::FineTuning::DpoHyperparameters::BatchSize } + + # @!attribute beta + # The beta value for the DPO method. A higher beta value will increase the weight + # of the penalty between the policy and reference model. + # + # @return [Symbol, :auto, Float, nil] + optional :beta, union: -> { OpenAI::FineTuning::DpoHyperparameters::Beta } + + # @!attribute learning_rate_multiplier + # Scaling factor for the learning rate. A smaller learning rate may be useful to + # avoid overfitting. + # + # @return [Symbol, :auto, Float, nil] + optional :learning_rate_multiplier, + union: -> { OpenAI::FineTuning::DpoHyperparameters::LearningRateMultiplier } + + # @!attribute n_epochs + # The number of epochs to train the model for. An epoch refers to one full cycle + # through the training dataset. + # + # @return [Symbol, :auto, Integer, nil] + optional :n_epochs, union: -> { OpenAI::FineTuning::DpoHyperparameters::NEpochs } + + # @!method initialize(batch_size: nil, beta: nil, learning_rate_multiplier: nil, n_epochs: nil) + # Some parameter documentations has been truncated, see + # {OpenAI::FineTuning::DpoHyperparameters} for more details. + # + # The hyperparameters used for the DPO fine-tuning job. + # + # @param batch_size [Symbol, :auto, Integer] Number of examples in each batch. A larger batch size means that model parameter + # + # @param beta [Symbol, :auto, Float] The beta value for the DPO method. A higher beta value will increase the weight + # + # @param learning_rate_multiplier [Symbol, :auto, Float] Scaling factor for the learning rate. A smaller learning rate may be useful to a + # + # @param n_epochs [Symbol, :auto, Integer] The number of epochs to train the model for. An epoch refers to one full cycle t + + # Number of examples in each batch. A larger batch size means that model + # parameters are updated less frequently, but with lower variance. + # + # @see OpenAI::FineTuning::DpoHyperparameters#batch_size + module BatchSize + extend OpenAI::Internal::Type::Union + + variant const: :auto + + variant Integer + + # @!method self.variants + # @return [Array(Symbol, :auto, Integer)] + end + + # The beta value for the DPO method. A higher beta value will increase the weight + # of the penalty between the policy and reference model. + # + # @see OpenAI::FineTuning::DpoHyperparameters#beta + module Beta + extend OpenAI::Internal::Type::Union + + variant const: :auto + + variant Float + + # @!method self.variants + # @return [Array(Symbol, :auto, Float)] + end + + # Scaling factor for the learning rate. A smaller learning rate may be useful to + # avoid overfitting. + # + # @see OpenAI::FineTuning::DpoHyperparameters#learning_rate_multiplier + module LearningRateMultiplier + extend OpenAI::Internal::Type::Union + + variant const: :auto + + variant Float + + # @!method self.variants + # @return [Array(Symbol, :auto, Float)] + end + + # The number of epochs to train the model for. An epoch refers to one full cycle + # through the training dataset. + # + # @see OpenAI::FineTuning::DpoHyperparameters#n_epochs + module NEpochs + extend OpenAI::Internal::Type::Union + + variant const: :auto + + variant Integer + + # @!method self.variants + # @return [Array(Symbol, :auto, Integer)] + end + end + end + end +end diff --git a/lib/openai/models/fine_tuning/dpo_method.rb b/lib/openai/models/fine_tuning/dpo_method.rb new file mode 100644 index 00000000..023cf72f --- /dev/null +++ b/lib/openai/models/fine_tuning/dpo_method.rb @@ -0,0 +1,20 @@ +# frozen_string_literal: true + +module OpenAI + module Models + module FineTuning + class DpoMethod < OpenAI::Internal::Type::BaseModel + # @!attribute hyperparameters + # The hyperparameters used for the DPO fine-tuning job. + # + # @return [OpenAI::FineTuning::DpoHyperparameters, nil] + optional :hyperparameters, -> { OpenAI::FineTuning::DpoHyperparameters } + + # @!method initialize(hyperparameters: nil) + # Configuration for the DPO fine-tuning method. + # + # @param hyperparameters [OpenAI::FineTuning::DpoHyperparameters] The hyperparameters used for the DPO fine-tuning job. + end + end + end +end diff --git a/lib/openai/models/fine_tuning/fine_tuning_job.rb b/lib/openai/models/fine_tuning/fine_tuning_job.rb index aafd3b38..aaf073d0 100644 --- a/lib/openai/models/fine_tuning/fine_tuning_job.rb +++ b/lib/openai/models/fine_tuning/fine_tuning_job.rb @@ -323,274 +323,42 @@ module Status # @see OpenAI::FineTuning::FineTuningJob#method_ class Method < OpenAI::Internal::Type::BaseModel + # @!attribute type + # The type of method. Is either `supervised`, `dpo`, or `reinforcement`. + # + # @return [Symbol, OpenAI::FineTuning::FineTuningJob::Method::Type] + required :type, enum: -> { OpenAI::FineTuning::FineTuningJob::Method::Type } + # @!attribute dpo # Configuration for the DPO fine-tuning method. # - # @return [OpenAI::FineTuning::FineTuningJob::Method::Dpo, nil] - optional :dpo, -> { OpenAI::FineTuning::FineTuningJob::Method::Dpo } + # @return [OpenAI::FineTuning::DpoMethod, nil] + optional :dpo, -> { OpenAI::FineTuning::DpoMethod } - # @!attribute supervised - # Configuration for the supervised fine-tuning method. + # @!attribute reinforcement + # Configuration for the reinforcement fine-tuning method. # - # @return [OpenAI::FineTuning::FineTuningJob::Method::Supervised, nil] - optional :supervised, -> { OpenAI::FineTuning::FineTuningJob::Method::Supervised } + # @return [OpenAI::FineTuning::ReinforcementMethod, nil] + optional :reinforcement, -> { OpenAI::FineTuning::ReinforcementMethod } - # @!attribute type - # The type of method. Is either `supervised` or `dpo`. + # @!attribute supervised + # Configuration for the supervised fine-tuning method. # - # @return [Symbol, OpenAI::FineTuning::FineTuningJob::Method::Type, nil] - optional :type, enum: -> { OpenAI::FineTuning::FineTuningJob::Method::Type } + # @return [OpenAI::FineTuning::SupervisedMethod, nil] + optional :supervised, -> { OpenAI::FineTuning::SupervisedMethod } - # @!method initialize(dpo: nil, supervised: nil, type: nil) + # @!method initialize(type:, dpo: nil, reinforcement: nil, supervised: nil) # The method used for fine-tuning. # - # @param dpo [OpenAI::FineTuning::FineTuningJob::Method::Dpo] Configuration for the DPO fine-tuning method. + # @param type [Symbol, OpenAI::FineTuning::FineTuningJob::Method::Type] The type of method. Is either `supervised`, `dpo`, or `reinforcement`. # - # @param supervised [OpenAI::FineTuning::FineTuningJob::Method::Supervised] Configuration for the supervised fine-tuning method. + # @param dpo [OpenAI::FineTuning::DpoMethod] Configuration for the DPO fine-tuning method. # - # @param type [Symbol, OpenAI::FineTuning::FineTuningJob::Method::Type] The type of method. Is either `supervised` or `dpo`. - - # @see OpenAI::FineTuning::FineTuningJob::Method#dpo - class Dpo < OpenAI::Internal::Type::BaseModel - # @!attribute hyperparameters - # The hyperparameters used for the fine-tuning job. - # - # @return [OpenAI::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters, nil] - optional :hyperparameters, -> { OpenAI::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters } - - # @!method initialize(hyperparameters: nil) - # Configuration for the DPO fine-tuning method. - # - # @param hyperparameters [OpenAI::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters] The hyperparameters used for the fine-tuning job. - - # @see OpenAI::FineTuning::FineTuningJob::Method::Dpo#hyperparameters - class Hyperparameters < OpenAI::Internal::Type::BaseModel - # @!attribute batch_size - # Number of examples in each batch. A larger batch size means that model - # parameters are updated less frequently, but with lower variance. - # - # @return [Symbol, :auto, Integer, nil] - optional :batch_size, - union: -> { - OpenAI::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters::BatchSize - } - - # @!attribute beta - # The beta value for the DPO method. A higher beta value will increase the weight - # of the penalty between the policy and reference model. - # - # @return [Symbol, :auto, Float, nil] - optional :beta, - union: -> { - OpenAI::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters::Beta - } - - # @!attribute learning_rate_multiplier - # Scaling factor for the learning rate. A smaller learning rate may be useful to - # avoid overfitting. - # - # @return [Symbol, :auto, Float, nil] - optional :learning_rate_multiplier, - union: -> { - OpenAI::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters::LearningRateMultiplier - } - - # @!attribute n_epochs - # The number of epochs to train the model for. An epoch refers to one full cycle - # through the training dataset. - # - # @return [Symbol, :auto, Integer, nil] - optional :n_epochs, - union: -> { - OpenAI::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters::NEpochs - } - - # @!method initialize(batch_size: nil, beta: nil, learning_rate_multiplier: nil, n_epochs: nil) - # Some parameter documentations has been truncated, see - # {OpenAI::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters} for more - # details. - # - # The hyperparameters used for the fine-tuning job. - # - # @param batch_size [Symbol, :auto, Integer] Number of examples in each batch. A larger batch size means that model parameter - # - # @param beta [Symbol, :auto, Float] The beta value for the DPO method. A higher beta value will increase the weight - # - # @param learning_rate_multiplier [Symbol, :auto, Float] Scaling factor for the learning rate. A smaller learning rate may be useful to a - # - # @param n_epochs [Symbol, :auto, Integer] The number of epochs to train the model for. An epoch refers to one full cycle t - - # Number of examples in each batch. A larger batch size means that model - # parameters are updated less frequently, but with lower variance. - # - # @see OpenAI::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters#batch_size - module BatchSize - extend OpenAI::Internal::Type::Union - - variant const: :auto - - variant Integer - - # @!method self.variants - # @return [Array(Symbol, :auto, Integer)] - end - - # The beta value for the DPO method. A higher beta value will increase the weight - # of the penalty between the policy and reference model. - # - # @see OpenAI::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters#beta - module Beta - extend OpenAI::Internal::Type::Union - - variant const: :auto - - variant Float - - # @!method self.variants - # @return [Array(Symbol, :auto, Float)] - end - - # Scaling factor for the learning rate. A smaller learning rate may be useful to - # avoid overfitting. - # - # @see OpenAI::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters#learning_rate_multiplier - module LearningRateMultiplier - extend OpenAI::Internal::Type::Union - - variant const: :auto - - variant Float - - # @!method self.variants - # @return [Array(Symbol, :auto, Float)] - end - - # The number of epochs to train the model for. An epoch refers to one full cycle - # through the training dataset. - # - # @see OpenAI::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters#n_epochs - module NEpochs - extend OpenAI::Internal::Type::Union - - variant const: :auto - - variant Integer - - # @!method self.variants - # @return [Array(Symbol, :auto, Integer)] - end - end - end - - # @see OpenAI::FineTuning::FineTuningJob::Method#supervised - class Supervised < OpenAI::Internal::Type::BaseModel - # @!attribute hyperparameters - # The hyperparameters used for the fine-tuning job. - # - # @return [OpenAI::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters, nil] - optional :hyperparameters, - -> { - OpenAI::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters - } - - # @!method initialize(hyperparameters: nil) - # Configuration for the supervised fine-tuning method. - # - # @param hyperparameters [OpenAI::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters] The hyperparameters used for the fine-tuning job. - - # @see OpenAI::FineTuning::FineTuningJob::Method::Supervised#hyperparameters - class Hyperparameters < OpenAI::Internal::Type::BaseModel - # @!attribute batch_size - # Number of examples in each batch. A larger batch size means that model - # parameters are updated less frequently, but with lower variance. - # - # @return [Symbol, :auto, Integer, nil] - optional :batch_size, - union: -> { - OpenAI::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters::BatchSize - } - - # @!attribute learning_rate_multiplier - # Scaling factor for the learning rate. A smaller learning rate may be useful to - # avoid overfitting. - # - # @return [Symbol, :auto, Float, nil] - optional :learning_rate_multiplier, - union: -> { - OpenAI::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters::LearningRateMultiplier - } - - # @!attribute n_epochs - # The number of epochs to train the model for. An epoch refers to one full cycle - # through the training dataset. - # - # @return [Symbol, :auto, Integer, nil] - optional :n_epochs, - union: -> { - OpenAI::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters::NEpochs - } - - # @!method initialize(batch_size: nil, learning_rate_multiplier: nil, n_epochs: nil) - # Some parameter documentations has been truncated, see - # {OpenAI::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters} for - # more details. - # - # The hyperparameters used for the fine-tuning job. - # - # @param batch_size [Symbol, :auto, Integer] Number of examples in each batch. A larger batch size means that model parameter - # - # @param learning_rate_multiplier [Symbol, :auto, Float] Scaling factor for the learning rate. A smaller learning rate may be useful to a - # - # @param n_epochs [Symbol, :auto, Integer] The number of epochs to train the model for. An epoch refers to one full cycle t - - # Number of examples in each batch. A larger batch size means that model - # parameters are updated less frequently, but with lower variance. - # - # @see OpenAI::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters#batch_size - module BatchSize - extend OpenAI::Internal::Type::Union - - variant const: :auto - - variant Integer - - # @!method self.variants - # @return [Array(Symbol, :auto, Integer)] - end - - # Scaling factor for the learning rate. A smaller learning rate may be useful to - # avoid overfitting. - # - # @see OpenAI::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters#learning_rate_multiplier - module LearningRateMultiplier - extend OpenAI::Internal::Type::Union - - variant const: :auto - - variant Float - - # @!method self.variants - # @return [Array(Symbol, :auto, Float)] - end - - # The number of epochs to train the model for. An epoch refers to one full cycle - # through the training dataset. - # - # @see OpenAI::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters#n_epochs - module NEpochs - extend OpenAI::Internal::Type::Union - - variant const: :auto - - variant Integer - - # @!method self.variants - # @return [Array(Symbol, :auto, Integer)] - end - end - end + # @param reinforcement [OpenAI::FineTuning::ReinforcementMethod] Configuration for the reinforcement fine-tuning method. + # + # @param supervised [OpenAI::FineTuning::SupervisedMethod] Configuration for the supervised fine-tuning method. - # The type of method. Is either `supervised` or `dpo`. + # The type of method. Is either `supervised`, `dpo`, or `reinforcement`. # # @see OpenAI::FineTuning::FineTuningJob::Method#type module Type @@ -598,6 +366,7 @@ module Type SUPERVISED = :supervised DPO = :dpo + REINFORCEMENT = :reinforcement # @!method self.values # @return [Array] diff --git a/lib/openai/models/fine_tuning/job_create_params.rb b/lib/openai/models/fine_tuning/job_create_params.rb index c86b0f69..de31c8f6 100644 --- a/lib/openai/models/fine_tuning/job_create_params.rb +++ b/lib/openai/models/fine_tuning/job_create_params.rb @@ -317,277 +317,42 @@ class Wandb < OpenAI::Internal::Type::BaseModel end class Method < OpenAI::Internal::Type::BaseModel + # @!attribute type + # The type of method. Is either `supervised`, `dpo`, or `reinforcement`. + # + # @return [Symbol, OpenAI::FineTuning::JobCreateParams::Method::Type] + required :type, enum: -> { OpenAI::FineTuning::JobCreateParams::Method::Type } + # @!attribute dpo # Configuration for the DPO fine-tuning method. # - # @return [OpenAI::FineTuning::JobCreateParams::Method::Dpo, nil] - optional :dpo, -> { OpenAI::FineTuning::JobCreateParams::Method::Dpo } + # @return [OpenAI::FineTuning::DpoMethod, nil] + optional :dpo, -> { OpenAI::FineTuning::DpoMethod } - # @!attribute supervised - # Configuration for the supervised fine-tuning method. + # @!attribute reinforcement + # Configuration for the reinforcement fine-tuning method. # - # @return [OpenAI::FineTuning::JobCreateParams::Method::Supervised, nil] - optional :supervised, -> { OpenAI::FineTuning::JobCreateParams::Method::Supervised } + # @return [OpenAI::FineTuning::ReinforcementMethod, nil] + optional :reinforcement, -> { OpenAI::FineTuning::ReinforcementMethod } - # @!attribute type - # The type of method. Is either `supervised` or `dpo`. + # @!attribute supervised + # Configuration for the supervised fine-tuning method. # - # @return [Symbol, OpenAI::FineTuning::JobCreateParams::Method::Type, nil] - optional :type, enum: -> { OpenAI::FineTuning::JobCreateParams::Method::Type } + # @return [OpenAI::FineTuning::SupervisedMethod, nil] + optional :supervised, -> { OpenAI::FineTuning::SupervisedMethod } - # @!method initialize(dpo: nil, supervised: nil, type: nil) + # @!method initialize(type:, dpo: nil, reinforcement: nil, supervised: nil) # The method used for fine-tuning. # - # @param dpo [OpenAI::FineTuning::JobCreateParams::Method::Dpo] Configuration for the DPO fine-tuning method. + # @param type [Symbol, OpenAI::FineTuning::JobCreateParams::Method::Type] The type of method. Is either `supervised`, `dpo`, or `reinforcement`. # - # @param supervised [OpenAI::FineTuning::JobCreateParams::Method::Supervised] Configuration for the supervised fine-tuning method. + # @param dpo [OpenAI::FineTuning::DpoMethod] Configuration for the DPO fine-tuning method. # - # @param type [Symbol, OpenAI::FineTuning::JobCreateParams::Method::Type] The type of method. Is either `supervised` or `dpo`. - - # @see OpenAI::FineTuning::JobCreateParams::Method#dpo - class Dpo < OpenAI::Internal::Type::BaseModel - # @!attribute hyperparameters - # The hyperparameters used for the fine-tuning job. - # - # @return [OpenAI::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters, nil] - optional :hyperparameters, - -> { - OpenAI::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters - } - - # @!method initialize(hyperparameters: nil) - # Configuration for the DPO fine-tuning method. - # - # @param hyperparameters [OpenAI::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters] The hyperparameters used for the fine-tuning job. - - # @see OpenAI::FineTuning::JobCreateParams::Method::Dpo#hyperparameters - class Hyperparameters < OpenAI::Internal::Type::BaseModel - # @!attribute batch_size - # Number of examples in each batch. A larger batch size means that model - # parameters are updated less frequently, but with lower variance. - # - # @return [Symbol, :auto, Integer, nil] - optional :batch_size, - union: -> { - OpenAI::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters::BatchSize - } - - # @!attribute beta - # The beta value for the DPO method. A higher beta value will increase the weight - # of the penalty between the policy and reference model. - # - # @return [Symbol, :auto, Float, nil] - optional :beta, - union: -> { - OpenAI::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters::Beta - } - - # @!attribute learning_rate_multiplier - # Scaling factor for the learning rate. A smaller learning rate may be useful to - # avoid overfitting. - # - # @return [Symbol, :auto, Float, nil] - optional :learning_rate_multiplier, - union: -> { - OpenAI::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters::LearningRateMultiplier - } - - # @!attribute n_epochs - # The number of epochs to train the model for. An epoch refers to one full cycle - # through the training dataset. - # - # @return [Symbol, :auto, Integer, nil] - optional :n_epochs, - union: -> { - OpenAI::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters::NEpochs - } - - # @!method initialize(batch_size: nil, beta: nil, learning_rate_multiplier: nil, n_epochs: nil) - # Some parameter documentations has been truncated, see - # {OpenAI::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters} for more - # details. - # - # The hyperparameters used for the fine-tuning job. - # - # @param batch_size [Symbol, :auto, Integer] Number of examples in each batch. A larger batch size means that model parameter - # - # @param beta [Symbol, :auto, Float] The beta value for the DPO method. A higher beta value will increase the weight - # - # @param learning_rate_multiplier [Symbol, :auto, Float] Scaling factor for the learning rate. A smaller learning rate may be useful to a - # - # @param n_epochs [Symbol, :auto, Integer] The number of epochs to train the model for. An epoch refers to one full cycle t - - # Number of examples in each batch. A larger batch size means that model - # parameters are updated less frequently, but with lower variance. - # - # @see OpenAI::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters#batch_size - module BatchSize - extend OpenAI::Internal::Type::Union - - variant const: :auto - - variant Integer - - # @!method self.variants - # @return [Array(Symbol, :auto, Integer)] - end - - # The beta value for the DPO method. A higher beta value will increase the weight - # of the penalty between the policy and reference model. - # - # @see OpenAI::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters#beta - module Beta - extend OpenAI::Internal::Type::Union - - variant const: :auto - - variant Float - - # @!method self.variants - # @return [Array(Symbol, :auto, Float)] - end - - # Scaling factor for the learning rate. A smaller learning rate may be useful to - # avoid overfitting. - # - # @see OpenAI::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters#learning_rate_multiplier - module LearningRateMultiplier - extend OpenAI::Internal::Type::Union - - variant const: :auto - - variant Float - - # @!method self.variants - # @return [Array(Symbol, :auto, Float)] - end - - # The number of epochs to train the model for. An epoch refers to one full cycle - # through the training dataset. - # - # @see OpenAI::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters#n_epochs - module NEpochs - extend OpenAI::Internal::Type::Union - - variant const: :auto - - variant Integer - - # @!method self.variants - # @return [Array(Symbol, :auto, Integer)] - end - end - end - - # @see OpenAI::FineTuning::JobCreateParams::Method#supervised - class Supervised < OpenAI::Internal::Type::BaseModel - # @!attribute hyperparameters - # The hyperparameters used for the fine-tuning job. - # - # @return [OpenAI::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters, nil] - optional :hyperparameters, - -> { - OpenAI::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters - } - - # @!method initialize(hyperparameters: nil) - # Configuration for the supervised fine-tuning method. - # - # @param hyperparameters [OpenAI::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters] The hyperparameters used for the fine-tuning job. - - # @see OpenAI::FineTuning::JobCreateParams::Method::Supervised#hyperparameters - class Hyperparameters < OpenAI::Internal::Type::BaseModel - # @!attribute batch_size - # Number of examples in each batch. A larger batch size means that model - # parameters are updated less frequently, but with lower variance. - # - # @return [Symbol, :auto, Integer, nil] - optional :batch_size, - union: -> { - OpenAI::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters::BatchSize - } - - # @!attribute learning_rate_multiplier - # Scaling factor for the learning rate. A smaller learning rate may be useful to - # avoid overfitting. - # - # @return [Symbol, :auto, Float, nil] - optional :learning_rate_multiplier, - union: -> { - OpenAI::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters::LearningRateMultiplier - } - - # @!attribute n_epochs - # The number of epochs to train the model for. An epoch refers to one full cycle - # through the training dataset. - # - # @return [Symbol, :auto, Integer, nil] - optional :n_epochs, - union: -> { - OpenAI::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters::NEpochs - } - - # @!method initialize(batch_size: nil, learning_rate_multiplier: nil, n_epochs: nil) - # Some parameter documentations has been truncated, see - # {OpenAI::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters} for - # more details. - # - # The hyperparameters used for the fine-tuning job. - # - # @param batch_size [Symbol, :auto, Integer] Number of examples in each batch. A larger batch size means that model parameter - # - # @param learning_rate_multiplier [Symbol, :auto, Float] Scaling factor for the learning rate. A smaller learning rate may be useful to a - # - # @param n_epochs [Symbol, :auto, Integer] The number of epochs to train the model for. An epoch refers to one full cycle t - - # Number of examples in each batch. A larger batch size means that model - # parameters are updated less frequently, but with lower variance. - # - # @see OpenAI::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters#batch_size - module BatchSize - extend OpenAI::Internal::Type::Union - - variant const: :auto - - variant Integer - - # @!method self.variants - # @return [Array(Symbol, :auto, Integer)] - end - - # Scaling factor for the learning rate. A smaller learning rate may be useful to - # avoid overfitting. - # - # @see OpenAI::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters#learning_rate_multiplier - module LearningRateMultiplier - extend OpenAI::Internal::Type::Union - - variant const: :auto - - variant Float - - # @!method self.variants - # @return [Array(Symbol, :auto, Float)] - end - - # The number of epochs to train the model for. An epoch refers to one full cycle - # through the training dataset. - # - # @see OpenAI::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters#n_epochs - module NEpochs - extend OpenAI::Internal::Type::Union - - variant const: :auto - - variant Integer - - # @!method self.variants - # @return [Array(Symbol, :auto, Integer)] - end - end - end + # @param reinforcement [OpenAI::FineTuning::ReinforcementMethod] Configuration for the reinforcement fine-tuning method. + # + # @param supervised [OpenAI::FineTuning::SupervisedMethod] Configuration for the supervised fine-tuning method. - # The type of method. Is either `supervised` or `dpo`. + # The type of method. Is either `supervised`, `dpo`, or `reinforcement`. # # @see OpenAI::FineTuning::JobCreateParams::Method#type module Type @@ -595,6 +360,7 @@ module Type SUPERVISED = :supervised DPO = :dpo + REINFORCEMENT = :reinforcement # @!method self.values # @return [Array] diff --git a/lib/openai/models/fine_tuning/job_pause_params.rb b/lib/openai/models/fine_tuning/job_pause_params.rb new file mode 100644 index 00000000..739a90da --- /dev/null +++ b/lib/openai/models/fine_tuning/job_pause_params.rb @@ -0,0 +1,16 @@ +# frozen_string_literal: true + +module OpenAI + module Models + module FineTuning + # @see OpenAI::Resources::FineTuning::Jobs#pause + class JobPauseParams < OpenAI::Internal::Type::BaseModel + extend OpenAI::Internal::Type::RequestParameters::Converter + include OpenAI::Internal::Type::RequestParameters + + # @!method initialize(request_options: {}) + # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] + end + end + end +end diff --git a/lib/openai/models/fine_tuning/job_resume_params.rb b/lib/openai/models/fine_tuning/job_resume_params.rb new file mode 100644 index 00000000..97d4c317 --- /dev/null +++ b/lib/openai/models/fine_tuning/job_resume_params.rb @@ -0,0 +1,16 @@ +# frozen_string_literal: true + +module OpenAI + module Models + module FineTuning + # @see OpenAI::Resources::FineTuning::Jobs#resume + class JobResumeParams < OpenAI::Internal::Type::BaseModel + extend OpenAI::Internal::Type::RequestParameters::Converter + include OpenAI::Internal::Type::RequestParameters + + # @!method initialize(request_options: {}) + # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}] + end + end + end +end diff --git a/lib/openai/models/fine_tuning/reinforcement_hyperparameters.rb b/lib/openai/models/fine_tuning/reinforcement_hyperparameters.rb new file mode 100644 index 00000000..7df826e1 --- /dev/null +++ b/lib/openai/models/fine_tuning/reinforcement_hyperparameters.rb @@ -0,0 +1,181 @@ +# frozen_string_literal: true + +module OpenAI + module Models + module FineTuning + class ReinforcementHyperparameters < OpenAI::Internal::Type::BaseModel + # @!attribute batch_size + # Number of examples in each batch. A larger batch size means that model + # parameters are updated less frequently, but with lower variance. + # + # @return [Symbol, :auto, Integer, nil] + optional :batch_size, union: -> { OpenAI::FineTuning::ReinforcementHyperparameters::BatchSize } + + # @!attribute compute_multiplier + # Multiplier on amount of compute used for exploring search space during training. + # + # @return [Symbol, :auto, Float, nil] + optional :compute_multiplier, + union: -> { OpenAI::FineTuning::ReinforcementHyperparameters::ComputeMultiplier } + + # @!attribute eval_interval + # The number of training steps between evaluation runs. + # + # @return [Symbol, :auto, Integer, nil] + optional :eval_interval, union: -> { OpenAI::FineTuning::ReinforcementHyperparameters::EvalInterval } + + # @!attribute eval_samples + # Number of evaluation samples to generate per training step. + # + # @return [Symbol, :auto, Integer, nil] + optional :eval_samples, union: -> { OpenAI::FineTuning::ReinforcementHyperparameters::EvalSamples } + + # @!attribute learning_rate_multiplier + # Scaling factor for the learning rate. A smaller learning rate may be useful to + # avoid overfitting. + # + # @return [Symbol, :auto, Float, nil] + optional :learning_rate_multiplier, + union: -> { OpenAI::FineTuning::ReinforcementHyperparameters::LearningRateMultiplier } + + # @!attribute n_epochs + # The number of epochs to train the model for. An epoch refers to one full cycle + # through the training dataset. + # + # @return [Symbol, :auto, Integer, nil] + optional :n_epochs, union: -> { OpenAI::FineTuning::ReinforcementHyperparameters::NEpochs } + + # @!attribute reasoning_effort + # Level of reasoning effort. + # + # @return [Symbol, OpenAI::FineTuning::ReinforcementHyperparameters::ReasoningEffort, nil] + optional :reasoning_effort, + enum: -> { + OpenAI::FineTuning::ReinforcementHyperparameters::ReasoningEffort + } + + # @!method initialize(batch_size: nil, compute_multiplier: nil, eval_interval: nil, eval_samples: nil, learning_rate_multiplier: nil, n_epochs: nil, reasoning_effort: nil) + # Some parameter documentations has been truncated, see + # {OpenAI::FineTuning::ReinforcementHyperparameters} for more details. + # + # The hyperparameters used for the reinforcement fine-tuning job. + # + # @param batch_size [Symbol, :auto, Integer] Number of examples in each batch. A larger batch size means that model parameter + # + # @param compute_multiplier [Symbol, :auto, Float] Multiplier on amount of compute used for exploring search space during training. + # + # @param eval_interval [Symbol, :auto, Integer] The number of training steps between evaluation runs. + # + # @param eval_samples [Symbol, :auto, Integer] Number of evaluation samples to generate per training step. + # + # @param learning_rate_multiplier [Symbol, :auto, Float] Scaling factor for the learning rate. A smaller learning rate may be useful to a + # + # @param n_epochs [Symbol, :auto, Integer] The number of epochs to train the model for. An epoch refers to one full cycle t + # + # @param reasoning_effort [Symbol, OpenAI::FineTuning::ReinforcementHyperparameters::ReasoningEffort] Level of reasoning effort. + + # Number of examples in each batch. A larger batch size means that model + # parameters are updated less frequently, but with lower variance. + # + # @see OpenAI::FineTuning::ReinforcementHyperparameters#batch_size + module BatchSize + extend OpenAI::Internal::Type::Union + + variant const: :auto + + variant Integer + + # @!method self.variants + # @return [Array(Symbol, :auto, Integer)] + end + + # Multiplier on amount of compute used for exploring search space during training. + # + # @see OpenAI::FineTuning::ReinforcementHyperparameters#compute_multiplier + module ComputeMultiplier + extend OpenAI::Internal::Type::Union + + variant const: :auto + + variant Float + + # @!method self.variants + # @return [Array(Symbol, :auto, Float)] + end + + # The number of training steps between evaluation runs. + # + # @see OpenAI::FineTuning::ReinforcementHyperparameters#eval_interval + module EvalInterval + extend OpenAI::Internal::Type::Union + + variant const: :auto + + variant Integer + + # @!method self.variants + # @return [Array(Symbol, :auto, Integer)] + end + + # Number of evaluation samples to generate per training step. + # + # @see OpenAI::FineTuning::ReinforcementHyperparameters#eval_samples + module EvalSamples + extend OpenAI::Internal::Type::Union + + variant const: :auto + + variant Integer + + # @!method self.variants + # @return [Array(Symbol, :auto, Integer)] + end + + # Scaling factor for the learning rate. A smaller learning rate may be useful to + # avoid overfitting. + # + # @see OpenAI::FineTuning::ReinforcementHyperparameters#learning_rate_multiplier + module LearningRateMultiplier + extend OpenAI::Internal::Type::Union + + variant const: :auto + + variant Float + + # @!method self.variants + # @return [Array(Symbol, :auto, Float)] + end + + # The number of epochs to train the model for. An epoch refers to one full cycle + # through the training dataset. + # + # @see OpenAI::FineTuning::ReinforcementHyperparameters#n_epochs + module NEpochs + extend OpenAI::Internal::Type::Union + + variant const: :auto + + variant Integer + + # @!method self.variants + # @return [Array(Symbol, :auto, Integer)] + end + + # Level of reasoning effort. + # + # @see OpenAI::FineTuning::ReinforcementHyperparameters#reasoning_effort + module ReasoningEffort + extend OpenAI::Internal::Type::Enum + + DEFAULT = :default + LOW = :low + MEDIUM = :medium + HIGH = :high + + # @!method self.values + # @return [Array] + end + end + end + end +end diff --git a/lib/openai/models/fine_tuning/reinforcement_method.rb b/lib/openai/models/fine_tuning/reinforcement_method.rb new file mode 100644 index 00000000..d2955f1e --- /dev/null +++ b/lib/openai/models/fine_tuning/reinforcement_method.rb @@ -0,0 +1,53 @@ +# frozen_string_literal: true + +module OpenAI + module Models + module FineTuning + class ReinforcementMethod < OpenAI::Internal::Type::BaseModel + # @!attribute grader + # The grader used for the fine-tuning job. + # + # @return [OpenAI::Graders::StringCheckGrader, OpenAI::Graders::TextSimilarityGrader, OpenAI::Graders::PythonGrader, OpenAI::Graders::ScoreModelGrader, OpenAI::Graders::MultiGrader] + required :grader, union: -> { OpenAI::FineTuning::ReinforcementMethod::Grader } + + # @!attribute hyperparameters + # The hyperparameters used for the reinforcement fine-tuning job. + # + # @return [OpenAI::FineTuning::ReinforcementHyperparameters, nil] + optional :hyperparameters, -> { OpenAI::FineTuning::ReinforcementHyperparameters } + + # @!method initialize(grader:, hyperparameters: nil) + # Configuration for the reinforcement fine-tuning method. + # + # @param grader [OpenAI::Graders::StringCheckGrader, OpenAI::Graders::TextSimilarityGrader, OpenAI::Graders::PythonGrader, OpenAI::Graders::ScoreModelGrader, OpenAI::Graders::MultiGrader] The grader used for the fine-tuning job. + # + # @param hyperparameters [OpenAI::FineTuning::ReinforcementHyperparameters] The hyperparameters used for the reinforcement fine-tuning job. + + # The grader used for the fine-tuning job. + # + # @see OpenAI::FineTuning::ReinforcementMethod#grader + module Grader + extend OpenAI::Internal::Type::Union + + # A StringCheckGrader object that performs a string comparison between input and reference using a specified operation. + variant -> { OpenAI::Graders::StringCheckGrader } + + # A TextSimilarityGrader object which grades text based on similarity metrics. + variant -> { OpenAI::Graders::TextSimilarityGrader } + + # A PythonGrader object that runs a python script on the input. + variant -> { OpenAI::Graders::PythonGrader } + + # A ScoreModelGrader object that uses a model to assign a score to the input. + variant -> { OpenAI::Graders::ScoreModelGrader } + + # A MultiGrader object combines the output of multiple graders to produce a single score. + variant -> { OpenAI::Graders::MultiGrader } + + # @!method self.variants + # @return [Array(OpenAI::Graders::StringCheckGrader, OpenAI::Graders::TextSimilarityGrader, OpenAI::Graders::PythonGrader, OpenAI::Graders::ScoreModelGrader, OpenAI::Graders::MultiGrader)] + end + end + end + end +end diff --git a/lib/openai/models/fine_tuning/supervised_hyperparameters.rb b/lib/openai/models/fine_tuning/supervised_hyperparameters.rb new file mode 100644 index 00000000..612870f0 --- /dev/null +++ b/lib/openai/models/fine_tuning/supervised_hyperparameters.rb @@ -0,0 +1,88 @@ +# frozen_string_literal: true + +module OpenAI + module Models + module FineTuning + class SupervisedHyperparameters < OpenAI::Internal::Type::BaseModel + # @!attribute batch_size + # Number of examples in each batch. A larger batch size means that model + # parameters are updated less frequently, but with lower variance. + # + # @return [Symbol, :auto, Integer, nil] + optional :batch_size, union: -> { OpenAI::FineTuning::SupervisedHyperparameters::BatchSize } + + # @!attribute learning_rate_multiplier + # Scaling factor for the learning rate. A smaller learning rate may be useful to + # avoid overfitting. + # + # @return [Symbol, :auto, Float, nil] + optional :learning_rate_multiplier, + union: -> { OpenAI::FineTuning::SupervisedHyperparameters::LearningRateMultiplier } + + # @!attribute n_epochs + # The number of epochs to train the model for. An epoch refers to one full cycle + # through the training dataset. + # + # @return [Symbol, :auto, Integer, nil] + optional :n_epochs, union: -> { OpenAI::FineTuning::SupervisedHyperparameters::NEpochs } + + # @!method initialize(batch_size: nil, learning_rate_multiplier: nil, n_epochs: nil) + # Some parameter documentations has been truncated, see + # {OpenAI::FineTuning::SupervisedHyperparameters} for more details. + # + # The hyperparameters used for the fine-tuning job. + # + # @param batch_size [Symbol, :auto, Integer] Number of examples in each batch. A larger batch size means that model parameter + # + # @param learning_rate_multiplier [Symbol, :auto, Float] Scaling factor for the learning rate. A smaller learning rate may be useful to a + # + # @param n_epochs [Symbol, :auto, Integer] The number of epochs to train the model for. An epoch refers to one full cycle t + + # Number of examples in each batch. A larger batch size means that model + # parameters are updated less frequently, but with lower variance. + # + # @see OpenAI::FineTuning::SupervisedHyperparameters#batch_size + module BatchSize + extend OpenAI::Internal::Type::Union + + variant const: :auto + + variant Integer + + # @!method self.variants + # @return [Array(Symbol, :auto, Integer)] + end + + # Scaling factor for the learning rate. A smaller learning rate may be useful to + # avoid overfitting. + # + # @see OpenAI::FineTuning::SupervisedHyperparameters#learning_rate_multiplier + module LearningRateMultiplier + extend OpenAI::Internal::Type::Union + + variant const: :auto + + variant Float + + # @!method self.variants + # @return [Array(Symbol, :auto, Float)] + end + + # The number of epochs to train the model for. An epoch refers to one full cycle + # through the training dataset. + # + # @see OpenAI::FineTuning::SupervisedHyperparameters#n_epochs + module NEpochs + extend OpenAI::Internal::Type::Union + + variant const: :auto + + variant Integer + + # @!method self.variants + # @return [Array(Symbol, :auto, Integer)] + end + end + end + end +end diff --git a/lib/openai/models/fine_tuning/supervised_method.rb b/lib/openai/models/fine_tuning/supervised_method.rb new file mode 100644 index 00000000..f45655a0 --- /dev/null +++ b/lib/openai/models/fine_tuning/supervised_method.rb @@ -0,0 +1,20 @@ +# frozen_string_literal: true + +module OpenAI + module Models + module FineTuning + class SupervisedMethod < OpenAI::Internal::Type::BaseModel + # @!attribute hyperparameters + # The hyperparameters used for the fine-tuning job. + # + # @return [OpenAI::FineTuning::SupervisedHyperparameters, nil] + optional :hyperparameters, -> { OpenAI::FineTuning::SupervisedHyperparameters } + + # @!method initialize(hyperparameters: nil) + # Configuration for the supervised fine-tuning method. + # + # @param hyperparameters [OpenAI::FineTuning::SupervisedHyperparameters] The hyperparameters used for the fine-tuning job. + end + end + end +end diff --git a/lib/openai/models/graders/label_model_grader.rb b/lib/openai/models/graders/label_model_grader.rb new file mode 100644 index 00000000..99e0e087 --- /dev/null +++ b/lib/openai/models/graders/label_model_grader.rb @@ -0,0 +1,171 @@ +# frozen_string_literal: true + +module OpenAI + module Models + module Graders + class LabelModelGrader < OpenAI::Internal::Type::BaseModel + # @!attribute input + # + # @return [Array] + required :input, -> { OpenAI::Internal::Type::ArrayOf[OpenAI::Graders::LabelModelGrader::Input] } + + # @!attribute labels + # The labels to assign to each item in the evaluation. + # + # @return [Array] + required :labels, OpenAI::Internal::Type::ArrayOf[String] + + # @!attribute model + # The model to use for the evaluation. Must support structured outputs. + # + # @return [String] + required :model, String + + # @!attribute name + # The name of the grader. + # + # @return [String] + required :name, String + + # @!attribute passing_labels + # The labels that indicate a passing result. Must be a subset of labels. + # + # @return [Array] + required :passing_labels, OpenAI::Internal::Type::ArrayOf[String] + + # @!attribute type + # The object type, which is always `label_model`. + # + # @return [Symbol, :label_model] + required :type, const: :label_model + + # @!method initialize(input:, labels:, model:, name:, passing_labels:, type: :label_model) + # A LabelModelGrader object which uses a model to assign labels to each item in + # the evaluation. + # + # @param input [Array] + # + # @param labels [Array] The labels to assign to each item in the evaluation. + # + # @param model [String] The model to use for the evaluation. Must support structured outputs. + # + # @param name [String] The name of the grader. + # + # @param passing_labels [Array] The labels that indicate a passing result. Must be a subset of labels. + # + # @param type [Symbol, :label_model] The object type, which is always `label_model`. + + class Input < OpenAI::Internal::Type::BaseModel + # @!attribute content + # Text inputs to the model - can contain template strings. + # + # @return [String, OpenAI::Responses::ResponseInputText, OpenAI::Graders::LabelModelGrader::Input::Content::OutputText] + required :content, union: -> { OpenAI::Graders::LabelModelGrader::Input::Content } + + # @!attribute role + # The role of the message input. One of `user`, `assistant`, `system`, or + # `developer`. + # + # @return [Symbol, OpenAI::Graders::LabelModelGrader::Input::Role] + required :role, enum: -> { OpenAI::Graders::LabelModelGrader::Input::Role } + + # @!attribute type + # The type of the message input. Always `message`. + # + # @return [Symbol, OpenAI::Graders::LabelModelGrader::Input::Type, nil] + optional :type, enum: -> { OpenAI::Graders::LabelModelGrader::Input::Type } + + # @!method initialize(content:, role:, type: nil) + # Some parameter documentations has been truncated, see + # {OpenAI::Graders::LabelModelGrader::Input} for more details. + # + # A message input to the model with a role indicating instruction following + # hierarchy. Instructions given with the `developer` or `system` role take + # precedence over instructions given with the `user` role. Messages with the + # `assistant` role are presumed to have been generated by the model in previous + # interactions. + # + # @param content [String, OpenAI::Responses::ResponseInputText, OpenAI::Graders::LabelModelGrader::Input::Content::OutputText] Text inputs to the model - can contain template strings. + # + # @param role [Symbol, OpenAI::Graders::LabelModelGrader::Input::Role] The role of the message input. One of `user`, `assistant`, `system`, or + # + # @param type [Symbol, OpenAI::Graders::LabelModelGrader::Input::Type] The type of the message input. Always `message`. + + # Text inputs to the model - can contain template strings. + # + # @see OpenAI::Graders::LabelModelGrader::Input#content + module Content + extend OpenAI::Internal::Type::Union + + # A text input to the model. + variant String + + # A text input to the model. + variant -> { OpenAI::Responses::ResponseInputText } + + # A text output from the model. + variant -> { OpenAI::Graders::LabelModelGrader::Input::Content::OutputText } + + class OutputText < OpenAI::Internal::Type::BaseModel + # @!attribute text + # The text output from the model. + # + # @return [String] + required :text, String + + # @!attribute type + # The type of the output text. Always `output_text`. + # + # @return [Symbol, :output_text] + required :type, const: :output_text + + # @!method initialize(text:, type: :output_text) + # Some parameter documentations has been truncated, see + # {OpenAI::Graders::LabelModelGrader::Input::Content::OutputText} for more + # details. + # + # A text output from the model. + # + # @param text [String] The text output from the model. + # + # @param type [Symbol, :output_text] The type of the output text. Always `output_text`. + end + + # @!method self.variants + # @return [Array(String, OpenAI::Responses::ResponseInputText, OpenAI::Graders::LabelModelGrader::Input::Content::OutputText)] + end + + # The role of the message input. One of `user`, `assistant`, `system`, or + # `developer`. + # + # @see OpenAI::Graders::LabelModelGrader::Input#role + module Role + extend OpenAI::Internal::Type::Enum + + USER = :user + ASSISTANT = :assistant + SYSTEM = :system + DEVELOPER = :developer + + # @!method self.values + # @return [Array] + end + + # The type of the message input. Always `message`. + # + # @see OpenAI::Graders::LabelModelGrader::Input#type + module Type + extend OpenAI::Internal::Type::Enum + + MESSAGE = :message + + # @!method self.values + # @return [Array] + end + end + end + end + + LabelModelGrader = Graders::LabelModelGrader + end +end diff --git a/lib/openai/models/graders/multi_grader.rb b/lib/openai/models/graders/multi_grader.rb new file mode 100644 index 00000000..3cb7bf6b --- /dev/null +++ b/lib/openai/models/graders/multi_grader.rb @@ -0,0 +1,71 @@ +# frozen_string_literal: true + +module OpenAI + module Models + module Graders + class MultiGrader < OpenAI::Internal::Type::BaseModel + # @!attribute calculate_output + # A formula to calculate the output based on grader results. + # + # @return [String] + required :calculate_output, String + + # @!attribute graders + # + # @return [Hash{Symbol=>OpenAI::Graders::StringCheckGrader, OpenAI::Graders::TextSimilarityGrader, OpenAI::Graders::PythonGrader, OpenAI::Graders::ScoreModelGrader, OpenAI::Graders::LabelModelGrader}] + required :graders, -> { OpenAI::Internal::Type::HashOf[union: OpenAI::Graders::MultiGrader::Grader] } + + # @!attribute name + # The name of the grader. + # + # @return [String] + required :name, String + + # @!attribute type + # The type of grader. + # + # @return [Symbol, :multi] + required :type, const: :multi + + # @!method initialize(calculate_output:, graders:, name:, type: :multi) + # A MultiGrader object combines the output of multiple graders to produce a single + # score. + # + # @param calculate_output [String] A formula to calculate the output based on grader results. + # + # @param graders [Hash{Symbol=>OpenAI::Graders::StringCheckGrader, OpenAI::Graders::TextSimilarityGrader, OpenAI::Graders::PythonGrader, OpenAI::Graders::ScoreModelGrader, OpenAI::Graders::LabelModelGrader}] + # + # @param name [String] The name of the grader. + # + # @param type [Symbol, :multi] The type of grader. + + # A StringCheckGrader object that performs a string comparison between input and + # reference using a specified operation. + module Grader + extend OpenAI::Internal::Type::Union + + # A StringCheckGrader object that performs a string comparison between input and reference using a specified operation. + variant -> { OpenAI::Graders::StringCheckGrader } + + # A TextSimilarityGrader object which grades text based on similarity metrics. + variant -> { OpenAI::Graders::TextSimilarityGrader } + + # A PythonGrader object that runs a python script on the input. + variant -> { OpenAI::Graders::PythonGrader } + + # A ScoreModelGrader object that uses a model to assign a score to the input. + variant -> { OpenAI::Graders::ScoreModelGrader } + + # A LabelModelGrader object which uses a model to assign labels to each item + # in the evaluation. + variant -> { OpenAI::Graders::LabelModelGrader } + + # @!method self.variants + # @return [Array(OpenAI::Graders::StringCheckGrader, OpenAI::Graders::TextSimilarityGrader, OpenAI::Graders::PythonGrader, OpenAI::Graders::ScoreModelGrader, OpenAI::Graders::LabelModelGrader)] + end + end + end + + MultiGrader = Graders::MultiGrader + end +end diff --git a/lib/openai/models/graders/python_grader.rb b/lib/openai/models/graders/python_grader.rb new file mode 100644 index 00000000..f5fcae1c --- /dev/null +++ b/lib/openai/models/graders/python_grader.rb @@ -0,0 +1,46 @@ +# frozen_string_literal: true + +module OpenAI + module Models + module Graders + class PythonGrader < OpenAI::Internal::Type::BaseModel + # @!attribute name + # The name of the grader. + # + # @return [String] + required :name, String + + # @!attribute source + # The source code of the python script. + # + # @return [String] + required :source, String + + # @!attribute type + # The object type, which is always `python`. + # + # @return [Symbol, :python] + required :type, const: :python + + # @!attribute image_tag + # The image tag to use for the python script. + # + # @return [String, nil] + optional :image_tag, String + + # @!method initialize(name:, source:, image_tag: nil, type: :python) + # A PythonGrader object that runs a python script on the input. + # + # @param name [String] The name of the grader. + # + # @param source [String] The source code of the python script. + # + # @param image_tag [String] The image tag to use for the python script. + # + # @param type [Symbol, :python] The object type, which is always `python`. + end + end + + PythonGrader = Graders::PythonGrader + end +end diff --git a/lib/openai/models/graders/score_model_grader.rb b/lib/openai/models/graders/score_model_grader.rb new file mode 100644 index 00000000..62cf1a6c --- /dev/null +++ b/lib/openai/models/graders/score_model_grader.rb @@ -0,0 +1,171 @@ +# frozen_string_literal: true + +module OpenAI + module Models + module Graders + class ScoreModelGrader < OpenAI::Internal::Type::BaseModel + # @!attribute input + # The input text. This may include template strings. + # + # @return [Array] + required :input, -> { OpenAI::Internal::Type::ArrayOf[OpenAI::Graders::ScoreModelGrader::Input] } + + # @!attribute model + # The model to use for the evaluation. + # + # @return [String] + required :model, String + + # @!attribute name + # The name of the grader. + # + # @return [String] + required :name, String + + # @!attribute type + # The object type, which is always `score_model`. + # + # @return [Symbol, :score_model] + required :type, const: :score_model + + # @!attribute range + # The range of the score. Defaults to `[0, 1]`. + # + # @return [Array, nil] + optional :range, OpenAI::Internal::Type::ArrayOf[Float] + + # @!attribute sampling_params + # The sampling parameters for the model. + # + # @return [Object, nil] + optional :sampling_params, OpenAI::Internal::Type::Unknown + + # @!method initialize(input:, model:, name:, range: nil, sampling_params: nil, type: :score_model) + # A ScoreModelGrader object that uses a model to assign a score to the input. + # + # @param input [Array] The input text. This may include template strings. + # + # @param model [String] The model to use for the evaluation. + # + # @param name [String] The name of the grader. + # + # @param range [Array] The range of the score. Defaults to `[0, 1]`. + # + # @param sampling_params [Object] The sampling parameters for the model. + # + # @param type [Symbol, :score_model] The object type, which is always `score_model`. + + class Input < OpenAI::Internal::Type::BaseModel + # @!attribute content + # Text inputs to the model - can contain template strings. + # + # @return [String, OpenAI::Responses::ResponseInputText, OpenAI::Graders::ScoreModelGrader::Input::Content::OutputText] + required :content, union: -> { OpenAI::Graders::ScoreModelGrader::Input::Content } + + # @!attribute role + # The role of the message input. One of `user`, `assistant`, `system`, or + # `developer`. + # + # @return [Symbol, OpenAI::Graders::ScoreModelGrader::Input::Role] + required :role, enum: -> { OpenAI::Graders::ScoreModelGrader::Input::Role } + + # @!attribute type + # The type of the message input. Always `message`. + # + # @return [Symbol, OpenAI::Graders::ScoreModelGrader::Input::Type, nil] + optional :type, enum: -> { OpenAI::Graders::ScoreModelGrader::Input::Type } + + # @!method initialize(content:, role:, type: nil) + # Some parameter documentations has been truncated, see + # {OpenAI::Graders::ScoreModelGrader::Input} for more details. + # + # A message input to the model with a role indicating instruction following + # hierarchy. Instructions given with the `developer` or `system` role take + # precedence over instructions given with the `user` role. Messages with the + # `assistant` role are presumed to have been generated by the model in previous + # interactions. + # + # @param content [String, OpenAI::Responses::ResponseInputText, OpenAI::Graders::ScoreModelGrader::Input::Content::OutputText] Text inputs to the model - can contain template strings. + # + # @param role [Symbol, OpenAI::Graders::ScoreModelGrader::Input::Role] The role of the message input. One of `user`, `assistant`, `system`, or + # + # @param type [Symbol, OpenAI::Graders::ScoreModelGrader::Input::Type] The type of the message input. Always `message`. + + # Text inputs to the model - can contain template strings. + # + # @see OpenAI::Graders::ScoreModelGrader::Input#content + module Content + extend OpenAI::Internal::Type::Union + + # A text input to the model. + variant String + + # A text input to the model. + variant -> { OpenAI::Responses::ResponseInputText } + + # A text output from the model. + variant -> { OpenAI::Graders::ScoreModelGrader::Input::Content::OutputText } + + class OutputText < OpenAI::Internal::Type::BaseModel + # @!attribute text + # The text output from the model. + # + # @return [String] + required :text, String + + # @!attribute type + # The type of the output text. Always `output_text`. + # + # @return [Symbol, :output_text] + required :type, const: :output_text + + # @!method initialize(text:, type: :output_text) + # Some parameter documentations has been truncated, see + # {OpenAI::Graders::ScoreModelGrader::Input::Content::OutputText} for more + # details. + # + # A text output from the model. + # + # @param text [String] The text output from the model. + # + # @param type [Symbol, :output_text] The type of the output text. Always `output_text`. + end + + # @!method self.variants + # @return [Array(String, OpenAI::Responses::ResponseInputText, OpenAI::Graders::ScoreModelGrader::Input::Content::OutputText)] + end + + # The role of the message input. One of `user`, `assistant`, `system`, or + # `developer`. + # + # @see OpenAI::Graders::ScoreModelGrader::Input#role + module Role + extend OpenAI::Internal::Type::Enum + + USER = :user + ASSISTANT = :assistant + SYSTEM = :system + DEVELOPER = :developer + + # @!method self.values + # @return [Array] + end + + # The type of the message input. Always `message`. + # + # @see OpenAI::Graders::ScoreModelGrader::Input#type + module Type + extend OpenAI::Internal::Type::Enum + + MESSAGE = :message + + # @!method self.values + # @return [Array] + end + end + end + end + + ScoreModelGrader = Graders::ScoreModelGrader + end +end diff --git a/lib/openai/models/graders/string_check_grader.rb b/lib/openai/models/graders/string_check_grader.rb new file mode 100644 index 00000000..90aeb689 --- /dev/null +++ b/lib/openai/models/graders/string_check_grader.rb @@ -0,0 +1,70 @@ +# frozen_string_literal: true + +module OpenAI + module Models + module Graders + class StringCheckGrader < OpenAI::Internal::Type::BaseModel + # @!attribute input + # The input text. This may include template strings. + # + # @return [String] + required :input, String + + # @!attribute name + # The name of the grader. + # + # @return [String] + required :name, String + + # @!attribute operation + # The string check operation to perform. One of `eq`, `ne`, `like`, or `ilike`. + # + # @return [Symbol, OpenAI::Graders::StringCheckGrader::Operation] + required :operation, enum: -> { OpenAI::Graders::StringCheckGrader::Operation } + + # @!attribute reference + # The reference text. This may include template strings. + # + # @return [String] + required :reference, String + + # @!attribute type + # The object type, which is always `string_check`. + # + # @return [Symbol, :string_check] + required :type, const: :string_check + + # @!method initialize(input:, name:, operation:, reference:, type: :string_check) + # A StringCheckGrader object that performs a string comparison between input and + # reference using a specified operation. + # + # @param input [String] The input text. This may include template strings. + # + # @param name [String] The name of the grader. + # + # @param operation [Symbol, OpenAI::Graders::StringCheckGrader::Operation] The string check operation to perform. One of `eq`, `ne`, `like`, or `ilike`. + # + # @param reference [String] The reference text. This may include template strings. + # + # @param type [Symbol, :string_check] The object type, which is always `string_check`. + + # The string check operation to perform. One of `eq`, `ne`, `like`, or `ilike`. + # + # @see OpenAI::Graders::StringCheckGrader#operation + module Operation + extend OpenAI::Internal::Type::Enum + + EQ = :eq + NE = :ne + LIKE = :like + ILIKE = :ilike + + # @!method self.values + # @return [Array] + end + end + end + + StringCheckGrader = Graders::StringCheckGrader + end +end diff --git a/lib/openai/models/graders/text_similarity_grader.rb b/lib/openai/models/graders/text_similarity_grader.rb new file mode 100644 index 00000000..30b7eaad --- /dev/null +++ b/lib/openai/models/graders/text_similarity_grader.rb @@ -0,0 +1,80 @@ +# frozen_string_literal: true + +module OpenAI + module Models + module Graders + class TextSimilarityGrader < OpenAI::Internal::Type::BaseModel + # @!attribute evaluation_metric + # The evaluation metric to use. One of `fuzzy_match`, `bleu`, `gleu`, `meteor`, + # `rouge_1`, `rouge_2`, `rouge_3`, `rouge_4`, `rouge_5`, or `rouge_l`. + # + # @return [Symbol, OpenAI::Graders::TextSimilarityGrader::EvaluationMetric] + required :evaluation_metric, enum: -> { OpenAI::Graders::TextSimilarityGrader::EvaluationMetric } + + # @!attribute input + # The text being graded. + # + # @return [String] + required :input, String + + # @!attribute name + # The name of the grader. + # + # @return [String] + required :name, String + + # @!attribute reference + # The text being graded against. + # + # @return [String] + required :reference, String + + # @!attribute type + # The type of grader. + # + # @return [Symbol, :text_similarity] + required :type, const: :text_similarity + + # @!method initialize(evaluation_metric:, input:, name:, reference:, type: :text_similarity) + # Some parameter documentations has been truncated, see + # {OpenAI::Graders::TextSimilarityGrader} for more details. + # + # A TextSimilarityGrader object which grades text based on similarity metrics. + # + # @param evaluation_metric [Symbol, OpenAI::Graders::TextSimilarityGrader::EvaluationMetric] The evaluation metric to use. One of `fuzzy_match`, `bleu`, `gleu`, `meteor`, `r + # + # @param input [String] The text being graded. + # + # @param name [String] The name of the grader. + # + # @param reference [String] The text being graded against. + # + # @param type [Symbol, :text_similarity] The type of grader. + + # The evaluation metric to use. One of `fuzzy_match`, `bleu`, `gleu`, `meteor`, + # `rouge_1`, `rouge_2`, `rouge_3`, `rouge_4`, `rouge_5`, or `rouge_l`. + # + # @see OpenAI::Graders::TextSimilarityGrader#evaluation_metric + module EvaluationMetric + extend OpenAI::Internal::Type::Enum + + FUZZY_MATCH = :fuzzy_match + BLEU = :bleu + GLEU = :gleu + METEOR = :meteor + ROUGE_1 = :rouge_1 + ROUGE_2 = :rouge_2 + ROUGE_3 = :rouge_3 + ROUGE_4 = :rouge_4 + ROUGE_5 = :rouge_5 + ROUGE_L = :rouge_l + + # @!method self.values + # @return [Array] + end + end + end + + TextSimilarityGrader = Graders::TextSimilarityGrader + end +end diff --git a/lib/openai/resources/evals.rb b/lib/openai/resources/evals.rb index 23f0de0b..5d87bc09 100644 --- a/lib/openai/resources/evals.rb +++ b/lib/openai/resources/evals.rb @@ -17,9 +17,9 @@ class Evals # # @overload create(data_source_config:, testing_criteria:, metadata: nil, name: nil, request_options: {}) # - # @param data_source_config [OpenAI::EvalCreateParams::DataSourceConfig::Custom, OpenAI::EvalCreateParams::DataSourceConfig::Logs] The configuration for the data source used for the evaluation runs. + # @param data_source_config [OpenAI::EvalCreateParams::DataSourceConfig::Custom, OpenAI::EvalCreateParams::DataSourceConfig::StoredCompletions] The configuration for the data source used for the evaluation runs. # - # @param testing_criteria [Array] A list of graders for all eval runs in this group. + # @param testing_criteria [Array] A list of graders for all eval runs in this group. # # @param metadata [Hash{Symbol=>String}, nil] Set of 16 key-value pairs that can be attached to an object. This can be # diff --git a/lib/openai/resources/fine_tuning.rb b/lib/openai/resources/fine_tuning.rb index 051803a7..9f5fc2c0 100644 --- a/lib/openai/resources/fine_tuning.rb +++ b/lib/openai/resources/fine_tuning.rb @@ -3,19 +3,27 @@ module OpenAI module Resources class FineTuning + # @return [OpenAI::Resources::FineTuning::Methods] + attr_reader :methods_ + # @return [OpenAI::Resources::FineTuning::Jobs] attr_reader :jobs # @return [OpenAI::Resources::FineTuning::Checkpoints] attr_reader :checkpoints + # @return [OpenAI::Resources::FineTuning::Alpha] + attr_reader :alpha + # @api private # # @param client [OpenAI::Client] def initialize(client:) @client = client + @methods_ = OpenAI::Resources::FineTuning::Methods.new(client: client) @jobs = OpenAI::Resources::FineTuning::Jobs.new(client: client) @checkpoints = OpenAI::Resources::FineTuning::Checkpoints.new(client: client) + @alpha = OpenAI::Resources::FineTuning::Alpha.new(client: client) end end end diff --git a/lib/openai/resources/fine_tuning/alpha.rb b/lib/openai/resources/fine_tuning/alpha.rb new file mode 100644 index 00000000..4b3d6bc8 --- /dev/null +++ b/lib/openai/resources/fine_tuning/alpha.rb @@ -0,0 +1,20 @@ +# frozen_string_literal: true + +module OpenAI + module Resources + class FineTuning + class Alpha + # @return [OpenAI::Resources::FineTuning::Alpha::Graders] + attr_reader :graders + + # @api private + # + # @param client [OpenAI::Client] + def initialize(client:) + @client = client + @graders = OpenAI::Resources::FineTuning::Alpha::Graders.new(client: client) + end + end + end + end +end diff --git a/lib/openai/resources/fine_tuning/alpha/graders.rb b/lib/openai/resources/fine_tuning/alpha/graders.rb new file mode 100644 index 00000000..5c7ba54b --- /dev/null +++ b/lib/openai/resources/fine_tuning/alpha/graders.rb @@ -0,0 +1,66 @@ +# frozen_string_literal: true + +module OpenAI + module Resources + class FineTuning + class Alpha + class Graders + # Run a grader. + # + # @overload run(grader:, model_sample:, reference_answer:, request_options: {}) + # + # @param grader [OpenAI::Graders::StringCheckGrader, OpenAI::Graders::TextSimilarityGrader, OpenAI::Graders::PythonGrader, OpenAI::Graders::ScoreModelGrader, OpenAI::Graders::MultiGrader] The grader used for the fine-tuning job. + # + # @param model_sample [String] The model sample to be evaluated. + # + # @param reference_answer [String, Object, Array, Float] The reference answer for the evaluation. + # + # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] + # + # @return [OpenAI::Models::FineTuning::Alpha::GraderRunResponse] + # + # @see OpenAI::Models::FineTuning::Alpha::GraderRunParams + def run(params) + parsed, options = OpenAI::FineTuning::Alpha::GraderRunParams.dump_request(params) + @client.request( + method: :post, + path: "fine_tuning/alpha/graders/run", + body: parsed, + model: OpenAI::Models::FineTuning::Alpha::GraderRunResponse, + options: options + ) + end + + # Validate a grader. + # + # @overload validate(grader:, request_options: {}) + # + # @param grader [OpenAI::Graders::StringCheckGrader, OpenAI::Graders::TextSimilarityGrader, OpenAI::Graders::PythonGrader, OpenAI::Graders::ScoreModelGrader, OpenAI::Graders::MultiGrader] The grader used for the fine-tuning job. + # + # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] + # + # @return [OpenAI::Models::FineTuning::Alpha::GraderValidateResponse] + # + # @see OpenAI::Models::FineTuning::Alpha::GraderValidateParams + def validate(params) + parsed, options = OpenAI::FineTuning::Alpha::GraderValidateParams.dump_request(params) + @client.request( + method: :post, + path: "fine_tuning/alpha/graders/validate", + body: parsed, + model: OpenAI::Models::FineTuning::Alpha::GraderValidateResponse, + options: options + ) + end + + # @api private + # + # @param client [OpenAI::Client] + def initialize(client:) + @client = client + end + end + end + end + end +end diff --git a/lib/openai/resources/fine_tuning/jobs.rb b/lib/openai/resources/fine_tuning/jobs.rb index 4a7bdfb7..b6458288 100644 --- a/lib/openai/resources/fine_tuning/jobs.rb +++ b/lib/openai/resources/fine_tuning/jobs.rb @@ -162,6 +162,52 @@ def list_events(fine_tuning_job_id, params = {}) ) end + # Some parameter documentations has been truncated, see + # {OpenAI::Models::FineTuning::JobPauseParams} for more details. + # + # Pause a fine-tune job. + # + # @overload pause(fine_tuning_job_id, request_options: {}) + # + # @param fine_tuning_job_id [String] The ID of the fine-tuning job to pause. + # + # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] + # + # @return [OpenAI::FineTuning::FineTuningJob] + # + # @see OpenAI::Models::FineTuning::JobPauseParams + def pause(fine_tuning_job_id, params = {}) + @client.request( + method: :post, + path: ["fine_tuning/jobs/%1$s/pause", fine_tuning_job_id], + model: OpenAI::FineTuning::FineTuningJob, + options: params[:request_options] + ) + end + + # Some parameter documentations has been truncated, see + # {OpenAI::Models::FineTuning::JobResumeParams} for more details. + # + # Resume a fine-tune job. + # + # @overload resume(fine_tuning_job_id, request_options: {}) + # + # @param fine_tuning_job_id [String] The ID of the fine-tuning job to resume. + # + # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil] + # + # @return [OpenAI::FineTuning::FineTuningJob] + # + # @see OpenAI::Models::FineTuning::JobResumeParams + def resume(fine_tuning_job_id, params = {}) + @client.request( + method: :post, + path: ["fine_tuning/jobs/%1$s/resume", fine_tuning_job_id], + model: OpenAI::FineTuning::FineTuningJob, + options: params[:request_options] + ) + end + # @api private # # @param client [OpenAI::Client] diff --git a/lib/openai/resources/fine_tuning/methods.rb b/lib/openai/resources/fine_tuning/methods.rb new file mode 100644 index 00000000..fcc6d076 --- /dev/null +++ b/lib/openai/resources/fine_tuning/methods.rb @@ -0,0 +1,16 @@ +# frozen_string_literal: true + +module OpenAI + module Resources + class FineTuning + class Methods + # @api private + # + # @param client [OpenAI::Client] + def initialize(client:) + @client = client + end + end + end + end +end diff --git a/lib/openai/resources/graders.rb b/lib/openai/resources/graders.rb new file mode 100644 index 00000000..2aca1a85 --- /dev/null +++ b/lib/openai/resources/graders.rb @@ -0,0 +1,18 @@ +# frozen_string_literal: true + +module OpenAI + module Resources + class Graders + # @return [OpenAI::Resources::Graders::GraderModels] + attr_reader :grader_models + + # @api private + # + # @param client [OpenAI::Client] + def initialize(client:) + @client = client + @grader_models = OpenAI::Resources::Graders::GraderModels.new(client: client) + end + end + end +end diff --git a/lib/openai/resources/graders/grader_models.rb b/lib/openai/resources/graders/grader_models.rb new file mode 100644 index 00000000..172b5ef6 --- /dev/null +++ b/lib/openai/resources/graders/grader_models.rb @@ -0,0 +1,16 @@ +# frozen_string_literal: true + +module OpenAI + module Resources + class Graders + class GraderModels + # @api private + # + # @param client [OpenAI::Client] + def initialize(client:) + @client = client + end + end + end + end +end diff --git a/rbi/openai/client.rbi b/rbi/openai/client.rbi index 7ac76a8c..b89f1995 100644 --- a/rbi/openai/client.rbi +++ b/rbi/openai/client.rbi @@ -46,6 +46,9 @@ module OpenAI sig { returns(OpenAI::Resources::FineTuning) } attr_reader :fine_tuning + sig { returns(OpenAI::Resources::Graders) } + attr_reader :graders + sig { returns(OpenAI::Resources::VectorStores) } attr_reader :vector_stores diff --git a/rbi/openai/models.rbi b/rbi/openai/models.rbi index c3eaf325..f26af6b7 100644 --- a/rbi/openai/models.rbi +++ b/rbi/openai/models.rbi @@ -59,8 +59,6 @@ module OpenAI EvalDeleteParams = OpenAI::Models::EvalDeleteParams - EvalLabelModelGrader = OpenAI::Models::EvalLabelModelGrader - EvalListParams = OpenAI::Models::EvalListParams EvalRetrieveParams = OpenAI::Models::EvalRetrieveParams @@ -70,10 +68,6 @@ module OpenAI EvalStoredCompletionsDataSourceConfig = OpenAI::Models::EvalStoredCompletionsDataSourceConfig - EvalStringCheckGrader = OpenAI::Models::EvalStringCheckGrader - - EvalTextSimilarityGrader = OpenAI::Models::EvalTextSimilarityGrader - EvalUpdateParams = OpenAI::Models::EvalUpdateParams FileChunkingStrategy = OpenAI::Models::FileChunkingStrategy @@ -105,6 +99,8 @@ module OpenAI FunctionParameters = T.let(OpenAI::Models::FunctionParameters, OpenAI::Internal::Type::Converter) + Graders = OpenAI::Models::Graders + Image = OpenAI::Models::Image ImageCreateVariationParams = OpenAI::Models::ImageCreateVariationParams diff --git a/rbi/openai/models/eval_create_params.rbi b/rbi/openai/models/eval_create_params.rbi index 77dd005f..b3673227 100644 --- a/rbi/openai/models/eval_create_params.rbi +++ b/rbi/openai/models/eval_create_params.rbi @@ -13,7 +13,7 @@ module OpenAI returns( T.any( OpenAI::EvalCreateParams::DataSourceConfig::Custom, - OpenAI::EvalCreateParams::DataSourceConfig::Logs + OpenAI::EvalCreateParams::DataSourceConfig::StoredCompletions ) ) end @@ -25,8 +25,8 @@ module OpenAI T::Array[ T.any( OpenAI::EvalCreateParams::TestingCriterion::LabelModel, - OpenAI::EvalStringCheckGrader, - OpenAI::EvalTextSimilarityGrader, + OpenAI::Graders::StringCheckGrader, + OpenAI::EvalCreateParams::TestingCriterion::TextSimilarity, OpenAI::EvalCreateParams::TestingCriterion::Python, OpenAI::EvalCreateParams::TestingCriterion::ScoreModel ) @@ -56,14 +56,14 @@ module OpenAI data_source_config: T.any( OpenAI::EvalCreateParams::DataSourceConfig::Custom::OrHash, - OpenAI::EvalCreateParams::DataSourceConfig::Logs::OrHash + OpenAI::EvalCreateParams::DataSourceConfig::StoredCompletions::OrHash ), testing_criteria: T::Array[ T.any( OpenAI::EvalCreateParams::TestingCriterion::LabelModel::OrHash, - OpenAI::EvalStringCheckGrader::OrHash, - OpenAI::EvalTextSimilarityGrader::OrHash, + OpenAI::Graders::StringCheckGrader::OrHash, + OpenAI::EvalCreateParams::TestingCriterion::TextSimilarity::OrHash, OpenAI::EvalCreateParams::TestingCriterion::Python::OrHash, OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::OrHash ) @@ -97,14 +97,14 @@ module OpenAI data_source_config: T.any( OpenAI::EvalCreateParams::DataSourceConfig::Custom, - OpenAI::EvalCreateParams::DataSourceConfig::Logs + OpenAI::EvalCreateParams::DataSourceConfig::StoredCompletions ), testing_criteria: T::Array[ T.any( OpenAI::EvalCreateParams::TestingCriterion::LabelModel, - OpenAI::EvalStringCheckGrader, - OpenAI::EvalTextSimilarityGrader, + OpenAI::Graders::StringCheckGrader, + OpenAI::EvalCreateParams::TestingCriterion::TextSimilarity, OpenAI::EvalCreateParams::TestingCriterion::Python, OpenAI::EvalCreateParams::TestingCriterion::ScoreModel ) @@ -126,7 +126,7 @@ module OpenAI T.type_alias do T.any( OpenAI::EvalCreateParams::DataSourceConfig::Custom, - OpenAI::EvalCreateParams::DataSourceConfig::Logs + OpenAI::EvalCreateParams::DataSourceConfig::StoredCompletions ) end @@ -187,15 +187,15 @@ module OpenAI end end - class Logs < OpenAI::Internal::Type::BaseModel + class StoredCompletions < OpenAI::Internal::Type::BaseModel OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } - # The type of data source. Always `logs`. + # The type of data source. Always `stored_completions`. sig { returns(Symbol) } attr_accessor :type - # Metadata filters for the logs data source. + # Metadata filters for the stored completions data source. sig { returns(T.nilable(T::Hash[Symbol, T.anything])) } attr_reader :metadata @@ -211,10 +211,10 @@ module OpenAI ) end def self.new( - # Metadata filters for the logs data source. + # Metadata filters for the stored completions data source. metadata: nil, - # The type of data source. Always `logs`. - type: :logs + # The type of data source. Always `stored_completions`. + type: :stored_completions ) end @@ -245,8 +245,8 @@ module OpenAI T.type_alias do T.any( OpenAI::EvalCreateParams::TestingCriterion::LabelModel, - OpenAI::EvalStringCheckGrader, - OpenAI::EvalTextSimilarityGrader, + OpenAI::Graders::StringCheckGrader, + OpenAI::EvalCreateParams::TestingCriterion::TextSimilarity, OpenAI::EvalCreateParams::TestingCriterion::Python, OpenAI::EvalCreateParams::TestingCriterion::ScoreModel ) @@ -623,28 +623,30 @@ module OpenAI end end - class Python < OpenAI::Internal::Type::BaseModel + class TextSimilarity < OpenAI::Models::Graders::TextSimilarityGrader OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } - # The name of the grader. - sig { returns(String) } - attr_accessor :name - - # The source code of the python script. - sig { returns(String) } - attr_accessor :source + # The threshold for the score. + sig { returns(Float) } + attr_accessor :pass_threshold - # The object type, which is always `python`. - sig { returns(Symbol) } - attr_accessor :type + # A TextSimilarityGrader object which grades text based on similarity metrics. + sig { params(pass_threshold: Float).returns(T.attached_class) } + def self.new( + # The threshold for the score. + pass_threshold: + ) + end - # The image tag to use for the python script. - sig { returns(T.nilable(String)) } - attr_reader :image_tag + sig { override.returns({ pass_threshold: Float }) } + def to_hash + end + end - sig { params(image_tag: String).void } - attr_writer :image_tag + class Python < OpenAI::Models::Graders::PythonGrader + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } # The threshold for the score. sig { returns(T.nilable(Float)) } @@ -654,70 +656,22 @@ module OpenAI attr_writer :pass_threshold # A PythonGrader object that runs a python script on the input. - sig do - params( - name: String, - source: String, - image_tag: String, - pass_threshold: Float, - type: Symbol - ).returns(T.attached_class) - end + sig { params(pass_threshold: Float).returns(T.attached_class) } def self.new( - # The name of the grader. - name:, - # The source code of the python script. - source:, - # The image tag to use for the python script. - image_tag: nil, # The threshold for the score. - pass_threshold: nil, - # The object type, which is always `python`. - type: :python + pass_threshold: nil ) end - sig do - override.returns( - { - name: String, - source: String, - type: Symbol, - image_tag: String, - pass_threshold: Float - } - ) - end + sig { override.returns({ pass_threshold: Float }) } def to_hash end end - class ScoreModel < OpenAI::Internal::Type::BaseModel + class ScoreModel < OpenAI::Models::Graders::ScoreModelGrader OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } - # The input text. This may include template strings. - sig do - returns( - T::Array[ - OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input - ] - ) - end - attr_accessor :input - - # The model to use for the evaluation. - sig { returns(String) } - attr_accessor :model - - # The name of the grader. - sig { returns(String) } - attr_accessor :name - - # The object type, which is always `score_model`. - sig { returns(Symbol) } - attr_accessor :type - # The threshold for the score. sig { returns(T.nilable(Float)) } attr_reader :pass_threshold @@ -725,293 +679,17 @@ module OpenAI sig { params(pass_threshold: Float).void } attr_writer :pass_threshold - # The range of the score. Defaults to `[0, 1]`. - sig { returns(T.nilable(T::Array[Float])) } - attr_reader :range - - sig { params(range: T::Array[Float]).void } - attr_writer :range - - # The sampling parameters for the model. - sig { returns(T.nilable(T.anything)) } - attr_reader :sampling_params - - sig { params(sampling_params: T.anything).void } - attr_writer :sampling_params - # A ScoreModelGrader object that uses a model to assign a score to the input. - sig do - params( - input: - T::Array[ - OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input::OrHash - ], - model: String, - name: String, - pass_threshold: Float, - range: T::Array[Float], - sampling_params: T.anything, - type: Symbol - ).returns(T.attached_class) - end + sig { params(pass_threshold: Float).returns(T.attached_class) } def self.new( - # The input text. This may include template strings. - input:, - # The model to use for the evaluation. - model:, - # The name of the grader. - name:, # The threshold for the score. - pass_threshold: nil, - # The range of the score. Defaults to `[0, 1]`. - range: nil, - # The sampling parameters for the model. - sampling_params: nil, - # The object type, which is always `score_model`. - type: :score_model + pass_threshold: nil ) end - sig do - override.returns( - { - input: - T::Array[ - OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input - ], - model: String, - name: String, - type: Symbol, - pass_threshold: Float, - range: T::Array[Float], - sampling_params: T.anything - } - ) - end + sig { override.returns({ pass_threshold: Float }) } def to_hash end - - class Input < OpenAI::Internal::Type::BaseModel - OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } - - # Text inputs to the model - can contain template strings. - sig do - returns( - T.any( - String, - OpenAI::Responses::ResponseInputText, - OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input::Content::OutputText - ) - ) - end - attr_accessor :content - - # The role of the message input. One of `user`, `assistant`, `system`, or - # `developer`. - sig do - returns( - OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input::Role::OrSymbol - ) - end - attr_accessor :role - - # The type of the message input. Always `message`. - sig do - returns( - T.nilable( - OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input::Type::OrSymbol - ) - ) - end - attr_reader :type - - sig do - params( - type: - OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input::Type::OrSymbol - ).void - end - attr_writer :type - - # A message input to the model with a role indicating instruction following - # hierarchy. Instructions given with the `developer` or `system` role take - # precedence over instructions given with the `user` role. Messages with the - # `assistant` role are presumed to have been generated by the model in previous - # interactions. - sig do - params( - content: - T.any( - String, - OpenAI::Responses::ResponseInputText::OrHash, - OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input::Content::OutputText::OrHash - ), - role: - OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input::Role::OrSymbol, - type: - OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input::Type::OrSymbol - ).returns(T.attached_class) - end - def self.new( - # Text inputs to the model - can contain template strings. - content:, - # The role of the message input. One of `user`, `assistant`, `system`, or - # `developer`. - role:, - # The type of the message input. Always `message`. - type: nil - ) - end - - sig do - override.returns( - { - content: - T.any( - String, - OpenAI::Responses::ResponseInputText, - OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input::Content::OutputText - ), - role: - OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input::Role::OrSymbol, - type: - OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input::Type::OrSymbol - } - ) - end - def to_hash - end - - # Text inputs to the model - can contain template strings. - module Content - extend OpenAI::Internal::Type::Union - - Variants = - T.type_alias do - T.any( - String, - OpenAI::Responses::ResponseInputText, - OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input::Content::OutputText - ) - end - - class OutputText < OpenAI::Internal::Type::BaseModel - OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } - - # The text output from the model. - sig { returns(String) } - attr_accessor :text - - # The type of the output text. Always `output_text`. - sig { returns(Symbol) } - attr_accessor :type - - # A text output from the model. - sig do - params(text: String, type: Symbol).returns(T.attached_class) - end - def self.new( - # The text output from the model. - text:, - # The type of the output text. Always `output_text`. - type: :output_text - ) - end - - sig { override.returns({ text: String, type: Symbol }) } - def to_hash - end - end - - sig do - override.returns( - T::Array[ - OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input::Content::Variants - ] - ) - end - def self.variants - end - end - - # The role of the message input. One of `user`, `assistant`, `system`, or - # `developer`. - module Role - extend OpenAI::Internal::Type::Enum - - TaggedSymbol = - T.type_alias do - T.all( - Symbol, - OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input::Role - ) - end - OrSymbol = T.type_alias { T.any(Symbol, String) } - - USER = - T.let( - :user, - OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input::Role::TaggedSymbol - ) - ASSISTANT = - T.let( - :assistant, - OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input::Role::TaggedSymbol - ) - SYSTEM = - T.let( - :system, - OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input::Role::TaggedSymbol - ) - DEVELOPER = - T.let( - :developer, - OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input::Role::TaggedSymbol - ) - - sig do - override.returns( - T::Array[ - OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input::Role::TaggedSymbol - ] - ) - end - def self.values - end - end - - # The type of the message input. Always `message`. - module Type - extend OpenAI::Internal::Type::Enum - - TaggedSymbol = - T.type_alias do - T.all( - Symbol, - OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input::Type - ) - end - OrSymbol = T.type_alias { T.any(Symbol, String) } - - MESSAGE = - T.let( - :message, - OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input::Type::TaggedSymbol - ) - - sig do - override.returns( - T::Array[ - OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input::Type::TaggedSymbol - ] - ) - end - def self.values - end - end - end end sig do diff --git a/rbi/openai/models/eval_create_response.rbi b/rbi/openai/models/eval_create_response.rbi index 97b8fa5b..2928d3b9 100644 --- a/rbi/openai/models/eval_create_response.rbi +++ b/rbi/openai/models/eval_create_response.rbi @@ -46,11 +46,11 @@ module OpenAI returns( T::Array[ T.any( - OpenAI::EvalLabelModelGrader, - OpenAI::EvalStringCheckGrader, - OpenAI::EvalTextSimilarityGrader, - OpenAI::Models::EvalCreateResponse::TestingCriterion::Python, - OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel + OpenAI::Graders::LabelModelGrader, + OpenAI::Graders::StringCheckGrader, + OpenAI::Models::EvalCreateResponse::TestingCriterion::EvalGraderTextSimilarity, + OpenAI::Models::EvalCreateResponse::TestingCriterion::EvalGraderPython, + OpenAI::Models::EvalCreateResponse::TestingCriterion::EvalGraderScoreModel ) ] ) @@ -77,11 +77,11 @@ module OpenAI testing_criteria: T::Array[ T.any( - OpenAI::EvalLabelModelGrader::OrHash, - OpenAI::EvalStringCheckGrader::OrHash, - OpenAI::EvalTextSimilarityGrader::OrHash, - OpenAI::Models::EvalCreateResponse::TestingCriterion::Python::OrHash, - OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::OrHash + OpenAI::Graders::LabelModelGrader::OrHash, + OpenAI::Graders::StringCheckGrader::OrHash, + OpenAI::Models::EvalCreateResponse::TestingCriterion::EvalGraderTextSimilarity::OrHash, + OpenAI::Models::EvalCreateResponse::TestingCriterion::EvalGraderPython::OrHash, + OpenAI::Models::EvalCreateResponse::TestingCriterion::EvalGraderScoreModel::OrHash ) ], object: Symbol @@ -126,11 +126,11 @@ module OpenAI testing_criteria: T::Array[ T.any( - OpenAI::EvalLabelModelGrader, - OpenAI::EvalStringCheckGrader, - OpenAI::EvalTextSimilarityGrader, - OpenAI::Models::EvalCreateResponse::TestingCriterion::Python, - OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel + OpenAI::Graders::LabelModelGrader, + OpenAI::Graders::StringCheckGrader, + OpenAI::Models::EvalCreateResponse::TestingCriterion::EvalGraderTextSimilarity, + OpenAI::Models::EvalCreateResponse::TestingCriterion::EvalGraderPython, + OpenAI::Models::EvalCreateResponse::TestingCriterion::EvalGraderScoreModel ) ] } @@ -170,36 +170,38 @@ module OpenAI Variants = T.type_alias do T.any( - OpenAI::EvalLabelModelGrader, - OpenAI::EvalStringCheckGrader, - OpenAI::EvalTextSimilarityGrader, - OpenAI::Models::EvalCreateResponse::TestingCriterion::Python, - OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel + OpenAI::Graders::LabelModelGrader, + OpenAI::Graders::StringCheckGrader, + OpenAI::Models::EvalCreateResponse::TestingCriterion::EvalGraderTextSimilarity, + OpenAI::Models::EvalCreateResponse::TestingCriterion::EvalGraderPython, + OpenAI::Models::EvalCreateResponse::TestingCriterion::EvalGraderScoreModel ) end - class Python < OpenAI::Internal::Type::BaseModel + class EvalGraderTextSimilarity < OpenAI::Models::Graders::TextSimilarityGrader OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } - # The name of the grader. - sig { returns(String) } - attr_accessor :name - - # The source code of the python script. - sig { returns(String) } - attr_accessor :source + # The threshold for the score. + sig { returns(Float) } + attr_accessor :pass_threshold - # The object type, which is always `python`. - sig { returns(Symbol) } - attr_accessor :type + # A TextSimilarityGrader object which grades text based on similarity metrics. + sig { params(pass_threshold: Float).returns(T.attached_class) } + def self.new( + # The threshold for the score. + pass_threshold: + ) + end - # The image tag to use for the python script. - sig { returns(T.nilable(String)) } - attr_reader :image_tag + sig { override.returns({ pass_threshold: Float }) } + def to_hash + end + end - sig { params(image_tag: String).void } - attr_writer :image_tag + class EvalGraderPython < OpenAI::Models::Graders::PythonGrader + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } # The threshold for the score. sig { returns(T.nilable(Float)) } @@ -209,70 +211,22 @@ module OpenAI attr_writer :pass_threshold # A PythonGrader object that runs a python script on the input. - sig do - params( - name: String, - source: String, - image_tag: String, - pass_threshold: Float, - type: Symbol - ).returns(T.attached_class) - end + sig { params(pass_threshold: Float).returns(T.attached_class) } def self.new( - # The name of the grader. - name:, - # The source code of the python script. - source:, - # The image tag to use for the python script. - image_tag: nil, # The threshold for the score. - pass_threshold: nil, - # The object type, which is always `python`. - type: :python + pass_threshold: nil ) end - sig do - override.returns( - { - name: String, - source: String, - type: Symbol, - image_tag: String, - pass_threshold: Float - } - ) - end + sig { override.returns({ pass_threshold: Float }) } def to_hash end end - class ScoreModel < OpenAI::Internal::Type::BaseModel + class EvalGraderScoreModel < OpenAI::Models::Graders::ScoreModelGrader OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } - # The input text. This may include template strings. - sig do - returns( - T::Array[ - OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input - ] - ) - end - attr_accessor :input - - # The model to use for the evaluation. - sig { returns(String) } - attr_accessor :model - - # The name of the grader. - sig { returns(String) } - attr_accessor :name - - # The object type, which is always `score_model`. - sig { returns(Symbol) } - attr_accessor :type - # The threshold for the score. sig { returns(T.nilable(Float)) } attr_reader :pass_threshold @@ -280,293 +234,17 @@ module OpenAI sig { params(pass_threshold: Float).void } attr_writer :pass_threshold - # The range of the score. Defaults to `[0, 1]`. - sig { returns(T.nilable(T::Array[Float])) } - attr_reader :range - - sig { params(range: T::Array[Float]).void } - attr_writer :range - - # The sampling parameters for the model. - sig { returns(T.nilable(T.anything)) } - attr_reader :sampling_params - - sig { params(sampling_params: T.anything).void } - attr_writer :sampling_params - # A ScoreModelGrader object that uses a model to assign a score to the input. - sig do - params( - input: - T::Array[ - OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::OrHash - ], - model: String, - name: String, - pass_threshold: Float, - range: T::Array[Float], - sampling_params: T.anything, - type: Symbol - ).returns(T.attached_class) - end + sig { params(pass_threshold: Float).returns(T.attached_class) } def self.new( - # The input text. This may include template strings. - input:, - # The model to use for the evaluation. - model:, - # The name of the grader. - name:, # The threshold for the score. - pass_threshold: nil, - # The range of the score. Defaults to `[0, 1]`. - range: nil, - # The sampling parameters for the model. - sampling_params: nil, - # The object type, which is always `score_model`. - type: :score_model + pass_threshold: nil ) end - sig do - override.returns( - { - input: - T::Array[ - OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input - ], - model: String, - name: String, - type: Symbol, - pass_threshold: Float, - range: T::Array[Float], - sampling_params: T.anything - } - ) - end + sig { override.returns({ pass_threshold: Float }) } def to_hash end - - class Input < OpenAI::Internal::Type::BaseModel - OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } - - # Text inputs to the model - can contain template strings. - sig do - returns( - T.any( - String, - OpenAI::Responses::ResponseInputText, - OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Content::OutputText - ) - ) - end - attr_accessor :content - - # The role of the message input. One of `user`, `assistant`, `system`, or - # `developer`. - sig do - returns( - OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Role::TaggedSymbol - ) - end - attr_accessor :role - - # The type of the message input. Always `message`. - sig do - returns( - T.nilable( - OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Type::TaggedSymbol - ) - ) - end - attr_reader :type - - sig do - params( - type: - OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Type::OrSymbol - ).void - end - attr_writer :type - - # A message input to the model with a role indicating instruction following - # hierarchy. Instructions given with the `developer` or `system` role take - # precedence over instructions given with the `user` role. Messages with the - # `assistant` role are presumed to have been generated by the model in previous - # interactions. - sig do - params( - content: - T.any( - String, - OpenAI::Responses::ResponseInputText::OrHash, - OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Content::OutputText::OrHash - ), - role: - OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Role::OrSymbol, - type: - OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Type::OrSymbol - ).returns(T.attached_class) - end - def self.new( - # Text inputs to the model - can contain template strings. - content:, - # The role of the message input. One of `user`, `assistant`, `system`, or - # `developer`. - role:, - # The type of the message input. Always `message`. - type: nil - ) - end - - sig do - override.returns( - { - content: - T.any( - String, - OpenAI::Responses::ResponseInputText, - OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Content::OutputText - ), - role: - OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Role::TaggedSymbol, - type: - OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Type::TaggedSymbol - } - ) - end - def to_hash - end - - # Text inputs to the model - can contain template strings. - module Content - extend OpenAI::Internal::Type::Union - - Variants = - T.type_alias do - T.any( - String, - OpenAI::Responses::ResponseInputText, - OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Content::OutputText - ) - end - - class OutputText < OpenAI::Internal::Type::BaseModel - OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } - - # The text output from the model. - sig { returns(String) } - attr_accessor :text - - # The type of the output text. Always `output_text`. - sig { returns(Symbol) } - attr_accessor :type - - # A text output from the model. - sig do - params(text: String, type: Symbol).returns(T.attached_class) - end - def self.new( - # The text output from the model. - text:, - # The type of the output text. Always `output_text`. - type: :output_text - ) - end - - sig { override.returns({ text: String, type: Symbol }) } - def to_hash - end - end - - sig do - override.returns( - T::Array[ - OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Content::Variants - ] - ) - end - def self.variants - end - end - - # The role of the message input. One of `user`, `assistant`, `system`, or - # `developer`. - module Role - extend OpenAI::Internal::Type::Enum - - TaggedSymbol = - T.type_alias do - T.all( - Symbol, - OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Role - ) - end - OrSymbol = T.type_alias { T.any(Symbol, String) } - - USER = - T.let( - :user, - OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Role::TaggedSymbol - ) - ASSISTANT = - T.let( - :assistant, - OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Role::TaggedSymbol - ) - SYSTEM = - T.let( - :system, - OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Role::TaggedSymbol - ) - DEVELOPER = - T.let( - :developer, - OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Role::TaggedSymbol - ) - - sig do - override.returns( - T::Array[ - OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Role::TaggedSymbol - ] - ) - end - def self.values - end - end - - # The type of the message input. Always `message`. - module Type - extend OpenAI::Internal::Type::Enum - - TaggedSymbol = - T.type_alias do - T.all( - Symbol, - OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Type - ) - end - OrSymbol = T.type_alias { T.any(Symbol, String) } - - MESSAGE = - T.let( - :message, - OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Type::TaggedSymbol - ) - - sig do - override.returns( - T::Array[ - OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Type::TaggedSymbol - ] - ) - end - def self.values - end - end - end end sig do diff --git a/rbi/openai/models/eval_label_model_grader.rbi b/rbi/openai/models/eval_label_model_grader.rbi deleted file mode 100644 index df283285..00000000 --- a/rbi/openai/models/eval_label_model_grader.rbi +++ /dev/null @@ -1,268 +0,0 @@ -# typed: strong - -module OpenAI - module Models - class EvalLabelModelGrader < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } - - sig { returns(T::Array[OpenAI::EvalLabelModelGrader::Input]) } - attr_accessor :input - - # The labels to assign to each item in the evaluation. - sig { returns(T::Array[String]) } - attr_accessor :labels - - # The model to use for the evaluation. Must support structured outputs. - sig { returns(String) } - attr_accessor :model - - # The name of the grader. - sig { returns(String) } - attr_accessor :name - - # The labels that indicate a passing result. Must be a subset of labels. - sig { returns(T::Array[String]) } - attr_accessor :passing_labels - - # The object type, which is always `label_model`. - sig { returns(Symbol) } - attr_accessor :type - - # A LabelModelGrader object which uses a model to assign labels to each item in - # the evaluation. - sig do - params( - input: T::Array[OpenAI::EvalLabelModelGrader::Input::OrHash], - labels: T::Array[String], - model: String, - name: String, - passing_labels: T::Array[String], - type: Symbol - ).returns(T.attached_class) - end - def self.new( - input:, - # The labels to assign to each item in the evaluation. - labels:, - # The model to use for the evaluation. Must support structured outputs. - model:, - # The name of the grader. - name:, - # The labels that indicate a passing result. Must be a subset of labels. - passing_labels:, - # The object type, which is always `label_model`. - type: :label_model - ) - end - - sig do - override.returns( - { - input: T::Array[OpenAI::EvalLabelModelGrader::Input], - labels: T::Array[String], - model: String, - name: String, - passing_labels: T::Array[String], - type: Symbol - } - ) - end - def to_hash - end - - class Input < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } - - # Text inputs to the model - can contain template strings. - sig do - returns( - T.any( - String, - OpenAI::Responses::ResponseInputText, - OpenAI::EvalLabelModelGrader::Input::Content::OutputText - ) - ) - end - attr_accessor :content - - # The role of the message input. One of `user`, `assistant`, `system`, or - # `developer`. - sig { returns(OpenAI::EvalLabelModelGrader::Input::Role::TaggedSymbol) } - attr_accessor :role - - # The type of the message input. Always `message`. - sig do - returns( - T.nilable(OpenAI::EvalLabelModelGrader::Input::Type::TaggedSymbol) - ) - end - attr_reader :type - - sig do - params(type: OpenAI::EvalLabelModelGrader::Input::Type::OrSymbol).void - end - attr_writer :type - - # A message input to the model with a role indicating instruction following - # hierarchy. Instructions given with the `developer` or `system` role take - # precedence over instructions given with the `user` role. Messages with the - # `assistant` role are presumed to have been generated by the model in previous - # interactions. - sig do - params( - content: - T.any( - String, - OpenAI::Responses::ResponseInputText::OrHash, - OpenAI::EvalLabelModelGrader::Input::Content::OutputText::OrHash - ), - role: OpenAI::EvalLabelModelGrader::Input::Role::OrSymbol, - type: OpenAI::EvalLabelModelGrader::Input::Type::OrSymbol - ).returns(T.attached_class) - end - def self.new( - # Text inputs to the model - can contain template strings. - content:, - # The role of the message input. One of `user`, `assistant`, `system`, or - # `developer`. - role:, - # The type of the message input. Always `message`. - type: nil - ) - end - - sig do - override.returns( - { - content: - T.any( - String, - OpenAI::Responses::ResponseInputText, - OpenAI::EvalLabelModelGrader::Input::Content::OutputText - ), - role: OpenAI::EvalLabelModelGrader::Input::Role::TaggedSymbol, - type: OpenAI::EvalLabelModelGrader::Input::Type::TaggedSymbol - } - ) - end - def to_hash - end - - # Text inputs to the model - can contain template strings. - module Content - extend OpenAI::Internal::Type::Union - - Variants = - T.type_alias do - T.any( - String, - OpenAI::Responses::ResponseInputText, - OpenAI::EvalLabelModelGrader::Input::Content::OutputText - ) - end - - class OutputText < OpenAI::Internal::Type::BaseModel - OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } - - # The text output from the model. - sig { returns(String) } - attr_accessor :text - - # The type of the output text. Always `output_text`. - sig { returns(Symbol) } - attr_accessor :type - - # A text output from the model. - sig { params(text: String, type: Symbol).returns(T.attached_class) } - def self.new( - # The text output from the model. - text:, - # The type of the output text. Always `output_text`. - type: :output_text - ) - end - - sig { override.returns({ text: String, type: Symbol }) } - def to_hash - end - end - - sig do - override.returns( - T::Array[OpenAI::EvalLabelModelGrader::Input::Content::Variants] - ) - end - def self.variants - end - end - - # The role of the message input. One of `user`, `assistant`, `system`, or - # `developer`. - module Role - extend OpenAI::Internal::Type::Enum - - TaggedSymbol = - T.type_alias do - T.all(Symbol, OpenAI::EvalLabelModelGrader::Input::Role) - end - OrSymbol = T.type_alias { T.any(Symbol, String) } - - USER = - T.let( - :user, - OpenAI::EvalLabelModelGrader::Input::Role::TaggedSymbol - ) - ASSISTANT = - T.let( - :assistant, - OpenAI::EvalLabelModelGrader::Input::Role::TaggedSymbol - ) - SYSTEM = - T.let( - :system, - OpenAI::EvalLabelModelGrader::Input::Role::TaggedSymbol - ) - DEVELOPER = - T.let( - :developer, - OpenAI::EvalLabelModelGrader::Input::Role::TaggedSymbol - ) - - sig do - override.returns( - T::Array[OpenAI::EvalLabelModelGrader::Input::Role::TaggedSymbol] - ) - end - def self.values - end - end - - # The type of the message input. Always `message`. - module Type - extend OpenAI::Internal::Type::Enum - - TaggedSymbol = - T.type_alias do - T.all(Symbol, OpenAI::EvalLabelModelGrader::Input::Type) - end - OrSymbol = T.type_alias { T.any(Symbol, String) } - - MESSAGE = - T.let( - :message, - OpenAI::EvalLabelModelGrader::Input::Type::TaggedSymbol - ) - - sig do - override.returns( - T::Array[OpenAI::EvalLabelModelGrader::Input::Type::TaggedSymbol] - ) - end - def self.values - end - end - end - end - end -end diff --git a/rbi/openai/models/eval_list_response.rbi b/rbi/openai/models/eval_list_response.rbi index b59f14c9..5b20006b 100644 --- a/rbi/openai/models/eval_list_response.rbi +++ b/rbi/openai/models/eval_list_response.rbi @@ -46,11 +46,11 @@ module OpenAI returns( T::Array[ T.any( - OpenAI::EvalLabelModelGrader, - OpenAI::EvalStringCheckGrader, - OpenAI::EvalTextSimilarityGrader, - OpenAI::Models::EvalListResponse::TestingCriterion::Python, - OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel + OpenAI::Graders::LabelModelGrader, + OpenAI::Graders::StringCheckGrader, + OpenAI::Models::EvalListResponse::TestingCriterion::EvalGraderTextSimilarity, + OpenAI::Models::EvalListResponse::TestingCriterion::EvalGraderPython, + OpenAI::Models::EvalListResponse::TestingCriterion::EvalGraderScoreModel ) ] ) @@ -77,11 +77,11 @@ module OpenAI testing_criteria: T::Array[ T.any( - OpenAI::EvalLabelModelGrader::OrHash, - OpenAI::EvalStringCheckGrader::OrHash, - OpenAI::EvalTextSimilarityGrader::OrHash, - OpenAI::Models::EvalListResponse::TestingCriterion::Python::OrHash, - OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::OrHash + OpenAI::Graders::LabelModelGrader::OrHash, + OpenAI::Graders::StringCheckGrader::OrHash, + OpenAI::Models::EvalListResponse::TestingCriterion::EvalGraderTextSimilarity::OrHash, + OpenAI::Models::EvalListResponse::TestingCriterion::EvalGraderPython::OrHash, + OpenAI::Models::EvalListResponse::TestingCriterion::EvalGraderScoreModel::OrHash ) ], object: Symbol @@ -126,11 +126,11 @@ module OpenAI testing_criteria: T::Array[ T.any( - OpenAI::EvalLabelModelGrader, - OpenAI::EvalStringCheckGrader, - OpenAI::EvalTextSimilarityGrader, - OpenAI::Models::EvalListResponse::TestingCriterion::Python, - OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel + OpenAI::Graders::LabelModelGrader, + OpenAI::Graders::StringCheckGrader, + OpenAI::Models::EvalListResponse::TestingCriterion::EvalGraderTextSimilarity, + OpenAI::Models::EvalListResponse::TestingCriterion::EvalGraderPython, + OpenAI::Models::EvalListResponse::TestingCriterion::EvalGraderScoreModel ) ] } @@ -170,36 +170,38 @@ module OpenAI Variants = T.type_alias do T.any( - OpenAI::EvalLabelModelGrader, - OpenAI::EvalStringCheckGrader, - OpenAI::EvalTextSimilarityGrader, - OpenAI::Models::EvalListResponse::TestingCriterion::Python, - OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel + OpenAI::Graders::LabelModelGrader, + OpenAI::Graders::StringCheckGrader, + OpenAI::Models::EvalListResponse::TestingCriterion::EvalGraderTextSimilarity, + OpenAI::Models::EvalListResponse::TestingCriterion::EvalGraderPython, + OpenAI::Models::EvalListResponse::TestingCriterion::EvalGraderScoreModel ) end - class Python < OpenAI::Internal::Type::BaseModel + class EvalGraderTextSimilarity < OpenAI::Models::Graders::TextSimilarityGrader OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } - # The name of the grader. - sig { returns(String) } - attr_accessor :name - - # The source code of the python script. - sig { returns(String) } - attr_accessor :source + # The threshold for the score. + sig { returns(Float) } + attr_accessor :pass_threshold - # The object type, which is always `python`. - sig { returns(Symbol) } - attr_accessor :type + # A TextSimilarityGrader object which grades text based on similarity metrics. + sig { params(pass_threshold: Float).returns(T.attached_class) } + def self.new( + # The threshold for the score. + pass_threshold: + ) + end - # The image tag to use for the python script. - sig { returns(T.nilable(String)) } - attr_reader :image_tag + sig { override.returns({ pass_threshold: Float }) } + def to_hash + end + end - sig { params(image_tag: String).void } - attr_writer :image_tag + class EvalGraderPython < OpenAI::Models::Graders::PythonGrader + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } # The threshold for the score. sig { returns(T.nilable(Float)) } @@ -209,70 +211,22 @@ module OpenAI attr_writer :pass_threshold # A PythonGrader object that runs a python script on the input. - sig do - params( - name: String, - source: String, - image_tag: String, - pass_threshold: Float, - type: Symbol - ).returns(T.attached_class) - end + sig { params(pass_threshold: Float).returns(T.attached_class) } def self.new( - # The name of the grader. - name:, - # The source code of the python script. - source:, - # The image tag to use for the python script. - image_tag: nil, # The threshold for the score. - pass_threshold: nil, - # The object type, which is always `python`. - type: :python + pass_threshold: nil ) end - sig do - override.returns( - { - name: String, - source: String, - type: Symbol, - image_tag: String, - pass_threshold: Float - } - ) - end + sig { override.returns({ pass_threshold: Float }) } def to_hash end end - class ScoreModel < OpenAI::Internal::Type::BaseModel + class EvalGraderScoreModel < OpenAI::Models::Graders::ScoreModelGrader OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } - # The input text. This may include template strings. - sig do - returns( - T::Array[ - OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input - ] - ) - end - attr_accessor :input - - # The model to use for the evaluation. - sig { returns(String) } - attr_accessor :model - - # The name of the grader. - sig { returns(String) } - attr_accessor :name - - # The object type, which is always `score_model`. - sig { returns(Symbol) } - attr_accessor :type - # The threshold for the score. sig { returns(T.nilable(Float)) } attr_reader :pass_threshold @@ -280,293 +234,17 @@ module OpenAI sig { params(pass_threshold: Float).void } attr_writer :pass_threshold - # The range of the score. Defaults to `[0, 1]`. - sig { returns(T.nilable(T::Array[Float])) } - attr_reader :range - - sig { params(range: T::Array[Float]).void } - attr_writer :range - - # The sampling parameters for the model. - sig { returns(T.nilable(T.anything)) } - attr_reader :sampling_params - - sig { params(sampling_params: T.anything).void } - attr_writer :sampling_params - # A ScoreModelGrader object that uses a model to assign a score to the input. - sig do - params( - input: - T::Array[ - OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::OrHash - ], - model: String, - name: String, - pass_threshold: Float, - range: T::Array[Float], - sampling_params: T.anything, - type: Symbol - ).returns(T.attached_class) - end + sig { params(pass_threshold: Float).returns(T.attached_class) } def self.new( - # The input text. This may include template strings. - input:, - # The model to use for the evaluation. - model:, - # The name of the grader. - name:, # The threshold for the score. - pass_threshold: nil, - # The range of the score. Defaults to `[0, 1]`. - range: nil, - # The sampling parameters for the model. - sampling_params: nil, - # The object type, which is always `score_model`. - type: :score_model + pass_threshold: nil ) end - sig do - override.returns( - { - input: - T::Array[ - OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input - ], - model: String, - name: String, - type: Symbol, - pass_threshold: Float, - range: T::Array[Float], - sampling_params: T.anything - } - ) - end + sig { override.returns({ pass_threshold: Float }) } def to_hash end - - class Input < OpenAI::Internal::Type::BaseModel - OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } - - # Text inputs to the model - can contain template strings. - sig do - returns( - T.any( - String, - OpenAI::Responses::ResponseInputText, - OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Content::OutputText - ) - ) - end - attr_accessor :content - - # The role of the message input. One of `user`, `assistant`, `system`, or - # `developer`. - sig do - returns( - OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Role::TaggedSymbol - ) - end - attr_accessor :role - - # The type of the message input. Always `message`. - sig do - returns( - T.nilable( - OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Type::TaggedSymbol - ) - ) - end - attr_reader :type - - sig do - params( - type: - OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Type::OrSymbol - ).void - end - attr_writer :type - - # A message input to the model with a role indicating instruction following - # hierarchy. Instructions given with the `developer` or `system` role take - # precedence over instructions given with the `user` role. Messages with the - # `assistant` role are presumed to have been generated by the model in previous - # interactions. - sig do - params( - content: - T.any( - String, - OpenAI::Responses::ResponseInputText::OrHash, - OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Content::OutputText::OrHash - ), - role: - OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Role::OrSymbol, - type: - OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Type::OrSymbol - ).returns(T.attached_class) - end - def self.new( - # Text inputs to the model - can contain template strings. - content:, - # The role of the message input. One of `user`, `assistant`, `system`, or - # `developer`. - role:, - # The type of the message input. Always `message`. - type: nil - ) - end - - sig do - override.returns( - { - content: - T.any( - String, - OpenAI::Responses::ResponseInputText, - OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Content::OutputText - ), - role: - OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Role::TaggedSymbol, - type: - OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Type::TaggedSymbol - } - ) - end - def to_hash - end - - # Text inputs to the model - can contain template strings. - module Content - extend OpenAI::Internal::Type::Union - - Variants = - T.type_alias do - T.any( - String, - OpenAI::Responses::ResponseInputText, - OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Content::OutputText - ) - end - - class OutputText < OpenAI::Internal::Type::BaseModel - OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } - - # The text output from the model. - sig { returns(String) } - attr_accessor :text - - # The type of the output text. Always `output_text`. - sig { returns(Symbol) } - attr_accessor :type - - # A text output from the model. - sig do - params(text: String, type: Symbol).returns(T.attached_class) - end - def self.new( - # The text output from the model. - text:, - # The type of the output text. Always `output_text`. - type: :output_text - ) - end - - sig { override.returns({ text: String, type: Symbol }) } - def to_hash - end - end - - sig do - override.returns( - T::Array[ - OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Content::Variants - ] - ) - end - def self.variants - end - end - - # The role of the message input. One of `user`, `assistant`, `system`, or - # `developer`. - module Role - extend OpenAI::Internal::Type::Enum - - TaggedSymbol = - T.type_alias do - T.all( - Symbol, - OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Role - ) - end - OrSymbol = T.type_alias { T.any(Symbol, String) } - - USER = - T.let( - :user, - OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Role::TaggedSymbol - ) - ASSISTANT = - T.let( - :assistant, - OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Role::TaggedSymbol - ) - SYSTEM = - T.let( - :system, - OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Role::TaggedSymbol - ) - DEVELOPER = - T.let( - :developer, - OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Role::TaggedSymbol - ) - - sig do - override.returns( - T::Array[ - OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Role::TaggedSymbol - ] - ) - end - def self.values - end - end - - # The type of the message input. Always `message`. - module Type - extend OpenAI::Internal::Type::Enum - - TaggedSymbol = - T.type_alias do - T.all( - Symbol, - OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Type - ) - end - OrSymbol = T.type_alias { T.any(Symbol, String) } - - MESSAGE = - T.let( - :message, - OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Type::TaggedSymbol - ) - - sig do - override.returns( - T::Array[ - OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Type::TaggedSymbol - ] - ) - end - def self.values - end - end - end end sig do diff --git a/rbi/openai/models/eval_retrieve_response.rbi b/rbi/openai/models/eval_retrieve_response.rbi index b6216729..cdeeaf69 100644 --- a/rbi/openai/models/eval_retrieve_response.rbi +++ b/rbi/openai/models/eval_retrieve_response.rbi @@ -46,11 +46,11 @@ module OpenAI returns( T::Array[ T.any( - OpenAI::EvalLabelModelGrader, - OpenAI::EvalStringCheckGrader, - OpenAI::EvalTextSimilarityGrader, - OpenAI::Models::EvalRetrieveResponse::TestingCriterion::Python, - OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel + OpenAI::Graders::LabelModelGrader, + OpenAI::Graders::StringCheckGrader, + OpenAI::Models::EvalRetrieveResponse::TestingCriterion::EvalGraderTextSimilarity, + OpenAI::Models::EvalRetrieveResponse::TestingCriterion::EvalGraderPython, + OpenAI::Models::EvalRetrieveResponse::TestingCriterion::EvalGraderScoreModel ) ] ) @@ -77,11 +77,11 @@ module OpenAI testing_criteria: T::Array[ T.any( - OpenAI::EvalLabelModelGrader::OrHash, - OpenAI::EvalStringCheckGrader::OrHash, - OpenAI::EvalTextSimilarityGrader::OrHash, - OpenAI::Models::EvalRetrieveResponse::TestingCriterion::Python::OrHash, - OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::OrHash + OpenAI::Graders::LabelModelGrader::OrHash, + OpenAI::Graders::StringCheckGrader::OrHash, + OpenAI::Models::EvalRetrieveResponse::TestingCriterion::EvalGraderTextSimilarity::OrHash, + OpenAI::Models::EvalRetrieveResponse::TestingCriterion::EvalGraderPython::OrHash, + OpenAI::Models::EvalRetrieveResponse::TestingCriterion::EvalGraderScoreModel::OrHash ) ], object: Symbol @@ -126,11 +126,11 @@ module OpenAI testing_criteria: T::Array[ T.any( - OpenAI::EvalLabelModelGrader, - OpenAI::EvalStringCheckGrader, - OpenAI::EvalTextSimilarityGrader, - OpenAI::Models::EvalRetrieveResponse::TestingCriterion::Python, - OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel + OpenAI::Graders::LabelModelGrader, + OpenAI::Graders::StringCheckGrader, + OpenAI::Models::EvalRetrieveResponse::TestingCriterion::EvalGraderTextSimilarity, + OpenAI::Models::EvalRetrieveResponse::TestingCriterion::EvalGraderPython, + OpenAI::Models::EvalRetrieveResponse::TestingCriterion::EvalGraderScoreModel ) ] } @@ -170,36 +170,38 @@ module OpenAI Variants = T.type_alias do T.any( - OpenAI::EvalLabelModelGrader, - OpenAI::EvalStringCheckGrader, - OpenAI::EvalTextSimilarityGrader, - OpenAI::Models::EvalRetrieveResponse::TestingCriterion::Python, - OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel + OpenAI::Graders::LabelModelGrader, + OpenAI::Graders::StringCheckGrader, + OpenAI::Models::EvalRetrieveResponse::TestingCriterion::EvalGraderTextSimilarity, + OpenAI::Models::EvalRetrieveResponse::TestingCriterion::EvalGraderPython, + OpenAI::Models::EvalRetrieveResponse::TestingCriterion::EvalGraderScoreModel ) end - class Python < OpenAI::Internal::Type::BaseModel + class EvalGraderTextSimilarity < OpenAI::Models::Graders::TextSimilarityGrader OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } - # The name of the grader. - sig { returns(String) } - attr_accessor :name - - # The source code of the python script. - sig { returns(String) } - attr_accessor :source + # The threshold for the score. + sig { returns(Float) } + attr_accessor :pass_threshold - # The object type, which is always `python`. - sig { returns(Symbol) } - attr_accessor :type + # A TextSimilarityGrader object which grades text based on similarity metrics. + sig { params(pass_threshold: Float).returns(T.attached_class) } + def self.new( + # The threshold for the score. + pass_threshold: + ) + end - # The image tag to use for the python script. - sig { returns(T.nilable(String)) } - attr_reader :image_tag + sig { override.returns({ pass_threshold: Float }) } + def to_hash + end + end - sig { params(image_tag: String).void } - attr_writer :image_tag + class EvalGraderPython < OpenAI::Models::Graders::PythonGrader + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } # The threshold for the score. sig { returns(T.nilable(Float)) } @@ -209,70 +211,22 @@ module OpenAI attr_writer :pass_threshold # A PythonGrader object that runs a python script on the input. - sig do - params( - name: String, - source: String, - image_tag: String, - pass_threshold: Float, - type: Symbol - ).returns(T.attached_class) - end + sig { params(pass_threshold: Float).returns(T.attached_class) } def self.new( - # The name of the grader. - name:, - # The source code of the python script. - source:, - # The image tag to use for the python script. - image_tag: nil, # The threshold for the score. - pass_threshold: nil, - # The object type, which is always `python`. - type: :python + pass_threshold: nil ) end - sig do - override.returns( - { - name: String, - source: String, - type: Symbol, - image_tag: String, - pass_threshold: Float - } - ) - end + sig { override.returns({ pass_threshold: Float }) } def to_hash end end - class ScoreModel < OpenAI::Internal::Type::BaseModel + class EvalGraderScoreModel < OpenAI::Models::Graders::ScoreModelGrader OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } - # The input text. This may include template strings. - sig do - returns( - T::Array[ - OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input - ] - ) - end - attr_accessor :input - - # The model to use for the evaluation. - sig { returns(String) } - attr_accessor :model - - # The name of the grader. - sig { returns(String) } - attr_accessor :name - - # The object type, which is always `score_model`. - sig { returns(Symbol) } - attr_accessor :type - # The threshold for the score. sig { returns(T.nilable(Float)) } attr_reader :pass_threshold @@ -280,293 +234,17 @@ module OpenAI sig { params(pass_threshold: Float).void } attr_writer :pass_threshold - # The range of the score. Defaults to `[0, 1]`. - sig { returns(T.nilable(T::Array[Float])) } - attr_reader :range - - sig { params(range: T::Array[Float]).void } - attr_writer :range - - # The sampling parameters for the model. - sig { returns(T.nilable(T.anything)) } - attr_reader :sampling_params - - sig { params(sampling_params: T.anything).void } - attr_writer :sampling_params - # A ScoreModelGrader object that uses a model to assign a score to the input. - sig do - params( - input: - T::Array[ - OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::OrHash - ], - model: String, - name: String, - pass_threshold: Float, - range: T::Array[Float], - sampling_params: T.anything, - type: Symbol - ).returns(T.attached_class) - end + sig { params(pass_threshold: Float).returns(T.attached_class) } def self.new( - # The input text. This may include template strings. - input:, - # The model to use for the evaluation. - model:, - # The name of the grader. - name:, # The threshold for the score. - pass_threshold: nil, - # The range of the score. Defaults to `[0, 1]`. - range: nil, - # The sampling parameters for the model. - sampling_params: nil, - # The object type, which is always `score_model`. - type: :score_model + pass_threshold: nil ) end - sig do - override.returns( - { - input: - T::Array[ - OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input - ], - model: String, - name: String, - type: Symbol, - pass_threshold: Float, - range: T::Array[Float], - sampling_params: T.anything - } - ) - end + sig { override.returns({ pass_threshold: Float }) } def to_hash end - - class Input < OpenAI::Internal::Type::BaseModel - OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } - - # Text inputs to the model - can contain template strings. - sig do - returns( - T.any( - String, - OpenAI::Responses::ResponseInputText, - OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Content::OutputText - ) - ) - end - attr_accessor :content - - # The role of the message input. One of `user`, `assistant`, `system`, or - # `developer`. - sig do - returns( - OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Role::TaggedSymbol - ) - end - attr_accessor :role - - # The type of the message input. Always `message`. - sig do - returns( - T.nilable( - OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Type::TaggedSymbol - ) - ) - end - attr_reader :type - - sig do - params( - type: - OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Type::OrSymbol - ).void - end - attr_writer :type - - # A message input to the model with a role indicating instruction following - # hierarchy. Instructions given with the `developer` or `system` role take - # precedence over instructions given with the `user` role. Messages with the - # `assistant` role are presumed to have been generated by the model in previous - # interactions. - sig do - params( - content: - T.any( - String, - OpenAI::Responses::ResponseInputText::OrHash, - OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Content::OutputText::OrHash - ), - role: - OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Role::OrSymbol, - type: - OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Type::OrSymbol - ).returns(T.attached_class) - end - def self.new( - # Text inputs to the model - can contain template strings. - content:, - # The role of the message input. One of `user`, `assistant`, `system`, or - # `developer`. - role:, - # The type of the message input. Always `message`. - type: nil - ) - end - - sig do - override.returns( - { - content: - T.any( - String, - OpenAI::Responses::ResponseInputText, - OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Content::OutputText - ), - role: - OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Role::TaggedSymbol, - type: - OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Type::TaggedSymbol - } - ) - end - def to_hash - end - - # Text inputs to the model - can contain template strings. - module Content - extend OpenAI::Internal::Type::Union - - Variants = - T.type_alias do - T.any( - String, - OpenAI::Responses::ResponseInputText, - OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Content::OutputText - ) - end - - class OutputText < OpenAI::Internal::Type::BaseModel - OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } - - # The text output from the model. - sig { returns(String) } - attr_accessor :text - - # The type of the output text. Always `output_text`. - sig { returns(Symbol) } - attr_accessor :type - - # A text output from the model. - sig do - params(text: String, type: Symbol).returns(T.attached_class) - end - def self.new( - # The text output from the model. - text:, - # The type of the output text. Always `output_text`. - type: :output_text - ) - end - - sig { override.returns({ text: String, type: Symbol }) } - def to_hash - end - end - - sig do - override.returns( - T::Array[ - OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Content::Variants - ] - ) - end - def self.variants - end - end - - # The role of the message input. One of `user`, `assistant`, `system`, or - # `developer`. - module Role - extend OpenAI::Internal::Type::Enum - - TaggedSymbol = - T.type_alias do - T.all( - Symbol, - OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Role - ) - end - OrSymbol = T.type_alias { T.any(Symbol, String) } - - USER = - T.let( - :user, - OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Role::TaggedSymbol - ) - ASSISTANT = - T.let( - :assistant, - OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Role::TaggedSymbol - ) - SYSTEM = - T.let( - :system, - OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Role::TaggedSymbol - ) - DEVELOPER = - T.let( - :developer, - OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Role::TaggedSymbol - ) - - sig do - override.returns( - T::Array[ - OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Role::TaggedSymbol - ] - ) - end - def self.values - end - end - - # The type of the message input. Always `message`. - module Type - extend OpenAI::Internal::Type::Enum - - TaggedSymbol = - T.type_alias do - T.all( - Symbol, - OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Type - ) - end - OrSymbol = T.type_alias { T.any(Symbol, String) } - - MESSAGE = - T.let( - :message, - OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Type::TaggedSymbol - ) - - sig do - override.returns( - T::Array[ - OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Type::TaggedSymbol - ] - ) - end - def self.values - end - end - end end sig do diff --git a/rbi/openai/models/eval_string_check_grader.rbi b/rbi/openai/models/eval_string_check_grader.rbi deleted file mode 100644 index b22c1497..00000000 --- a/rbi/openai/models/eval_string_check_grader.rbi +++ /dev/null @@ -1,94 +0,0 @@ -# typed: strong - -module OpenAI - module Models - class EvalStringCheckGrader < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } - - # The input text. This may include template strings. - sig { returns(String) } - attr_accessor :input - - # The name of the grader. - sig { returns(String) } - attr_accessor :name - - # The string check operation to perform. One of `eq`, `ne`, `like`, or `ilike`. - sig { returns(OpenAI::EvalStringCheckGrader::Operation::OrSymbol) } - attr_accessor :operation - - # The reference text. This may include template strings. - sig { returns(String) } - attr_accessor :reference - - # The object type, which is always `string_check`. - sig { returns(Symbol) } - attr_accessor :type - - # A StringCheckGrader object that performs a string comparison between input and - # reference using a specified operation. - sig do - params( - input: String, - name: String, - operation: OpenAI::EvalStringCheckGrader::Operation::OrSymbol, - reference: String, - type: Symbol - ).returns(T.attached_class) - end - def self.new( - # The input text. This may include template strings. - input:, - # The name of the grader. - name:, - # The string check operation to perform. One of `eq`, `ne`, `like`, or `ilike`. - operation:, - # The reference text. This may include template strings. - reference:, - # The object type, which is always `string_check`. - type: :string_check - ) - end - - sig do - override.returns( - { - input: String, - name: String, - operation: OpenAI::EvalStringCheckGrader::Operation::OrSymbol, - reference: String, - type: Symbol - } - ) - end - def to_hash - end - - # The string check operation to perform. One of `eq`, `ne`, `like`, or `ilike`. - module Operation - extend OpenAI::Internal::Type::Enum - - TaggedSymbol = - T.type_alias do - T.all(Symbol, OpenAI::EvalStringCheckGrader::Operation) - end - OrSymbol = T.type_alias { T.any(Symbol, String) } - - EQ = T.let(:eq, OpenAI::EvalStringCheckGrader::Operation::TaggedSymbol) - NE = T.let(:ne, OpenAI::EvalStringCheckGrader::Operation::TaggedSymbol) - LIKE = - T.let(:like, OpenAI::EvalStringCheckGrader::Operation::TaggedSymbol) - ILIKE = - T.let(:ilike, OpenAI::EvalStringCheckGrader::Operation::TaggedSymbol) - - sig do - override.returns( - T::Array[OpenAI::EvalStringCheckGrader::Operation::TaggedSymbol] - ) - end - def self.values - end - end - end - end -end diff --git a/rbi/openai/models/eval_text_similarity_grader.rbi b/rbi/openai/models/eval_text_similarity_grader.rbi deleted file mode 100644 index fad82523..00000000 --- a/rbi/openai/models/eval_text_similarity_grader.rbi +++ /dev/null @@ -1,157 +0,0 @@ -# typed: strong - -module OpenAI - module Models - class EvalTextSimilarityGrader < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } - - # The evaluation metric to use. One of `fuzzy_match`, `bleu`, `gleu`, `meteor`, - # `rouge_1`, `rouge_2`, `rouge_3`, `rouge_4`, `rouge_5`, or `rouge_l`. - sig do - returns(OpenAI::EvalTextSimilarityGrader::EvaluationMetric::OrSymbol) - end - attr_accessor :evaluation_metric - - # The text being graded. - sig { returns(String) } - attr_accessor :input - - # A float score where a value greater than or equal indicates a passing grade. - sig { returns(Float) } - attr_accessor :pass_threshold - - # The text being graded against. - sig { returns(String) } - attr_accessor :reference - - # The type of grader. - sig { returns(Symbol) } - attr_accessor :type - - # The name of the grader. - sig { returns(T.nilable(String)) } - attr_reader :name - - sig { params(name: String).void } - attr_writer :name - - # A TextSimilarityGrader object which grades text based on similarity metrics. - sig do - params( - evaluation_metric: - OpenAI::EvalTextSimilarityGrader::EvaluationMetric::OrSymbol, - input: String, - pass_threshold: Float, - reference: String, - name: String, - type: Symbol - ).returns(T.attached_class) - end - def self.new( - # The evaluation metric to use. One of `fuzzy_match`, `bleu`, `gleu`, `meteor`, - # `rouge_1`, `rouge_2`, `rouge_3`, `rouge_4`, `rouge_5`, or `rouge_l`. - evaluation_metric:, - # The text being graded. - input:, - # A float score where a value greater than or equal indicates a passing grade. - pass_threshold:, - # The text being graded against. - reference:, - # The name of the grader. - name: nil, - # The type of grader. - type: :text_similarity - ) - end - - sig do - override.returns( - { - evaluation_metric: - OpenAI::EvalTextSimilarityGrader::EvaluationMetric::OrSymbol, - input: String, - pass_threshold: Float, - reference: String, - type: Symbol, - name: String - } - ) - end - def to_hash - end - - # The evaluation metric to use. One of `fuzzy_match`, `bleu`, `gleu`, `meteor`, - # `rouge_1`, `rouge_2`, `rouge_3`, `rouge_4`, `rouge_5`, or `rouge_l`. - module EvaluationMetric - extend OpenAI::Internal::Type::Enum - - TaggedSymbol = - T.type_alias do - T.all(Symbol, OpenAI::EvalTextSimilarityGrader::EvaluationMetric) - end - OrSymbol = T.type_alias { T.any(Symbol, String) } - - FUZZY_MATCH = - T.let( - :fuzzy_match, - OpenAI::EvalTextSimilarityGrader::EvaluationMetric::TaggedSymbol - ) - BLEU = - T.let( - :bleu, - OpenAI::EvalTextSimilarityGrader::EvaluationMetric::TaggedSymbol - ) - GLEU = - T.let( - :gleu, - OpenAI::EvalTextSimilarityGrader::EvaluationMetric::TaggedSymbol - ) - METEOR = - T.let( - :meteor, - OpenAI::EvalTextSimilarityGrader::EvaluationMetric::TaggedSymbol - ) - ROUGE_1 = - T.let( - :rouge_1, - OpenAI::EvalTextSimilarityGrader::EvaluationMetric::TaggedSymbol - ) - ROUGE_2 = - T.let( - :rouge_2, - OpenAI::EvalTextSimilarityGrader::EvaluationMetric::TaggedSymbol - ) - ROUGE_3 = - T.let( - :rouge_3, - OpenAI::EvalTextSimilarityGrader::EvaluationMetric::TaggedSymbol - ) - ROUGE_4 = - T.let( - :rouge_4, - OpenAI::EvalTextSimilarityGrader::EvaluationMetric::TaggedSymbol - ) - ROUGE_5 = - T.let( - :rouge_5, - OpenAI::EvalTextSimilarityGrader::EvaluationMetric::TaggedSymbol - ) - ROUGE_L = - T.let( - :rouge_l, - OpenAI::EvalTextSimilarityGrader::EvaluationMetric::TaggedSymbol - ) - - sig do - override.returns( - T::Array[ - OpenAI::EvalTextSimilarityGrader::EvaluationMetric::TaggedSymbol - ] - ) - end - def self.values - end - end - end - end -end diff --git a/rbi/openai/models/eval_update_response.rbi b/rbi/openai/models/eval_update_response.rbi index b3c85236..a8c27dd8 100644 --- a/rbi/openai/models/eval_update_response.rbi +++ b/rbi/openai/models/eval_update_response.rbi @@ -46,11 +46,11 @@ module OpenAI returns( T::Array[ T.any( - OpenAI::EvalLabelModelGrader, - OpenAI::EvalStringCheckGrader, - OpenAI::EvalTextSimilarityGrader, - OpenAI::Models::EvalUpdateResponse::TestingCriterion::Python, - OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel + OpenAI::Graders::LabelModelGrader, + OpenAI::Graders::StringCheckGrader, + OpenAI::Models::EvalUpdateResponse::TestingCriterion::EvalGraderTextSimilarity, + OpenAI::Models::EvalUpdateResponse::TestingCriterion::EvalGraderPython, + OpenAI::Models::EvalUpdateResponse::TestingCriterion::EvalGraderScoreModel ) ] ) @@ -77,11 +77,11 @@ module OpenAI testing_criteria: T::Array[ T.any( - OpenAI::EvalLabelModelGrader::OrHash, - OpenAI::EvalStringCheckGrader::OrHash, - OpenAI::EvalTextSimilarityGrader::OrHash, - OpenAI::Models::EvalUpdateResponse::TestingCriterion::Python::OrHash, - OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::OrHash + OpenAI::Graders::LabelModelGrader::OrHash, + OpenAI::Graders::StringCheckGrader::OrHash, + OpenAI::Models::EvalUpdateResponse::TestingCriterion::EvalGraderTextSimilarity::OrHash, + OpenAI::Models::EvalUpdateResponse::TestingCriterion::EvalGraderPython::OrHash, + OpenAI::Models::EvalUpdateResponse::TestingCriterion::EvalGraderScoreModel::OrHash ) ], object: Symbol @@ -126,11 +126,11 @@ module OpenAI testing_criteria: T::Array[ T.any( - OpenAI::EvalLabelModelGrader, - OpenAI::EvalStringCheckGrader, - OpenAI::EvalTextSimilarityGrader, - OpenAI::Models::EvalUpdateResponse::TestingCriterion::Python, - OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel + OpenAI::Graders::LabelModelGrader, + OpenAI::Graders::StringCheckGrader, + OpenAI::Models::EvalUpdateResponse::TestingCriterion::EvalGraderTextSimilarity, + OpenAI::Models::EvalUpdateResponse::TestingCriterion::EvalGraderPython, + OpenAI::Models::EvalUpdateResponse::TestingCriterion::EvalGraderScoreModel ) ] } @@ -170,36 +170,38 @@ module OpenAI Variants = T.type_alias do T.any( - OpenAI::EvalLabelModelGrader, - OpenAI::EvalStringCheckGrader, - OpenAI::EvalTextSimilarityGrader, - OpenAI::Models::EvalUpdateResponse::TestingCriterion::Python, - OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel + OpenAI::Graders::LabelModelGrader, + OpenAI::Graders::StringCheckGrader, + OpenAI::Models::EvalUpdateResponse::TestingCriterion::EvalGraderTextSimilarity, + OpenAI::Models::EvalUpdateResponse::TestingCriterion::EvalGraderPython, + OpenAI::Models::EvalUpdateResponse::TestingCriterion::EvalGraderScoreModel ) end - class Python < OpenAI::Internal::Type::BaseModel + class EvalGraderTextSimilarity < OpenAI::Models::Graders::TextSimilarityGrader OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } - # The name of the grader. - sig { returns(String) } - attr_accessor :name - - # The source code of the python script. - sig { returns(String) } - attr_accessor :source + # The threshold for the score. + sig { returns(Float) } + attr_accessor :pass_threshold - # The object type, which is always `python`. - sig { returns(Symbol) } - attr_accessor :type + # A TextSimilarityGrader object which grades text based on similarity metrics. + sig { params(pass_threshold: Float).returns(T.attached_class) } + def self.new( + # The threshold for the score. + pass_threshold: + ) + end - # The image tag to use for the python script. - sig { returns(T.nilable(String)) } - attr_reader :image_tag + sig { override.returns({ pass_threshold: Float }) } + def to_hash + end + end - sig { params(image_tag: String).void } - attr_writer :image_tag + class EvalGraderPython < OpenAI::Models::Graders::PythonGrader + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } # The threshold for the score. sig { returns(T.nilable(Float)) } @@ -209,70 +211,22 @@ module OpenAI attr_writer :pass_threshold # A PythonGrader object that runs a python script on the input. - sig do - params( - name: String, - source: String, - image_tag: String, - pass_threshold: Float, - type: Symbol - ).returns(T.attached_class) - end + sig { params(pass_threshold: Float).returns(T.attached_class) } def self.new( - # The name of the grader. - name:, - # The source code of the python script. - source:, - # The image tag to use for the python script. - image_tag: nil, # The threshold for the score. - pass_threshold: nil, - # The object type, which is always `python`. - type: :python + pass_threshold: nil ) end - sig do - override.returns( - { - name: String, - source: String, - type: Symbol, - image_tag: String, - pass_threshold: Float - } - ) - end + sig { override.returns({ pass_threshold: Float }) } def to_hash end end - class ScoreModel < OpenAI::Internal::Type::BaseModel + class EvalGraderScoreModel < OpenAI::Models::Graders::ScoreModelGrader OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } - # The input text. This may include template strings. - sig do - returns( - T::Array[ - OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input - ] - ) - end - attr_accessor :input - - # The model to use for the evaluation. - sig { returns(String) } - attr_accessor :model - - # The name of the grader. - sig { returns(String) } - attr_accessor :name - - # The object type, which is always `score_model`. - sig { returns(Symbol) } - attr_accessor :type - # The threshold for the score. sig { returns(T.nilable(Float)) } attr_reader :pass_threshold @@ -280,293 +234,17 @@ module OpenAI sig { params(pass_threshold: Float).void } attr_writer :pass_threshold - # The range of the score. Defaults to `[0, 1]`. - sig { returns(T.nilable(T::Array[Float])) } - attr_reader :range - - sig { params(range: T::Array[Float]).void } - attr_writer :range - - # The sampling parameters for the model. - sig { returns(T.nilable(T.anything)) } - attr_reader :sampling_params - - sig { params(sampling_params: T.anything).void } - attr_writer :sampling_params - # A ScoreModelGrader object that uses a model to assign a score to the input. - sig do - params( - input: - T::Array[ - OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::OrHash - ], - model: String, - name: String, - pass_threshold: Float, - range: T::Array[Float], - sampling_params: T.anything, - type: Symbol - ).returns(T.attached_class) - end + sig { params(pass_threshold: Float).returns(T.attached_class) } def self.new( - # The input text. This may include template strings. - input:, - # The model to use for the evaluation. - model:, - # The name of the grader. - name:, # The threshold for the score. - pass_threshold: nil, - # The range of the score. Defaults to `[0, 1]`. - range: nil, - # The sampling parameters for the model. - sampling_params: nil, - # The object type, which is always `score_model`. - type: :score_model + pass_threshold: nil ) end - sig do - override.returns( - { - input: - T::Array[ - OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input - ], - model: String, - name: String, - type: Symbol, - pass_threshold: Float, - range: T::Array[Float], - sampling_params: T.anything - } - ) - end + sig { override.returns({ pass_threshold: Float }) } def to_hash end - - class Input < OpenAI::Internal::Type::BaseModel - OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } - - # Text inputs to the model - can contain template strings. - sig do - returns( - T.any( - String, - OpenAI::Responses::ResponseInputText, - OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Content::OutputText - ) - ) - end - attr_accessor :content - - # The role of the message input. One of `user`, `assistant`, `system`, or - # `developer`. - sig do - returns( - OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Role::TaggedSymbol - ) - end - attr_accessor :role - - # The type of the message input. Always `message`. - sig do - returns( - T.nilable( - OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Type::TaggedSymbol - ) - ) - end - attr_reader :type - - sig do - params( - type: - OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Type::OrSymbol - ).void - end - attr_writer :type - - # A message input to the model with a role indicating instruction following - # hierarchy. Instructions given with the `developer` or `system` role take - # precedence over instructions given with the `user` role. Messages with the - # `assistant` role are presumed to have been generated by the model in previous - # interactions. - sig do - params( - content: - T.any( - String, - OpenAI::Responses::ResponseInputText::OrHash, - OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Content::OutputText::OrHash - ), - role: - OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Role::OrSymbol, - type: - OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Type::OrSymbol - ).returns(T.attached_class) - end - def self.new( - # Text inputs to the model - can contain template strings. - content:, - # The role of the message input. One of `user`, `assistant`, `system`, or - # `developer`. - role:, - # The type of the message input. Always `message`. - type: nil - ) - end - - sig do - override.returns( - { - content: - T.any( - String, - OpenAI::Responses::ResponseInputText, - OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Content::OutputText - ), - role: - OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Role::TaggedSymbol, - type: - OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Type::TaggedSymbol - } - ) - end - def to_hash - end - - # Text inputs to the model - can contain template strings. - module Content - extend OpenAI::Internal::Type::Union - - Variants = - T.type_alias do - T.any( - String, - OpenAI::Responses::ResponseInputText, - OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Content::OutputText - ) - end - - class OutputText < OpenAI::Internal::Type::BaseModel - OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } - - # The text output from the model. - sig { returns(String) } - attr_accessor :text - - # The type of the output text. Always `output_text`. - sig { returns(Symbol) } - attr_accessor :type - - # A text output from the model. - sig do - params(text: String, type: Symbol).returns(T.attached_class) - end - def self.new( - # The text output from the model. - text:, - # The type of the output text. Always `output_text`. - type: :output_text - ) - end - - sig { override.returns({ text: String, type: Symbol }) } - def to_hash - end - end - - sig do - override.returns( - T::Array[ - OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Content::Variants - ] - ) - end - def self.variants - end - end - - # The role of the message input. One of `user`, `assistant`, `system`, or - # `developer`. - module Role - extend OpenAI::Internal::Type::Enum - - TaggedSymbol = - T.type_alias do - T.all( - Symbol, - OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Role - ) - end - OrSymbol = T.type_alias { T.any(Symbol, String) } - - USER = - T.let( - :user, - OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Role::TaggedSymbol - ) - ASSISTANT = - T.let( - :assistant, - OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Role::TaggedSymbol - ) - SYSTEM = - T.let( - :system, - OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Role::TaggedSymbol - ) - DEVELOPER = - T.let( - :developer, - OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Role::TaggedSymbol - ) - - sig do - override.returns( - T::Array[ - OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Role::TaggedSymbol - ] - ) - end - def self.values - end - end - - # The type of the message input. Always `message`. - module Type - extend OpenAI::Internal::Type::Enum - - TaggedSymbol = - T.type_alias do - T.all( - Symbol, - OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Type - ) - end - OrSymbol = T.type_alias { T.any(Symbol, String) } - - MESSAGE = - T.let( - :message, - OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Type::TaggedSymbol - ) - - sig do - override.returns( - T::Array[ - OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Type::TaggedSymbol - ] - ) - end - def self.values - end - end - end end sig do diff --git a/rbi/openai/models/fine_tuning/alpha/grader_run_params.rbi b/rbi/openai/models/fine_tuning/alpha/grader_run_params.rbi new file mode 100644 index 00000000..b2df808e --- /dev/null +++ b/rbi/openai/models/fine_tuning/alpha/grader_run_params.rbi @@ -0,0 +1,143 @@ +# typed: strong + +module OpenAI + module Models + module FineTuning + module Alpha + class GraderRunParams < OpenAI::Internal::Type::BaseModel + extend OpenAI::Internal::Type::RequestParameters::Converter + include OpenAI::Internal::Type::RequestParameters + + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + + # The grader used for the fine-tuning job. + sig do + returns( + T.any( + OpenAI::Graders::StringCheckGrader, + OpenAI::Graders::TextSimilarityGrader, + OpenAI::Graders::PythonGrader, + OpenAI::Graders::ScoreModelGrader, + OpenAI::Graders::MultiGrader + ) + ) + end + attr_accessor :grader + + # The model sample to be evaluated. + sig { returns(String) } + attr_accessor :model_sample + + # The reference answer for the evaluation. + sig do + returns(T.any(String, T.anything, T::Array[T.anything], Float)) + end + attr_accessor :reference_answer + + sig do + params( + grader: + T.any( + OpenAI::Graders::StringCheckGrader::OrHash, + OpenAI::Graders::TextSimilarityGrader::OrHash, + OpenAI::Graders::PythonGrader::OrHash, + OpenAI::Graders::ScoreModelGrader::OrHash, + OpenAI::Graders::MultiGrader::OrHash + ), + model_sample: String, + reference_answer: + T.any(String, T.anything, T::Array[T.anything], Float), + request_options: OpenAI::RequestOptions::OrHash + ).returns(T.attached_class) + end + def self.new( + # The grader used for the fine-tuning job. + grader:, + # The model sample to be evaluated. + model_sample:, + # The reference answer for the evaluation. + reference_answer:, + request_options: {} + ) + end + + sig do + override.returns( + { + grader: + T.any( + OpenAI::Graders::StringCheckGrader, + OpenAI::Graders::TextSimilarityGrader, + OpenAI::Graders::PythonGrader, + OpenAI::Graders::ScoreModelGrader, + OpenAI::Graders::MultiGrader + ), + model_sample: String, + reference_answer: + T.any(String, T.anything, T::Array[T.anything], Float), + request_options: OpenAI::RequestOptions + } + ) + end + def to_hash + end + + # The grader used for the fine-tuning job. + module Grader + extend OpenAI::Internal::Type::Union + + Variants = + T.type_alias do + T.any( + OpenAI::Graders::StringCheckGrader, + OpenAI::Graders::TextSimilarityGrader, + OpenAI::Graders::PythonGrader, + OpenAI::Graders::ScoreModelGrader, + OpenAI::Graders::MultiGrader + ) + end + + sig do + override.returns( + T::Array[ + OpenAI::FineTuning::Alpha::GraderRunParams::Grader::Variants + ] + ) + end + def self.variants + end + end + + # The reference answer for the evaluation. + module ReferenceAnswer + extend OpenAI::Internal::Type::Union + + Variants = + T.type_alias do + T.any(String, T.anything, T::Array[T.anything], Float) + end + + sig do + override.returns( + T::Array[ + OpenAI::FineTuning::Alpha::GraderRunParams::ReferenceAnswer::Variants + ] + ) + end + def self.variants + end + + UnionMember2Array = + T.let( + OpenAI::Internal::Type::ArrayOf[ + OpenAI::Internal::Type::Unknown + ], + OpenAI::Internal::Type::Converter + ) + end + end + end + end + end +end diff --git a/rbi/openai/models/fine_tuning/alpha/grader_run_response.rbi b/rbi/openai/models/fine_tuning/alpha/grader_run_response.rbi new file mode 100644 index 00000000..4db912c8 --- /dev/null +++ b/rbi/openai/models/fine_tuning/alpha/grader_run_response.rbi @@ -0,0 +1,253 @@ +# typed: strong + +module OpenAI + module Models + module FineTuning + module Alpha + class GraderRunResponse < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + + sig do + returns( + OpenAI::Models::FineTuning::Alpha::GraderRunResponse::Metadata + ) + end + attr_reader :metadata + + sig do + params( + metadata: + OpenAI::Models::FineTuning::Alpha::GraderRunResponse::Metadata::OrHash + ).void + end + attr_writer :metadata + + sig { returns(T::Hash[Symbol, T.anything]) } + attr_accessor :model_grader_token_usage_per_model + + sig { returns(Float) } + attr_accessor :reward + + sig { returns(T::Hash[Symbol, T.anything]) } + attr_accessor :sub_rewards + + sig do + params( + metadata: + OpenAI::Models::FineTuning::Alpha::GraderRunResponse::Metadata::OrHash, + model_grader_token_usage_per_model: T::Hash[Symbol, T.anything], + reward: Float, + sub_rewards: T::Hash[Symbol, T.anything] + ).returns(T.attached_class) + end + def self.new( + metadata:, + model_grader_token_usage_per_model:, + reward:, + sub_rewards: + ) + end + + sig do + override.returns( + { + metadata: + OpenAI::Models::FineTuning::Alpha::GraderRunResponse::Metadata, + model_grader_token_usage_per_model: T::Hash[Symbol, T.anything], + reward: Float, + sub_rewards: T::Hash[Symbol, T.anything] + } + ) + end + def to_hash + end + + class Metadata < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + + sig do + returns( + OpenAI::Models::FineTuning::Alpha::GraderRunResponse::Metadata::Errors + ) + end + attr_reader :errors + + sig do + params( + errors: + OpenAI::Models::FineTuning::Alpha::GraderRunResponse::Metadata::Errors::OrHash + ).void + end + attr_writer :errors + + sig { returns(Float) } + attr_accessor :execution_time + + sig { returns(String) } + attr_accessor :name + + sig { returns(T.nilable(String)) } + attr_accessor :sampled_model_name + + sig { returns(T::Hash[Symbol, T.anything]) } + attr_accessor :scores + + sig { returns(T.nilable(Integer)) } + attr_accessor :token_usage + + sig { returns(String) } + attr_accessor :type + + sig do + params( + errors: + OpenAI::Models::FineTuning::Alpha::GraderRunResponse::Metadata::Errors::OrHash, + execution_time: Float, + name: String, + sampled_model_name: T.nilable(String), + scores: T::Hash[Symbol, T.anything], + token_usage: T.nilable(Integer), + type: String + ).returns(T.attached_class) + end + def self.new( + errors:, + execution_time:, + name:, + sampled_model_name:, + scores:, + token_usage:, + type: + ) + end + + sig do + override.returns( + { + errors: + OpenAI::Models::FineTuning::Alpha::GraderRunResponse::Metadata::Errors, + execution_time: Float, + name: String, + sampled_model_name: T.nilable(String), + scores: T::Hash[Symbol, T.anything], + token_usage: T.nilable(Integer), + type: String + } + ) + end + def to_hash + end + + class Errors < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + + sig { returns(T::Boolean) } + attr_accessor :formula_parse_error + + sig { returns(T::Boolean) } + attr_accessor :invalid_variable_error + + sig { returns(T::Boolean) } + attr_accessor :model_grader_parse_error + + sig { returns(T::Boolean) } + attr_accessor :model_grader_refusal_error + + sig { returns(T::Boolean) } + attr_accessor :model_grader_server_error + + sig { returns(T.nilable(String)) } + attr_accessor :model_grader_server_error_details + + sig { returns(T::Boolean) } + attr_accessor :other_error + + sig { returns(T::Boolean) } + attr_accessor :python_grader_runtime_error + + sig { returns(T.nilable(String)) } + attr_accessor :python_grader_runtime_error_details + + sig { returns(T::Boolean) } + attr_accessor :python_grader_server_error + + sig { returns(T.nilable(String)) } + attr_accessor :python_grader_server_error_type + + sig { returns(T::Boolean) } + attr_accessor :sample_parse_error + + sig { returns(T::Boolean) } + attr_accessor :truncated_observation_error + + sig { returns(T::Boolean) } + attr_accessor :unresponsive_reward_error + + sig do + params( + formula_parse_error: T::Boolean, + invalid_variable_error: T::Boolean, + model_grader_parse_error: T::Boolean, + model_grader_refusal_error: T::Boolean, + model_grader_server_error: T::Boolean, + model_grader_server_error_details: T.nilable(String), + other_error: T::Boolean, + python_grader_runtime_error: T::Boolean, + python_grader_runtime_error_details: T.nilable(String), + python_grader_server_error: T::Boolean, + python_grader_server_error_type: T.nilable(String), + sample_parse_error: T::Boolean, + truncated_observation_error: T::Boolean, + unresponsive_reward_error: T::Boolean + ).returns(T.attached_class) + end + def self.new( + formula_parse_error:, + invalid_variable_error:, + model_grader_parse_error:, + model_grader_refusal_error:, + model_grader_server_error:, + model_grader_server_error_details:, + other_error:, + python_grader_runtime_error:, + python_grader_runtime_error_details:, + python_grader_server_error:, + python_grader_server_error_type:, + sample_parse_error:, + truncated_observation_error:, + unresponsive_reward_error: + ) + end + + sig do + override.returns( + { + formula_parse_error: T::Boolean, + invalid_variable_error: T::Boolean, + model_grader_parse_error: T::Boolean, + model_grader_refusal_error: T::Boolean, + model_grader_server_error: T::Boolean, + model_grader_server_error_details: T.nilable(String), + other_error: T::Boolean, + python_grader_runtime_error: T::Boolean, + python_grader_runtime_error_details: T.nilable(String), + python_grader_server_error: T::Boolean, + python_grader_server_error_type: T.nilable(String), + sample_parse_error: T::Boolean, + truncated_observation_error: T::Boolean, + unresponsive_reward_error: T::Boolean + } + ) + end + def to_hash + end + end + end + end + end + end + end +end diff --git a/rbi/openai/models/fine_tuning/alpha/grader_validate_params.rbi b/rbi/openai/models/fine_tuning/alpha/grader_validate_params.rbi new file mode 100644 index 00000000..461e9373 --- /dev/null +++ b/rbi/openai/models/fine_tuning/alpha/grader_validate_params.rbi @@ -0,0 +1,95 @@ +# typed: strong + +module OpenAI + module Models + module FineTuning + module Alpha + class GraderValidateParams < OpenAI::Internal::Type::BaseModel + extend OpenAI::Internal::Type::RequestParameters::Converter + include OpenAI::Internal::Type::RequestParameters + + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + + # The grader used for the fine-tuning job. + sig do + returns( + T.any( + OpenAI::Graders::StringCheckGrader, + OpenAI::Graders::TextSimilarityGrader, + OpenAI::Graders::PythonGrader, + OpenAI::Graders::ScoreModelGrader, + OpenAI::Graders::MultiGrader + ) + ) + end + attr_accessor :grader + + sig do + params( + grader: + T.any( + OpenAI::Graders::StringCheckGrader::OrHash, + OpenAI::Graders::TextSimilarityGrader::OrHash, + OpenAI::Graders::PythonGrader::OrHash, + OpenAI::Graders::ScoreModelGrader::OrHash, + OpenAI::Graders::MultiGrader::OrHash + ), + request_options: OpenAI::RequestOptions::OrHash + ).returns(T.attached_class) + end + def self.new( + # The grader used for the fine-tuning job. + grader:, + request_options: {} + ) + end + + sig do + override.returns( + { + grader: + T.any( + OpenAI::Graders::StringCheckGrader, + OpenAI::Graders::TextSimilarityGrader, + OpenAI::Graders::PythonGrader, + OpenAI::Graders::ScoreModelGrader, + OpenAI::Graders::MultiGrader + ), + request_options: OpenAI::RequestOptions + } + ) + end + def to_hash + end + + # The grader used for the fine-tuning job. + module Grader + extend OpenAI::Internal::Type::Union + + Variants = + T.type_alias do + T.any( + OpenAI::Graders::StringCheckGrader, + OpenAI::Graders::TextSimilarityGrader, + OpenAI::Graders::PythonGrader, + OpenAI::Graders::ScoreModelGrader, + OpenAI::Graders::MultiGrader + ) + end + + sig do + override.returns( + T::Array[ + OpenAI::FineTuning::Alpha::GraderValidateParams::Grader::Variants + ] + ) + end + def self.variants + end + end + end + end + end + end +end diff --git a/rbi/openai/models/fine_tuning/alpha/grader_validate_response.rbi b/rbi/openai/models/fine_tuning/alpha/grader_validate_response.rbi new file mode 100644 index 00000000..ca2d42db --- /dev/null +++ b/rbi/openai/models/fine_tuning/alpha/grader_validate_response.rbi @@ -0,0 +1,105 @@ +# typed: strong + +module OpenAI + module Models + module FineTuning + module Alpha + class GraderValidateResponse < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + + # The grader used for the fine-tuning job. + sig do + returns( + T.nilable( + T.any( + OpenAI::Graders::StringCheckGrader, + OpenAI::Graders::TextSimilarityGrader, + OpenAI::Graders::PythonGrader, + OpenAI::Graders::ScoreModelGrader, + OpenAI::Graders::MultiGrader + ) + ) + ) + end + attr_reader :grader + + sig do + params( + grader: + T.any( + OpenAI::Graders::StringCheckGrader::OrHash, + OpenAI::Graders::TextSimilarityGrader::OrHash, + OpenAI::Graders::PythonGrader::OrHash, + OpenAI::Graders::ScoreModelGrader::OrHash, + OpenAI::Graders::MultiGrader::OrHash + ) + ).void + end + attr_writer :grader + + sig do + params( + grader: + T.any( + OpenAI::Graders::StringCheckGrader::OrHash, + OpenAI::Graders::TextSimilarityGrader::OrHash, + OpenAI::Graders::PythonGrader::OrHash, + OpenAI::Graders::ScoreModelGrader::OrHash, + OpenAI::Graders::MultiGrader::OrHash + ) + ).returns(T.attached_class) + end + def self.new( + # The grader used for the fine-tuning job. + grader: nil + ) + end + + sig do + override.returns( + { + grader: + T.any( + OpenAI::Graders::StringCheckGrader, + OpenAI::Graders::TextSimilarityGrader, + OpenAI::Graders::PythonGrader, + OpenAI::Graders::ScoreModelGrader, + OpenAI::Graders::MultiGrader + ) + } + ) + end + def to_hash + end + + # The grader used for the fine-tuning job. + module Grader + extend OpenAI::Internal::Type::Union + + Variants = + T.type_alias do + T.any( + OpenAI::Graders::StringCheckGrader, + OpenAI::Graders::TextSimilarityGrader, + OpenAI::Graders::PythonGrader, + OpenAI::Graders::ScoreModelGrader, + OpenAI::Graders::MultiGrader + ) + end + + sig do + override.returns( + T::Array[ + OpenAI::Models::FineTuning::Alpha::GraderValidateResponse::Grader::Variants + ] + ) + end + def self.variants + end + end + end + end + end + end +end diff --git a/rbi/openai/models/fine_tuning/dpo_hyperparameters.rbi b/rbi/openai/models/fine_tuning/dpo_hyperparameters.rbi new file mode 100644 index 00000000..d210f91b --- /dev/null +++ b/rbi/openai/models/fine_tuning/dpo_hyperparameters.rbi @@ -0,0 +1,151 @@ +# typed: strong + +module OpenAI + module Models + module FineTuning + class DpoHyperparameters < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + + # Number of examples in each batch. A larger batch size means that model + # parameters are updated less frequently, but with lower variance. + sig { returns(T.nilable(T.any(Symbol, Integer))) } + attr_reader :batch_size + + sig { params(batch_size: T.any(Symbol, Integer)).void } + attr_writer :batch_size + + # The beta value for the DPO method. A higher beta value will increase the weight + # of the penalty between the policy and reference model. + sig { returns(T.nilable(T.any(Symbol, Float))) } + attr_reader :beta + + sig { params(beta: T.any(Symbol, Float)).void } + attr_writer :beta + + # Scaling factor for the learning rate. A smaller learning rate may be useful to + # avoid overfitting. + sig { returns(T.nilable(T.any(Symbol, Float))) } + attr_reader :learning_rate_multiplier + + sig { params(learning_rate_multiplier: T.any(Symbol, Float)).void } + attr_writer :learning_rate_multiplier + + # The number of epochs to train the model for. An epoch refers to one full cycle + # through the training dataset. + sig { returns(T.nilable(T.any(Symbol, Integer))) } + attr_reader :n_epochs + + sig { params(n_epochs: T.any(Symbol, Integer)).void } + attr_writer :n_epochs + + # The hyperparameters used for the DPO fine-tuning job. + sig do + params( + batch_size: T.any(Symbol, Integer), + beta: T.any(Symbol, Float), + learning_rate_multiplier: T.any(Symbol, Float), + n_epochs: T.any(Symbol, Integer) + ).returns(T.attached_class) + end + def self.new( + # Number of examples in each batch. A larger batch size means that model + # parameters are updated less frequently, but with lower variance. + batch_size: nil, + # The beta value for the DPO method. A higher beta value will increase the weight + # of the penalty between the policy and reference model. + beta: nil, + # Scaling factor for the learning rate. A smaller learning rate may be useful to + # avoid overfitting. + learning_rate_multiplier: nil, + # The number of epochs to train the model for. An epoch refers to one full cycle + # through the training dataset. + n_epochs: nil + ) + end + + sig do + override.returns( + { + batch_size: T.any(Symbol, Integer), + beta: T.any(Symbol, Float), + learning_rate_multiplier: T.any(Symbol, Float), + n_epochs: T.any(Symbol, Integer) + } + ) + end + def to_hash + end + + # Number of examples in each batch. A larger batch size means that model + # parameters are updated less frequently, but with lower variance. + module BatchSize + extend OpenAI::Internal::Type::Union + + Variants = T.type_alias { T.any(Symbol, Integer) } + + sig do + override.returns( + T::Array[ + OpenAI::FineTuning::DpoHyperparameters::BatchSize::Variants + ] + ) + end + def self.variants + end + end + + # The beta value for the DPO method. A higher beta value will increase the weight + # of the penalty between the policy and reference model. + module Beta + extend OpenAI::Internal::Type::Union + + Variants = T.type_alias { T.any(Symbol, Float) } + + sig do + override.returns( + T::Array[OpenAI::FineTuning::DpoHyperparameters::Beta::Variants] + ) + end + def self.variants + end + end + + # Scaling factor for the learning rate. A smaller learning rate may be useful to + # avoid overfitting. + module LearningRateMultiplier + extend OpenAI::Internal::Type::Union + + Variants = T.type_alias { T.any(Symbol, Float) } + + sig do + override.returns( + T::Array[ + OpenAI::FineTuning::DpoHyperparameters::LearningRateMultiplier::Variants + ] + ) + end + def self.variants + end + end + + # The number of epochs to train the model for. An epoch refers to one full cycle + # through the training dataset. + module NEpochs + extend OpenAI::Internal::Type::Union + + Variants = T.type_alias { T.any(Symbol, Integer) } + + sig do + override.returns( + T::Array[ + OpenAI::FineTuning::DpoHyperparameters::NEpochs::Variants + ] + ) + end + def self.variants + end + end + end + end + end +end diff --git a/rbi/openai/models/fine_tuning/dpo_method.rbi b/rbi/openai/models/fine_tuning/dpo_method.rbi new file mode 100644 index 00000000..05f15967 --- /dev/null +++ b/rbi/openai/models/fine_tuning/dpo_method.rbi @@ -0,0 +1,42 @@ +# typed: strong + +module OpenAI + module Models + module FineTuning + class DpoMethod < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + + # The hyperparameters used for the DPO fine-tuning job. + sig { returns(T.nilable(OpenAI::FineTuning::DpoHyperparameters)) } + attr_reader :hyperparameters + + sig do + params( + hyperparameters: OpenAI::FineTuning::DpoHyperparameters::OrHash + ).void + end + attr_writer :hyperparameters + + # Configuration for the DPO fine-tuning method. + sig do + params( + hyperparameters: OpenAI::FineTuning::DpoHyperparameters::OrHash + ).returns(T.attached_class) + end + def self.new( + # The hyperparameters used for the DPO fine-tuning job. + hyperparameters: nil + ) + end + + sig do + override.returns( + { hyperparameters: OpenAI::FineTuning::DpoHyperparameters } + ) + end + def to_hash + end + end + end + end +end diff --git a/rbi/openai/models/fine_tuning/fine_tuning_job.rbi b/rbi/openai/models/fine_tuning/fine_tuning_job.rbi index ccd100af..00b007eb 100644 --- a/rbi/openai/models/fine_tuning/fine_tuning_job.rbi +++ b/rbi/openai/models/fine_tuning/fine_tuning_job.rbi @@ -471,447 +471,79 @@ module OpenAI OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } - # Configuration for the DPO fine-tuning method. + # The type of method. Is either `supervised`, `dpo`, or `reinforcement`. sig do - returns(T.nilable(OpenAI::FineTuning::FineTuningJob::Method::Dpo)) + returns( + OpenAI::FineTuning::FineTuningJob::Method::Type::TaggedSymbol + ) end + attr_accessor :type + + # Configuration for the DPO fine-tuning method. + sig { returns(T.nilable(OpenAI::FineTuning::DpoMethod)) } attr_reader :dpo - sig do - params( - dpo: OpenAI::FineTuning::FineTuningJob::Method::Dpo::OrHash - ).void - end + sig { params(dpo: OpenAI::FineTuning::DpoMethod::OrHash).void } attr_writer :dpo - # Configuration for the supervised fine-tuning method. - sig do - returns( - T.nilable(OpenAI::FineTuning::FineTuningJob::Method::Supervised) - ) - end - attr_reader :supervised + # Configuration for the reinforcement fine-tuning method. + sig { returns(T.nilable(OpenAI::FineTuning::ReinforcementMethod)) } + attr_reader :reinforcement sig do params( - supervised: - OpenAI::FineTuning::FineTuningJob::Method::Supervised::OrHash + reinforcement: OpenAI::FineTuning::ReinforcementMethod::OrHash ).void end - attr_writer :supervised + attr_writer :reinforcement - # The type of method. Is either `supervised` or `dpo`. - sig do - returns( - T.nilable( - OpenAI::FineTuning::FineTuningJob::Method::Type::TaggedSymbol - ) - ) - end - attr_reader :type + # Configuration for the supervised fine-tuning method. + sig { returns(T.nilable(OpenAI::FineTuning::SupervisedMethod)) } + attr_reader :supervised sig do params( - type: OpenAI::FineTuning::FineTuningJob::Method::Type::OrSymbol + supervised: OpenAI::FineTuning::SupervisedMethod::OrHash ).void end - attr_writer :type + attr_writer :supervised # The method used for fine-tuning. sig do params( - dpo: OpenAI::FineTuning::FineTuningJob::Method::Dpo::OrHash, - supervised: - OpenAI::FineTuning::FineTuningJob::Method::Supervised::OrHash, - type: OpenAI::FineTuning::FineTuningJob::Method::Type::OrSymbol + type: OpenAI::FineTuning::FineTuningJob::Method::Type::OrSymbol, + dpo: OpenAI::FineTuning::DpoMethod::OrHash, + reinforcement: OpenAI::FineTuning::ReinforcementMethod::OrHash, + supervised: OpenAI::FineTuning::SupervisedMethod::OrHash ).returns(T.attached_class) end def self.new( + # The type of method. Is either `supervised`, `dpo`, or `reinforcement`. + type:, # Configuration for the DPO fine-tuning method. dpo: nil, + # Configuration for the reinforcement fine-tuning method. + reinforcement: nil, # Configuration for the supervised fine-tuning method. - supervised: nil, - # The type of method. Is either `supervised` or `dpo`. - type: nil + supervised: nil ) end sig do override.returns( { - dpo: OpenAI::FineTuning::FineTuningJob::Method::Dpo, - supervised: - OpenAI::FineTuning::FineTuningJob::Method::Supervised, type: - OpenAI::FineTuning::FineTuningJob::Method::Type::TaggedSymbol + OpenAI::FineTuning::FineTuningJob::Method::Type::TaggedSymbol, + dpo: OpenAI::FineTuning::DpoMethod, + reinforcement: OpenAI::FineTuning::ReinforcementMethod, + supervised: OpenAI::FineTuning::SupervisedMethod } ) end def to_hash end - class Dpo < OpenAI::Internal::Type::BaseModel - OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } - - # The hyperparameters used for the fine-tuning job. - sig do - returns( - T.nilable( - OpenAI::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters - ) - ) - end - attr_reader :hyperparameters - - sig do - params( - hyperparameters: - OpenAI::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters::OrHash - ).void - end - attr_writer :hyperparameters - - # Configuration for the DPO fine-tuning method. - sig do - params( - hyperparameters: - OpenAI::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters::OrHash - ).returns(T.attached_class) - end - def self.new( - # The hyperparameters used for the fine-tuning job. - hyperparameters: nil - ) - end - - sig do - override.returns( - { - hyperparameters: - OpenAI::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters - } - ) - end - def to_hash - end - - class Hyperparameters < OpenAI::Internal::Type::BaseModel - OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } - - # Number of examples in each batch. A larger batch size means that model - # parameters are updated less frequently, but with lower variance. - sig { returns(T.nilable(T.any(Symbol, Integer))) } - attr_reader :batch_size - - sig { params(batch_size: T.any(Symbol, Integer)).void } - attr_writer :batch_size - - # The beta value for the DPO method. A higher beta value will increase the weight - # of the penalty between the policy and reference model. - sig { returns(T.nilable(T.any(Symbol, Float))) } - attr_reader :beta - - sig { params(beta: T.any(Symbol, Float)).void } - attr_writer :beta - - # Scaling factor for the learning rate. A smaller learning rate may be useful to - # avoid overfitting. - sig { returns(T.nilable(T.any(Symbol, Float))) } - attr_reader :learning_rate_multiplier - - sig do - params(learning_rate_multiplier: T.any(Symbol, Float)).void - end - attr_writer :learning_rate_multiplier - - # The number of epochs to train the model for. An epoch refers to one full cycle - # through the training dataset. - sig { returns(T.nilable(T.any(Symbol, Integer))) } - attr_reader :n_epochs - - sig { params(n_epochs: T.any(Symbol, Integer)).void } - attr_writer :n_epochs - - # The hyperparameters used for the fine-tuning job. - sig do - params( - batch_size: T.any(Symbol, Integer), - beta: T.any(Symbol, Float), - learning_rate_multiplier: T.any(Symbol, Float), - n_epochs: T.any(Symbol, Integer) - ).returns(T.attached_class) - end - def self.new( - # Number of examples in each batch. A larger batch size means that model - # parameters are updated less frequently, but with lower variance. - batch_size: nil, - # The beta value for the DPO method. A higher beta value will increase the weight - # of the penalty between the policy and reference model. - beta: nil, - # Scaling factor for the learning rate. A smaller learning rate may be useful to - # avoid overfitting. - learning_rate_multiplier: nil, - # The number of epochs to train the model for. An epoch refers to one full cycle - # through the training dataset. - n_epochs: nil - ) - end - - sig do - override.returns( - { - batch_size: T.any(Symbol, Integer), - beta: T.any(Symbol, Float), - learning_rate_multiplier: T.any(Symbol, Float), - n_epochs: T.any(Symbol, Integer) - } - ) - end - def to_hash - end - - # Number of examples in each batch. A larger batch size means that model - # parameters are updated less frequently, but with lower variance. - module BatchSize - extend OpenAI::Internal::Type::Union - - Variants = T.type_alias { T.any(Symbol, Integer) } - - sig do - override.returns( - T::Array[ - OpenAI::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters::BatchSize::Variants - ] - ) - end - def self.variants - end - end - - # The beta value for the DPO method. A higher beta value will increase the weight - # of the penalty between the policy and reference model. - module Beta - extend OpenAI::Internal::Type::Union - - Variants = T.type_alias { T.any(Symbol, Float) } - - sig do - override.returns( - T::Array[ - OpenAI::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters::Beta::Variants - ] - ) - end - def self.variants - end - end - - # Scaling factor for the learning rate. A smaller learning rate may be useful to - # avoid overfitting. - module LearningRateMultiplier - extend OpenAI::Internal::Type::Union - - Variants = T.type_alias { T.any(Symbol, Float) } - - sig do - override.returns( - T::Array[ - OpenAI::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters::LearningRateMultiplier::Variants - ] - ) - end - def self.variants - end - end - - # The number of epochs to train the model for. An epoch refers to one full cycle - # through the training dataset. - module NEpochs - extend OpenAI::Internal::Type::Union - - Variants = T.type_alias { T.any(Symbol, Integer) } - - sig do - override.returns( - T::Array[ - OpenAI::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters::NEpochs::Variants - ] - ) - end - def self.variants - end - end - end - end - - class Supervised < OpenAI::Internal::Type::BaseModel - OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } - - # The hyperparameters used for the fine-tuning job. - sig do - returns( - T.nilable( - OpenAI::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters - ) - ) - end - attr_reader :hyperparameters - - sig do - params( - hyperparameters: - OpenAI::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters::OrHash - ).void - end - attr_writer :hyperparameters - - # Configuration for the supervised fine-tuning method. - sig do - params( - hyperparameters: - OpenAI::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters::OrHash - ).returns(T.attached_class) - end - def self.new( - # The hyperparameters used for the fine-tuning job. - hyperparameters: nil - ) - end - - sig do - override.returns( - { - hyperparameters: - OpenAI::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters - } - ) - end - def to_hash - end - - class Hyperparameters < OpenAI::Internal::Type::BaseModel - OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } - - # Number of examples in each batch. A larger batch size means that model - # parameters are updated less frequently, but with lower variance. - sig { returns(T.nilable(T.any(Symbol, Integer))) } - attr_reader :batch_size - - sig { params(batch_size: T.any(Symbol, Integer)).void } - attr_writer :batch_size - - # Scaling factor for the learning rate. A smaller learning rate may be useful to - # avoid overfitting. - sig { returns(T.nilable(T.any(Symbol, Float))) } - attr_reader :learning_rate_multiplier - - sig do - params(learning_rate_multiplier: T.any(Symbol, Float)).void - end - attr_writer :learning_rate_multiplier - - # The number of epochs to train the model for. An epoch refers to one full cycle - # through the training dataset. - sig { returns(T.nilable(T.any(Symbol, Integer))) } - attr_reader :n_epochs - - sig { params(n_epochs: T.any(Symbol, Integer)).void } - attr_writer :n_epochs - - # The hyperparameters used for the fine-tuning job. - sig do - params( - batch_size: T.any(Symbol, Integer), - learning_rate_multiplier: T.any(Symbol, Float), - n_epochs: T.any(Symbol, Integer) - ).returns(T.attached_class) - end - def self.new( - # Number of examples in each batch. A larger batch size means that model - # parameters are updated less frequently, but with lower variance. - batch_size: nil, - # Scaling factor for the learning rate. A smaller learning rate may be useful to - # avoid overfitting. - learning_rate_multiplier: nil, - # The number of epochs to train the model for. An epoch refers to one full cycle - # through the training dataset. - n_epochs: nil - ) - end - - sig do - override.returns( - { - batch_size: T.any(Symbol, Integer), - learning_rate_multiplier: T.any(Symbol, Float), - n_epochs: T.any(Symbol, Integer) - } - ) - end - def to_hash - end - - # Number of examples in each batch. A larger batch size means that model - # parameters are updated less frequently, but with lower variance. - module BatchSize - extend OpenAI::Internal::Type::Union - - Variants = T.type_alias { T.any(Symbol, Integer) } - - sig do - override.returns( - T::Array[ - OpenAI::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters::BatchSize::Variants - ] - ) - end - def self.variants - end - end - - # Scaling factor for the learning rate. A smaller learning rate may be useful to - # avoid overfitting. - module LearningRateMultiplier - extend OpenAI::Internal::Type::Union - - Variants = T.type_alias { T.any(Symbol, Float) } - - sig do - override.returns( - T::Array[ - OpenAI::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters::LearningRateMultiplier::Variants - ] - ) - end - def self.variants - end - end - - # The number of epochs to train the model for. An epoch refers to one full cycle - # through the training dataset. - module NEpochs - extend OpenAI::Internal::Type::Union - - Variants = T.type_alias { T.any(Symbol, Integer) } - - sig do - override.returns( - T::Array[ - OpenAI::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters::NEpochs::Variants - ] - ) - end - def self.variants - end - end - end - end - - # The type of method. Is either `supervised` or `dpo`. + # The type of method. Is either `supervised`, `dpo`, or `reinforcement`. module Type extend OpenAI::Internal::Type::Enum @@ -931,6 +563,11 @@ module OpenAI :dpo, OpenAI::FineTuning::FineTuningJob::Method::Type::TaggedSymbol ) + REINFORCEMENT = + T.let( + :reinforcement, + OpenAI::FineTuning::FineTuningJob::Method::Type::TaggedSymbol + ) sig do override.returns( diff --git a/rbi/openai/models/fine_tuning/job_create_params.rbi b/rbi/openai/models/fine_tuning/job_create_params.rbi index eaa8cb24..2f9fcad2 100644 --- a/rbi/openai/models/fine_tuning/job_create_params.rbi +++ b/rbi/openai/models/fine_tuning/job_create_params.rbi @@ -526,447 +526,77 @@ module OpenAI OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } - # Configuration for the DPO fine-tuning method. + # The type of method. Is either `supervised`, `dpo`, or `reinforcement`. sig do - returns(T.nilable(OpenAI::FineTuning::JobCreateParams::Method::Dpo)) + returns(OpenAI::FineTuning::JobCreateParams::Method::Type::OrSymbol) end + attr_accessor :type + + # Configuration for the DPO fine-tuning method. + sig { returns(T.nilable(OpenAI::FineTuning::DpoMethod)) } attr_reader :dpo - sig do - params( - dpo: OpenAI::FineTuning::JobCreateParams::Method::Dpo::OrHash - ).void - end + sig { params(dpo: OpenAI::FineTuning::DpoMethod::OrHash).void } attr_writer :dpo - # Configuration for the supervised fine-tuning method. - sig do - returns( - T.nilable(OpenAI::FineTuning::JobCreateParams::Method::Supervised) - ) - end - attr_reader :supervised + # Configuration for the reinforcement fine-tuning method. + sig { returns(T.nilable(OpenAI::FineTuning::ReinforcementMethod)) } + attr_reader :reinforcement sig do params( - supervised: - OpenAI::FineTuning::JobCreateParams::Method::Supervised::OrHash + reinforcement: OpenAI::FineTuning::ReinforcementMethod::OrHash ).void end - attr_writer :supervised + attr_writer :reinforcement - # The type of method. Is either `supervised` or `dpo`. - sig do - returns( - T.nilable( - OpenAI::FineTuning::JobCreateParams::Method::Type::OrSymbol - ) - ) - end - attr_reader :type + # Configuration for the supervised fine-tuning method. + sig { returns(T.nilable(OpenAI::FineTuning::SupervisedMethod)) } + attr_reader :supervised sig do params( - type: OpenAI::FineTuning::JobCreateParams::Method::Type::OrSymbol + supervised: OpenAI::FineTuning::SupervisedMethod::OrHash ).void end - attr_writer :type + attr_writer :supervised # The method used for fine-tuning. sig do params( - dpo: OpenAI::FineTuning::JobCreateParams::Method::Dpo::OrHash, - supervised: - OpenAI::FineTuning::JobCreateParams::Method::Supervised::OrHash, - type: OpenAI::FineTuning::JobCreateParams::Method::Type::OrSymbol + type: OpenAI::FineTuning::JobCreateParams::Method::Type::OrSymbol, + dpo: OpenAI::FineTuning::DpoMethod::OrHash, + reinforcement: OpenAI::FineTuning::ReinforcementMethod::OrHash, + supervised: OpenAI::FineTuning::SupervisedMethod::OrHash ).returns(T.attached_class) end def self.new( + # The type of method. Is either `supervised`, `dpo`, or `reinforcement`. + type:, # Configuration for the DPO fine-tuning method. dpo: nil, + # Configuration for the reinforcement fine-tuning method. + reinforcement: nil, # Configuration for the supervised fine-tuning method. - supervised: nil, - # The type of method. Is either `supervised` or `dpo`. - type: nil + supervised: nil ) end sig do override.returns( { - dpo: OpenAI::FineTuning::JobCreateParams::Method::Dpo, - supervised: - OpenAI::FineTuning::JobCreateParams::Method::Supervised, type: - OpenAI::FineTuning::JobCreateParams::Method::Type::OrSymbol + OpenAI::FineTuning::JobCreateParams::Method::Type::OrSymbol, + dpo: OpenAI::FineTuning::DpoMethod, + reinforcement: OpenAI::FineTuning::ReinforcementMethod, + supervised: OpenAI::FineTuning::SupervisedMethod } ) end def to_hash end - class Dpo < OpenAI::Internal::Type::BaseModel - OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } - - # The hyperparameters used for the fine-tuning job. - sig do - returns( - T.nilable( - OpenAI::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters - ) - ) - end - attr_reader :hyperparameters - - sig do - params( - hyperparameters: - OpenAI::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters::OrHash - ).void - end - attr_writer :hyperparameters - - # Configuration for the DPO fine-tuning method. - sig do - params( - hyperparameters: - OpenAI::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters::OrHash - ).returns(T.attached_class) - end - def self.new( - # The hyperparameters used for the fine-tuning job. - hyperparameters: nil - ) - end - - sig do - override.returns( - { - hyperparameters: - OpenAI::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters - } - ) - end - def to_hash - end - - class Hyperparameters < OpenAI::Internal::Type::BaseModel - OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } - - # Number of examples in each batch. A larger batch size means that model - # parameters are updated less frequently, but with lower variance. - sig { returns(T.nilable(T.any(Symbol, Integer))) } - attr_reader :batch_size - - sig { params(batch_size: T.any(Symbol, Integer)).void } - attr_writer :batch_size - - # The beta value for the DPO method. A higher beta value will increase the weight - # of the penalty between the policy and reference model. - sig { returns(T.nilable(T.any(Symbol, Float))) } - attr_reader :beta - - sig { params(beta: T.any(Symbol, Float)).void } - attr_writer :beta - - # Scaling factor for the learning rate. A smaller learning rate may be useful to - # avoid overfitting. - sig { returns(T.nilable(T.any(Symbol, Float))) } - attr_reader :learning_rate_multiplier - - sig do - params(learning_rate_multiplier: T.any(Symbol, Float)).void - end - attr_writer :learning_rate_multiplier - - # The number of epochs to train the model for. An epoch refers to one full cycle - # through the training dataset. - sig { returns(T.nilable(T.any(Symbol, Integer))) } - attr_reader :n_epochs - - sig { params(n_epochs: T.any(Symbol, Integer)).void } - attr_writer :n_epochs - - # The hyperparameters used for the fine-tuning job. - sig do - params( - batch_size: T.any(Symbol, Integer), - beta: T.any(Symbol, Float), - learning_rate_multiplier: T.any(Symbol, Float), - n_epochs: T.any(Symbol, Integer) - ).returns(T.attached_class) - end - def self.new( - # Number of examples in each batch. A larger batch size means that model - # parameters are updated less frequently, but with lower variance. - batch_size: nil, - # The beta value for the DPO method. A higher beta value will increase the weight - # of the penalty between the policy and reference model. - beta: nil, - # Scaling factor for the learning rate. A smaller learning rate may be useful to - # avoid overfitting. - learning_rate_multiplier: nil, - # The number of epochs to train the model for. An epoch refers to one full cycle - # through the training dataset. - n_epochs: nil - ) - end - - sig do - override.returns( - { - batch_size: T.any(Symbol, Integer), - beta: T.any(Symbol, Float), - learning_rate_multiplier: T.any(Symbol, Float), - n_epochs: T.any(Symbol, Integer) - } - ) - end - def to_hash - end - - # Number of examples in each batch. A larger batch size means that model - # parameters are updated less frequently, but with lower variance. - module BatchSize - extend OpenAI::Internal::Type::Union - - Variants = T.type_alias { T.any(Symbol, Integer) } - - sig do - override.returns( - T::Array[ - OpenAI::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters::BatchSize::Variants - ] - ) - end - def self.variants - end - end - - # The beta value for the DPO method. A higher beta value will increase the weight - # of the penalty between the policy and reference model. - module Beta - extend OpenAI::Internal::Type::Union - - Variants = T.type_alias { T.any(Symbol, Float) } - - sig do - override.returns( - T::Array[ - OpenAI::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters::Beta::Variants - ] - ) - end - def self.variants - end - end - - # Scaling factor for the learning rate. A smaller learning rate may be useful to - # avoid overfitting. - module LearningRateMultiplier - extend OpenAI::Internal::Type::Union - - Variants = T.type_alias { T.any(Symbol, Float) } - - sig do - override.returns( - T::Array[ - OpenAI::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters::LearningRateMultiplier::Variants - ] - ) - end - def self.variants - end - end - - # The number of epochs to train the model for. An epoch refers to one full cycle - # through the training dataset. - module NEpochs - extend OpenAI::Internal::Type::Union - - Variants = T.type_alias { T.any(Symbol, Integer) } - - sig do - override.returns( - T::Array[ - OpenAI::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters::NEpochs::Variants - ] - ) - end - def self.variants - end - end - end - end - - class Supervised < OpenAI::Internal::Type::BaseModel - OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } - - # The hyperparameters used for the fine-tuning job. - sig do - returns( - T.nilable( - OpenAI::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters - ) - ) - end - attr_reader :hyperparameters - - sig do - params( - hyperparameters: - OpenAI::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters::OrHash - ).void - end - attr_writer :hyperparameters - - # Configuration for the supervised fine-tuning method. - sig do - params( - hyperparameters: - OpenAI::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters::OrHash - ).returns(T.attached_class) - end - def self.new( - # The hyperparameters used for the fine-tuning job. - hyperparameters: nil - ) - end - - sig do - override.returns( - { - hyperparameters: - OpenAI::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters - } - ) - end - def to_hash - end - - class Hyperparameters < OpenAI::Internal::Type::BaseModel - OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } - - # Number of examples in each batch. A larger batch size means that model - # parameters are updated less frequently, but with lower variance. - sig { returns(T.nilable(T.any(Symbol, Integer))) } - attr_reader :batch_size - - sig { params(batch_size: T.any(Symbol, Integer)).void } - attr_writer :batch_size - - # Scaling factor for the learning rate. A smaller learning rate may be useful to - # avoid overfitting. - sig { returns(T.nilable(T.any(Symbol, Float))) } - attr_reader :learning_rate_multiplier - - sig do - params(learning_rate_multiplier: T.any(Symbol, Float)).void - end - attr_writer :learning_rate_multiplier - - # The number of epochs to train the model for. An epoch refers to one full cycle - # through the training dataset. - sig { returns(T.nilable(T.any(Symbol, Integer))) } - attr_reader :n_epochs - - sig { params(n_epochs: T.any(Symbol, Integer)).void } - attr_writer :n_epochs - - # The hyperparameters used for the fine-tuning job. - sig do - params( - batch_size: T.any(Symbol, Integer), - learning_rate_multiplier: T.any(Symbol, Float), - n_epochs: T.any(Symbol, Integer) - ).returns(T.attached_class) - end - def self.new( - # Number of examples in each batch. A larger batch size means that model - # parameters are updated less frequently, but with lower variance. - batch_size: nil, - # Scaling factor for the learning rate. A smaller learning rate may be useful to - # avoid overfitting. - learning_rate_multiplier: nil, - # The number of epochs to train the model for. An epoch refers to one full cycle - # through the training dataset. - n_epochs: nil - ) - end - - sig do - override.returns( - { - batch_size: T.any(Symbol, Integer), - learning_rate_multiplier: T.any(Symbol, Float), - n_epochs: T.any(Symbol, Integer) - } - ) - end - def to_hash - end - - # Number of examples in each batch. A larger batch size means that model - # parameters are updated less frequently, but with lower variance. - module BatchSize - extend OpenAI::Internal::Type::Union - - Variants = T.type_alias { T.any(Symbol, Integer) } - - sig do - override.returns( - T::Array[ - OpenAI::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters::BatchSize::Variants - ] - ) - end - def self.variants - end - end - - # Scaling factor for the learning rate. A smaller learning rate may be useful to - # avoid overfitting. - module LearningRateMultiplier - extend OpenAI::Internal::Type::Union - - Variants = T.type_alias { T.any(Symbol, Float) } - - sig do - override.returns( - T::Array[ - OpenAI::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters::LearningRateMultiplier::Variants - ] - ) - end - def self.variants - end - end - - # The number of epochs to train the model for. An epoch refers to one full cycle - # through the training dataset. - module NEpochs - extend OpenAI::Internal::Type::Union - - Variants = T.type_alias { T.any(Symbol, Integer) } - - sig do - override.returns( - T::Array[ - OpenAI::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters::NEpochs::Variants - ] - ) - end - def self.variants - end - end - end - end - - # The type of method. Is either `supervised` or `dpo`. + # The type of method. Is either `supervised`, `dpo`, or `reinforcement`. module Type extend OpenAI::Internal::Type::Enum @@ -986,6 +616,11 @@ module OpenAI :dpo, OpenAI::FineTuning::JobCreateParams::Method::Type::TaggedSymbol ) + REINFORCEMENT = + T.let( + :reinforcement, + OpenAI::FineTuning::JobCreateParams::Method::Type::TaggedSymbol + ) sig do override.returns( diff --git a/rbi/openai/models/fine_tuning/job_pause_params.rbi b/rbi/openai/models/fine_tuning/job_pause_params.rbi new file mode 100644 index 00000000..66935edf --- /dev/null +++ b/rbi/openai/models/fine_tuning/job_pause_params.rbi @@ -0,0 +1,26 @@ +# typed: strong + +module OpenAI + module Models + module FineTuning + class JobPauseParams < OpenAI::Internal::Type::BaseModel + extend OpenAI::Internal::Type::RequestParameters::Converter + include OpenAI::Internal::Type::RequestParameters + + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + + sig do + params(request_options: OpenAI::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) + end + + sig { override.returns({ request_options: OpenAI::RequestOptions }) } + def to_hash + end + end + end + end +end diff --git a/rbi/openai/models/fine_tuning/job_resume_params.rbi b/rbi/openai/models/fine_tuning/job_resume_params.rbi new file mode 100644 index 00000000..da91536e --- /dev/null +++ b/rbi/openai/models/fine_tuning/job_resume_params.rbi @@ -0,0 +1,26 @@ +# typed: strong + +module OpenAI + module Models + module FineTuning + class JobResumeParams < OpenAI::Internal::Type::BaseModel + extend OpenAI::Internal::Type::RequestParameters::Converter + include OpenAI::Internal::Type::RequestParameters + + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + + sig do + params(request_options: OpenAI::RequestOptions::OrHash).returns( + T.attached_class + ) + end + def self.new(request_options: {}) + end + + sig { override.returns({ request_options: OpenAI::RequestOptions }) } + def to_hash + end + end + end + end +end diff --git a/rbi/openai/models/fine_tuning/reinforcement_hyperparameters.rbi b/rbi/openai/models/fine_tuning/reinforcement_hyperparameters.rbi new file mode 100644 index 00000000..1c81d0d8 --- /dev/null +++ b/rbi/openai/models/fine_tuning/reinforcement_hyperparameters.rbi @@ -0,0 +1,275 @@ +# typed: strong + +module OpenAI + module Models + module FineTuning + class ReinforcementHyperparameters < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + + # Number of examples in each batch. A larger batch size means that model + # parameters are updated less frequently, but with lower variance. + sig { returns(T.nilable(T.any(Symbol, Integer))) } + attr_reader :batch_size + + sig { params(batch_size: T.any(Symbol, Integer)).void } + attr_writer :batch_size + + # Multiplier on amount of compute used for exploring search space during training. + sig { returns(T.nilable(T.any(Symbol, Float))) } + attr_reader :compute_multiplier + + sig { params(compute_multiplier: T.any(Symbol, Float)).void } + attr_writer :compute_multiplier + + # The number of training steps between evaluation runs. + sig { returns(T.nilable(T.any(Symbol, Integer))) } + attr_reader :eval_interval + + sig { params(eval_interval: T.any(Symbol, Integer)).void } + attr_writer :eval_interval + + # Number of evaluation samples to generate per training step. + sig { returns(T.nilable(T.any(Symbol, Integer))) } + attr_reader :eval_samples + + sig { params(eval_samples: T.any(Symbol, Integer)).void } + attr_writer :eval_samples + + # Scaling factor for the learning rate. A smaller learning rate may be useful to + # avoid overfitting. + sig { returns(T.nilable(T.any(Symbol, Float))) } + attr_reader :learning_rate_multiplier + + sig { params(learning_rate_multiplier: T.any(Symbol, Float)).void } + attr_writer :learning_rate_multiplier + + # The number of epochs to train the model for. An epoch refers to one full cycle + # through the training dataset. + sig { returns(T.nilable(T.any(Symbol, Integer))) } + attr_reader :n_epochs + + sig { params(n_epochs: T.any(Symbol, Integer)).void } + attr_writer :n_epochs + + # Level of reasoning effort. + sig do + returns( + T.nilable( + OpenAI::FineTuning::ReinforcementHyperparameters::ReasoningEffort::OrSymbol + ) + ) + end + attr_reader :reasoning_effort + + sig do + params( + reasoning_effort: + OpenAI::FineTuning::ReinforcementHyperparameters::ReasoningEffort::OrSymbol + ).void + end + attr_writer :reasoning_effort + + # The hyperparameters used for the reinforcement fine-tuning job. + sig do + params( + batch_size: T.any(Symbol, Integer), + compute_multiplier: T.any(Symbol, Float), + eval_interval: T.any(Symbol, Integer), + eval_samples: T.any(Symbol, Integer), + learning_rate_multiplier: T.any(Symbol, Float), + n_epochs: T.any(Symbol, Integer), + reasoning_effort: + OpenAI::FineTuning::ReinforcementHyperparameters::ReasoningEffort::OrSymbol + ).returns(T.attached_class) + end + def self.new( + # Number of examples in each batch. A larger batch size means that model + # parameters are updated less frequently, but with lower variance. + batch_size: nil, + # Multiplier on amount of compute used for exploring search space during training. + compute_multiplier: nil, + # The number of training steps between evaluation runs. + eval_interval: nil, + # Number of evaluation samples to generate per training step. + eval_samples: nil, + # Scaling factor for the learning rate. A smaller learning rate may be useful to + # avoid overfitting. + learning_rate_multiplier: nil, + # The number of epochs to train the model for. An epoch refers to one full cycle + # through the training dataset. + n_epochs: nil, + # Level of reasoning effort. + reasoning_effort: nil + ) + end + + sig do + override.returns( + { + batch_size: T.any(Symbol, Integer), + compute_multiplier: T.any(Symbol, Float), + eval_interval: T.any(Symbol, Integer), + eval_samples: T.any(Symbol, Integer), + learning_rate_multiplier: T.any(Symbol, Float), + n_epochs: T.any(Symbol, Integer), + reasoning_effort: + OpenAI::FineTuning::ReinforcementHyperparameters::ReasoningEffort::OrSymbol + } + ) + end + def to_hash + end + + # Number of examples in each batch. A larger batch size means that model + # parameters are updated less frequently, but with lower variance. + module BatchSize + extend OpenAI::Internal::Type::Union + + Variants = T.type_alias { T.any(Symbol, Integer) } + + sig do + override.returns( + T::Array[ + OpenAI::FineTuning::ReinforcementHyperparameters::BatchSize::Variants + ] + ) + end + def self.variants + end + end + + # Multiplier on amount of compute used for exploring search space during training. + module ComputeMultiplier + extend OpenAI::Internal::Type::Union + + Variants = T.type_alias { T.any(Symbol, Float) } + + sig do + override.returns( + T::Array[ + OpenAI::FineTuning::ReinforcementHyperparameters::ComputeMultiplier::Variants + ] + ) + end + def self.variants + end + end + + # The number of training steps between evaluation runs. + module EvalInterval + extend OpenAI::Internal::Type::Union + + Variants = T.type_alias { T.any(Symbol, Integer) } + + sig do + override.returns( + T::Array[ + OpenAI::FineTuning::ReinforcementHyperparameters::EvalInterval::Variants + ] + ) + end + def self.variants + end + end + + # Number of evaluation samples to generate per training step. + module EvalSamples + extend OpenAI::Internal::Type::Union + + Variants = T.type_alias { T.any(Symbol, Integer) } + + sig do + override.returns( + T::Array[ + OpenAI::FineTuning::ReinforcementHyperparameters::EvalSamples::Variants + ] + ) + end + def self.variants + end + end + + # Scaling factor for the learning rate. A smaller learning rate may be useful to + # avoid overfitting. + module LearningRateMultiplier + extend OpenAI::Internal::Type::Union + + Variants = T.type_alias { T.any(Symbol, Float) } + + sig do + override.returns( + T::Array[ + OpenAI::FineTuning::ReinforcementHyperparameters::LearningRateMultiplier::Variants + ] + ) + end + def self.variants + end + end + + # The number of epochs to train the model for. An epoch refers to one full cycle + # through the training dataset. + module NEpochs + extend OpenAI::Internal::Type::Union + + Variants = T.type_alias { T.any(Symbol, Integer) } + + sig do + override.returns( + T::Array[ + OpenAI::FineTuning::ReinforcementHyperparameters::NEpochs::Variants + ] + ) + end + def self.variants + end + end + + # Level of reasoning effort. + module ReasoningEffort + extend OpenAI::Internal::Type::Enum + + TaggedSymbol = + T.type_alias do + T.all( + Symbol, + OpenAI::FineTuning::ReinforcementHyperparameters::ReasoningEffort + ) + end + OrSymbol = T.type_alias { T.any(Symbol, String) } + + DEFAULT = + T.let( + :default, + OpenAI::FineTuning::ReinforcementHyperparameters::ReasoningEffort::TaggedSymbol + ) + LOW = + T.let( + :low, + OpenAI::FineTuning::ReinforcementHyperparameters::ReasoningEffort::TaggedSymbol + ) + MEDIUM = + T.let( + :medium, + OpenAI::FineTuning::ReinforcementHyperparameters::ReasoningEffort::TaggedSymbol + ) + HIGH = + T.let( + :high, + OpenAI::FineTuning::ReinforcementHyperparameters::ReasoningEffort::TaggedSymbol + ) + + sig do + override.returns( + T::Array[ + OpenAI::FineTuning::ReinforcementHyperparameters::ReasoningEffort::TaggedSymbol + ] + ) + end + def self.values + end + end + end + end + end +end diff --git a/rbi/openai/models/fine_tuning/reinforcement_method.rbi b/rbi/openai/models/fine_tuning/reinforcement_method.rbi new file mode 100644 index 00000000..2ed3ae7b --- /dev/null +++ b/rbi/openai/models/fine_tuning/reinforcement_method.rbi @@ -0,0 +1,106 @@ +# typed: strong + +module OpenAI + module Models + module FineTuning + class ReinforcementMethod < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + + # The grader used for the fine-tuning job. + sig do + returns( + T.any( + OpenAI::Graders::StringCheckGrader, + OpenAI::Graders::TextSimilarityGrader, + OpenAI::Graders::PythonGrader, + OpenAI::Graders::ScoreModelGrader, + OpenAI::Graders::MultiGrader + ) + ) + end + attr_accessor :grader + + # The hyperparameters used for the reinforcement fine-tuning job. + sig do + returns(T.nilable(OpenAI::FineTuning::ReinforcementHyperparameters)) + end + attr_reader :hyperparameters + + sig do + params( + hyperparameters: + OpenAI::FineTuning::ReinforcementHyperparameters::OrHash + ).void + end + attr_writer :hyperparameters + + # Configuration for the reinforcement fine-tuning method. + sig do + params( + grader: + T.any( + OpenAI::Graders::StringCheckGrader::OrHash, + OpenAI::Graders::TextSimilarityGrader::OrHash, + OpenAI::Graders::PythonGrader::OrHash, + OpenAI::Graders::ScoreModelGrader::OrHash, + OpenAI::Graders::MultiGrader::OrHash + ), + hyperparameters: + OpenAI::FineTuning::ReinforcementHyperparameters::OrHash + ).returns(T.attached_class) + end + def self.new( + # The grader used for the fine-tuning job. + grader:, + # The hyperparameters used for the reinforcement fine-tuning job. + hyperparameters: nil + ) + end + + sig do + override.returns( + { + grader: + T.any( + OpenAI::Graders::StringCheckGrader, + OpenAI::Graders::TextSimilarityGrader, + OpenAI::Graders::PythonGrader, + OpenAI::Graders::ScoreModelGrader, + OpenAI::Graders::MultiGrader + ), + hyperparameters: OpenAI::FineTuning::ReinforcementHyperparameters + } + ) + end + def to_hash + end + + # The grader used for the fine-tuning job. + module Grader + extend OpenAI::Internal::Type::Union + + Variants = + T.type_alias do + T.any( + OpenAI::Graders::StringCheckGrader, + OpenAI::Graders::TextSimilarityGrader, + OpenAI::Graders::PythonGrader, + OpenAI::Graders::ScoreModelGrader, + OpenAI::Graders::MultiGrader + ) + end + + sig do + override.returns( + T::Array[ + OpenAI::FineTuning::ReinforcementMethod::Grader::Variants + ] + ) + end + def self.variants + end + end + end + end + end +end diff --git a/rbi/openai/models/fine_tuning/supervised_hyperparameters.rbi b/rbi/openai/models/fine_tuning/supervised_hyperparameters.rbi new file mode 100644 index 00000000..bc9b8321 --- /dev/null +++ b/rbi/openai/models/fine_tuning/supervised_hyperparameters.rbi @@ -0,0 +1,122 @@ +# typed: strong + +module OpenAI + module Models + module FineTuning + class SupervisedHyperparameters < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + + # Number of examples in each batch. A larger batch size means that model + # parameters are updated less frequently, but with lower variance. + sig { returns(T.nilable(T.any(Symbol, Integer))) } + attr_reader :batch_size + + sig { params(batch_size: T.any(Symbol, Integer)).void } + attr_writer :batch_size + + # Scaling factor for the learning rate. A smaller learning rate may be useful to + # avoid overfitting. + sig { returns(T.nilable(T.any(Symbol, Float))) } + attr_reader :learning_rate_multiplier + + sig { params(learning_rate_multiplier: T.any(Symbol, Float)).void } + attr_writer :learning_rate_multiplier + + # The number of epochs to train the model for. An epoch refers to one full cycle + # through the training dataset. + sig { returns(T.nilable(T.any(Symbol, Integer))) } + attr_reader :n_epochs + + sig { params(n_epochs: T.any(Symbol, Integer)).void } + attr_writer :n_epochs + + # The hyperparameters used for the fine-tuning job. + sig do + params( + batch_size: T.any(Symbol, Integer), + learning_rate_multiplier: T.any(Symbol, Float), + n_epochs: T.any(Symbol, Integer) + ).returns(T.attached_class) + end + def self.new( + # Number of examples in each batch. A larger batch size means that model + # parameters are updated less frequently, but with lower variance. + batch_size: nil, + # Scaling factor for the learning rate. A smaller learning rate may be useful to + # avoid overfitting. + learning_rate_multiplier: nil, + # The number of epochs to train the model for. An epoch refers to one full cycle + # through the training dataset. + n_epochs: nil + ) + end + + sig do + override.returns( + { + batch_size: T.any(Symbol, Integer), + learning_rate_multiplier: T.any(Symbol, Float), + n_epochs: T.any(Symbol, Integer) + } + ) + end + def to_hash + end + + # Number of examples in each batch. A larger batch size means that model + # parameters are updated less frequently, but with lower variance. + module BatchSize + extend OpenAI::Internal::Type::Union + + Variants = T.type_alias { T.any(Symbol, Integer) } + + sig do + override.returns( + T::Array[ + OpenAI::FineTuning::SupervisedHyperparameters::BatchSize::Variants + ] + ) + end + def self.variants + end + end + + # Scaling factor for the learning rate. A smaller learning rate may be useful to + # avoid overfitting. + module LearningRateMultiplier + extend OpenAI::Internal::Type::Union + + Variants = T.type_alias { T.any(Symbol, Float) } + + sig do + override.returns( + T::Array[ + OpenAI::FineTuning::SupervisedHyperparameters::LearningRateMultiplier::Variants + ] + ) + end + def self.variants + end + end + + # The number of epochs to train the model for. An epoch refers to one full cycle + # through the training dataset. + module NEpochs + extend OpenAI::Internal::Type::Union + + Variants = T.type_alias { T.any(Symbol, Integer) } + + sig do + override.returns( + T::Array[ + OpenAI::FineTuning::SupervisedHyperparameters::NEpochs::Variants + ] + ) + end + def self.variants + end + end + end + end + end +end diff --git a/rbi/openai/models/fine_tuning/supervised_method.rbi b/rbi/openai/models/fine_tuning/supervised_method.rbi new file mode 100644 index 00000000..01cf3450 --- /dev/null +++ b/rbi/openai/models/fine_tuning/supervised_method.rbi @@ -0,0 +1,46 @@ +# typed: strong + +module OpenAI + module Models + module FineTuning + class SupervisedMethod < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + + # The hyperparameters used for the fine-tuning job. + sig do + returns(T.nilable(OpenAI::FineTuning::SupervisedHyperparameters)) + end + attr_reader :hyperparameters + + sig do + params( + hyperparameters: + OpenAI::FineTuning::SupervisedHyperparameters::OrHash + ).void + end + attr_writer :hyperparameters + + # Configuration for the supervised fine-tuning method. + sig do + params( + hyperparameters: + OpenAI::FineTuning::SupervisedHyperparameters::OrHash + ).returns(T.attached_class) + end + def self.new( + # The hyperparameters used for the fine-tuning job. + hyperparameters: nil + ) + end + + sig do + override.returns( + { hyperparameters: OpenAI::FineTuning::SupervisedHyperparameters } + ) + end + def to_hash + end + end + end + end +end diff --git a/rbi/openai/models/graders/label_model_grader.rbi b/rbi/openai/models/graders/label_model_grader.rbi new file mode 100644 index 00000000..7ed4f4e7 --- /dev/null +++ b/rbi/openai/models/graders/label_model_grader.rbi @@ -0,0 +1,287 @@ +# typed: strong + +module OpenAI + module Models + LabelModelGrader = Graders::LabelModelGrader + + module Graders + class LabelModelGrader < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + + sig { returns(T::Array[OpenAI::Graders::LabelModelGrader::Input]) } + attr_accessor :input + + # The labels to assign to each item in the evaluation. + sig { returns(T::Array[String]) } + attr_accessor :labels + + # The model to use for the evaluation. Must support structured outputs. + sig { returns(String) } + attr_accessor :model + + # The name of the grader. + sig { returns(String) } + attr_accessor :name + + # The labels that indicate a passing result. Must be a subset of labels. + sig { returns(T::Array[String]) } + attr_accessor :passing_labels + + # The object type, which is always `label_model`. + sig { returns(Symbol) } + attr_accessor :type + + # A LabelModelGrader object which uses a model to assign labels to each item in + # the evaluation. + sig do + params( + input: T::Array[OpenAI::Graders::LabelModelGrader::Input::OrHash], + labels: T::Array[String], + model: String, + name: String, + passing_labels: T::Array[String], + type: Symbol + ).returns(T.attached_class) + end + def self.new( + input:, + # The labels to assign to each item in the evaluation. + labels:, + # The model to use for the evaluation. Must support structured outputs. + model:, + # The name of the grader. + name:, + # The labels that indicate a passing result. Must be a subset of labels. + passing_labels:, + # The object type, which is always `label_model`. + type: :label_model + ) + end + + sig do + override.returns( + { + input: T::Array[OpenAI::Graders::LabelModelGrader::Input], + labels: T::Array[String], + model: String, + name: String, + passing_labels: T::Array[String], + type: Symbol + } + ) + end + def to_hash + end + + class Input < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + + # Text inputs to the model - can contain template strings. + sig do + returns( + T.any( + String, + OpenAI::Responses::ResponseInputText, + OpenAI::Graders::LabelModelGrader::Input::Content::OutputText + ) + ) + end + attr_accessor :content + + # The role of the message input. One of `user`, `assistant`, `system`, or + # `developer`. + sig do + returns(OpenAI::Graders::LabelModelGrader::Input::Role::OrSymbol) + end + attr_accessor :role + + # The type of the message input. Always `message`. + sig do + returns( + T.nilable( + OpenAI::Graders::LabelModelGrader::Input::Type::OrSymbol + ) + ) + end + attr_reader :type + + sig do + params( + type: OpenAI::Graders::LabelModelGrader::Input::Type::OrSymbol + ).void + end + attr_writer :type + + # A message input to the model with a role indicating instruction following + # hierarchy. Instructions given with the `developer` or `system` role take + # precedence over instructions given with the `user` role. Messages with the + # `assistant` role are presumed to have been generated by the model in previous + # interactions. + sig do + params( + content: + T.any( + String, + OpenAI::Responses::ResponseInputText::OrHash, + OpenAI::Graders::LabelModelGrader::Input::Content::OutputText::OrHash + ), + role: OpenAI::Graders::LabelModelGrader::Input::Role::OrSymbol, + type: OpenAI::Graders::LabelModelGrader::Input::Type::OrSymbol + ).returns(T.attached_class) + end + def self.new( + # Text inputs to the model - can contain template strings. + content:, + # The role of the message input. One of `user`, `assistant`, `system`, or + # `developer`. + role:, + # The type of the message input. Always `message`. + type: nil + ) + end + + sig do + override.returns( + { + content: + T.any( + String, + OpenAI::Responses::ResponseInputText, + OpenAI::Graders::LabelModelGrader::Input::Content::OutputText + ), + role: OpenAI::Graders::LabelModelGrader::Input::Role::OrSymbol, + type: OpenAI::Graders::LabelModelGrader::Input::Type::OrSymbol + } + ) + end + def to_hash + end + + # Text inputs to the model - can contain template strings. + module Content + extend OpenAI::Internal::Type::Union + + Variants = + T.type_alias do + T.any( + String, + OpenAI::Responses::ResponseInputText, + OpenAI::Graders::LabelModelGrader::Input::Content::OutputText + ) + end + + class OutputText < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + + # The text output from the model. + sig { returns(String) } + attr_accessor :text + + # The type of the output text. Always `output_text`. + sig { returns(Symbol) } + attr_accessor :type + + # A text output from the model. + sig do + params(text: String, type: Symbol).returns(T.attached_class) + end + def self.new( + # The text output from the model. + text:, + # The type of the output text. Always `output_text`. + type: :output_text + ) + end + + sig { override.returns({ text: String, type: Symbol }) } + def to_hash + end + end + + sig do + override.returns( + T::Array[ + OpenAI::Graders::LabelModelGrader::Input::Content::Variants + ] + ) + end + def self.variants + end + end + + # The role of the message input. One of `user`, `assistant`, `system`, or + # `developer`. + module Role + extend OpenAI::Internal::Type::Enum + + TaggedSymbol = + T.type_alias do + T.all(Symbol, OpenAI::Graders::LabelModelGrader::Input::Role) + end + OrSymbol = T.type_alias { T.any(Symbol, String) } + + USER = + T.let( + :user, + OpenAI::Graders::LabelModelGrader::Input::Role::TaggedSymbol + ) + ASSISTANT = + T.let( + :assistant, + OpenAI::Graders::LabelModelGrader::Input::Role::TaggedSymbol + ) + SYSTEM = + T.let( + :system, + OpenAI::Graders::LabelModelGrader::Input::Role::TaggedSymbol + ) + DEVELOPER = + T.let( + :developer, + OpenAI::Graders::LabelModelGrader::Input::Role::TaggedSymbol + ) + + sig do + override.returns( + T::Array[ + OpenAI::Graders::LabelModelGrader::Input::Role::TaggedSymbol + ] + ) + end + def self.values + end + end + + # The type of the message input. Always `message`. + module Type + extend OpenAI::Internal::Type::Enum + + TaggedSymbol = + T.type_alias do + T.all(Symbol, OpenAI::Graders::LabelModelGrader::Input::Type) + end + OrSymbol = T.type_alias { T.any(Symbol, String) } + + MESSAGE = + T.let( + :message, + OpenAI::Graders::LabelModelGrader::Input::Type::TaggedSymbol + ) + + sig do + override.returns( + T::Array[ + OpenAI::Graders::LabelModelGrader::Input::Type::TaggedSymbol + ] + ) + end + def self.values + end + end + end + end + end + end +end diff --git a/rbi/openai/models/graders/multi_grader.rbi b/rbi/openai/models/graders/multi_grader.rbi new file mode 100644 index 00000000..73159cd7 --- /dev/null +++ b/rbi/openai/models/graders/multi_grader.rbi @@ -0,0 +1,120 @@ +# typed: strong + +module OpenAI + module Models + MultiGrader = Graders::MultiGrader + + module Graders + class MultiGrader < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + + # A formula to calculate the output based on grader results. + sig { returns(String) } + attr_accessor :calculate_output + + sig do + returns( + T::Hash[ + Symbol, + T.any( + OpenAI::Graders::StringCheckGrader, + OpenAI::Graders::TextSimilarityGrader, + OpenAI::Graders::PythonGrader, + OpenAI::Graders::ScoreModelGrader, + OpenAI::Graders::LabelModelGrader + ) + ] + ) + end + attr_accessor :graders + + # The name of the grader. + sig { returns(String) } + attr_accessor :name + + # The type of grader. + sig { returns(Symbol) } + attr_accessor :type + + # A MultiGrader object combines the output of multiple graders to produce a single + # score. + sig do + params( + calculate_output: String, + graders: + T::Hash[ + Symbol, + T.any( + OpenAI::Graders::StringCheckGrader::OrHash, + OpenAI::Graders::TextSimilarityGrader::OrHash, + OpenAI::Graders::PythonGrader::OrHash, + OpenAI::Graders::ScoreModelGrader::OrHash, + OpenAI::Graders::LabelModelGrader::OrHash + ) + ], + name: String, + type: Symbol + ).returns(T.attached_class) + end + def self.new( + # A formula to calculate the output based on grader results. + calculate_output:, + graders:, + # The name of the grader. + name:, + # The type of grader. + type: :multi + ) + end + + sig do + override.returns( + { + calculate_output: String, + graders: + T::Hash[ + Symbol, + T.any( + OpenAI::Graders::StringCheckGrader, + OpenAI::Graders::TextSimilarityGrader, + OpenAI::Graders::PythonGrader, + OpenAI::Graders::ScoreModelGrader, + OpenAI::Graders::LabelModelGrader + ) + ], + name: String, + type: Symbol + } + ) + end + def to_hash + end + + # A StringCheckGrader object that performs a string comparison between input and + # reference using a specified operation. + module Grader + extend OpenAI::Internal::Type::Union + + Variants = + T.type_alias do + T.any( + OpenAI::Graders::StringCheckGrader, + OpenAI::Graders::TextSimilarityGrader, + OpenAI::Graders::PythonGrader, + OpenAI::Graders::ScoreModelGrader, + OpenAI::Graders::LabelModelGrader + ) + end + + sig do + override.returns( + T::Array[OpenAI::Graders::MultiGrader::Grader::Variants] + ) + end + def self.variants + end + end + end + end + end +end diff --git a/rbi/openai/models/graders/python_grader.rbi b/rbi/openai/models/graders/python_grader.rbi new file mode 100644 index 00000000..35441d1b --- /dev/null +++ b/rbi/openai/models/graders/python_grader.rbi @@ -0,0 +1,61 @@ +# typed: strong + +module OpenAI + module Models + PythonGrader = Graders::PythonGrader + + module Graders + class PythonGrader < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + + # The name of the grader. + sig { returns(String) } + attr_accessor :name + + # The source code of the python script. + sig { returns(String) } + attr_accessor :source + + # The object type, which is always `python`. + sig { returns(Symbol) } + attr_accessor :type + + # The image tag to use for the python script. + sig { returns(T.nilable(String)) } + attr_reader :image_tag + + sig { params(image_tag: String).void } + attr_writer :image_tag + + # A PythonGrader object that runs a python script on the input. + sig do + params( + name: String, + source: String, + image_tag: String, + type: Symbol + ).returns(T.attached_class) + end + def self.new( + # The name of the grader. + name:, + # The source code of the python script. + source:, + # The image tag to use for the python script. + image_tag: nil, + # The object type, which is always `python`. + type: :python + ) + end + + sig do + override.returns( + { name: String, source: String, type: Symbol, image_tag: String } + ) + end + def to_hash + end + end + end + end +end diff --git a/rbi/openai/models/graders/score_model_grader.rbi b/rbi/openai/models/graders/score_model_grader.rbi new file mode 100644 index 00000000..1e082a6e --- /dev/null +++ b/rbi/openai/models/graders/score_model_grader.rbi @@ -0,0 +1,294 @@ +# typed: strong + +module OpenAI + module Models + ScoreModelGrader = Graders::ScoreModelGrader + + module Graders + class ScoreModelGrader < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + + # The input text. This may include template strings. + sig { returns(T::Array[OpenAI::Graders::ScoreModelGrader::Input]) } + attr_accessor :input + + # The model to use for the evaluation. + sig { returns(String) } + attr_accessor :model + + # The name of the grader. + sig { returns(String) } + attr_accessor :name + + # The object type, which is always `score_model`. + sig { returns(Symbol) } + attr_accessor :type + + # The range of the score. Defaults to `[0, 1]`. + sig { returns(T.nilable(T::Array[Float])) } + attr_reader :range + + sig { params(range: T::Array[Float]).void } + attr_writer :range + + # The sampling parameters for the model. + sig { returns(T.nilable(T.anything)) } + attr_reader :sampling_params + + sig { params(sampling_params: T.anything).void } + attr_writer :sampling_params + + # A ScoreModelGrader object that uses a model to assign a score to the input. + sig do + params( + input: T::Array[OpenAI::Graders::ScoreModelGrader::Input::OrHash], + model: String, + name: String, + range: T::Array[Float], + sampling_params: T.anything, + type: Symbol + ).returns(T.attached_class) + end + def self.new( + # The input text. This may include template strings. + input:, + # The model to use for the evaluation. + model:, + # The name of the grader. + name:, + # The range of the score. Defaults to `[0, 1]`. + range: nil, + # The sampling parameters for the model. + sampling_params: nil, + # The object type, which is always `score_model`. + type: :score_model + ) + end + + sig do + override.returns( + { + input: T::Array[OpenAI::Graders::ScoreModelGrader::Input], + model: String, + name: String, + type: Symbol, + range: T::Array[Float], + sampling_params: T.anything + } + ) + end + def to_hash + end + + class Input < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + + # Text inputs to the model - can contain template strings. + sig do + returns( + T.any( + String, + OpenAI::Responses::ResponseInputText, + OpenAI::Graders::ScoreModelGrader::Input::Content::OutputText + ) + ) + end + attr_accessor :content + + # The role of the message input. One of `user`, `assistant`, `system`, or + # `developer`. + sig do + returns(OpenAI::Graders::ScoreModelGrader::Input::Role::OrSymbol) + end + attr_accessor :role + + # The type of the message input. Always `message`. + sig do + returns( + T.nilable( + OpenAI::Graders::ScoreModelGrader::Input::Type::OrSymbol + ) + ) + end + attr_reader :type + + sig do + params( + type: OpenAI::Graders::ScoreModelGrader::Input::Type::OrSymbol + ).void + end + attr_writer :type + + # A message input to the model with a role indicating instruction following + # hierarchy. Instructions given with the `developer` or `system` role take + # precedence over instructions given with the `user` role. Messages with the + # `assistant` role are presumed to have been generated by the model in previous + # interactions. + sig do + params( + content: + T.any( + String, + OpenAI::Responses::ResponseInputText::OrHash, + OpenAI::Graders::ScoreModelGrader::Input::Content::OutputText::OrHash + ), + role: OpenAI::Graders::ScoreModelGrader::Input::Role::OrSymbol, + type: OpenAI::Graders::ScoreModelGrader::Input::Type::OrSymbol + ).returns(T.attached_class) + end + def self.new( + # Text inputs to the model - can contain template strings. + content:, + # The role of the message input. One of `user`, `assistant`, `system`, or + # `developer`. + role:, + # The type of the message input. Always `message`. + type: nil + ) + end + + sig do + override.returns( + { + content: + T.any( + String, + OpenAI::Responses::ResponseInputText, + OpenAI::Graders::ScoreModelGrader::Input::Content::OutputText + ), + role: OpenAI::Graders::ScoreModelGrader::Input::Role::OrSymbol, + type: OpenAI::Graders::ScoreModelGrader::Input::Type::OrSymbol + } + ) + end + def to_hash + end + + # Text inputs to the model - can contain template strings. + module Content + extend OpenAI::Internal::Type::Union + + Variants = + T.type_alias do + T.any( + String, + OpenAI::Responses::ResponseInputText, + OpenAI::Graders::ScoreModelGrader::Input::Content::OutputText + ) + end + + class OutputText < OpenAI::Internal::Type::BaseModel + OrHash = + T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + + # The text output from the model. + sig { returns(String) } + attr_accessor :text + + # The type of the output text. Always `output_text`. + sig { returns(Symbol) } + attr_accessor :type + + # A text output from the model. + sig do + params(text: String, type: Symbol).returns(T.attached_class) + end + def self.new( + # The text output from the model. + text:, + # The type of the output text. Always `output_text`. + type: :output_text + ) + end + + sig { override.returns({ text: String, type: Symbol }) } + def to_hash + end + end + + sig do + override.returns( + T::Array[ + OpenAI::Graders::ScoreModelGrader::Input::Content::Variants + ] + ) + end + def self.variants + end + end + + # The role of the message input. One of `user`, `assistant`, `system`, or + # `developer`. + module Role + extend OpenAI::Internal::Type::Enum + + TaggedSymbol = + T.type_alias do + T.all(Symbol, OpenAI::Graders::ScoreModelGrader::Input::Role) + end + OrSymbol = T.type_alias { T.any(Symbol, String) } + + USER = + T.let( + :user, + OpenAI::Graders::ScoreModelGrader::Input::Role::TaggedSymbol + ) + ASSISTANT = + T.let( + :assistant, + OpenAI::Graders::ScoreModelGrader::Input::Role::TaggedSymbol + ) + SYSTEM = + T.let( + :system, + OpenAI::Graders::ScoreModelGrader::Input::Role::TaggedSymbol + ) + DEVELOPER = + T.let( + :developer, + OpenAI::Graders::ScoreModelGrader::Input::Role::TaggedSymbol + ) + + sig do + override.returns( + T::Array[ + OpenAI::Graders::ScoreModelGrader::Input::Role::TaggedSymbol + ] + ) + end + def self.values + end + end + + # The type of the message input. Always `message`. + module Type + extend OpenAI::Internal::Type::Enum + + TaggedSymbol = + T.type_alias do + T.all(Symbol, OpenAI::Graders::ScoreModelGrader::Input::Type) + end + OrSymbol = T.type_alias { T.any(Symbol, String) } + + MESSAGE = + T.let( + :message, + OpenAI::Graders::ScoreModelGrader::Input::Type::TaggedSymbol + ) + + sig do + override.returns( + T::Array[ + OpenAI::Graders::ScoreModelGrader::Input::Type::TaggedSymbol + ] + ) + end + def self.values + end + end + end + end + end + end +end diff --git a/rbi/openai/models/graders/string_check_grader.rbi b/rbi/openai/models/graders/string_check_grader.rbi new file mode 100644 index 00000000..73de12d2 --- /dev/null +++ b/rbi/openai/models/graders/string_check_grader.rbi @@ -0,0 +1,115 @@ +# typed: strong + +module OpenAI + module Models + StringCheckGrader = Graders::StringCheckGrader + + module Graders + class StringCheckGrader < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + + # The input text. This may include template strings. + sig { returns(String) } + attr_accessor :input + + # The name of the grader. + sig { returns(String) } + attr_accessor :name + + # The string check operation to perform. One of `eq`, `ne`, `like`, or `ilike`. + sig { returns(OpenAI::Graders::StringCheckGrader::Operation::OrSymbol) } + attr_accessor :operation + + # The reference text. This may include template strings. + sig { returns(String) } + attr_accessor :reference + + # The object type, which is always `string_check`. + sig { returns(Symbol) } + attr_accessor :type + + # A StringCheckGrader object that performs a string comparison between input and + # reference using a specified operation. + sig do + params( + input: String, + name: String, + operation: OpenAI::Graders::StringCheckGrader::Operation::OrSymbol, + reference: String, + type: Symbol + ).returns(T.attached_class) + end + def self.new( + # The input text. This may include template strings. + input:, + # The name of the grader. + name:, + # The string check operation to perform. One of `eq`, `ne`, `like`, or `ilike`. + operation:, + # The reference text. This may include template strings. + reference:, + # The object type, which is always `string_check`. + type: :string_check + ) + end + + sig do + override.returns( + { + input: String, + name: String, + operation: + OpenAI::Graders::StringCheckGrader::Operation::OrSymbol, + reference: String, + type: Symbol + } + ) + end + def to_hash + end + + # The string check operation to perform. One of `eq`, `ne`, `like`, or `ilike`. + module Operation + extend OpenAI::Internal::Type::Enum + + TaggedSymbol = + T.type_alias do + T.all(Symbol, OpenAI::Graders::StringCheckGrader::Operation) + end + OrSymbol = T.type_alias { T.any(Symbol, String) } + + EQ = + T.let( + :eq, + OpenAI::Graders::StringCheckGrader::Operation::TaggedSymbol + ) + NE = + T.let( + :ne, + OpenAI::Graders::StringCheckGrader::Operation::TaggedSymbol + ) + LIKE = + T.let( + :like, + OpenAI::Graders::StringCheckGrader::Operation::TaggedSymbol + ) + ILIKE = + T.let( + :ilike, + OpenAI::Graders::StringCheckGrader::Operation::TaggedSymbol + ) + + sig do + override.returns( + T::Array[ + OpenAI::Graders::StringCheckGrader::Operation::TaggedSymbol + ] + ) + end + def self.values + end + end + end + end + end +end diff --git a/rbi/openai/models/graders/text_similarity_grader.rbi b/rbi/openai/models/graders/text_similarity_grader.rbi new file mode 100644 index 00000000..6d25d1e0 --- /dev/null +++ b/rbi/openai/models/graders/text_similarity_grader.rbi @@ -0,0 +1,155 @@ +# typed: strong + +module OpenAI + module Models + TextSimilarityGrader = Graders::TextSimilarityGrader + + module Graders + class TextSimilarityGrader < OpenAI::Internal::Type::BaseModel + OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + + # The evaluation metric to use. One of `fuzzy_match`, `bleu`, `gleu`, `meteor`, + # `rouge_1`, `rouge_2`, `rouge_3`, `rouge_4`, `rouge_5`, or `rouge_l`. + sig do + returns( + OpenAI::Graders::TextSimilarityGrader::EvaluationMetric::OrSymbol + ) + end + attr_accessor :evaluation_metric + + # The text being graded. + sig { returns(String) } + attr_accessor :input + + # The name of the grader. + sig { returns(String) } + attr_accessor :name + + # The text being graded against. + sig { returns(String) } + attr_accessor :reference + + # The type of grader. + sig { returns(Symbol) } + attr_accessor :type + + # A TextSimilarityGrader object which grades text based on similarity metrics. + sig do + params( + evaluation_metric: + OpenAI::Graders::TextSimilarityGrader::EvaluationMetric::OrSymbol, + input: String, + name: String, + reference: String, + type: Symbol + ).returns(T.attached_class) + end + def self.new( + # The evaluation metric to use. One of `fuzzy_match`, `bleu`, `gleu`, `meteor`, + # `rouge_1`, `rouge_2`, `rouge_3`, `rouge_4`, `rouge_5`, or `rouge_l`. + evaluation_metric:, + # The text being graded. + input:, + # The name of the grader. + name:, + # The text being graded against. + reference:, + # The type of grader. + type: :text_similarity + ) + end + + sig do + override.returns( + { + evaluation_metric: + OpenAI::Graders::TextSimilarityGrader::EvaluationMetric::OrSymbol, + input: String, + name: String, + reference: String, + type: Symbol + } + ) + end + def to_hash + end + + # The evaluation metric to use. One of `fuzzy_match`, `bleu`, `gleu`, `meteor`, + # `rouge_1`, `rouge_2`, `rouge_3`, `rouge_4`, `rouge_5`, or `rouge_l`. + module EvaluationMetric + extend OpenAI::Internal::Type::Enum + + TaggedSymbol = + T.type_alias do + T.all( + Symbol, + OpenAI::Graders::TextSimilarityGrader::EvaluationMetric + ) + end + OrSymbol = T.type_alias { T.any(Symbol, String) } + + FUZZY_MATCH = + T.let( + :fuzzy_match, + OpenAI::Graders::TextSimilarityGrader::EvaluationMetric::TaggedSymbol + ) + BLEU = + T.let( + :bleu, + OpenAI::Graders::TextSimilarityGrader::EvaluationMetric::TaggedSymbol + ) + GLEU = + T.let( + :gleu, + OpenAI::Graders::TextSimilarityGrader::EvaluationMetric::TaggedSymbol + ) + METEOR = + T.let( + :meteor, + OpenAI::Graders::TextSimilarityGrader::EvaluationMetric::TaggedSymbol + ) + ROUGE_1 = + T.let( + :rouge_1, + OpenAI::Graders::TextSimilarityGrader::EvaluationMetric::TaggedSymbol + ) + ROUGE_2 = + T.let( + :rouge_2, + OpenAI::Graders::TextSimilarityGrader::EvaluationMetric::TaggedSymbol + ) + ROUGE_3 = + T.let( + :rouge_3, + OpenAI::Graders::TextSimilarityGrader::EvaluationMetric::TaggedSymbol + ) + ROUGE_4 = + T.let( + :rouge_4, + OpenAI::Graders::TextSimilarityGrader::EvaluationMetric::TaggedSymbol + ) + ROUGE_5 = + T.let( + :rouge_5, + OpenAI::Graders::TextSimilarityGrader::EvaluationMetric::TaggedSymbol + ) + ROUGE_L = + T.let( + :rouge_l, + OpenAI::Graders::TextSimilarityGrader::EvaluationMetric::TaggedSymbol + ) + + sig do + override.returns( + T::Array[ + OpenAI::Graders::TextSimilarityGrader::EvaluationMetric::TaggedSymbol + ] + ) + end + def self.values + end + end + end + end + end +end diff --git a/rbi/openai/resources/evals.rbi b/rbi/openai/resources/evals.rbi index a55cb86d..bcc6ae0a 100644 --- a/rbi/openai/resources/evals.rbi +++ b/rbi/openai/resources/evals.rbi @@ -16,14 +16,14 @@ module OpenAI data_source_config: T.any( OpenAI::EvalCreateParams::DataSourceConfig::Custom::OrHash, - OpenAI::EvalCreateParams::DataSourceConfig::Logs::OrHash + OpenAI::EvalCreateParams::DataSourceConfig::StoredCompletions::OrHash ), testing_criteria: T::Array[ T.any( OpenAI::EvalCreateParams::TestingCriterion::LabelModel::OrHash, - OpenAI::EvalStringCheckGrader::OrHash, - OpenAI::EvalTextSimilarityGrader::OrHash, + OpenAI::Graders::StringCheckGrader::OrHash, + OpenAI::EvalCreateParams::TestingCriterion::TextSimilarity::OrHash, OpenAI::EvalCreateParams::TestingCriterion::Python::OrHash, OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::OrHash ) diff --git a/rbi/openai/resources/fine_tuning.rbi b/rbi/openai/resources/fine_tuning.rbi index e790ba5e..42e53e48 100644 --- a/rbi/openai/resources/fine_tuning.rbi +++ b/rbi/openai/resources/fine_tuning.rbi @@ -3,12 +3,18 @@ module OpenAI module Resources class FineTuning + sig { returns(OpenAI::Resources::FineTuning::Methods) } + attr_reader :methods_ + sig { returns(OpenAI::Resources::FineTuning::Jobs) } attr_reader :jobs sig { returns(OpenAI::Resources::FineTuning::Checkpoints) } attr_reader :checkpoints + sig { returns(OpenAI::Resources::FineTuning::Alpha) } + attr_reader :alpha + # @api private sig { params(client: OpenAI::Client).returns(T.attached_class) } def self.new(client:) diff --git a/rbi/openai/resources/fine_tuning/alpha.rbi b/rbi/openai/resources/fine_tuning/alpha.rbi new file mode 100644 index 00000000..86bfd743 --- /dev/null +++ b/rbi/openai/resources/fine_tuning/alpha.rbi @@ -0,0 +1,17 @@ +# typed: strong + +module OpenAI + module Resources + class FineTuning + class Alpha + sig { returns(OpenAI::Resources::FineTuning::Alpha::Graders) } + attr_reader :graders + + # @api private + sig { params(client: OpenAI::Client).returns(T.attached_class) } + def self.new(client:) + end + end + end + end +end diff --git a/rbi/openai/resources/fine_tuning/alpha/graders.rbi b/rbi/openai/resources/fine_tuning/alpha/graders.rbi new file mode 100644 index 00000000..4e22b461 --- /dev/null +++ b/rbi/openai/resources/fine_tuning/alpha/graders.rbi @@ -0,0 +1,65 @@ +# typed: strong + +module OpenAI + module Resources + class FineTuning + class Alpha + class Graders + # Run a grader. + sig do + params( + grader: + T.any( + OpenAI::Graders::StringCheckGrader::OrHash, + OpenAI::Graders::TextSimilarityGrader::OrHash, + OpenAI::Graders::PythonGrader::OrHash, + OpenAI::Graders::ScoreModelGrader::OrHash, + OpenAI::Graders::MultiGrader::OrHash + ), + model_sample: String, + reference_answer: + T.any(String, T.anything, T::Array[T.anything], Float), + request_options: OpenAI::RequestOptions::OrHash + ).returns(OpenAI::Models::FineTuning::Alpha::GraderRunResponse) + end + def run( + # The grader used for the fine-tuning job. + grader:, + # The model sample to be evaluated. + model_sample:, + # The reference answer for the evaluation. + reference_answer:, + request_options: {} + ) + end + + # Validate a grader. + sig do + params( + grader: + T.any( + OpenAI::Graders::StringCheckGrader::OrHash, + OpenAI::Graders::TextSimilarityGrader::OrHash, + OpenAI::Graders::PythonGrader::OrHash, + OpenAI::Graders::ScoreModelGrader::OrHash, + OpenAI::Graders::MultiGrader::OrHash + ), + request_options: OpenAI::RequestOptions::OrHash + ).returns(OpenAI::Models::FineTuning::Alpha::GraderValidateResponse) + end + def validate( + # The grader used for the fine-tuning job. + grader:, + request_options: {} + ) + end + + # @api private + sig { params(client: OpenAI::Client).returns(T.attached_class) } + def self.new(client:) + end + end + end + end + end +end diff --git a/rbi/openai/resources/fine_tuning/jobs.rbi b/rbi/openai/resources/fine_tuning/jobs.rbi index 06098504..e60f057d 100644 --- a/rbi/openai/resources/fine_tuning/jobs.rbi +++ b/rbi/openai/resources/fine_tuning/jobs.rbi @@ -176,6 +176,34 @@ module OpenAI ) end + # Pause a fine-tune job. + sig do + params( + fine_tuning_job_id: String, + request_options: OpenAI::RequestOptions::OrHash + ).returns(OpenAI::FineTuning::FineTuningJob) + end + def pause( + # The ID of the fine-tuning job to pause. + fine_tuning_job_id, + request_options: {} + ) + end + + # Resume a fine-tune job. + sig do + params( + fine_tuning_job_id: String, + request_options: OpenAI::RequestOptions::OrHash + ).returns(OpenAI::FineTuning::FineTuningJob) + end + def resume( + # The ID of the fine-tuning job to resume. + fine_tuning_job_id, + request_options: {} + ) + end + # @api private sig { params(client: OpenAI::Client).returns(T.attached_class) } def self.new(client:) diff --git a/rbi/openai/resources/fine_tuning/methods.rbi b/rbi/openai/resources/fine_tuning/methods.rbi new file mode 100644 index 00000000..a03708e5 --- /dev/null +++ b/rbi/openai/resources/fine_tuning/methods.rbi @@ -0,0 +1,14 @@ +# typed: strong + +module OpenAI + module Resources + class FineTuning + class Methods + # @api private + sig { params(client: OpenAI::Client).returns(T.attached_class) } + def self.new(client:) + end + end + end + end +end diff --git a/rbi/openai/resources/graders.rbi b/rbi/openai/resources/graders.rbi new file mode 100644 index 00000000..b409a493 --- /dev/null +++ b/rbi/openai/resources/graders.rbi @@ -0,0 +1,15 @@ +# typed: strong + +module OpenAI + module Resources + class Graders + sig { returns(OpenAI::Resources::Graders::GraderModels) } + attr_reader :grader_models + + # @api private + sig { params(client: OpenAI::Client).returns(T.attached_class) } + def self.new(client:) + end + end + end +end diff --git a/rbi/openai/resources/graders/grader_models.rbi b/rbi/openai/resources/graders/grader_models.rbi new file mode 100644 index 00000000..bc4bcd24 --- /dev/null +++ b/rbi/openai/resources/graders/grader_models.rbi @@ -0,0 +1,14 @@ +# typed: strong + +module OpenAI + module Resources + class Graders + class GraderModels + # @api private + sig { params(client: OpenAI::Client).returns(T.attached_class) } + def self.new(client:) + end + end + end + end +end diff --git a/sig/openai/client.rbs b/sig/openai/client.rbs index 154568f7..929bc894 100644 --- a/sig/openai/client.rbs +++ b/sig/openai/client.rbs @@ -32,6 +32,8 @@ module OpenAI attr_reader fine_tuning: OpenAI::Resources::FineTuning + attr_reader graders: OpenAI::Resources::Graders + attr_reader vector_stores: OpenAI::Resources::VectorStores attr_reader beta: OpenAI::Resources::Beta diff --git a/sig/openai/models.rbs b/sig/openai/models.rbs index 7802cabe..f7ef937f 100644 --- a/sig/openai/models.rbs +++ b/sig/openai/models.rbs @@ -57,8 +57,6 @@ module OpenAI class EvalDeleteParams = OpenAI::Models::EvalDeleteParams - class EvalLabelModelGrader = OpenAI::Models::EvalLabelModelGrader - class EvalListParams = OpenAI::Models::EvalListParams class EvalRetrieveParams = OpenAI::Models::EvalRetrieveParams @@ -67,10 +65,6 @@ module OpenAI class EvalStoredCompletionsDataSourceConfig = OpenAI::Models::EvalStoredCompletionsDataSourceConfig - class EvalStringCheckGrader = OpenAI::Models::EvalStringCheckGrader - - class EvalTextSimilarityGrader = OpenAI::Models::EvalTextSimilarityGrader - class EvalUpdateParams = OpenAI::Models::EvalUpdateParams module FileChunkingStrategy = OpenAI::Models::FileChunkingStrategy @@ -101,6 +95,8 @@ module OpenAI FunctionParameters: OpenAI::Internal::Type::Converter + module Graders = OpenAI::Models::Graders + class Image = OpenAI::Models::Image class ImageCreateVariationParams = OpenAI::Models::ImageCreateVariationParams diff --git a/sig/openai/models/eval_create_params.rbs b/sig/openai/models/eval_create_params.rbs index ac24927c..32949757 100644 --- a/sig/openai/models/eval_create_params.rbs +++ b/sig/openai/models/eval_create_params.rbs @@ -33,7 +33,7 @@ module OpenAI type data_source_config = OpenAI::EvalCreateParams::DataSourceConfig::Custom - | OpenAI::EvalCreateParams::DataSourceConfig::Logs + | OpenAI::EvalCreateParams::DataSourceConfig::StoredCompletions module DataSourceConfig extend OpenAI::Internal::Type::Union @@ -61,16 +61,20 @@ module OpenAI ) -> void end - type logs = { type: :logs, metadata: ::Hash[Symbol, top] } + type stored_completions = + { type: :stored_completions, metadata: ::Hash[Symbol, top] } - class Logs < OpenAI::Internal::Type::BaseModel - attr_accessor type: :logs + class StoredCompletions < OpenAI::Internal::Type::BaseModel + attr_accessor type: :stored_completions attr_reader metadata: ::Hash[Symbol, top]? def metadata=: (::Hash[Symbol, top]) -> ::Hash[Symbol, top] - def initialize: (?metadata: ::Hash[Symbol, top], ?type: :logs) -> void + def initialize: ( + ?metadata: ::Hash[Symbol, top], + ?type: :stored_completions + ) -> void end def self?.variants: -> ::Array[OpenAI::Models::EvalCreateParams::data_source_config] @@ -78,8 +82,8 @@ module OpenAI type testing_criterion = OpenAI::EvalCreateParams::TestingCriterion::LabelModel - | OpenAI::EvalStringCheckGrader - | OpenAI::EvalTextSimilarityGrader + | OpenAI::Graders::StringCheckGrader + | OpenAI::EvalCreateParams::TestingCriterion::TextSimilarity | OpenAI::EvalCreateParams::TestingCriterion::Python | OpenAI::EvalCreateParams::TestingCriterion::ScoreModel @@ -208,149 +212,34 @@ module OpenAI end end - type python = - { - name: String, - source: String, - type: :python, - image_tag: String, - pass_threshold: Float - } - - class Python < OpenAI::Internal::Type::BaseModel - attr_accessor name: String - - attr_accessor source: String - - attr_accessor type: :python - - attr_reader image_tag: String? - - def image_tag=: (String) -> String + type text_similarity = { pass_threshold: Float } - attr_reader pass_threshold: Float? + class TextSimilarity < OpenAI::Models::Graders::TextSimilarityGrader + def pass_threshold: -> Float - def pass_threshold=: (Float) -> Float + def pass_threshold=: (Float _) -> Float - def initialize: ( - name: String, - source: String, - ?image_tag: String, - ?pass_threshold: Float, - ?type: :python - ) -> void + def initialize: (pass_threshold: Float) -> void end - type score_model = - { - input: ::Array[OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input], - model: String, - name: String, - type: :score_model, - pass_threshold: Float, - range: ::Array[Float], - sampling_params: top - } - - class ScoreModel < OpenAI::Internal::Type::BaseModel - attr_accessor input: ::Array[OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input] - - attr_accessor model: String - - attr_accessor name: String - - attr_accessor type: :score_model - - attr_reader pass_threshold: Float? - - def pass_threshold=: (Float) -> Float - - attr_reader range: ::Array[Float]? - - def range=: (::Array[Float]) -> ::Array[Float] + type python = { pass_threshold: Float } - attr_reader sampling_params: top? + class Python < OpenAI::Models::Graders::PythonGrader + def pass_threshold: -> Float? - def sampling_params=: (top) -> top + def pass_threshold=: (Float _) -> Float - def initialize: ( - input: ::Array[OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input], - model: String, - name: String, - ?pass_threshold: Float, - ?range: ::Array[Float], - ?sampling_params: top, - ?type: :score_model - ) -> void - - type input = - { - content: OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input::content, - role: OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input::role, - type: OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input::type_ - } - - class Input < OpenAI::Internal::Type::BaseModel - attr_accessor content: OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input::content - - attr_accessor role: OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input::role - - attr_reader type: OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input::type_? - - def type=: ( - OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input::type_ - ) -> OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input::type_ - - def initialize: ( - content: OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input::content, - role: OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input::role, - ?type: OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input::type_ - ) -> void - - type content = - String - | OpenAI::Responses::ResponseInputText - | OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input::Content::OutputText - - module Content - extend OpenAI::Internal::Type::Union - - type output_text = { text: String, type: :output_text } - - class OutputText < OpenAI::Internal::Type::BaseModel - attr_accessor text: String - - attr_accessor type: :output_text - - def initialize: (text: String, ?type: :output_text) -> void - end - - def self?.variants: -> ::Array[OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input::content] - end - - type role = :user | :assistant | :system | :developer - - module Role - extend OpenAI::Internal::Type::Enum - - USER: :user - ASSISTANT: :assistant - SYSTEM: :system - DEVELOPER: :developer - - def self?.values: -> ::Array[OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input::role] - end + def initialize: (?pass_threshold: Float) -> void + end - type type_ = :message + type score_model = { pass_threshold: Float } - module Type - extend OpenAI::Internal::Type::Enum + class ScoreModel < OpenAI::Models::Graders::ScoreModelGrader + def pass_threshold: -> Float? - MESSAGE: :message + def pass_threshold=: (Float _) -> Float - def self?.values: -> ::Array[OpenAI::EvalCreateParams::TestingCriterion::ScoreModel::Input::type_] - end - end + def initialize: (?pass_threshold: Float) -> void end def self?.variants: -> ::Array[OpenAI::EvalCreateParams::testing_criterion] diff --git a/sig/openai/models/eval_create_response.rbs b/sig/openai/models/eval_create_response.rbs index 8f0a934e..3f610608 100644 --- a/sig/openai/models/eval_create_response.rbs +++ b/sig/openai/models/eval_create_response.rbs @@ -47,158 +47,43 @@ module OpenAI end type testing_criterion = - OpenAI::EvalLabelModelGrader - | OpenAI::EvalStringCheckGrader - | OpenAI::EvalTextSimilarityGrader - | OpenAI::Models::EvalCreateResponse::TestingCriterion::Python - | OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel + OpenAI::Graders::LabelModelGrader + | OpenAI::Graders::StringCheckGrader + | OpenAI::Models::EvalCreateResponse::TestingCriterion::EvalGraderTextSimilarity + | OpenAI::Models::EvalCreateResponse::TestingCriterion::EvalGraderPython + | OpenAI::Models::EvalCreateResponse::TestingCriterion::EvalGraderScoreModel module TestingCriterion extend OpenAI::Internal::Type::Union - type python = - { - name: String, - source: String, - type: :python, - image_tag: String, - pass_threshold: Float - } + type eval_grader_text_similarity = { pass_threshold: Float } - class Python < OpenAI::Internal::Type::BaseModel - attr_accessor name: String + class EvalGraderTextSimilarity < OpenAI::Models::Graders::TextSimilarityGrader + def pass_threshold: -> Float - attr_accessor source: String + def pass_threshold=: (Float _) -> Float - attr_accessor type: :python - - attr_reader image_tag: String? - - def image_tag=: (String) -> String - - attr_reader pass_threshold: Float? - - def pass_threshold=: (Float) -> Float - - def initialize: ( - name: String, - source: String, - ?image_tag: String, - ?pass_threshold: Float, - ?type: :python - ) -> void + def initialize: (pass_threshold: Float) -> void end - type score_model = - { - input: ::Array[OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input], - model: String, - name: String, - type: :score_model, - pass_threshold: Float, - range: ::Array[Float], - sampling_params: top - } - - class ScoreModel < OpenAI::Internal::Type::BaseModel - attr_accessor input: ::Array[OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input] - - attr_accessor model: String - - attr_accessor name: String - - attr_accessor type: :score_model - - attr_reader pass_threshold: Float? - - def pass_threshold=: (Float) -> Float - - attr_reader range: ::Array[Float]? - - def range=: (::Array[Float]) -> ::Array[Float] - - attr_reader sampling_params: top? - - def sampling_params=: (top) -> top - - def initialize: ( - input: ::Array[OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input], - model: String, - name: String, - ?pass_threshold: Float, - ?range: ::Array[Float], - ?sampling_params: top, - ?type: :score_model - ) -> void + type eval_grader_python = { pass_threshold: Float } - type input = - { - content: OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::content, - role: OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::role, - type: OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::type_ - } + class EvalGraderPython < OpenAI::Models::Graders::PythonGrader + def pass_threshold: -> Float? - class Input < OpenAI::Internal::Type::BaseModel - attr_accessor content: OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::content + def pass_threshold=: (Float _) -> Float - attr_accessor role: OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::role - - attr_reader type: OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::type_? - - def type=: ( - OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::type_ - ) -> OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::type_ - - def initialize: ( - content: OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::content, - role: OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::role, - ?type: OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::type_ - ) -> void - - type content = - String - | OpenAI::Responses::ResponseInputText - | OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::Content::OutputText - - module Content - extend OpenAI::Internal::Type::Union - - type output_text = { text: String, type: :output_text } - - class OutputText < OpenAI::Internal::Type::BaseModel - attr_accessor text: String - - attr_accessor type: :output_text - - def initialize: (text: String, ?type: :output_text) -> void - end - - def self?.variants: -> ::Array[OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::content] - end - - type role = :user | :assistant | :system | :developer - - module Role - extend OpenAI::Internal::Type::Enum - - USER: :user - ASSISTANT: :assistant - SYSTEM: :system - DEVELOPER: :developer - - def self?.values: -> ::Array[OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::role] - end + def initialize: (?pass_threshold: Float) -> void + end - type type_ = :message + type eval_grader_score_model = { pass_threshold: Float } - module Type - extend OpenAI::Internal::Type::Enum + class EvalGraderScoreModel < OpenAI::Models::Graders::ScoreModelGrader + def pass_threshold: -> Float? - MESSAGE: :message + def pass_threshold=: (Float _) -> Float - def self?.values: -> ::Array[OpenAI::Models::EvalCreateResponse::TestingCriterion::ScoreModel::Input::type_] - end - end + def initialize: (?pass_threshold: Float) -> void end def self?.variants: -> ::Array[OpenAI::Models::EvalCreateResponse::testing_criterion] diff --git a/sig/openai/models/eval_label_model_grader.rbs b/sig/openai/models/eval_label_model_grader.rbs deleted file mode 100644 index 63867ffd..00000000 --- a/sig/openai/models/eval_label_model_grader.rbs +++ /dev/null @@ -1,105 +0,0 @@ -module OpenAI - module Models - type eval_label_model_grader = - { - input: ::Array[OpenAI::EvalLabelModelGrader::Input], - labels: ::Array[String], - model: String, - name: String, - passing_labels: ::Array[String], - type: :label_model - } - - class EvalLabelModelGrader < OpenAI::Internal::Type::BaseModel - attr_accessor input: ::Array[OpenAI::EvalLabelModelGrader::Input] - - attr_accessor labels: ::Array[String] - - attr_accessor model: String - - attr_accessor name: String - - attr_accessor passing_labels: ::Array[String] - - attr_accessor type: :label_model - - def initialize: ( - input: ::Array[OpenAI::EvalLabelModelGrader::Input], - labels: ::Array[String], - model: String, - name: String, - passing_labels: ::Array[String], - ?type: :label_model - ) -> void - - type input = - { - content: OpenAI::EvalLabelModelGrader::Input::content, - role: OpenAI::EvalLabelModelGrader::Input::role, - type: OpenAI::EvalLabelModelGrader::Input::type_ - } - - class Input < OpenAI::Internal::Type::BaseModel - attr_accessor content: OpenAI::EvalLabelModelGrader::Input::content - - attr_accessor role: OpenAI::EvalLabelModelGrader::Input::role - - attr_reader type: OpenAI::EvalLabelModelGrader::Input::type_? - - def type=: ( - OpenAI::EvalLabelModelGrader::Input::type_ - ) -> OpenAI::EvalLabelModelGrader::Input::type_ - - def initialize: ( - content: OpenAI::EvalLabelModelGrader::Input::content, - role: OpenAI::EvalLabelModelGrader::Input::role, - ?type: OpenAI::EvalLabelModelGrader::Input::type_ - ) -> void - - type content = - String - | OpenAI::Responses::ResponseInputText - | OpenAI::EvalLabelModelGrader::Input::Content::OutputText - - module Content - extend OpenAI::Internal::Type::Union - - type output_text = { text: String, type: :output_text } - - class OutputText < OpenAI::Internal::Type::BaseModel - attr_accessor text: String - - attr_accessor type: :output_text - - def initialize: (text: String, ?type: :output_text) -> void - end - - def self?.variants: -> ::Array[OpenAI::EvalLabelModelGrader::Input::content] - end - - type role = :user | :assistant | :system | :developer - - module Role - extend OpenAI::Internal::Type::Enum - - USER: :user - ASSISTANT: :assistant - SYSTEM: :system - DEVELOPER: :developer - - def self?.values: -> ::Array[OpenAI::EvalLabelModelGrader::Input::role] - end - - type type_ = :message - - module Type - extend OpenAI::Internal::Type::Enum - - MESSAGE: :message - - def self?.values: -> ::Array[OpenAI::EvalLabelModelGrader::Input::type_] - end - end - end - end -end diff --git a/sig/openai/models/eval_list_response.rbs b/sig/openai/models/eval_list_response.rbs index 0384d54a..b53da12b 100644 --- a/sig/openai/models/eval_list_response.rbs +++ b/sig/openai/models/eval_list_response.rbs @@ -47,158 +47,43 @@ module OpenAI end type testing_criterion = - OpenAI::EvalLabelModelGrader - | OpenAI::EvalStringCheckGrader - | OpenAI::EvalTextSimilarityGrader - | OpenAI::Models::EvalListResponse::TestingCriterion::Python - | OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel + OpenAI::Graders::LabelModelGrader + | OpenAI::Graders::StringCheckGrader + | OpenAI::Models::EvalListResponse::TestingCriterion::EvalGraderTextSimilarity + | OpenAI::Models::EvalListResponse::TestingCriterion::EvalGraderPython + | OpenAI::Models::EvalListResponse::TestingCriterion::EvalGraderScoreModel module TestingCriterion extend OpenAI::Internal::Type::Union - type python = - { - name: String, - source: String, - type: :python, - image_tag: String, - pass_threshold: Float - } + type eval_grader_text_similarity = { pass_threshold: Float } - class Python < OpenAI::Internal::Type::BaseModel - attr_accessor name: String + class EvalGraderTextSimilarity < OpenAI::Models::Graders::TextSimilarityGrader + def pass_threshold: -> Float - attr_accessor source: String + def pass_threshold=: (Float _) -> Float - attr_accessor type: :python - - attr_reader image_tag: String? - - def image_tag=: (String) -> String - - attr_reader pass_threshold: Float? - - def pass_threshold=: (Float) -> Float - - def initialize: ( - name: String, - source: String, - ?image_tag: String, - ?pass_threshold: Float, - ?type: :python - ) -> void + def initialize: (pass_threshold: Float) -> void end - type score_model = - { - input: ::Array[OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input], - model: String, - name: String, - type: :score_model, - pass_threshold: Float, - range: ::Array[Float], - sampling_params: top - } - - class ScoreModel < OpenAI::Internal::Type::BaseModel - attr_accessor input: ::Array[OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input] - - attr_accessor model: String - - attr_accessor name: String - - attr_accessor type: :score_model - - attr_reader pass_threshold: Float? - - def pass_threshold=: (Float) -> Float - - attr_reader range: ::Array[Float]? - - def range=: (::Array[Float]) -> ::Array[Float] - - attr_reader sampling_params: top? - - def sampling_params=: (top) -> top - - def initialize: ( - input: ::Array[OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input], - model: String, - name: String, - ?pass_threshold: Float, - ?range: ::Array[Float], - ?sampling_params: top, - ?type: :score_model - ) -> void + type eval_grader_python = { pass_threshold: Float } - type input = - { - content: OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::content, - role: OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::role, - type: OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::type_ - } + class EvalGraderPython < OpenAI::Models::Graders::PythonGrader + def pass_threshold: -> Float? - class Input < OpenAI::Internal::Type::BaseModel - attr_accessor content: OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::content + def pass_threshold=: (Float _) -> Float - attr_accessor role: OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::role - - attr_reader type: OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::type_? - - def type=: ( - OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::type_ - ) -> OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::type_ - - def initialize: ( - content: OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::content, - role: OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::role, - ?type: OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::type_ - ) -> void - - type content = - String - | OpenAI::Responses::ResponseInputText - | OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::Content::OutputText - - module Content - extend OpenAI::Internal::Type::Union - - type output_text = { text: String, type: :output_text } - - class OutputText < OpenAI::Internal::Type::BaseModel - attr_accessor text: String - - attr_accessor type: :output_text - - def initialize: (text: String, ?type: :output_text) -> void - end - - def self?.variants: -> ::Array[OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::content] - end - - type role = :user | :assistant | :system | :developer - - module Role - extend OpenAI::Internal::Type::Enum - - USER: :user - ASSISTANT: :assistant - SYSTEM: :system - DEVELOPER: :developer - - def self?.values: -> ::Array[OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::role] - end + def initialize: (?pass_threshold: Float) -> void + end - type type_ = :message + type eval_grader_score_model = { pass_threshold: Float } - module Type - extend OpenAI::Internal::Type::Enum + class EvalGraderScoreModel < OpenAI::Models::Graders::ScoreModelGrader + def pass_threshold: -> Float? - MESSAGE: :message + def pass_threshold=: (Float _) -> Float - def self?.values: -> ::Array[OpenAI::Models::EvalListResponse::TestingCriterion::ScoreModel::Input::type_] - end - end + def initialize: (?pass_threshold: Float) -> void end def self?.variants: -> ::Array[OpenAI::Models::EvalListResponse::testing_criterion] diff --git a/sig/openai/models/eval_retrieve_response.rbs b/sig/openai/models/eval_retrieve_response.rbs index 191c892e..5bbb313f 100644 --- a/sig/openai/models/eval_retrieve_response.rbs +++ b/sig/openai/models/eval_retrieve_response.rbs @@ -47,158 +47,43 @@ module OpenAI end type testing_criterion = - OpenAI::EvalLabelModelGrader - | OpenAI::EvalStringCheckGrader - | OpenAI::EvalTextSimilarityGrader - | OpenAI::Models::EvalRetrieveResponse::TestingCriterion::Python - | OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel + OpenAI::Graders::LabelModelGrader + | OpenAI::Graders::StringCheckGrader + | OpenAI::Models::EvalRetrieveResponse::TestingCriterion::EvalGraderTextSimilarity + | OpenAI::Models::EvalRetrieveResponse::TestingCriterion::EvalGraderPython + | OpenAI::Models::EvalRetrieveResponse::TestingCriterion::EvalGraderScoreModel module TestingCriterion extend OpenAI::Internal::Type::Union - type python = - { - name: String, - source: String, - type: :python, - image_tag: String, - pass_threshold: Float - } + type eval_grader_text_similarity = { pass_threshold: Float } - class Python < OpenAI::Internal::Type::BaseModel - attr_accessor name: String + class EvalGraderTextSimilarity < OpenAI::Models::Graders::TextSimilarityGrader + def pass_threshold: -> Float - attr_accessor source: String + def pass_threshold=: (Float _) -> Float - attr_accessor type: :python - - attr_reader image_tag: String? - - def image_tag=: (String) -> String - - attr_reader pass_threshold: Float? - - def pass_threshold=: (Float) -> Float - - def initialize: ( - name: String, - source: String, - ?image_tag: String, - ?pass_threshold: Float, - ?type: :python - ) -> void + def initialize: (pass_threshold: Float) -> void end - type score_model = - { - input: ::Array[OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input], - model: String, - name: String, - type: :score_model, - pass_threshold: Float, - range: ::Array[Float], - sampling_params: top - } - - class ScoreModel < OpenAI::Internal::Type::BaseModel - attr_accessor input: ::Array[OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input] - - attr_accessor model: String - - attr_accessor name: String - - attr_accessor type: :score_model - - attr_reader pass_threshold: Float? - - def pass_threshold=: (Float) -> Float - - attr_reader range: ::Array[Float]? - - def range=: (::Array[Float]) -> ::Array[Float] - - attr_reader sampling_params: top? - - def sampling_params=: (top) -> top - - def initialize: ( - input: ::Array[OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input], - model: String, - name: String, - ?pass_threshold: Float, - ?range: ::Array[Float], - ?sampling_params: top, - ?type: :score_model - ) -> void + type eval_grader_python = { pass_threshold: Float } - type input = - { - content: OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::content, - role: OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::role, - type: OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::type_ - } + class EvalGraderPython < OpenAI::Models::Graders::PythonGrader + def pass_threshold: -> Float? - class Input < OpenAI::Internal::Type::BaseModel - attr_accessor content: OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::content + def pass_threshold=: (Float _) -> Float - attr_accessor role: OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::role - - attr_reader type: OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::type_? - - def type=: ( - OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::type_ - ) -> OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::type_ - - def initialize: ( - content: OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::content, - role: OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::role, - ?type: OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::type_ - ) -> void - - type content = - String - | OpenAI::Responses::ResponseInputText - | OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::Content::OutputText - - module Content - extend OpenAI::Internal::Type::Union - - type output_text = { text: String, type: :output_text } - - class OutputText < OpenAI::Internal::Type::BaseModel - attr_accessor text: String - - attr_accessor type: :output_text - - def initialize: (text: String, ?type: :output_text) -> void - end - - def self?.variants: -> ::Array[OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::content] - end - - type role = :user | :assistant | :system | :developer - - module Role - extend OpenAI::Internal::Type::Enum - - USER: :user - ASSISTANT: :assistant - SYSTEM: :system - DEVELOPER: :developer - - def self?.values: -> ::Array[OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::role] - end + def initialize: (?pass_threshold: Float) -> void + end - type type_ = :message + type eval_grader_score_model = { pass_threshold: Float } - module Type - extend OpenAI::Internal::Type::Enum + class EvalGraderScoreModel < OpenAI::Models::Graders::ScoreModelGrader + def pass_threshold: -> Float? - MESSAGE: :message + def pass_threshold=: (Float _) -> Float - def self?.values: -> ::Array[OpenAI::Models::EvalRetrieveResponse::TestingCriterion::ScoreModel::Input::type_] - end - end + def initialize: (?pass_threshold: Float) -> void end def self?.variants: -> ::Array[OpenAI::Models::EvalRetrieveResponse::testing_criterion] diff --git a/sig/openai/models/eval_string_check_grader.rbs b/sig/openai/models/eval_string_check_grader.rbs deleted file mode 100644 index 4fd28012..00000000 --- a/sig/openai/models/eval_string_check_grader.rbs +++ /dev/null @@ -1,45 +0,0 @@ -module OpenAI - module Models - type eval_string_check_grader = - { - input: String, - name: String, - operation: OpenAI::EvalStringCheckGrader::operation, - reference: String, - type: :string_check - } - - class EvalStringCheckGrader < OpenAI::Internal::Type::BaseModel - attr_accessor input: String - - attr_accessor name: String - - attr_accessor operation: OpenAI::EvalStringCheckGrader::operation - - attr_accessor reference: String - - attr_accessor type: :string_check - - def initialize: ( - input: String, - name: String, - operation: OpenAI::EvalStringCheckGrader::operation, - reference: String, - ?type: :string_check - ) -> void - - type operation = :eq | :ne | :like | :ilike - - module Operation - extend OpenAI::Internal::Type::Enum - - EQ: :eq - NE: :ne - LIKE: :like - ILIKE: :ilike - - def self?.values: -> ::Array[OpenAI::EvalStringCheckGrader::operation] - end - end - end -end diff --git a/sig/openai/models/eval_text_similarity_grader.rbs b/sig/openai/models/eval_text_similarity_grader.rbs deleted file mode 100644 index 1e13b3f2..00000000 --- a/sig/openai/models/eval_text_similarity_grader.rbs +++ /dev/null @@ -1,67 +0,0 @@ -module OpenAI - module Models - type eval_text_similarity_grader = - { - evaluation_metric: OpenAI::EvalTextSimilarityGrader::evaluation_metric, - input: String, - pass_threshold: Float, - reference: String, - type: :text_similarity, - name: String - } - - class EvalTextSimilarityGrader < OpenAI::Internal::Type::BaseModel - attr_accessor evaluation_metric: OpenAI::EvalTextSimilarityGrader::evaluation_metric - - attr_accessor input: String - - attr_accessor pass_threshold: Float - - attr_accessor reference: String - - attr_accessor type: :text_similarity - - attr_reader name: String? - - def name=: (String) -> String - - def initialize: ( - evaluation_metric: OpenAI::EvalTextSimilarityGrader::evaluation_metric, - input: String, - pass_threshold: Float, - reference: String, - ?name: String, - ?type: :text_similarity - ) -> void - - type evaluation_metric = - :fuzzy_match - | :bleu - | :gleu - | :meteor - | :rouge_1 - | :rouge_2 - | :rouge_3 - | :rouge_4 - | :rouge_5 - | :rouge_l - - module EvaluationMetric - extend OpenAI::Internal::Type::Enum - - FUZZY_MATCH: :fuzzy_match - BLEU: :bleu - GLEU: :gleu - METEOR: :meteor - ROUGE_1: :rouge_1 - ROUGE_2: :rouge_2 - ROUGE_3: :rouge_3 - ROUGE_4: :rouge_4 - ROUGE_5: :rouge_5 - ROUGE_L: :rouge_l - - def self?.values: -> ::Array[OpenAI::EvalTextSimilarityGrader::evaluation_metric] - end - end - end -end diff --git a/sig/openai/models/eval_update_response.rbs b/sig/openai/models/eval_update_response.rbs index 5138ddc0..e1e0e429 100644 --- a/sig/openai/models/eval_update_response.rbs +++ b/sig/openai/models/eval_update_response.rbs @@ -47,158 +47,43 @@ module OpenAI end type testing_criterion = - OpenAI::EvalLabelModelGrader - | OpenAI::EvalStringCheckGrader - | OpenAI::EvalTextSimilarityGrader - | OpenAI::Models::EvalUpdateResponse::TestingCriterion::Python - | OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel + OpenAI::Graders::LabelModelGrader + | OpenAI::Graders::StringCheckGrader + | OpenAI::Models::EvalUpdateResponse::TestingCriterion::EvalGraderTextSimilarity + | OpenAI::Models::EvalUpdateResponse::TestingCriterion::EvalGraderPython + | OpenAI::Models::EvalUpdateResponse::TestingCriterion::EvalGraderScoreModel module TestingCriterion extend OpenAI::Internal::Type::Union - type python = - { - name: String, - source: String, - type: :python, - image_tag: String, - pass_threshold: Float - } + type eval_grader_text_similarity = { pass_threshold: Float } - class Python < OpenAI::Internal::Type::BaseModel - attr_accessor name: String + class EvalGraderTextSimilarity < OpenAI::Models::Graders::TextSimilarityGrader + def pass_threshold: -> Float - attr_accessor source: String + def pass_threshold=: (Float _) -> Float - attr_accessor type: :python - - attr_reader image_tag: String? - - def image_tag=: (String) -> String - - attr_reader pass_threshold: Float? - - def pass_threshold=: (Float) -> Float - - def initialize: ( - name: String, - source: String, - ?image_tag: String, - ?pass_threshold: Float, - ?type: :python - ) -> void + def initialize: (pass_threshold: Float) -> void end - type score_model = - { - input: ::Array[OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input], - model: String, - name: String, - type: :score_model, - pass_threshold: Float, - range: ::Array[Float], - sampling_params: top - } - - class ScoreModel < OpenAI::Internal::Type::BaseModel - attr_accessor input: ::Array[OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input] - - attr_accessor model: String - - attr_accessor name: String - - attr_accessor type: :score_model - - attr_reader pass_threshold: Float? - - def pass_threshold=: (Float) -> Float - - attr_reader range: ::Array[Float]? - - def range=: (::Array[Float]) -> ::Array[Float] - - attr_reader sampling_params: top? - - def sampling_params=: (top) -> top - - def initialize: ( - input: ::Array[OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input], - model: String, - name: String, - ?pass_threshold: Float, - ?range: ::Array[Float], - ?sampling_params: top, - ?type: :score_model - ) -> void + type eval_grader_python = { pass_threshold: Float } - type input = - { - content: OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::content, - role: OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::role, - type: OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::type_ - } + class EvalGraderPython < OpenAI::Models::Graders::PythonGrader + def pass_threshold: -> Float? - class Input < OpenAI::Internal::Type::BaseModel - attr_accessor content: OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::content + def pass_threshold=: (Float _) -> Float - attr_accessor role: OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::role - - attr_reader type: OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::type_? - - def type=: ( - OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::type_ - ) -> OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::type_ - - def initialize: ( - content: OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::content, - role: OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::role, - ?type: OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::type_ - ) -> void - - type content = - String - | OpenAI::Responses::ResponseInputText - | OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::Content::OutputText - - module Content - extend OpenAI::Internal::Type::Union - - type output_text = { text: String, type: :output_text } - - class OutputText < OpenAI::Internal::Type::BaseModel - attr_accessor text: String - - attr_accessor type: :output_text - - def initialize: (text: String, ?type: :output_text) -> void - end - - def self?.variants: -> ::Array[OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::content] - end - - type role = :user | :assistant | :system | :developer - - module Role - extend OpenAI::Internal::Type::Enum - - USER: :user - ASSISTANT: :assistant - SYSTEM: :system - DEVELOPER: :developer - - def self?.values: -> ::Array[OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::role] - end + def initialize: (?pass_threshold: Float) -> void + end - type type_ = :message + type eval_grader_score_model = { pass_threshold: Float } - module Type - extend OpenAI::Internal::Type::Enum + class EvalGraderScoreModel < OpenAI::Models::Graders::ScoreModelGrader + def pass_threshold: -> Float? - MESSAGE: :message + def pass_threshold=: (Float _) -> Float - def self?.values: -> ::Array[OpenAI::Models::EvalUpdateResponse::TestingCriterion::ScoreModel::Input::type_] - end - end + def initialize: (?pass_threshold: Float) -> void end def self?.variants: -> ::Array[OpenAI::Models::EvalUpdateResponse::testing_criterion] diff --git a/sig/openai/models/fine_tuning/alpha/grader_run_params.rbs b/sig/openai/models/fine_tuning/alpha/grader_run_params.rbs new file mode 100644 index 00000000..4c094ab8 --- /dev/null +++ b/sig/openai/models/fine_tuning/alpha/grader_run_params.rbs @@ -0,0 +1,56 @@ +module OpenAI + module Models + module FineTuning + module Alpha + type grader_run_params = + { + grader: OpenAI::Models::FineTuning::Alpha::GraderRunParams::grader, + model_sample: String, + reference_answer: OpenAI::Models::FineTuning::Alpha::GraderRunParams::reference_answer + } + & OpenAI::Internal::Type::request_parameters + + class GraderRunParams < OpenAI::Internal::Type::BaseModel + extend OpenAI::Internal::Type::RequestParameters::Converter + include OpenAI::Internal::Type::RequestParameters + + attr_accessor grader: OpenAI::Models::FineTuning::Alpha::GraderRunParams::grader + + attr_accessor model_sample: String + + attr_accessor reference_answer: OpenAI::Models::FineTuning::Alpha::GraderRunParams::reference_answer + + def initialize: ( + grader: OpenAI::Models::FineTuning::Alpha::GraderRunParams::grader, + model_sample: String, + reference_answer: OpenAI::Models::FineTuning::Alpha::GraderRunParams::reference_answer, + ?request_options: OpenAI::request_opts + ) -> void + + type grader = + OpenAI::Graders::StringCheckGrader + | OpenAI::Graders::TextSimilarityGrader + | OpenAI::Graders::PythonGrader + | OpenAI::Graders::ScoreModelGrader + | OpenAI::Graders::MultiGrader + + module Grader + extend OpenAI::Internal::Type::Union + + def self?.variants: -> ::Array[OpenAI::Models::FineTuning::Alpha::GraderRunParams::grader] + end + + type reference_answer = String | top | ::Array[top] | Float + + module ReferenceAnswer + extend OpenAI::Internal::Type::Union + + def self?.variants: -> ::Array[OpenAI::Models::FineTuning::Alpha::GraderRunParams::reference_answer] + + UnionMember2Array: OpenAI::Internal::Type::Converter + end + end + end + end + end +end diff --git a/sig/openai/models/fine_tuning/alpha/grader_run_response.rbs b/sig/openai/models/fine_tuning/alpha/grader_run_response.rbs new file mode 100644 index 00000000..fdc022c0 --- /dev/null +++ b/sig/openai/models/fine_tuning/alpha/grader_run_response.rbs @@ -0,0 +1,134 @@ +module OpenAI + module Models + module FineTuning + module Alpha + type grader_run_response = + { + metadata: OpenAI::Models::FineTuning::Alpha::GraderRunResponse::Metadata, + model_grader_token_usage_per_model: ::Hash[Symbol, top], + reward: Float, + sub_rewards: ::Hash[Symbol, top] + } + + class GraderRunResponse < OpenAI::Internal::Type::BaseModel + attr_accessor metadata: OpenAI::Models::FineTuning::Alpha::GraderRunResponse::Metadata + + attr_accessor model_grader_token_usage_per_model: ::Hash[Symbol, top] + + attr_accessor reward: Float + + attr_accessor sub_rewards: ::Hash[Symbol, top] + + def initialize: ( + metadata: OpenAI::Models::FineTuning::Alpha::GraderRunResponse::Metadata, + model_grader_token_usage_per_model: ::Hash[Symbol, top], + reward: Float, + sub_rewards: ::Hash[Symbol, top] + ) -> void + + type metadata = + { + errors: OpenAI::Models::FineTuning::Alpha::GraderRunResponse::Metadata::Errors, + execution_time: Float, + name: String, + sampled_model_name: String?, + scores: ::Hash[Symbol, top], + token_usage: Integer?, + type: String + } + + class Metadata < OpenAI::Internal::Type::BaseModel + attr_accessor errors: OpenAI::Models::FineTuning::Alpha::GraderRunResponse::Metadata::Errors + + attr_accessor execution_time: Float + + attr_accessor name: String + + attr_accessor sampled_model_name: String? + + attr_accessor scores: ::Hash[Symbol, top] + + attr_accessor token_usage: Integer? + + attr_accessor type: String + + def initialize: ( + errors: OpenAI::Models::FineTuning::Alpha::GraderRunResponse::Metadata::Errors, + execution_time: Float, + name: String, + sampled_model_name: String?, + scores: ::Hash[Symbol, top], + token_usage: Integer?, + type: String + ) -> void + + type errors = + { + formula_parse_error: bool, + invalid_variable_error: bool, + model_grader_parse_error: bool, + model_grader_refusal_error: bool, + model_grader_server_error: bool, + model_grader_server_error_details: String?, + other_error: bool, + python_grader_runtime_error: bool, + python_grader_runtime_error_details: String?, + python_grader_server_error: bool, + python_grader_server_error_type: String?, + sample_parse_error: bool, + truncated_observation_error: bool, + unresponsive_reward_error: bool + } + + class Errors < OpenAI::Internal::Type::BaseModel + attr_accessor formula_parse_error: bool + + attr_accessor invalid_variable_error: bool + + attr_accessor model_grader_parse_error: bool + + attr_accessor model_grader_refusal_error: bool + + attr_accessor model_grader_server_error: bool + + attr_accessor model_grader_server_error_details: String? + + attr_accessor other_error: bool + + attr_accessor python_grader_runtime_error: bool + + attr_accessor python_grader_runtime_error_details: String? + + attr_accessor python_grader_server_error: bool + + attr_accessor python_grader_server_error_type: String? + + attr_accessor sample_parse_error: bool + + attr_accessor truncated_observation_error: bool + + attr_accessor unresponsive_reward_error: bool + + def initialize: ( + formula_parse_error: bool, + invalid_variable_error: bool, + model_grader_parse_error: bool, + model_grader_refusal_error: bool, + model_grader_server_error: bool, + model_grader_server_error_details: String?, + other_error: bool, + python_grader_runtime_error: bool, + python_grader_runtime_error_details: String?, + python_grader_server_error: bool, + python_grader_server_error_type: String?, + sample_parse_error: bool, + truncated_observation_error: bool, + unresponsive_reward_error: bool + ) -> void + end + end + end + end + end + end +end diff --git a/sig/openai/models/fine_tuning/alpha/grader_validate_params.rbs b/sig/openai/models/fine_tuning/alpha/grader_validate_params.rbs new file mode 100644 index 00000000..8eec588b --- /dev/null +++ b/sig/openai/models/fine_tuning/alpha/grader_validate_params.rbs @@ -0,0 +1,38 @@ +module OpenAI + module Models + module FineTuning + module Alpha + type grader_validate_params = + { + grader: OpenAI::Models::FineTuning::Alpha::GraderValidateParams::grader + } + & OpenAI::Internal::Type::request_parameters + + class GraderValidateParams < OpenAI::Internal::Type::BaseModel + extend OpenAI::Internal::Type::RequestParameters::Converter + include OpenAI::Internal::Type::RequestParameters + + attr_accessor grader: OpenAI::Models::FineTuning::Alpha::GraderValidateParams::grader + + def initialize: ( + grader: OpenAI::Models::FineTuning::Alpha::GraderValidateParams::grader, + ?request_options: OpenAI::request_opts + ) -> void + + type grader = + OpenAI::Graders::StringCheckGrader + | OpenAI::Graders::TextSimilarityGrader + | OpenAI::Graders::PythonGrader + | OpenAI::Graders::ScoreModelGrader + | OpenAI::Graders::MultiGrader + + module Grader + extend OpenAI::Internal::Type::Union + + def self?.variants: -> ::Array[OpenAI::Models::FineTuning::Alpha::GraderValidateParams::grader] + end + end + end + end + end +end diff --git a/sig/openai/models/fine_tuning/alpha/grader_validate_response.rbs b/sig/openai/models/fine_tuning/alpha/grader_validate_response.rbs new file mode 100644 index 00000000..a2139b77 --- /dev/null +++ b/sig/openai/models/fine_tuning/alpha/grader_validate_response.rbs @@ -0,0 +1,37 @@ +module OpenAI + module Models + module FineTuning + module Alpha + type grader_validate_response = + { + grader: OpenAI::Models::FineTuning::Alpha::GraderValidateResponse::grader + } + + class GraderValidateResponse < OpenAI::Internal::Type::BaseModel + attr_reader grader: OpenAI::Models::FineTuning::Alpha::GraderValidateResponse::grader? + + def grader=: ( + OpenAI::Models::FineTuning::Alpha::GraderValidateResponse::grader + ) -> OpenAI::Models::FineTuning::Alpha::GraderValidateResponse::grader + + def initialize: ( + ?grader: OpenAI::Models::FineTuning::Alpha::GraderValidateResponse::grader + ) -> void + + type grader = + OpenAI::Graders::StringCheckGrader + | OpenAI::Graders::TextSimilarityGrader + | OpenAI::Graders::PythonGrader + | OpenAI::Graders::ScoreModelGrader + | OpenAI::Graders::MultiGrader + + module Grader + extend OpenAI::Internal::Type::Union + + def self?.variants: -> ::Array[OpenAI::Models::FineTuning::Alpha::GraderValidateResponse::grader] + end + end + end + end + end +end diff --git a/sig/openai/models/fine_tuning/dpo_hyperparameters.rbs b/sig/openai/models/fine_tuning/dpo_hyperparameters.rbs new file mode 100644 index 00000000..49aa63fd --- /dev/null +++ b/sig/openai/models/fine_tuning/dpo_hyperparameters.rbs @@ -0,0 +1,78 @@ +module OpenAI + module Models + module FineTuning + type dpo_hyperparameters = + { + batch_size: OpenAI::FineTuning::DpoHyperparameters::batch_size, + beta: OpenAI::FineTuning::DpoHyperparameters::beta, + learning_rate_multiplier: OpenAI::FineTuning::DpoHyperparameters::learning_rate_multiplier, + n_epochs: OpenAI::FineTuning::DpoHyperparameters::n_epochs + } + + class DpoHyperparameters < OpenAI::Internal::Type::BaseModel + attr_reader batch_size: OpenAI::FineTuning::DpoHyperparameters::batch_size? + + def batch_size=: ( + OpenAI::FineTuning::DpoHyperparameters::batch_size + ) -> OpenAI::FineTuning::DpoHyperparameters::batch_size + + attr_reader beta: OpenAI::FineTuning::DpoHyperparameters::beta? + + def beta=: ( + OpenAI::FineTuning::DpoHyperparameters::beta + ) -> OpenAI::FineTuning::DpoHyperparameters::beta + + attr_reader learning_rate_multiplier: OpenAI::FineTuning::DpoHyperparameters::learning_rate_multiplier? + + def learning_rate_multiplier=: ( + OpenAI::FineTuning::DpoHyperparameters::learning_rate_multiplier + ) -> OpenAI::FineTuning::DpoHyperparameters::learning_rate_multiplier + + attr_reader n_epochs: OpenAI::FineTuning::DpoHyperparameters::n_epochs? + + def n_epochs=: ( + OpenAI::FineTuning::DpoHyperparameters::n_epochs + ) -> OpenAI::FineTuning::DpoHyperparameters::n_epochs + + def initialize: ( + ?batch_size: OpenAI::FineTuning::DpoHyperparameters::batch_size, + ?beta: OpenAI::FineTuning::DpoHyperparameters::beta, + ?learning_rate_multiplier: OpenAI::FineTuning::DpoHyperparameters::learning_rate_multiplier, + ?n_epochs: OpenAI::FineTuning::DpoHyperparameters::n_epochs + ) -> void + + type batch_size = :auto | Integer + + module BatchSize + extend OpenAI::Internal::Type::Union + + def self?.variants: -> ::Array[OpenAI::FineTuning::DpoHyperparameters::batch_size] + end + + type beta = :auto | Float + + module Beta + extend OpenAI::Internal::Type::Union + + def self?.variants: -> ::Array[OpenAI::FineTuning::DpoHyperparameters::beta] + end + + type learning_rate_multiplier = :auto | Float + + module LearningRateMultiplier + extend OpenAI::Internal::Type::Union + + def self?.variants: -> ::Array[OpenAI::FineTuning::DpoHyperparameters::learning_rate_multiplier] + end + + type n_epochs = :auto | Integer + + module NEpochs + extend OpenAI::Internal::Type::Union + + def self?.variants: -> ::Array[OpenAI::FineTuning::DpoHyperparameters::n_epochs] + end + end + end + end +end diff --git a/sig/openai/models/fine_tuning/dpo_method.rbs b/sig/openai/models/fine_tuning/dpo_method.rbs new file mode 100644 index 00000000..4284a080 --- /dev/null +++ b/sig/openai/models/fine_tuning/dpo_method.rbs @@ -0,0 +1,20 @@ +module OpenAI + module Models + module FineTuning + type dpo_method = + { hyperparameters: OpenAI::FineTuning::DpoHyperparameters } + + class DpoMethod < OpenAI::Internal::Type::BaseModel + attr_reader hyperparameters: OpenAI::FineTuning::DpoHyperparameters? + + def hyperparameters=: ( + OpenAI::FineTuning::DpoHyperparameters + ) -> OpenAI::FineTuning::DpoHyperparameters + + def initialize: ( + ?hyperparameters: OpenAI::FineTuning::DpoHyperparameters + ) -> void + end + end + end +end diff --git a/sig/openai/models/fine_tuning/fine_tuning_job.rbs b/sig/openai/models/fine_tuning/fine_tuning_job.rbs index bcf014f4..c109a5a8 100644 --- a/sig/openai/models/fine_tuning/fine_tuning_job.rbs +++ b/sig/openai/models/fine_tuning/fine_tuning_job.rbs @@ -187,207 +187,48 @@ module OpenAI type method_ = { - dpo: OpenAI::FineTuning::FineTuningJob::Method::Dpo, - supervised: OpenAI::FineTuning::FineTuningJob::Method::Supervised, - type: OpenAI::FineTuning::FineTuningJob::Method::type_ + type: OpenAI::FineTuning::FineTuningJob::Method::type_, + dpo: OpenAI::FineTuning::DpoMethod, + reinforcement: OpenAI::FineTuning::ReinforcementMethod, + supervised: OpenAI::FineTuning::SupervisedMethod } class Method < OpenAI::Internal::Type::BaseModel - attr_reader dpo: OpenAI::FineTuning::FineTuningJob::Method::Dpo? + attr_accessor type: OpenAI::FineTuning::FineTuningJob::Method::type_ + + attr_reader dpo: OpenAI::FineTuning::DpoMethod? def dpo=: ( - OpenAI::FineTuning::FineTuningJob::Method::Dpo - ) -> OpenAI::FineTuning::FineTuningJob::Method::Dpo + OpenAI::FineTuning::DpoMethod + ) -> OpenAI::FineTuning::DpoMethod - attr_reader supervised: OpenAI::FineTuning::FineTuningJob::Method::Supervised? + attr_reader reinforcement: OpenAI::FineTuning::ReinforcementMethod? - def supervised=: ( - OpenAI::FineTuning::FineTuningJob::Method::Supervised - ) -> OpenAI::FineTuning::FineTuningJob::Method::Supervised + def reinforcement=: ( + OpenAI::FineTuning::ReinforcementMethod + ) -> OpenAI::FineTuning::ReinforcementMethod - attr_reader type: OpenAI::FineTuning::FineTuningJob::Method::type_? + attr_reader supervised: OpenAI::FineTuning::SupervisedMethod? - def type=: ( - OpenAI::FineTuning::FineTuningJob::Method::type_ - ) -> OpenAI::FineTuning::FineTuningJob::Method::type_ + def supervised=: ( + OpenAI::FineTuning::SupervisedMethod + ) -> OpenAI::FineTuning::SupervisedMethod def initialize: ( - ?dpo: OpenAI::FineTuning::FineTuningJob::Method::Dpo, - ?supervised: OpenAI::FineTuning::FineTuningJob::Method::Supervised, - ?type: OpenAI::FineTuning::FineTuningJob::Method::type_ + type: OpenAI::FineTuning::FineTuningJob::Method::type_, + ?dpo: OpenAI::FineTuning::DpoMethod, + ?reinforcement: OpenAI::FineTuning::ReinforcementMethod, + ?supervised: OpenAI::FineTuning::SupervisedMethod ) -> void - type dpo = - { - hyperparameters: OpenAI::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters - } - - class Dpo < OpenAI::Internal::Type::BaseModel - attr_reader hyperparameters: OpenAI::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters? - - def hyperparameters=: ( - OpenAI::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters - ) -> OpenAI::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters - - def initialize: ( - ?hyperparameters: OpenAI::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters - ) -> void - - type hyperparameters = - { - batch_size: OpenAI::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters::batch_size, - beta: OpenAI::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters::beta, - learning_rate_multiplier: OpenAI::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters::learning_rate_multiplier, - n_epochs: OpenAI::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters::n_epochs - } - - class Hyperparameters < OpenAI::Internal::Type::BaseModel - attr_reader batch_size: OpenAI::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters::batch_size? - - def batch_size=: ( - OpenAI::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters::batch_size - ) -> OpenAI::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters::batch_size - - attr_reader beta: OpenAI::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters::beta? - - def beta=: ( - OpenAI::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters::beta - ) -> OpenAI::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters::beta - - attr_reader learning_rate_multiplier: OpenAI::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters::learning_rate_multiplier? - - def learning_rate_multiplier=: ( - OpenAI::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters::learning_rate_multiplier - ) -> OpenAI::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters::learning_rate_multiplier - - attr_reader n_epochs: OpenAI::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters::n_epochs? - - def n_epochs=: ( - OpenAI::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters::n_epochs - ) -> OpenAI::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters::n_epochs - - def initialize: ( - ?batch_size: OpenAI::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters::batch_size, - ?beta: OpenAI::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters::beta, - ?learning_rate_multiplier: OpenAI::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters::learning_rate_multiplier, - ?n_epochs: OpenAI::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters::n_epochs - ) -> void - - type batch_size = :auto | Integer - - module BatchSize - extend OpenAI::Internal::Type::Union - - def self?.variants: -> ::Array[OpenAI::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters::batch_size] - end - - type beta = :auto | Float - - module Beta - extend OpenAI::Internal::Type::Union - - def self?.variants: -> ::Array[OpenAI::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters::beta] - end - - type learning_rate_multiplier = :auto | Float - - module LearningRateMultiplier - extend OpenAI::Internal::Type::Union - - def self?.variants: -> ::Array[OpenAI::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters::learning_rate_multiplier] - end - - type n_epochs = :auto | Integer - - module NEpochs - extend OpenAI::Internal::Type::Union - - def self?.variants: -> ::Array[OpenAI::FineTuning::FineTuningJob::Method::Dpo::Hyperparameters::n_epochs] - end - end - end - - type supervised = - { - hyperparameters: OpenAI::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters - } - - class Supervised < OpenAI::Internal::Type::BaseModel - attr_reader hyperparameters: OpenAI::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters? - - def hyperparameters=: ( - OpenAI::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters - ) -> OpenAI::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters - - def initialize: ( - ?hyperparameters: OpenAI::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters - ) -> void - - type hyperparameters = - { - batch_size: OpenAI::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters::batch_size, - learning_rate_multiplier: OpenAI::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters::learning_rate_multiplier, - n_epochs: OpenAI::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters::n_epochs - } - - class Hyperparameters < OpenAI::Internal::Type::BaseModel - attr_reader batch_size: OpenAI::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters::batch_size? - - def batch_size=: ( - OpenAI::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters::batch_size - ) -> OpenAI::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters::batch_size - - attr_reader learning_rate_multiplier: OpenAI::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters::learning_rate_multiplier? - - def learning_rate_multiplier=: ( - OpenAI::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters::learning_rate_multiplier - ) -> OpenAI::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters::learning_rate_multiplier - - attr_reader n_epochs: OpenAI::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters::n_epochs? - - def n_epochs=: ( - OpenAI::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters::n_epochs - ) -> OpenAI::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters::n_epochs - - def initialize: ( - ?batch_size: OpenAI::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters::batch_size, - ?learning_rate_multiplier: OpenAI::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters::learning_rate_multiplier, - ?n_epochs: OpenAI::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters::n_epochs - ) -> void - - type batch_size = :auto | Integer - - module BatchSize - extend OpenAI::Internal::Type::Union - - def self?.variants: -> ::Array[OpenAI::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters::batch_size] - end - - type learning_rate_multiplier = :auto | Float - - module LearningRateMultiplier - extend OpenAI::Internal::Type::Union - - def self?.variants: -> ::Array[OpenAI::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters::learning_rate_multiplier] - end - - type n_epochs = :auto | Integer - - module NEpochs - extend OpenAI::Internal::Type::Union - - def self?.variants: -> ::Array[OpenAI::FineTuning::FineTuningJob::Method::Supervised::Hyperparameters::n_epochs] - end - end - end - - type type_ = :supervised | :dpo + type type_ = :supervised | :dpo | :reinforcement module Type extend OpenAI::Internal::Type::Enum SUPERVISED: :supervised DPO: :dpo + REINFORCEMENT: :reinforcement def self?.values: -> ::Array[OpenAI::FineTuning::FineTuningJob::Method::type_] end diff --git a/sig/openai/models/fine_tuning/job_create_params.rbs b/sig/openai/models/fine_tuning/job_create_params.rbs index 0669fd09..37e6178d 100644 --- a/sig/openai/models/fine_tuning/job_create_params.rbs +++ b/sig/openai/models/fine_tuning/job_create_params.rbs @@ -179,207 +179,48 @@ module OpenAI type method_ = { - dpo: OpenAI::FineTuning::JobCreateParams::Method::Dpo, - supervised: OpenAI::FineTuning::JobCreateParams::Method::Supervised, - type: OpenAI::FineTuning::JobCreateParams::Method::type_ + type: OpenAI::FineTuning::JobCreateParams::Method::type_, + dpo: OpenAI::FineTuning::DpoMethod, + reinforcement: OpenAI::FineTuning::ReinforcementMethod, + supervised: OpenAI::FineTuning::SupervisedMethod } class Method < OpenAI::Internal::Type::BaseModel - attr_reader dpo: OpenAI::FineTuning::JobCreateParams::Method::Dpo? + attr_accessor type: OpenAI::FineTuning::JobCreateParams::Method::type_ + + attr_reader dpo: OpenAI::FineTuning::DpoMethod? def dpo=: ( - OpenAI::FineTuning::JobCreateParams::Method::Dpo - ) -> OpenAI::FineTuning::JobCreateParams::Method::Dpo + OpenAI::FineTuning::DpoMethod + ) -> OpenAI::FineTuning::DpoMethod - attr_reader supervised: OpenAI::FineTuning::JobCreateParams::Method::Supervised? + attr_reader reinforcement: OpenAI::FineTuning::ReinforcementMethod? - def supervised=: ( - OpenAI::FineTuning::JobCreateParams::Method::Supervised - ) -> OpenAI::FineTuning::JobCreateParams::Method::Supervised + def reinforcement=: ( + OpenAI::FineTuning::ReinforcementMethod + ) -> OpenAI::FineTuning::ReinforcementMethod - attr_reader type: OpenAI::FineTuning::JobCreateParams::Method::type_? + attr_reader supervised: OpenAI::FineTuning::SupervisedMethod? - def type=: ( - OpenAI::FineTuning::JobCreateParams::Method::type_ - ) -> OpenAI::FineTuning::JobCreateParams::Method::type_ + def supervised=: ( + OpenAI::FineTuning::SupervisedMethod + ) -> OpenAI::FineTuning::SupervisedMethod def initialize: ( - ?dpo: OpenAI::FineTuning::JobCreateParams::Method::Dpo, - ?supervised: OpenAI::FineTuning::JobCreateParams::Method::Supervised, - ?type: OpenAI::FineTuning::JobCreateParams::Method::type_ + type: OpenAI::FineTuning::JobCreateParams::Method::type_, + ?dpo: OpenAI::FineTuning::DpoMethod, + ?reinforcement: OpenAI::FineTuning::ReinforcementMethod, + ?supervised: OpenAI::FineTuning::SupervisedMethod ) -> void - type dpo = - { - hyperparameters: OpenAI::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters - } - - class Dpo < OpenAI::Internal::Type::BaseModel - attr_reader hyperparameters: OpenAI::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters? - - def hyperparameters=: ( - OpenAI::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters - ) -> OpenAI::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters - - def initialize: ( - ?hyperparameters: OpenAI::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters - ) -> void - - type hyperparameters = - { - batch_size: OpenAI::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters::batch_size, - beta: OpenAI::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters::beta, - learning_rate_multiplier: OpenAI::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters::learning_rate_multiplier, - n_epochs: OpenAI::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters::n_epochs - } - - class Hyperparameters < OpenAI::Internal::Type::BaseModel - attr_reader batch_size: OpenAI::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters::batch_size? - - def batch_size=: ( - OpenAI::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters::batch_size - ) -> OpenAI::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters::batch_size - - attr_reader beta: OpenAI::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters::beta? - - def beta=: ( - OpenAI::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters::beta - ) -> OpenAI::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters::beta - - attr_reader learning_rate_multiplier: OpenAI::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters::learning_rate_multiplier? - - def learning_rate_multiplier=: ( - OpenAI::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters::learning_rate_multiplier - ) -> OpenAI::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters::learning_rate_multiplier - - attr_reader n_epochs: OpenAI::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters::n_epochs? - - def n_epochs=: ( - OpenAI::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters::n_epochs - ) -> OpenAI::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters::n_epochs - - def initialize: ( - ?batch_size: OpenAI::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters::batch_size, - ?beta: OpenAI::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters::beta, - ?learning_rate_multiplier: OpenAI::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters::learning_rate_multiplier, - ?n_epochs: OpenAI::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters::n_epochs - ) -> void - - type batch_size = :auto | Integer - - module BatchSize - extend OpenAI::Internal::Type::Union - - def self?.variants: -> ::Array[OpenAI::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters::batch_size] - end - - type beta = :auto | Float - - module Beta - extend OpenAI::Internal::Type::Union - - def self?.variants: -> ::Array[OpenAI::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters::beta] - end - - type learning_rate_multiplier = :auto | Float - - module LearningRateMultiplier - extend OpenAI::Internal::Type::Union - - def self?.variants: -> ::Array[OpenAI::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters::learning_rate_multiplier] - end - - type n_epochs = :auto | Integer - - module NEpochs - extend OpenAI::Internal::Type::Union - - def self?.variants: -> ::Array[OpenAI::FineTuning::JobCreateParams::Method::Dpo::Hyperparameters::n_epochs] - end - end - end - - type supervised = - { - hyperparameters: OpenAI::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters - } - - class Supervised < OpenAI::Internal::Type::BaseModel - attr_reader hyperparameters: OpenAI::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters? - - def hyperparameters=: ( - OpenAI::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters - ) -> OpenAI::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters - - def initialize: ( - ?hyperparameters: OpenAI::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters - ) -> void - - type hyperparameters = - { - batch_size: OpenAI::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters::batch_size, - learning_rate_multiplier: OpenAI::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters::learning_rate_multiplier, - n_epochs: OpenAI::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters::n_epochs - } - - class Hyperparameters < OpenAI::Internal::Type::BaseModel - attr_reader batch_size: OpenAI::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters::batch_size? - - def batch_size=: ( - OpenAI::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters::batch_size - ) -> OpenAI::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters::batch_size - - attr_reader learning_rate_multiplier: OpenAI::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters::learning_rate_multiplier? - - def learning_rate_multiplier=: ( - OpenAI::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters::learning_rate_multiplier - ) -> OpenAI::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters::learning_rate_multiplier - - attr_reader n_epochs: OpenAI::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters::n_epochs? - - def n_epochs=: ( - OpenAI::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters::n_epochs - ) -> OpenAI::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters::n_epochs - - def initialize: ( - ?batch_size: OpenAI::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters::batch_size, - ?learning_rate_multiplier: OpenAI::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters::learning_rate_multiplier, - ?n_epochs: OpenAI::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters::n_epochs - ) -> void - - type batch_size = :auto | Integer - - module BatchSize - extend OpenAI::Internal::Type::Union - - def self?.variants: -> ::Array[OpenAI::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters::batch_size] - end - - type learning_rate_multiplier = :auto | Float - - module LearningRateMultiplier - extend OpenAI::Internal::Type::Union - - def self?.variants: -> ::Array[OpenAI::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters::learning_rate_multiplier] - end - - type n_epochs = :auto | Integer - - module NEpochs - extend OpenAI::Internal::Type::Union - - def self?.variants: -> ::Array[OpenAI::FineTuning::JobCreateParams::Method::Supervised::Hyperparameters::n_epochs] - end - end - end - - type type_ = :supervised | :dpo + type type_ = :supervised | :dpo | :reinforcement module Type extend OpenAI::Internal::Type::Enum SUPERVISED: :supervised DPO: :dpo + REINFORCEMENT: :reinforcement def self?.values: -> ::Array[OpenAI::FineTuning::JobCreateParams::Method::type_] end diff --git a/sig/openai/models/fine_tuning/job_pause_params.rbs b/sig/openai/models/fine_tuning/job_pause_params.rbs new file mode 100644 index 00000000..a5ac0d51 --- /dev/null +++ b/sig/openai/models/fine_tuning/job_pause_params.rbs @@ -0,0 +1,14 @@ +module OpenAI + module Models + module FineTuning + type job_pause_params = { } & OpenAI::Internal::Type::request_parameters + + class JobPauseParams < OpenAI::Internal::Type::BaseModel + extend OpenAI::Internal::Type::RequestParameters::Converter + include OpenAI::Internal::Type::RequestParameters + + def initialize: (?request_options: OpenAI::request_opts) -> void + end + end + end +end diff --git a/sig/openai/models/fine_tuning/job_resume_params.rbs b/sig/openai/models/fine_tuning/job_resume_params.rbs new file mode 100644 index 00000000..fa50a15b --- /dev/null +++ b/sig/openai/models/fine_tuning/job_resume_params.rbs @@ -0,0 +1,14 @@ +module OpenAI + module Models + module FineTuning + type job_resume_params = { } & OpenAI::Internal::Type::request_parameters + + class JobResumeParams < OpenAI::Internal::Type::BaseModel + extend OpenAI::Internal::Type::RequestParameters::Converter + include OpenAI::Internal::Type::RequestParameters + + def initialize: (?request_options: OpenAI::request_opts) -> void + end + end + end +end diff --git a/sig/openai/models/fine_tuning/reinforcement_hyperparameters.rbs b/sig/openai/models/fine_tuning/reinforcement_hyperparameters.rbs new file mode 100644 index 00000000..64891385 --- /dev/null +++ b/sig/openai/models/fine_tuning/reinforcement_hyperparameters.rbs @@ -0,0 +1,131 @@ +module OpenAI + module Models + module FineTuning + type reinforcement_hyperparameters = + { + batch_size: OpenAI::FineTuning::ReinforcementHyperparameters::batch_size, + compute_multiplier: OpenAI::FineTuning::ReinforcementHyperparameters::compute_multiplier, + eval_interval: OpenAI::FineTuning::ReinforcementHyperparameters::eval_interval, + eval_samples: OpenAI::FineTuning::ReinforcementHyperparameters::eval_samples, + learning_rate_multiplier: OpenAI::FineTuning::ReinforcementHyperparameters::learning_rate_multiplier, + n_epochs: OpenAI::FineTuning::ReinforcementHyperparameters::n_epochs, + reasoning_effort: OpenAI::FineTuning::ReinforcementHyperparameters::reasoning_effort + } + + class ReinforcementHyperparameters < OpenAI::Internal::Type::BaseModel + attr_reader batch_size: OpenAI::FineTuning::ReinforcementHyperparameters::batch_size? + + def batch_size=: ( + OpenAI::FineTuning::ReinforcementHyperparameters::batch_size + ) -> OpenAI::FineTuning::ReinforcementHyperparameters::batch_size + + attr_reader compute_multiplier: OpenAI::FineTuning::ReinforcementHyperparameters::compute_multiplier? + + def compute_multiplier=: ( + OpenAI::FineTuning::ReinforcementHyperparameters::compute_multiplier + ) -> OpenAI::FineTuning::ReinforcementHyperparameters::compute_multiplier + + attr_reader eval_interval: OpenAI::FineTuning::ReinforcementHyperparameters::eval_interval? + + def eval_interval=: ( + OpenAI::FineTuning::ReinforcementHyperparameters::eval_interval + ) -> OpenAI::FineTuning::ReinforcementHyperparameters::eval_interval + + attr_reader eval_samples: OpenAI::FineTuning::ReinforcementHyperparameters::eval_samples? + + def eval_samples=: ( + OpenAI::FineTuning::ReinforcementHyperparameters::eval_samples + ) -> OpenAI::FineTuning::ReinforcementHyperparameters::eval_samples + + attr_reader learning_rate_multiplier: OpenAI::FineTuning::ReinforcementHyperparameters::learning_rate_multiplier? + + def learning_rate_multiplier=: ( + OpenAI::FineTuning::ReinforcementHyperparameters::learning_rate_multiplier + ) -> OpenAI::FineTuning::ReinforcementHyperparameters::learning_rate_multiplier + + attr_reader n_epochs: OpenAI::FineTuning::ReinforcementHyperparameters::n_epochs? + + def n_epochs=: ( + OpenAI::FineTuning::ReinforcementHyperparameters::n_epochs + ) -> OpenAI::FineTuning::ReinforcementHyperparameters::n_epochs + + attr_reader reasoning_effort: OpenAI::FineTuning::ReinforcementHyperparameters::reasoning_effort? + + def reasoning_effort=: ( + OpenAI::FineTuning::ReinforcementHyperparameters::reasoning_effort + ) -> OpenAI::FineTuning::ReinforcementHyperparameters::reasoning_effort + + def initialize: ( + ?batch_size: OpenAI::FineTuning::ReinforcementHyperparameters::batch_size, + ?compute_multiplier: OpenAI::FineTuning::ReinforcementHyperparameters::compute_multiplier, + ?eval_interval: OpenAI::FineTuning::ReinforcementHyperparameters::eval_interval, + ?eval_samples: OpenAI::FineTuning::ReinforcementHyperparameters::eval_samples, + ?learning_rate_multiplier: OpenAI::FineTuning::ReinforcementHyperparameters::learning_rate_multiplier, + ?n_epochs: OpenAI::FineTuning::ReinforcementHyperparameters::n_epochs, + ?reasoning_effort: OpenAI::FineTuning::ReinforcementHyperparameters::reasoning_effort + ) -> void + + type batch_size = :auto | Integer + + module BatchSize + extend OpenAI::Internal::Type::Union + + def self?.variants: -> ::Array[OpenAI::FineTuning::ReinforcementHyperparameters::batch_size] + end + + type compute_multiplier = :auto | Float + + module ComputeMultiplier + extend OpenAI::Internal::Type::Union + + def self?.variants: -> ::Array[OpenAI::FineTuning::ReinforcementHyperparameters::compute_multiplier] + end + + type eval_interval = :auto | Integer + + module EvalInterval + extend OpenAI::Internal::Type::Union + + def self?.variants: -> ::Array[OpenAI::FineTuning::ReinforcementHyperparameters::eval_interval] + end + + type eval_samples = :auto | Integer + + module EvalSamples + extend OpenAI::Internal::Type::Union + + def self?.variants: -> ::Array[OpenAI::FineTuning::ReinforcementHyperparameters::eval_samples] + end + + type learning_rate_multiplier = :auto | Float + + module LearningRateMultiplier + extend OpenAI::Internal::Type::Union + + def self?.variants: -> ::Array[OpenAI::FineTuning::ReinforcementHyperparameters::learning_rate_multiplier] + end + + type n_epochs = :auto | Integer + + module NEpochs + extend OpenAI::Internal::Type::Union + + def self?.variants: -> ::Array[OpenAI::FineTuning::ReinforcementHyperparameters::n_epochs] + end + + type reasoning_effort = :default | :low | :medium | :high + + module ReasoningEffort + extend OpenAI::Internal::Type::Enum + + DEFAULT: :default + LOW: :low + MEDIUM: :medium + HIGH: :high + + def self?.values: -> ::Array[OpenAI::FineTuning::ReinforcementHyperparameters::reasoning_effort] + end + end + end + end +end diff --git a/sig/openai/models/fine_tuning/reinforcement_method.rbs b/sig/openai/models/fine_tuning/reinforcement_method.rbs new file mode 100644 index 00000000..4205559a --- /dev/null +++ b/sig/openai/models/fine_tuning/reinforcement_method.rbs @@ -0,0 +1,39 @@ +module OpenAI + module Models + module FineTuning + type reinforcement_method = + { + grader: OpenAI::FineTuning::ReinforcementMethod::grader, + hyperparameters: OpenAI::FineTuning::ReinforcementHyperparameters + } + + class ReinforcementMethod < OpenAI::Internal::Type::BaseModel + attr_accessor grader: OpenAI::FineTuning::ReinforcementMethod::grader + + attr_reader hyperparameters: OpenAI::FineTuning::ReinforcementHyperparameters? + + def hyperparameters=: ( + OpenAI::FineTuning::ReinforcementHyperparameters + ) -> OpenAI::FineTuning::ReinforcementHyperparameters + + def initialize: ( + grader: OpenAI::FineTuning::ReinforcementMethod::grader, + ?hyperparameters: OpenAI::FineTuning::ReinforcementHyperparameters + ) -> void + + type grader = + OpenAI::Graders::StringCheckGrader + | OpenAI::Graders::TextSimilarityGrader + | OpenAI::Graders::PythonGrader + | OpenAI::Graders::ScoreModelGrader + | OpenAI::Graders::MultiGrader + + module Grader + extend OpenAI::Internal::Type::Union + + def self?.variants: -> ::Array[OpenAI::FineTuning::ReinforcementMethod::grader] + end + end + end + end +end diff --git a/sig/openai/models/fine_tuning/supervised_hyperparameters.rbs b/sig/openai/models/fine_tuning/supervised_hyperparameters.rbs new file mode 100644 index 00000000..7ca1ee8f --- /dev/null +++ b/sig/openai/models/fine_tuning/supervised_hyperparameters.rbs @@ -0,0 +1,62 @@ +module OpenAI + module Models + module FineTuning + type supervised_hyperparameters = + { + batch_size: OpenAI::FineTuning::SupervisedHyperparameters::batch_size, + learning_rate_multiplier: OpenAI::FineTuning::SupervisedHyperparameters::learning_rate_multiplier, + n_epochs: OpenAI::FineTuning::SupervisedHyperparameters::n_epochs + } + + class SupervisedHyperparameters < OpenAI::Internal::Type::BaseModel + attr_reader batch_size: OpenAI::FineTuning::SupervisedHyperparameters::batch_size? + + def batch_size=: ( + OpenAI::FineTuning::SupervisedHyperparameters::batch_size + ) -> OpenAI::FineTuning::SupervisedHyperparameters::batch_size + + attr_reader learning_rate_multiplier: OpenAI::FineTuning::SupervisedHyperparameters::learning_rate_multiplier? + + def learning_rate_multiplier=: ( + OpenAI::FineTuning::SupervisedHyperparameters::learning_rate_multiplier + ) -> OpenAI::FineTuning::SupervisedHyperparameters::learning_rate_multiplier + + attr_reader n_epochs: OpenAI::FineTuning::SupervisedHyperparameters::n_epochs? + + def n_epochs=: ( + OpenAI::FineTuning::SupervisedHyperparameters::n_epochs + ) -> OpenAI::FineTuning::SupervisedHyperparameters::n_epochs + + def initialize: ( + ?batch_size: OpenAI::FineTuning::SupervisedHyperparameters::batch_size, + ?learning_rate_multiplier: OpenAI::FineTuning::SupervisedHyperparameters::learning_rate_multiplier, + ?n_epochs: OpenAI::FineTuning::SupervisedHyperparameters::n_epochs + ) -> void + + type batch_size = :auto | Integer + + module BatchSize + extend OpenAI::Internal::Type::Union + + def self?.variants: -> ::Array[OpenAI::FineTuning::SupervisedHyperparameters::batch_size] + end + + type learning_rate_multiplier = :auto | Float + + module LearningRateMultiplier + extend OpenAI::Internal::Type::Union + + def self?.variants: -> ::Array[OpenAI::FineTuning::SupervisedHyperparameters::learning_rate_multiplier] + end + + type n_epochs = :auto | Integer + + module NEpochs + extend OpenAI::Internal::Type::Union + + def self?.variants: -> ::Array[OpenAI::FineTuning::SupervisedHyperparameters::n_epochs] + end + end + end + end +end diff --git a/sig/openai/models/fine_tuning/supervised_method.rbs b/sig/openai/models/fine_tuning/supervised_method.rbs new file mode 100644 index 00000000..eccaf9d3 --- /dev/null +++ b/sig/openai/models/fine_tuning/supervised_method.rbs @@ -0,0 +1,20 @@ +module OpenAI + module Models + module FineTuning + type supervised_method = + { hyperparameters: OpenAI::FineTuning::SupervisedHyperparameters } + + class SupervisedMethod < OpenAI::Internal::Type::BaseModel + attr_reader hyperparameters: OpenAI::FineTuning::SupervisedHyperparameters? + + def hyperparameters=: ( + OpenAI::FineTuning::SupervisedHyperparameters + ) -> OpenAI::FineTuning::SupervisedHyperparameters + + def initialize: ( + ?hyperparameters: OpenAI::FineTuning::SupervisedHyperparameters + ) -> void + end + end + end +end diff --git a/sig/openai/models/graders/label_model_grader.rbs b/sig/openai/models/graders/label_model_grader.rbs new file mode 100644 index 00000000..93d8ef92 --- /dev/null +++ b/sig/openai/models/graders/label_model_grader.rbs @@ -0,0 +1,109 @@ +module OpenAI + module Models + class LabelModelGrader = Graders::LabelModelGrader + + module Graders + type label_model_grader = + { + input: ::Array[OpenAI::Graders::LabelModelGrader::Input], + labels: ::Array[String], + model: String, + name: String, + passing_labels: ::Array[String], + type: :label_model + } + + class LabelModelGrader < OpenAI::Internal::Type::BaseModel + attr_accessor input: ::Array[OpenAI::Graders::LabelModelGrader::Input] + + attr_accessor labels: ::Array[String] + + attr_accessor model: String + + attr_accessor name: String + + attr_accessor passing_labels: ::Array[String] + + attr_accessor type: :label_model + + def initialize: ( + input: ::Array[OpenAI::Graders::LabelModelGrader::Input], + labels: ::Array[String], + model: String, + name: String, + passing_labels: ::Array[String], + ?type: :label_model + ) -> void + + type input = + { + content: OpenAI::Graders::LabelModelGrader::Input::content, + role: OpenAI::Graders::LabelModelGrader::Input::role, + type: OpenAI::Graders::LabelModelGrader::Input::type_ + } + + class Input < OpenAI::Internal::Type::BaseModel + attr_accessor content: OpenAI::Graders::LabelModelGrader::Input::content + + attr_accessor role: OpenAI::Graders::LabelModelGrader::Input::role + + attr_reader type: OpenAI::Graders::LabelModelGrader::Input::type_? + + def type=: ( + OpenAI::Graders::LabelModelGrader::Input::type_ + ) -> OpenAI::Graders::LabelModelGrader::Input::type_ + + def initialize: ( + content: OpenAI::Graders::LabelModelGrader::Input::content, + role: OpenAI::Graders::LabelModelGrader::Input::role, + ?type: OpenAI::Graders::LabelModelGrader::Input::type_ + ) -> void + + type content = + String + | OpenAI::Responses::ResponseInputText + | OpenAI::Graders::LabelModelGrader::Input::Content::OutputText + + module Content + extend OpenAI::Internal::Type::Union + + type output_text = { text: String, type: :output_text } + + class OutputText < OpenAI::Internal::Type::BaseModel + attr_accessor text: String + + attr_accessor type: :output_text + + def initialize: (text: String, ?type: :output_text) -> void + end + + def self?.variants: -> ::Array[OpenAI::Graders::LabelModelGrader::Input::content] + end + + type role = :user | :assistant | :system | :developer + + module Role + extend OpenAI::Internal::Type::Enum + + USER: :user + ASSISTANT: :assistant + SYSTEM: :system + DEVELOPER: :developer + + def self?.values: -> ::Array[OpenAI::Graders::LabelModelGrader::Input::role] + end + + type type_ = :message + + module Type + extend OpenAI::Internal::Type::Enum + + MESSAGE: :message + + def self?.values: -> ::Array[OpenAI::Graders::LabelModelGrader::Input::type_] + end + end + end + end + end +end diff --git a/sig/openai/models/graders/multi_grader.rbs b/sig/openai/models/graders/multi_grader.rbs new file mode 100644 index 00000000..295e5177 --- /dev/null +++ b/sig/openai/models/graders/multi_grader.rbs @@ -0,0 +1,45 @@ +module OpenAI + module Models + class MultiGrader = Graders::MultiGrader + + module Graders + type multi_grader = + { + calculate_output: String, + graders: ::Hash[Symbol, OpenAI::Graders::MultiGrader::grader], + name: String, + type: :multi + } + + class MultiGrader < OpenAI::Internal::Type::BaseModel + attr_accessor calculate_output: String + + attr_accessor graders: ::Hash[Symbol, OpenAI::Graders::MultiGrader::grader] + + attr_accessor name: String + + attr_accessor type: :multi + + def initialize: ( + calculate_output: String, + graders: ::Hash[Symbol, OpenAI::Graders::MultiGrader::grader], + name: String, + ?type: :multi + ) -> void + + type grader = + OpenAI::Graders::StringCheckGrader + | OpenAI::Graders::TextSimilarityGrader + | OpenAI::Graders::PythonGrader + | OpenAI::Graders::ScoreModelGrader + | OpenAI::Graders::LabelModelGrader + + module Grader + extend OpenAI::Internal::Type::Union + + def self?.variants: -> ::Array[OpenAI::Graders::MultiGrader::grader] + end + end + end + end +end diff --git a/sig/openai/models/graders/python_grader.rbs b/sig/openai/models/graders/python_grader.rbs new file mode 100644 index 00000000..e23c7c85 --- /dev/null +++ b/sig/openai/models/graders/python_grader.rbs @@ -0,0 +1,29 @@ +module OpenAI + module Models + class PythonGrader = Graders::PythonGrader + + module Graders + type python_grader = + { name: String, source: String, type: :python, image_tag: String } + + class PythonGrader < OpenAI::Internal::Type::BaseModel + attr_accessor name: String + + attr_accessor source: String + + attr_accessor type: :python + + attr_reader image_tag: String? + + def image_tag=: (String) -> String + + def initialize: ( + name: String, + source: String, + ?image_tag: String, + ?type: :python + ) -> void + end + end + end +end diff --git a/sig/openai/models/graders/score_model_grader.rbs b/sig/openai/models/graders/score_model_grader.rbs new file mode 100644 index 00000000..74b9785e --- /dev/null +++ b/sig/openai/models/graders/score_model_grader.rbs @@ -0,0 +1,113 @@ +module OpenAI + module Models + class ScoreModelGrader = Graders::ScoreModelGrader + + module Graders + type score_model_grader = + { + input: ::Array[OpenAI::Graders::ScoreModelGrader::Input], + model: String, + name: String, + type: :score_model, + range: ::Array[Float], + sampling_params: top + } + + class ScoreModelGrader < OpenAI::Internal::Type::BaseModel + attr_accessor input: ::Array[OpenAI::Graders::ScoreModelGrader::Input] + + attr_accessor model: String + + attr_accessor name: String + + attr_accessor type: :score_model + + attr_reader range: ::Array[Float]? + + def range=: (::Array[Float]) -> ::Array[Float] + + attr_reader sampling_params: top? + + def sampling_params=: (top) -> top + + def initialize: ( + input: ::Array[OpenAI::Graders::ScoreModelGrader::Input], + model: String, + name: String, + ?range: ::Array[Float], + ?sampling_params: top, + ?type: :score_model + ) -> void + + type input = + { + content: OpenAI::Graders::ScoreModelGrader::Input::content, + role: OpenAI::Graders::ScoreModelGrader::Input::role, + type: OpenAI::Graders::ScoreModelGrader::Input::type_ + } + + class Input < OpenAI::Internal::Type::BaseModel + attr_accessor content: OpenAI::Graders::ScoreModelGrader::Input::content + + attr_accessor role: OpenAI::Graders::ScoreModelGrader::Input::role + + attr_reader type: OpenAI::Graders::ScoreModelGrader::Input::type_? + + def type=: ( + OpenAI::Graders::ScoreModelGrader::Input::type_ + ) -> OpenAI::Graders::ScoreModelGrader::Input::type_ + + def initialize: ( + content: OpenAI::Graders::ScoreModelGrader::Input::content, + role: OpenAI::Graders::ScoreModelGrader::Input::role, + ?type: OpenAI::Graders::ScoreModelGrader::Input::type_ + ) -> void + + type content = + String + | OpenAI::Responses::ResponseInputText + | OpenAI::Graders::ScoreModelGrader::Input::Content::OutputText + + module Content + extend OpenAI::Internal::Type::Union + + type output_text = { text: String, type: :output_text } + + class OutputText < OpenAI::Internal::Type::BaseModel + attr_accessor text: String + + attr_accessor type: :output_text + + def initialize: (text: String, ?type: :output_text) -> void + end + + def self?.variants: -> ::Array[OpenAI::Graders::ScoreModelGrader::Input::content] + end + + type role = :user | :assistant | :system | :developer + + module Role + extend OpenAI::Internal::Type::Enum + + USER: :user + ASSISTANT: :assistant + SYSTEM: :system + DEVELOPER: :developer + + def self?.values: -> ::Array[OpenAI::Graders::ScoreModelGrader::Input::role] + end + + type type_ = :message + + module Type + extend OpenAI::Internal::Type::Enum + + MESSAGE: :message + + def self?.values: -> ::Array[OpenAI::Graders::ScoreModelGrader::Input::type_] + end + end + end + end + end +end diff --git a/sig/openai/models/graders/string_check_grader.rbs b/sig/openai/models/graders/string_check_grader.rbs new file mode 100644 index 00000000..5f60ffb0 --- /dev/null +++ b/sig/openai/models/graders/string_check_grader.rbs @@ -0,0 +1,49 @@ +module OpenAI + module Models + class StringCheckGrader = Graders::StringCheckGrader + + module Graders + type string_check_grader = + { + input: String, + name: String, + operation: OpenAI::Graders::StringCheckGrader::operation, + reference: String, + type: :string_check + } + + class StringCheckGrader < OpenAI::Internal::Type::BaseModel + attr_accessor input: String + + attr_accessor name: String + + attr_accessor operation: OpenAI::Graders::StringCheckGrader::operation + + attr_accessor reference: String + + attr_accessor type: :string_check + + def initialize: ( + input: String, + name: String, + operation: OpenAI::Graders::StringCheckGrader::operation, + reference: String, + ?type: :string_check + ) -> void + + type operation = :eq | :ne | :like | :ilike + + module Operation + extend OpenAI::Internal::Type::Enum + + EQ: :eq + NE: :ne + LIKE: :like + ILIKE: :ilike + + def self?.values: -> ::Array[OpenAI::Graders::StringCheckGrader::operation] + end + end + end + end +end diff --git a/sig/openai/models/graders/text_similarity_grader.rbs b/sig/openai/models/graders/text_similarity_grader.rbs new file mode 100644 index 00000000..24453b12 --- /dev/null +++ b/sig/openai/models/graders/text_similarity_grader.rbs @@ -0,0 +1,65 @@ +module OpenAI + module Models + class TextSimilarityGrader = Graders::TextSimilarityGrader + + module Graders + type text_similarity_grader = + { + evaluation_metric: OpenAI::Graders::TextSimilarityGrader::evaluation_metric, + input: String, + name: String, + reference: String, + type: :text_similarity + } + + class TextSimilarityGrader < OpenAI::Internal::Type::BaseModel + attr_accessor evaluation_metric: OpenAI::Graders::TextSimilarityGrader::evaluation_metric + + attr_accessor input: String + + attr_accessor name: String + + attr_accessor reference: String + + attr_accessor type: :text_similarity + + def initialize: ( + evaluation_metric: OpenAI::Graders::TextSimilarityGrader::evaluation_metric, + input: String, + name: String, + reference: String, + ?type: :text_similarity + ) -> void + + type evaluation_metric = + :fuzzy_match + | :bleu + | :gleu + | :meteor + | :rouge_1 + | :rouge_2 + | :rouge_3 + | :rouge_4 + | :rouge_5 + | :rouge_l + + module EvaluationMetric + extend OpenAI::Internal::Type::Enum + + FUZZY_MATCH: :fuzzy_match + BLEU: :bleu + GLEU: :gleu + METEOR: :meteor + ROUGE_1: :rouge_1 + ROUGE_2: :rouge_2 + ROUGE_3: :rouge_3 + ROUGE_4: :rouge_4 + ROUGE_5: :rouge_5 + ROUGE_L: :rouge_l + + def self?.values: -> ::Array[OpenAI::Graders::TextSimilarityGrader::evaluation_metric] + end + end + end + end +end diff --git a/sig/openai/resources/fine_tuning.rbs b/sig/openai/resources/fine_tuning.rbs index db3f1574..f51dbeaa 100644 --- a/sig/openai/resources/fine_tuning.rbs +++ b/sig/openai/resources/fine_tuning.rbs @@ -1,10 +1,14 @@ module OpenAI module Resources class FineTuning + attr_reader methods_: OpenAI::Resources::FineTuning::Methods + attr_reader jobs: OpenAI::Resources::FineTuning::Jobs attr_reader checkpoints: OpenAI::Resources::FineTuning::Checkpoints + attr_reader alpha: OpenAI::Resources::FineTuning::Alpha + def initialize: (client: OpenAI::Client) -> void end end diff --git a/sig/openai/resources/fine_tuning/alpha.rbs b/sig/openai/resources/fine_tuning/alpha.rbs new file mode 100644 index 00000000..467661b1 --- /dev/null +++ b/sig/openai/resources/fine_tuning/alpha.rbs @@ -0,0 +1,11 @@ +module OpenAI + module Resources + class FineTuning + class Alpha + attr_reader graders: OpenAI::Resources::FineTuning::Alpha::Graders + + def initialize: (client: OpenAI::Client) -> void + end + end + end +end diff --git a/sig/openai/resources/fine_tuning/alpha/graders.rbs b/sig/openai/resources/fine_tuning/alpha/graders.rbs new file mode 100644 index 00000000..a460c4c7 --- /dev/null +++ b/sig/openai/resources/fine_tuning/alpha/graders.rbs @@ -0,0 +1,23 @@ +module OpenAI + module Resources + class FineTuning + class Alpha + class Graders + def run: ( + grader: OpenAI::Models::FineTuning::Alpha::GraderRunParams::grader, + model_sample: String, + reference_answer: OpenAI::Models::FineTuning::Alpha::GraderRunParams::reference_answer, + ?request_options: OpenAI::request_opts + ) -> OpenAI::Models::FineTuning::Alpha::GraderRunResponse + + def validate: ( + grader: OpenAI::Models::FineTuning::Alpha::GraderValidateParams::grader, + ?request_options: OpenAI::request_opts + ) -> OpenAI::Models::FineTuning::Alpha::GraderValidateResponse + + def initialize: (client: OpenAI::Client) -> void + end + end + end + end +end diff --git a/sig/openai/resources/fine_tuning/jobs.rbs b/sig/openai/resources/fine_tuning/jobs.rbs index fe96137a..c28f22d8 100644 --- a/sig/openai/resources/fine_tuning/jobs.rbs +++ b/sig/openai/resources/fine_tuning/jobs.rbs @@ -41,6 +41,16 @@ module OpenAI ?request_options: OpenAI::request_opts ) -> OpenAI::Internal::CursorPage[OpenAI::FineTuning::FineTuningJobEvent] + def pause: ( + String fine_tuning_job_id, + ?request_options: OpenAI::request_opts + ) -> OpenAI::FineTuning::FineTuningJob + + def resume: ( + String fine_tuning_job_id, + ?request_options: OpenAI::request_opts + ) -> OpenAI::FineTuning::FineTuningJob + def initialize: (client: OpenAI::Client) -> void end end diff --git a/sig/openai/resources/fine_tuning/methods.rbs b/sig/openai/resources/fine_tuning/methods.rbs new file mode 100644 index 00000000..16dc30bc --- /dev/null +++ b/sig/openai/resources/fine_tuning/methods.rbs @@ -0,0 +1,9 @@ +module OpenAI + module Resources + class FineTuning + class Methods + def initialize: (client: OpenAI::Client) -> void + end + end + end +end diff --git a/sig/openai/resources/graders.rbs b/sig/openai/resources/graders.rbs new file mode 100644 index 00000000..aed8f8b6 --- /dev/null +++ b/sig/openai/resources/graders.rbs @@ -0,0 +1,9 @@ +module OpenAI + module Resources + class Graders + attr_reader grader_models: OpenAI::Resources::Graders::GraderModels + + def initialize: (client: OpenAI::Client) -> void + end + end +end diff --git a/sig/openai/resources/graders/grader_models.rbs b/sig/openai/resources/graders/grader_models.rbs new file mode 100644 index 00000000..637eb1a6 --- /dev/null +++ b/sig/openai/resources/graders/grader_models.rbs @@ -0,0 +1,9 @@ +module OpenAI + module Resources + class Graders + class GraderModels + def initialize: (client: OpenAI::Client) -> void + end + end + end +end diff --git a/test/openai/resource_namespaces.rb b/test/openai/resource_namespaces.rb index c76a68aa..dc01c156 100644 --- a/test/openai/resource_namespaces.rb +++ b/test/openai/resource_namespaces.rb @@ -3,6 +3,9 @@ module OpenAI module Test module Resources + module Alpha + end + module Audio end @@ -30,6 +33,9 @@ module Runs end module FineTuning + module Alpha + end + module Checkpoints end @@ -37,6 +43,9 @@ module Jobs end end + module Graders + end + module Jobs end diff --git a/test/openai/resources/fine_tuning/alpha/graders_test.rb b/test/openai/resources/fine_tuning/alpha/graders_test.rb new file mode 100644 index 00000000..7a1c620a --- /dev/null +++ b/test/openai/resources/fine_tuning/alpha/graders_test.rb @@ -0,0 +1,44 @@ +# frozen_string_literal: true + +require_relative "../../../test_helper" + +class OpenAI::Test::Resources::FineTuning::Alpha::GradersTest < OpenAI::Test::ResourceTest + def test_run_required_params + response = + @openai.fine_tuning.alpha.graders.run( + grader: {input: "input", name: "name", operation: :eq, reference: "reference", type: :string_check}, + model_sample: "model_sample", + reference_answer: "string" + ) + + assert_pattern do + response => OpenAI::Models::FineTuning::Alpha::GraderRunResponse + end + + assert_pattern do + response => { + metadata: OpenAI::Models::FineTuning::Alpha::GraderRunResponse::Metadata, + model_grader_token_usage_per_model: ^(OpenAI::Internal::Type::HashOf[OpenAI::Internal::Type::Unknown]), + reward: Float, + sub_rewards: ^(OpenAI::Internal::Type::HashOf[OpenAI::Internal::Type::Unknown]) + } + end + end + + def test_validate_required_params + response = + @openai.fine_tuning.alpha.graders.validate( + grader: {input: "input", name: "name", operation: :eq, reference: "reference", type: :string_check} + ) + + assert_pattern do + response => OpenAI::Models::FineTuning::Alpha::GraderValidateResponse + end + + assert_pattern do + response => { + grader: OpenAI::Models::FineTuning::Alpha::GraderValidateResponse::Grader | nil + } + end + end +end diff --git a/test/openai/resources/fine_tuning/alpha_test.rb b/test/openai/resources/fine_tuning/alpha_test.rb new file mode 100644 index 00000000..53389b81 --- /dev/null +++ b/test/openai/resources/fine_tuning/alpha_test.rb @@ -0,0 +1,6 @@ +# frozen_string_literal: true + +require_relative "../../test_helper" + +class OpenAI::Test::Resources::FineTuning::AlphaTest < OpenAI::Test::ResourceTest +end diff --git a/test/openai/resources/fine_tuning/jobs_test.rb b/test/openai/resources/fine_tuning/jobs_test.rb index 188a79e7..3047ffd4 100644 --- a/test/openai/resources/fine_tuning/jobs_test.rb +++ b/test/openai/resources/fine_tuning/jobs_test.rb @@ -164,4 +164,68 @@ def test_list_events } end end + + def test_pause + response = @openai.fine_tuning.jobs.pause("ft-AF1WoRqd3aJAHsqc9NY7iL8F") + + assert_pattern do + response => OpenAI::FineTuning::FineTuningJob + end + + assert_pattern do + response => { + id: String, + created_at: Integer, + error: OpenAI::FineTuning::FineTuningJob::Error | nil, + fine_tuned_model: String | nil, + finished_at: Integer | nil, + hyperparameters: OpenAI::FineTuning::FineTuningJob::Hyperparameters, + model: String, + object: Symbol, + organization_id: String, + result_files: ^(OpenAI::Internal::Type::ArrayOf[String]), + seed: Integer, + status: OpenAI::FineTuning::FineTuningJob::Status, + trained_tokens: Integer | nil, + training_file: String, + validation_file: String | nil, + estimated_finish: Integer | nil, + integrations: ^(OpenAI::Internal::Type::ArrayOf[OpenAI::FineTuning::FineTuningJobWandbIntegrationObject]) | nil, + metadata: ^(OpenAI::Internal::Type::HashOf[String]) | nil, + method_: OpenAI::FineTuning::FineTuningJob::Method | nil + } + end + end + + def test_resume + response = @openai.fine_tuning.jobs.resume("ft-AF1WoRqd3aJAHsqc9NY7iL8F") + + assert_pattern do + response => OpenAI::FineTuning::FineTuningJob + end + + assert_pattern do + response => { + id: String, + created_at: Integer, + error: OpenAI::FineTuning::FineTuningJob::Error | nil, + fine_tuned_model: String | nil, + finished_at: Integer | nil, + hyperparameters: OpenAI::FineTuning::FineTuningJob::Hyperparameters, + model: String, + object: Symbol, + organization_id: String, + result_files: ^(OpenAI::Internal::Type::ArrayOf[String]), + seed: Integer, + status: OpenAI::FineTuning::FineTuningJob::Status, + trained_tokens: Integer | nil, + training_file: String, + validation_file: String | nil, + estimated_finish: Integer | nil, + integrations: ^(OpenAI::Internal::Type::ArrayOf[OpenAI::FineTuning::FineTuningJobWandbIntegrationObject]) | nil, + metadata: ^(OpenAI::Internal::Type::HashOf[String]) | nil, + method_: OpenAI::FineTuning::FineTuningJob::Method | nil + } + end + end end diff --git a/test/openai/resources/fine_tuning/methods_test.rb b/test/openai/resources/fine_tuning/methods_test.rb new file mode 100644 index 00000000..69a6ca5a --- /dev/null +++ b/test/openai/resources/fine_tuning/methods_test.rb @@ -0,0 +1,6 @@ +# frozen_string_literal: true + +require_relative "../../test_helper" + +class OpenAI::Test::Resources::FineTuning::MethodsTest < OpenAI::Test::ResourceTest +end diff --git a/test/openai/resources/graders/grader_models_test.rb b/test/openai/resources/graders/grader_models_test.rb new file mode 100644 index 00000000..6a2f0b0a --- /dev/null +++ b/test/openai/resources/graders/grader_models_test.rb @@ -0,0 +1,6 @@ +# frozen_string_literal: true + +require_relative "../../test_helper" + +class OpenAI::Test::Resources::Graders::GraderModelsTest < OpenAI::Test::ResourceTest +end diff --git a/test/openai/resources/graders_test.rb b/test/openai/resources/graders_test.rb new file mode 100644 index 00000000..64e6bf4f --- /dev/null +++ b/test/openai/resources/graders_test.rb @@ -0,0 +1,6 @@ +# frozen_string_literal: true + +require_relative "../test_helper" + +class OpenAI::Test::Resources::GradersTest < OpenAI::Test::ResourceTest +end From 0ef168abd7e0a5a0c5f8d2e5f49ee87e81995d99 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Mon, 12 May 2025 18:06:21 +0000 Subject: [PATCH 47/47] feat: support sorbet aliases at the runtime --- lib/openai/internal.rb | 6 + lib/openai/internal/transport/base_client.rb | 50 ++++++ .../transport/pooled_net_requester.rb | 14 ++ lib/openai/internal/type/array_of.rb | 2 +- lib/openai/internal/type/base_model.rb | 21 ++- lib/openai/internal/type/converter.rb | 18 ++ lib/openai/internal/type/enum.rb | 1 + lib/openai/internal/type/hash_of.rb | 2 +- lib/openai/internal/type/union.rb | 1 + lib/openai/internal/util.rb | 56 ++++++ lib/openai/models.rb | 27 +++ lib/openai/models/all_models.rb | 6 + .../models/audio/speech_create_params.rb | 8 + .../audio/transcription_create_params.rb | 4 + .../audio/transcription_create_response.rb | 4 + .../audio/transcription_stream_event.rb | 6 + .../models/audio/translation_create_params.rb | 4 + .../audio/translation_create_response.rb | 4 + .../models/beta/assistant_create_params.rb | 13 ++ .../beta/assistant_response_format_option.rb | 11 ++ .../models/beta/assistant_stream_event.rb | 31 ++++ lib/openai/models/beta/assistant_tool.rb | 6 + .../beta/assistant_tool_choice_option.rb | 9 + .../models/beta/assistant_update_params.rb | 4 + .../models/beta/message_stream_event.rb | 12 ++ .../models/beta/run_step_stream_event.rb | 14 ++ lib/openai/models/beta/run_stream_event.rb | 17 ++ .../beta/thread_create_and_run_params.rb | 37 ++++ .../models/beta/thread_create_params.rb | 33 ++++ lib/openai/models/beta/threads/annotation.rb | 6 + .../models/beta/threads/annotation_delta.rb | 9 + lib/openai/models/beta/threads/message.rb | 9 + .../models/beta/threads/message_content.rb | 11 ++ .../beta/threads/message_content_delta.rb | 11 ++ .../threads/message_content_part_param.rb | 10 ++ .../beta/threads/message_create_params.rb | 24 +++ .../models/beta/threads/run_create_params.rb | 28 +++ .../runs/code_interpreter_tool_call.rb | 9 + .../runs/code_interpreter_tool_call_delta.rb | 9 + .../models/beta/threads/runs/run_step.rb | 9 + .../beta/threads/runs/run_step_delta.rb | 9 + .../models/beta/threads/runs/tool_call.rb | 10 ++ .../beta/threads/runs/tool_call_delta.rb | 10 ++ ...chat_completion_assistant_message_param.rb | 21 +++ .../chat/chat_completion_audio_param.rb | 4 + .../chat/chat_completion_content_part.rb | 11 ++ ...chat_completion_developer_message_param.rb | 4 + .../chat/chat_completion_message_param.rb | 13 ++ .../chat_completion_prediction_content.rb | 4 + .../chat_completion_system_message_param.rb | 4 + .../chat_completion_tool_choice_option.rb | 9 + .../chat_completion_tool_message_param.rb | 4 + .../chat_completion_user_message_param.rb | 16 ++ .../models/chat/completion_create_params.rb | 27 +++ lib/openai/models/comparison_filter.rb | 4 + lib/openai/models/completion_create_params.rb | 12 ++ lib/openai/models/compound_filter.rb | 4 + lib/openai/models/embedding_create_params.rb | 8 + lib/openai/models/eval_create_params.rb | 40 +++++ lib/openai/models/eval_create_response.rb | 18 ++ lib/openai/models/eval_list_response.rb | 18 ++ lib/openai/models/eval_retrieve_response.rb | 18 ++ lib/openai/models/eval_update_response.rb | 18 ++ ...create_eval_completions_run_data_source.rb | 38 ++++ .../create_eval_jsonl_run_data_source.rb | 9 + .../models/evals/run_cancel_response.rb | 48 +++++ lib/openai/models/evals/run_create_params.rb | 48 +++++ .../models/evals/run_create_response.rb | 48 +++++ lib/openai/models/evals/run_list_response.rb | 48 +++++ .../models/evals/run_retrieve_response.rb | 48 +++++ lib/openai/models/file_chunking_strategy.rb | 6 + .../models/file_chunking_strategy_param.rb | 6 + .../fine_tuning/alpha/grader_run_params.rb | 16 ++ .../alpha/grader_validate_params.rb | 12 ++ .../alpha/grader_validate_response.rb | 12 ++ .../models/fine_tuning/dpo_hyperparameters.rb | 16 ++ .../models/fine_tuning/fine_tuning_job.rb | 12 ++ .../models/fine_tuning/job_create_params.rb | 16 ++ .../reinforcement_hyperparameters.rb | 24 +++ .../fine_tuning/reinforcement_method.rb | 12 ++ .../fine_tuning/supervised_hyperparameters.rb | 12 ++ .../models/graders/label_model_grader.rb | 10 ++ lib/openai/models/graders/multi_grader.rb | 12 ++ .../models/graders/score_model_grader.rb | 10 ++ .../models/image_create_variation_params.rb | 4 + lib/openai/models/image_edit_params.rb | 8 + lib/openai/models/image_generate_params.rb | 4 + lib/openai/models/moderation_create_params.rb | 14 ++ .../models/moderation_multi_modal_input.rb | 4 + .../models/responses/easy_input_message.rb | 15 ++ .../models/responses/file_search_tool.rb | 4 + lib/openai/models/responses/response.rb | 10 ++ .../response_code_interpreter_tool_call.rb | 9 + .../responses/response_computer_tool_call.rb | 16 ++ .../models/responses/response_content.rb | 12 ++ .../response_content_part_added_event.rb | 6 + .../response_content_part_done_event.rb | 6 + .../responses/response_create_params.rb | 33 ++++ .../response_file_search_tool_call.rb | 4 + .../responses/response_format_text_config.rb | 10 ++ .../responses/response_input_content.rb | 10 ++ .../models/responses/response_input_item.rb | 18 ++ lib/openai/models/responses/response_item.rb | 15 ++ .../models/responses/response_output_item.rb | 13 ++ .../responses/response_output_message.rb | 6 + .../models/responses/response_output_text.rb | 10 ++ .../models/responses/response_stream_event.rb | 43 +++++ .../response_text_annotation_delta_event.rb | 10 ++ lib/openai/models/responses/tool.rb | 11 ++ lib/openai/models/responses_model.rb | 10 ++ .../models/vector_store_search_params.rb | 8 + .../models/vector_store_search_response.rb | 4 + .../vector_stores/file_batch_create_params.rb | 4 + .../vector_stores/file_create_params.rb | 4 + .../vector_stores/file_update_params.rb | 4 + .../models/vector_stores/vector_store_file.rb | 4 + lib/openai/request_options.rb | 4 + rbi/openai/errors.rbi | 2 +- rbi/openai/internal.rbi | 2 + rbi/openai/internal/transport/base_client.rbi | 23 ++- .../transport/pooled_net_requester.rbi | 10 +- rbi/openai/internal/type/base_model.rbi | 17 +- rbi/openai/internal/type/base_page.rbi | 3 +- rbi/openai/internal/type/converter.rbi | 2 + rbi/openai/internal/type/enum.rbi | 1 + rbi/openai/internal/type/union.rbi | 1 + rbi/openai/internal/util.rbi | 33 +++- .../models/audio/speech_create_params.rbi | 5 +- rbi/openai/models/audio/transcription.rbi | 12 +- .../audio/transcription_create_params.rbi | 8 +- .../models/audio/transcription_segment.rbi | 8 +- .../audio/transcription_text_delta_event.rbi | 15 +- .../audio/transcription_text_done_event.rbi | 15 +- .../models/audio/transcription_verbose.rbi | 8 +- .../models/audio/transcription_word.rbi | 5 +- rbi/openai/models/audio/translation.rbi | 5 +- .../audio/translation_create_params.rbi | 8 +- .../models/audio/translation_verbose.rbi | 5 +- .../auto_file_chunking_strategy_param.rbi | 8 +- rbi/openai/models/batch.rbi | 7 +- rbi/openai/models/batch_cancel_params.rbi | 5 +- rbi/openai/models/batch_create_params.rbi | 5 +- rbi/openai/models/batch_error.rbi | 3 +- rbi/openai/models/batch_list_params.rbi | 5 +- rbi/openai/models/batch_request_counts.rbi | 5 +- rbi/openai/models/batch_retrieve_params.rbi | 5 +- rbi/openai/models/beta/assistant.rbi | 26 ++- .../models/beta/assistant_create_params.rbi | 51 +++++- .../models/beta/assistant_delete_params.rbi | 8 +- rbi/openai/models/beta/assistant_deleted.rbi | 5 +- .../models/beta/assistant_list_params.rbi | 5 +- .../models/beta/assistant_retrieve_params.rbi | 8 +- .../models/beta/assistant_stream_event.rbi | 168 +++++++++++++++--- .../models/beta/assistant_tool_choice.rbi | 5 +- .../beta/assistant_tool_choice_function.rbi | 8 +- .../models/beta/assistant_update_params.rbi | 29 ++- .../models/beta/code_interpreter_tool.rbi | 5 +- rbi/openai/models/beta/file_search_tool.rbi | 19 +- rbi/openai/models/beta/function_tool.rbi | 5 +- .../models/beta/message_stream_event.rbi | 35 +++- .../models/beta/run_step_stream_event.rbi | 49 ++++- rbi/openai/models/beta/run_stream_event.rbi | 70 ++++++-- rbi/openai/models/beta/thread.rbi | 26 ++- .../beta/thread_create_and_run_params.rbi | 105 +++++++++-- .../models/beta/thread_create_params.rbi | 69 +++++-- .../models/beta/thread_delete_params.rbi | 5 +- rbi/openai/models/beta/thread_deleted.rbi | 5 +- .../models/beta/thread_retrieve_params.rbi | 5 +- .../models/beta/thread_stream_event.rbi | 5 +- .../models/beta/thread_update_params.rbi | 26 ++- .../beta/threads/file_citation_annotation.rbi | 14 +- .../file_citation_delta_annotation.rbi | 14 +- .../beta/threads/file_path_annotation.rbi | 14 +- .../threads/file_path_delta_annotation.rbi | 14 +- rbi/openai/models/beta/threads/image_file.rbi | 4 +- .../beta/threads/image_file_content_block.rbi | 7 +- .../models/beta/threads/image_file_delta.rbi | 7 +- .../beta/threads/image_file_delta_block.rbi | 7 +- rbi/openai/models/beta/threads/image_url.rbi | 4 +- .../beta/threads/image_url_content_block.rbi | 7 +- .../models/beta/threads/image_url_delta.rbi | 7 +- .../beta/threads/image_url_delta_block.rbi | 7 +- rbi/openai/models/beta/threads/message.rbi | 25 ++- .../beta/threads/message_create_params.rbi | 21 ++- .../beta/threads/message_delete_params.rbi | 7 +- .../models/beta/threads/message_deleted.rbi | 7 +- .../models/beta/threads/message_delta.rbi | 7 +- .../beta/threads/message_delta_event.rbi | 7 +- .../beta/threads/message_list_params.rbi | 7 +- .../beta/threads/message_retrieve_params.rbi | 7 +- .../beta/threads/message_update_params.rbi | 7 +- .../beta/threads/refusal_content_block.rbi | 7 +- .../beta/threads/refusal_delta_block.rbi | 7 +- .../required_action_function_tool_call.rbi | 14 +- rbi/openai/models/beta/threads/run.rbi | 46 ++++- .../models/beta/threads/run_cancel_params.rbi | 7 +- .../models/beta/threads/run_create_params.rbi | 33 +++- .../models/beta/threads/run_list_params.rbi | 7 +- .../beta/threads/run_retrieve_params.rbi | 7 +- .../run_submit_tool_outputs_params.rbi | 14 +- .../models/beta/threads/run_update_params.rbi | 7 +- .../threads/runs/code_interpreter_logs.rbi | 7 +- .../runs/code_interpreter_output_image.rbi | 14 +- .../runs/code_interpreter_tool_call.rbi | 29 ++- .../runs/code_interpreter_tool_call_delta.rbi | 14 +- .../threads/runs/file_search_tool_call.rbi | 33 +++- .../runs/file_search_tool_call_delta.rbi | 7 +- .../beta/threads/runs/function_tool_call.rbi | 14 +- .../threads/runs/function_tool_call_delta.rbi | 14 +- .../runs/message_creation_step_details.rbi | 14 +- .../models/beta/threads/runs/run_step.rbi | 21 ++- .../beta/threads/runs/run_step_delta.rbi | 7 +- .../threads/runs/run_step_delta_event.rbi | 7 +- .../runs/run_step_delta_message_delta.rbi | 14 +- .../beta/threads/runs/step_list_params.rbi | 7 +- .../threads/runs/step_retrieve_params.rbi | 7 +- .../threads/runs/tool_call_delta_object.rbi | 7 +- .../threads/runs/tool_calls_step_details.rbi | 7 +- rbi/openai/models/beta/threads/text.rbi | 4 +- .../beta/threads/text_content_block.rbi | 7 +- .../beta/threads/text_content_block_param.rbi | 7 +- rbi/openai/models/beta/threads/text_delta.rbi | 4 +- .../models/beta/threads/text_delta_block.rbi | 7 +- rbi/openai/models/chat/chat_completion.rbi | 19 +- ...hat_completion_assistant_message_param.rbi | 22 ++- .../models/chat/chat_completion_audio.rbi | 5 +- .../chat/chat_completion_audio_param.rbi | 8 +- .../models/chat/chat_completion_chunk.rbi | 47 ++++- .../chat/chat_completion_content_part.rbi | 14 +- .../chat_completion_content_part_image.rbi | 15 +- ...at_completion_content_part_input_audio.rbi | 15 +- .../chat_completion_content_part_refusal.rbi | 8 +- .../chat_completion_content_part_text.rbi | 8 +- .../models/chat/chat_completion_deleted.rbi | 8 +- ...hat_completion_developer_message_param.rbi | 8 +- .../chat_completion_function_call_option.rbi | 8 +- ...chat_completion_function_message_param.rbi | 8 +- .../models/chat/chat_completion_message.rbi | 29 ++- .../chat_completion_message_tool_call.rbi | 15 +- .../chat_completion_named_tool_choice.rbi | 15 +- .../chat_completion_prediction_content.rbi | 8 +- .../chat/chat_completion_store_message.rbi | 8 +- .../chat/chat_completion_stream_options.rbi | 8 +- .../chat_completion_system_message_param.rbi | 8 +- .../chat/chat_completion_token_logprob.rbi | 15 +- .../models/chat/chat_completion_tool.rbi | 5 +- .../chat_completion_tool_message_param.rbi | 8 +- .../chat_completion_user_message_param.rbi | 8 +- .../models/chat/completion_create_params.rbi | 36 +++- .../models/chat/completion_delete_params.rbi | 8 +- .../models/chat/completion_list_params.rbi | 5 +- .../chat/completion_retrieve_params.rbi | 8 +- .../models/chat/completion_update_params.rbi | 8 +- .../chat/completions/message_list_params.rbi | 7 +- rbi/openai/models/comparison_filter.rbi | 5 +- rbi/openai/models/completion.rbi | 3 +- rbi/openai/models/completion_choice.rbi | 10 +- .../models/completion_create_params.rbi | 5 +- rbi/openai/models/completion_usage.rbi | 21 ++- rbi/openai/models/compound_filter.rbi | 5 +- .../models/create_embedding_response.rbi | 13 +- rbi/openai/models/embedding.rbi | 3 +- rbi/openai/models/embedding_create_params.rbi | 5 +- rbi/openai/models/error_object.rbi | 3 +- rbi/openai/models/eval_create_params.rbi | 66 +++++-- rbi/openai/models/eval_create_response.rbi | 26 ++- .../models/eval_custom_data_source_config.rbi | 5 +- rbi/openai/models/eval_delete_params.rbi | 5 +- rbi/openai/models/eval_delete_response.rbi | 5 +- rbi/openai/models/eval_list_params.rbi | 5 +- rbi/openai/models/eval_list_response.rbi | 26 ++- rbi/openai/models/eval_retrieve_params.rbi | 5 +- rbi/openai/models/eval_retrieve_response.rbi | 26 ++- ..._stored_completions_data_source_config.rbi | 8 +- rbi/openai/models/eval_update_params.rbi | 5 +- rbi/openai/models/eval_update_response.rbi | 26 ++- ...reate_eval_completions_run_data_source.rbi | 69 +++++-- .../create_eval_jsonl_run_data_source.rbi | 29 ++- rbi/openai/models/evals/eval_api_error.rbi | 5 +- rbi/openai/models/evals/run_cancel_params.rbi | 5 +- .../models/evals/run_cancel_response.rbi | 98 ++++++++-- rbi/openai/models/evals/run_create_params.rbi | 74 ++++++-- .../models/evals/run_create_response.rbi | 98 ++++++++-- rbi/openai/models/evals/run_delete_params.rbi | 5 +- .../models/evals/run_delete_response.rbi | 8 +- rbi/openai/models/evals/run_list_params.rbi | 5 +- rbi/openai/models/evals/run_list_response.rbi | 98 ++++++++-- .../models/evals/run_retrieve_params.rbi | 5 +- .../models/evals/run_retrieve_response.rbi | 98 ++++++++-- .../evals/runs/output_item_list_params.rbi | 7 +- .../evals/runs/output_item_list_response.rbi | 35 +++- .../runs/output_item_retrieve_params.rbi | 7 +- .../runs/output_item_retrieve_response.rbi | 35 +++- rbi/openai/models/file_content_params.rbi | 5 +- rbi/openai/models/file_create_params.rbi | 5 +- rbi/openai/models/file_delete_params.rbi | 5 +- rbi/openai/models/file_deleted.rbi | 3 +- rbi/openai/models/file_list_params.rbi | 5 +- rbi/openai/models/file_object.rbi | 3 +- rbi/openai/models/file_retrieve_params.rbi | 5 +- .../fine_tuning/alpha/grader_run_params.rbi | 7 +- .../fine_tuning/alpha/grader_run_response.rbi | 21 ++- .../alpha/grader_validate_params.rbi | 7 +- .../alpha/grader_validate_response.rbi | 7 +- .../checkpoints/permission_create_params.rbi | 7 +- .../permission_create_response.rbi | 7 +- .../checkpoints/permission_delete_params.rbi | 7 +- .../permission_delete_response.rbi | 7 +- .../permission_retrieve_params.rbi | 7 +- .../permission_retrieve_response.rbi | 14 +- .../fine_tuning/dpo_hyperparameters.rbi | 8 +- rbi/openai/models/fine_tuning/dpo_method.rbi | 5 +- .../models/fine_tuning/fine_tuning_job.rbi | 26 ++- .../fine_tuning/fine_tuning_job_event.rbi | 8 +- .../fine_tuning_job_wandb_integration.rbi | 8 +- ...ne_tuning_job_wandb_integration_object.rbi | 8 +- .../models/fine_tuning/job_cancel_params.rbi | 8 +- .../models/fine_tuning/job_create_params.rbi | 36 +++- .../fine_tuning/job_list_events_params.rbi | 8 +- .../models/fine_tuning/job_list_params.rbi | 5 +- .../models/fine_tuning/job_pause_params.rbi | 5 +- .../models/fine_tuning/job_resume_params.rbi | 8 +- .../fine_tuning/job_retrieve_params.rbi | 8 +- .../jobs/checkpoint_list_params.rbi | 7 +- .../jobs/fine_tuning_job_checkpoint.rbi | 14 +- .../reinforcement_hyperparameters.rbi | 8 +- .../fine_tuning/reinforcement_method.rbi | 8 +- .../supervised_hyperparameters.rbi | 8 +- .../models/fine_tuning/supervised_method.rbi | 8 +- rbi/openai/models/function_definition.rbi | 5 +- .../models/graders/label_model_grader.rbi | 19 +- rbi/openai/models/graders/multi_grader.rbi | 5 +- rbi/openai/models/graders/python_grader.rbi | 5 +- .../models/graders/score_model_grader.rbi | 19 +- .../models/graders/string_check_grader.rbi | 5 +- .../models/graders/text_similarity_grader.rbi | 8 +- rbi/openai/models/image.rbi | 2 +- .../models/image_create_variation_params.rbi | 5 +- rbi/openai/models/image_edit_params.rbi | 5 +- rbi/openai/models/image_generate_params.rbi | 5 +- rbi/openai/models/images_response.rbi | 17 +- rbi/openai/models/model.rbi | 2 +- rbi/openai/models/model_delete_params.rbi | 5 +- rbi/openai/models/model_deleted.rbi | 3 +- rbi/openai/models/model_list_params.rbi | 5 +- rbi/openai/models/model_retrieve_params.rbi | 5 +- rbi/openai/models/moderation.rbi | 21 ++- .../models/moderation_create_params.rbi | 5 +- .../models/moderation_create_response.rbi | 8 +- .../models/moderation_image_url_input.rbi | 13 +- rbi/openai/models/moderation_text_input.rbi | 5 +- .../other_file_chunking_strategy_object.rbi | 8 +- rbi/openai/models/reasoning.rbi | 3 +- .../models/response_format_json_object.rbi | 5 +- .../models/response_format_json_schema.rbi | 13 +- rbi/openai/models/response_format_text.rbi | 5 +- rbi/openai/models/responses/computer_tool.rbi | 5 +- .../models/responses/easy_input_message.rbi | 8 +- .../models/responses/file_search_tool.rbi | 12 +- rbi/openai/models/responses/function_tool.rbi | 5 +- .../responses/input_item_list_params.rbi | 8 +- rbi/openai/models/responses/response.rbi | 12 +- .../responses/response_audio_delta_event.rbi | 8 +- .../responses/response_audio_done_event.rbi | 8 +- .../response_audio_transcript_delta_event.rbi | 8 +- .../response_audio_transcript_done_event.rbi | 8 +- ...code_interpreter_call_code_delta_event.rbi | 8 +- ..._code_interpreter_call_code_done_event.rbi | 8 +- ..._code_interpreter_call_completed_event.rbi | 8 +- ...ode_interpreter_call_in_progress_event.rbi | 8 +- ...de_interpreter_call_interpreting_event.rbi | 8 +- .../response_code_interpreter_tool_call.rbi | 29 ++- .../responses/response_completed_event.rbi | 8 +- .../responses/response_computer_tool_call.rbi | 85 +++++++-- ...esponse_computer_tool_call_output_item.rbi | 15 +- ...e_computer_tool_call_output_screenshot.rbi | 8 +- .../response_content_part_added_event.rbi | 8 +- .../response_content_part_done_event.rbi | 8 +- .../responses/response_create_params.rbi | 8 +- .../responses/response_created_event.rbi | 8 +- .../responses/response_delete_params.rbi | 8 +- .../models/responses/response_error.rbi | 5 +- .../models/responses/response_error_event.rbi | 8 +- .../responses/response_failed_event.rbi | 8 +- ...ponse_file_search_call_completed_event.rbi | 8 +- ...nse_file_search_call_in_progress_event.rbi | 8 +- ...ponse_file_search_call_searching_event.rbi | 8 +- .../response_file_search_tool_call.rbi | 15 +- ...esponse_format_text_json_schema_config.rbi | 8 +- ...se_function_call_arguments_delta_event.rbi | 8 +- ...nse_function_call_arguments_done_event.rbi | 8 +- .../responses/response_function_tool_call.rbi | 8 +- .../response_function_tool_call_item.rbi | 8 +- ...esponse_function_tool_call_output_item.rbi | 8 +- .../response_function_web_search.rbi | 8 +- .../responses/response_in_progress_event.rbi | 8 +- .../responses/response_incomplete_event.rbi | 8 +- .../models/responses/response_input_audio.rbi | 8 +- .../models/responses/response_input_file.rbi | 8 +- .../models/responses/response_input_image.rbi | 8 +- .../models/responses/response_input_item.rbi | 35 +++- .../responses/response_input_message_item.rbi | 8 +- .../models/responses/response_input_text.rbi | 8 +- .../models/responses/response_item_list.rbi | 8 +- .../responses/response_output_audio.rbi | 8 +- .../response_output_item_added_event.rbi | 8 +- .../response_output_item_done_event.rbi | 8 +- .../responses/response_output_message.rbi | 8 +- .../responses/response_output_refusal.rbi | 8 +- .../models/responses/response_output_text.rbi | 29 ++- .../responses/response_reasoning_item.rbi | 15 +- ...nse_reasoning_summary_part_added_event.rbi | 15 +- ...onse_reasoning_summary_part_done_event.rbi | 15 +- ...nse_reasoning_summary_text_delta_event.rbi | 8 +- ...onse_reasoning_summary_text_done_event.rbi | 8 +- .../response_refusal_delta_event.rbi | 8 +- .../responses/response_refusal_done_event.rbi | 8 +- .../responses/response_retrieve_params.rbi | 8 +- .../response_text_annotation_delta_event.rbi | 29 ++- .../models/responses/response_text_config.rbi | 8 +- .../responses/response_text_delta_event.rbi | 8 +- .../responses/response_text_done_event.rbi | 8 +- .../models/responses/response_usage.rbi | 19 +- ...sponse_web_search_call_completed_event.rbi | 8 +- ...onse_web_search_call_in_progress_event.rbi | 8 +- ...sponse_web_search_call_searching_event.rbi | 8 +- .../models/responses/tool_choice_function.rbi | 8 +- .../models/responses/tool_choice_types.rbi | 5 +- .../models/responses/web_search_tool.rbi | 12 +- .../models/static_file_chunking_strategy.rbi | 5 +- .../static_file_chunking_strategy_object.rbi | 8 +- ...ic_file_chunking_strategy_object_param.rbi | 8 +- rbi/openai/models/upload.rbi | 2 +- rbi/openai/models/upload_cancel_params.rbi | 5 +- rbi/openai/models/upload_complete_params.rbi | 5 +- rbi/openai/models/upload_create_params.rbi | 5 +- .../models/uploads/part_create_params.rbi | 5 +- rbi/openai/models/uploads/upload_part.rbi | 5 +- rbi/openai/models/vector_store.rbi | 13 +- .../models/vector_store_create_params.rbi | 13 +- .../models/vector_store_delete_params.rbi | 5 +- rbi/openai/models/vector_store_deleted.rbi | 5 +- .../models/vector_store_list_params.rbi | 5 +- .../models/vector_store_retrieve_params.rbi | 5 +- .../models/vector_store_search_params.rbi | 13 +- .../models/vector_store_search_response.rbi | 16 +- .../models/vector_store_update_params.rbi | 13 +- .../file_batch_cancel_params.rbi | 8 +- .../file_batch_create_params.rbi | 8 +- .../file_batch_list_files_params.rbi | 8 +- .../file_batch_retrieve_params.rbi | 8 +- .../vector_stores/file_content_params.rbi | 8 +- .../vector_stores/file_content_response.rbi | 8 +- .../vector_stores/file_create_params.rbi | 8 +- .../vector_stores/file_delete_params.rbi | 8 +- .../models/vector_stores/file_list_params.rbi | 8 +- .../vector_stores/file_retrieve_params.rbi | 8 +- .../vector_stores/file_update_params.rbi | 8 +- .../vector_stores/vector_store_file.rbi | 15 +- .../vector_stores/vector_store_file_batch.rbi | 15 +- .../vector_store_file_deleted.rbi | 8 +- rbi/openai/request_options.rbi | 3 +- sig/openai/internal.rbs | 2 + sig/openai/internal/transport/base_client.rbs | 3 +- .../transport/pooled_net_requester.rbs | 2 + sig/openai/internal/type/array_of.rbs | 2 +- sig/openai/internal/type/base_model.rbs | 7 +- sig/openai/internal/type/converter.rbs | 2 + sig/openai/internal/type/enum.rbs | 1 + sig/openai/internal/type/hash_of.rbs | 2 +- sig/openai/internal/type/union.rbs | 1 + sig/openai/internal/util.rbs | 13 ++ test/openai/client_test.rb | 7 +- .../internal/sorbet_runtime_support_test.rb | 49 +++++ test/openai/test_helper.rb | 6 + 475 files changed, 5541 insertions(+), 711 deletions(-) create mode 100644 test/openai/internal/sorbet_runtime_support_test.rb diff --git a/lib/openai/internal.rb b/lib/openai/internal.rb index 143e002b..01f2c4b7 100644 --- a/lib/openai/internal.rb +++ b/lib/openai/internal.rb @@ -2,10 +2,16 @@ module OpenAI module Internal + extend OpenAI::Internal::Util::SorbetRuntimeSupport + OMIT = Object.new.tap do _1.define_singleton_method(:inspect) { "#<#{OpenAI::Internal}::OMIT>" } end .freeze + + define_sorbet_constant!(:AnyHash) do + T.type_alias { T::Hash[Symbol, T.anything] } + end end end diff --git a/lib/openai/internal/transport/base_client.rb b/lib/openai/internal/transport/base_client.rb index 0d15ff3d..db914a5c 100644 --- a/lib/openai/internal/transport/base_client.rb +++ b/lib/openai/internal/transport/base_client.rb @@ -7,6 +7,8 @@ module Transport # # @abstract class BaseClient + extend OpenAI::Internal::Util::SorbetRuntimeSupport + # from whatwg fetch spec MAX_REDIRECTS = 20 @@ -477,6 +479,54 @@ def inspect "#<#{self.class.name}:0x#{object_id.to_s(16)} base_url=#{base_url} max_retries=#{@max_retries} timeout=#{@timeout}>" # rubocop:enable Layout/LineLength end + + define_sorbet_constant!(:RequestComponents) do + T.type_alias do + { + method: Symbol, + path: T.any(String, T::Array[String]), + query: T.nilable(T::Hash[String, T.nilable(T.any(T::Array[String], String))]), + headers: T.nilable( + T::Hash[String, + T.nilable( + T.any( + String, + Integer, + T::Array[T.nilable(T.any(String, Integer))] + ) + )] + ), + body: T.nilable(T.anything), + unwrap: T.nilable( + T.any( + Symbol, + Integer, + T::Array[T.any(Symbol, Integer)], + T.proc.params(arg0: T.anything).returns(T.anything) + ) + ), + page: T.nilable(T::Class[OpenAI::Internal::Type::BasePage[OpenAI::Internal::Type::BaseModel]]), + stream: T.nilable( + T::Class[OpenAI::Internal::Type::BaseStream[T.anything, + OpenAI::Internal::Type::BaseModel]] + ), + model: T.nilable(OpenAI::Internal::Type::Converter::Input), + options: T.nilable(OpenAI::RequestOptions::OrHash) + } + end + end + define_sorbet_constant!(:RequestInput) do + T.type_alias do + { + method: Symbol, + url: URI::Generic, + headers: T::Hash[String, String], + body: T.anything, + max_retries: Integer, + timeout: Float + } + end + end end end end diff --git a/lib/openai/internal/transport/pooled_net_requester.rb b/lib/openai/internal/transport/pooled_net_requester.rb index ce606177..2c93cc86 100644 --- a/lib/openai/internal/transport/pooled_net_requester.rb +++ b/lib/openai/internal/transport/pooled_net_requester.rb @@ -5,6 +5,8 @@ module Internal module Transport # @api private class PooledNetRequester + extend OpenAI::Internal::Util::SorbetRuntimeSupport + # from the golang stdlib # https://github.com/golang/go/blob/c8eced8580028328fde7c03cbfcb720ce15b2358/src/net/http/transport.go#L49 KEEP_ALIVE_TIMEOUT = 30 @@ -187,6 +189,18 @@ def initialize(size: Etc.nprocessors) @size = size @pools = {} end + + define_sorbet_constant!(:Request) do + T.type_alias do + { + method: Symbol, + url: URI::Generic, + headers: T::Hash[String, String], + body: T.anything, + deadline: Float + } + end + end end end end diff --git a/lib/openai/internal/type/array_of.rb b/lib/openai/internal/type/array_of.rb index 5b1a4113..3c043142 100644 --- a/lib/openai/internal/type/array_of.rb +++ b/lib/openai/internal/type/array_of.rb @@ -29,7 +29,7 @@ class ArrayOf # # @option spec [Boolean] :"nil?" # - # @return [OpenAI::Internal::Type::ArrayOf] + # @return [self] def self.[](...) = new(...) # @api public diff --git a/lib/openai/internal/type/base_model.rb b/lib/openai/internal/type/base_model.rb index 0035eb6c..dc28182f 100644 --- a/lib/openai/internal/type/base_model.rb +++ b/lib/openai/internal/type/base_model.rb @@ -6,6 +6,7 @@ module Type # @abstract class BaseModel extend OpenAI::Internal::Type::Converter + extend OpenAI::Internal::Util::SorbetRuntimeSupport class << self # @api private @@ -13,11 +14,17 @@ class << self # Assumes superclass fields are totally defined before fields are accessed / # defined on subclasses. # - # @return [Hash{Symbol=>Hash{Symbol=>Object}}] - def known_fields - @known_fields ||= (self < OpenAI::Internal::Type::BaseModel ? superclass.known_fields.dup : {}) + # @param child [Class] + def inherited(child) + super + child.known_fields.replace(known_fields.dup) end + # @api private + # + # @return [Hash{Symbol=>Hash{Symbol=>Object}}] + def known_fields = @known_fields ||= {} + # @api private # # @return [Hash{Symbol=>Hash{Symbol=>Object}}] @@ -199,7 +206,7 @@ class << self # # @option state [Integer] :branched # - # @return [OpenAI::Internal::Type::BaseModel, Object] + # @return [self, Object] def coerce(value, state:) exactness = state.fetch(:exactness) @@ -258,7 +265,7 @@ def coerce(value, state:) # @api private # - # @param value [OpenAI::Internal::Type::BaseModel, Object] + # @param value [self, Object] # # @param state [Hash{Symbol=>Object}] . # @@ -424,6 +431,10 @@ def to_s = self.class.walk(@data).to_s # # @return [String] def inspect = "#<#{self.class}:0x#{object_id.to_s(16)} #{self}>" + + define_sorbet_constant!(:KnownField) do + T.type_alias { {mode: T.nilable(Symbol), required: T::Boolean, nilable: T::Boolean} } + end end end end diff --git a/lib/openai/internal/type/converter.rb b/lib/openai/internal/type/converter.rb index 0d498235..29cee8df 100644 --- a/lib/openai/internal/type/converter.rb +++ b/lib/openai/internal/type/converter.rb @@ -5,6 +5,8 @@ module Internal module Type # @api private module Converter + extend OpenAI::Internal::Util::SorbetRuntimeSupport + # rubocop:disable Lint/UnusedMethodArgument # @api private @@ -268,6 +270,22 @@ def inspect(target, depth:) end end end + + define_sorbet_constant!(:Input) do + T.type_alias { T.any(OpenAI::Internal::Type::Converter, T::Class[T.anything]) } + end + define_sorbet_constant!(:CoerceState) do + T.type_alias do + { + strictness: T.any(T::Boolean, Symbol), + exactness: {yes: Integer, no: Integer, maybe: Integer}, + branched: Integer + } + end + end + define_sorbet_constant!(:DumpState) do + T.type_alias { {can_retry: T::Boolean} } + end end end end diff --git a/lib/openai/internal/type/enum.rb b/lib/openai/internal/type/enum.rb index 30c8e0c0..c28bf11f 100644 --- a/lib/openai/internal/type/enum.rb +++ b/lib/openai/internal/type/enum.rb @@ -42,6 +42,7 @@ module Type # end module Enum include OpenAI::Internal::Type::Converter + include OpenAI::Internal::Util::SorbetRuntimeSupport # All of the valid Symbol values for this enum. # diff --git a/lib/openai/internal/type/hash_of.rb b/lib/openai/internal/type/hash_of.rb index 20280b5b..6e60bc15 100644 --- a/lib/openai/internal/type/hash_of.rb +++ b/lib/openai/internal/type/hash_of.rb @@ -29,7 +29,7 @@ class HashOf # # @option spec [Boolean] :"nil?" # - # @return [OpenAI::Internal::Type::HashOf] + # @return [self] def self.[](...) = new(...) # @api public diff --git a/lib/openai/internal/type/union.rb b/lib/openai/internal/type/union.rb index e653de47..47a040ff 100644 --- a/lib/openai/internal/type/union.rb +++ b/lib/openai/internal/type/union.rb @@ -31,6 +31,7 @@ module Type # end module Union include OpenAI::Internal::Type::Converter + include OpenAI::Internal::Util::SorbetRuntimeSupport # @api private # diff --git a/lib/openai/internal/util.rb b/lib/openai/internal/util.rb index 32f9ae41..b33fa88f 100644 --- a/lib/openai/internal/util.rb +++ b/lib/openai/internal/util.rb @@ -801,6 +801,62 @@ def decode_sse(lines) end end end + + # @api private + module SorbetRuntimeSupport + class MissingSorbetRuntimeError < ::RuntimeError + end + + # @api private + # + # @return [Hash{Symbol=>Object}] + private def sorbet_runtime_constants = @sorbet_runtime_constants ||= {} + + # @api private + # + # @param name [Symbol] + def const_missing(name) + super unless sorbet_runtime_constants.key?(name) + + unless Object.const_defined?(:T) + message = "Trying to access a Sorbet constant #{name.inspect} without `sorbet-runtime`." + raise MissingSorbetRuntimeError.new(message) + end + + sorbet_runtime_constants.fetch(name).call + end + + # @api private + # + # @param name [Symbol] + # @param blk [Proc] + def define_sorbet_constant!(name, &blk) = sorbet_runtime_constants.store(name, blk) + end + + extend OpenAI::Internal::Util::SorbetRuntimeSupport + + define_sorbet_constant!(:ParsedUri) do + T.type_alias do + { + scheme: T.nilable(String), + host: T.nilable(String), + port: T.nilable(Integer), + path: T.nilable(String), + query: T::Hash[String, T::Array[String]] + } + end + end + + define_sorbet_constant!(:ServerSentEvent) do + T.type_alias do + { + event: T.nilable(String), + data: T.nilable(String), + id: T.nilable(String), + retry: T.nilable(Integer) + } + end + end end end end diff --git a/lib/openai/models.rb b/lib/openai/models.rb index 31c2a050..6406a297 100644 --- a/lib/openai/models.rb +++ b/lib/openai/models.rb @@ -1,6 +1,33 @@ # frozen_string_literal: true module OpenAI + [OpenAI::Internal::Type::BaseModel, *OpenAI::Internal::Type::BaseModel.subclasses].each do |cls| + cls.define_sorbet_constant!(:OrHash) { T.type_alias { T.any(cls, OpenAI::Internal::AnyHash) } } + end + + [ + *OpenAI::Internal::Type::Enum.included_modules, + *OpenAI::Internal::Type::Union.included_modules + ].each do |cls| + cls.constants.each do |name| + case cls.const_get(name) + in true | false + cls.define_sorbet_constant!(:TaggedBoolean) { T.type_alias { T.all(T::Boolean, cls) } } + cls.define_sorbet_constant!(:OrBoolean) { T.type_alias { T::Boolean } } + in Integer + cls.define_sorbet_constant!(:TaggedInteger) { T.type_alias { T.all(Integer, cls) } } + cls.define_sorbet_constant!(:OrInteger) { T.type_alias { Integer } } + in Float + cls.define_sorbet_constant!(:TaggedFloat) { T.type_alias { T.all(Float, cls) } } + cls.define_sorbet_constant!(:OrFloat) { T.type_alias { Float } } + in Symbol + cls.define_sorbet_constant!(:TaggedSymbol) { T.type_alias { T.all(Symbol, cls) } } + cls.define_sorbet_constant!(:OrSymbol) { T.type_alias { T.any(Symbol, String) } } + else + end + end + end + AllModels = OpenAI::Models::AllModels Audio = OpenAI::Models::Audio diff --git a/lib/openai/models/all_models.rb b/lib/openai/models/all_models.rb index dd458b9f..a337cfe0 100644 --- a/lib/openai/models/all_models.rb +++ b/lib/openai/models/all_models.rb @@ -25,6 +25,12 @@ module ResponsesOnlyModel # @!method self.variants # @return [Array(String, Symbol, OpenAI::ChatModel, Symbol, OpenAI::AllModels::ResponsesOnlyModel)] + + define_sorbet_constant!(:Variants) do + T.type_alias do + T.any(String, OpenAI::ChatModel::TaggedSymbol, OpenAI::AllModels::ResponsesOnlyModel::TaggedSymbol) + end + end end end end diff --git a/lib/openai/models/audio/speech_create_params.rb b/lib/openai/models/audio/speech_create_params.rb index 9a2372af..6a4e469f 100644 --- a/lib/openai/models/audio/speech_create_params.rb +++ b/lib/openai/models/audio/speech_create_params.rb @@ -81,6 +81,10 @@ module Model # @!method self.variants # @return [Array(String, Symbol, OpenAI::Audio::SpeechModel)] + + define_sorbet_constant!(:Variants) do + T.type_alias { T.any(String, OpenAI::Audio::SpeechModel::TaggedSymbol) } + end end # The voice to use when generating the audio. Supported voices are `alloy`, `ash`, @@ -117,6 +121,10 @@ module Voice # @!method self.variants # @return [Array(String, Symbol)] + define_sorbet_constant!(:Variants) do + T.type_alias { T.any(String, OpenAI::Audio::SpeechCreateParams::Voice::TaggedSymbol) } + end + # @!group ALLOY = :alloy diff --git a/lib/openai/models/audio/transcription_create_params.rb b/lib/openai/models/audio/transcription_create_params.rb index 8fabd4b2..4015cac8 100644 --- a/lib/openai/models/audio/transcription_create_params.rb +++ b/lib/openai/models/audio/transcription_create_params.rb @@ -118,6 +118,10 @@ module Model # @!method self.variants # @return [Array(String, Symbol, OpenAI::AudioModel)] + + define_sorbet_constant!(:Variants) do + T.type_alias { T.any(String, OpenAI::AudioModel::TaggedSymbol) } + end end module TimestampGranularity diff --git a/lib/openai/models/audio/transcription_create_response.rb b/lib/openai/models/audio/transcription_create_response.rb index ec74e17e..8f0ea45a 100644 --- a/lib/openai/models/audio/transcription_create_response.rb +++ b/lib/openai/models/audio/transcription_create_response.rb @@ -20,6 +20,10 @@ module TranscriptionCreateResponse # @!method self.variants # @return [Array(OpenAI::Audio::Transcription, OpenAI::Audio::TranscriptionVerbose)] + + define_sorbet_constant!(:Variants) do + T.type_alias { T.any(OpenAI::Audio::Transcription, OpenAI::Audio::TranscriptionVerbose) } + end end end end diff --git a/lib/openai/models/audio/transcription_stream_event.rb b/lib/openai/models/audio/transcription_stream_event.rb index 9d386b9b..93079e55 100644 --- a/lib/openai/models/audio/transcription_stream_event.rb +++ b/lib/openai/models/audio/transcription_stream_event.rb @@ -20,6 +20,12 @@ module TranscriptionStreamEvent # @!method self.variants # @return [Array(OpenAI::Audio::TranscriptionTextDeltaEvent, OpenAI::Audio::TranscriptionTextDoneEvent)] + + define_sorbet_constant!(:Variants) do + T.type_alias do + T.any(OpenAI::Audio::TranscriptionTextDeltaEvent, OpenAI::Audio::TranscriptionTextDoneEvent) + end + end end end end diff --git a/lib/openai/models/audio/translation_create_params.rb b/lib/openai/models/audio/translation_create_params.rb index ed3107e2..a3594a7c 100644 --- a/lib/openai/models/audio/translation_create_params.rb +++ b/lib/openai/models/audio/translation_create_params.rb @@ -76,6 +76,10 @@ module Model # @!method self.variants # @return [Array(String, Symbol, OpenAI::AudioModel)] + + define_sorbet_constant!(:Variants) do + T.type_alias { T.any(String, OpenAI::AudioModel::TaggedSymbol) } + end end # The format of the output, in one of these options: `json`, `text`, `srt`, diff --git a/lib/openai/models/audio/translation_create_response.rb b/lib/openai/models/audio/translation_create_response.rb index f24d4b2b..c0fcb1fc 100644 --- a/lib/openai/models/audio/translation_create_response.rb +++ b/lib/openai/models/audio/translation_create_response.rb @@ -13,6 +13,10 @@ module TranslationCreateResponse # @!method self.variants # @return [Array(OpenAI::Audio::Translation, OpenAI::Audio::TranslationVerbose)] + + define_sorbet_constant!(:Variants) do + T.type_alias { T.any(OpenAI::Audio::Translation, OpenAI::Audio::TranslationVerbose) } + end end end end diff --git a/lib/openai/models/beta/assistant_create_params.rb b/lib/openai/models/beta/assistant_create_params.rb index f05d1764..c3a32b57 100644 --- a/lib/openai/models/beta/assistant_create_params.rb +++ b/lib/openai/models/beta/assistant_create_params.rb @@ -162,6 +162,10 @@ module Model # @!method self.variants # @return [Array(String, Symbol, OpenAI::ChatModel)] + + define_sorbet_constant!(:Variants) do + T.type_alias { T.any(String, OpenAI::ChatModel::TaggedSymbol) } + end end class ToolResources < OpenAI::Internal::Type::BaseModel @@ -362,6 +366,15 @@ class Static < OpenAI::Internal::Type::BaseModel # @!method self.variants # @return [Array(OpenAI::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Auto, OpenAI::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static)] + + define_sorbet_constant!(:Variants) do + T.type_alias do + T.any( + OpenAI::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Auto, + OpenAI::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static + ) + end + end end end end diff --git a/lib/openai/models/beta/assistant_response_format_option.rb b/lib/openai/models/beta/assistant_response_format_option.rb index 411077cb..4e58c10e 100644 --- a/lib/openai/models/beta/assistant_response_format_option.rb +++ b/lib/openai/models/beta/assistant_response_format_option.rb @@ -44,6 +44,17 @@ module AssistantResponseFormatOption # @!method self.variants # @return [Array(Symbol, :auto, OpenAI::ResponseFormatText, OpenAI::ResponseFormatJSONObject, OpenAI::ResponseFormatJSONSchema)] + + define_sorbet_constant!(:Variants) do + T.type_alias do + T.any( + Symbol, + OpenAI::ResponseFormatText, + OpenAI::ResponseFormatJSONObject, + OpenAI::ResponseFormatJSONSchema + ) + end + end end end end diff --git a/lib/openai/models/beta/assistant_stream_event.rb b/lib/openai/models/beta/assistant_stream_event.rb index 74345189..6f78210f 100644 --- a/lib/openai/models/beta/assistant_stream_event.rb +++ b/lib/openai/models/beta/assistant_stream_event.rb @@ -730,6 +730,37 @@ class ErrorEvent < OpenAI::Internal::Type::BaseModel # @!method self.variants # @return [Array(OpenAI::Beta::AssistantStreamEvent::ThreadCreated, OpenAI::Beta::AssistantStreamEvent::ThreadRunCreated, OpenAI::Beta::AssistantStreamEvent::ThreadRunQueued, OpenAI::Beta::AssistantStreamEvent::ThreadRunInProgress, OpenAI::Beta::AssistantStreamEvent::ThreadRunRequiresAction, OpenAI::Beta::AssistantStreamEvent::ThreadRunCompleted, OpenAI::Beta::AssistantStreamEvent::ThreadRunIncomplete, OpenAI::Beta::AssistantStreamEvent::ThreadRunFailed, OpenAI::Beta::AssistantStreamEvent::ThreadRunCancelling, OpenAI::Beta::AssistantStreamEvent::ThreadRunCancelled, OpenAI::Beta::AssistantStreamEvent::ThreadRunExpired, OpenAI::Beta::AssistantStreamEvent::ThreadRunStepCreated, OpenAI::Beta::AssistantStreamEvent::ThreadRunStepInProgress, OpenAI::Beta::AssistantStreamEvent::ThreadRunStepDelta, OpenAI::Beta::AssistantStreamEvent::ThreadRunStepCompleted, OpenAI::Beta::AssistantStreamEvent::ThreadRunStepFailed, OpenAI::Beta::AssistantStreamEvent::ThreadRunStepCancelled, OpenAI::Beta::AssistantStreamEvent::ThreadRunStepExpired, OpenAI::Beta::AssistantStreamEvent::ThreadMessageCreated, OpenAI::Beta::AssistantStreamEvent::ThreadMessageInProgress, OpenAI::Beta::AssistantStreamEvent::ThreadMessageDelta, OpenAI::Beta::AssistantStreamEvent::ThreadMessageCompleted, OpenAI::Beta::AssistantStreamEvent::ThreadMessageIncomplete, OpenAI::Beta::AssistantStreamEvent::ErrorEvent)] + + define_sorbet_constant!(:Variants) do + T.type_alias do + T.any( + OpenAI::Beta::AssistantStreamEvent::ThreadCreated, + OpenAI::Beta::AssistantStreamEvent::ThreadRunCreated, + OpenAI::Beta::AssistantStreamEvent::ThreadRunQueued, + OpenAI::Beta::AssistantStreamEvent::ThreadRunInProgress, + OpenAI::Beta::AssistantStreamEvent::ThreadRunRequiresAction, + OpenAI::Beta::AssistantStreamEvent::ThreadRunCompleted, + OpenAI::Beta::AssistantStreamEvent::ThreadRunIncomplete, + OpenAI::Beta::AssistantStreamEvent::ThreadRunFailed, + OpenAI::Beta::AssistantStreamEvent::ThreadRunCancelling, + OpenAI::Beta::AssistantStreamEvent::ThreadRunCancelled, + OpenAI::Beta::AssistantStreamEvent::ThreadRunExpired, + OpenAI::Beta::AssistantStreamEvent::ThreadRunStepCreated, + OpenAI::Beta::AssistantStreamEvent::ThreadRunStepInProgress, + OpenAI::Beta::AssistantStreamEvent::ThreadRunStepDelta, + OpenAI::Beta::AssistantStreamEvent::ThreadRunStepCompleted, + OpenAI::Beta::AssistantStreamEvent::ThreadRunStepFailed, + OpenAI::Beta::AssistantStreamEvent::ThreadRunStepCancelled, + OpenAI::Beta::AssistantStreamEvent::ThreadRunStepExpired, + OpenAI::Beta::AssistantStreamEvent::ThreadMessageCreated, + OpenAI::Beta::AssistantStreamEvent::ThreadMessageInProgress, + OpenAI::Beta::AssistantStreamEvent::ThreadMessageDelta, + OpenAI::Beta::AssistantStreamEvent::ThreadMessageCompleted, + OpenAI::Beta::AssistantStreamEvent::ThreadMessageIncomplete, + OpenAI::Beta::AssistantStreamEvent::ErrorEvent + ) + end + end end end end diff --git a/lib/openai/models/beta/assistant_tool.rb b/lib/openai/models/beta/assistant_tool.rb index 111defb9..c6f7c311 100644 --- a/lib/openai/models/beta/assistant_tool.rb +++ b/lib/openai/models/beta/assistant_tool.rb @@ -16,6 +16,12 @@ module AssistantTool # @!method self.variants # @return [Array(OpenAI::Beta::CodeInterpreterTool, OpenAI::Beta::FileSearchTool, OpenAI::Beta::FunctionTool)] + + define_sorbet_constant!(:Variants) do + T.type_alias do + T.any(OpenAI::Beta::CodeInterpreterTool, OpenAI::Beta::FileSearchTool, OpenAI::Beta::FunctionTool) + end + end end end end diff --git a/lib/openai/models/beta/assistant_tool_choice_option.rb b/lib/openai/models/beta/assistant_tool_choice_option.rb index 5a87d00a..0561c756 100644 --- a/lib/openai/models/beta/assistant_tool_choice_option.rb +++ b/lib/openai/models/beta/assistant_tool_choice_option.rb @@ -36,6 +36,15 @@ module Auto # @!method self.variants # @return [Array(Symbol, OpenAI::Beta::AssistantToolChoiceOption::Auto, OpenAI::Beta::AssistantToolChoice)] + + define_sorbet_constant!(:Variants) do + T.type_alias do + T.any( + OpenAI::Beta::AssistantToolChoiceOption::Auto::TaggedSymbol, + OpenAI::Beta::AssistantToolChoice + ) + end + end end end end diff --git a/lib/openai/models/beta/assistant_update_params.rb b/lib/openai/models/beta/assistant_update_params.rb index 3d9b9fbc..40734bc9 100644 --- a/lib/openai/models/beta/assistant_update_params.rb +++ b/lib/openai/models/beta/assistant_update_params.rb @@ -232,6 +232,10 @@ module Model # @!method self.variants # @return [Array(String, Symbol)] + define_sorbet_constant!(:Variants) do + T.type_alias { T.any(String, OpenAI::Beta::AssistantUpdateParams::Model::TaggedSymbol) } + end + # @!group GPT_4_1 = :"gpt-4.1" diff --git a/lib/openai/models/beta/message_stream_event.rb b/lib/openai/models/beta/message_stream_event.rb index ce394898..564f9417 100644 --- a/lib/openai/models/beta/message_stream_event.rb +++ b/lib/openai/models/beta/message_stream_event.rb @@ -161,6 +161,18 @@ class ThreadMessageIncomplete < OpenAI::Internal::Type::BaseModel # @!method self.variants # @return [Array(OpenAI::Beta::MessageStreamEvent::ThreadMessageCreated, OpenAI::Beta::MessageStreamEvent::ThreadMessageInProgress, OpenAI::Beta::MessageStreamEvent::ThreadMessageDelta, OpenAI::Beta::MessageStreamEvent::ThreadMessageCompleted, OpenAI::Beta::MessageStreamEvent::ThreadMessageIncomplete)] + + define_sorbet_constant!(:Variants) do + T.type_alias do + T.any( + OpenAI::Beta::MessageStreamEvent::ThreadMessageCreated, + OpenAI::Beta::MessageStreamEvent::ThreadMessageInProgress, + OpenAI::Beta::MessageStreamEvent::ThreadMessageDelta, + OpenAI::Beta::MessageStreamEvent::ThreadMessageCompleted, + OpenAI::Beta::MessageStreamEvent::ThreadMessageIncomplete + ) + end + end end end end diff --git a/lib/openai/models/beta/run_step_stream_event.rb b/lib/openai/models/beta/run_step_stream_event.rb index 40fef09f..165aeefc 100644 --- a/lib/openai/models/beta/run_step_stream_event.rb +++ b/lib/openai/models/beta/run_step_stream_event.rb @@ -213,6 +213,20 @@ class ThreadRunStepExpired < OpenAI::Internal::Type::BaseModel # @!method self.variants # @return [Array(OpenAI::Beta::RunStepStreamEvent::ThreadRunStepCreated, OpenAI::Beta::RunStepStreamEvent::ThreadRunStepInProgress, OpenAI::Beta::RunStepStreamEvent::ThreadRunStepDelta, OpenAI::Beta::RunStepStreamEvent::ThreadRunStepCompleted, OpenAI::Beta::RunStepStreamEvent::ThreadRunStepFailed, OpenAI::Beta::RunStepStreamEvent::ThreadRunStepCancelled, OpenAI::Beta::RunStepStreamEvent::ThreadRunStepExpired)] + + define_sorbet_constant!(:Variants) do + T.type_alias do + T.any( + OpenAI::Beta::RunStepStreamEvent::ThreadRunStepCreated, + OpenAI::Beta::RunStepStreamEvent::ThreadRunStepInProgress, + OpenAI::Beta::RunStepStreamEvent::ThreadRunStepDelta, + OpenAI::Beta::RunStepStreamEvent::ThreadRunStepCompleted, + OpenAI::Beta::RunStepStreamEvent::ThreadRunStepFailed, + OpenAI::Beta::RunStepStreamEvent::ThreadRunStepCancelled, + OpenAI::Beta::RunStepStreamEvent::ThreadRunStepExpired + ) + end + end end end end diff --git a/lib/openai/models/beta/run_stream_event.rb b/lib/openai/models/beta/run_stream_event.rb index ca41f968..8c2d8801 100644 --- a/lib/openai/models/beta/run_stream_event.rb +++ b/lib/openai/models/beta/run_stream_event.rb @@ -292,6 +292,23 @@ class ThreadRunExpired < OpenAI::Internal::Type::BaseModel # @!method self.variants # @return [Array(OpenAI::Beta::RunStreamEvent::ThreadRunCreated, OpenAI::Beta::RunStreamEvent::ThreadRunQueued, OpenAI::Beta::RunStreamEvent::ThreadRunInProgress, OpenAI::Beta::RunStreamEvent::ThreadRunRequiresAction, OpenAI::Beta::RunStreamEvent::ThreadRunCompleted, OpenAI::Beta::RunStreamEvent::ThreadRunIncomplete, OpenAI::Beta::RunStreamEvent::ThreadRunFailed, OpenAI::Beta::RunStreamEvent::ThreadRunCancelling, OpenAI::Beta::RunStreamEvent::ThreadRunCancelled, OpenAI::Beta::RunStreamEvent::ThreadRunExpired)] + + define_sorbet_constant!(:Variants) do + T.type_alias do + T.any( + OpenAI::Beta::RunStreamEvent::ThreadRunCreated, + OpenAI::Beta::RunStreamEvent::ThreadRunQueued, + OpenAI::Beta::RunStreamEvent::ThreadRunInProgress, + OpenAI::Beta::RunStreamEvent::ThreadRunRequiresAction, + OpenAI::Beta::RunStreamEvent::ThreadRunCompleted, + OpenAI::Beta::RunStreamEvent::ThreadRunIncomplete, + OpenAI::Beta::RunStreamEvent::ThreadRunFailed, + OpenAI::Beta::RunStreamEvent::ThreadRunCancelling, + OpenAI::Beta::RunStreamEvent::ThreadRunCancelled, + OpenAI::Beta::RunStreamEvent::ThreadRunExpired + ) + end + end end end end diff --git a/lib/openai/models/beta/thread_create_and_run_params.rb b/lib/openai/models/beta/thread_create_and_run_params.rb index 5d4533ef..f9addd97 100644 --- a/lib/openai/models/beta/thread_create_and_run_params.rb +++ b/lib/openai/models/beta/thread_create_and_run_params.rb @@ -214,6 +214,10 @@ module Model # @!method self.variants # @return [Array(String, Symbol, OpenAI::ChatModel)] + + define_sorbet_constant!(:Variants) do + T.type_alias { T.any(String, OpenAI::ChatModel::TaggedSymbol) } + end end class Thread < OpenAI::Internal::Type::BaseModel @@ -332,6 +336,21 @@ module Content # @!method self.variants # @return [Array(String, Array)] + define_sorbet_constant!(:Variants) do + T.type_alias do + T.any( + String, + T::Array[ + T.any( + OpenAI::Beta::Threads::ImageFileContentBlock, + OpenAI::Beta::Threads::ImageURLContentBlock, + OpenAI::Beta::Threads::TextContentBlockParam + ) + ] + ) + end + end + # @type [OpenAI::Internal::Type::Converter] MessageContentPartParamArray = OpenAI::Internal::Type::ArrayOf[union: -> { OpenAI::Beta::Threads::MessageContentPartParam }] @@ -401,6 +420,15 @@ class FileSearch < OpenAI::Internal::Type::BaseModel # @!method self.variants # @return [Array(OpenAI::Beta::CodeInterpreterTool, OpenAI::Beta::ThreadCreateAndRunParams::Thread::Message::Attachment::Tool::FileSearch)] + + define_sorbet_constant!(:Variants) do + T.type_alias do + T.any( + OpenAI::Beta::CodeInterpreterTool, + OpenAI::Beta::ThreadCreateAndRunParams::Thread::Message::Attachment::Tool::FileSearch + ) + end + end end end end @@ -605,6 +633,15 @@ class Static < OpenAI::Internal::Type::BaseModel # @!method self.variants # @return [Array(OpenAI::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Auto, OpenAI::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static)] + + define_sorbet_constant!(:Variants) do + T.type_alias do + T.any( + OpenAI::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Auto, + OpenAI::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static + ) + end + end end end end diff --git a/lib/openai/models/beta/thread_create_params.rb b/lib/openai/models/beta/thread_create_params.rb index c4d1c025..df5b80d4 100644 --- a/lib/openai/models/beta/thread_create_params.rb +++ b/lib/openai/models/beta/thread_create_params.rb @@ -113,6 +113,21 @@ module Content # @!method self.variants # @return [Array(String, Array)] + define_sorbet_constant!(:Variants) do + T.type_alias do + T.any( + String, + T::Array[ + T.any( + OpenAI::Beta::Threads::ImageFileContentBlock, + OpenAI::Beta::Threads::ImageURLContentBlock, + OpenAI::Beta::Threads::TextContentBlockParam + ) + ] + ) + end + end + # @type [OpenAI::Internal::Type::Converter] MessageContentPartParamArray = OpenAI::Internal::Type::ArrayOf[union: -> { OpenAI::Beta::Threads::MessageContentPartParam }] @@ -182,6 +197,15 @@ class FileSearch < OpenAI::Internal::Type::BaseModel # @!method self.variants # @return [Array(OpenAI::Beta::CodeInterpreterTool, OpenAI::Beta::ThreadCreateParams::Message::Attachment::Tool::FileSearch)] + + define_sorbet_constant!(:Variants) do + T.type_alias do + T.any( + OpenAI::Beta::CodeInterpreterTool, + OpenAI::Beta::ThreadCreateParams::Message::Attachment::Tool::FileSearch + ) + end + end end end end @@ -380,6 +404,15 @@ class Static < OpenAI::Internal::Type::BaseModel # @!method self.variants # @return [Array(OpenAI::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Auto, OpenAI::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static)] + + define_sorbet_constant!(:Variants) do + T.type_alias do + T.any( + OpenAI::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Auto, + OpenAI::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static + ) + end + end end end end diff --git a/lib/openai/models/beta/threads/annotation.rb b/lib/openai/models/beta/threads/annotation.rb index c110cbbd..080262b3 100644 --- a/lib/openai/models/beta/threads/annotation.rb +++ b/lib/openai/models/beta/threads/annotation.rb @@ -20,6 +20,12 @@ module Annotation # @!method self.variants # @return [Array(OpenAI::Beta::Threads::FileCitationAnnotation, OpenAI::Beta::Threads::FilePathAnnotation)] + + define_sorbet_constant!(:Variants) do + T.type_alias do + T.any(OpenAI::Beta::Threads::FileCitationAnnotation, OpenAI::Beta::Threads::FilePathAnnotation) + end + end end end end diff --git a/lib/openai/models/beta/threads/annotation_delta.rb b/lib/openai/models/beta/threads/annotation_delta.rb index e5b290d5..2dbd5956 100644 --- a/lib/openai/models/beta/threads/annotation_delta.rb +++ b/lib/openai/models/beta/threads/annotation_delta.rb @@ -20,6 +20,15 @@ module AnnotationDelta # @!method self.variants # @return [Array(OpenAI::Beta::Threads::FileCitationDeltaAnnotation, OpenAI::Beta::Threads::FilePathDeltaAnnotation)] + + define_sorbet_constant!(:Variants) do + T.type_alias do + T.any( + OpenAI::Beta::Threads::FileCitationDeltaAnnotation, + OpenAI::Beta::Threads::FilePathDeltaAnnotation + ) + end + end end end end diff --git a/lib/openai/models/beta/threads/message.rb b/lib/openai/models/beta/threads/message.rb index 19af32cc..ad5cd0f2 100644 --- a/lib/openai/models/beta/threads/message.rb +++ b/lib/openai/models/beta/threads/message.rb @@ -184,6 +184,15 @@ class AssistantToolsFileSearchTypeOnly < OpenAI::Internal::Type::BaseModel # @!method self.variants # @return [Array(OpenAI::Beta::CodeInterpreterTool, OpenAI::Beta::Threads::Message::Attachment::Tool::AssistantToolsFileSearchTypeOnly)] + + define_sorbet_constant!(:Variants) do + T.type_alias do + T.any( + OpenAI::Beta::CodeInterpreterTool, + OpenAI::Beta::Threads::Message::Attachment::Tool::AssistantToolsFileSearchTypeOnly + ) + end + end end end diff --git a/lib/openai/models/beta/threads/message_content.rb b/lib/openai/models/beta/threads/message_content.rb index 295d6858..f40e35dd 100644 --- a/lib/openai/models/beta/threads/message_content.rb +++ b/lib/openai/models/beta/threads/message_content.rb @@ -25,6 +25,17 @@ module MessageContent # @!method self.variants # @return [Array(OpenAI::Beta::Threads::ImageFileContentBlock, OpenAI::Beta::Threads::ImageURLContentBlock, OpenAI::Beta::Threads::TextContentBlock, OpenAI::Beta::Threads::RefusalContentBlock)] + + define_sorbet_constant!(:Variants) do + T.type_alias do + T.any( + OpenAI::Beta::Threads::ImageFileContentBlock, + OpenAI::Beta::Threads::ImageURLContentBlock, + OpenAI::Beta::Threads::TextContentBlock, + OpenAI::Beta::Threads::RefusalContentBlock + ) + end + end end end end diff --git a/lib/openai/models/beta/threads/message_content_delta.rb b/lib/openai/models/beta/threads/message_content_delta.rb index a6b04dc3..80ecb9cb 100644 --- a/lib/openai/models/beta/threads/message_content_delta.rb +++ b/lib/openai/models/beta/threads/message_content_delta.rb @@ -25,6 +25,17 @@ module MessageContentDelta # @!method self.variants # @return [Array(OpenAI::Beta::Threads::ImageFileDeltaBlock, OpenAI::Beta::Threads::TextDeltaBlock, OpenAI::Beta::Threads::RefusalDeltaBlock, OpenAI::Beta::Threads::ImageURLDeltaBlock)] + + define_sorbet_constant!(:Variants) do + T.type_alias do + T.any( + OpenAI::Beta::Threads::ImageFileDeltaBlock, + OpenAI::Beta::Threads::TextDeltaBlock, + OpenAI::Beta::Threads::RefusalDeltaBlock, + OpenAI::Beta::Threads::ImageURLDeltaBlock + ) + end + end end end end diff --git a/lib/openai/models/beta/threads/message_content_part_param.rb b/lib/openai/models/beta/threads/message_content_part_param.rb index 93fd228a..65e1a5b3 100644 --- a/lib/openai/models/beta/threads/message_content_part_param.rb +++ b/lib/openai/models/beta/threads/message_content_part_param.rb @@ -22,6 +22,16 @@ module MessageContentPartParam # @!method self.variants # @return [Array(OpenAI::Beta::Threads::ImageFileContentBlock, OpenAI::Beta::Threads::ImageURLContentBlock, OpenAI::Beta::Threads::TextContentBlockParam)] + + define_sorbet_constant!(:Variants) do + T.type_alias do + T.any( + OpenAI::Beta::Threads::ImageFileContentBlock, + OpenAI::Beta::Threads::ImageURLContentBlock, + OpenAI::Beta::Threads::TextContentBlockParam + ) + end + end end end end diff --git a/lib/openai/models/beta/threads/message_create_params.rb b/lib/openai/models/beta/threads/message_create_params.rb index 223feced..11c3ea83 100644 --- a/lib/openai/models/beta/threads/message_create_params.rb +++ b/lib/openai/models/beta/threads/message_create_params.rb @@ -74,6 +74,21 @@ module Content # @!method self.variants # @return [Array(String, Array)] + define_sorbet_constant!(:Variants) do + T.type_alias do + T.any( + String, + T::Array[ + T.any( + OpenAI::Beta::Threads::ImageFileContentBlock, + OpenAI::Beta::Threads::ImageURLContentBlock, + OpenAI::Beta::Threads::TextContentBlockParam + ) + ] + ) + end + end + # @type [OpenAI::Internal::Type::Converter] MessageContentPartParamArray = OpenAI::Internal::Type::ArrayOf[union: -> { OpenAI::Beta::Threads::MessageContentPartParam }] @@ -141,6 +156,15 @@ class FileSearch < OpenAI::Internal::Type::BaseModel # @!method self.variants # @return [Array(OpenAI::Beta::CodeInterpreterTool, OpenAI::Beta::Threads::MessageCreateParams::Attachment::Tool::FileSearch)] + + define_sorbet_constant!(:Variants) do + T.type_alias do + T.any( + OpenAI::Beta::CodeInterpreterTool, + OpenAI::Beta::Threads::MessageCreateParams::Attachment::Tool::FileSearch + ) + end + end end end end diff --git a/lib/openai/models/beta/threads/run_create_params.rb b/lib/openai/models/beta/threads/run_create_params.rb index 773bbb7b..65cf8129 100644 --- a/lib/openai/models/beta/threads/run_create_params.rb +++ b/lib/openai/models/beta/threads/run_create_params.rb @@ -303,6 +303,21 @@ module Content # @!method self.variants # @return [Array(String, Array)] + define_sorbet_constant!(:Variants) do + T.type_alias do + T.any( + String, + T::Array[ + T.any( + OpenAI::Beta::Threads::ImageFileContentBlock, + OpenAI::Beta::Threads::ImageURLContentBlock, + OpenAI::Beta::Threads::TextContentBlockParam + ) + ] + ) + end + end + # @type [OpenAI::Internal::Type::Converter] MessageContentPartParamArray = OpenAI::Internal::Type::ArrayOf[union: -> { OpenAI::Beta::Threads::MessageContentPartParam }] @@ -372,6 +387,15 @@ class FileSearch < OpenAI::Internal::Type::BaseModel # @!method self.variants # @return [Array(OpenAI::Beta::CodeInterpreterTool, OpenAI::Beta::Threads::RunCreateParams::AdditionalMessage::Attachment::Tool::FileSearch)] + + define_sorbet_constant!(:Variants) do + T.type_alias do + T.any( + OpenAI::Beta::CodeInterpreterTool, + OpenAI::Beta::Threads::RunCreateParams::AdditionalMessage::Attachment::Tool::FileSearch + ) + end + end end end end @@ -390,6 +414,10 @@ module Model # @!method self.variants # @return [Array(String, Symbol, OpenAI::ChatModel)] + + define_sorbet_constant!(:Variants) do + T.type_alias { T.any(String, OpenAI::ChatModel::TaggedSymbol) } + end end class TruncationStrategy < OpenAI::Internal::Type::BaseModel diff --git a/lib/openai/models/beta/threads/runs/code_interpreter_tool_call.rb b/lib/openai/models/beta/threads/runs/code_interpreter_tool_call.rb index 4c7b9f6a..5d03c473 100644 --- a/lib/openai/models/beta/threads/runs/code_interpreter_tool_call.rb +++ b/lib/openai/models/beta/threads/runs/code_interpreter_tool_call.rb @@ -148,6 +148,15 @@ class Image < OpenAI::Internal::Type::BaseModel # @!method self.variants # @return [Array(OpenAI::Beta::Threads::Runs::CodeInterpreterToolCall::CodeInterpreter::Output::Logs, OpenAI::Beta::Threads::Runs::CodeInterpreterToolCall::CodeInterpreter::Output::Image)] + + define_sorbet_constant!(:Variants) do + T.type_alias do + T.any( + OpenAI::Beta::Threads::Runs::CodeInterpreterToolCall::CodeInterpreter::Output::Logs, + OpenAI::Beta::Threads::Runs::CodeInterpreterToolCall::CodeInterpreter::Output::Image + ) + end + end end end end diff --git a/lib/openai/models/beta/threads/runs/code_interpreter_tool_call_delta.rb b/lib/openai/models/beta/threads/runs/code_interpreter_tool_call_delta.rb index 98ceaa6b..6ce54421 100644 --- a/lib/openai/models/beta/threads/runs/code_interpreter_tool_call_delta.rb +++ b/lib/openai/models/beta/threads/runs/code_interpreter_tool_call_delta.rb @@ -89,6 +89,15 @@ module Output # @!method self.variants # @return [Array(OpenAI::Beta::Threads::Runs::CodeInterpreterLogs, OpenAI::Beta::Threads::Runs::CodeInterpreterOutputImage)] + + define_sorbet_constant!(:Variants) do + T.type_alias do + T.any( + OpenAI::Beta::Threads::Runs::CodeInterpreterLogs, + OpenAI::Beta::Threads::Runs::CodeInterpreterOutputImage + ) + end + end end end end diff --git a/lib/openai/models/beta/threads/runs/run_step.rb b/lib/openai/models/beta/threads/runs/run_step.rb index 2dc26909..656fc313 100644 --- a/lib/openai/models/beta/threads/runs/run_step.rb +++ b/lib/openai/models/beta/threads/runs/run_step.rb @@ -223,6 +223,15 @@ module StepDetails # @!method self.variants # @return [Array(OpenAI::Beta::Threads::Runs::MessageCreationStepDetails, OpenAI::Beta::Threads::Runs::ToolCallsStepDetails)] + + define_sorbet_constant!(:Variants) do + T.type_alias do + T.any( + OpenAI::Beta::Threads::Runs::MessageCreationStepDetails, + OpenAI::Beta::Threads::Runs::ToolCallsStepDetails + ) + end + end end # The type of run step, which can be either `message_creation` or `tool_calls`. diff --git a/lib/openai/models/beta/threads/runs/run_step_delta.rb b/lib/openai/models/beta/threads/runs/run_step_delta.rb index 4666af0b..a4848a8c 100644 --- a/lib/openai/models/beta/threads/runs/run_step_delta.rb +++ b/lib/openai/models/beta/threads/runs/run_step_delta.rb @@ -33,6 +33,15 @@ module StepDetails # @!method self.variants # @return [Array(OpenAI::Beta::Threads::Runs::RunStepDeltaMessageDelta, OpenAI::Beta::Threads::Runs::ToolCallDeltaObject)] + + define_sorbet_constant!(:Variants) do + T.type_alias do + T.any( + OpenAI::Beta::Threads::Runs::RunStepDeltaMessageDelta, + OpenAI::Beta::Threads::Runs::ToolCallDeltaObject + ) + end + end end end end diff --git a/lib/openai/models/beta/threads/runs/tool_call.rb b/lib/openai/models/beta/threads/runs/tool_call.rb index 4140ec79..9452c475 100644 --- a/lib/openai/models/beta/threads/runs/tool_call.rb +++ b/lib/openai/models/beta/threads/runs/tool_call.rb @@ -20,6 +20,16 @@ module ToolCall # @!method self.variants # @return [Array(OpenAI::Beta::Threads::Runs::CodeInterpreterToolCall, OpenAI::Beta::Threads::Runs::FileSearchToolCall, OpenAI::Beta::Threads::Runs::FunctionToolCall)] + + define_sorbet_constant!(:Variants) do + T.type_alias do + T.any( + OpenAI::Beta::Threads::Runs::CodeInterpreterToolCall, + OpenAI::Beta::Threads::Runs::FileSearchToolCall, + OpenAI::Beta::Threads::Runs::FunctionToolCall + ) + end + end end end end diff --git a/lib/openai/models/beta/threads/runs/tool_call_delta.rb b/lib/openai/models/beta/threads/runs/tool_call_delta.rb index ab51e0a3..10ad55e8 100644 --- a/lib/openai/models/beta/threads/runs/tool_call_delta.rb +++ b/lib/openai/models/beta/threads/runs/tool_call_delta.rb @@ -20,6 +20,16 @@ module ToolCallDelta # @!method self.variants # @return [Array(OpenAI::Beta::Threads::Runs::CodeInterpreterToolCallDelta, OpenAI::Beta::Threads::Runs::FileSearchToolCallDelta, OpenAI::Beta::Threads::Runs::FunctionToolCallDelta)] + + define_sorbet_constant!(:Variants) do + T.type_alias do + T.any( + OpenAI::Beta::Threads::Runs::CodeInterpreterToolCallDelta, + OpenAI::Beta::Threads::Runs::FileSearchToolCallDelta, + OpenAI::Beta::Threads::Runs::FunctionToolCallDelta + ) + end + end end end end diff --git a/lib/openai/models/chat/chat_completion_assistant_message_param.rb b/lib/openai/models/chat/chat_completion_assistant_message_param.rb index 2f9fbe2b..b49a8303 100644 --- a/lib/openai/models/chat/chat_completion_assistant_message_param.rb +++ b/lib/openai/models/chat/chat_completion_assistant_message_param.rb @@ -126,11 +126,32 @@ module ArrayOfContentPart # @!method self.variants # @return [Array(OpenAI::Chat::ChatCompletionContentPartText, OpenAI::Chat::ChatCompletionContentPartRefusal)] + + define_sorbet_constant!(:Variants) do + T.type_alias do + T.any( + OpenAI::Chat::ChatCompletionContentPartText, + OpenAI::Chat::ChatCompletionContentPartRefusal + ) + end + end end # @!method self.variants # @return [Array(String, Array)] + define_sorbet_constant!(:Variants) do + T.type_alias do + T.any( + String, + T::Array[T.any( + OpenAI::Chat::ChatCompletionContentPartText, + OpenAI::Chat::ChatCompletionContentPartRefusal + )] + ) + end + end + # @type [OpenAI::Internal::Type::Converter] ArrayOfContentPartArray = OpenAI::Internal::Type::ArrayOf[union: -> { diff --git a/lib/openai/models/chat/chat_completion_audio_param.rb b/lib/openai/models/chat/chat_completion_audio_param.rb index e9901c92..3ab3a1d0 100644 --- a/lib/openai/models/chat/chat_completion_audio_param.rb +++ b/lib/openai/models/chat/chat_completion_audio_param.rb @@ -82,6 +82,10 @@ module Voice # @!method self.variants # @return [Array(String, Symbol)] + define_sorbet_constant!(:Variants) do + T.type_alias { T.any(String, OpenAI::Chat::ChatCompletionAudioParam::Voice::TaggedSymbol) } + end + # @!group ALLOY = :alloy diff --git a/lib/openai/models/chat/chat_completion_content_part.rb b/lib/openai/models/chat/chat_completion_content_part.rb index 64a02cf0..a79c7dbf 100644 --- a/lib/openai/models/chat/chat_completion_content_part.rb +++ b/lib/openai/models/chat/chat_completion_content_part.rb @@ -77,6 +77,17 @@ class File < OpenAI::Internal::Type::BaseModel # @!method self.variants # @return [Array(OpenAI::Chat::ChatCompletionContentPartText, OpenAI::Chat::ChatCompletionContentPartImage, OpenAI::Chat::ChatCompletionContentPartInputAudio, OpenAI::Chat::ChatCompletionContentPart::File)] + + define_sorbet_constant!(:Variants) do + T.type_alias do + T.any( + OpenAI::Chat::ChatCompletionContentPartText, + OpenAI::Chat::ChatCompletionContentPartImage, + OpenAI::Chat::ChatCompletionContentPartInputAudio, + OpenAI::Chat::ChatCompletionContentPart::File + ) + end + end end end diff --git a/lib/openai/models/chat/chat_completion_developer_message_param.rb b/lib/openai/models/chat/chat_completion_developer_message_param.rb index 31fafa47..492403d8 100644 --- a/lib/openai/models/chat/chat_completion_developer_message_param.rb +++ b/lib/openai/models/chat/chat_completion_developer_message_param.rb @@ -54,6 +54,10 @@ module Content # @!method self.variants # @return [Array(String, Array)] + define_sorbet_constant!(:Variants) do + T.type_alias { T.any(String, T::Array[OpenAI::Chat::ChatCompletionContentPartText]) } + end + # @type [OpenAI::Internal::Type::Converter] ChatCompletionContentPartTextArray = OpenAI::Internal::Type::ArrayOf[-> { OpenAI::Chat::ChatCompletionContentPartText }] diff --git a/lib/openai/models/chat/chat_completion_message_param.rb b/lib/openai/models/chat/chat_completion_message_param.rb index 6710bee4..b3ba243b 100644 --- a/lib/openai/models/chat/chat_completion_message_param.rb +++ b/lib/openai/models/chat/chat_completion_message_param.rb @@ -34,6 +34,19 @@ module ChatCompletionMessageParam # @!method self.variants # @return [Array(OpenAI::Chat::ChatCompletionDeveloperMessageParam, OpenAI::Chat::ChatCompletionSystemMessageParam, OpenAI::Chat::ChatCompletionUserMessageParam, OpenAI::Chat::ChatCompletionAssistantMessageParam, OpenAI::Chat::ChatCompletionToolMessageParam, OpenAI::Chat::ChatCompletionFunctionMessageParam)] + + define_sorbet_constant!(:Variants) do + T.type_alias do + T.any( + OpenAI::Chat::ChatCompletionDeveloperMessageParam, + OpenAI::Chat::ChatCompletionSystemMessageParam, + OpenAI::Chat::ChatCompletionUserMessageParam, + OpenAI::Chat::ChatCompletionAssistantMessageParam, + OpenAI::Chat::ChatCompletionToolMessageParam, + OpenAI::Chat::ChatCompletionFunctionMessageParam + ) + end + end end end diff --git a/lib/openai/models/chat/chat_completion_prediction_content.rb b/lib/openai/models/chat/chat_completion_prediction_content.rb index eeccd9df..0b0ba1f0 100644 --- a/lib/openai/models/chat/chat_completion_prediction_content.rb +++ b/lib/openai/models/chat/chat_completion_prediction_content.rb @@ -50,6 +50,10 @@ module Content # @!method self.variants # @return [Array(String, Array)] + define_sorbet_constant!(:Variants) do + T.type_alias { T.any(String, T::Array[OpenAI::Chat::ChatCompletionContentPartText]) } + end + # @type [OpenAI::Internal::Type::Converter] ChatCompletionContentPartTextArray = OpenAI::Internal::Type::ArrayOf[-> { OpenAI::Chat::ChatCompletionContentPartText }] diff --git a/lib/openai/models/chat/chat_completion_system_message_param.rb b/lib/openai/models/chat/chat_completion_system_message_param.rb index 43b7a5c4..746905d7 100644 --- a/lib/openai/models/chat/chat_completion_system_message_param.rb +++ b/lib/openai/models/chat/chat_completion_system_message_param.rb @@ -54,6 +54,10 @@ module Content # @!method self.variants # @return [Array(String, Array)] + define_sorbet_constant!(:Variants) do + T.type_alias { T.any(String, T::Array[OpenAI::Chat::ChatCompletionContentPartText]) } + end + # @type [OpenAI::Internal::Type::Converter] ChatCompletionContentPartTextArray = OpenAI::Internal::Type::ArrayOf[-> { OpenAI::Chat::ChatCompletionContentPartText }] diff --git a/lib/openai/models/chat/chat_completion_tool_choice_option.rb b/lib/openai/models/chat/chat_completion_tool_choice_option.rb index 4b8a6fe3..506d3899 100644 --- a/lib/openai/models/chat/chat_completion_tool_choice_option.rb +++ b/lib/openai/models/chat/chat_completion_tool_choice_option.rb @@ -37,6 +37,15 @@ module Auto # @!method self.variants # @return [Array(Symbol, OpenAI::Chat::ChatCompletionToolChoiceOption::Auto, OpenAI::Chat::ChatCompletionNamedToolChoice)] + + define_sorbet_constant!(:Variants) do + T.type_alias do + T.any( + OpenAI::Chat::ChatCompletionToolChoiceOption::Auto::TaggedSymbol, + OpenAI::Chat::ChatCompletionNamedToolChoice + ) + end + end end end diff --git a/lib/openai/models/chat/chat_completion_tool_message_param.rb b/lib/openai/models/chat/chat_completion_tool_message_param.rb index c88bb51c..6ab285b1 100644 --- a/lib/openai/models/chat/chat_completion_tool_message_param.rb +++ b/lib/openai/models/chat/chat_completion_tool_message_param.rb @@ -46,6 +46,10 @@ module Content # @!method self.variants # @return [Array(String, Array)] + define_sorbet_constant!(:Variants) do + T.type_alias { T.any(String, T::Array[OpenAI::Chat::ChatCompletionContentPartText]) } + end + # @type [OpenAI::Internal::Type::Converter] ChatCompletionContentPartTextArray = OpenAI::Internal::Type::ArrayOf[-> { OpenAI::Chat::ChatCompletionContentPartText }] diff --git a/lib/openai/models/chat/chat_completion_user_message_param.rb b/lib/openai/models/chat/chat_completion_user_message_param.rb index ffd7b68a..33a1f532 100644 --- a/lib/openai/models/chat/chat_completion_user_message_param.rb +++ b/lib/openai/models/chat/chat_completion_user_message_param.rb @@ -51,6 +51,22 @@ module Content # @!method self.variants # @return [Array(String, Array)] + define_sorbet_constant!(:Variants) do + T.type_alias do + T.any( + String, + T::Array[ + T.any( + OpenAI::Chat::ChatCompletionContentPartText, + OpenAI::Chat::ChatCompletionContentPartImage, + OpenAI::Chat::ChatCompletionContentPartInputAudio, + OpenAI::Chat::ChatCompletionContentPart::File + ) + ] + ) + end + end + # @type [OpenAI::Internal::Type::Converter] ChatCompletionContentPartArray = OpenAI::Internal::Type::ArrayOf[union: -> { OpenAI::Chat::ChatCompletionContentPart }] diff --git a/lib/openai/models/chat/completion_create_params.rb b/lib/openai/models/chat/completion_create_params.rb index 3a3a3c23..69ccac80 100644 --- a/lib/openai/models/chat/completion_create_params.rb +++ b/lib/openai/models/chat/completion_create_params.rb @@ -412,6 +412,10 @@ module Model # @!method self.variants # @return [Array(String, Symbol, OpenAI::ChatModel)] + + define_sorbet_constant!(:Variants) do + T.type_alias { T.any(String, OpenAI::ChatModel::TaggedSymbol) } + end end # @deprecated @@ -454,6 +458,15 @@ module FunctionCallMode # @!method self.variants # @return [Array(Symbol, OpenAI::Chat::CompletionCreateParams::FunctionCall::FunctionCallMode, OpenAI::Chat::ChatCompletionFunctionCallOption)] + + define_sorbet_constant!(:Variants) do + T.type_alias do + T.any( + OpenAI::Chat::CompletionCreateParams::FunctionCall::FunctionCallMode::TaggedSymbol, + OpenAI::Chat::ChatCompletionFunctionCallOption + ) + end + end end # @deprecated @@ -533,6 +546,16 @@ module ResponseFormat # @!method self.variants # @return [Array(OpenAI::ResponseFormatText, OpenAI::ResponseFormatJSONSchema, OpenAI::ResponseFormatJSONObject)] + + define_sorbet_constant!(:Variants) do + T.type_alias do + T.any( + OpenAI::ResponseFormatText, + OpenAI::ResponseFormatJSONSchema, + OpenAI::ResponseFormatJSONObject + ) + end + end end # Specifies the latency tier to use for processing the request. This parameter is @@ -577,6 +600,10 @@ module Stop # @!method self.variants # @return [Array(String, Array)] + define_sorbet_constant!(:Variants) do + T.type_alias { T.nilable(T.any(String, T::Array[String])) } + end + # @type [OpenAI::Internal::Type::Converter] StringArray = OpenAI::Internal::Type::ArrayOf[String] end diff --git a/lib/openai/models/comparison_filter.rb b/lib/openai/models/comparison_filter.rb index 582e2f5a..2847efa6 100644 --- a/lib/openai/models/comparison_filter.rb +++ b/lib/openai/models/comparison_filter.rb @@ -81,6 +81,10 @@ module Value # @!method self.variants # @return [Array(String, Float, Boolean)] + + define_sorbet_constant!(:Variants) do + T.type_alias { T.any(String, Float, T::Boolean) } + end end end end diff --git a/lib/openai/models/completion_create_params.rb b/lib/openai/models/completion_create_params.rb index 075f9d95..bc8a3619 100644 --- a/lib/openai/models/completion_create_params.rb +++ b/lib/openai/models/completion_create_params.rb @@ -241,6 +241,10 @@ module Model # @!method self.variants # @return [Array(String, Symbol)] + define_sorbet_constant!(:Variants) do + T.type_alias { T.any(String, OpenAI::CompletionCreateParams::Model::TaggedSymbol) } + end + # @!group GPT_3_5_TURBO_INSTRUCT = :"gpt-3.5-turbo-instruct" @@ -270,6 +274,10 @@ module Prompt # @!method self.variants # @return [Array(String, Array, Array, Array>)] + define_sorbet_constant!(:Variants) do + T.type_alias { T.any(String, T::Array[String], T::Array[Integer], T::Array[T::Array[Integer]]) } + end + # @type [OpenAI::Internal::Type::Converter] StringArray = OpenAI::Internal::Type::ArrayOf[String] @@ -294,6 +302,10 @@ module Stop # @!method self.variants # @return [Array(String, Array)] + define_sorbet_constant!(:Variants) do + T.type_alias { T.nilable(T.any(String, T::Array[String])) } + end + # @type [OpenAI::Internal::Type::Converter] StringArray = OpenAI::Internal::Type::ArrayOf[String] end diff --git a/lib/openai/models/compound_filter.rb b/lib/openai/models/compound_filter.rb index 8bfaf4d2..2791671b 100644 --- a/lib/openai/models/compound_filter.rb +++ b/lib/openai/models/compound_filter.rb @@ -38,6 +38,10 @@ module Filter # @!method self.variants # @return [Array(OpenAI::ComparisonFilter, Object)] + + define_sorbet_constant!(:Variants) do + T.type_alias { T.any(OpenAI::ComparisonFilter, T.anything) } + end end # Type of operation: `and` or `or`. diff --git a/lib/openai/models/embedding_create_params.rb b/lib/openai/models/embedding_create_params.rb index 48890276..7640b480 100644 --- a/lib/openai/models/embedding_create_params.rb +++ b/lib/openai/models/embedding_create_params.rb @@ -94,6 +94,10 @@ module Input # @!method self.variants # @return [Array(String, Array, Array, Array>)] + define_sorbet_constant!(:Variants) do + T.type_alias { T.any(String, T::Array[String], T::Array[Integer], T::Array[T::Array[Integer]]) } + end + # @type [OpenAI::Internal::Type::Converter] StringArray = OpenAI::Internal::Type::ArrayOf[String] @@ -119,6 +123,10 @@ module Model # @!method self.variants # @return [Array(String, Symbol, OpenAI::EmbeddingModel)] + + define_sorbet_constant!(:Variants) do + T.type_alias { T.any(String, OpenAI::EmbeddingModel::TaggedSymbol) } + end end # The format to return the embeddings in. Can be either `float` or diff --git a/lib/openai/models/eval_create_params.rb b/lib/openai/models/eval_create_params.rb index 668813af..1dbd1acd 100644 --- a/lib/openai/models/eval_create_params.rb +++ b/lib/openai/models/eval_create_params.rb @@ -130,6 +130,15 @@ class StoredCompletions < OpenAI::Internal::Type::BaseModel # @!method self.variants # @return [Array(OpenAI::EvalCreateParams::DataSourceConfig::Custom, OpenAI::EvalCreateParams::DataSourceConfig::StoredCompletions)] + + define_sorbet_constant!(:Variants) do + T.type_alias do + T.any( + OpenAI::EvalCreateParams::DataSourceConfig::Custom, + OpenAI::EvalCreateParams::DataSourceConfig::StoredCompletions + ) + end + end end # A LabelModelGrader object which uses a model to assign labels to each item in @@ -338,6 +347,16 @@ class OutputText < OpenAI::Internal::Type::BaseModel # @!method self.variants # @return [Array(String, OpenAI::Responses::ResponseInputText, OpenAI::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::Content::OutputText)] + + define_sorbet_constant!(:Variants) do + T.type_alias do + T.any( + String, + OpenAI::Responses::ResponseInputText, + OpenAI::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::Content::OutputText + ) + end + end end # The role of the message input. One of `user`, `assistant`, `system`, or @@ -371,6 +390,15 @@ module Type # @!method self.variants # @return [Array(OpenAI::EvalCreateParams::TestingCriterion::LabelModel::Input::SimpleInputMessage, OpenAI::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem)] + + define_sorbet_constant!(:Variants) do + T.type_alias do + T.any( + OpenAI::EvalCreateParams::TestingCriterion::LabelModel::Input::SimpleInputMessage, + OpenAI::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem + ) + end + end end end @@ -415,6 +443,18 @@ class ScoreModel < OpenAI::Models::Graders::ScoreModelGrader # @!method self.variants # @return [Array(OpenAI::EvalCreateParams::TestingCriterion::LabelModel, OpenAI::Graders::StringCheckGrader, OpenAI::EvalCreateParams::TestingCriterion::TextSimilarity, OpenAI::EvalCreateParams::TestingCriterion::Python, OpenAI::EvalCreateParams::TestingCriterion::ScoreModel)] + + define_sorbet_constant!(:Variants) do + T.type_alias do + T.any( + OpenAI::EvalCreateParams::TestingCriterion::LabelModel, + OpenAI::Graders::StringCheckGrader, + OpenAI::EvalCreateParams::TestingCriterion::TextSimilarity, + OpenAI::EvalCreateParams::TestingCriterion::Python, + OpenAI::EvalCreateParams::TestingCriterion::ScoreModel + ) + end + end end end end diff --git a/lib/openai/models/eval_create_response.rb b/lib/openai/models/eval_create_response.rb index 992dbed4..6030deb8 100644 --- a/lib/openai/models/eval_create_response.rb +++ b/lib/openai/models/eval_create_response.rb @@ -99,6 +99,12 @@ module DataSourceConfig # @!method self.variants # @return [Array(OpenAI::EvalCustomDataSourceConfig, OpenAI::EvalStoredCompletionsDataSourceConfig)] + + define_sorbet_constant!(:Variants) do + T.type_alias do + T.any(OpenAI::EvalCustomDataSourceConfig, OpenAI::EvalStoredCompletionsDataSourceConfig) + end + end end # A LabelModelGrader object which uses a model to assign labels to each item in @@ -163,6 +169,18 @@ class EvalGraderScoreModel < OpenAI::Models::Graders::ScoreModelGrader # @!method self.variants # @return [Array(OpenAI::Graders::LabelModelGrader, OpenAI::Graders::StringCheckGrader, OpenAI::Models::EvalCreateResponse::TestingCriterion::EvalGraderTextSimilarity, OpenAI::Models::EvalCreateResponse::TestingCriterion::EvalGraderPython, OpenAI::Models::EvalCreateResponse::TestingCriterion::EvalGraderScoreModel)] + + define_sorbet_constant!(:Variants) do + T.type_alias do + T.any( + OpenAI::Graders::LabelModelGrader, + OpenAI::Graders::StringCheckGrader, + OpenAI::Models::EvalCreateResponse::TestingCriterion::EvalGraderTextSimilarity, + OpenAI::Models::EvalCreateResponse::TestingCriterion::EvalGraderPython, + OpenAI::Models::EvalCreateResponse::TestingCriterion::EvalGraderScoreModel + ) + end + end end end end diff --git a/lib/openai/models/eval_list_response.rb b/lib/openai/models/eval_list_response.rb index d75a67aa..966d6bcb 100644 --- a/lib/openai/models/eval_list_response.rb +++ b/lib/openai/models/eval_list_response.rb @@ -99,6 +99,12 @@ module DataSourceConfig # @!method self.variants # @return [Array(OpenAI::EvalCustomDataSourceConfig, OpenAI::EvalStoredCompletionsDataSourceConfig)] + + define_sorbet_constant!(:Variants) do + T.type_alias do + T.any(OpenAI::EvalCustomDataSourceConfig, OpenAI::EvalStoredCompletionsDataSourceConfig) + end + end end # A LabelModelGrader object which uses a model to assign labels to each item in @@ -163,6 +169,18 @@ class EvalGraderScoreModel < OpenAI::Models::Graders::ScoreModelGrader # @!method self.variants # @return [Array(OpenAI::Graders::LabelModelGrader, OpenAI::Graders::StringCheckGrader, OpenAI::Models::EvalListResponse::TestingCriterion::EvalGraderTextSimilarity, OpenAI::Models::EvalListResponse::TestingCriterion::EvalGraderPython, OpenAI::Models::EvalListResponse::TestingCriterion::EvalGraderScoreModel)] + + define_sorbet_constant!(:Variants) do + T.type_alias do + T.any( + OpenAI::Graders::LabelModelGrader, + OpenAI::Graders::StringCheckGrader, + OpenAI::Models::EvalListResponse::TestingCriterion::EvalGraderTextSimilarity, + OpenAI::Models::EvalListResponse::TestingCriterion::EvalGraderPython, + OpenAI::Models::EvalListResponse::TestingCriterion::EvalGraderScoreModel + ) + end + end end end end diff --git a/lib/openai/models/eval_retrieve_response.rb b/lib/openai/models/eval_retrieve_response.rb index 8cfd179d..d8e2ca54 100644 --- a/lib/openai/models/eval_retrieve_response.rb +++ b/lib/openai/models/eval_retrieve_response.rb @@ -99,6 +99,12 @@ module DataSourceConfig # @!method self.variants # @return [Array(OpenAI::EvalCustomDataSourceConfig, OpenAI::EvalStoredCompletionsDataSourceConfig)] + + define_sorbet_constant!(:Variants) do + T.type_alias do + T.any(OpenAI::EvalCustomDataSourceConfig, OpenAI::EvalStoredCompletionsDataSourceConfig) + end + end end # A LabelModelGrader object which uses a model to assign labels to each item in @@ -163,6 +169,18 @@ class EvalGraderScoreModel < OpenAI::Models::Graders::ScoreModelGrader # @!method self.variants # @return [Array(OpenAI::Graders::LabelModelGrader, OpenAI::Graders::StringCheckGrader, OpenAI::Models::EvalRetrieveResponse::TestingCriterion::EvalGraderTextSimilarity, OpenAI::Models::EvalRetrieveResponse::TestingCriterion::EvalGraderPython, OpenAI::Models::EvalRetrieveResponse::TestingCriterion::EvalGraderScoreModel)] + + define_sorbet_constant!(:Variants) do + T.type_alias do + T.any( + OpenAI::Graders::LabelModelGrader, + OpenAI::Graders::StringCheckGrader, + OpenAI::Models::EvalRetrieveResponse::TestingCriterion::EvalGraderTextSimilarity, + OpenAI::Models::EvalRetrieveResponse::TestingCriterion::EvalGraderPython, + OpenAI::Models::EvalRetrieveResponse::TestingCriterion::EvalGraderScoreModel + ) + end + end end end end diff --git a/lib/openai/models/eval_update_response.rb b/lib/openai/models/eval_update_response.rb index 67e02168..61f3e677 100644 --- a/lib/openai/models/eval_update_response.rb +++ b/lib/openai/models/eval_update_response.rb @@ -99,6 +99,12 @@ module DataSourceConfig # @!method self.variants # @return [Array(OpenAI::EvalCustomDataSourceConfig, OpenAI::EvalStoredCompletionsDataSourceConfig)] + + define_sorbet_constant!(:Variants) do + T.type_alias do + T.any(OpenAI::EvalCustomDataSourceConfig, OpenAI::EvalStoredCompletionsDataSourceConfig) + end + end end # A LabelModelGrader object which uses a model to assign labels to each item in @@ -163,6 +169,18 @@ class EvalGraderScoreModel < OpenAI::Models::Graders::ScoreModelGrader # @!method self.variants # @return [Array(OpenAI::Graders::LabelModelGrader, OpenAI::Graders::StringCheckGrader, OpenAI::Models::EvalUpdateResponse::TestingCriterion::EvalGraderTextSimilarity, OpenAI::Models::EvalUpdateResponse::TestingCriterion::EvalGraderPython, OpenAI::Models::EvalUpdateResponse::TestingCriterion::EvalGraderScoreModel)] + + define_sorbet_constant!(:Variants) do + T.type_alias do + T.any( + OpenAI::Graders::LabelModelGrader, + OpenAI::Graders::StringCheckGrader, + OpenAI::Models::EvalUpdateResponse::TestingCriterion::EvalGraderTextSimilarity, + OpenAI::Models::EvalUpdateResponse::TestingCriterion::EvalGraderPython, + OpenAI::Models::EvalUpdateResponse::TestingCriterion::EvalGraderScoreModel + ) + end + end end end end diff --git a/lib/openai/models/evals/create_eval_completions_run_data_source.rb b/lib/openai/models/evals/create_eval_completions_run_data_source.rb index f31118d7..92535eb5 100644 --- a/lib/openai/models/evals/create_eval_completions_run_data_source.rb +++ b/lib/openai/models/evals/create_eval_completions_run_data_source.rb @@ -188,6 +188,16 @@ class StoredCompletions < OpenAI::Internal::Type::BaseModel # @!method self.variants # @return [Array(OpenAI::Evals::CreateEvalCompletionsRunDataSource::Source::FileContent, OpenAI::Evals::CreateEvalCompletionsRunDataSource::Source::FileID, OpenAI::Evals::CreateEvalCompletionsRunDataSource::Source::StoredCompletions)] + + define_sorbet_constant!(:Variants) do + T.type_alias do + T.any( + OpenAI::Evals::CreateEvalCompletionsRunDataSource::Source::FileContent, + OpenAI::Evals::CreateEvalCompletionsRunDataSource::Source::FileID, + OpenAI::Evals::CreateEvalCompletionsRunDataSource::Source::StoredCompletions + ) + end + end end # The type of run data source. Always `completions`. @@ -356,6 +366,16 @@ class OutputText < OpenAI::Internal::Type::BaseModel # @!method self.variants # @return [Array(String, OpenAI::Responses::ResponseInputText, OpenAI::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::Content::OutputText)] + + define_sorbet_constant!(:Variants) do + T.type_alias do + T.any( + String, + OpenAI::Responses::ResponseInputText, + OpenAI::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::Content::OutputText + ) + end + end end # The role of the message input. One of `user`, `assistant`, `system`, or @@ -389,6 +409,15 @@ module Type # @!method self.variants # @return [Array(OpenAI::Responses::EasyInputMessage, OpenAI::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message)] + + define_sorbet_constant!(:Variants) do + T.type_alias do + T.any( + OpenAI::Responses::EasyInputMessage, + OpenAI::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message + ) + end + end end end @@ -413,6 +442,15 @@ class ItemReference < OpenAI::Internal::Type::BaseModel # @!method self.variants # @return [Array(OpenAI::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template, OpenAI::Evals::CreateEvalCompletionsRunDataSource::InputMessages::ItemReference)] + + define_sorbet_constant!(:Variants) do + T.type_alias do + T.any( + OpenAI::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template, + OpenAI::Evals::CreateEvalCompletionsRunDataSource::InputMessages::ItemReference + ) + end + end end # @see OpenAI::Evals::CreateEvalCompletionsRunDataSource#sampling_params diff --git a/lib/openai/models/evals/create_eval_jsonl_run_data_source.rb b/lib/openai/models/evals/create_eval_jsonl_run_data_source.rb index 514f2494..faedad0e 100644 --- a/lib/openai/models/evals/create_eval_jsonl_run_data_source.rb +++ b/lib/openai/models/evals/create_eval_jsonl_run_data_source.rb @@ -92,6 +92,15 @@ class FileID < OpenAI::Internal::Type::BaseModel # @!method self.variants # @return [Array(OpenAI::Evals::CreateEvalJSONLRunDataSource::Source::FileContent, OpenAI::Evals::CreateEvalJSONLRunDataSource::Source::FileID)] + + define_sorbet_constant!(:Variants) do + T.type_alias do + T.any( + OpenAI::Evals::CreateEvalJSONLRunDataSource::Source::FileContent, + OpenAI::Evals::CreateEvalJSONLRunDataSource::Source::FileID + ) + end + end end end end diff --git a/lib/openai/models/evals/run_cancel_response.rb b/lib/openai/models/evals/run_cancel_response.rb index 1a5d2402..e9ac234b 100644 --- a/lib/openai/models/evals/run_cancel_response.rb +++ b/lib/openai/models/evals/run_cancel_response.rb @@ -382,6 +382,16 @@ class Responses < OpenAI::Internal::Type::BaseModel # @!method self.variants # @return [Array(OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::Source::FileContent, OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::Source::FileID, OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::Source::Responses)] + + define_sorbet_constant!(:Variants) do + T.type_alias do + T.any( + OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::Source::FileContent, + OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::Source::FileID, + OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::Source::Responses + ) + end + end end # @see OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions#input_messages @@ -542,6 +552,16 @@ class OutputText < OpenAI::Internal::Type::BaseModel # @!method self.variants # @return [Array(String, OpenAI::Responses::ResponseInputText, OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText)] + + define_sorbet_constant!(:Variants) do + T.type_alias do + T.any( + String, + OpenAI::Responses::ResponseInputText, + OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText + ) + end + end end # The role of the message input. One of `user`, `assistant`, `system`, or @@ -575,6 +595,15 @@ module Type # @!method self.variants # @return [Array(OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::ChatMessage, OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem)] + + define_sorbet_constant!(:Variants) do + T.type_alias do + T.any( + OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::ChatMessage, + OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem + ) + end + end end end @@ -599,6 +628,15 @@ class ItemReference < OpenAI::Internal::Type::BaseModel # @!method self.variants # @return [Array(OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template, OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::ItemReference)] + + define_sorbet_constant!(:Variants) do + T.type_alias do + T.any( + OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template, + OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::ItemReference + ) + end + end end # @see OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions#sampling_params @@ -640,6 +678,16 @@ class SamplingParams < OpenAI::Internal::Type::BaseModel # @!method self.variants # @return [Array(OpenAI::Evals::CreateEvalJSONLRunDataSource, OpenAI::Evals::CreateEvalCompletionsRunDataSource, OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions)] + + define_sorbet_constant!(:Variants) do + T.type_alias do + T.any( + OpenAI::Evals::CreateEvalJSONLRunDataSource, + OpenAI::Evals::CreateEvalCompletionsRunDataSource, + OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions + ) + end + end end class PerModelUsage < OpenAI::Internal::Type::BaseModel diff --git a/lib/openai/models/evals/run_create_params.rb b/lib/openai/models/evals/run_create_params.rb index 46e49a3d..849d33d9 100644 --- a/lib/openai/models/evals/run_create_params.rb +++ b/lib/openai/models/evals/run_create_params.rb @@ -310,6 +310,16 @@ class Responses < OpenAI::Internal::Type::BaseModel # @!method self.variants # @return [Array(OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::FileContent, OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::FileID, OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::Responses)] + + define_sorbet_constant!(:Variants) do + T.type_alias do + T.any( + OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::FileContent, + OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::FileID, + OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::Responses + ) + end + end end # The type of run data source. Always `completions`. @@ -498,6 +508,16 @@ class OutputText < OpenAI::Internal::Type::BaseModel # @!method self.variants # @return [Array(String, OpenAI::Responses::ResponseInputText, OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::Content::OutputText)] + + define_sorbet_constant!(:Variants) do + T.type_alias do + T.any( + String, + OpenAI::Responses::ResponseInputText, + OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::Content::OutputText + ) + end + end end # The role of the message input. One of `user`, `assistant`, `system`, or @@ -531,6 +551,15 @@ module Type # @!method self.variants # @return [Array(OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::ChatMessage, OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem)] + + define_sorbet_constant!(:Variants) do + T.type_alias do + T.any( + OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::ChatMessage, + OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem + ) + end + end end end @@ -555,6 +584,15 @@ class ItemReference < OpenAI::Internal::Type::BaseModel # @!method self.variants # @return [Array(OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template, OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::ItemReference)] + + define_sorbet_constant!(:Variants) do + T.type_alias do + T.any( + OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template, + OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::ItemReference + ) + end + end end # @see OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource#sampling_params @@ -596,6 +634,16 @@ class SamplingParams < OpenAI::Internal::Type::BaseModel # @!method self.variants # @return [Array(OpenAI::Evals::CreateEvalJSONLRunDataSource, OpenAI::Evals::CreateEvalCompletionsRunDataSource, OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource)] + + define_sorbet_constant!(:Variants) do + T.type_alias do + T.any( + OpenAI::Evals::CreateEvalJSONLRunDataSource, + OpenAI::Evals::CreateEvalCompletionsRunDataSource, + OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource + ) + end + end end end end diff --git a/lib/openai/models/evals/run_create_response.rb b/lib/openai/models/evals/run_create_response.rb index d8870c35..988f2fe9 100644 --- a/lib/openai/models/evals/run_create_response.rb +++ b/lib/openai/models/evals/run_create_response.rb @@ -382,6 +382,16 @@ class Responses < OpenAI::Internal::Type::BaseModel # @!method self.variants # @return [Array(OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::Source::FileContent, OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::Source::FileID, OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::Source::Responses)] + + define_sorbet_constant!(:Variants) do + T.type_alias do + T.any( + OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::Source::FileContent, + OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::Source::FileID, + OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::Source::Responses + ) + end + end end # @see OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions#input_messages @@ -542,6 +552,16 @@ class OutputText < OpenAI::Internal::Type::BaseModel # @!method self.variants # @return [Array(String, OpenAI::Responses::ResponseInputText, OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText)] + + define_sorbet_constant!(:Variants) do + T.type_alias do + T.any( + String, + OpenAI::Responses::ResponseInputText, + OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText + ) + end + end end # The role of the message input. One of `user`, `assistant`, `system`, or @@ -575,6 +595,15 @@ module Type # @!method self.variants # @return [Array(OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::ChatMessage, OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem)] + + define_sorbet_constant!(:Variants) do + T.type_alias do + T.any( + OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::ChatMessage, + OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem + ) + end + end end end @@ -599,6 +628,15 @@ class ItemReference < OpenAI::Internal::Type::BaseModel # @!method self.variants # @return [Array(OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template, OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::ItemReference)] + + define_sorbet_constant!(:Variants) do + T.type_alias do + T.any( + OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template, + OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::ItemReference + ) + end + end end # @see OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions#sampling_params @@ -640,6 +678,16 @@ class SamplingParams < OpenAI::Internal::Type::BaseModel # @!method self.variants # @return [Array(OpenAI::Evals::CreateEvalJSONLRunDataSource, OpenAI::Evals::CreateEvalCompletionsRunDataSource, OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions)] + + define_sorbet_constant!(:Variants) do + T.type_alias do + T.any( + OpenAI::Evals::CreateEvalJSONLRunDataSource, + OpenAI::Evals::CreateEvalCompletionsRunDataSource, + OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions + ) + end + end end class PerModelUsage < OpenAI::Internal::Type::BaseModel diff --git a/lib/openai/models/evals/run_list_response.rb b/lib/openai/models/evals/run_list_response.rb index 6f7a7637..6a038c54 100644 --- a/lib/openai/models/evals/run_list_response.rb +++ b/lib/openai/models/evals/run_list_response.rb @@ -382,6 +382,16 @@ class Responses < OpenAI::Internal::Type::BaseModel # @!method self.variants # @return [Array(OpenAI::Models::Evals::RunListResponse::DataSource::Completions::Source::FileContent, OpenAI::Models::Evals::RunListResponse::DataSource::Completions::Source::FileID, OpenAI::Models::Evals::RunListResponse::DataSource::Completions::Source::Responses)] + + define_sorbet_constant!(:Variants) do + T.type_alias do + T.any( + OpenAI::Models::Evals::RunListResponse::DataSource::Completions::Source::FileContent, + OpenAI::Models::Evals::RunListResponse::DataSource::Completions::Source::FileID, + OpenAI::Models::Evals::RunListResponse::DataSource::Completions::Source::Responses + ) + end + end end # @see OpenAI::Models::Evals::RunListResponse::DataSource::Completions#input_messages @@ -538,6 +548,16 @@ class OutputText < OpenAI::Internal::Type::BaseModel # @!method self.variants # @return [Array(String, OpenAI::Responses::ResponseInputText, OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText)] + + define_sorbet_constant!(:Variants) do + T.type_alias do + T.any( + String, + OpenAI::Responses::ResponseInputText, + OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText + ) + end + end end # The role of the message input. One of `user`, `assistant`, `system`, or @@ -571,6 +591,15 @@ module Type # @!method self.variants # @return [Array(OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::ChatMessage, OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem)] + + define_sorbet_constant!(:Variants) do + T.type_alias do + T.any( + OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::ChatMessage, + OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem + ) + end + end end end @@ -595,6 +624,15 @@ class ItemReference < OpenAI::Internal::Type::BaseModel # @!method self.variants # @return [Array(OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template, OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::ItemReference)] + + define_sorbet_constant!(:Variants) do + T.type_alias do + T.any( + OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template, + OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::ItemReference + ) + end + end end # @see OpenAI::Models::Evals::RunListResponse::DataSource::Completions#sampling_params @@ -636,6 +674,16 @@ class SamplingParams < OpenAI::Internal::Type::BaseModel # @!method self.variants # @return [Array(OpenAI::Evals::CreateEvalJSONLRunDataSource, OpenAI::Evals::CreateEvalCompletionsRunDataSource, OpenAI::Models::Evals::RunListResponse::DataSource::Completions)] + + define_sorbet_constant!(:Variants) do + T.type_alias do + T.any( + OpenAI::Evals::CreateEvalJSONLRunDataSource, + OpenAI::Evals::CreateEvalCompletionsRunDataSource, + OpenAI::Models::Evals::RunListResponse::DataSource::Completions + ) + end + end end class PerModelUsage < OpenAI::Internal::Type::BaseModel diff --git a/lib/openai/models/evals/run_retrieve_response.rb b/lib/openai/models/evals/run_retrieve_response.rb index 84c210e8..6286d0fd 100644 --- a/lib/openai/models/evals/run_retrieve_response.rb +++ b/lib/openai/models/evals/run_retrieve_response.rb @@ -384,6 +384,16 @@ class Responses < OpenAI::Internal::Type::BaseModel # @!method self.variants # @return [Array(OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::Source::FileContent, OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::Source::FileID, OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::Source::Responses)] + + define_sorbet_constant!(:Variants) do + T.type_alias do + T.any( + OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::Source::FileContent, + OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::Source::FileID, + OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::Source::Responses + ) + end + end end # @see OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions#input_messages @@ -544,6 +554,16 @@ class OutputText < OpenAI::Internal::Type::BaseModel # @!method self.variants # @return [Array(String, OpenAI::Responses::ResponseInputText, OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText)] + + define_sorbet_constant!(:Variants) do + T.type_alias do + T.any( + String, + OpenAI::Responses::ResponseInputText, + OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText + ) + end + end end # The role of the message input. One of `user`, `assistant`, `system`, or @@ -577,6 +597,15 @@ module Type # @!method self.variants # @return [Array(OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::ChatMessage, OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem)] + + define_sorbet_constant!(:Variants) do + T.type_alias do + T.any( + OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::ChatMessage, + OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem + ) + end + end end end @@ -601,6 +630,15 @@ class ItemReference < OpenAI::Internal::Type::BaseModel # @!method self.variants # @return [Array(OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template, OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::ItemReference)] + + define_sorbet_constant!(:Variants) do + T.type_alias do + T.any( + OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template, + OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::ItemReference + ) + end + end end # @see OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions#sampling_params @@ -642,6 +680,16 @@ class SamplingParams < OpenAI::Internal::Type::BaseModel # @!method self.variants # @return [Array(OpenAI::Evals::CreateEvalJSONLRunDataSource, OpenAI::Evals::CreateEvalCompletionsRunDataSource, OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions)] + + define_sorbet_constant!(:Variants) do + T.type_alias do + T.any( + OpenAI::Evals::CreateEvalJSONLRunDataSource, + OpenAI::Evals::CreateEvalCompletionsRunDataSource, + OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions + ) + end + end end class PerModelUsage < OpenAI::Internal::Type::BaseModel diff --git a/lib/openai/models/file_chunking_strategy.rb b/lib/openai/models/file_chunking_strategy.rb index 5ee317be..117b02fa 100644 --- a/lib/openai/models/file_chunking_strategy.rb +++ b/lib/openai/models/file_chunking_strategy.rb @@ -15,6 +15,12 @@ module FileChunkingStrategy # @!method self.variants # @return [Array(OpenAI::StaticFileChunkingStrategyObject, OpenAI::OtherFileChunkingStrategyObject)] + + define_sorbet_constant!(:Variants) do + T.type_alias do + T.any(OpenAI::StaticFileChunkingStrategyObject, OpenAI::OtherFileChunkingStrategyObject) + end + end end end end diff --git a/lib/openai/models/file_chunking_strategy_param.rb b/lib/openai/models/file_chunking_strategy_param.rb index 6a46bdfc..c70c3336 100644 --- a/lib/openai/models/file_chunking_strategy_param.rb +++ b/lib/openai/models/file_chunking_strategy_param.rb @@ -17,6 +17,12 @@ module FileChunkingStrategyParam # @!method self.variants # @return [Array(OpenAI::AutoFileChunkingStrategyParam, OpenAI::StaticFileChunkingStrategyObjectParam)] + + define_sorbet_constant!(:Variants) do + T.type_alias do + T.any(OpenAI::AutoFileChunkingStrategyParam, OpenAI::StaticFileChunkingStrategyObjectParam) + end + end end end end diff --git a/lib/openai/models/fine_tuning/alpha/grader_run_params.rb b/lib/openai/models/fine_tuning/alpha/grader_run_params.rb index 921ece7c..e425c638 100644 --- a/lib/openai/models/fine_tuning/alpha/grader_run_params.rb +++ b/lib/openai/models/fine_tuning/alpha/grader_run_params.rb @@ -62,6 +62,18 @@ module Grader # @!method self.variants # @return [Array(OpenAI::Graders::StringCheckGrader, OpenAI::Graders::TextSimilarityGrader, OpenAI::Graders::PythonGrader, OpenAI::Graders::ScoreModelGrader, OpenAI::Graders::MultiGrader)] + + define_sorbet_constant!(:Variants) do + T.type_alias do + T.any( + OpenAI::Graders::StringCheckGrader, + OpenAI::Graders::TextSimilarityGrader, + OpenAI::Graders::PythonGrader, + OpenAI::Graders::ScoreModelGrader, + OpenAI::Graders::MultiGrader + ) + end + end end # The reference answer for the evaluation. @@ -79,6 +91,10 @@ module ReferenceAnswer # @!method self.variants # @return [Array(String, Object, Array, Float)] + define_sorbet_constant!(:Variants) do + T.type_alias { T.any(String, T.anything, T::Array[T.anything], Float) } + end + # @type [OpenAI::Internal::Type::Converter] UnionMember2Array = OpenAI::Internal::Type::ArrayOf[OpenAI::Internal::Type::Unknown] end diff --git a/lib/openai/models/fine_tuning/alpha/grader_validate_params.rb b/lib/openai/models/fine_tuning/alpha/grader_validate_params.rb index a252fb6a..6ec580aa 100644 --- a/lib/openai/models/fine_tuning/alpha/grader_validate_params.rb +++ b/lib/openai/models/fine_tuning/alpha/grader_validate_params.rb @@ -41,6 +41,18 @@ module Grader # @!method self.variants # @return [Array(OpenAI::Graders::StringCheckGrader, OpenAI::Graders::TextSimilarityGrader, OpenAI::Graders::PythonGrader, OpenAI::Graders::ScoreModelGrader, OpenAI::Graders::MultiGrader)] + + define_sorbet_constant!(:Variants) do + T.type_alias do + T.any( + OpenAI::Graders::StringCheckGrader, + OpenAI::Graders::TextSimilarityGrader, + OpenAI::Graders::PythonGrader, + OpenAI::Graders::ScoreModelGrader, + OpenAI::Graders::MultiGrader + ) + end + end end end end diff --git a/lib/openai/models/fine_tuning/alpha/grader_validate_response.rb b/lib/openai/models/fine_tuning/alpha/grader_validate_response.rb index a89553ee..f0c28dcc 100644 --- a/lib/openai/models/fine_tuning/alpha/grader_validate_response.rb +++ b/lib/openai/models/fine_tuning/alpha/grader_validate_response.rb @@ -38,6 +38,18 @@ module Grader # @!method self.variants # @return [Array(OpenAI::Graders::StringCheckGrader, OpenAI::Graders::TextSimilarityGrader, OpenAI::Graders::PythonGrader, OpenAI::Graders::ScoreModelGrader, OpenAI::Graders::MultiGrader)] + + define_sorbet_constant!(:Variants) do + T.type_alias do + T.any( + OpenAI::Graders::StringCheckGrader, + OpenAI::Graders::TextSimilarityGrader, + OpenAI::Graders::PythonGrader, + OpenAI::Graders::ScoreModelGrader, + OpenAI::Graders::MultiGrader + ) + end + end end end end diff --git a/lib/openai/models/fine_tuning/dpo_hyperparameters.rb b/lib/openai/models/fine_tuning/dpo_hyperparameters.rb index b57d2245..54b87256 100644 --- a/lib/openai/models/fine_tuning/dpo_hyperparameters.rb +++ b/lib/openai/models/fine_tuning/dpo_hyperparameters.rb @@ -60,6 +60,10 @@ module BatchSize # @!method self.variants # @return [Array(Symbol, :auto, Integer)] + + define_sorbet_constant!(:Variants) do + T.type_alias { T.any(Symbol, Integer) } + end end # The beta value for the DPO method. A higher beta value will increase the weight @@ -75,6 +79,10 @@ module Beta # @!method self.variants # @return [Array(Symbol, :auto, Float)] + + define_sorbet_constant!(:Variants) do + T.type_alias { T.any(Symbol, Float) } + end end # Scaling factor for the learning rate. A smaller learning rate may be useful to @@ -90,6 +98,10 @@ module LearningRateMultiplier # @!method self.variants # @return [Array(Symbol, :auto, Float)] + + define_sorbet_constant!(:Variants) do + T.type_alias { T.any(Symbol, Float) } + end end # The number of epochs to train the model for. An epoch refers to one full cycle @@ -105,6 +117,10 @@ module NEpochs # @!method self.variants # @return [Array(Symbol, :auto, Integer)] + + define_sorbet_constant!(:Variants) do + T.type_alias { T.any(Symbol, Integer) } + end end end end diff --git a/lib/openai/models/fine_tuning/fine_tuning_job.rb b/lib/openai/models/fine_tuning/fine_tuning_job.rb index aaf073d0..80821e35 100644 --- a/lib/openai/models/fine_tuning/fine_tuning_job.rb +++ b/lib/openai/models/fine_tuning/fine_tuning_job.rb @@ -270,6 +270,10 @@ module BatchSize # @!method self.variants # @return [Array(Symbol, :auto, Integer)] + + define_sorbet_constant!(:Variants) do + T.type_alias { T.any(Symbol, Integer) } + end end # Scaling factor for the learning rate. A smaller learning rate may be useful to @@ -285,6 +289,10 @@ module LearningRateMultiplier # @!method self.variants # @return [Array(Symbol, :auto, Float)] + + define_sorbet_constant!(:Variants) do + T.type_alias { T.any(Symbol, Float) } + end end # The number of epochs to train the model for. An epoch refers to one full cycle @@ -300,6 +308,10 @@ module NEpochs # @!method self.variants # @return [Array(Symbol, :auto, Integer)] + + define_sorbet_constant!(:Variants) do + T.type_alias { T.any(Symbol, Integer) } + end end end diff --git a/lib/openai/models/fine_tuning/job_create_params.rb b/lib/openai/models/fine_tuning/job_create_params.rb index de31c8f6..9b1d6016 100644 --- a/lib/openai/models/fine_tuning/job_create_params.rb +++ b/lib/openai/models/fine_tuning/job_create_params.rb @@ -148,6 +148,10 @@ module Model # @!method self.variants # @return [Array(String, Symbol)] + define_sorbet_constant!(:Variants) do + T.type_alias { T.any(String, OpenAI::FineTuning::JobCreateParams::Model::TaggedSymbol) } + end + # @!group BABBAGE_002 = :"babbage-002" @@ -208,6 +212,10 @@ module BatchSize # @!method self.variants # @return [Array(Symbol, :auto, Integer)] + + define_sorbet_constant!(:Variants) do + T.type_alias { T.any(Symbol, Integer) } + end end # Scaling factor for the learning rate. A smaller learning rate may be useful to @@ -223,6 +231,10 @@ module LearningRateMultiplier # @!method self.variants # @return [Array(Symbol, :auto, Float)] + + define_sorbet_constant!(:Variants) do + T.type_alias { T.any(Symbol, Float) } + end end # The number of epochs to train the model for. An epoch refers to one full cycle @@ -238,6 +250,10 @@ module NEpochs # @!method self.variants # @return [Array(Symbol, :auto, Integer)] + + define_sorbet_constant!(:Variants) do + T.type_alias { T.any(Symbol, Integer) } + end end end diff --git a/lib/openai/models/fine_tuning/reinforcement_hyperparameters.rb b/lib/openai/models/fine_tuning/reinforcement_hyperparameters.rb index 7df826e1..ee22496e 100644 --- a/lib/openai/models/fine_tuning/reinforcement_hyperparameters.rb +++ b/lib/openai/models/fine_tuning/reinforcement_hyperparameters.rb @@ -87,6 +87,10 @@ module BatchSize # @!method self.variants # @return [Array(Symbol, :auto, Integer)] + + define_sorbet_constant!(:Variants) do + T.type_alias { T.any(Symbol, Integer) } + end end # Multiplier on amount of compute used for exploring search space during training. @@ -101,6 +105,10 @@ module ComputeMultiplier # @!method self.variants # @return [Array(Symbol, :auto, Float)] + + define_sorbet_constant!(:Variants) do + T.type_alias { T.any(Symbol, Float) } + end end # The number of training steps between evaluation runs. @@ -115,6 +123,10 @@ module EvalInterval # @!method self.variants # @return [Array(Symbol, :auto, Integer)] + + define_sorbet_constant!(:Variants) do + T.type_alias { T.any(Symbol, Integer) } + end end # Number of evaluation samples to generate per training step. @@ -129,6 +141,10 @@ module EvalSamples # @!method self.variants # @return [Array(Symbol, :auto, Integer)] + + define_sorbet_constant!(:Variants) do + T.type_alias { T.any(Symbol, Integer) } + end end # Scaling factor for the learning rate. A smaller learning rate may be useful to @@ -144,6 +160,10 @@ module LearningRateMultiplier # @!method self.variants # @return [Array(Symbol, :auto, Float)] + + define_sorbet_constant!(:Variants) do + T.type_alias { T.any(Symbol, Float) } + end end # The number of epochs to train the model for. An epoch refers to one full cycle @@ -159,6 +179,10 @@ module NEpochs # @!method self.variants # @return [Array(Symbol, :auto, Integer)] + + define_sorbet_constant!(:Variants) do + T.type_alias { T.any(Symbol, Integer) } + end end # Level of reasoning effort. diff --git a/lib/openai/models/fine_tuning/reinforcement_method.rb b/lib/openai/models/fine_tuning/reinforcement_method.rb index d2955f1e..cfe966c9 100644 --- a/lib/openai/models/fine_tuning/reinforcement_method.rb +++ b/lib/openai/models/fine_tuning/reinforcement_method.rb @@ -46,6 +46,18 @@ module Grader # @!method self.variants # @return [Array(OpenAI::Graders::StringCheckGrader, OpenAI::Graders::TextSimilarityGrader, OpenAI::Graders::PythonGrader, OpenAI::Graders::ScoreModelGrader, OpenAI::Graders::MultiGrader)] + + define_sorbet_constant!(:Variants) do + T.type_alias do + T.any( + OpenAI::Graders::StringCheckGrader, + OpenAI::Graders::TextSimilarityGrader, + OpenAI::Graders::PythonGrader, + OpenAI::Graders::ScoreModelGrader, + OpenAI::Graders::MultiGrader + ) + end + end end end end diff --git a/lib/openai/models/fine_tuning/supervised_hyperparameters.rb b/lib/openai/models/fine_tuning/supervised_hyperparameters.rb index 612870f0..2a907416 100644 --- a/lib/openai/models/fine_tuning/supervised_hyperparameters.rb +++ b/lib/openai/models/fine_tuning/supervised_hyperparameters.rb @@ -51,6 +51,10 @@ module BatchSize # @!method self.variants # @return [Array(Symbol, :auto, Integer)] + + define_sorbet_constant!(:Variants) do + T.type_alias { T.any(Symbol, Integer) } + end end # Scaling factor for the learning rate. A smaller learning rate may be useful to @@ -66,6 +70,10 @@ module LearningRateMultiplier # @!method self.variants # @return [Array(Symbol, :auto, Float)] + + define_sorbet_constant!(:Variants) do + T.type_alias { T.any(Symbol, Float) } + end end # The number of epochs to train the model for. An epoch refers to one full cycle @@ -81,6 +89,10 @@ module NEpochs # @!method self.variants # @return [Array(Symbol, :auto, Integer)] + + define_sorbet_constant!(:Variants) do + T.type_alias { T.any(Symbol, Integer) } + end end end end diff --git a/lib/openai/models/graders/label_model_grader.rb b/lib/openai/models/graders/label_model_grader.rb index 99e0e087..801b3432 100644 --- a/lib/openai/models/graders/label_model_grader.rb +++ b/lib/openai/models/graders/label_model_grader.rb @@ -133,6 +133,16 @@ class OutputText < OpenAI::Internal::Type::BaseModel # @!method self.variants # @return [Array(String, OpenAI::Responses::ResponseInputText, OpenAI::Graders::LabelModelGrader::Input::Content::OutputText)] + + define_sorbet_constant!(:Variants) do + T.type_alias do + T.any( + String, + OpenAI::Responses::ResponseInputText, + OpenAI::Graders::LabelModelGrader::Input::Content::OutputText + ) + end + end end # The role of the message input. One of `user`, `assistant`, `system`, or diff --git a/lib/openai/models/graders/multi_grader.rb b/lib/openai/models/graders/multi_grader.rb index 3cb7bf6b..520ef0e2 100644 --- a/lib/openai/models/graders/multi_grader.rb +++ b/lib/openai/models/graders/multi_grader.rb @@ -62,6 +62,18 @@ module Grader # @!method self.variants # @return [Array(OpenAI::Graders::StringCheckGrader, OpenAI::Graders::TextSimilarityGrader, OpenAI::Graders::PythonGrader, OpenAI::Graders::ScoreModelGrader, OpenAI::Graders::LabelModelGrader)] + + define_sorbet_constant!(:Variants) do + T.type_alias do + T.any( + OpenAI::Graders::StringCheckGrader, + OpenAI::Graders::TextSimilarityGrader, + OpenAI::Graders::PythonGrader, + OpenAI::Graders::ScoreModelGrader, + OpenAI::Graders::LabelModelGrader + ) + end + end end end end diff --git a/lib/openai/models/graders/score_model_grader.rb b/lib/openai/models/graders/score_model_grader.rb index 62cf1a6c..7742ec75 100644 --- a/lib/openai/models/graders/score_model_grader.rb +++ b/lib/openai/models/graders/score_model_grader.rb @@ -133,6 +133,16 @@ class OutputText < OpenAI::Internal::Type::BaseModel # @!method self.variants # @return [Array(String, OpenAI::Responses::ResponseInputText, OpenAI::Graders::ScoreModelGrader::Input::Content::OutputText)] + + define_sorbet_constant!(:Variants) do + T.type_alias do + T.any( + String, + OpenAI::Responses::ResponseInputText, + OpenAI::Graders::ScoreModelGrader::Input::Content::OutputText + ) + end + end end # The role of the message input. One of `user`, `assistant`, `system`, or diff --git a/lib/openai/models/image_create_variation_params.rb b/lib/openai/models/image_create_variation_params.rb index 66ad7ea0..f83ea80a 100644 --- a/lib/openai/models/image_create_variation_params.rb +++ b/lib/openai/models/image_create_variation_params.rb @@ -80,6 +80,10 @@ module Model # @!method self.variants # @return [Array(String, Symbol, OpenAI::ImageModel)] + + define_sorbet_constant!(:Variants) do + T.type_alias { T.any(String, OpenAI::ImageModel::TaggedSymbol) } + end end # The format in which the generated images are returned. Must be one of `url` or diff --git a/lib/openai/models/image_edit_params.rb b/lib/openai/models/image_edit_params.rb index c38c7821..aec90bd0 100644 --- a/lib/openai/models/image_edit_params.rb +++ b/lib/openai/models/image_edit_params.rb @@ -137,6 +137,10 @@ module Image # @!method self.variants # @return [Array(StringIO, Array)] + define_sorbet_constant!(:Variants) do + T.type_alias { T.any(StringIO, T::Array[StringIO]) } + end + # @type [OpenAI::Internal::Type::Converter] StringArray = OpenAI::Internal::Type::ArrayOf[OpenAI::Internal::Type::FileInput] end @@ -172,6 +176,10 @@ module Model # @!method self.variants # @return [Array(String, Symbol, OpenAI::ImageModel)] + + define_sorbet_constant!(:Variants) do + T.type_alias { T.any(String, OpenAI::ImageModel::TaggedSymbol) } + end end # The quality of the image that will be generated. `high`, `medium` and `low` are diff --git a/lib/openai/models/image_generate_params.rb b/lib/openai/models/image_generate_params.rb index c46f1558..a3aca3cb 100644 --- a/lib/openai/models/image_generate_params.rb +++ b/lib/openai/models/image_generate_params.rb @@ -172,6 +172,10 @@ module Model # @!method self.variants # @return [Array(String, Symbol, OpenAI::ImageModel)] + + define_sorbet_constant!(:Variants) do + T.type_alias { T.any(String, OpenAI::ImageModel::TaggedSymbol) } + end end # Control the content-moderation level for images generated by `gpt-image-1`. Must diff --git a/lib/openai/models/moderation_create_params.rb b/lib/openai/models/moderation_create_params.rb index 59e0cdd9..72f3a355 100644 --- a/lib/openai/models/moderation_create_params.rb +++ b/lib/openai/models/moderation_create_params.rb @@ -50,6 +50,16 @@ module Input # @!method self.variants # @return [Array(String, Array, Array)] + define_sorbet_constant!(:Variants) do + T.type_alias do + T.any( + String, + T::Array[String], + T::Array[T.any(OpenAI::ModerationImageURLInput, OpenAI::ModerationTextInput)] + ) + end + end + # @type [OpenAI::Internal::Type::Converter] StringArray = OpenAI::Internal::Type::ArrayOf[String] @@ -74,6 +84,10 @@ module Model # @!method self.variants # @return [Array(String, Symbol, OpenAI::ModerationModel)] + + define_sorbet_constant!(:Variants) do + T.type_alias { T.any(String, OpenAI::ModerationModel::TaggedSymbol) } + end end end end diff --git a/lib/openai/models/moderation_multi_modal_input.rb b/lib/openai/models/moderation_multi_modal_input.rb index 5142ae94..ef09466b 100644 --- a/lib/openai/models/moderation_multi_modal_input.rb +++ b/lib/openai/models/moderation_multi_modal_input.rb @@ -16,6 +16,10 @@ module ModerationMultiModalInput # @!method self.variants # @return [Array(OpenAI::ModerationImageURLInput, OpenAI::ModerationTextInput)] + + define_sorbet_constant!(:Variants) do + T.type_alias { T.any(OpenAI::ModerationImageURLInput, OpenAI::ModerationTextInput) } + end end end end diff --git a/lib/openai/models/responses/easy_input_message.rb b/lib/openai/models/responses/easy_input_message.rb index 3cdb0887..ecf0c374 100644 --- a/lib/openai/models/responses/easy_input_message.rb +++ b/lib/openai/models/responses/easy_input_message.rb @@ -56,6 +56,21 @@ module Content # @!method self.variants # @return [Array(String, Array)] + + define_sorbet_constant!(:Variants) do + T.type_alias do + T.any( + String, + T::Array[ + T.any( + OpenAI::Responses::ResponseInputText, + OpenAI::Responses::ResponseInputImage, + OpenAI::Responses::ResponseInputFile + ) + ] + ) + end + end end # The role of the message input. One of `user`, `assistant`, `system`, or diff --git a/lib/openai/models/responses/file_search_tool.rb b/lib/openai/models/responses/file_search_tool.rb index 515ef7a2..938f84c6 100644 --- a/lib/openai/models/responses/file_search_tool.rb +++ b/lib/openai/models/responses/file_search_tool.rb @@ -67,6 +67,10 @@ module Filters # @!method self.variants # @return [Array(OpenAI::ComparisonFilter, OpenAI::CompoundFilter)] + + define_sorbet_constant!(:Variants) do + T.type_alias { T.any(OpenAI::ComparisonFilter, OpenAI::CompoundFilter) } + end end # @see OpenAI::Responses::FileSearchTool#ranking_options diff --git a/lib/openai/models/responses/response.rb b/lib/openai/models/responses/response.rb index 4813a1af..d8358f27 100644 --- a/lib/openai/models/responses/response.rb +++ b/lib/openai/models/responses/response.rb @@ -328,6 +328,16 @@ module ToolChoice # @!method self.variants # @return [Array(Symbol, OpenAI::Responses::ToolChoiceOptions, OpenAI::Responses::ToolChoiceTypes, OpenAI::Responses::ToolChoiceFunction)] + + define_sorbet_constant!(:Variants) do + T.type_alias do + T.any( + OpenAI::Responses::ToolChoiceOptions::TaggedSymbol, + OpenAI::Responses::ToolChoiceTypes, + OpenAI::Responses::ToolChoiceFunction + ) + end + end end # Specifies the latency tier to use for processing the request. This parameter is diff --git a/lib/openai/models/responses/response_code_interpreter_tool_call.rb b/lib/openai/models/responses/response_code_interpreter_tool_call.rb index 16bac78f..81114445 100644 --- a/lib/openai/models/responses/response_code_interpreter_tool_call.rb +++ b/lib/openai/models/responses/response_code_interpreter_tool_call.rb @@ -142,6 +142,15 @@ class File < OpenAI::Internal::Type::BaseModel # @!method self.variants # @return [Array(OpenAI::Responses::ResponseCodeInterpreterToolCall::Result::Logs, OpenAI::Responses::ResponseCodeInterpreterToolCall::Result::Files)] + + define_sorbet_constant!(:Variants) do + T.type_alias do + T.any( + OpenAI::Responses::ResponseCodeInterpreterToolCall::Result::Logs, + OpenAI::Responses::ResponseCodeInterpreterToolCall::Result::Files + ) + end + end end # The status of the code interpreter tool call. diff --git a/lib/openai/models/responses/response_computer_tool_call.rb b/lib/openai/models/responses/response_computer_tool_call.rb index b18746b0..9a70b230 100644 --- a/lib/openai/models/responses/response_computer_tool_call.rb +++ b/lib/openai/models/responses/response_computer_tool_call.rb @@ -424,6 +424,22 @@ class Wait < OpenAI::Internal::Type::BaseModel # @!method self.variants # @return [Array(OpenAI::Responses::ResponseComputerToolCall::Action::Click, OpenAI::Responses::ResponseComputerToolCall::Action::DoubleClick, OpenAI::Responses::ResponseComputerToolCall::Action::Drag, OpenAI::Responses::ResponseComputerToolCall::Action::Keypress, OpenAI::Responses::ResponseComputerToolCall::Action::Move, OpenAI::Responses::ResponseComputerToolCall::Action::Screenshot, OpenAI::Responses::ResponseComputerToolCall::Action::Scroll, OpenAI::Responses::ResponseComputerToolCall::Action::Type, OpenAI::Responses::ResponseComputerToolCall::Action::Wait)] + + define_sorbet_constant!(:Variants) do + T.type_alias do + T.any( + OpenAI::Responses::ResponseComputerToolCall::Action::Click, + OpenAI::Responses::ResponseComputerToolCall::Action::DoubleClick, + OpenAI::Responses::ResponseComputerToolCall::Action::Drag, + OpenAI::Responses::ResponseComputerToolCall::Action::Keypress, + OpenAI::Responses::ResponseComputerToolCall::Action::Move, + OpenAI::Responses::ResponseComputerToolCall::Action::Screenshot, + OpenAI::Responses::ResponseComputerToolCall::Action::Scroll, + OpenAI::Responses::ResponseComputerToolCall::Action::Type, + OpenAI::Responses::ResponseComputerToolCall::Action::Wait + ) + end + end end class PendingSafetyCheck < OpenAI::Internal::Type::BaseModel diff --git a/lib/openai/models/responses/response_content.rb b/lib/openai/models/responses/response_content.rb index 95e1afdd..7b4e0c77 100644 --- a/lib/openai/models/responses/response_content.rb +++ b/lib/openai/models/responses/response_content.rb @@ -24,6 +24,18 @@ module ResponseContent # @!method self.variants # @return [Array(OpenAI::Responses::ResponseInputText, OpenAI::Responses::ResponseInputImage, OpenAI::Responses::ResponseInputFile, OpenAI::Responses::ResponseOutputText, OpenAI::Responses::ResponseOutputRefusal)] + + define_sorbet_constant!(:Variants) do + T.type_alias do + T.any( + OpenAI::Responses::ResponseInputText, + OpenAI::Responses::ResponseInputImage, + OpenAI::Responses::ResponseInputFile, + OpenAI::Responses::ResponseOutputText, + OpenAI::Responses::ResponseOutputRefusal + ) + end + end end end end diff --git a/lib/openai/models/responses/response_content_part_added_event.rb b/lib/openai/models/responses/response_content_part_added_event.rb index 1bb0cddf..6b16ea84 100644 --- a/lib/openai/models/responses/response_content_part_added_event.rb +++ b/lib/openai/models/responses/response_content_part_added_event.rb @@ -66,6 +66,12 @@ module Part # @!method self.variants # @return [Array(OpenAI::Responses::ResponseOutputText, OpenAI::Responses::ResponseOutputRefusal)] + + define_sorbet_constant!(:Variants) do + T.type_alias do + T.any(OpenAI::Responses::ResponseOutputText, OpenAI::Responses::ResponseOutputRefusal) + end + end end end end diff --git a/lib/openai/models/responses/response_content_part_done_event.rb b/lib/openai/models/responses/response_content_part_done_event.rb index 56b1e274..e2af41dd 100644 --- a/lib/openai/models/responses/response_content_part_done_event.rb +++ b/lib/openai/models/responses/response_content_part_done_event.rb @@ -66,6 +66,12 @@ module Part # @!method self.variants # @return [Array(OpenAI::Responses::ResponseOutputText, OpenAI::Responses::ResponseOutputRefusal)] + + define_sorbet_constant!(:Variants) do + T.type_alias do + T.any(OpenAI::Responses::ResponseOutputText, OpenAI::Responses::ResponseOutputRefusal) + end + end end end end diff --git a/lib/openai/models/responses/response_create_params.rb b/lib/openai/models/responses/response_create_params.rb index 4a38c09e..affb7fa5 100644 --- a/lib/openai/models/responses/response_create_params.rb +++ b/lib/openai/models/responses/response_create_params.rb @@ -275,6 +275,29 @@ module Input # @!method self.variants # @return [Array(String, Array)] + + define_sorbet_constant!(:Variants) do + T.type_alias do + T.any( + String, + T::Array[ + T.any( + OpenAI::Responses::EasyInputMessage, + OpenAI::Responses::ResponseInputItem::Message, + OpenAI::Responses::ResponseOutputMessage, + OpenAI::Responses::ResponseFileSearchToolCall, + OpenAI::Responses::ResponseComputerToolCall, + OpenAI::Responses::ResponseInputItem::ComputerCallOutput, + OpenAI::Responses::ResponseFunctionWebSearch, + OpenAI::Responses::ResponseFunctionToolCall, + OpenAI::Responses::ResponseInputItem::FunctionCallOutput, + OpenAI::Responses::ResponseReasoningItem, + OpenAI::Responses::ResponseInputItem::ItemReference + ) + ] + ) + end + end end # Specifies the latency tier to use for processing the request. This parameter is @@ -330,6 +353,16 @@ module ToolChoice # @!method self.variants # @return [Array(Symbol, OpenAI::Responses::ToolChoiceOptions, OpenAI::Responses::ToolChoiceTypes, OpenAI::Responses::ToolChoiceFunction)] + + define_sorbet_constant!(:Variants) do + T.type_alias do + T.any( + OpenAI::Responses::ToolChoiceOptions::TaggedSymbol, + OpenAI::Responses::ToolChoiceTypes, + OpenAI::Responses::ToolChoiceFunction + ) + end + end end # The truncation strategy to use for the model response. diff --git a/lib/openai/models/responses/response_file_search_tool_call.rb b/lib/openai/models/responses/response_file_search_tool_call.rb index cc1b88ec..f8f7fc1b 100644 --- a/lib/openai/models/responses/response_file_search_tool_call.rb +++ b/lib/openai/models/responses/response_file_search_tool_call.rb @@ -138,6 +138,10 @@ module Attribute # @!method self.variants # @return [Array(String, Float, Boolean)] + + define_sorbet_constant!(:Variants) do + T.type_alias { T.any(String, Float, T::Boolean) } + end end end end diff --git a/lib/openai/models/responses/response_format_text_config.rb b/lib/openai/models/responses/response_format_text_config.rb index 81d0ad54..d81ab862 100644 --- a/lib/openai/models/responses/response_format_text_config.rb +++ b/lib/openai/models/responses/response_format_text_config.rb @@ -36,6 +36,16 @@ module ResponseFormatTextConfig # @!method self.variants # @return [Array(OpenAI::ResponseFormatText, OpenAI::Responses::ResponseFormatTextJSONSchemaConfig, OpenAI::ResponseFormatJSONObject)] + + define_sorbet_constant!(:Variants) do + T.type_alias do + T.any( + OpenAI::ResponseFormatText, + OpenAI::Responses::ResponseFormatTextJSONSchemaConfig, + OpenAI::ResponseFormatJSONObject + ) + end + end end end end diff --git a/lib/openai/models/responses/response_input_content.rb b/lib/openai/models/responses/response_input_content.rb index 7e349985..d518271c 100644 --- a/lib/openai/models/responses/response_input_content.rb +++ b/lib/openai/models/responses/response_input_content.rb @@ -20,6 +20,16 @@ module ResponseInputContent # @!method self.variants # @return [Array(OpenAI::Responses::ResponseInputText, OpenAI::Responses::ResponseInputImage, OpenAI::Responses::ResponseInputFile)] + + define_sorbet_constant!(:Variants) do + T.type_alias do + T.any( + OpenAI::Responses::ResponseInputText, + OpenAI::Responses::ResponseInputImage, + OpenAI::Responses::ResponseInputFile + ) + end + end end end end diff --git a/lib/openai/models/responses/response_input_item.rb b/lib/openai/models/responses/response_input_item.rb index 8ce7e375..62cf20ee 100644 --- a/lib/openai/models/responses/response_input_item.rb +++ b/lib/openai/models/responses/response_input_item.rb @@ -357,6 +357,24 @@ module Type # @!method self.variants # @return [Array(OpenAI::Responses::EasyInputMessage, OpenAI::Responses::ResponseInputItem::Message, OpenAI::Responses::ResponseOutputMessage, OpenAI::Responses::ResponseFileSearchToolCall, OpenAI::Responses::ResponseComputerToolCall, OpenAI::Responses::ResponseInputItem::ComputerCallOutput, OpenAI::Responses::ResponseFunctionWebSearch, OpenAI::Responses::ResponseFunctionToolCall, OpenAI::Responses::ResponseInputItem::FunctionCallOutput, OpenAI::Responses::ResponseReasoningItem, OpenAI::Responses::ResponseInputItem::ItemReference)] + + define_sorbet_constant!(:Variants) do + T.type_alias do + T.any( + OpenAI::Responses::EasyInputMessage, + OpenAI::Responses::ResponseInputItem::Message, + OpenAI::Responses::ResponseOutputMessage, + OpenAI::Responses::ResponseFileSearchToolCall, + OpenAI::Responses::ResponseComputerToolCall, + OpenAI::Responses::ResponseInputItem::ComputerCallOutput, + OpenAI::Responses::ResponseFunctionWebSearch, + OpenAI::Responses::ResponseFunctionToolCall, + OpenAI::Responses::ResponseInputItem::FunctionCallOutput, + OpenAI::Responses::ResponseReasoningItem, + OpenAI::Responses::ResponseInputItem::ItemReference + ) + end + end end end end diff --git a/lib/openai/models/responses/response_item.rb b/lib/openai/models/responses/response_item.rb index e0bd4301..fe6001ab 100644 --- a/lib/openai/models/responses/response_item.rb +++ b/lib/openai/models/responses/response_item.rb @@ -36,6 +36,21 @@ module ResponseItem # @!method self.variants # @return [Array(OpenAI::Responses::ResponseInputMessageItem, OpenAI::Responses::ResponseOutputMessage, OpenAI::Responses::ResponseFileSearchToolCall, OpenAI::Responses::ResponseComputerToolCall, OpenAI::Responses::ResponseComputerToolCallOutputItem, OpenAI::Responses::ResponseFunctionWebSearch, OpenAI::Responses::ResponseFunctionToolCallItem, OpenAI::Responses::ResponseFunctionToolCallOutputItem)] + + define_sorbet_constant!(:Variants) do + T.type_alias do + T.any( + OpenAI::Responses::ResponseInputMessageItem, + OpenAI::Responses::ResponseOutputMessage, + OpenAI::Responses::ResponseFileSearchToolCall, + OpenAI::Responses::ResponseComputerToolCall, + OpenAI::Responses::ResponseComputerToolCallOutputItem, + OpenAI::Responses::ResponseFunctionWebSearch, + OpenAI::Responses::ResponseFunctionToolCallItem, + OpenAI::Responses::ResponseFunctionToolCallOutputItem + ) + end + end end end end diff --git a/lib/openai/models/responses/response_output_item.rb b/lib/openai/models/responses/response_output_item.rb index 8e653d3a..502acd49 100644 --- a/lib/openai/models/responses/response_output_item.rb +++ b/lib/openai/models/responses/response_output_item.rb @@ -36,6 +36,19 @@ module ResponseOutputItem # @!method self.variants # @return [Array(OpenAI::Responses::ResponseOutputMessage, OpenAI::Responses::ResponseFileSearchToolCall, OpenAI::Responses::ResponseFunctionToolCall, OpenAI::Responses::ResponseFunctionWebSearch, OpenAI::Responses::ResponseComputerToolCall, OpenAI::Responses::ResponseReasoningItem)] + + define_sorbet_constant!(:Variants) do + T.type_alias do + T.any( + OpenAI::Responses::ResponseOutputMessage, + OpenAI::Responses::ResponseFileSearchToolCall, + OpenAI::Responses::ResponseFunctionToolCall, + OpenAI::Responses::ResponseFunctionWebSearch, + OpenAI::Responses::ResponseComputerToolCall, + OpenAI::Responses::ResponseReasoningItem + ) + end + end end end end diff --git a/lib/openai/models/responses/response_output_message.rb b/lib/openai/models/responses/response_output_message.rb index 2e7eee71..d0d7f291 100644 --- a/lib/openai/models/responses/response_output_message.rb +++ b/lib/openai/models/responses/response_output_message.rb @@ -68,6 +68,12 @@ module Content # @!method self.variants # @return [Array(OpenAI::Responses::ResponseOutputText, OpenAI::Responses::ResponseOutputRefusal)] + + define_sorbet_constant!(:Variants) do + T.type_alias do + T.any(OpenAI::Responses::ResponseOutputText, OpenAI::Responses::ResponseOutputRefusal) + end + end end # The status of the message input. One of `in_progress`, `completed`, or diff --git a/lib/openai/models/responses/response_output_text.rb b/lib/openai/models/responses/response_output_text.rb index 6234918b..fc08cb56 100644 --- a/lib/openai/models/responses/response_output_text.rb +++ b/lib/openai/models/responses/response_output_text.rb @@ -157,6 +157,16 @@ class FilePath < OpenAI::Internal::Type::BaseModel # @!method self.variants # @return [Array(OpenAI::Responses::ResponseOutputText::Annotation::FileCitation, OpenAI::Responses::ResponseOutputText::Annotation::URLCitation, OpenAI::Responses::ResponseOutputText::Annotation::FilePath)] + + define_sorbet_constant!(:Variants) do + T.type_alias do + T.any( + OpenAI::Responses::ResponseOutputText::Annotation::FileCitation, + OpenAI::Responses::ResponseOutputText::Annotation::URLCitation, + OpenAI::Responses::ResponseOutputText::Annotation::FilePath + ) + end + end end end end diff --git a/lib/openai/models/responses/response_stream_event.rb b/lib/openai/models/responses/response_stream_event.rb index 48456245..4f6c6c4a 100644 --- a/lib/openai/models/responses/response_stream_event.rb +++ b/lib/openai/models/responses/response_stream_event.rb @@ -140,6 +140,49 @@ module ResponseStreamEvent # @!method self.variants # @return [Array(OpenAI::Responses::ResponseAudioDeltaEvent, OpenAI::Responses::ResponseAudioDoneEvent, OpenAI::Responses::ResponseAudioTranscriptDeltaEvent, OpenAI::Responses::ResponseAudioTranscriptDoneEvent, OpenAI::Responses::ResponseCodeInterpreterCallCodeDeltaEvent, OpenAI::Responses::ResponseCodeInterpreterCallCodeDoneEvent, OpenAI::Responses::ResponseCodeInterpreterCallCompletedEvent, OpenAI::Responses::ResponseCodeInterpreterCallInProgressEvent, OpenAI::Responses::ResponseCodeInterpreterCallInterpretingEvent, OpenAI::Responses::ResponseCompletedEvent, OpenAI::Responses::ResponseContentPartAddedEvent, OpenAI::Responses::ResponseContentPartDoneEvent, OpenAI::Responses::ResponseCreatedEvent, OpenAI::Responses::ResponseErrorEvent, OpenAI::Responses::ResponseFileSearchCallCompletedEvent, OpenAI::Responses::ResponseFileSearchCallInProgressEvent, OpenAI::Responses::ResponseFileSearchCallSearchingEvent, OpenAI::Responses::ResponseFunctionCallArgumentsDeltaEvent, OpenAI::Responses::ResponseFunctionCallArgumentsDoneEvent, OpenAI::Responses::ResponseInProgressEvent, OpenAI::Responses::ResponseFailedEvent, OpenAI::Responses::ResponseIncompleteEvent, OpenAI::Responses::ResponseOutputItemAddedEvent, OpenAI::Responses::ResponseOutputItemDoneEvent, OpenAI::Responses::ResponseReasoningSummaryPartAddedEvent, OpenAI::Responses::ResponseReasoningSummaryPartDoneEvent, OpenAI::Responses::ResponseReasoningSummaryTextDeltaEvent, OpenAI::Responses::ResponseReasoningSummaryTextDoneEvent, OpenAI::Responses::ResponseRefusalDeltaEvent, OpenAI::Responses::ResponseRefusalDoneEvent, OpenAI::Responses::ResponseTextAnnotationDeltaEvent, OpenAI::Responses::ResponseTextDeltaEvent, OpenAI::Responses::ResponseTextDoneEvent, OpenAI::Responses::ResponseWebSearchCallCompletedEvent, OpenAI::Responses::ResponseWebSearchCallInProgressEvent, OpenAI::Responses::ResponseWebSearchCallSearchingEvent)] + + define_sorbet_constant!(:Variants) do + T.type_alias do + T.any( + OpenAI::Responses::ResponseAudioDeltaEvent, + OpenAI::Responses::ResponseAudioDoneEvent, + OpenAI::Responses::ResponseAudioTranscriptDeltaEvent, + OpenAI::Responses::ResponseAudioTranscriptDoneEvent, + OpenAI::Responses::ResponseCodeInterpreterCallCodeDeltaEvent, + OpenAI::Responses::ResponseCodeInterpreterCallCodeDoneEvent, + OpenAI::Responses::ResponseCodeInterpreterCallCompletedEvent, + OpenAI::Responses::ResponseCodeInterpreterCallInProgressEvent, + OpenAI::Responses::ResponseCodeInterpreterCallInterpretingEvent, + OpenAI::Responses::ResponseCompletedEvent, + OpenAI::Responses::ResponseContentPartAddedEvent, + OpenAI::Responses::ResponseContentPartDoneEvent, + OpenAI::Responses::ResponseCreatedEvent, + OpenAI::Responses::ResponseErrorEvent, + OpenAI::Responses::ResponseFileSearchCallCompletedEvent, + OpenAI::Responses::ResponseFileSearchCallInProgressEvent, + OpenAI::Responses::ResponseFileSearchCallSearchingEvent, + OpenAI::Responses::ResponseFunctionCallArgumentsDeltaEvent, + OpenAI::Responses::ResponseFunctionCallArgumentsDoneEvent, + OpenAI::Responses::ResponseInProgressEvent, + OpenAI::Responses::ResponseFailedEvent, + OpenAI::Responses::ResponseIncompleteEvent, + OpenAI::Responses::ResponseOutputItemAddedEvent, + OpenAI::Responses::ResponseOutputItemDoneEvent, + OpenAI::Responses::ResponseReasoningSummaryPartAddedEvent, + OpenAI::Responses::ResponseReasoningSummaryPartDoneEvent, + OpenAI::Responses::ResponseReasoningSummaryTextDeltaEvent, + OpenAI::Responses::ResponseReasoningSummaryTextDoneEvent, + OpenAI::Responses::ResponseRefusalDeltaEvent, + OpenAI::Responses::ResponseRefusalDoneEvent, + OpenAI::Responses::ResponseTextAnnotationDeltaEvent, + OpenAI::Responses::ResponseTextDeltaEvent, + OpenAI::Responses::ResponseTextDoneEvent, + OpenAI::Responses::ResponseWebSearchCallCompletedEvent, + OpenAI::Responses::ResponseWebSearchCallInProgressEvent, + OpenAI::Responses::ResponseWebSearchCallSearchingEvent + ) + end + end end end end diff --git a/lib/openai/models/responses/response_text_annotation_delta_event.rb b/lib/openai/models/responses/response_text_annotation_delta_event.rb index 8ffc14a6..f8cc77c2 100644 --- a/lib/openai/models/responses/response_text_annotation_delta_event.rb +++ b/lib/openai/models/responses/response_text_annotation_delta_event.rb @@ -188,6 +188,16 @@ class FilePath < OpenAI::Internal::Type::BaseModel # @!method self.variants # @return [Array(OpenAI::Responses::ResponseTextAnnotationDeltaEvent::Annotation::FileCitation, OpenAI::Responses::ResponseTextAnnotationDeltaEvent::Annotation::URLCitation, OpenAI::Responses::ResponseTextAnnotationDeltaEvent::Annotation::FilePath)] + + define_sorbet_constant!(:Variants) do + T.type_alias do + T.any( + OpenAI::Responses::ResponseTextAnnotationDeltaEvent::Annotation::FileCitation, + OpenAI::Responses::ResponseTextAnnotationDeltaEvent::Annotation::URLCitation, + OpenAI::Responses::ResponseTextAnnotationDeltaEvent::Annotation::FilePath + ) + end + end end end end diff --git a/lib/openai/models/responses/tool.rb b/lib/openai/models/responses/tool.rb index 97939459..2d2c6702 100644 --- a/lib/openai/models/responses/tool.rb +++ b/lib/openai/models/responses/tool.rb @@ -23,6 +23,17 @@ module Tool # @!method self.variants # @return [Array(OpenAI::Responses::FileSearchTool, OpenAI::Responses::FunctionTool, OpenAI::Responses::ComputerTool, OpenAI::Responses::WebSearchTool)] + + define_sorbet_constant!(:Variants) do + T.type_alias do + T.any( + OpenAI::Responses::FileSearchTool, + OpenAI::Responses::FunctionTool, + OpenAI::Responses::ComputerTool, + OpenAI::Responses::WebSearchTool + ) + end + end end end end diff --git a/lib/openai/models/responses_model.rb b/lib/openai/models/responses_model.rb index 5634269f..a35d5278 100644 --- a/lib/openai/models/responses_model.rb +++ b/lib/openai/models/responses_model.rb @@ -25,6 +25,16 @@ module ResponsesOnlyModel # @!method self.variants # @return [Array(String, Symbol, OpenAI::ChatModel, Symbol, OpenAI::ResponsesModel::ResponsesOnlyModel)] + + define_sorbet_constant!(:Variants) do + T.type_alias do + T.any( + String, + OpenAI::ChatModel::TaggedSymbol, + OpenAI::ResponsesModel::ResponsesOnlyModel::TaggedSymbol + ) + end + end end end end diff --git a/lib/openai/models/vector_store_search_params.rb b/lib/openai/models/vector_store_search_params.rb index 32bf6133..2009716d 100644 --- a/lib/openai/models/vector_store_search_params.rb +++ b/lib/openai/models/vector_store_search_params.rb @@ -65,6 +65,10 @@ module Query # @!method self.variants # @return [Array(String, Array)] + define_sorbet_constant!(:Variants) do + T.type_alias { T.any(String, T::Array[String]) } + end + # @type [OpenAI::Internal::Type::Converter] StringArray = OpenAI::Internal::Type::ArrayOf[String] end @@ -81,6 +85,10 @@ module Filters # @!method self.variants # @return [Array(OpenAI::ComparisonFilter, OpenAI::CompoundFilter)] + + define_sorbet_constant!(:Variants) do + T.type_alias { T.any(OpenAI::ComparisonFilter, OpenAI::CompoundFilter) } + end end class RankingOptions < OpenAI::Internal::Type::BaseModel diff --git a/lib/openai/models/vector_store_search_response.rb b/lib/openai/models/vector_store_search_response.rb index 5b623829..31f23ac7 100644 --- a/lib/openai/models/vector_store_search_response.rb +++ b/lib/openai/models/vector_store_search_response.rb @@ -66,6 +66,10 @@ module Attribute # @!method self.variants # @return [Array(String, Float, Boolean)] + + define_sorbet_constant!(:Variants) do + T.type_alias { T.any(String, Float, T::Boolean) } + end end class Content < OpenAI::Internal::Type::BaseModel diff --git a/lib/openai/models/vector_stores/file_batch_create_params.rb b/lib/openai/models/vector_stores/file_batch_create_params.rb index 5fd03105..f590ab7f 100644 --- a/lib/openai/models/vector_stores/file_batch_create_params.rb +++ b/lib/openai/models/vector_stores/file_batch_create_params.rb @@ -60,6 +60,10 @@ module Attribute # @!method self.variants # @return [Array(String, Float, Boolean)] + + define_sorbet_constant!(:Variants) do + T.type_alias { T.any(String, Float, T::Boolean) } + end end end end diff --git a/lib/openai/models/vector_stores/file_create_params.rb b/lib/openai/models/vector_stores/file_create_params.rb index 8cc4cee4..0d1bc6ed 100644 --- a/lib/openai/models/vector_stores/file_create_params.rb +++ b/lib/openai/models/vector_stores/file_create_params.rb @@ -60,6 +60,10 @@ module Attribute # @!method self.variants # @return [Array(String, Float, Boolean)] + + define_sorbet_constant!(:Variants) do + T.type_alias { T.any(String, Float, T::Boolean) } + end end end end diff --git a/lib/openai/models/vector_stores/file_update_params.rb b/lib/openai/models/vector_stores/file_update_params.rb index be3d5d7b..30c15708 100644 --- a/lib/openai/models/vector_stores/file_update_params.rb +++ b/lib/openai/models/vector_stores/file_update_params.rb @@ -48,6 +48,10 @@ module Attribute # @!method self.variants # @return [Array(String, Float, Boolean)] + + define_sorbet_constant!(:Variants) do + T.type_alias { T.any(String, Float, T::Boolean) } + end end end end diff --git a/lib/openai/models/vector_stores/vector_store_file.rb b/lib/openai/models/vector_stores/vector_store_file.rb index eab6df4b..594fd1bc 100644 --- a/lib/openai/models/vector_stores/vector_store_file.rb +++ b/lib/openai/models/vector_stores/vector_store_file.rb @@ -163,6 +163,10 @@ module Attribute # @!method self.variants # @return [Array(String, Float, Boolean)] + + define_sorbet_constant!(:Variants) do + T.type_alias { T.any(String, Float, T::Boolean) } + end end end end diff --git a/lib/openai/request_options.rb b/lib/openai/request_options.rb index d4a15822..ed62d70f 100644 --- a/lib/openai/request_options.rb +++ b/lib/openai/request_options.rb @@ -69,5 +69,9 @@ def self.validate!(opts) # Returns a new instance of RequestOptions. # # @param values [Hash{Symbol=>Object}] + + define_sorbet_constant!(:OrHash) do + T.type_alias { T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash) } + end end end diff --git a/rbi/openai/errors.rbi b/rbi/openai/errors.rbi index 4ade8ef1..4fa76a30 100644 --- a/rbi/openai/errors.rbi +++ b/rbi/openai/errors.rbi @@ -122,7 +122,7 @@ module OpenAI request: NilClass, response: NilClass, message: T.nilable(String) - ).returns(T.attached_class) + ).returns(T.self_type) end def self.for(url:, status:, body:, request:, response:, message: nil) end diff --git a/rbi/openai/internal.rbi b/rbi/openai/internal.rbi index 8390947e..135f6cba 100644 --- a/rbi/openai/internal.rbi +++ b/rbi/openai/internal.rbi @@ -2,6 +2,8 @@ module OpenAI module Internal + extend OpenAI::Internal::Util::SorbetRuntimeSupport + # Due to the current WIP status of Shapes support in Sorbet, types referencing # this alias might be refined in the future. AnyHash = T.type_alias { T::Hash[Symbol, T.anything] } diff --git a/rbi/openai/internal/transport/base_client.rbi b/rbi/openai/internal/transport/base_client.rbi index 29580549..b66e1262 100644 --- a/rbi/openai/internal/transport/base_client.rbi +++ b/rbi/openai/internal/transport/base_client.rbi @@ -5,9 +5,11 @@ module OpenAI module Transport # @api private class BaseClient + extend OpenAI::Internal::Util::SorbetRuntimeSupport + abstract! - RequestComponentsShape = + RequestComponents = T.type_alias do { method: Symbol, @@ -61,7 +63,7 @@ module OpenAI } end - RequestInputShape = + RequestInput = T.type_alias do { method: Symbol, @@ -82,8 +84,7 @@ module OpenAI # @api private sig do params( - req: - OpenAI::Internal::Transport::BaseClient::RequestComponentsShape + req: OpenAI::Internal::Transport::BaseClient::RequestComponents ).void end def validate!(req) @@ -102,13 +103,10 @@ module OpenAI # @api private sig do params( - request: - OpenAI::Internal::Transport::BaseClient::RequestInputShape, + request: OpenAI::Internal::Transport::BaseClient::RequestInput, status: Integer, response_headers: T.any(T::Hash[String, String], Net::HTTPHeader) - ).returns( - OpenAI::Internal::Transport::BaseClient::RequestInputShape - ) + ).returns(OpenAI::Internal::Transport::BaseClient::RequestInput) end def follow_redirect(request, status:, response_headers:) end @@ -175,11 +173,10 @@ module OpenAI sig do overridable .params( - req: - OpenAI::Internal::Transport::BaseClient::RequestComponentsShape, + req: OpenAI::Internal::Transport::BaseClient::RequestComponents, opts: OpenAI::Internal::AnyHash ) - .returns(OpenAI::Internal::Transport::BaseClient::RequestInputShape) + .returns(OpenAI::Internal::Transport::BaseClient::RequestInput) end private def build_request(req, opts) end @@ -197,7 +194,7 @@ module OpenAI # @api private sig do params( - request: OpenAI::Internal::Transport::BaseClient::RequestInputShape, + request: OpenAI::Internal::Transport::BaseClient::RequestInput, redirect_count: Integer, retry_count: Integer, send_retry_header: T::Boolean diff --git a/rbi/openai/internal/transport/pooled_net_requester.rbi b/rbi/openai/internal/transport/pooled_net_requester.rbi index 373c1c3b..f8eeecf5 100644 --- a/rbi/openai/internal/transport/pooled_net_requester.rbi +++ b/rbi/openai/internal/transport/pooled_net_requester.rbi @@ -5,7 +5,9 @@ module OpenAI module Transport # @api private class PooledNetRequester - RequestShape = + extend OpenAI::Internal::Util::SorbetRuntimeSupport + + Request = T.type_alias do { method: Symbol, @@ -34,8 +36,7 @@ module OpenAI # @api private sig do params( - request: - OpenAI::Internal::Transport::PooledNetRequester::RequestShape, + request: OpenAI::Internal::Transport::PooledNetRequester::Request, blk: T.proc.params(arg0: String).void ).returns([Net::HTTPGenericRequest, T.proc.void]) end @@ -57,8 +58,7 @@ module OpenAI # @api private sig do params( - request: - OpenAI::Internal::Transport::PooledNetRequester::RequestShape + request: OpenAI::Internal::Transport::PooledNetRequester::Request ).returns([Integer, Net::HTTPResponse, T::Enumerable[String]]) end def execute(request) diff --git a/rbi/openai/internal/type/base_model.rbi b/rbi/openai/internal/type/base_model.rbi index f0bcae46..3357deae 100644 --- a/rbi/openai/internal/type/base_model.rbi +++ b/rbi/openai/internal/type/base_model.rbi @@ -5,10 +5,11 @@ module OpenAI module Type class BaseModel extend OpenAI::Internal::Type::Converter + extend OpenAI::Internal::Util::SorbetRuntimeSupport abstract! - KnownFieldShape = + KnownField = T.type_alias do { mode: T.nilable(Symbol), @@ -17,19 +18,27 @@ module OpenAI } end - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(OpenAI::Internal::Type::BaseModel, OpenAI::Internal::AnyHash) + end class << self # @api private # # Assumes superclass fields are totally defined before fields are accessed / # defined on subclasses. + sig { params(child: T.self_type).void } + def inherited(child) + end + + # @api private sig do returns( T::Hash[ Symbol, T.all( - OpenAI::Internal::Type::BaseModel::KnownFieldShape, + OpenAI::Internal::Type::BaseModel::KnownField, { type_fn: T.proc.returns(OpenAI::Internal::Type::Converter::Input) @@ -47,7 +56,7 @@ module OpenAI T::Hash[ Symbol, T.all( - OpenAI::Internal::Type::BaseModel::KnownFieldShape, + OpenAI::Internal::Type::BaseModel::KnownField, { type: OpenAI::Internal::Type::Converter::Input } ) ] diff --git a/rbi/openai/internal/type/base_page.rbi b/rbi/openai/internal/type/base_page.rbi index 1df53287..c097c095 100644 --- a/rbi/openai/internal/type/base_page.rbi +++ b/rbi/openai/internal/type/base_page.rbi @@ -29,8 +29,7 @@ module OpenAI sig do params( client: OpenAI::Internal::Transport::BaseClient, - req: - OpenAI::Internal::Transport::BaseClient::RequestComponentsShape, + req: OpenAI::Internal::Transport::BaseClient::RequestComponents, headers: T.any(T::Hash[String, String], Net::HTTPHeader), page_data: T.anything ).void diff --git a/rbi/openai/internal/type/converter.rbi b/rbi/openai/internal/type/converter.rbi index eb354592..cbace65d 100644 --- a/rbi/openai/internal/type/converter.rbi +++ b/rbi/openai/internal/type/converter.rbi @@ -5,6 +5,8 @@ module OpenAI module Type # @api private module Converter + extend OpenAI::Internal::Util::SorbetRuntimeSupport + Input = T.type_alias do T.any(OpenAI::Internal::Type::Converter, T::Class[T.anything]) diff --git a/rbi/openai/internal/type/enum.rbi b/rbi/openai/internal/type/enum.rbi index 09de405a..1a1c4c47 100644 --- a/rbi/openai/internal/type/enum.rbi +++ b/rbi/openai/internal/type/enum.rbi @@ -17,6 +17,7 @@ module OpenAI # values safely. module Enum include OpenAI::Internal::Type::Converter + include OpenAI::Internal::Util::SorbetRuntimeSupport # All of the valid Symbol values for this enum. sig do diff --git a/rbi/openai/internal/type/union.rbi b/rbi/openai/internal/type/union.rbi index 7d3148a9..f8598117 100644 --- a/rbi/openai/internal/type/union.rbi +++ b/rbi/openai/internal/type/union.rbi @@ -6,6 +6,7 @@ module OpenAI # @api private module Union include OpenAI::Internal::Type::Converter + include OpenAI::Internal::Util::SorbetRuntimeSupport # @api private # diff --git a/rbi/openai/internal/util.rbi b/rbi/openai/internal/util.rbi index 54ec6f18..fe1e8cac 100644 --- a/rbi/openai/internal/util.rbi +++ b/rbi/openai/internal/util.rbi @@ -4,6 +4,8 @@ module OpenAI module Internal # @api private module Util + extend OpenAI::Internal::Util::SorbetRuntimeSupport + # @api private sig { returns(Float) } def self.monotonic_secs @@ -172,7 +174,7 @@ module OpenAI end end - ParsedUriShape = + ParsedUri = T.type_alias do { scheme: T.nilable(String), @@ -187,7 +189,7 @@ module OpenAI # @api private sig do params(url: T.any(URI::Generic, String)).returns( - OpenAI::Internal::Util::ParsedUriShape + OpenAI::Internal::Util::ParsedUri ) end def parse_uri(url) @@ -195,7 +197,7 @@ module OpenAI # @api private sig do - params(parsed: OpenAI::Internal::Util::ParsedUriShape).returns( + params(parsed: OpenAI::Internal::Util::ParsedUri).returns( URI::Generic ) end @@ -205,8 +207,8 @@ module OpenAI # @api private sig do params( - lhs: OpenAI::Internal::Util::ParsedUriShape, - rhs: OpenAI::Internal::Util::ParsedUriShape + lhs: OpenAI::Internal::Util::ParsedUri, + rhs: OpenAI::Internal::Util::ParsedUri ).returns(URI::Generic) end def join_parsed_uri(lhs, rhs) @@ -423,6 +425,27 @@ module OpenAI def decode_sse(lines) end end + + # @api private + module SorbetRuntimeSupport + class MissingSorbetRuntimeError < ::RuntimeError + end + + # @api private + sig { returns(T::Hash[Symbol, T.anything]) } + private def sorbet_runtime_constants + end + + # @api private + sig { params(name: Symbol).void } + def const_missing(name) + end + + # @api private + sig { params(name: Symbol, blk: T.proc.returns(T.anything)).void } + def define_sorbet_constant!(name, &blk) + end + end end end end diff --git a/rbi/openai/models/audio/speech_create_params.rbi b/rbi/openai/models/audio/speech_create_params.rbi index 254db622..87b9e0b9 100644 --- a/rbi/openai/models/audio/speech_create_params.rbi +++ b/rbi/openai/models/audio/speech_create_params.rbi @@ -7,7 +7,10 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(OpenAI::Audio::SpeechCreateParams, OpenAI::Internal::AnyHash) + end # The text to generate audio for. The maximum length is 4096 characters. sig { returns(String) } diff --git a/rbi/openai/models/audio/transcription.rbi b/rbi/openai/models/audio/transcription.rbi index b7bca615..22ae3343 100644 --- a/rbi/openai/models/audio/transcription.rbi +++ b/rbi/openai/models/audio/transcription.rbi @@ -4,7 +4,10 @@ module OpenAI module Models module Audio class Transcription < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(OpenAI::Audio::Transcription, OpenAI::Internal::AnyHash) + end # The transcribed text. sig { returns(String) } @@ -56,7 +59,12 @@ module OpenAI class Logprob < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Audio::Transcription::Logprob, + OpenAI::Internal::AnyHash + ) + end # The token in the transcription. sig { returns(T.nilable(String)) } diff --git a/rbi/openai/models/audio/transcription_create_params.rbi b/rbi/openai/models/audio/transcription_create_params.rbi index ba0c7098..1bffb2a0 100644 --- a/rbi/openai/models/audio/transcription_create_params.rbi +++ b/rbi/openai/models/audio/transcription_create_params.rbi @@ -7,7 +7,13 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::Audio::TranscriptionCreateParams, + OpenAI::Internal::AnyHash + ) + end # The audio file object (not file name) to transcribe, in one of these formats: # flac, mp3, mp4, mpeg, mpga, m4a, ogg, wav, or webm. diff --git a/rbi/openai/models/audio/transcription_segment.rbi b/rbi/openai/models/audio/transcription_segment.rbi index bac3f1b7..a86ed570 100644 --- a/rbi/openai/models/audio/transcription_segment.rbi +++ b/rbi/openai/models/audio/transcription_segment.rbi @@ -4,7 +4,13 @@ module OpenAI module Models module Audio class TranscriptionSegment < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::Audio::TranscriptionSegment, + OpenAI::Internal::AnyHash + ) + end # Unique identifier of the segment. sig { returns(Integer) } diff --git a/rbi/openai/models/audio/transcription_text_delta_event.rbi b/rbi/openai/models/audio/transcription_text_delta_event.rbi index 15165550..a196922d 100644 --- a/rbi/openai/models/audio/transcription_text_delta_event.rbi +++ b/rbi/openai/models/audio/transcription_text_delta_event.rbi @@ -4,7 +4,13 @@ module OpenAI module Models module Audio class TranscriptionTextDeltaEvent < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::Audio::TranscriptionTextDeltaEvent, + OpenAI::Internal::AnyHash + ) + end # The text delta that was additionally transcribed. sig { returns(String) } @@ -77,7 +83,12 @@ module OpenAI class Logprob < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Audio::TranscriptionTextDeltaEvent::Logprob, + OpenAI::Internal::AnyHash + ) + end # The token that was used to generate the log probability. sig { returns(T.nilable(String)) } diff --git a/rbi/openai/models/audio/transcription_text_done_event.rbi b/rbi/openai/models/audio/transcription_text_done_event.rbi index 993b519e..80acac59 100644 --- a/rbi/openai/models/audio/transcription_text_done_event.rbi +++ b/rbi/openai/models/audio/transcription_text_done_event.rbi @@ -4,7 +4,13 @@ module OpenAI module Models module Audio class TranscriptionTextDoneEvent < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::Audio::TranscriptionTextDoneEvent, + OpenAI::Internal::AnyHash + ) + end # The text that was transcribed. sig { returns(String) } @@ -79,7 +85,12 @@ module OpenAI class Logprob < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Audio::TranscriptionTextDoneEvent::Logprob, + OpenAI::Internal::AnyHash + ) + end # The token that was used to generate the log probability. sig { returns(T.nilable(String)) } diff --git a/rbi/openai/models/audio/transcription_verbose.rbi b/rbi/openai/models/audio/transcription_verbose.rbi index 6fc105f7..afd2b789 100644 --- a/rbi/openai/models/audio/transcription_verbose.rbi +++ b/rbi/openai/models/audio/transcription_verbose.rbi @@ -4,7 +4,13 @@ module OpenAI module Models module Audio class TranscriptionVerbose < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::Audio::TranscriptionVerbose, + OpenAI::Internal::AnyHash + ) + end # The duration of the input audio. sig { returns(Float) } diff --git a/rbi/openai/models/audio/transcription_word.rbi b/rbi/openai/models/audio/transcription_word.rbi index 141e388e..2bf37011 100644 --- a/rbi/openai/models/audio/transcription_word.rbi +++ b/rbi/openai/models/audio/transcription_word.rbi @@ -4,7 +4,10 @@ module OpenAI module Models module Audio class TranscriptionWord < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(OpenAI::Audio::TranscriptionWord, OpenAI::Internal::AnyHash) + end # End time of the word in seconds. sig { returns(Float) } diff --git a/rbi/openai/models/audio/translation.rbi b/rbi/openai/models/audio/translation.rbi index 253e5428..dd78df7f 100644 --- a/rbi/openai/models/audio/translation.rbi +++ b/rbi/openai/models/audio/translation.rbi @@ -4,7 +4,10 @@ module OpenAI module Models module Audio class Translation < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(OpenAI::Audio::Translation, OpenAI::Internal::AnyHash) + end sig { returns(String) } attr_accessor :text diff --git a/rbi/openai/models/audio/translation_create_params.rbi b/rbi/openai/models/audio/translation_create_params.rbi index 0762f210..bcfb2484 100644 --- a/rbi/openai/models/audio/translation_create_params.rbi +++ b/rbi/openai/models/audio/translation_create_params.rbi @@ -7,7 +7,13 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::Audio::TranslationCreateParams, + OpenAI::Internal::AnyHash + ) + end # The audio file object (not file name) translate, in one of these formats: flac, # mp3, mp4, mpeg, mpga, m4a, ogg, wav, or webm. diff --git a/rbi/openai/models/audio/translation_verbose.rbi b/rbi/openai/models/audio/translation_verbose.rbi index ddc7e192..4dfdee59 100644 --- a/rbi/openai/models/audio/translation_verbose.rbi +++ b/rbi/openai/models/audio/translation_verbose.rbi @@ -4,7 +4,10 @@ module OpenAI module Models module Audio class TranslationVerbose < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(OpenAI::Audio::TranslationVerbose, OpenAI::Internal::AnyHash) + end # The duration of the input audio. sig { returns(Float) } diff --git a/rbi/openai/models/auto_file_chunking_strategy_param.rbi b/rbi/openai/models/auto_file_chunking_strategy_param.rbi index 658b0cc9..91995701 100644 --- a/rbi/openai/models/auto_file_chunking_strategy_param.rbi +++ b/rbi/openai/models/auto_file_chunking_strategy_param.rbi @@ -3,7 +3,13 @@ module OpenAI module Models class AutoFileChunkingStrategyParam < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::AutoFileChunkingStrategyParam, + OpenAI::Internal::AnyHash + ) + end # Always `auto`. sig { returns(Symbol) } diff --git a/rbi/openai/models/batch.rbi b/rbi/openai/models/batch.rbi index dcc6308c..3d6ce897 100644 --- a/rbi/openai/models/batch.rbi +++ b/rbi/openai/models/batch.rbi @@ -3,7 +3,7 @@ module OpenAI module Models class Batch < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = T.type_alias { T.any(OpenAI::Batch, OpenAI::Internal::AnyHash) } sig { returns(String) } attr_accessor :id @@ -246,7 +246,10 @@ module OpenAI end class Errors < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(OpenAI::Batch::Errors, OpenAI::Internal::AnyHash) + end sig { returns(T.nilable(T::Array[OpenAI::BatchError])) } attr_reader :data diff --git a/rbi/openai/models/batch_cancel_params.rbi b/rbi/openai/models/batch_cancel_params.rbi index 37f0df79..b6a056fc 100644 --- a/rbi/openai/models/batch_cancel_params.rbi +++ b/rbi/openai/models/batch_cancel_params.rbi @@ -6,7 +6,10 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(OpenAI::BatchCancelParams, OpenAI::Internal::AnyHash) + end sig do params(request_options: OpenAI::RequestOptions::OrHash).returns( diff --git a/rbi/openai/models/batch_create_params.rbi b/rbi/openai/models/batch_create_params.rbi index 31e62492..7568daed 100644 --- a/rbi/openai/models/batch_create_params.rbi +++ b/rbi/openai/models/batch_create_params.rbi @@ -6,7 +6,10 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(OpenAI::BatchCreateParams, OpenAI::Internal::AnyHash) + end # The time frame within which the batch should be processed. Currently only `24h` # is supported. diff --git a/rbi/openai/models/batch_error.rbi b/rbi/openai/models/batch_error.rbi index 77e0e754..4cade073 100644 --- a/rbi/openai/models/batch_error.rbi +++ b/rbi/openai/models/batch_error.rbi @@ -3,7 +3,8 @@ module OpenAI module Models class BatchError < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias { T.any(OpenAI::BatchError, OpenAI::Internal::AnyHash) } # An error code identifying the error type. sig { returns(T.nilable(String)) } diff --git a/rbi/openai/models/batch_list_params.rbi b/rbi/openai/models/batch_list_params.rbi index 1843894d..7000c142 100644 --- a/rbi/openai/models/batch_list_params.rbi +++ b/rbi/openai/models/batch_list_params.rbi @@ -6,7 +6,10 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(OpenAI::BatchListParams, OpenAI::Internal::AnyHash) + end # A cursor for use in pagination. `after` is an object ID that defines your place # in the list. For instance, if you make a list request and receive 100 objects, diff --git a/rbi/openai/models/batch_request_counts.rbi b/rbi/openai/models/batch_request_counts.rbi index 6835bf20..88cf5914 100644 --- a/rbi/openai/models/batch_request_counts.rbi +++ b/rbi/openai/models/batch_request_counts.rbi @@ -3,7 +3,10 @@ module OpenAI module Models class BatchRequestCounts < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(OpenAI::BatchRequestCounts, OpenAI::Internal::AnyHash) + end # Number of requests that have been completed successfully. sig { returns(Integer) } diff --git a/rbi/openai/models/batch_retrieve_params.rbi b/rbi/openai/models/batch_retrieve_params.rbi index b7289ba9..f749ed91 100644 --- a/rbi/openai/models/batch_retrieve_params.rbi +++ b/rbi/openai/models/batch_retrieve_params.rbi @@ -6,7 +6,10 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(OpenAI::BatchRetrieveParams, OpenAI::Internal::AnyHash) + end sig do params(request_options: OpenAI::RequestOptions::OrHash).returns( diff --git a/rbi/openai/models/beta/assistant.rbi b/rbi/openai/models/beta/assistant.rbi index 9baa786f..4b635b82 100644 --- a/rbi/openai/models/beta/assistant.rbi +++ b/rbi/openai/models/beta/assistant.rbi @@ -4,7 +4,10 @@ module OpenAI module Models module Beta class Assistant < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(OpenAI::Beta::Assistant, OpenAI::Internal::AnyHash) + end # The identifier, which can be referenced in API endpoints. sig { returns(String) } @@ -270,7 +273,12 @@ module OpenAI class ToolResources < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::Assistant::ToolResources, + OpenAI::Internal::AnyHash + ) + end sig do returns( @@ -331,7 +339,12 @@ module OpenAI class CodeInterpreter < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::Assistant::ToolResources::CodeInterpreter, + OpenAI::Internal::AnyHash + ) + end # A list of [file](https://platform.openai.com/docs/api-reference/files) IDs made # available to the `code_interpreter`` tool. There can be a maximum of 20 files @@ -358,7 +371,12 @@ module OpenAI class FileSearch < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::Assistant::ToolResources::FileSearch, + OpenAI::Internal::AnyHash + ) + end # The ID of the # [vector store](https://platform.openai.com/docs/api-reference/vector-stores/object) diff --git a/rbi/openai/models/beta/assistant_create_params.rbi b/rbi/openai/models/beta/assistant_create_params.rbi index eaf13a70..c04793b1 100644 --- a/rbi/openai/models/beta/assistant_create_params.rbi +++ b/rbi/openai/models/beta/assistant_create_params.rbi @@ -7,7 +7,13 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::Beta::AssistantCreateParams, + OpenAI::Internal::AnyHash + ) + end # ID of the model to use. You can use the # [List models](https://platform.openai.com/docs/api-reference/models/list) API to @@ -312,7 +318,12 @@ module OpenAI class ToolResources < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::AssistantCreateParams::ToolResources, + OpenAI::Internal::AnyHash + ) + end sig do returns( @@ -378,7 +389,12 @@ module OpenAI class CodeInterpreter < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::AssistantCreateParams::ToolResources::CodeInterpreter, + OpenAI::Internal::AnyHash + ) + end # A list of [file](https://platform.openai.com/docs/api-reference/files) IDs made # available to the `code_interpreter` tool. There can be a maximum of 20 files @@ -405,7 +421,12 @@ module OpenAI class FileSearch < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::AssistantCreateParams::ToolResources::FileSearch, + OpenAI::Internal::AnyHash + ) + end # The # [vector store](https://platform.openai.com/docs/api-reference/vector-stores/object) @@ -481,7 +502,12 @@ module OpenAI class VectorStore < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore, + OpenAI::Internal::AnyHash + ) + end # The chunking strategy used to chunk the file(s). If not set, will use the `auto` # strategy. @@ -587,7 +613,10 @@ module OpenAI class Auto < OpenAI::Internal::Type::BaseModel OrHash = T.type_alias do - T.any(T.self_type, OpenAI::Internal::AnyHash) + T.any( + OpenAI::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Auto, + OpenAI::Internal::AnyHash + ) end # Always `auto`. @@ -611,7 +640,10 @@ module OpenAI class Static < OpenAI::Internal::Type::BaseModel OrHash = T.type_alias do - T.any(T.self_type, OpenAI::Internal::AnyHash) + T.any( + OpenAI::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static, + OpenAI::Internal::AnyHash + ) end sig do @@ -662,7 +694,10 @@ module OpenAI class Static < OpenAI::Internal::Type::BaseModel OrHash = T.type_alias do - T.any(T.self_type, OpenAI::Internal::AnyHash) + T.any( + OpenAI::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static::Static, + OpenAI::Internal::AnyHash + ) end # The number of tokens that overlap between chunks. The default value is `400`. diff --git a/rbi/openai/models/beta/assistant_delete_params.rbi b/rbi/openai/models/beta/assistant_delete_params.rbi index 48fee74b..d9efdc8d 100644 --- a/rbi/openai/models/beta/assistant_delete_params.rbi +++ b/rbi/openai/models/beta/assistant_delete_params.rbi @@ -7,7 +7,13 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::Beta::AssistantDeleteParams, + OpenAI::Internal::AnyHash + ) + end sig do params(request_options: OpenAI::RequestOptions::OrHash).returns( diff --git a/rbi/openai/models/beta/assistant_deleted.rbi b/rbi/openai/models/beta/assistant_deleted.rbi index 7ebe179e..6925eb3b 100644 --- a/rbi/openai/models/beta/assistant_deleted.rbi +++ b/rbi/openai/models/beta/assistant_deleted.rbi @@ -4,7 +4,10 @@ module OpenAI module Models module Beta class AssistantDeleted < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(OpenAI::Beta::AssistantDeleted, OpenAI::Internal::AnyHash) + end sig { returns(String) } attr_accessor :id diff --git a/rbi/openai/models/beta/assistant_list_params.rbi b/rbi/openai/models/beta/assistant_list_params.rbi index b9644242..0d1099af 100644 --- a/rbi/openai/models/beta/assistant_list_params.rbi +++ b/rbi/openai/models/beta/assistant_list_params.rbi @@ -7,7 +7,10 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(OpenAI::Beta::AssistantListParams, OpenAI::Internal::AnyHash) + end # A cursor for use in pagination. `after` is an object ID that defines your place # in the list. For instance, if you make a list request and receive 100 objects, diff --git a/rbi/openai/models/beta/assistant_retrieve_params.rbi b/rbi/openai/models/beta/assistant_retrieve_params.rbi index 2ca3eb4e..4f006925 100644 --- a/rbi/openai/models/beta/assistant_retrieve_params.rbi +++ b/rbi/openai/models/beta/assistant_retrieve_params.rbi @@ -7,7 +7,13 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::Beta::AssistantRetrieveParams, + OpenAI::Internal::AnyHash + ) + end sig do params(request_options: OpenAI::RequestOptions::OrHash).returns( diff --git a/rbi/openai/models/beta/assistant_stream_event.rbi b/rbi/openai/models/beta/assistant_stream_event.rbi index b69c801c..fc236a1b 100644 --- a/rbi/openai/models/beta/assistant_stream_event.rbi +++ b/rbi/openai/models/beta/assistant_stream_event.rbi @@ -58,7 +58,12 @@ module OpenAI class ThreadCreated < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::AssistantStreamEvent::ThreadCreated, + OpenAI::Internal::AnyHash + ) + end # Represents a thread that contains # [messages](https://platform.openai.com/docs/api-reference/messages). @@ -109,7 +114,12 @@ module OpenAI class ThreadRunCreated < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::AssistantStreamEvent::ThreadRunCreated, + OpenAI::Internal::AnyHash + ) + end # Represents an execution run on a # [thread](https://platform.openai.com/docs/api-reference/threads). @@ -149,7 +159,12 @@ module OpenAI class ThreadRunQueued < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::AssistantStreamEvent::ThreadRunQueued, + OpenAI::Internal::AnyHash + ) + end # Represents an execution run on a # [thread](https://platform.openai.com/docs/api-reference/threads). @@ -189,7 +204,12 @@ module OpenAI class ThreadRunInProgress < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::AssistantStreamEvent::ThreadRunInProgress, + OpenAI::Internal::AnyHash + ) + end # Represents an execution run on a # [thread](https://platform.openai.com/docs/api-reference/threads). @@ -229,7 +249,12 @@ module OpenAI class ThreadRunRequiresAction < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::AssistantStreamEvent::ThreadRunRequiresAction, + OpenAI::Internal::AnyHash + ) + end # Represents an execution run on a # [thread](https://platform.openai.com/docs/api-reference/threads). @@ -269,7 +294,12 @@ module OpenAI class ThreadRunCompleted < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::AssistantStreamEvent::ThreadRunCompleted, + OpenAI::Internal::AnyHash + ) + end # Represents an execution run on a # [thread](https://platform.openai.com/docs/api-reference/threads). @@ -309,7 +339,12 @@ module OpenAI class ThreadRunIncomplete < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::AssistantStreamEvent::ThreadRunIncomplete, + OpenAI::Internal::AnyHash + ) + end # Represents an execution run on a # [thread](https://platform.openai.com/docs/api-reference/threads). @@ -349,7 +384,12 @@ module OpenAI class ThreadRunFailed < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::AssistantStreamEvent::ThreadRunFailed, + OpenAI::Internal::AnyHash + ) + end # Represents an execution run on a # [thread](https://platform.openai.com/docs/api-reference/threads). @@ -389,7 +429,12 @@ module OpenAI class ThreadRunCancelling < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::AssistantStreamEvent::ThreadRunCancelling, + OpenAI::Internal::AnyHash + ) + end # Represents an execution run on a # [thread](https://platform.openai.com/docs/api-reference/threads). @@ -429,7 +474,12 @@ module OpenAI class ThreadRunCancelled < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::AssistantStreamEvent::ThreadRunCancelled, + OpenAI::Internal::AnyHash + ) + end # Represents an execution run on a # [thread](https://platform.openai.com/docs/api-reference/threads). @@ -469,7 +519,12 @@ module OpenAI class ThreadRunExpired < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::AssistantStreamEvent::ThreadRunExpired, + OpenAI::Internal::AnyHash + ) + end # Represents an execution run on a # [thread](https://platform.openai.com/docs/api-reference/threads). @@ -509,7 +564,12 @@ module OpenAI class ThreadRunStepCreated < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::AssistantStreamEvent::ThreadRunStepCreated, + OpenAI::Internal::AnyHash + ) + end # Represents a step in execution of a run. sig { returns(OpenAI::Beta::Threads::Runs::RunStep) } @@ -550,7 +610,12 @@ module OpenAI class ThreadRunStepInProgress < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::AssistantStreamEvent::ThreadRunStepInProgress, + OpenAI::Internal::AnyHash + ) + end # Represents a step in execution of a run. sig { returns(OpenAI::Beta::Threads::Runs::RunStep) } @@ -591,7 +656,12 @@ module OpenAI class ThreadRunStepDelta < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::AssistantStreamEvent::ThreadRunStepDelta, + OpenAI::Internal::AnyHash + ) + end # Represents a run step delta i.e. any changed fields on a run step during # streaming. @@ -639,7 +709,12 @@ module OpenAI class ThreadRunStepCompleted < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::AssistantStreamEvent::ThreadRunStepCompleted, + OpenAI::Internal::AnyHash + ) + end # Represents a step in execution of a run. sig { returns(OpenAI::Beta::Threads::Runs::RunStep) } @@ -680,7 +755,12 @@ module OpenAI class ThreadRunStepFailed < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::AssistantStreamEvent::ThreadRunStepFailed, + OpenAI::Internal::AnyHash + ) + end # Represents a step in execution of a run. sig { returns(OpenAI::Beta::Threads::Runs::RunStep) } @@ -721,7 +801,12 @@ module OpenAI class ThreadRunStepCancelled < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::AssistantStreamEvent::ThreadRunStepCancelled, + OpenAI::Internal::AnyHash + ) + end # Represents a step in execution of a run. sig { returns(OpenAI::Beta::Threads::Runs::RunStep) } @@ -762,7 +847,12 @@ module OpenAI class ThreadRunStepExpired < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::AssistantStreamEvent::ThreadRunStepExpired, + OpenAI::Internal::AnyHash + ) + end # Represents a step in execution of a run. sig { returns(OpenAI::Beta::Threads::Runs::RunStep) } @@ -803,7 +893,12 @@ module OpenAI class ThreadMessageCreated < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::AssistantStreamEvent::ThreadMessageCreated, + OpenAI::Internal::AnyHash + ) + end # Represents a message within a # [thread](https://platform.openai.com/docs/api-reference/threads). @@ -844,7 +939,12 @@ module OpenAI class ThreadMessageInProgress < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::AssistantStreamEvent::ThreadMessageInProgress, + OpenAI::Internal::AnyHash + ) + end # Represents a message within a # [thread](https://platform.openai.com/docs/api-reference/threads). @@ -885,7 +985,12 @@ module OpenAI class ThreadMessageDelta < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::AssistantStreamEvent::ThreadMessageDelta, + OpenAI::Internal::AnyHash + ) + end # Represents a message delta i.e. any changed fields on a message during # streaming. @@ -928,7 +1033,12 @@ module OpenAI class ThreadMessageCompleted < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::AssistantStreamEvent::ThreadMessageCompleted, + OpenAI::Internal::AnyHash + ) + end # Represents a message within a # [thread](https://platform.openai.com/docs/api-reference/threads). @@ -969,7 +1079,12 @@ module OpenAI class ThreadMessageIncomplete < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::AssistantStreamEvent::ThreadMessageIncomplete, + OpenAI::Internal::AnyHash + ) + end # Represents a message within a # [thread](https://platform.openai.com/docs/api-reference/threads). @@ -1010,7 +1125,12 @@ module OpenAI class ErrorEvent < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::AssistantStreamEvent::ErrorEvent, + OpenAI::Internal::AnyHash + ) + end sig { returns(OpenAI::ErrorObject) } attr_reader :data diff --git a/rbi/openai/models/beta/assistant_tool_choice.rbi b/rbi/openai/models/beta/assistant_tool_choice.rbi index a018f2b0..11dd4c1a 100644 --- a/rbi/openai/models/beta/assistant_tool_choice.rbi +++ b/rbi/openai/models/beta/assistant_tool_choice.rbi @@ -4,7 +4,10 @@ module OpenAI module Models module Beta class AssistantToolChoice < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(OpenAI::Beta::AssistantToolChoice, OpenAI::Internal::AnyHash) + end # The type of the tool. If type is `function`, the function name must be set sig { returns(OpenAI::Beta::AssistantToolChoice::Type::OrSymbol) } diff --git a/rbi/openai/models/beta/assistant_tool_choice_function.rbi b/rbi/openai/models/beta/assistant_tool_choice_function.rbi index 3f18016b..88ed6dbc 100644 --- a/rbi/openai/models/beta/assistant_tool_choice_function.rbi +++ b/rbi/openai/models/beta/assistant_tool_choice_function.rbi @@ -4,7 +4,13 @@ module OpenAI module Models module Beta class AssistantToolChoiceFunction < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::Beta::AssistantToolChoiceFunction, + OpenAI::Internal::AnyHash + ) + end # The name of the function to call. sig { returns(String) } diff --git a/rbi/openai/models/beta/assistant_update_params.rbi b/rbi/openai/models/beta/assistant_update_params.rbi index 27dbf4a1..b044c34b 100644 --- a/rbi/openai/models/beta/assistant_update_params.rbi +++ b/rbi/openai/models/beta/assistant_update_params.rbi @@ -7,7 +7,13 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::Beta::AssistantUpdateParams, + OpenAI::Internal::AnyHash + ) + end # The description of the assistant. The maximum length is 512 characters. sig { returns(T.nilable(String)) } @@ -529,7 +535,12 @@ module OpenAI class ToolResources < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::AssistantUpdateParams::ToolResources, + OpenAI::Internal::AnyHash + ) + end sig do returns( @@ -595,7 +606,12 @@ module OpenAI class CodeInterpreter < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::AssistantUpdateParams::ToolResources::CodeInterpreter, + OpenAI::Internal::AnyHash + ) + end # Overrides the list of # [file](https://platform.openai.com/docs/api-reference/files) IDs made available @@ -624,7 +640,12 @@ module OpenAI class FileSearch < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::AssistantUpdateParams::ToolResources::FileSearch, + OpenAI::Internal::AnyHash + ) + end # Overrides the # [vector store](https://platform.openai.com/docs/api-reference/vector-stores/object) diff --git a/rbi/openai/models/beta/code_interpreter_tool.rbi b/rbi/openai/models/beta/code_interpreter_tool.rbi index f9f7b8bb..3d315b25 100644 --- a/rbi/openai/models/beta/code_interpreter_tool.rbi +++ b/rbi/openai/models/beta/code_interpreter_tool.rbi @@ -4,7 +4,10 @@ module OpenAI module Models module Beta class CodeInterpreterTool < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(OpenAI::Beta::CodeInterpreterTool, OpenAI::Internal::AnyHash) + end # The type of tool being defined: `code_interpreter` sig { returns(Symbol) } diff --git a/rbi/openai/models/beta/file_search_tool.rbi b/rbi/openai/models/beta/file_search_tool.rbi index d2442c3f..656a81da 100644 --- a/rbi/openai/models/beta/file_search_tool.rbi +++ b/rbi/openai/models/beta/file_search_tool.rbi @@ -4,7 +4,10 @@ module OpenAI module Models module Beta class FileSearchTool < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(OpenAI::Beta::FileSearchTool, OpenAI::Internal::AnyHash) + end # The type of tool being defined: `file_search` sig { returns(Symbol) } @@ -48,7 +51,12 @@ module OpenAI class FileSearch < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::FileSearchTool::FileSearch, + OpenAI::Internal::AnyHash + ) + end # The maximum number of results the file search tool should output. The default is # 20 for `gpt-4*` models and 5 for `gpt-3.5-turbo`. This number should be between @@ -129,7 +137,12 @@ module OpenAI class RankingOptions < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::FileSearchTool::FileSearch::RankingOptions, + OpenAI::Internal::AnyHash + ) + end # The score threshold for the file search. All values must be a floating point # number between 0 and 1. diff --git a/rbi/openai/models/beta/function_tool.rbi b/rbi/openai/models/beta/function_tool.rbi index ad129493..87fcce58 100644 --- a/rbi/openai/models/beta/function_tool.rbi +++ b/rbi/openai/models/beta/function_tool.rbi @@ -4,7 +4,10 @@ module OpenAI module Models module Beta class FunctionTool < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(OpenAI::Beta::FunctionTool, OpenAI::Internal::AnyHash) + end sig { returns(OpenAI::FunctionDefinition) } attr_reader :function diff --git a/rbi/openai/models/beta/message_stream_event.rbi b/rbi/openai/models/beta/message_stream_event.rbi index 562d10c2..01893282 100644 --- a/rbi/openai/models/beta/message_stream_event.rbi +++ b/rbi/openai/models/beta/message_stream_event.rbi @@ -22,7 +22,12 @@ module OpenAI class ThreadMessageCreated < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::MessageStreamEvent::ThreadMessageCreated, + OpenAI::Internal::AnyHash + ) + end # Represents a message within a # [thread](https://platform.openai.com/docs/api-reference/threads). @@ -63,7 +68,12 @@ module OpenAI class ThreadMessageInProgress < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::MessageStreamEvent::ThreadMessageInProgress, + OpenAI::Internal::AnyHash + ) + end # Represents a message within a # [thread](https://platform.openai.com/docs/api-reference/threads). @@ -104,7 +114,12 @@ module OpenAI class ThreadMessageDelta < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::MessageStreamEvent::ThreadMessageDelta, + OpenAI::Internal::AnyHash + ) + end # Represents a message delta i.e. any changed fields on a message during # streaming. @@ -147,7 +162,12 @@ module OpenAI class ThreadMessageCompleted < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::MessageStreamEvent::ThreadMessageCompleted, + OpenAI::Internal::AnyHash + ) + end # Represents a message within a # [thread](https://platform.openai.com/docs/api-reference/threads). @@ -188,7 +208,12 @@ module OpenAI class ThreadMessageIncomplete < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::MessageStreamEvent::ThreadMessageIncomplete, + OpenAI::Internal::AnyHash + ) + end # Represents a message within a # [thread](https://platform.openai.com/docs/api-reference/threads). diff --git a/rbi/openai/models/beta/run_step_stream_event.rbi b/rbi/openai/models/beta/run_step_stream_event.rbi index 7c052f14..5d42a8d3 100644 --- a/rbi/openai/models/beta/run_step_stream_event.rbi +++ b/rbi/openai/models/beta/run_step_stream_event.rbi @@ -24,7 +24,12 @@ module OpenAI class ThreadRunStepCreated < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::RunStepStreamEvent::ThreadRunStepCreated, + OpenAI::Internal::AnyHash + ) + end # Represents a step in execution of a run. sig { returns(OpenAI::Beta::Threads::Runs::RunStep) } @@ -65,7 +70,12 @@ module OpenAI class ThreadRunStepInProgress < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::RunStepStreamEvent::ThreadRunStepInProgress, + OpenAI::Internal::AnyHash + ) + end # Represents a step in execution of a run. sig { returns(OpenAI::Beta::Threads::Runs::RunStep) } @@ -106,7 +116,12 @@ module OpenAI class ThreadRunStepDelta < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::RunStepStreamEvent::ThreadRunStepDelta, + OpenAI::Internal::AnyHash + ) + end # Represents a run step delta i.e. any changed fields on a run step during # streaming. @@ -154,7 +169,12 @@ module OpenAI class ThreadRunStepCompleted < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::RunStepStreamEvent::ThreadRunStepCompleted, + OpenAI::Internal::AnyHash + ) + end # Represents a step in execution of a run. sig { returns(OpenAI::Beta::Threads::Runs::RunStep) } @@ -195,7 +215,12 @@ module OpenAI class ThreadRunStepFailed < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::RunStepStreamEvent::ThreadRunStepFailed, + OpenAI::Internal::AnyHash + ) + end # Represents a step in execution of a run. sig { returns(OpenAI::Beta::Threads::Runs::RunStep) } @@ -236,7 +261,12 @@ module OpenAI class ThreadRunStepCancelled < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::RunStepStreamEvent::ThreadRunStepCancelled, + OpenAI::Internal::AnyHash + ) + end # Represents a step in execution of a run. sig { returns(OpenAI::Beta::Threads::Runs::RunStep) } @@ -277,7 +307,12 @@ module OpenAI class ThreadRunStepExpired < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::RunStepStreamEvent::ThreadRunStepExpired, + OpenAI::Internal::AnyHash + ) + end # Represents a step in execution of a run. sig { returns(OpenAI::Beta::Threads::Runs::RunStep) } diff --git a/rbi/openai/models/beta/run_stream_event.rbi b/rbi/openai/models/beta/run_stream_event.rbi index 77e86149..ed6893e1 100644 --- a/rbi/openai/models/beta/run_stream_event.rbi +++ b/rbi/openai/models/beta/run_stream_event.rbi @@ -26,7 +26,12 @@ module OpenAI class ThreadRunCreated < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::RunStreamEvent::ThreadRunCreated, + OpenAI::Internal::AnyHash + ) + end # Represents an execution run on a # [thread](https://platform.openai.com/docs/api-reference/threads). @@ -66,7 +71,12 @@ module OpenAI class ThreadRunQueued < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::RunStreamEvent::ThreadRunQueued, + OpenAI::Internal::AnyHash + ) + end # Represents an execution run on a # [thread](https://platform.openai.com/docs/api-reference/threads). @@ -106,7 +116,12 @@ module OpenAI class ThreadRunInProgress < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::RunStreamEvent::ThreadRunInProgress, + OpenAI::Internal::AnyHash + ) + end # Represents an execution run on a # [thread](https://platform.openai.com/docs/api-reference/threads). @@ -146,7 +161,12 @@ module OpenAI class ThreadRunRequiresAction < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::RunStreamEvent::ThreadRunRequiresAction, + OpenAI::Internal::AnyHash + ) + end # Represents an execution run on a # [thread](https://platform.openai.com/docs/api-reference/threads). @@ -186,7 +206,12 @@ module OpenAI class ThreadRunCompleted < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::RunStreamEvent::ThreadRunCompleted, + OpenAI::Internal::AnyHash + ) + end # Represents an execution run on a # [thread](https://platform.openai.com/docs/api-reference/threads). @@ -226,7 +251,12 @@ module OpenAI class ThreadRunIncomplete < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::RunStreamEvent::ThreadRunIncomplete, + OpenAI::Internal::AnyHash + ) + end # Represents an execution run on a # [thread](https://platform.openai.com/docs/api-reference/threads). @@ -266,7 +296,12 @@ module OpenAI class ThreadRunFailed < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::RunStreamEvent::ThreadRunFailed, + OpenAI::Internal::AnyHash + ) + end # Represents an execution run on a # [thread](https://platform.openai.com/docs/api-reference/threads). @@ -306,7 +341,12 @@ module OpenAI class ThreadRunCancelling < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::RunStreamEvent::ThreadRunCancelling, + OpenAI::Internal::AnyHash + ) + end # Represents an execution run on a # [thread](https://platform.openai.com/docs/api-reference/threads). @@ -346,7 +386,12 @@ module OpenAI class ThreadRunCancelled < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::RunStreamEvent::ThreadRunCancelled, + OpenAI::Internal::AnyHash + ) + end # Represents an execution run on a # [thread](https://platform.openai.com/docs/api-reference/threads). @@ -386,7 +431,12 @@ module OpenAI class ThreadRunExpired < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::RunStreamEvent::ThreadRunExpired, + OpenAI::Internal::AnyHash + ) + end # Represents an execution run on a # [thread](https://platform.openai.com/docs/api-reference/threads). diff --git a/rbi/openai/models/beta/thread.rbi b/rbi/openai/models/beta/thread.rbi index 8f84f6d1..e828a1aa 100644 --- a/rbi/openai/models/beta/thread.rbi +++ b/rbi/openai/models/beta/thread.rbi @@ -4,7 +4,10 @@ module OpenAI module Models module Beta class Thread < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(OpenAI::Beta::Thread, OpenAI::Internal::AnyHash) + end # The identifier, which can be referenced in API endpoints. sig { returns(String) } @@ -92,7 +95,12 @@ module OpenAI class ToolResources < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::Thread::ToolResources, + OpenAI::Internal::AnyHash + ) + end sig do returns( @@ -151,7 +159,12 @@ module OpenAI class CodeInterpreter < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::Thread::ToolResources::CodeInterpreter, + OpenAI::Internal::AnyHash + ) + end # A list of [file](https://platform.openai.com/docs/api-reference/files) IDs made # available to the `code_interpreter` tool. There can be a maximum of 20 files @@ -178,7 +191,12 @@ module OpenAI class FileSearch < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::Thread::ToolResources::FileSearch, + OpenAI::Internal::AnyHash + ) + end # The # [vector store](https://platform.openai.com/docs/api-reference/vector-stores/object) diff --git a/rbi/openai/models/beta/thread_create_and_run_params.rbi b/rbi/openai/models/beta/thread_create_and_run_params.rbi index e65fa5a3..7e2348cc 100644 --- a/rbi/openai/models/beta/thread_create_and_run_params.rbi +++ b/rbi/openai/models/beta/thread_create_and_run_params.rbi @@ -7,7 +7,13 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::Beta::ThreadCreateAndRunParams, + OpenAI::Internal::AnyHash + ) + end # The ID of the # [assistant](https://platform.openai.com/docs/api-reference/assistants) to use to @@ -418,7 +424,12 @@ module OpenAI class Thread < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::ThreadCreateAndRunParams::Thread, + OpenAI::Internal::AnyHash + ) + end # A list of [messages](https://platform.openai.com/docs/api-reference/messages) to # start the thread with. @@ -529,7 +540,12 @@ module OpenAI class Message < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::ThreadCreateAndRunParams::Thread::Message, + OpenAI::Internal::AnyHash + ) + end # The text contents of the message. sig do @@ -736,7 +752,12 @@ module OpenAI class Attachment < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::ThreadCreateAndRunParams::Thread::Message::Attachment, + OpenAI::Internal::AnyHash + ) + end # The ID of the file to attach to the message. sig { returns(T.nilable(String)) } @@ -824,7 +845,10 @@ module OpenAI class FileSearch < OpenAI::Internal::Type::BaseModel OrHash = T.type_alias do - T.any(T.self_type, OpenAI::Internal::AnyHash) + T.any( + OpenAI::Beta::ThreadCreateAndRunParams::Thread::Message::Attachment::Tool::FileSearch, + OpenAI::Internal::AnyHash + ) end # The type of tool being defined: `file_search` @@ -858,7 +882,12 @@ module OpenAI class ToolResources < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::ThreadCreateAndRunParams::Thread::ToolResources, + OpenAI::Internal::AnyHash + ) + end sig do returns( @@ -924,7 +953,12 @@ module OpenAI class CodeInterpreter < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::ThreadCreateAndRunParams::Thread::ToolResources::CodeInterpreter, + OpenAI::Internal::AnyHash + ) + end # A list of [file](https://platform.openai.com/docs/api-reference/files) IDs made # available to the `code_interpreter` tool. There can be a maximum of 20 files @@ -953,7 +987,12 @@ module OpenAI class FileSearch < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch, + OpenAI::Internal::AnyHash + ) + end # The # [vector store](https://platform.openai.com/docs/api-reference/vector-stores/object) @@ -1029,7 +1068,12 @@ module OpenAI class VectorStore < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore, + OpenAI::Internal::AnyHash + ) + end # The chunking strategy used to chunk the file(s). If not set, will use the `auto` # strategy. @@ -1135,7 +1179,10 @@ module OpenAI class Auto < OpenAI::Internal::Type::BaseModel OrHash = T.type_alias do - T.any(T.self_type, OpenAI::Internal::AnyHash) + T.any( + OpenAI::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Auto, + OpenAI::Internal::AnyHash + ) end # Always `auto`. @@ -1159,7 +1206,10 @@ module OpenAI class Static < OpenAI::Internal::Type::BaseModel OrHash = T.type_alias do - T.any(T.self_type, OpenAI::Internal::AnyHash) + T.any( + OpenAI::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static, + OpenAI::Internal::AnyHash + ) end sig do @@ -1210,7 +1260,10 @@ module OpenAI class Static < OpenAI::Internal::Type::BaseModel OrHash = T.type_alias do - T.any(T.self_type, OpenAI::Internal::AnyHash) + T.any( + OpenAI::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static::Static, + OpenAI::Internal::AnyHash + ) end # The number of tokens that overlap between chunks. The default value is `400`. @@ -1271,7 +1324,12 @@ module OpenAI class ToolResources < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::ThreadCreateAndRunParams::ToolResources, + OpenAI::Internal::AnyHash + ) + end sig do returns( @@ -1337,7 +1395,12 @@ module OpenAI class CodeInterpreter < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::ThreadCreateAndRunParams::ToolResources::CodeInterpreter, + OpenAI::Internal::AnyHash + ) + end # A list of [file](https://platform.openai.com/docs/api-reference/files) IDs made # available to the `code_interpreter` tool. There can be a maximum of 20 files @@ -1364,7 +1427,12 @@ module OpenAI class FileSearch < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::ThreadCreateAndRunParams::ToolResources::FileSearch, + OpenAI::Internal::AnyHash + ) + end # The ID of the # [vector store](https://platform.openai.com/docs/api-reference/vector-stores/object) @@ -1398,7 +1466,12 @@ module OpenAI class TruncationStrategy < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::ThreadCreateAndRunParams::TruncationStrategy, + OpenAI::Internal::AnyHash + ) + end # The truncation strategy to use for the thread. The default is `auto`. If set to # `last_messages`, the thread will be truncated to the n most recent messages in diff --git a/rbi/openai/models/beta/thread_create_params.rbi b/rbi/openai/models/beta/thread_create_params.rbi index fa4f781f..aa3692ba 100644 --- a/rbi/openai/models/beta/thread_create_params.rbi +++ b/rbi/openai/models/beta/thread_create_params.rbi @@ -7,7 +7,10 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(OpenAI::Beta::ThreadCreateParams, OpenAI::Internal::AnyHash) + end # A list of [messages](https://platform.openai.com/docs/api-reference/messages) to # start the thread with. @@ -100,7 +103,12 @@ module OpenAI class Message < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::ThreadCreateParams::Message, + OpenAI::Internal::AnyHash + ) + end # The text contents of the message. sig do @@ -298,7 +306,12 @@ module OpenAI class Attachment < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::ThreadCreateParams::Message::Attachment, + OpenAI::Internal::AnyHash + ) + end # The ID of the file to attach to the message. sig { returns(T.nilable(String)) } @@ -385,7 +398,12 @@ module OpenAI class FileSearch < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::ThreadCreateParams::Message::Attachment::Tool::FileSearch, + OpenAI::Internal::AnyHash + ) + end # The type of tool being defined: `file_search` sig { returns(Symbol) } @@ -418,7 +436,12 @@ module OpenAI class ToolResources < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::ThreadCreateParams::ToolResources, + OpenAI::Internal::AnyHash + ) + end sig do returns( @@ -484,7 +507,12 @@ module OpenAI class CodeInterpreter < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::ThreadCreateParams::ToolResources::CodeInterpreter, + OpenAI::Internal::AnyHash + ) + end # A list of [file](https://platform.openai.com/docs/api-reference/files) IDs made # available to the `code_interpreter` tool. There can be a maximum of 20 files @@ -511,7 +539,12 @@ module OpenAI class FileSearch < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::ThreadCreateParams::ToolResources::FileSearch, + OpenAI::Internal::AnyHash + ) + end # The # [vector store](https://platform.openai.com/docs/api-reference/vector-stores/object) @@ -587,7 +620,12 @@ module OpenAI class VectorStore < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore, + OpenAI::Internal::AnyHash + ) + end # The chunking strategy used to chunk the file(s). If not set, will use the `auto` # strategy. @@ -693,7 +731,10 @@ module OpenAI class Auto < OpenAI::Internal::Type::BaseModel OrHash = T.type_alias do - T.any(T.self_type, OpenAI::Internal::AnyHash) + T.any( + OpenAI::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Auto, + OpenAI::Internal::AnyHash + ) end # Always `auto`. @@ -717,7 +758,10 @@ module OpenAI class Static < OpenAI::Internal::Type::BaseModel OrHash = T.type_alias do - T.any(T.self_type, OpenAI::Internal::AnyHash) + T.any( + OpenAI::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static, + OpenAI::Internal::AnyHash + ) end sig do @@ -768,7 +812,10 @@ module OpenAI class Static < OpenAI::Internal::Type::BaseModel OrHash = T.type_alias do - T.any(T.self_type, OpenAI::Internal::AnyHash) + T.any( + OpenAI::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static::Static, + OpenAI::Internal::AnyHash + ) end # The number of tokens that overlap between chunks. The default value is `400`. diff --git a/rbi/openai/models/beta/thread_delete_params.rbi b/rbi/openai/models/beta/thread_delete_params.rbi index 6b2c04ba..0909624a 100644 --- a/rbi/openai/models/beta/thread_delete_params.rbi +++ b/rbi/openai/models/beta/thread_delete_params.rbi @@ -7,7 +7,10 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(OpenAI::Beta::ThreadDeleteParams, OpenAI::Internal::AnyHash) + end sig do params(request_options: OpenAI::RequestOptions::OrHash).returns( diff --git a/rbi/openai/models/beta/thread_deleted.rbi b/rbi/openai/models/beta/thread_deleted.rbi index c648d9ac..62402b00 100644 --- a/rbi/openai/models/beta/thread_deleted.rbi +++ b/rbi/openai/models/beta/thread_deleted.rbi @@ -4,7 +4,10 @@ module OpenAI module Models module Beta class ThreadDeleted < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(OpenAI::Beta::ThreadDeleted, OpenAI::Internal::AnyHash) + end sig { returns(String) } attr_accessor :id diff --git a/rbi/openai/models/beta/thread_retrieve_params.rbi b/rbi/openai/models/beta/thread_retrieve_params.rbi index 64fd5cd2..8e36a4e7 100644 --- a/rbi/openai/models/beta/thread_retrieve_params.rbi +++ b/rbi/openai/models/beta/thread_retrieve_params.rbi @@ -7,7 +7,10 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(OpenAI::Beta::ThreadRetrieveParams, OpenAI::Internal::AnyHash) + end sig do params(request_options: OpenAI::RequestOptions::OrHash).returns( diff --git a/rbi/openai/models/beta/thread_stream_event.rbi b/rbi/openai/models/beta/thread_stream_event.rbi index cd6d25a0..4674c89f 100644 --- a/rbi/openai/models/beta/thread_stream_event.rbi +++ b/rbi/openai/models/beta/thread_stream_event.rbi @@ -4,7 +4,10 @@ module OpenAI module Models module Beta class ThreadStreamEvent < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(OpenAI::Beta::ThreadStreamEvent, OpenAI::Internal::AnyHash) + end # Represents a thread that contains # [messages](https://platform.openai.com/docs/api-reference/messages). diff --git a/rbi/openai/models/beta/thread_update_params.rbi b/rbi/openai/models/beta/thread_update_params.rbi index 4244ec93..8d9389b0 100644 --- a/rbi/openai/models/beta/thread_update_params.rbi +++ b/rbi/openai/models/beta/thread_update_params.rbi @@ -7,7 +7,10 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(OpenAI::Beta::ThreadUpdateParams, OpenAI::Internal::AnyHash) + end # 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 @@ -77,7 +80,12 @@ module OpenAI class ToolResources < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::ThreadUpdateParams::ToolResources, + OpenAI::Internal::AnyHash + ) + end sig do returns( @@ -143,7 +151,12 @@ module OpenAI class CodeInterpreter < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::ThreadUpdateParams::ToolResources::CodeInterpreter, + OpenAI::Internal::AnyHash + ) + end # A list of [file](https://platform.openai.com/docs/api-reference/files) IDs made # available to the `code_interpreter` tool. There can be a maximum of 20 files @@ -170,7 +183,12 @@ module OpenAI class FileSearch < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::ThreadUpdateParams::ToolResources::FileSearch, + OpenAI::Internal::AnyHash + ) + end # The # [vector store](https://platform.openai.com/docs/api-reference/vector-stores/object) diff --git a/rbi/openai/models/beta/threads/file_citation_annotation.rbi b/rbi/openai/models/beta/threads/file_citation_annotation.rbi index 2fcaeee0..09c69d08 100644 --- a/rbi/openai/models/beta/threads/file_citation_annotation.rbi +++ b/rbi/openai/models/beta/threads/file_citation_annotation.rbi @@ -6,7 +6,12 @@ module OpenAI module Threads class FileCitationAnnotation < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::Threads::FileCitationAnnotation, + OpenAI::Internal::AnyHash + ) + end sig { returns(Integer) } attr_accessor :end_index @@ -76,7 +81,12 @@ module OpenAI class FileCitation < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::Threads::FileCitationAnnotation::FileCitation, + OpenAI::Internal::AnyHash + ) + end # The ID of the specific File the citation is from. sig { returns(String) } diff --git a/rbi/openai/models/beta/threads/file_citation_delta_annotation.rbi b/rbi/openai/models/beta/threads/file_citation_delta_annotation.rbi index 33d0dab1..574352cd 100644 --- a/rbi/openai/models/beta/threads/file_citation_delta_annotation.rbi +++ b/rbi/openai/models/beta/threads/file_citation_delta_annotation.rbi @@ -6,7 +6,12 @@ module OpenAI module Threads class FileCitationDeltaAnnotation < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::Threads::FileCitationDeltaAnnotation, + OpenAI::Internal::AnyHash + ) + end # The index of the annotation in the text content part. sig { returns(Integer) } @@ -97,7 +102,12 @@ module OpenAI class FileCitation < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::Threads::FileCitationDeltaAnnotation::FileCitation, + OpenAI::Internal::AnyHash + ) + end # The ID of the specific File the citation is from. sig { returns(T.nilable(String)) } diff --git a/rbi/openai/models/beta/threads/file_path_annotation.rbi b/rbi/openai/models/beta/threads/file_path_annotation.rbi index 1a6776cb..6c989044 100644 --- a/rbi/openai/models/beta/threads/file_path_annotation.rbi +++ b/rbi/openai/models/beta/threads/file_path_annotation.rbi @@ -6,7 +6,12 @@ module OpenAI module Threads class FilePathAnnotation < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::Threads::FilePathAnnotation, + OpenAI::Internal::AnyHash + ) + end sig { returns(Integer) } attr_accessor :end_index @@ -72,7 +77,12 @@ module OpenAI class FilePath < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::Threads::FilePathAnnotation::FilePath, + OpenAI::Internal::AnyHash + ) + end # The ID of the file that was generated. sig { returns(String) } diff --git a/rbi/openai/models/beta/threads/file_path_delta_annotation.rbi b/rbi/openai/models/beta/threads/file_path_delta_annotation.rbi index d8fa4d69..437a2151 100644 --- a/rbi/openai/models/beta/threads/file_path_delta_annotation.rbi +++ b/rbi/openai/models/beta/threads/file_path_delta_annotation.rbi @@ -6,7 +6,12 @@ module OpenAI module Threads class FilePathDeltaAnnotation < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::Threads::FilePathDeltaAnnotation, + OpenAI::Internal::AnyHash + ) + end # The index of the annotation in the text content part. sig { returns(Integer) } @@ -96,7 +101,12 @@ module OpenAI class FilePath < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::Threads::FilePathDeltaAnnotation::FilePath, + OpenAI::Internal::AnyHash + ) + end # The ID of the file that was generated. sig { returns(T.nilable(String)) } diff --git a/rbi/openai/models/beta/threads/image_file.rbi b/rbi/openai/models/beta/threads/image_file.rbi index 78802b93..2c805eae 100644 --- a/rbi/openai/models/beta/threads/image_file.rbi +++ b/rbi/openai/models/beta/threads/image_file.rbi @@ -6,7 +6,9 @@ module OpenAI module Threads class ImageFile < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any(OpenAI::Beta::Threads::ImageFile, OpenAI::Internal::AnyHash) + end # The [File](https://platform.openai.com/docs/api-reference/files) ID of the image # in the message content. Set `purpose="vision"` when uploading the File if you diff --git a/rbi/openai/models/beta/threads/image_file_content_block.rbi b/rbi/openai/models/beta/threads/image_file_content_block.rbi index 8ff6beaa..407bd31a 100644 --- a/rbi/openai/models/beta/threads/image_file_content_block.rbi +++ b/rbi/openai/models/beta/threads/image_file_content_block.rbi @@ -6,7 +6,12 @@ module OpenAI module Threads class ImageFileContentBlock < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::Threads::ImageFileContentBlock, + OpenAI::Internal::AnyHash + ) + end sig { returns(OpenAI::Beta::Threads::ImageFile) } attr_reader :image_file diff --git a/rbi/openai/models/beta/threads/image_file_delta.rbi b/rbi/openai/models/beta/threads/image_file_delta.rbi index 33be5605..86951221 100644 --- a/rbi/openai/models/beta/threads/image_file_delta.rbi +++ b/rbi/openai/models/beta/threads/image_file_delta.rbi @@ -6,7 +6,12 @@ module OpenAI module Threads class ImageFileDelta < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::Threads::ImageFileDelta, + OpenAI::Internal::AnyHash + ) + end # Specifies the detail level of the image if specified by the user. `low` uses # fewer tokens, you can opt in to high resolution using `high`. diff --git a/rbi/openai/models/beta/threads/image_file_delta_block.rbi b/rbi/openai/models/beta/threads/image_file_delta_block.rbi index ea1914cc..9efa65de 100644 --- a/rbi/openai/models/beta/threads/image_file_delta_block.rbi +++ b/rbi/openai/models/beta/threads/image_file_delta_block.rbi @@ -6,7 +6,12 @@ module OpenAI module Threads class ImageFileDeltaBlock < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::Threads::ImageFileDeltaBlock, + OpenAI::Internal::AnyHash + ) + end # The index of the content part in the message. sig { returns(Integer) } diff --git a/rbi/openai/models/beta/threads/image_url.rbi b/rbi/openai/models/beta/threads/image_url.rbi index 04b0f75d..52f2c4ad 100644 --- a/rbi/openai/models/beta/threads/image_url.rbi +++ b/rbi/openai/models/beta/threads/image_url.rbi @@ -6,7 +6,9 @@ module OpenAI module Threads class ImageURL < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any(OpenAI::Beta::Threads::ImageURL, OpenAI::Internal::AnyHash) + end # The external URL of the image, must be a supported image types: jpeg, jpg, png, # gif, webp. diff --git a/rbi/openai/models/beta/threads/image_url_content_block.rbi b/rbi/openai/models/beta/threads/image_url_content_block.rbi index b2e47c68..eeaa7a8d 100644 --- a/rbi/openai/models/beta/threads/image_url_content_block.rbi +++ b/rbi/openai/models/beta/threads/image_url_content_block.rbi @@ -6,7 +6,12 @@ module OpenAI module Threads class ImageURLContentBlock < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::Threads::ImageURLContentBlock, + OpenAI::Internal::AnyHash + ) + end sig { returns(OpenAI::Beta::Threads::ImageURL) } attr_reader :image_url diff --git a/rbi/openai/models/beta/threads/image_url_delta.rbi b/rbi/openai/models/beta/threads/image_url_delta.rbi index a742d53f..b760eefa 100644 --- a/rbi/openai/models/beta/threads/image_url_delta.rbi +++ b/rbi/openai/models/beta/threads/image_url_delta.rbi @@ -6,7 +6,12 @@ module OpenAI module Threads class ImageURLDelta < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::Threads::ImageURLDelta, + OpenAI::Internal::AnyHash + ) + end # Specifies the detail level of the image. `low` uses fewer tokens, you can opt in # to high resolution using `high`. diff --git a/rbi/openai/models/beta/threads/image_url_delta_block.rbi b/rbi/openai/models/beta/threads/image_url_delta_block.rbi index e2cc3d25..0a4c523c 100644 --- a/rbi/openai/models/beta/threads/image_url_delta_block.rbi +++ b/rbi/openai/models/beta/threads/image_url_delta_block.rbi @@ -6,7 +6,12 @@ module OpenAI module Threads class ImageURLDeltaBlock < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::Threads::ImageURLDeltaBlock, + OpenAI::Internal::AnyHash + ) + end # The index of the content part in the message. sig { returns(Integer) } diff --git a/rbi/openai/models/beta/threads/message.rbi b/rbi/openai/models/beta/threads/message.rbi index 02bd3c97..82120763 100644 --- a/rbi/openai/models/beta/threads/message.rbi +++ b/rbi/openai/models/beta/threads/message.rbi @@ -6,7 +6,9 @@ module OpenAI module Threads class Message < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any(OpenAI::Beta::Threads::Message, OpenAI::Internal::AnyHash) + end # The identifier, which can be referenced in API endpoints. sig { returns(String) } @@ -218,7 +220,12 @@ module OpenAI class Attachment < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::Threads::Message::Attachment, + OpenAI::Internal::AnyHash + ) + end # The ID of the file to attach to the message. sig { returns(T.nilable(String)) } @@ -305,7 +312,12 @@ module OpenAI class AssistantToolsFileSearchTypeOnly < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::Threads::Message::Attachment::Tool::AssistantToolsFileSearchTypeOnly, + OpenAI::Internal::AnyHash + ) + end # The type of tool being defined: `file_search` sig { returns(Symbol) } @@ -337,7 +349,12 @@ module OpenAI class IncompleteDetails < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::Threads::Message::IncompleteDetails, + OpenAI::Internal::AnyHash + ) + end # The reason the message is incomplete. sig do diff --git a/rbi/openai/models/beta/threads/message_create_params.rbi b/rbi/openai/models/beta/threads/message_create_params.rbi index 60fb47c0..4e6416b0 100644 --- a/rbi/openai/models/beta/threads/message_create_params.rbi +++ b/rbi/openai/models/beta/threads/message_create_params.rbi @@ -9,7 +9,12 @@ module OpenAI include OpenAI::Internal::Type::RequestParameters OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::Threads::MessageCreateParams, + OpenAI::Internal::AnyHash + ) + end # The text contents of the message. sig do @@ -211,7 +216,12 @@ module OpenAI class Attachment < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::Threads::MessageCreateParams::Attachment, + OpenAI::Internal::AnyHash + ) + end # The ID of the file to attach to the message. sig { returns(T.nilable(String)) } @@ -298,7 +308,12 @@ module OpenAI class FileSearch < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::Threads::MessageCreateParams::Attachment::Tool::FileSearch, + OpenAI::Internal::AnyHash + ) + end # The type of tool being defined: `file_search` sig { returns(Symbol) } diff --git a/rbi/openai/models/beta/threads/message_delete_params.rbi b/rbi/openai/models/beta/threads/message_delete_params.rbi index 0811af43..9c875c22 100644 --- a/rbi/openai/models/beta/threads/message_delete_params.rbi +++ b/rbi/openai/models/beta/threads/message_delete_params.rbi @@ -9,7 +9,12 @@ module OpenAI include OpenAI::Internal::Type::RequestParameters OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::Threads::MessageDeleteParams, + OpenAI::Internal::AnyHash + ) + end sig { returns(String) } attr_accessor :thread_id diff --git a/rbi/openai/models/beta/threads/message_deleted.rbi b/rbi/openai/models/beta/threads/message_deleted.rbi index 73805106..d794d043 100644 --- a/rbi/openai/models/beta/threads/message_deleted.rbi +++ b/rbi/openai/models/beta/threads/message_deleted.rbi @@ -6,7 +6,12 @@ module OpenAI module Threads class MessageDeleted < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::Threads::MessageDeleted, + OpenAI::Internal::AnyHash + ) + end sig { returns(String) } attr_accessor :id diff --git a/rbi/openai/models/beta/threads/message_delta.rbi b/rbi/openai/models/beta/threads/message_delta.rbi index 7278f6d3..f234666f 100644 --- a/rbi/openai/models/beta/threads/message_delta.rbi +++ b/rbi/openai/models/beta/threads/message_delta.rbi @@ -6,7 +6,12 @@ module OpenAI module Threads class MessageDelta < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::Threads::MessageDelta, + OpenAI::Internal::AnyHash + ) + end # The content of the message in array of text and/or images. sig do diff --git a/rbi/openai/models/beta/threads/message_delta_event.rbi b/rbi/openai/models/beta/threads/message_delta_event.rbi index 4a93d6d2..9dc95d52 100644 --- a/rbi/openai/models/beta/threads/message_delta_event.rbi +++ b/rbi/openai/models/beta/threads/message_delta_event.rbi @@ -6,7 +6,12 @@ module OpenAI module Threads class MessageDeltaEvent < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::Threads::MessageDeltaEvent, + OpenAI::Internal::AnyHash + ) + end # The identifier of the message, which can be referenced in API endpoints. sig { returns(String) } diff --git a/rbi/openai/models/beta/threads/message_list_params.rbi b/rbi/openai/models/beta/threads/message_list_params.rbi index 158f377d..7873262c 100644 --- a/rbi/openai/models/beta/threads/message_list_params.rbi +++ b/rbi/openai/models/beta/threads/message_list_params.rbi @@ -9,7 +9,12 @@ module OpenAI include OpenAI::Internal::Type::RequestParameters OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::Threads::MessageListParams, + OpenAI::Internal::AnyHash + ) + end # A cursor for use in pagination. `after` is an object ID that defines your place # in the list. For instance, if you make a list request and receive 100 objects, diff --git a/rbi/openai/models/beta/threads/message_retrieve_params.rbi b/rbi/openai/models/beta/threads/message_retrieve_params.rbi index 4a7da6f0..c0d12ba0 100644 --- a/rbi/openai/models/beta/threads/message_retrieve_params.rbi +++ b/rbi/openai/models/beta/threads/message_retrieve_params.rbi @@ -9,7 +9,12 @@ module OpenAI include OpenAI::Internal::Type::RequestParameters OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::Threads::MessageRetrieveParams, + OpenAI::Internal::AnyHash + ) + end sig { returns(String) } attr_accessor :thread_id diff --git a/rbi/openai/models/beta/threads/message_update_params.rbi b/rbi/openai/models/beta/threads/message_update_params.rbi index ecbd63ee..767a7340 100644 --- a/rbi/openai/models/beta/threads/message_update_params.rbi +++ b/rbi/openai/models/beta/threads/message_update_params.rbi @@ -9,7 +9,12 @@ module OpenAI include OpenAI::Internal::Type::RequestParameters OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::Threads::MessageUpdateParams, + OpenAI::Internal::AnyHash + ) + end sig { returns(String) } attr_accessor :thread_id diff --git a/rbi/openai/models/beta/threads/refusal_content_block.rbi b/rbi/openai/models/beta/threads/refusal_content_block.rbi index 96ddb8b1..24ad27e7 100644 --- a/rbi/openai/models/beta/threads/refusal_content_block.rbi +++ b/rbi/openai/models/beta/threads/refusal_content_block.rbi @@ -6,7 +6,12 @@ module OpenAI module Threads class RefusalContentBlock < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::Threads::RefusalContentBlock, + OpenAI::Internal::AnyHash + ) + end sig { returns(String) } attr_accessor :refusal diff --git a/rbi/openai/models/beta/threads/refusal_delta_block.rbi b/rbi/openai/models/beta/threads/refusal_delta_block.rbi index c6854430..7fe5eed0 100644 --- a/rbi/openai/models/beta/threads/refusal_delta_block.rbi +++ b/rbi/openai/models/beta/threads/refusal_delta_block.rbi @@ -6,7 +6,12 @@ module OpenAI module Threads class RefusalDeltaBlock < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::Threads::RefusalDeltaBlock, + OpenAI::Internal::AnyHash + ) + end # The index of the refusal part in the message. sig { returns(Integer) } diff --git a/rbi/openai/models/beta/threads/required_action_function_tool_call.rbi b/rbi/openai/models/beta/threads/required_action_function_tool_call.rbi index c2625cd6..c92a1e83 100644 --- a/rbi/openai/models/beta/threads/required_action_function_tool_call.rbi +++ b/rbi/openai/models/beta/threads/required_action_function_tool_call.rbi @@ -6,7 +6,12 @@ module OpenAI module Threads class RequiredActionFunctionToolCall < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::Threads::RequiredActionFunctionToolCall, + OpenAI::Internal::AnyHash + ) + end # The ID of the tool call. This ID must be referenced when you submit the tool # outputs in using the @@ -74,7 +79,12 @@ module OpenAI class Function < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::Threads::RequiredActionFunctionToolCall::Function, + OpenAI::Internal::AnyHash + ) + end # The arguments that the model expects you to pass to the function. sig { returns(String) } diff --git a/rbi/openai/models/beta/threads/run.rbi b/rbi/openai/models/beta/threads/run.rbi index c769a3f6..aba1382a 100644 --- a/rbi/openai/models/beta/threads/run.rbi +++ b/rbi/openai/models/beta/threads/run.rbi @@ -6,7 +6,9 @@ module OpenAI module Threads class Run < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any(OpenAI::Beta::Threads::Run, OpenAI::Internal::AnyHash) + end # The identifier, which can be referenced in API endpoints. sig { returns(String) } @@ -471,7 +473,12 @@ module OpenAI class IncompleteDetails < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::Threads::Run::IncompleteDetails, + OpenAI::Internal::AnyHash + ) + end # The reason why the run is incomplete. This will point to which specific token # limit was reached over the course of the run. @@ -557,7 +564,12 @@ module OpenAI class LastError < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::Threads::Run::LastError, + OpenAI::Internal::AnyHash + ) + end # One of `server_error`, `rate_limit_exceeded`, or `invalid_prompt`. sig do @@ -636,7 +648,12 @@ module OpenAI class RequiredAction < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::Threads::Run::RequiredAction, + OpenAI::Internal::AnyHash + ) + end # Details on the tool outputs needed for this run to continue. sig do @@ -689,7 +706,12 @@ module OpenAI class SubmitToolOutputs < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::Threads::Run::RequiredAction::SubmitToolOutputs, + OpenAI::Internal::AnyHash + ) + end # A list of the relevant tool calls. sig do @@ -733,7 +755,12 @@ module OpenAI class TruncationStrategy < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::Threads::Run::TruncationStrategy, + OpenAI::Internal::AnyHash + ) + end # The truncation strategy to use for the thread. The default is `auto`. If set to # `last_messages`, the thread will be truncated to the n most recent messages in @@ -825,7 +852,12 @@ module OpenAI class Usage < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::Threads::Run::Usage, + OpenAI::Internal::AnyHash + ) + end # Number of completion tokens used over the course of the run. sig { returns(Integer) } diff --git a/rbi/openai/models/beta/threads/run_cancel_params.rbi b/rbi/openai/models/beta/threads/run_cancel_params.rbi index 1101750b..3879ca2b 100644 --- a/rbi/openai/models/beta/threads/run_cancel_params.rbi +++ b/rbi/openai/models/beta/threads/run_cancel_params.rbi @@ -9,7 +9,12 @@ module OpenAI include OpenAI::Internal::Type::RequestParameters OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::Threads::RunCancelParams, + OpenAI::Internal::AnyHash + ) + end sig { returns(String) } attr_accessor :thread_id diff --git a/rbi/openai/models/beta/threads/run_create_params.rbi b/rbi/openai/models/beta/threads/run_create_params.rbi index 85823188..7e4e98e4 100644 --- a/rbi/openai/models/beta/threads/run_create_params.rbi +++ b/rbi/openai/models/beta/threads/run_create_params.rbi @@ -9,7 +9,12 @@ module OpenAI include OpenAI::Internal::Type::RequestParameters OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::Threads::RunCreateParams, + OpenAI::Internal::AnyHash + ) + end # The ID of the # [assistant](https://platform.openai.com/docs/api-reference/assistants) to use to @@ -444,7 +449,12 @@ module OpenAI class AdditionalMessage < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::Threads::RunCreateParams::AdditionalMessage, + OpenAI::Internal::AnyHash + ) + end # The text contents of the message. sig do @@ -651,7 +661,12 @@ module OpenAI class Attachment < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::Threads::RunCreateParams::AdditionalMessage::Attachment, + OpenAI::Internal::AnyHash + ) + end # The ID of the file to attach to the message. sig { returns(T.nilable(String)) } @@ -739,7 +754,10 @@ module OpenAI class FileSearch < OpenAI::Internal::Type::BaseModel OrHash = T.type_alias do - T.any(T.self_type, OpenAI::Internal::AnyHash) + T.any( + OpenAI::Beta::Threads::RunCreateParams::AdditionalMessage::Attachment::Tool::FileSearch, + OpenAI::Internal::AnyHash + ) end # The type of tool being defined: `file_search` @@ -794,7 +812,12 @@ module OpenAI class TruncationStrategy < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::Threads::RunCreateParams::TruncationStrategy, + OpenAI::Internal::AnyHash + ) + end # The truncation strategy to use for the thread. The default is `auto`. If set to # `last_messages`, the thread will be truncated to the n most recent messages in diff --git a/rbi/openai/models/beta/threads/run_list_params.rbi b/rbi/openai/models/beta/threads/run_list_params.rbi index a8904daf..b5cefecb 100644 --- a/rbi/openai/models/beta/threads/run_list_params.rbi +++ b/rbi/openai/models/beta/threads/run_list_params.rbi @@ -9,7 +9,12 @@ module OpenAI include OpenAI::Internal::Type::RequestParameters OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::Threads::RunListParams, + OpenAI::Internal::AnyHash + ) + end # A cursor for use in pagination. `after` is an object ID that defines your place # in the list. For instance, if you make a list request and receive 100 objects, diff --git a/rbi/openai/models/beta/threads/run_retrieve_params.rbi b/rbi/openai/models/beta/threads/run_retrieve_params.rbi index de4d56da..0d257698 100644 --- a/rbi/openai/models/beta/threads/run_retrieve_params.rbi +++ b/rbi/openai/models/beta/threads/run_retrieve_params.rbi @@ -9,7 +9,12 @@ module OpenAI include OpenAI::Internal::Type::RequestParameters OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::Threads::RunRetrieveParams, + OpenAI::Internal::AnyHash + ) + end sig { returns(String) } attr_accessor :thread_id diff --git a/rbi/openai/models/beta/threads/run_submit_tool_outputs_params.rbi b/rbi/openai/models/beta/threads/run_submit_tool_outputs_params.rbi index 9be1a4b3..490d18a2 100644 --- a/rbi/openai/models/beta/threads/run_submit_tool_outputs_params.rbi +++ b/rbi/openai/models/beta/threads/run_submit_tool_outputs_params.rbi @@ -9,7 +9,12 @@ module OpenAI include OpenAI::Internal::Type::RequestParameters OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::Threads::RunSubmitToolOutputsParams, + OpenAI::Internal::AnyHash + ) + end sig { returns(String) } attr_accessor :thread_id @@ -59,7 +64,12 @@ module OpenAI class ToolOutput < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::Threads::RunSubmitToolOutputsParams::ToolOutput, + OpenAI::Internal::AnyHash + ) + end # The output of the tool call to be submitted to continue the run. sig { returns(T.nilable(String)) } diff --git a/rbi/openai/models/beta/threads/run_update_params.rbi b/rbi/openai/models/beta/threads/run_update_params.rbi index c99a7cf2..f92b8cea 100644 --- a/rbi/openai/models/beta/threads/run_update_params.rbi +++ b/rbi/openai/models/beta/threads/run_update_params.rbi @@ -9,7 +9,12 @@ module OpenAI include OpenAI::Internal::Type::RequestParameters OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::Threads::RunUpdateParams, + OpenAI::Internal::AnyHash + ) + end sig { returns(String) } attr_accessor :thread_id diff --git a/rbi/openai/models/beta/threads/runs/code_interpreter_logs.rbi b/rbi/openai/models/beta/threads/runs/code_interpreter_logs.rbi index a48e0434..06eb6486 100644 --- a/rbi/openai/models/beta/threads/runs/code_interpreter_logs.rbi +++ b/rbi/openai/models/beta/threads/runs/code_interpreter_logs.rbi @@ -7,7 +7,12 @@ module OpenAI module Runs class CodeInterpreterLogs < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::Threads::Runs::CodeInterpreterLogs, + OpenAI::Internal::AnyHash + ) + end # The index of the output in the outputs array. sig { returns(Integer) } diff --git a/rbi/openai/models/beta/threads/runs/code_interpreter_output_image.rbi b/rbi/openai/models/beta/threads/runs/code_interpreter_output_image.rbi index 67c7e444..52c083be 100644 --- a/rbi/openai/models/beta/threads/runs/code_interpreter_output_image.rbi +++ b/rbi/openai/models/beta/threads/runs/code_interpreter_output_image.rbi @@ -7,7 +7,12 @@ module OpenAI module Runs class CodeInterpreterOutputImage < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::Threads::Runs::CodeInterpreterOutputImage, + OpenAI::Internal::AnyHash + ) + end # The index of the output in the outputs array. sig { returns(Integer) } @@ -66,7 +71,12 @@ module OpenAI class Image < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::Threads::Runs::CodeInterpreterOutputImage::Image, + OpenAI::Internal::AnyHash + ) + end # The [file](https://platform.openai.com/docs/api-reference/files) ID of the # image. diff --git a/rbi/openai/models/beta/threads/runs/code_interpreter_tool_call.rbi b/rbi/openai/models/beta/threads/runs/code_interpreter_tool_call.rbi index a1829caf..2989b129 100644 --- a/rbi/openai/models/beta/threads/runs/code_interpreter_tool_call.rbi +++ b/rbi/openai/models/beta/threads/runs/code_interpreter_tool_call.rbi @@ -7,7 +7,12 @@ module OpenAI module Runs class CodeInterpreterToolCall < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::Threads::Runs::CodeInterpreterToolCall, + OpenAI::Internal::AnyHash + ) + end # The ID of the tool call. sig { returns(String) } @@ -69,7 +74,12 @@ module OpenAI class CodeInterpreter < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::Threads::Runs::CodeInterpreterToolCall::CodeInterpreter, + OpenAI::Internal::AnyHash + ) + end # The input to the Code Interpreter tool call. sig { returns(String) } @@ -145,7 +155,10 @@ module OpenAI class Logs < OpenAI::Internal::Type::BaseModel OrHash = T.type_alias do - T.any(T.self_type, OpenAI::Internal::AnyHash) + T.any( + OpenAI::Beta::Threads::Runs::CodeInterpreterToolCall::CodeInterpreter::Output::Logs, + OpenAI::Internal::AnyHash + ) end # The text output from the Code Interpreter tool call. @@ -176,7 +189,10 @@ module OpenAI class Image < OpenAI::Internal::Type::BaseModel OrHash = T.type_alias do - T.any(T.self_type, OpenAI::Internal::AnyHash) + T.any( + OpenAI::Beta::Threads::Runs::CodeInterpreterToolCall::CodeInterpreter::Output::Image, + OpenAI::Internal::AnyHash + ) end sig do @@ -227,7 +243,10 @@ module OpenAI class Image < OpenAI::Internal::Type::BaseModel OrHash = T.type_alias do - T.any(T.self_type, OpenAI::Internal::AnyHash) + T.any( + OpenAI::Beta::Threads::Runs::CodeInterpreterToolCall::CodeInterpreter::Output::Image::Image, + OpenAI::Internal::AnyHash + ) end # The [file](https://platform.openai.com/docs/api-reference/files) ID of the diff --git a/rbi/openai/models/beta/threads/runs/code_interpreter_tool_call_delta.rbi b/rbi/openai/models/beta/threads/runs/code_interpreter_tool_call_delta.rbi index b1bb2cf1..028059df 100644 --- a/rbi/openai/models/beta/threads/runs/code_interpreter_tool_call_delta.rbi +++ b/rbi/openai/models/beta/threads/runs/code_interpreter_tool_call_delta.rbi @@ -7,7 +7,12 @@ module OpenAI module Runs class CodeInterpreterToolCallDelta < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::Threads::Runs::CodeInterpreterToolCallDelta, + OpenAI::Internal::AnyHash + ) + end # The index of the tool call in the tool calls array. sig { returns(Integer) } @@ -82,7 +87,12 @@ module OpenAI class CodeInterpreter < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::Threads::Runs::CodeInterpreterToolCallDelta::CodeInterpreter, + OpenAI::Internal::AnyHash + ) + end # The input to the Code Interpreter tool call. sig { returns(T.nilable(String)) } diff --git a/rbi/openai/models/beta/threads/runs/file_search_tool_call.rbi b/rbi/openai/models/beta/threads/runs/file_search_tool_call.rbi index 6ca0cd80..343bec61 100644 --- a/rbi/openai/models/beta/threads/runs/file_search_tool_call.rbi +++ b/rbi/openai/models/beta/threads/runs/file_search_tool_call.rbi @@ -7,7 +7,12 @@ module OpenAI module Runs class FileSearchToolCall < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::Threads::Runs::FileSearchToolCall, + OpenAI::Internal::AnyHash + ) + end # The ID of the tool call object. sig { returns(String) } @@ -68,7 +73,12 @@ module OpenAI class FileSearch < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::Threads::Runs::FileSearchToolCall::FileSearch, + OpenAI::Internal::AnyHash + ) + end # The ranking options for the file search. sig do @@ -146,7 +156,12 @@ module OpenAI class RankingOptions < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::Threads::Runs::FileSearchToolCall::FileSearch::RankingOptions, + OpenAI::Internal::AnyHash + ) + end # The ranker to use for the file search. If not specified will use the `auto` # ranker. @@ -231,7 +246,12 @@ module OpenAI class Result < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::Threads::Runs::FileSearchToolCall::FileSearch::Result, + OpenAI::Internal::AnyHash + ) + end # The ID of the file that result was found in. sig { returns(String) } @@ -314,7 +334,10 @@ module OpenAI class Content < OpenAI::Internal::Type::BaseModel OrHash = T.type_alias do - T.any(T.self_type, OpenAI::Internal::AnyHash) + T.any( + OpenAI::Beta::Threads::Runs::FileSearchToolCall::FileSearch::Result::Content, + OpenAI::Internal::AnyHash + ) end # The text content of the file. diff --git a/rbi/openai/models/beta/threads/runs/file_search_tool_call_delta.rbi b/rbi/openai/models/beta/threads/runs/file_search_tool_call_delta.rbi index 62cd8cb2..78d5bb30 100644 --- a/rbi/openai/models/beta/threads/runs/file_search_tool_call_delta.rbi +++ b/rbi/openai/models/beta/threads/runs/file_search_tool_call_delta.rbi @@ -7,7 +7,12 @@ module OpenAI module Runs class FileSearchToolCallDelta < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::Threads::Runs::FileSearchToolCallDelta, + OpenAI::Internal::AnyHash + ) + end # For now, this is always going to be an empty object. sig { returns(T.anything) } diff --git a/rbi/openai/models/beta/threads/runs/function_tool_call.rbi b/rbi/openai/models/beta/threads/runs/function_tool_call.rbi index 90fa9db4..55ee8104 100644 --- a/rbi/openai/models/beta/threads/runs/function_tool_call.rbi +++ b/rbi/openai/models/beta/threads/runs/function_tool_call.rbi @@ -7,7 +7,12 @@ module OpenAI module Runs class FunctionToolCall < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::Threads::Runs::FunctionToolCall, + OpenAI::Internal::AnyHash + ) + end # The ID of the tool call object. sig { returns(String) } @@ -66,7 +71,12 @@ module OpenAI class Function < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::Threads::Runs::FunctionToolCall::Function, + OpenAI::Internal::AnyHash + ) + end # The arguments passed to the function. sig { returns(String) } diff --git a/rbi/openai/models/beta/threads/runs/function_tool_call_delta.rbi b/rbi/openai/models/beta/threads/runs/function_tool_call_delta.rbi index 8b3a5afa..73ec53a9 100644 --- a/rbi/openai/models/beta/threads/runs/function_tool_call_delta.rbi +++ b/rbi/openai/models/beta/threads/runs/function_tool_call_delta.rbi @@ -7,7 +7,12 @@ module OpenAI module Runs class FunctionToolCallDelta < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::Threads::Runs::FunctionToolCallDelta, + OpenAI::Internal::AnyHash + ) + end # The index of the tool call in the tool calls array. sig { returns(Integer) } @@ -81,7 +86,12 @@ module OpenAI class Function < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::Threads::Runs::FunctionToolCallDelta::Function, + OpenAI::Internal::AnyHash + ) + end # The arguments passed to the function. sig { returns(T.nilable(String)) } diff --git a/rbi/openai/models/beta/threads/runs/message_creation_step_details.rbi b/rbi/openai/models/beta/threads/runs/message_creation_step_details.rbi index 946fb84a..1c11f5d0 100644 --- a/rbi/openai/models/beta/threads/runs/message_creation_step_details.rbi +++ b/rbi/openai/models/beta/threads/runs/message_creation_step_details.rbi @@ -7,7 +7,12 @@ module OpenAI module Runs class MessageCreationStepDetails < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::Threads::Runs::MessageCreationStepDetails, + OpenAI::Internal::AnyHash + ) + end sig do returns( @@ -57,7 +62,12 @@ module OpenAI class MessageCreation < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::Threads::Runs::MessageCreationStepDetails::MessageCreation, + OpenAI::Internal::AnyHash + ) + end # The ID of the message that was created by this run step. sig { returns(String) } diff --git a/rbi/openai/models/beta/threads/runs/run_step.rbi b/rbi/openai/models/beta/threads/runs/run_step.rbi index 9555206e..1204d5fe 100644 --- a/rbi/openai/models/beta/threads/runs/run_step.rbi +++ b/rbi/openai/models/beta/threads/runs/run_step.rbi @@ -9,7 +9,12 @@ module OpenAI module Runs class RunStep < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::Threads::Runs::RunStep, + OpenAI::Internal::AnyHash + ) + end # The identifier of the run step, which can be referenced in API endpoints. sig { returns(String) } @@ -239,7 +244,12 @@ module OpenAI class LastError < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::Threads::Runs::RunStep::LastError, + OpenAI::Internal::AnyHash + ) + end # One of `server_error` or `rate_limit_exceeded`. sig do @@ -423,7 +433,12 @@ module OpenAI class Usage < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::Threads::Runs::RunStep::Usage, + OpenAI::Internal::AnyHash + ) + end # Number of completion tokens used over the course of the run step. sig { returns(Integer) } diff --git a/rbi/openai/models/beta/threads/runs/run_step_delta.rbi b/rbi/openai/models/beta/threads/runs/run_step_delta.rbi index 2f6d25e5..cbe1297d 100644 --- a/rbi/openai/models/beta/threads/runs/run_step_delta.rbi +++ b/rbi/openai/models/beta/threads/runs/run_step_delta.rbi @@ -9,7 +9,12 @@ module OpenAI module Runs class RunStepDelta < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::Threads::Runs::RunStepDelta, + OpenAI::Internal::AnyHash + ) + end # The details of the run step. sig do diff --git a/rbi/openai/models/beta/threads/runs/run_step_delta_event.rbi b/rbi/openai/models/beta/threads/runs/run_step_delta_event.rbi index 75d170fe..d3a77c15 100644 --- a/rbi/openai/models/beta/threads/runs/run_step_delta_event.rbi +++ b/rbi/openai/models/beta/threads/runs/run_step_delta_event.rbi @@ -9,7 +9,12 @@ module OpenAI module Runs class RunStepDeltaEvent < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::Threads::Runs::RunStepDeltaEvent, + OpenAI::Internal::AnyHash + ) + end # The identifier of the run step, which can be referenced in API endpoints. sig { returns(String) } diff --git a/rbi/openai/models/beta/threads/runs/run_step_delta_message_delta.rbi b/rbi/openai/models/beta/threads/runs/run_step_delta_message_delta.rbi index caad103a..b0304be4 100644 --- a/rbi/openai/models/beta/threads/runs/run_step_delta_message_delta.rbi +++ b/rbi/openai/models/beta/threads/runs/run_step_delta_message_delta.rbi @@ -9,7 +9,12 @@ module OpenAI module Runs class RunStepDeltaMessageDelta < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::Threads::Runs::RunStepDeltaMessageDelta, + OpenAI::Internal::AnyHash + ) + end # Always `message_creation`. sig { returns(Symbol) } @@ -61,7 +66,12 @@ module OpenAI class MessageCreation < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::Threads::Runs::RunStepDeltaMessageDelta::MessageCreation, + OpenAI::Internal::AnyHash + ) + end # The ID of the message that was created by this run step. sig { returns(T.nilable(String)) } diff --git a/rbi/openai/models/beta/threads/runs/step_list_params.rbi b/rbi/openai/models/beta/threads/runs/step_list_params.rbi index 013b8ef3..618a115d 100644 --- a/rbi/openai/models/beta/threads/runs/step_list_params.rbi +++ b/rbi/openai/models/beta/threads/runs/step_list_params.rbi @@ -10,7 +10,12 @@ module OpenAI include OpenAI::Internal::Type::RequestParameters OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::Threads::Runs::StepListParams, + OpenAI::Internal::AnyHash + ) + end sig { returns(String) } attr_accessor :thread_id diff --git a/rbi/openai/models/beta/threads/runs/step_retrieve_params.rbi b/rbi/openai/models/beta/threads/runs/step_retrieve_params.rbi index bb2bc31f..c1a7ae02 100644 --- a/rbi/openai/models/beta/threads/runs/step_retrieve_params.rbi +++ b/rbi/openai/models/beta/threads/runs/step_retrieve_params.rbi @@ -10,7 +10,12 @@ module OpenAI include OpenAI::Internal::Type::RequestParameters OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::Threads::Runs::StepRetrieveParams, + OpenAI::Internal::AnyHash + ) + end sig { returns(String) } attr_accessor :thread_id diff --git a/rbi/openai/models/beta/threads/runs/tool_call_delta_object.rbi b/rbi/openai/models/beta/threads/runs/tool_call_delta_object.rbi index 09699ee5..e034b7e3 100644 --- a/rbi/openai/models/beta/threads/runs/tool_call_delta_object.rbi +++ b/rbi/openai/models/beta/threads/runs/tool_call_delta_object.rbi @@ -7,7 +7,12 @@ module OpenAI module Runs class ToolCallDeltaObject < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::Threads::Runs::ToolCallDeltaObject, + OpenAI::Internal::AnyHash + ) + end # Always `tool_calls`. sig { returns(Symbol) } diff --git a/rbi/openai/models/beta/threads/runs/tool_calls_step_details.rbi b/rbi/openai/models/beta/threads/runs/tool_calls_step_details.rbi index b34c48e7..61ef18e1 100644 --- a/rbi/openai/models/beta/threads/runs/tool_calls_step_details.rbi +++ b/rbi/openai/models/beta/threads/runs/tool_calls_step_details.rbi @@ -7,7 +7,12 @@ module OpenAI module Runs class ToolCallsStepDetails < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::Threads::Runs::ToolCallsStepDetails, + OpenAI::Internal::AnyHash + ) + end # An array of tool calls the run step was involved in. These can be associated # with one of three types of tools: `code_interpreter`, `file_search`, or diff --git a/rbi/openai/models/beta/threads/text.rbi b/rbi/openai/models/beta/threads/text.rbi index 9827491d..25110168 100644 --- a/rbi/openai/models/beta/threads/text.rbi +++ b/rbi/openai/models/beta/threads/text.rbi @@ -6,7 +6,9 @@ module OpenAI module Threads class Text < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any(OpenAI::Beta::Threads::Text, OpenAI::Internal::AnyHash) + end sig do returns( diff --git a/rbi/openai/models/beta/threads/text_content_block.rbi b/rbi/openai/models/beta/threads/text_content_block.rbi index 7474675b..81340c03 100644 --- a/rbi/openai/models/beta/threads/text_content_block.rbi +++ b/rbi/openai/models/beta/threads/text_content_block.rbi @@ -6,7 +6,12 @@ module OpenAI module Threads class TextContentBlock < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::Threads::TextContentBlock, + OpenAI::Internal::AnyHash + ) + end sig { returns(OpenAI::Beta::Threads::Text) } attr_reader :text diff --git a/rbi/openai/models/beta/threads/text_content_block_param.rbi b/rbi/openai/models/beta/threads/text_content_block_param.rbi index d96847a2..4cdfec42 100644 --- a/rbi/openai/models/beta/threads/text_content_block_param.rbi +++ b/rbi/openai/models/beta/threads/text_content_block_param.rbi @@ -6,7 +6,12 @@ module OpenAI module Threads class TextContentBlockParam < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::Threads::TextContentBlockParam, + OpenAI::Internal::AnyHash + ) + end # Text content to be sent to the model sig { returns(String) } diff --git a/rbi/openai/models/beta/threads/text_delta.rbi b/rbi/openai/models/beta/threads/text_delta.rbi index cd39960e..546b0523 100644 --- a/rbi/openai/models/beta/threads/text_delta.rbi +++ b/rbi/openai/models/beta/threads/text_delta.rbi @@ -6,7 +6,9 @@ module OpenAI module Threads class TextDelta < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any(OpenAI::Beta::Threads::TextDelta, OpenAI::Internal::AnyHash) + end sig do returns( diff --git a/rbi/openai/models/beta/threads/text_delta_block.rbi b/rbi/openai/models/beta/threads/text_delta_block.rbi index 7de27ada..1d6a884a 100644 --- a/rbi/openai/models/beta/threads/text_delta_block.rbi +++ b/rbi/openai/models/beta/threads/text_delta_block.rbi @@ -6,7 +6,12 @@ module OpenAI module Threads class TextDeltaBlock < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Beta::Threads::TextDeltaBlock, + OpenAI::Internal::AnyHash + ) + end # The index of the content part in the message. sig { returns(Integer) } diff --git a/rbi/openai/models/chat/chat_completion.rbi b/rbi/openai/models/chat/chat_completion.rbi index 1e90aecc..c2353966 100644 --- a/rbi/openai/models/chat/chat_completion.rbi +++ b/rbi/openai/models/chat/chat_completion.rbi @@ -6,7 +6,10 @@ module OpenAI module Chat class ChatCompletion < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(OpenAI::Chat::ChatCompletion, OpenAI::Internal::AnyHash) + end # A unique identifier for the chat completion. sig { returns(String) } @@ -147,7 +150,12 @@ module OpenAI class Choice < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Chat::ChatCompletion::Choice, + OpenAI::Internal::AnyHash + ) + end # The reason the model stopped generating tokens. This will be `stop` if the model # hit a natural stop point or a provided stop sequence, `length` if the maximum @@ -292,7 +300,12 @@ module OpenAI class Logprobs < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Chat::ChatCompletion::Choice::Logprobs, + OpenAI::Internal::AnyHash + ) + end # A list of message content tokens with log probability information. sig do diff --git a/rbi/openai/models/chat/chat_completion_assistant_message_param.rbi b/rbi/openai/models/chat/chat_completion_assistant_message_param.rbi index b56149a1..2e10edd1 100644 --- a/rbi/openai/models/chat/chat_completion_assistant_message_param.rbi +++ b/rbi/openai/models/chat/chat_completion_assistant_message_param.rbi @@ -7,7 +7,13 @@ module OpenAI module Chat class ChatCompletionAssistantMessageParam < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::Chat::ChatCompletionAssistantMessageParam, + OpenAI::Internal::AnyHash + ) + end # The role of the messages author, in this case `assistant`. sig { returns(Symbol) } @@ -187,7 +193,12 @@ module OpenAI class Audio < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Chat::ChatCompletionAssistantMessageParam::Audio, + OpenAI::Internal::AnyHash + ) + end # Unique identifier for a previous audio response from the model. sig { returns(String) } @@ -271,7 +282,12 @@ module OpenAI class FunctionCall < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Chat::ChatCompletionAssistantMessageParam::FunctionCall, + OpenAI::Internal::AnyHash + ) + end # The arguments to call the function with, as generated by the model in JSON # format. Note that the model does not always generate valid JSON, and may diff --git a/rbi/openai/models/chat/chat_completion_audio.rbi b/rbi/openai/models/chat/chat_completion_audio.rbi index 34c22c71..59c400f9 100644 --- a/rbi/openai/models/chat/chat_completion_audio.rbi +++ b/rbi/openai/models/chat/chat_completion_audio.rbi @@ -6,7 +6,10 @@ module OpenAI module Chat class ChatCompletionAudio < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(OpenAI::Chat::ChatCompletionAudio, OpenAI::Internal::AnyHash) + end # Unique identifier for this audio response. sig { returns(String) } diff --git a/rbi/openai/models/chat/chat_completion_audio_param.rbi b/rbi/openai/models/chat/chat_completion_audio_param.rbi index 03887e62..49a3dd9d 100644 --- a/rbi/openai/models/chat/chat_completion_audio_param.rbi +++ b/rbi/openai/models/chat/chat_completion_audio_param.rbi @@ -6,7 +6,13 @@ module OpenAI module Chat class ChatCompletionAudioParam < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::Chat::ChatCompletionAudioParam, + OpenAI::Internal::AnyHash + ) + end # Specifies the output audio format. Must be one of `wav`, `mp3`, `flac`, `opus`, # or `pcm16`. diff --git a/rbi/openai/models/chat/chat_completion_chunk.rbi b/rbi/openai/models/chat/chat_completion_chunk.rbi index c495ed49..9d06ce7f 100644 --- a/rbi/openai/models/chat/chat_completion_chunk.rbi +++ b/rbi/openai/models/chat/chat_completion_chunk.rbi @@ -6,7 +6,10 @@ module OpenAI module Chat class ChatCompletionChunk < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(OpenAI::Chat::ChatCompletionChunk, OpenAI::Internal::AnyHash) + end # A unique identifier for the chat completion. Each chunk has the same ID. sig { returns(String) } @@ -167,7 +170,12 @@ module OpenAI class Choice < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Chat::ChatCompletionChunk::Choice, + OpenAI::Internal::AnyHash + ) + end # A chat completion delta generated by streamed model responses. sig { returns(OpenAI::Chat::ChatCompletionChunk::Choice::Delta) } @@ -267,7 +275,12 @@ module OpenAI class Delta < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Chat::ChatCompletionChunk::Choice::Delta, + OpenAI::Internal::AnyHash + ) + end # The contents of the chunk message. sig { returns(T.nilable(String)) } @@ -385,7 +398,12 @@ module OpenAI class FunctionCall < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Chat::ChatCompletionChunk::Choice::Delta::FunctionCall, + OpenAI::Internal::AnyHash + ) + end # The arguments to call the function with, as generated by the model in JSON # format. Note that the model does not always generate valid JSON, and may @@ -479,7 +497,12 @@ module OpenAI class ToolCall < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Chat::ChatCompletionChunk::Choice::Delta::ToolCall, + OpenAI::Internal::AnyHash + ) + end sig { returns(Integer) } attr_accessor :index @@ -563,7 +586,12 @@ module OpenAI class Function < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Chat::ChatCompletionChunk::Choice::Delta::ToolCall::Function, + OpenAI::Internal::AnyHash + ) + end # The arguments to call the function with, as generated by the model in JSON # format. Note that the model does not always generate valid JSON, and may @@ -692,7 +720,12 @@ module OpenAI class Logprobs < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Chat::ChatCompletionChunk::Choice::Logprobs, + OpenAI::Internal::AnyHash + ) + end # A list of message content tokens with log probability information. sig do diff --git a/rbi/openai/models/chat/chat_completion_content_part.rbi b/rbi/openai/models/chat/chat_completion_content_part.rbi index dbe8d522..33230ab9 100644 --- a/rbi/openai/models/chat/chat_completion_content_part.rbi +++ b/rbi/openai/models/chat/chat_completion_content_part.rbi @@ -22,7 +22,12 @@ module OpenAI class File < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Chat::ChatCompletionContentPart::File, + OpenAI::Internal::AnyHash + ) + end sig { returns(OpenAI::Chat::ChatCompletionContentPart::File::File) } attr_reader :file @@ -66,7 +71,12 @@ module OpenAI class File < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Chat::ChatCompletionContentPart::File::File, + OpenAI::Internal::AnyHash + ) + end # The base64 encoded file data, used when passing the file to the model as a # string. diff --git a/rbi/openai/models/chat/chat_completion_content_part_image.rbi b/rbi/openai/models/chat/chat_completion_content_part_image.rbi index 10b1a355..5c2ff978 100644 --- a/rbi/openai/models/chat/chat_completion_content_part_image.rbi +++ b/rbi/openai/models/chat/chat_completion_content_part_image.rbi @@ -6,7 +6,13 @@ module OpenAI module Chat class ChatCompletionContentPartImage < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::Chat::ChatCompletionContentPartImage, + OpenAI::Internal::AnyHash + ) + end sig { returns(OpenAI::Chat::ChatCompletionContentPartImage::ImageURL) } attr_reader :image_url @@ -51,7 +57,12 @@ module OpenAI class ImageURL < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Chat::ChatCompletionContentPartImage::ImageURL, + OpenAI::Internal::AnyHash + ) + end # Either a URL of the image or the base64 encoded image data. sig { returns(String) } diff --git a/rbi/openai/models/chat/chat_completion_content_part_input_audio.rbi b/rbi/openai/models/chat/chat_completion_content_part_input_audio.rbi index f1f1270c..addd6b5b 100644 --- a/rbi/openai/models/chat/chat_completion_content_part_input_audio.rbi +++ b/rbi/openai/models/chat/chat_completion_content_part_input_audio.rbi @@ -7,7 +7,13 @@ module OpenAI module Chat class ChatCompletionContentPartInputAudio < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::Chat::ChatCompletionContentPartInputAudio, + OpenAI::Internal::AnyHash + ) + end sig do returns(OpenAI::Chat::ChatCompletionContentPartInputAudio::InputAudio) @@ -55,7 +61,12 @@ module OpenAI class InputAudio < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Chat::ChatCompletionContentPartInputAudio::InputAudio, + OpenAI::Internal::AnyHash + ) + end # Base64 encoded audio data. sig { returns(String) } diff --git a/rbi/openai/models/chat/chat_completion_content_part_refusal.rbi b/rbi/openai/models/chat/chat_completion_content_part_refusal.rbi index 73724c93..8e6e0c55 100644 --- a/rbi/openai/models/chat/chat_completion_content_part_refusal.rbi +++ b/rbi/openai/models/chat/chat_completion_content_part_refusal.rbi @@ -6,7 +6,13 @@ module OpenAI module Chat class ChatCompletionContentPartRefusal < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::Chat::ChatCompletionContentPartRefusal, + OpenAI::Internal::AnyHash + ) + end # The refusal message generated by the model. sig { returns(String) } diff --git a/rbi/openai/models/chat/chat_completion_content_part_text.rbi b/rbi/openai/models/chat/chat_completion_content_part_text.rbi index 70aea8ec..c11d4932 100644 --- a/rbi/openai/models/chat/chat_completion_content_part_text.rbi +++ b/rbi/openai/models/chat/chat_completion_content_part_text.rbi @@ -6,7 +6,13 @@ module OpenAI module Chat class ChatCompletionContentPartText < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::Chat::ChatCompletionContentPartText, + OpenAI::Internal::AnyHash + ) + end # The text content. sig { returns(String) } diff --git a/rbi/openai/models/chat/chat_completion_deleted.rbi b/rbi/openai/models/chat/chat_completion_deleted.rbi index f63fdc1d..9edfdd85 100644 --- a/rbi/openai/models/chat/chat_completion_deleted.rbi +++ b/rbi/openai/models/chat/chat_completion_deleted.rbi @@ -6,7 +6,13 @@ module OpenAI module Chat class ChatCompletionDeleted < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::Chat::ChatCompletionDeleted, + OpenAI::Internal::AnyHash + ) + end # The ID of the chat completion that was deleted. sig { returns(String) } diff --git a/rbi/openai/models/chat/chat_completion_developer_message_param.rbi b/rbi/openai/models/chat/chat_completion_developer_message_param.rbi index 956aaabe..8326b4e7 100644 --- a/rbi/openai/models/chat/chat_completion_developer_message_param.rbi +++ b/rbi/openai/models/chat/chat_completion_developer_message_param.rbi @@ -7,7 +7,13 @@ module OpenAI module Chat class ChatCompletionDeveloperMessageParam < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::Chat::ChatCompletionDeveloperMessageParam, + OpenAI::Internal::AnyHash + ) + end # The contents of the developer message. sig do diff --git a/rbi/openai/models/chat/chat_completion_function_call_option.rbi b/rbi/openai/models/chat/chat_completion_function_call_option.rbi index 51a20194..bcccb328 100644 --- a/rbi/openai/models/chat/chat_completion_function_call_option.rbi +++ b/rbi/openai/models/chat/chat_completion_function_call_option.rbi @@ -6,7 +6,13 @@ module OpenAI module Chat class ChatCompletionFunctionCallOption < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::Chat::ChatCompletionFunctionCallOption, + OpenAI::Internal::AnyHash + ) + end # The name of the function to call. sig { returns(String) } diff --git a/rbi/openai/models/chat/chat_completion_function_message_param.rbi b/rbi/openai/models/chat/chat_completion_function_message_param.rbi index d5029286..3b7e878a 100644 --- a/rbi/openai/models/chat/chat_completion_function_message_param.rbi +++ b/rbi/openai/models/chat/chat_completion_function_message_param.rbi @@ -7,7 +7,13 @@ module OpenAI module Chat class ChatCompletionFunctionMessageParam < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::Chat::ChatCompletionFunctionMessageParam, + OpenAI::Internal::AnyHash + ) + end # The contents of the function message. sig { returns(T.nilable(String)) } diff --git a/rbi/openai/models/chat/chat_completion_message.rbi b/rbi/openai/models/chat/chat_completion_message.rbi index a7166480..85e74838 100644 --- a/rbi/openai/models/chat/chat_completion_message.rbi +++ b/rbi/openai/models/chat/chat_completion_message.rbi @@ -6,7 +6,13 @@ module OpenAI module Chat class ChatCompletionMessage < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::Chat::ChatCompletionMessage, + OpenAI::Internal::AnyHash + ) + end # The contents of the message. sig { returns(T.nilable(String)) } @@ -137,7 +143,12 @@ module OpenAI class Annotation < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Chat::ChatCompletionMessage::Annotation, + OpenAI::Internal::AnyHash + ) + end # The type of the URL citation. Always `url_citation`. sig { returns(Symbol) } @@ -189,7 +200,12 @@ module OpenAI class URLCitation < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Chat::ChatCompletionMessage::Annotation::URLCitation, + OpenAI::Internal::AnyHash + ) + end # The index of the last character of the URL citation in the message. sig { returns(Integer) } @@ -245,7 +261,12 @@ module OpenAI class FunctionCall < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Chat::ChatCompletionMessage::FunctionCall, + OpenAI::Internal::AnyHash + ) + end # The arguments to call the function with, as generated by the model in JSON # format. Note that the model does not always generate valid JSON, and may diff --git a/rbi/openai/models/chat/chat_completion_message_tool_call.rbi b/rbi/openai/models/chat/chat_completion_message_tool_call.rbi index 98f7b380..0e512346 100644 --- a/rbi/openai/models/chat/chat_completion_message_tool_call.rbi +++ b/rbi/openai/models/chat/chat_completion_message_tool_call.rbi @@ -6,7 +6,13 @@ module OpenAI module Chat class ChatCompletionMessageToolCall < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::Chat::ChatCompletionMessageToolCall, + OpenAI::Internal::AnyHash + ) + end # The ID of the tool call. sig { returns(String) } @@ -60,7 +66,12 @@ module OpenAI class Function < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Chat::ChatCompletionMessageToolCall::Function, + OpenAI::Internal::AnyHash + ) + end # The arguments to call the function with, as generated by the model in JSON # format. Note that the model does not always generate valid JSON, and may diff --git a/rbi/openai/models/chat/chat_completion_named_tool_choice.rbi b/rbi/openai/models/chat/chat_completion_named_tool_choice.rbi index 42d4f7b5..daed342c 100644 --- a/rbi/openai/models/chat/chat_completion_named_tool_choice.rbi +++ b/rbi/openai/models/chat/chat_completion_named_tool_choice.rbi @@ -6,7 +6,13 @@ module OpenAI module Chat class ChatCompletionNamedToolChoice < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::Chat::ChatCompletionNamedToolChoice, + OpenAI::Internal::AnyHash + ) + end sig { returns(OpenAI::Chat::ChatCompletionNamedToolChoice::Function) } attr_reader :function @@ -52,7 +58,12 @@ module OpenAI class Function < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Chat::ChatCompletionNamedToolChoice::Function, + OpenAI::Internal::AnyHash + ) + end # The name of the function to call. sig { returns(String) } diff --git a/rbi/openai/models/chat/chat_completion_prediction_content.rbi b/rbi/openai/models/chat/chat_completion_prediction_content.rbi index fa1a0fba..3e8b7a9c 100644 --- a/rbi/openai/models/chat/chat_completion_prediction_content.rbi +++ b/rbi/openai/models/chat/chat_completion_prediction_content.rbi @@ -6,7 +6,13 @@ module OpenAI module Chat class ChatCompletionPredictionContent < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::Chat::ChatCompletionPredictionContent, + OpenAI::Internal::AnyHash + ) + end # The content that should be matched when generating a model response. If # generated tokens would match this content, the entire model response can be diff --git a/rbi/openai/models/chat/chat_completion_store_message.rbi b/rbi/openai/models/chat/chat_completion_store_message.rbi index 67c86275..c19850a1 100644 --- a/rbi/openai/models/chat/chat_completion_store_message.rbi +++ b/rbi/openai/models/chat/chat_completion_store_message.rbi @@ -6,7 +6,13 @@ module OpenAI module Chat class ChatCompletionStoreMessage < OpenAI::Models::Chat::ChatCompletionMessage - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::Chat::ChatCompletionStoreMessage, + OpenAI::Internal::AnyHash + ) + end # The identifier of the chat message. sig { returns(String) } diff --git a/rbi/openai/models/chat/chat_completion_stream_options.rbi b/rbi/openai/models/chat/chat_completion_stream_options.rbi index 4ac025c0..7061b1ff 100644 --- a/rbi/openai/models/chat/chat_completion_stream_options.rbi +++ b/rbi/openai/models/chat/chat_completion_stream_options.rbi @@ -6,7 +6,13 @@ module OpenAI module Chat class ChatCompletionStreamOptions < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::Chat::ChatCompletionStreamOptions, + OpenAI::Internal::AnyHash + ) + end # If set, an additional chunk will be streamed before the `data: [DONE]` message. # The `usage` field on this chunk shows the token usage statistics for the entire diff --git a/rbi/openai/models/chat/chat_completion_system_message_param.rbi b/rbi/openai/models/chat/chat_completion_system_message_param.rbi index 099a437a..bd7d25b4 100644 --- a/rbi/openai/models/chat/chat_completion_system_message_param.rbi +++ b/rbi/openai/models/chat/chat_completion_system_message_param.rbi @@ -6,7 +6,13 @@ module OpenAI module Chat class ChatCompletionSystemMessageParam < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::Chat::ChatCompletionSystemMessageParam, + OpenAI::Internal::AnyHash + ) + end # The contents of the system message. sig do diff --git a/rbi/openai/models/chat/chat_completion_token_logprob.rbi b/rbi/openai/models/chat/chat_completion_token_logprob.rbi index e38eaadc..0cca0836 100644 --- a/rbi/openai/models/chat/chat_completion_token_logprob.rbi +++ b/rbi/openai/models/chat/chat_completion_token_logprob.rbi @@ -6,7 +6,13 @@ module OpenAI module Chat class ChatCompletionTokenLogprob < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::Chat::ChatCompletionTokenLogprob, + OpenAI::Internal::AnyHash + ) + end # The token. sig { returns(String) } @@ -81,7 +87,12 @@ module OpenAI class TopLogprob < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Chat::ChatCompletionTokenLogprob::TopLogprob, + OpenAI::Internal::AnyHash + ) + end # The token. sig { returns(String) } diff --git a/rbi/openai/models/chat/chat_completion_tool.rbi b/rbi/openai/models/chat/chat_completion_tool.rbi index 3ea290d0..0fcacb06 100644 --- a/rbi/openai/models/chat/chat_completion_tool.rbi +++ b/rbi/openai/models/chat/chat_completion_tool.rbi @@ -6,7 +6,10 @@ module OpenAI module Chat class ChatCompletionTool < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(OpenAI::Chat::ChatCompletionTool, OpenAI::Internal::AnyHash) + end sig { returns(OpenAI::FunctionDefinition) } attr_reader :function diff --git a/rbi/openai/models/chat/chat_completion_tool_message_param.rbi b/rbi/openai/models/chat/chat_completion_tool_message_param.rbi index 67ab6bc6..6aab530f 100644 --- a/rbi/openai/models/chat/chat_completion_tool_message_param.rbi +++ b/rbi/openai/models/chat/chat_completion_tool_message_param.rbi @@ -6,7 +6,13 @@ module OpenAI module Chat class ChatCompletionToolMessageParam < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::Chat::ChatCompletionToolMessageParam, + OpenAI::Internal::AnyHash + ) + end # The contents of the tool message. sig do diff --git a/rbi/openai/models/chat/chat_completion_user_message_param.rbi b/rbi/openai/models/chat/chat_completion_user_message_param.rbi index 2afec258..d53e5739 100644 --- a/rbi/openai/models/chat/chat_completion_user_message_param.rbi +++ b/rbi/openai/models/chat/chat_completion_user_message_param.rbi @@ -6,7 +6,13 @@ module OpenAI module Chat class ChatCompletionUserMessageParam < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::Chat::ChatCompletionUserMessageParam, + OpenAI::Internal::AnyHash + ) + end # The contents of the user message. sig do diff --git a/rbi/openai/models/chat/completion_create_params.rbi b/rbi/openai/models/chat/completion_create_params.rbi index 9e67e729..a0f4b474 100644 --- a/rbi/openai/models/chat/completion_create_params.rbi +++ b/rbi/openai/models/chat/completion_create_params.rbi @@ -7,7 +7,13 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::Chat::CompletionCreateParams, + OpenAI::Internal::AnyHash + ) + end # A list of messages comprising the conversation so far. Depending on the # [model](https://platform.openai.com/docs/models) you use, different message @@ -837,7 +843,12 @@ module OpenAI class Function < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Chat::CompletionCreateParams::Function, + OpenAI::Internal::AnyHash + ) + end # The name of the function to be called. Must be a-z, A-Z, 0-9, or contain # underscores and dashes, with a maximum length of 64. @@ -1046,7 +1057,12 @@ module OpenAI class WebSearchOptions < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Chat::CompletionCreateParams::WebSearchOptions, + OpenAI::Internal::AnyHash + ) + end # High level guidance for the amount of context window space to use for the # search. One of `low`, `medium`, or `high`. `medium` is the default. @@ -1167,7 +1183,12 @@ module OpenAI class UserLocation < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Chat::CompletionCreateParams::WebSearchOptions::UserLocation, + OpenAI::Internal::AnyHash + ) + end # Approximate location parameters for the search. sig do @@ -1219,7 +1240,12 @@ module OpenAI class Approximate < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Chat::CompletionCreateParams::WebSearchOptions::UserLocation::Approximate, + OpenAI::Internal::AnyHash + ) + end # Free text input for the city of the user, e.g. `San Francisco`. sig { returns(T.nilable(String)) } diff --git a/rbi/openai/models/chat/completion_delete_params.rbi b/rbi/openai/models/chat/completion_delete_params.rbi index b960e8e9..1ab23698 100644 --- a/rbi/openai/models/chat/completion_delete_params.rbi +++ b/rbi/openai/models/chat/completion_delete_params.rbi @@ -7,7 +7,13 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::Chat::CompletionDeleteParams, + OpenAI::Internal::AnyHash + ) + end sig do params(request_options: OpenAI::RequestOptions::OrHash).returns( diff --git a/rbi/openai/models/chat/completion_list_params.rbi b/rbi/openai/models/chat/completion_list_params.rbi index cf9b4c89..cb92d858 100644 --- a/rbi/openai/models/chat/completion_list_params.rbi +++ b/rbi/openai/models/chat/completion_list_params.rbi @@ -7,7 +7,10 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(OpenAI::Chat::CompletionListParams, OpenAI::Internal::AnyHash) + end # Identifier for the last chat completion from the previous pagination request. sig { returns(T.nilable(String)) } diff --git a/rbi/openai/models/chat/completion_retrieve_params.rbi b/rbi/openai/models/chat/completion_retrieve_params.rbi index 94561ed0..b1ece45b 100644 --- a/rbi/openai/models/chat/completion_retrieve_params.rbi +++ b/rbi/openai/models/chat/completion_retrieve_params.rbi @@ -7,7 +7,13 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::Chat::CompletionRetrieveParams, + OpenAI::Internal::AnyHash + ) + end sig do params(request_options: OpenAI::RequestOptions::OrHash).returns( diff --git a/rbi/openai/models/chat/completion_update_params.rbi b/rbi/openai/models/chat/completion_update_params.rbi index 0055be95..7897528d 100644 --- a/rbi/openai/models/chat/completion_update_params.rbi +++ b/rbi/openai/models/chat/completion_update_params.rbi @@ -7,7 +7,13 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::Chat::CompletionUpdateParams, + OpenAI::Internal::AnyHash + ) + end # 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 diff --git a/rbi/openai/models/chat/completions/message_list_params.rbi b/rbi/openai/models/chat/completions/message_list_params.rbi index f61f0565..2f78c626 100644 --- a/rbi/openai/models/chat/completions/message_list_params.rbi +++ b/rbi/openai/models/chat/completions/message_list_params.rbi @@ -9,7 +9,12 @@ module OpenAI include OpenAI::Internal::Type::RequestParameters OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Chat::Completions::MessageListParams, + OpenAI::Internal::AnyHash + ) + end # Identifier for the last message from the previous pagination request. sig { returns(T.nilable(String)) } diff --git a/rbi/openai/models/comparison_filter.rbi b/rbi/openai/models/comparison_filter.rbi index 3030e3c5..c18ff737 100644 --- a/rbi/openai/models/comparison_filter.rbi +++ b/rbi/openai/models/comparison_filter.rbi @@ -3,7 +3,10 @@ module OpenAI module Models class ComparisonFilter < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(OpenAI::ComparisonFilter, OpenAI::Internal::AnyHash) + end # The key to compare against the value. sig { returns(String) } diff --git a/rbi/openai/models/completion.rbi b/rbi/openai/models/completion.rbi index 9eab71d9..b82f5786 100644 --- a/rbi/openai/models/completion.rbi +++ b/rbi/openai/models/completion.rbi @@ -3,7 +3,8 @@ module OpenAI module Models class Completion < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias { T.any(OpenAI::Completion, OpenAI::Internal::AnyHash) } # A unique identifier for the completion. sig { returns(String) } diff --git a/rbi/openai/models/completion_choice.rbi b/rbi/openai/models/completion_choice.rbi index 17b28983..25f173ec 100644 --- a/rbi/openai/models/completion_choice.rbi +++ b/rbi/openai/models/completion_choice.rbi @@ -3,7 +3,10 @@ module OpenAI module Models class CompletionChoice < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(OpenAI::CompletionChoice, OpenAI::Internal::AnyHash) + end # The reason the model stopped generating tokens. This will be `stop` if the model # hit a natural stop point or a provided stop sequence, `length` if the maximum @@ -92,7 +95,10 @@ module OpenAI end class Logprobs < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(OpenAI::CompletionChoice::Logprobs, OpenAI::Internal::AnyHash) + end sig { returns(T.nilable(T::Array[Integer])) } attr_reader :text_offset diff --git a/rbi/openai/models/completion_create_params.rbi b/rbi/openai/models/completion_create_params.rbi index efe5336e..4f9c3b9c 100644 --- a/rbi/openai/models/completion_create_params.rbi +++ b/rbi/openai/models/completion_create_params.rbi @@ -6,7 +6,10 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(OpenAI::CompletionCreateParams, OpenAI::Internal::AnyHash) + end # ID of the model to use. You can use the # [List models](https://platform.openai.com/docs/api-reference/models/list) API to diff --git a/rbi/openai/models/completion_usage.rbi b/rbi/openai/models/completion_usage.rbi index 4e3dbbf3..f64ef423 100644 --- a/rbi/openai/models/completion_usage.rbi +++ b/rbi/openai/models/completion_usage.rbi @@ -3,7 +3,10 @@ module OpenAI module Models class CompletionUsage < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(OpenAI::CompletionUsage, OpenAI::Internal::AnyHash) + end # Number of tokens in the generated completion. sig { returns(Integer) } @@ -85,7 +88,13 @@ module OpenAI end class CompletionTokensDetails < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::CompletionUsage::CompletionTokensDetails, + OpenAI::Internal::AnyHash + ) + end # When using Predicted Outputs, the number of tokens in the prediction that # appeared in the completion. @@ -159,7 +168,13 @@ module OpenAI end class PromptTokensDetails < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::CompletionUsage::PromptTokensDetails, + OpenAI::Internal::AnyHash + ) + end # Audio input tokens present in the prompt. sig { returns(T.nilable(Integer)) } diff --git a/rbi/openai/models/compound_filter.rbi b/rbi/openai/models/compound_filter.rbi index b8972c6d..99097583 100644 --- a/rbi/openai/models/compound_filter.rbi +++ b/rbi/openai/models/compound_filter.rbi @@ -3,7 +3,10 @@ module OpenAI module Models class CompoundFilter < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(OpenAI::CompoundFilter, OpenAI::Internal::AnyHash) + end # Array of filters to combine. Items can be `ComparisonFilter` or # `CompoundFilter`. diff --git a/rbi/openai/models/create_embedding_response.rbi b/rbi/openai/models/create_embedding_response.rbi index cf00c902..3228933e 100644 --- a/rbi/openai/models/create_embedding_response.rbi +++ b/rbi/openai/models/create_embedding_response.rbi @@ -3,7 +3,10 @@ module OpenAI module Models class CreateEmbeddingResponse < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(OpenAI::CreateEmbeddingResponse, OpenAI::Internal::AnyHash) + end # The list of embeddings generated by the model. sig { returns(T::Array[OpenAI::Embedding]) } @@ -58,7 +61,13 @@ module OpenAI end class Usage < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::CreateEmbeddingResponse::Usage, + OpenAI::Internal::AnyHash + ) + end # The number of tokens used by the prompt. sig { returns(Integer) } diff --git a/rbi/openai/models/embedding.rbi b/rbi/openai/models/embedding.rbi index aa3abb7e..173bc91d 100644 --- a/rbi/openai/models/embedding.rbi +++ b/rbi/openai/models/embedding.rbi @@ -3,7 +3,8 @@ module OpenAI module Models class Embedding < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias { T.any(OpenAI::Embedding, OpenAI::Internal::AnyHash) } # The embedding vector, which is a list of floats. The length of vector depends on # the model as listed in the diff --git a/rbi/openai/models/embedding_create_params.rbi b/rbi/openai/models/embedding_create_params.rbi index a4452287..dd303b0d 100644 --- a/rbi/openai/models/embedding_create_params.rbi +++ b/rbi/openai/models/embedding_create_params.rbi @@ -6,7 +6,10 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(OpenAI::EmbeddingCreateParams, OpenAI::Internal::AnyHash) + end # Input text to embed, encoded as a string or array of tokens. To embed multiple # inputs in a single request, pass an array of strings or array of token arrays. diff --git a/rbi/openai/models/error_object.rbi b/rbi/openai/models/error_object.rbi index 5f923ecc..8cc3cf23 100644 --- a/rbi/openai/models/error_object.rbi +++ b/rbi/openai/models/error_object.rbi @@ -3,7 +3,8 @@ module OpenAI module Models class ErrorObject < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias { T.any(OpenAI::ErrorObject, OpenAI::Internal::AnyHash) } sig { returns(T.nilable(String)) } attr_accessor :code diff --git a/rbi/openai/models/eval_create_params.rbi b/rbi/openai/models/eval_create_params.rbi index b3673227..baafa832 100644 --- a/rbi/openai/models/eval_create_params.rbi +++ b/rbi/openai/models/eval_create_params.rbi @@ -6,7 +6,10 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(OpenAI::EvalCreateParams, OpenAI::Internal::AnyHash) + end # The configuration for the data source used for the evaluation runs. sig do @@ -132,7 +135,12 @@ module OpenAI class Custom < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::EvalCreateParams::DataSourceConfig::Custom, + OpenAI::Internal::AnyHash + ) + end # The json schema for each row in the data source. sig { returns(T::Hash[Symbol, T.anything]) } @@ -189,7 +197,12 @@ module OpenAI class StoredCompletions < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::EvalCreateParams::DataSourceConfig::StoredCompletions, + OpenAI::Internal::AnyHash + ) + end # The type of data source. Always `stored_completions`. sig { returns(Symbol) } @@ -254,7 +267,12 @@ module OpenAI class LabelModel < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::EvalCreateParams::TestingCriterion::LabelModel, + OpenAI::Internal::AnyHash + ) + end # A list of chat messages forming the prompt or context. May include variable # references to the "item" namespace, ie {{item.name}}. @@ -361,7 +379,12 @@ module OpenAI class SimpleInputMessage < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::EvalCreateParams::TestingCriterion::LabelModel::Input::SimpleInputMessage, + OpenAI::Internal::AnyHash + ) + end # The content of the message. sig { returns(String) } @@ -389,7 +412,12 @@ module OpenAI class EvalItem < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem, + OpenAI::Internal::AnyHash + ) + end # Text inputs to the model - can contain template strings. sig do @@ -495,7 +523,10 @@ module OpenAI class OutputText < OpenAI::Internal::Type::BaseModel OrHash = T.type_alias do - T.any(T.self_type, OpenAI::Internal::AnyHash) + T.any( + OpenAI::EvalCreateParams::TestingCriterion::LabelModel::Input::EvalItem::Content::OutputText, + OpenAI::Internal::AnyHash + ) end # The text output from the model. @@ -625,7 +656,12 @@ module OpenAI class TextSimilarity < OpenAI::Models::Graders::TextSimilarityGrader OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::EvalCreateParams::TestingCriterion::TextSimilarity, + OpenAI::Internal::AnyHash + ) + end # The threshold for the score. sig { returns(Float) } @@ -646,7 +682,12 @@ module OpenAI class Python < OpenAI::Models::Graders::PythonGrader OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::EvalCreateParams::TestingCriterion::Python, + OpenAI::Internal::AnyHash + ) + end # The threshold for the score. sig { returns(T.nilable(Float)) } @@ -670,7 +711,12 @@ module OpenAI class ScoreModel < OpenAI::Models::Graders::ScoreModelGrader OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::EvalCreateParams::TestingCriterion::ScoreModel, + OpenAI::Internal::AnyHash + ) + end # The threshold for the score. sig { returns(T.nilable(Float)) } diff --git a/rbi/openai/models/eval_create_response.rbi b/rbi/openai/models/eval_create_response.rbi index 2928d3b9..fd3d328d 100644 --- a/rbi/openai/models/eval_create_response.rbi +++ b/rbi/openai/models/eval_create_response.rbi @@ -3,7 +3,10 @@ module OpenAI module Models class EvalCreateResponse < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(OpenAI::Models::EvalCreateResponse, OpenAI::Internal::AnyHash) + end # Unique identifier for the evaluation. sig { returns(String) } @@ -180,7 +183,12 @@ module OpenAI class EvalGraderTextSimilarity < OpenAI::Models::Graders::TextSimilarityGrader OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Models::EvalCreateResponse::TestingCriterion::EvalGraderTextSimilarity, + OpenAI::Internal::AnyHash + ) + end # The threshold for the score. sig { returns(Float) } @@ -201,7 +209,12 @@ module OpenAI class EvalGraderPython < OpenAI::Models::Graders::PythonGrader OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Models::EvalCreateResponse::TestingCriterion::EvalGraderPython, + OpenAI::Internal::AnyHash + ) + end # The threshold for the score. sig { returns(T.nilable(Float)) } @@ -225,7 +238,12 @@ module OpenAI class EvalGraderScoreModel < OpenAI::Models::Graders::ScoreModelGrader OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Models::EvalCreateResponse::TestingCriterion::EvalGraderScoreModel, + OpenAI::Internal::AnyHash + ) + end # The threshold for the score. sig { returns(T.nilable(Float)) } diff --git a/rbi/openai/models/eval_custom_data_source_config.rbi b/rbi/openai/models/eval_custom_data_source_config.rbi index 6725b324..e00ae9a0 100644 --- a/rbi/openai/models/eval_custom_data_source_config.rbi +++ b/rbi/openai/models/eval_custom_data_source_config.rbi @@ -3,7 +3,10 @@ module OpenAI module Models class EvalCustomDataSourceConfig < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(OpenAI::EvalCustomDataSourceConfig, OpenAI::Internal::AnyHash) + end # The json schema for the run data source items. Learn how to build JSON schemas # [here](https://json-schema.org/). diff --git a/rbi/openai/models/eval_delete_params.rbi b/rbi/openai/models/eval_delete_params.rbi index e5ead349..40b7ec64 100644 --- a/rbi/openai/models/eval_delete_params.rbi +++ b/rbi/openai/models/eval_delete_params.rbi @@ -6,7 +6,10 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(OpenAI::EvalDeleteParams, OpenAI::Internal::AnyHash) + end sig do params(request_options: OpenAI::RequestOptions::OrHash).returns( diff --git a/rbi/openai/models/eval_delete_response.rbi b/rbi/openai/models/eval_delete_response.rbi index 5ed757c3..e324447f 100644 --- a/rbi/openai/models/eval_delete_response.rbi +++ b/rbi/openai/models/eval_delete_response.rbi @@ -3,7 +3,10 @@ module OpenAI module Models class EvalDeleteResponse < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(OpenAI::Models::EvalDeleteResponse, OpenAI::Internal::AnyHash) + end sig { returns(T::Boolean) } attr_accessor :deleted diff --git a/rbi/openai/models/eval_list_params.rbi b/rbi/openai/models/eval_list_params.rbi index 5b1a38f4..4b125b67 100644 --- a/rbi/openai/models/eval_list_params.rbi +++ b/rbi/openai/models/eval_list_params.rbi @@ -6,7 +6,10 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(OpenAI::EvalListParams, OpenAI::Internal::AnyHash) + end # Identifier for the last eval from the previous pagination request. sig { returns(T.nilable(String)) } diff --git a/rbi/openai/models/eval_list_response.rbi b/rbi/openai/models/eval_list_response.rbi index 5b20006b..32fb803c 100644 --- a/rbi/openai/models/eval_list_response.rbi +++ b/rbi/openai/models/eval_list_response.rbi @@ -3,7 +3,10 @@ module OpenAI module Models class EvalListResponse < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(OpenAI::Models::EvalListResponse, OpenAI::Internal::AnyHash) + end # Unique identifier for the evaluation. sig { returns(String) } @@ -180,7 +183,12 @@ module OpenAI class EvalGraderTextSimilarity < OpenAI::Models::Graders::TextSimilarityGrader OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Models::EvalListResponse::TestingCriterion::EvalGraderTextSimilarity, + OpenAI::Internal::AnyHash + ) + end # The threshold for the score. sig { returns(Float) } @@ -201,7 +209,12 @@ module OpenAI class EvalGraderPython < OpenAI::Models::Graders::PythonGrader OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Models::EvalListResponse::TestingCriterion::EvalGraderPython, + OpenAI::Internal::AnyHash + ) + end # The threshold for the score. sig { returns(T.nilable(Float)) } @@ -225,7 +238,12 @@ module OpenAI class EvalGraderScoreModel < OpenAI::Models::Graders::ScoreModelGrader OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Models::EvalListResponse::TestingCriterion::EvalGraderScoreModel, + OpenAI::Internal::AnyHash + ) + end # The threshold for the score. sig { returns(T.nilable(Float)) } diff --git a/rbi/openai/models/eval_retrieve_params.rbi b/rbi/openai/models/eval_retrieve_params.rbi index c75e1ad6..f8fd0c57 100644 --- a/rbi/openai/models/eval_retrieve_params.rbi +++ b/rbi/openai/models/eval_retrieve_params.rbi @@ -6,7 +6,10 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(OpenAI::EvalRetrieveParams, OpenAI::Internal::AnyHash) + end sig do params(request_options: OpenAI::RequestOptions::OrHash).returns( diff --git a/rbi/openai/models/eval_retrieve_response.rbi b/rbi/openai/models/eval_retrieve_response.rbi index cdeeaf69..65635306 100644 --- a/rbi/openai/models/eval_retrieve_response.rbi +++ b/rbi/openai/models/eval_retrieve_response.rbi @@ -3,7 +3,10 @@ module OpenAI module Models class EvalRetrieveResponse < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(OpenAI::Models::EvalRetrieveResponse, OpenAI::Internal::AnyHash) + end # Unique identifier for the evaluation. sig { returns(String) } @@ -180,7 +183,12 @@ module OpenAI class EvalGraderTextSimilarity < OpenAI::Models::Graders::TextSimilarityGrader OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Models::EvalRetrieveResponse::TestingCriterion::EvalGraderTextSimilarity, + OpenAI::Internal::AnyHash + ) + end # The threshold for the score. sig { returns(Float) } @@ -201,7 +209,12 @@ module OpenAI class EvalGraderPython < OpenAI::Models::Graders::PythonGrader OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Models::EvalRetrieveResponse::TestingCriterion::EvalGraderPython, + OpenAI::Internal::AnyHash + ) + end # The threshold for the score. sig { returns(T.nilable(Float)) } @@ -225,7 +238,12 @@ module OpenAI class EvalGraderScoreModel < OpenAI::Models::Graders::ScoreModelGrader OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Models::EvalRetrieveResponse::TestingCriterion::EvalGraderScoreModel, + OpenAI::Internal::AnyHash + ) + end # The threshold for the score. sig { returns(T.nilable(Float)) } diff --git a/rbi/openai/models/eval_stored_completions_data_source_config.rbi b/rbi/openai/models/eval_stored_completions_data_source_config.rbi index 99f736f1..0658e8f4 100644 --- a/rbi/openai/models/eval_stored_completions_data_source_config.rbi +++ b/rbi/openai/models/eval_stored_completions_data_source_config.rbi @@ -3,7 +3,13 @@ module OpenAI module Models class EvalStoredCompletionsDataSourceConfig < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::EvalStoredCompletionsDataSourceConfig, + OpenAI::Internal::AnyHash + ) + end # The json schema for the run data source items. Learn how to build JSON schemas # [here](https://json-schema.org/). diff --git a/rbi/openai/models/eval_update_params.rbi b/rbi/openai/models/eval_update_params.rbi index a5bbc2a7..e3e760e6 100644 --- a/rbi/openai/models/eval_update_params.rbi +++ b/rbi/openai/models/eval_update_params.rbi @@ -6,7 +6,10 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(OpenAI::EvalUpdateParams, OpenAI::Internal::AnyHash) + end # 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 diff --git a/rbi/openai/models/eval_update_response.rbi b/rbi/openai/models/eval_update_response.rbi index a8c27dd8..c3cefaf3 100644 --- a/rbi/openai/models/eval_update_response.rbi +++ b/rbi/openai/models/eval_update_response.rbi @@ -3,7 +3,10 @@ module OpenAI module Models class EvalUpdateResponse < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(OpenAI::Models::EvalUpdateResponse, OpenAI::Internal::AnyHash) + end # Unique identifier for the evaluation. sig { returns(String) } @@ -180,7 +183,12 @@ module OpenAI class EvalGraderTextSimilarity < OpenAI::Models::Graders::TextSimilarityGrader OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Models::EvalUpdateResponse::TestingCriterion::EvalGraderTextSimilarity, + OpenAI::Internal::AnyHash + ) + end # The threshold for the score. sig { returns(Float) } @@ -201,7 +209,12 @@ module OpenAI class EvalGraderPython < OpenAI::Models::Graders::PythonGrader OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Models::EvalUpdateResponse::TestingCriterion::EvalGraderPython, + OpenAI::Internal::AnyHash + ) + end # The threshold for the score. sig { returns(T.nilable(Float)) } @@ -225,7 +238,12 @@ module OpenAI class EvalGraderScoreModel < OpenAI::Models::Graders::ScoreModelGrader OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Models::EvalUpdateResponse::TestingCriterion::EvalGraderScoreModel, + OpenAI::Internal::AnyHash + ) + end # The threshold for the score. sig { returns(T.nilable(Float)) } diff --git a/rbi/openai/models/evals/create_eval_completions_run_data_source.rbi b/rbi/openai/models/evals/create_eval_completions_run_data_source.rbi index c3f2299e..7dc975b1 100644 --- a/rbi/openai/models/evals/create_eval_completions_run_data_source.rbi +++ b/rbi/openai/models/evals/create_eval_completions_run_data_source.rbi @@ -4,7 +4,13 @@ module OpenAI module Models module Evals class CreateEvalCompletionsRunDataSource < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::Evals::CreateEvalCompletionsRunDataSource, + OpenAI::Internal::AnyHash + ) + end # A StoredCompletionsRunDataSource configuration describing a set of filters sig do @@ -146,7 +152,12 @@ module OpenAI class FileContent < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Evals::CreateEvalCompletionsRunDataSource::Source::FileContent, + OpenAI::Internal::AnyHash + ) + end # The content of the jsonl file. sig do @@ -195,7 +206,12 @@ module OpenAI class Content < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Evals::CreateEvalCompletionsRunDataSource::Source::FileContent::Content, + OpenAI::Internal::AnyHash + ) + end sig { returns(T::Hash[Symbol, T.anything]) } attr_accessor :item @@ -230,7 +246,12 @@ module OpenAI class FileID < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Evals::CreateEvalCompletionsRunDataSource::Source::FileID, + OpenAI::Internal::AnyHash + ) + end # The identifier of the file. sig { returns(String) } @@ -256,7 +277,12 @@ module OpenAI class StoredCompletions < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Evals::CreateEvalCompletionsRunDataSource::Source::StoredCompletions, + OpenAI::Internal::AnyHash + ) + end # The type of source. Always `stored_completions`. sig { returns(Symbol) } @@ -389,7 +415,12 @@ module OpenAI class Template < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template, + OpenAI::Internal::AnyHash + ) + end # A list of chat messages forming the prompt or context. May include variable # references to the "item" namespace, ie {{item.name}}. @@ -465,7 +496,12 @@ module OpenAI class Message < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message, + OpenAI::Internal::AnyHash + ) + end # Text inputs to the model - can contain template strings. sig do @@ -571,7 +607,10 @@ module OpenAI class OutputText < OpenAI::Internal::Type::BaseModel OrHash = T.type_alias do - T.any(T.self_type, OpenAI::Internal::AnyHash) + T.any( + OpenAI::Evals::CreateEvalCompletionsRunDataSource::InputMessages::Template::Template::Message::Content::OutputText, + OpenAI::Internal::AnyHash + ) end # The text output from the model. @@ -703,7 +742,12 @@ module OpenAI class ItemReference < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Evals::CreateEvalCompletionsRunDataSource::InputMessages::ItemReference, + OpenAI::Internal::AnyHash + ) + end # A reference to a variable in the "item" namespace. Ie, "item.name" sig { returns(String) } @@ -744,7 +788,12 @@ module OpenAI class SamplingParams < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Evals::CreateEvalCompletionsRunDataSource::SamplingParams, + OpenAI::Internal::AnyHash + ) + end # The maximum number of tokens in the generated output. sig { returns(T.nilable(Integer)) } diff --git a/rbi/openai/models/evals/create_eval_jsonl_run_data_source.rbi b/rbi/openai/models/evals/create_eval_jsonl_run_data_source.rbi index e9715934..f27424f1 100644 --- a/rbi/openai/models/evals/create_eval_jsonl_run_data_source.rbi +++ b/rbi/openai/models/evals/create_eval_jsonl_run_data_source.rbi @@ -4,7 +4,13 @@ module OpenAI module Models module Evals class CreateEvalJSONLRunDataSource < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::Evals::CreateEvalJSONLRunDataSource, + OpenAI::Internal::AnyHash + ) + end sig do returns( @@ -67,7 +73,12 @@ module OpenAI class FileContent < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Evals::CreateEvalJSONLRunDataSource::Source::FileContent, + OpenAI::Internal::AnyHash + ) + end # The content of the jsonl file. sig do @@ -116,7 +127,12 @@ module OpenAI class Content < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Evals::CreateEvalJSONLRunDataSource::Source::FileContent::Content, + OpenAI::Internal::AnyHash + ) + end sig { returns(T::Hash[Symbol, T.anything]) } attr_accessor :item @@ -151,7 +167,12 @@ module OpenAI class FileID < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Evals::CreateEvalJSONLRunDataSource::Source::FileID, + OpenAI::Internal::AnyHash + ) + end # The identifier of the file. sig { returns(String) } diff --git a/rbi/openai/models/evals/eval_api_error.rbi b/rbi/openai/models/evals/eval_api_error.rbi index 153211d5..c37beff5 100644 --- a/rbi/openai/models/evals/eval_api_error.rbi +++ b/rbi/openai/models/evals/eval_api_error.rbi @@ -6,7 +6,10 @@ module OpenAI module Evals class EvalAPIError < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(OpenAI::Evals::EvalAPIError, OpenAI::Internal::AnyHash) + end # The error code. sig { returns(String) } diff --git a/rbi/openai/models/evals/run_cancel_params.rbi b/rbi/openai/models/evals/run_cancel_params.rbi index 0dd60f39..fdef62a7 100644 --- a/rbi/openai/models/evals/run_cancel_params.rbi +++ b/rbi/openai/models/evals/run_cancel_params.rbi @@ -7,7 +7,10 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(OpenAI::Evals::RunCancelParams, OpenAI::Internal::AnyHash) + end sig { returns(String) } attr_accessor :eval_id diff --git a/rbi/openai/models/evals/run_cancel_response.rbi b/rbi/openai/models/evals/run_cancel_response.rbi index 923b2437..2c1f6358 100644 --- a/rbi/openai/models/evals/run_cancel_response.rbi +++ b/rbi/openai/models/evals/run_cancel_response.rbi @@ -4,7 +4,13 @@ module OpenAI module Models module Evals class RunCancelResponse < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::Models::Evals::RunCancelResponse, + OpenAI::Internal::AnyHash + ) + end # Unique identifier for the evaluation run. sig { returns(String) } @@ -214,7 +220,12 @@ module OpenAI class Completions < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions, + OpenAI::Internal::AnyHash + ) + end # A EvalResponsesSource object describing a run data source configuration. sig do @@ -350,7 +361,12 @@ module OpenAI class FileContent < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::Source::FileContent, + OpenAI::Internal::AnyHash + ) + end # The content of the jsonl file. sig do @@ -400,7 +416,10 @@ module OpenAI class Content < OpenAI::Internal::Type::BaseModel OrHash = T.type_alias do - T.any(T.self_type, OpenAI::Internal::AnyHash) + T.any( + OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::Source::FileContent::Content, + OpenAI::Internal::AnyHash + ) end sig { returns(T::Hash[Symbol, T.anything]) } @@ -436,7 +455,12 @@ module OpenAI class FileID < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::Source::FileID, + OpenAI::Internal::AnyHash + ) + end # The identifier of the file. sig { returns(String) } @@ -464,7 +488,12 @@ module OpenAI class Responses < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::Source::Responses, + OpenAI::Internal::AnyHash + ) + end # The type of run data source. Always `responses`. sig { returns(Symbol) } @@ -625,7 +654,12 @@ module OpenAI class Template < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template, + OpenAI::Internal::AnyHash + ) + end # A list of chat messages forming the prompt or context. May include variable # references to the "item" namespace, ie {{item.name}}. @@ -702,7 +736,10 @@ module OpenAI class ChatMessage < OpenAI::Internal::Type::BaseModel OrHash = T.type_alias do - T.any(T.self_type, OpenAI::Internal::AnyHash) + T.any( + OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::ChatMessage, + OpenAI::Internal::AnyHash + ) end # The content of the message. @@ -734,7 +771,10 @@ module OpenAI class EvalItem < OpenAI::Internal::Type::BaseModel OrHash = T.type_alias do - T.any(T.self_type, OpenAI::Internal::AnyHash) + T.any( + OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem, + OpenAI::Internal::AnyHash + ) end # Text inputs to the model - can contain template strings. @@ -841,7 +881,10 @@ module OpenAI class OutputText < OpenAI::Internal::Type::BaseModel OrHash = T.type_alias do - T.any(T.self_type, OpenAI::Internal::AnyHash) + T.any( + OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText, + OpenAI::Internal::AnyHash + ) end # The text output from the model. @@ -973,7 +1016,12 @@ module OpenAI class ItemReference < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::InputMessages::ItemReference, + OpenAI::Internal::AnyHash + ) + end # A reference to a variable in the "item" namespace. Ie, "item.name" sig { returns(String) } @@ -1016,7 +1064,12 @@ module OpenAI class SamplingParams < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Models::Evals::RunCancelResponse::DataSource::Completions::SamplingParams, + OpenAI::Internal::AnyHash + ) + end # The maximum number of tokens in the generated output. sig { returns(T.nilable(Integer)) } @@ -1094,7 +1147,12 @@ module OpenAI class PerModelUsage < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Models::Evals::RunCancelResponse::PerModelUsage, + OpenAI::Internal::AnyHash + ) + end # The number of tokens retrieved from cache. sig { returns(Integer) } @@ -1164,7 +1222,12 @@ module OpenAI class PerTestingCriteriaResult < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Models::Evals::RunCancelResponse::PerTestingCriteriaResult, + OpenAI::Internal::AnyHash + ) + end # Number of tests failed for this criteria. sig { returns(Integer) } @@ -1206,7 +1269,12 @@ module OpenAI class ResultCounts < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Models::Evals::RunCancelResponse::ResultCounts, + OpenAI::Internal::AnyHash + ) + end # Number of output items that resulted in an error. sig { returns(Integer) } diff --git a/rbi/openai/models/evals/run_create_params.rbi b/rbi/openai/models/evals/run_create_params.rbi index b1f07b5d..7b1ebb3f 100644 --- a/rbi/openai/models/evals/run_create_params.rbi +++ b/rbi/openai/models/evals/run_create_params.rbi @@ -7,7 +7,10 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(OpenAI::Evals::RunCreateParams, OpenAI::Internal::AnyHash) + end # Details about the run's data source. sig do @@ -99,7 +102,12 @@ module OpenAI class CreateEvalResponsesRunDataSource < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource, + OpenAI::Internal::AnyHash + ) + end # A EvalResponsesSource object describing a run data source configuration. sig do @@ -241,7 +249,12 @@ module OpenAI class FileContent < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::FileContent, + OpenAI::Internal::AnyHash + ) + end # The content of the jsonl file. sig do @@ -291,7 +304,10 @@ module OpenAI class Content < OpenAI::Internal::Type::BaseModel OrHash = T.type_alias do - T.any(T.self_type, OpenAI::Internal::AnyHash) + T.any( + OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::FileContent::Content, + OpenAI::Internal::AnyHash + ) end sig { returns(T::Hash[Symbol, T.anything]) } @@ -327,7 +343,12 @@ module OpenAI class FileID < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::FileID, + OpenAI::Internal::AnyHash + ) + end # The identifier of the file. sig { returns(String) } @@ -355,7 +376,12 @@ module OpenAI class Responses < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::Responses, + OpenAI::Internal::AnyHash + ) + end # The type of run data source. Always `responses`. sig { returns(Symbol) } @@ -544,7 +570,12 @@ module OpenAI class Template < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template, + OpenAI::Internal::AnyHash + ) + end # A list of chat messages forming the prompt or context. May include variable # references to the "item" namespace, ie {{item.name}}. @@ -621,7 +652,10 @@ module OpenAI class ChatMessage < OpenAI::Internal::Type::BaseModel OrHash = T.type_alias do - T.any(T.self_type, OpenAI::Internal::AnyHash) + T.any( + OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::ChatMessage, + OpenAI::Internal::AnyHash + ) end # The content of the message. @@ -653,7 +687,10 @@ module OpenAI class EvalItem < OpenAI::Internal::Type::BaseModel OrHash = T.type_alias do - T.any(T.self_type, OpenAI::Internal::AnyHash) + T.any( + OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem, + OpenAI::Internal::AnyHash + ) end # Text inputs to the model - can contain template strings. @@ -760,7 +797,10 @@ module OpenAI class OutputText < OpenAI::Internal::Type::BaseModel OrHash = T.type_alias do - T.any(T.self_type, OpenAI::Internal::AnyHash) + T.any( + OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::Template::Template::EvalItem::Content::OutputText, + OpenAI::Internal::AnyHash + ) end # The text output from the model. @@ -892,7 +932,12 @@ module OpenAI class ItemReference < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::InputMessages::ItemReference, + OpenAI::Internal::AnyHash + ) + end # A reference to a variable in the "item" namespace. Ie, "item.name" sig { returns(String) } @@ -935,7 +980,12 @@ module OpenAI class SamplingParams < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::SamplingParams, + OpenAI::Internal::AnyHash + ) + end # The maximum number of tokens in the generated output. sig { returns(T.nilable(Integer)) } diff --git a/rbi/openai/models/evals/run_create_response.rbi b/rbi/openai/models/evals/run_create_response.rbi index 6c3c64f6..d4f02bc5 100644 --- a/rbi/openai/models/evals/run_create_response.rbi +++ b/rbi/openai/models/evals/run_create_response.rbi @@ -4,7 +4,13 @@ module OpenAI module Models module Evals class RunCreateResponse < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::Models::Evals::RunCreateResponse, + OpenAI::Internal::AnyHash + ) + end # Unique identifier for the evaluation run. sig { returns(String) } @@ -214,7 +220,12 @@ module OpenAI class Completions < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions, + OpenAI::Internal::AnyHash + ) + end # A EvalResponsesSource object describing a run data source configuration. sig do @@ -350,7 +361,12 @@ module OpenAI class FileContent < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::Source::FileContent, + OpenAI::Internal::AnyHash + ) + end # The content of the jsonl file. sig do @@ -400,7 +416,10 @@ module OpenAI class Content < OpenAI::Internal::Type::BaseModel OrHash = T.type_alias do - T.any(T.self_type, OpenAI::Internal::AnyHash) + T.any( + OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::Source::FileContent::Content, + OpenAI::Internal::AnyHash + ) end sig { returns(T::Hash[Symbol, T.anything]) } @@ -436,7 +455,12 @@ module OpenAI class FileID < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::Source::FileID, + OpenAI::Internal::AnyHash + ) + end # The identifier of the file. sig { returns(String) } @@ -464,7 +488,12 @@ module OpenAI class Responses < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::Source::Responses, + OpenAI::Internal::AnyHash + ) + end # The type of run data source. Always `responses`. sig { returns(Symbol) } @@ -625,7 +654,12 @@ module OpenAI class Template < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template, + OpenAI::Internal::AnyHash + ) + end # A list of chat messages forming the prompt or context. May include variable # references to the "item" namespace, ie {{item.name}}. @@ -702,7 +736,10 @@ module OpenAI class ChatMessage < OpenAI::Internal::Type::BaseModel OrHash = T.type_alias do - T.any(T.self_type, OpenAI::Internal::AnyHash) + T.any( + OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::ChatMessage, + OpenAI::Internal::AnyHash + ) end # The content of the message. @@ -734,7 +771,10 @@ module OpenAI class EvalItem < OpenAI::Internal::Type::BaseModel OrHash = T.type_alias do - T.any(T.self_type, OpenAI::Internal::AnyHash) + T.any( + OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem, + OpenAI::Internal::AnyHash + ) end # Text inputs to the model - can contain template strings. @@ -841,7 +881,10 @@ module OpenAI class OutputText < OpenAI::Internal::Type::BaseModel OrHash = T.type_alias do - T.any(T.self_type, OpenAI::Internal::AnyHash) + T.any( + OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText, + OpenAI::Internal::AnyHash + ) end # The text output from the model. @@ -973,7 +1016,12 @@ module OpenAI class ItemReference < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::InputMessages::ItemReference, + OpenAI::Internal::AnyHash + ) + end # A reference to a variable in the "item" namespace. Ie, "item.name" sig { returns(String) } @@ -1016,7 +1064,12 @@ module OpenAI class SamplingParams < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Models::Evals::RunCreateResponse::DataSource::Completions::SamplingParams, + OpenAI::Internal::AnyHash + ) + end # The maximum number of tokens in the generated output. sig { returns(T.nilable(Integer)) } @@ -1094,7 +1147,12 @@ module OpenAI class PerModelUsage < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Models::Evals::RunCreateResponse::PerModelUsage, + OpenAI::Internal::AnyHash + ) + end # The number of tokens retrieved from cache. sig { returns(Integer) } @@ -1164,7 +1222,12 @@ module OpenAI class PerTestingCriteriaResult < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Models::Evals::RunCreateResponse::PerTestingCriteriaResult, + OpenAI::Internal::AnyHash + ) + end # Number of tests failed for this criteria. sig { returns(Integer) } @@ -1206,7 +1269,12 @@ module OpenAI class ResultCounts < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Models::Evals::RunCreateResponse::ResultCounts, + OpenAI::Internal::AnyHash + ) + end # Number of output items that resulted in an error. sig { returns(Integer) } diff --git a/rbi/openai/models/evals/run_delete_params.rbi b/rbi/openai/models/evals/run_delete_params.rbi index 3fa9908b..e82ad163 100644 --- a/rbi/openai/models/evals/run_delete_params.rbi +++ b/rbi/openai/models/evals/run_delete_params.rbi @@ -7,7 +7,10 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(OpenAI::Evals::RunDeleteParams, OpenAI::Internal::AnyHash) + end sig { returns(String) } attr_accessor :eval_id diff --git a/rbi/openai/models/evals/run_delete_response.rbi b/rbi/openai/models/evals/run_delete_response.rbi index b7556eda..552da6af 100644 --- a/rbi/openai/models/evals/run_delete_response.rbi +++ b/rbi/openai/models/evals/run_delete_response.rbi @@ -4,7 +4,13 @@ module OpenAI module Models module Evals class RunDeleteResponse < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::Models::Evals::RunDeleteResponse, + OpenAI::Internal::AnyHash + ) + end sig { returns(T.nilable(T::Boolean)) } attr_reader :deleted diff --git a/rbi/openai/models/evals/run_list_params.rbi b/rbi/openai/models/evals/run_list_params.rbi index a442bc5d..67d654cd 100644 --- a/rbi/openai/models/evals/run_list_params.rbi +++ b/rbi/openai/models/evals/run_list_params.rbi @@ -7,7 +7,10 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(OpenAI::Evals::RunListParams, OpenAI::Internal::AnyHash) + end # Identifier for the last run from the previous pagination request. sig { returns(T.nilable(String)) } diff --git a/rbi/openai/models/evals/run_list_response.rbi b/rbi/openai/models/evals/run_list_response.rbi index 8bce072b..1306554c 100644 --- a/rbi/openai/models/evals/run_list_response.rbi +++ b/rbi/openai/models/evals/run_list_response.rbi @@ -4,7 +4,13 @@ module OpenAI module Models module Evals class RunListResponse < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::Models::Evals::RunListResponse, + OpenAI::Internal::AnyHash + ) + end # Unique identifier for the evaluation run. sig { returns(String) } @@ -212,7 +218,12 @@ module OpenAI class Completions < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Models::Evals::RunListResponse::DataSource::Completions, + OpenAI::Internal::AnyHash + ) + end # A EvalResponsesSource object describing a run data source configuration. sig do @@ -348,7 +359,12 @@ module OpenAI class FileContent < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Models::Evals::RunListResponse::DataSource::Completions::Source::FileContent, + OpenAI::Internal::AnyHash + ) + end # The content of the jsonl file. sig do @@ -398,7 +414,10 @@ module OpenAI class Content < OpenAI::Internal::Type::BaseModel OrHash = T.type_alias do - T.any(T.self_type, OpenAI::Internal::AnyHash) + T.any( + OpenAI::Models::Evals::RunListResponse::DataSource::Completions::Source::FileContent::Content, + OpenAI::Internal::AnyHash + ) end sig { returns(T::Hash[Symbol, T.anything]) } @@ -434,7 +453,12 @@ module OpenAI class FileID < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Models::Evals::RunListResponse::DataSource::Completions::Source::FileID, + OpenAI::Internal::AnyHash + ) + end # The identifier of the file. sig { returns(String) } @@ -462,7 +486,12 @@ module OpenAI class Responses < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Models::Evals::RunListResponse::DataSource::Completions::Source::Responses, + OpenAI::Internal::AnyHash + ) + end # The type of run data source. Always `responses`. sig { returns(Symbol) } @@ -623,7 +652,12 @@ module OpenAI class Template < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template, + OpenAI::Internal::AnyHash + ) + end # A list of chat messages forming the prompt or context. May include variable # references to the "item" namespace, ie {{item.name}}. @@ -700,7 +734,10 @@ module OpenAI class ChatMessage < OpenAI::Internal::Type::BaseModel OrHash = T.type_alias do - T.any(T.self_type, OpenAI::Internal::AnyHash) + T.any( + OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::ChatMessage, + OpenAI::Internal::AnyHash + ) end # The content of the message. @@ -732,7 +769,10 @@ module OpenAI class EvalItem < OpenAI::Internal::Type::BaseModel OrHash = T.type_alias do - T.any(T.self_type, OpenAI::Internal::AnyHash) + T.any( + OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem, + OpenAI::Internal::AnyHash + ) end # Text inputs to the model - can contain template strings. @@ -839,7 +879,10 @@ module OpenAI class OutputText < OpenAI::Internal::Type::BaseModel OrHash = T.type_alias do - T.any(T.self_type, OpenAI::Internal::AnyHash) + T.any( + OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText, + OpenAI::Internal::AnyHash + ) end # The text output from the model. @@ -971,7 +1014,12 @@ module OpenAI class ItemReference < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Models::Evals::RunListResponse::DataSource::Completions::InputMessages::ItemReference, + OpenAI::Internal::AnyHash + ) + end # A reference to a variable in the "item" namespace. Ie, "item.name" sig { returns(String) } @@ -1014,7 +1062,12 @@ module OpenAI class SamplingParams < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Models::Evals::RunListResponse::DataSource::Completions::SamplingParams, + OpenAI::Internal::AnyHash + ) + end # The maximum number of tokens in the generated output. sig { returns(T.nilable(Integer)) } @@ -1092,7 +1145,12 @@ module OpenAI class PerModelUsage < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Models::Evals::RunListResponse::PerModelUsage, + OpenAI::Internal::AnyHash + ) + end # The number of tokens retrieved from cache. sig { returns(Integer) } @@ -1162,7 +1220,12 @@ module OpenAI class PerTestingCriteriaResult < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Models::Evals::RunListResponse::PerTestingCriteriaResult, + OpenAI::Internal::AnyHash + ) + end # Number of tests failed for this criteria. sig { returns(Integer) } @@ -1204,7 +1267,12 @@ module OpenAI class ResultCounts < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Models::Evals::RunListResponse::ResultCounts, + OpenAI::Internal::AnyHash + ) + end # Number of output items that resulted in an error. sig { returns(Integer) } diff --git a/rbi/openai/models/evals/run_retrieve_params.rbi b/rbi/openai/models/evals/run_retrieve_params.rbi index ad837ffe..002b7cb6 100644 --- a/rbi/openai/models/evals/run_retrieve_params.rbi +++ b/rbi/openai/models/evals/run_retrieve_params.rbi @@ -7,7 +7,10 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(OpenAI::Evals::RunRetrieveParams, OpenAI::Internal::AnyHash) + end sig { returns(String) } attr_accessor :eval_id diff --git a/rbi/openai/models/evals/run_retrieve_response.rbi b/rbi/openai/models/evals/run_retrieve_response.rbi index d1770d9c..eab94463 100644 --- a/rbi/openai/models/evals/run_retrieve_response.rbi +++ b/rbi/openai/models/evals/run_retrieve_response.rbi @@ -4,7 +4,13 @@ module OpenAI module Models module Evals class RunRetrieveResponse < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::Models::Evals::RunRetrieveResponse, + OpenAI::Internal::AnyHash + ) + end # Unique identifier for the evaluation run. sig { returns(String) } @@ -216,7 +222,12 @@ module OpenAI class Completions < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions, + OpenAI::Internal::AnyHash + ) + end # A EvalResponsesSource object describing a run data source configuration. sig do @@ -352,7 +363,12 @@ module OpenAI class FileContent < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::Source::FileContent, + OpenAI::Internal::AnyHash + ) + end # The content of the jsonl file. sig do @@ -402,7 +418,10 @@ module OpenAI class Content < OpenAI::Internal::Type::BaseModel OrHash = T.type_alias do - T.any(T.self_type, OpenAI::Internal::AnyHash) + T.any( + OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::Source::FileContent::Content, + OpenAI::Internal::AnyHash + ) end sig { returns(T::Hash[Symbol, T.anything]) } @@ -438,7 +457,12 @@ module OpenAI class FileID < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::Source::FileID, + OpenAI::Internal::AnyHash + ) + end # The identifier of the file. sig { returns(String) } @@ -466,7 +490,12 @@ module OpenAI class Responses < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::Source::Responses, + OpenAI::Internal::AnyHash + ) + end # The type of run data source. Always `responses`. sig { returns(Symbol) } @@ -627,7 +656,12 @@ module OpenAI class Template < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template, + OpenAI::Internal::AnyHash + ) + end # A list of chat messages forming the prompt or context. May include variable # references to the "item" namespace, ie {{item.name}}. @@ -704,7 +738,10 @@ module OpenAI class ChatMessage < OpenAI::Internal::Type::BaseModel OrHash = T.type_alias do - T.any(T.self_type, OpenAI::Internal::AnyHash) + T.any( + OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::ChatMessage, + OpenAI::Internal::AnyHash + ) end # The content of the message. @@ -736,7 +773,10 @@ module OpenAI class EvalItem < OpenAI::Internal::Type::BaseModel OrHash = T.type_alias do - T.any(T.self_type, OpenAI::Internal::AnyHash) + T.any( + OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem, + OpenAI::Internal::AnyHash + ) end # Text inputs to the model - can contain template strings. @@ -843,7 +883,10 @@ module OpenAI class OutputText < OpenAI::Internal::Type::BaseModel OrHash = T.type_alias do - T.any(T.self_type, OpenAI::Internal::AnyHash) + T.any( + OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::Template::Template::EvalItem::Content::OutputText, + OpenAI::Internal::AnyHash + ) end # The text output from the model. @@ -975,7 +1018,12 @@ module OpenAI class ItemReference < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::InputMessages::ItemReference, + OpenAI::Internal::AnyHash + ) + end # A reference to a variable in the "item" namespace. Ie, "item.name" sig { returns(String) } @@ -1018,7 +1066,12 @@ module OpenAI class SamplingParams < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Models::Evals::RunRetrieveResponse::DataSource::Completions::SamplingParams, + OpenAI::Internal::AnyHash + ) + end # The maximum number of tokens in the generated output. sig { returns(T.nilable(Integer)) } @@ -1096,7 +1149,12 @@ module OpenAI class PerModelUsage < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Models::Evals::RunRetrieveResponse::PerModelUsage, + OpenAI::Internal::AnyHash + ) + end # The number of tokens retrieved from cache. sig { returns(Integer) } @@ -1166,7 +1224,12 @@ module OpenAI class PerTestingCriteriaResult < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Models::Evals::RunRetrieveResponse::PerTestingCriteriaResult, + OpenAI::Internal::AnyHash + ) + end # Number of tests failed for this criteria. sig { returns(Integer) } @@ -1208,7 +1271,12 @@ module OpenAI class ResultCounts < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Models::Evals::RunRetrieveResponse::ResultCounts, + OpenAI::Internal::AnyHash + ) + end # Number of output items that resulted in an error. sig { returns(Integer) } diff --git a/rbi/openai/models/evals/runs/output_item_list_params.rbi b/rbi/openai/models/evals/runs/output_item_list_params.rbi index 52a091de..c4bfe68e 100644 --- a/rbi/openai/models/evals/runs/output_item_list_params.rbi +++ b/rbi/openai/models/evals/runs/output_item_list_params.rbi @@ -9,7 +9,12 @@ module OpenAI include OpenAI::Internal::Type::RequestParameters OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Evals::Runs::OutputItemListParams, + OpenAI::Internal::AnyHash + ) + end sig { returns(String) } attr_accessor :eval_id diff --git a/rbi/openai/models/evals/runs/output_item_list_response.rbi b/rbi/openai/models/evals/runs/output_item_list_response.rbi index 6f5cd696..9a34bb28 100644 --- a/rbi/openai/models/evals/runs/output_item_list_response.rbi +++ b/rbi/openai/models/evals/runs/output_item_list_response.rbi @@ -6,7 +6,12 @@ module OpenAI module Runs class OutputItemListResponse < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Models::Evals::Runs::OutputItemListResponse, + OpenAI::Internal::AnyHash + ) + end # Unique identifier for the evaluation run output item. sig { returns(String) } @@ -120,7 +125,12 @@ module OpenAI class Sample < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Models::Evals::Runs::OutputItemListResponse::Sample, + OpenAI::Internal::AnyHash + ) + end # An object representing an error response from the Eval API. sig { returns(OpenAI::Evals::EvalAPIError) } @@ -263,7 +273,12 @@ module OpenAI class Input < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Models::Evals::Runs::OutputItemListResponse::Sample::Input, + OpenAI::Internal::AnyHash + ) + end # The content of the message. sig { returns(String) } @@ -292,7 +307,12 @@ module OpenAI class Output < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Models::Evals::Runs::OutputItemListResponse::Sample::Output, + OpenAI::Internal::AnyHash + ) + end # The content of the message. sig { returns(T.nilable(String)) } @@ -326,7 +346,12 @@ module OpenAI class Usage < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Models::Evals::Runs::OutputItemListResponse::Sample::Usage, + OpenAI::Internal::AnyHash + ) + end # The number of tokens retrieved from cache. sig { returns(Integer) } diff --git a/rbi/openai/models/evals/runs/output_item_retrieve_params.rbi b/rbi/openai/models/evals/runs/output_item_retrieve_params.rbi index 77adecd0..59e73a99 100644 --- a/rbi/openai/models/evals/runs/output_item_retrieve_params.rbi +++ b/rbi/openai/models/evals/runs/output_item_retrieve_params.rbi @@ -9,7 +9,12 @@ module OpenAI include OpenAI::Internal::Type::RequestParameters OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Evals::Runs::OutputItemRetrieveParams, + OpenAI::Internal::AnyHash + ) + end sig { returns(String) } attr_accessor :eval_id diff --git a/rbi/openai/models/evals/runs/output_item_retrieve_response.rbi b/rbi/openai/models/evals/runs/output_item_retrieve_response.rbi index 2e7053a5..8a39ad5e 100644 --- a/rbi/openai/models/evals/runs/output_item_retrieve_response.rbi +++ b/rbi/openai/models/evals/runs/output_item_retrieve_response.rbi @@ -6,7 +6,12 @@ module OpenAI module Runs class OutputItemRetrieveResponse < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Models::Evals::Runs::OutputItemRetrieveResponse, + OpenAI::Internal::AnyHash + ) + end # Unique identifier for the evaluation run output item. sig { returns(String) } @@ -122,7 +127,12 @@ module OpenAI class Sample < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Models::Evals::Runs::OutputItemRetrieveResponse::Sample, + OpenAI::Internal::AnyHash + ) + end # An object representing an error response from the Eval API. sig { returns(OpenAI::Evals::EvalAPIError) } @@ -265,7 +275,12 @@ module OpenAI class Input < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Models::Evals::Runs::OutputItemRetrieveResponse::Sample::Input, + OpenAI::Internal::AnyHash + ) + end # The content of the message. sig { returns(String) } @@ -294,7 +309,12 @@ module OpenAI class Output < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Models::Evals::Runs::OutputItemRetrieveResponse::Sample::Output, + OpenAI::Internal::AnyHash + ) + end # The content of the message. sig { returns(T.nilable(String)) } @@ -328,7 +348,12 @@ module OpenAI class Usage < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Models::Evals::Runs::OutputItemRetrieveResponse::Sample::Usage, + OpenAI::Internal::AnyHash + ) + end # The number of tokens retrieved from cache. sig { returns(Integer) } diff --git a/rbi/openai/models/file_content_params.rbi b/rbi/openai/models/file_content_params.rbi index 4790429d..4d403623 100644 --- a/rbi/openai/models/file_content_params.rbi +++ b/rbi/openai/models/file_content_params.rbi @@ -6,7 +6,10 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(OpenAI::FileContentParams, OpenAI::Internal::AnyHash) + end sig do params(request_options: OpenAI::RequestOptions::OrHash).returns( diff --git a/rbi/openai/models/file_create_params.rbi b/rbi/openai/models/file_create_params.rbi index db0074ca..d3a1c945 100644 --- a/rbi/openai/models/file_create_params.rbi +++ b/rbi/openai/models/file_create_params.rbi @@ -6,7 +6,10 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(OpenAI::FileCreateParams, OpenAI::Internal::AnyHash) + end # The File object (not file name) to be uploaded. sig { returns(T.any(Pathname, StringIO, IO, OpenAI::FilePart)) } diff --git a/rbi/openai/models/file_delete_params.rbi b/rbi/openai/models/file_delete_params.rbi index 32e8c812..8c870046 100644 --- a/rbi/openai/models/file_delete_params.rbi +++ b/rbi/openai/models/file_delete_params.rbi @@ -6,7 +6,10 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(OpenAI::FileDeleteParams, OpenAI::Internal::AnyHash) + end sig do params(request_options: OpenAI::RequestOptions::OrHash).returns( diff --git a/rbi/openai/models/file_deleted.rbi b/rbi/openai/models/file_deleted.rbi index afff0670..c8a74d38 100644 --- a/rbi/openai/models/file_deleted.rbi +++ b/rbi/openai/models/file_deleted.rbi @@ -3,7 +3,8 @@ module OpenAI module Models class FileDeleted < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias { T.any(OpenAI::FileDeleted, OpenAI::Internal::AnyHash) } sig { returns(String) } attr_accessor :id diff --git a/rbi/openai/models/file_list_params.rbi b/rbi/openai/models/file_list_params.rbi index 03836c50..0fb370b2 100644 --- a/rbi/openai/models/file_list_params.rbi +++ b/rbi/openai/models/file_list_params.rbi @@ -6,7 +6,10 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(OpenAI::FileListParams, OpenAI::Internal::AnyHash) + end # A cursor for use in pagination. `after` is an object ID that defines your place # in the list. For instance, if you make a list request and receive 100 objects, diff --git a/rbi/openai/models/file_object.rbi b/rbi/openai/models/file_object.rbi index 829cee09..437d1b71 100644 --- a/rbi/openai/models/file_object.rbi +++ b/rbi/openai/models/file_object.rbi @@ -3,7 +3,8 @@ module OpenAI module Models class FileObject < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias { T.any(OpenAI::FileObject, OpenAI::Internal::AnyHash) } # The file identifier, which can be referenced in the API endpoints. sig { returns(String) } diff --git a/rbi/openai/models/file_retrieve_params.rbi b/rbi/openai/models/file_retrieve_params.rbi index ed8a974f..f5c3c562 100644 --- a/rbi/openai/models/file_retrieve_params.rbi +++ b/rbi/openai/models/file_retrieve_params.rbi @@ -6,7 +6,10 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(OpenAI::FileRetrieveParams, OpenAI::Internal::AnyHash) + end sig do params(request_options: OpenAI::RequestOptions::OrHash).returns( diff --git a/rbi/openai/models/fine_tuning/alpha/grader_run_params.rbi b/rbi/openai/models/fine_tuning/alpha/grader_run_params.rbi index b2df808e..1c5d0dbd 100644 --- a/rbi/openai/models/fine_tuning/alpha/grader_run_params.rbi +++ b/rbi/openai/models/fine_tuning/alpha/grader_run_params.rbi @@ -9,7 +9,12 @@ module OpenAI include OpenAI::Internal::Type::RequestParameters OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::FineTuning::Alpha::GraderRunParams, + OpenAI::Internal::AnyHash + ) + end # The grader used for the fine-tuning job. sig do diff --git a/rbi/openai/models/fine_tuning/alpha/grader_run_response.rbi b/rbi/openai/models/fine_tuning/alpha/grader_run_response.rbi index 4db912c8..18e6589a 100644 --- a/rbi/openai/models/fine_tuning/alpha/grader_run_response.rbi +++ b/rbi/openai/models/fine_tuning/alpha/grader_run_response.rbi @@ -6,7 +6,12 @@ module OpenAI module Alpha class GraderRunResponse < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Models::FineTuning::Alpha::GraderRunResponse, + OpenAI::Internal::AnyHash + ) + end sig do returns( @@ -65,7 +70,12 @@ module OpenAI class Metadata < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Models::FineTuning::Alpha::GraderRunResponse::Metadata, + OpenAI::Internal::AnyHash + ) + end sig do returns( @@ -142,7 +152,12 @@ module OpenAI class Errors < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Models::FineTuning::Alpha::GraderRunResponse::Metadata::Errors, + OpenAI::Internal::AnyHash + ) + end sig { returns(T::Boolean) } attr_accessor :formula_parse_error diff --git a/rbi/openai/models/fine_tuning/alpha/grader_validate_params.rbi b/rbi/openai/models/fine_tuning/alpha/grader_validate_params.rbi index 461e9373..f8dc6077 100644 --- a/rbi/openai/models/fine_tuning/alpha/grader_validate_params.rbi +++ b/rbi/openai/models/fine_tuning/alpha/grader_validate_params.rbi @@ -9,7 +9,12 @@ module OpenAI include OpenAI::Internal::Type::RequestParameters OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::FineTuning::Alpha::GraderValidateParams, + OpenAI::Internal::AnyHash + ) + end # The grader used for the fine-tuning job. sig do diff --git a/rbi/openai/models/fine_tuning/alpha/grader_validate_response.rbi b/rbi/openai/models/fine_tuning/alpha/grader_validate_response.rbi index ca2d42db..138bf221 100644 --- a/rbi/openai/models/fine_tuning/alpha/grader_validate_response.rbi +++ b/rbi/openai/models/fine_tuning/alpha/grader_validate_response.rbi @@ -6,7 +6,12 @@ module OpenAI module Alpha class GraderValidateResponse < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Models::FineTuning::Alpha::GraderValidateResponse, + OpenAI::Internal::AnyHash + ) + end # The grader used for the fine-tuning job. sig do diff --git a/rbi/openai/models/fine_tuning/checkpoints/permission_create_params.rbi b/rbi/openai/models/fine_tuning/checkpoints/permission_create_params.rbi index bb260bea..26583ba9 100644 --- a/rbi/openai/models/fine_tuning/checkpoints/permission_create_params.rbi +++ b/rbi/openai/models/fine_tuning/checkpoints/permission_create_params.rbi @@ -9,7 +9,12 @@ module OpenAI include OpenAI::Internal::Type::RequestParameters OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::FineTuning::Checkpoints::PermissionCreateParams, + OpenAI::Internal::AnyHash + ) + end # The project identifiers to grant access to. sig { returns(T::Array[String]) } diff --git a/rbi/openai/models/fine_tuning/checkpoints/permission_create_response.rbi b/rbi/openai/models/fine_tuning/checkpoints/permission_create_response.rbi index c17f2d89..356802c5 100644 --- a/rbi/openai/models/fine_tuning/checkpoints/permission_create_response.rbi +++ b/rbi/openai/models/fine_tuning/checkpoints/permission_create_response.rbi @@ -6,7 +6,12 @@ module OpenAI module Checkpoints class PermissionCreateResponse < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Models::FineTuning::Checkpoints::PermissionCreateResponse, + OpenAI::Internal::AnyHash + ) + end # The permission identifier, which can be referenced in the API endpoints. sig { returns(String) } diff --git a/rbi/openai/models/fine_tuning/checkpoints/permission_delete_params.rbi b/rbi/openai/models/fine_tuning/checkpoints/permission_delete_params.rbi index 0be64531..8051825a 100644 --- a/rbi/openai/models/fine_tuning/checkpoints/permission_delete_params.rbi +++ b/rbi/openai/models/fine_tuning/checkpoints/permission_delete_params.rbi @@ -9,7 +9,12 @@ module OpenAI include OpenAI::Internal::Type::RequestParameters OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::FineTuning::Checkpoints::PermissionDeleteParams, + OpenAI::Internal::AnyHash + ) + end sig { returns(String) } attr_accessor :fine_tuned_model_checkpoint diff --git a/rbi/openai/models/fine_tuning/checkpoints/permission_delete_response.rbi b/rbi/openai/models/fine_tuning/checkpoints/permission_delete_response.rbi index f84b6fea..b0b5d45b 100644 --- a/rbi/openai/models/fine_tuning/checkpoints/permission_delete_response.rbi +++ b/rbi/openai/models/fine_tuning/checkpoints/permission_delete_response.rbi @@ -6,7 +6,12 @@ module OpenAI module Checkpoints class PermissionDeleteResponse < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Models::FineTuning::Checkpoints::PermissionDeleteResponse, + OpenAI::Internal::AnyHash + ) + end # The ID of the fine-tuned model checkpoint permission that was deleted. sig { returns(String) } diff --git a/rbi/openai/models/fine_tuning/checkpoints/permission_retrieve_params.rbi b/rbi/openai/models/fine_tuning/checkpoints/permission_retrieve_params.rbi index 84601eba..56996168 100644 --- a/rbi/openai/models/fine_tuning/checkpoints/permission_retrieve_params.rbi +++ b/rbi/openai/models/fine_tuning/checkpoints/permission_retrieve_params.rbi @@ -9,7 +9,12 @@ module OpenAI include OpenAI::Internal::Type::RequestParameters OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::FineTuning::Checkpoints::PermissionRetrieveParams, + OpenAI::Internal::AnyHash + ) + end # Identifier for the last permission ID from the previous pagination request. sig { returns(T.nilable(String)) } diff --git a/rbi/openai/models/fine_tuning/checkpoints/permission_retrieve_response.rbi b/rbi/openai/models/fine_tuning/checkpoints/permission_retrieve_response.rbi index 3c65d481..2501be7b 100644 --- a/rbi/openai/models/fine_tuning/checkpoints/permission_retrieve_response.rbi +++ b/rbi/openai/models/fine_tuning/checkpoints/permission_retrieve_response.rbi @@ -6,7 +6,12 @@ module OpenAI module Checkpoints class PermissionRetrieveResponse < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Models::FineTuning::Checkpoints::PermissionRetrieveResponse, + OpenAI::Internal::AnyHash + ) + end sig do returns( @@ -69,7 +74,12 @@ module OpenAI class Data < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Models::FineTuning::Checkpoints::PermissionRetrieveResponse::Data, + OpenAI::Internal::AnyHash + ) + end # The permission identifier, which can be referenced in the API endpoints. sig { returns(String) } diff --git a/rbi/openai/models/fine_tuning/dpo_hyperparameters.rbi b/rbi/openai/models/fine_tuning/dpo_hyperparameters.rbi index d210f91b..4172bfd0 100644 --- a/rbi/openai/models/fine_tuning/dpo_hyperparameters.rbi +++ b/rbi/openai/models/fine_tuning/dpo_hyperparameters.rbi @@ -4,7 +4,13 @@ module OpenAI module Models module FineTuning class DpoHyperparameters < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::FineTuning::DpoHyperparameters, + OpenAI::Internal::AnyHash + ) + end # Number of examples in each batch. A larger batch size means that model # parameters are updated less frequently, but with lower variance. diff --git a/rbi/openai/models/fine_tuning/dpo_method.rbi b/rbi/openai/models/fine_tuning/dpo_method.rbi index 05f15967..86d2b505 100644 --- a/rbi/openai/models/fine_tuning/dpo_method.rbi +++ b/rbi/openai/models/fine_tuning/dpo_method.rbi @@ -4,7 +4,10 @@ module OpenAI module Models module FineTuning class DpoMethod < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(OpenAI::FineTuning::DpoMethod, OpenAI::Internal::AnyHash) + end # The hyperparameters used for the DPO fine-tuning job. sig { returns(T.nilable(OpenAI::FineTuning::DpoHyperparameters)) } diff --git a/rbi/openai/models/fine_tuning/fine_tuning_job.rbi b/rbi/openai/models/fine_tuning/fine_tuning_job.rbi index 00b007eb..21a26e15 100644 --- a/rbi/openai/models/fine_tuning/fine_tuning_job.rbi +++ b/rbi/openai/models/fine_tuning/fine_tuning_job.rbi @@ -6,7 +6,10 @@ module OpenAI module FineTuning class FineTuningJob < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(OpenAI::FineTuning::FineTuningJob, OpenAI::Internal::AnyHash) + end # The object identifier, which can be referenced in the API endpoints. sig { returns(String) } @@ -255,7 +258,12 @@ module OpenAI class Error < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::FineTuning::FineTuningJob::Error, + OpenAI::Internal::AnyHash + ) + end # A machine-readable error code. sig { returns(String) } @@ -301,7 +309,12 @@ module OpenAI class Hyperparameters < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::FineTuning::FineTuningJob::Hyperparameters, + OpenAI::Internal::AnyHash + ) + end # Number of examples in each batch. A larger batch size means that model # parameters are updated less frequently, but with lower variance. @@ -469,7 +482,12 @@ module OpenAI class Method < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::FineTuning::FineTuningJob::Method, + OpenAI::Internal::AnyHash + ) + end # The type of method. Is either `supervised`, `dpo`, or `reinforcement`. sig do diff --git a/rbi/openai/models/fine_tuning/fine_tuning_job_event.rbi b/rbi/openai/models/fine_tuning/fine_tuning_job_event.rbi index 4cee296b..abbbe399 100644 --- a/rbi/openai/models/fine_tuning/fine_tuning_job_event.rbi +++ b/rbi/openai/models/fine_tuning/fine_tuning_job_event.rbi @@ -6,7 +6,13 @@ module OpenAI module FineTuning class FineTuningJobEvent < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::FineTuning::FineTuningJobEvent, + OpenAI::Internal::AnyHash + ) + end # The object identifier. sig { returns(String) } diff --git a/rbi/openai/models/fine_tuning/fine_tuning_job_wandb_integration.rbi b/rbi/openai/models/fine_tuning/fine_tuning_job_wandb_integration.rbi index c5b719f8..a728e848 100644 --- a/rbi/openai/models/fine_tuning/fine_tuning_job_wandb_integration.rbi +++ b/rbi/openai/models/fine_tuning/fine_tuning_job_wandb_integration.rbi @@ -6,7 +6,13 @@ module OpenAI module FineTuning class FineTuningJobWandbIntegration < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::FineTuning::FineTuningJobWandbIntegration, + OpenAI::Internal::AnyHash + ) + end # The name of the project that the new run will be created under. sig { returns(String) } diff --git a/rbi/openai/models/fine_tuning/fine_tuning_job_wandb_integration_object.rbi b/rbi/openai/models/fine_tuning/fine_tuning_job_wandb_integration_object.rbi index 934a2242..b92f3743 100644 --- a/rbi/openai/models/fine_tuning/fine_tuning_job_wandb_integration_object.rbi +++ b/rbi/openai/models/fine_tuning/fine_tuning_job_wandb_integration_object.rbi @@ -7,7 +7,13 @@ module OpenAI module FineTuning class FineTuningJobWandbIntegrationObject < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::FineTuning::FineTuningJobWandbIntegrationObject, + OpenAI::Internal::AnyHash + ) + end # The type of the integration being enabled for the fine-tuning job sig { returns(Symbol) } diff --git a/rbi/openai/models/fine_tuning/job_cancel_params.rbi b/rbi/openai/models/fine_tuning/job_cancel_params.rbi index 92f99a73..3ae73b64 100644 --- a/rbi/openai/models/fine_tuning/job_cancel_params.rbi +++ b/rbi/openai/models/fine_tuning/job_cancel_params.rbi @@ -7,7 +7,13 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::FineTuning::JobCancelParams, + OpenAI::Internal::AnyHash + ) + end sig do params(request_options: OpenAI::RequestOptions::OrHash).returns( diff --git a/rbi/openai/models/fine_tuning/job_create_params.rbi b/rbi/openai/models/fine_tuning/job_create_params.rbi index 2f9fcad2..32e49ed1 100644 --- a/rbi/openai/models/fine_tuning/job_create_params.rbi +++ b/rbi/openai/models/fine_tuning/job_create_params.rbi @@ -7,7 +7,13 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::FineTuning::JobCreateParams, + OpenAI::Internal::AnyHash + ) + end # The name of the model to fine-tune. You can select one of the # [supported models](https://platform.openai.com/docs/guides/fine-tuning#which-models-can-be-fine-tuned). @@ -279,7 +285,12 @@ module OpenAI class Hyperparameters < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::FineTuning::JobCreateParams::Hyperparameters, + OpenAI::Internal::AnyHash + ) + end # Number of examples in each batch. A larger batch size means that model # parameters are updated less frequently, but with lower variance. @@ -396,7 +407,12 @@ module OpenAI class Integration < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::FineTuning::JobCreateParams::Integration, + OpenAI::Internal::AnyHash + ) + end # The type of integration to enable. Currently, only "wandb" (Weights and Biases) # is supported. @@ -452,7 +468,12 @@ module OpenAI class Wandb < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::FineTuning::JobCreateParams::Integration::Wandb, + OpenAI::Internal::AnyHash + ) + end # The name of the project that the new run will be created under. sig { returns(String) } @@ -524,7 +545,12 @@ module OpenAI class Method < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::FineTuning::JobCreateParams::Method, + OpenAI::Internal::AnyHash + ) + end # The type of method. Is either `supervised`, `dpo`, or `reinforcement`. sig do diff --git a/rbi/openai/models/fine_tuning/job_list_events_params.rbi b/rbi/openai/models/fine_tuning/job_list_events_params.rbi index 60c32908..9f01086f 100644 --- a/rbi/openai/models/fine_tuning/job_list_events_params.rbi +++ b/rbi/openai/models/fine_tuning/job_list_events_params.rbi @@ -7,7 +7,13 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::FineTuning::JobListEventsParams, + OpenAI::Internal::AnyHash + ) + end # Identifier for the last event from the previous pagination request. sig { returns(T.nilable(String)) } diff --git a/rbi/openai/models/fine_tuning/job_list_params.rbi b/rbi/openai/models/fine_tuning/job_list_params.rbi index 03b6a56d..96c0267e 100644 --- a/rbi/openai/models/fine_tuning/job_list_params.rbi +++ b/rbi/openai/models/fine_tuning/job_list_params.rbi @@ -7,7 +7,10 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(OpenAI::FineTuning::JobListParams, OpenAI::Internal::AnyHash) + end # Identifier for the last job from the previous pagination request. sig { returns(T.nilable(String)) } diff --git a/rbi/openai/models/fine_tuning/job_pause_params.rbi b/rbi/openai/models/fine_tuning/job_pause_params.rbi index 66935edf..cf0e05ac 100644 --- a/rbi/openai/models/fine_tuning/job_pause_params.rbi +++ b/rbi/openai/models/fine_tuning/job_pause_params.rbi @@ -7,7 +7,10 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(OpenAI::FineTuning::JobPauseParams, OpenAI::Internal::AnyHash) + end sig do params(request_options: OpenAI::RequestOptions::OrHash).returns( diff --git a/rbi/openai/models/fine_tuning/job_resume_params.rbi b/rbi/openai/models/fine_tuning/job_resume_params.rbi index da91536e..43fa43b3 100644 --- a/rbi/openai/models/fine_tuning/job_resume_params.rbi +++ b/rbi/openai/models/fine_tuning/job_resume_params.rbi @@ -7,7 +7,13 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::FineTuning::JobResumeParams, + OpenAI::Internal::AnyHash + ) + end sig do params(request_options: OpenAI::RequestOptions::OrHash).returns( diff --git a/rbi/openai/models/fine_tuning/job_retrieve_params.rbi b/rbi/openai/models/fine_tuning/job_retrieve_params.rbi index 2d5d4a41..b43b2e48 100644 --- a/rbi/openai/models/fine_tuning/job_retrieve_params.rbi +++ b/rbi/openai/models/fine_tuning/job_retrieve_params.rbi @@ -7,7 +7,13 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::FineTuning::JobRetrieveParams, + OpenAI::Internal::AnyHash + ) + end sig do params(request_options: OpenAI::RequestOptions::OrHash).returns( diff --git a/rbi/openai/models/fine_tuning/jobs/checkpoint_list_params.rbi b/rbi/openai/models/fine_tuning/jobs/checkpoint_list_params.rbi index 29a595b3..06c2f618 100644 --- a/rbi/openai/models/fine_tuning/jobs/checkpoint_list_params.rbi +++ b/rbi/openai/models/fine_tuning/jobs/checkpoint_list_params.rbi @@ -9,7 +9,12 @@ module OpenAI include OpenAI::Internal::Type::RequestParameters OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::FineTuning::Jobs::CheckpointListParams, + OpenAI::Internal::AnyHash + ) + end # Identifier for the last checkpoint ID from the previous pagination request. sig { returns(T.nilable(String)) } diff --git a/rbi/openai/models/fine_tuning/jobs/fine_tuning_job_checkpoint.rbi b/rbi/openai/models/fine_tuning/jobs/fine_tuning_job_checkpoint.rbi index 80b8eb71..ab83c2cc 100644 --- a/rbi/openai/models/fine_tuning/jobs/fine_tuning_job_checkpoint.rbi +++ b/rbi/openai/models/fine_tuning/jobs/fine_tuning_job_checkpoint.rbi @@ -6,7 +6,12 @@ module OpenAI module Jobs class FineTuningJobCheckpoint < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::FineTuning::Jobs::FineTuningJobCheckpoint, + OpenAI::Internal::AnyHash + ) + end # The checkpoint identifier, which can be referenced in the API endpoints. sig { returns(String) } @@ -97,7 +102,12 @@ module OpenAI class Metrics < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::FineTuning::Jobs::FineTuningJobCheckpoint::Metrics, + OpenAI::Internal::AnyHash + ) + end sig { returns(T.nilable(Float)) } attr_reader :full_valid_loss diff --git a/rbi/openai/models/fine_tuning/reinforcement_hyperparameters.rbi b/rbi/openai/models/fine_tuning/reinforcement_hyperparameters.rbi index 1c81d0d8..3105e2ef 100644 --- a/rbi/openai/models/fine_tuning/reinforcement_hyperparameters.rbi +++ b/rbi/openai/models/fine_tuning/reinforcement_hyperparameters.rbi @@ -4,7 +4,13 @@ module OpenAI module Models module FineTuning class ReinforcementHyperparameters < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::FineTuning::ReinforcementHyperparameters, + OpenAI::Internal::AnyHash + ) + end # Number of examples in each batch. A larger batch size means that model # parameters are updated less frequently, but with lower variance. diff --git a/rbi/openai/models/fine_tuning/reinforcement_method.rbi b/rbi/openai/models/fine_tuning/reinforcement_method.rbi index 2ed3ae7b..f49c9b5c 100644 --- a/rbi/openai/models/fine_tuning/reinforcement_method.rbi +++ b/rbi/openai/models/fine_tuning/reinforcement_method.rbi @@ -4,7 +4,13 @@ module OpenAI module Models module FineTuning class ReinforcementMethod < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::FineTuning::ReinforcementMethod, + OpenAI::Internal::AnyHash + ) + end # The grader used for the fine-tuning job. sig do diff --git a/rbi/openai/models/fine_tuning/supervised_hyperparameters.rbi b/rbi/openai/models/fine_tuning/supervised_hyperparameters.rbi index bc9b8321..dc8167ab 100644 --- a/rbi/openai/models/fine_tuning/supervised_hyperparameters.rbi +++ b/rbi/openai/models/fine_tuning/supervised_hyperparameters.rbi @@ -4,7 +4,13 @@ module OpenAI module Models module FineTuning class SupervisedHyperparameters < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::FineTuning::SupervisedHyperparameters, + OpenAI::Internal::AnyHash + ) + end # Number of examples in each batch. A larger batch size means that model # parameters are updated less frequently, but with lower variance. diff --git a/rbi/openai/models/fine_tuning/supervised_method.rbi b/rbi/openai/models/fine_tuning/supervised_method.rbi index 01cf3450..8b4b000e 100644 --- a/rbi/openai/models/fine_tuning/supervised_method.rbi +++ b/rbi/openai/models/fine_tuning/supervised_method.rbi @@ -4,7 +4,13 @@ module OpenAI module Models module FineTuning class SupervisedMethod < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::FineTuning::SupervisedMethod, + OpenAI::Internal::AnyHash + ) + end # The hyperparameters used for the fine-tuning job. sig do diff --git a/rbi/openai/models/function_definition.rbi b/rbi/openai/models/function_definition.rbi index 66649eae..1d615e84 100644 --- a/rbi/openai/models/function_definition.rbi +++ b/rbi/openai/models/function_definition.rbi @@ -3,7 +3,10 @@ module OpenAI module Models class FunctionDefinition < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(OpenAI::FunctionDefinition, OpenAI::Internal::AnyHash) + end # The name of the function to be called. Must be a-z, A-Z, 0-9, or contain # underscores and dashes, with a maximum length of 64. diff --git a/rbi/openai/models/graders/label_model_grader.rbi b/rbi/openai/models/graders/label_model_grader.rbi index 7ed4f4e7..9d062b87 100644 --- a/rbi/openai/models/graders/label_model_grader.rbi +++ b/rbi/openai/models/graders/label_model_grader.rbi @@ -6,7 +6,10 @@ module OpenAI module Graders class LabelModelGrader < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(OpenAI::Graders::LabelModelGrader, OpenAI::Internal::AnyHash) + end sig { returns(T::Array[OpenAI::Graders::LabelModelGrader::Input]) } attr_accessor :input @@ -75,7 +78,12 @@ module OpenAI class Input < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Graders::LabelModelGrader::Input, + OpenAI::Internal::AnyHash + ) + end # Text inputs to the model - can contain template strings. sig do @@ -173,7 +181,12 @@ module OpenAI class OutputText < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Graders::LabelModelGrader::Input::Content::OutputText, + OpenAI::Internal::AnyHash + ) + end # The text output from the model. sig { returns(String) } diff --git a/rbi/openai/models/graders/multi_grader.rbi b/rbi/openai/models/graders/multi_grader.rbi index 73159cd7..bed184f8 100644 --- a/rbi/openai/models/graders/multi_grader.rbi +++ b/rbi/openai/models/graders/multi_grader.rbi @@ -6,7 +6,10 @@ module OpenAI module Graders class MultiGrader < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(OpenAI::Graders::MultiGrader, OpenAI::Internal::AnyHash) + end # A formula to calculate the output based on grader results. sig { returns(String) } diff --git a/rbi/openai/models/graders/python_grader.rbi b/rbi/openai/models/graders/python_grader.rbi index 35441d1b..ed504598 100644 --- a/rbi/openai/models/graders/python_grader.rbi +++ b/rbi/openai/models/graders/python_grader.rbi @@ -6,7 +6,10 @@ module OpenAI module Graders class PythonGrader < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(OpenAI::Graders::PythonGrader, OpenAI::Internal::AnyHash) + end # The name of the grader. sig { returns(String) } diff --git a/rbi/openai/models/graders/score_model_grader.rbi b/rbi/openai/models/graders/score_model_grader.rbi index 1e082a6e..ab602eda 100644 --- a/rbi/openai/models/graders/score_model_grader.rbi +++ b/rbi/openai/models/graders/score_model_grader.rbi @@ -6,7 +6,10 @@ module OpenAI module Graders class ScoreModelGrader < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(OpenAI::Graders::ScoreModelGrader, OpenAI::Internal::AnyHash) + end # The input text. This may include template strings. sig { returns(T::Array[OpenAI::Graders::ScoreModelGrader::Input]) } @@ -82,7 +85,12 @@ module OpenAI class Input < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Graders::ScoreModelGrader::Input, + OpenAI::Internal::AnyHash + ) + end # Text inputs to the model - can contain template strings. sig do @@ -180,7 +188,12 @@ module OpenAI class OutputText < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Graders::ScoreModelGrader::Input::Content::OutputText, + OpenAI::Internal::AnyHash + ) + end # The text output from the model. sig { returns(String) } diff --git a/rbi/openai/models/graders/string_check_grader.rbi b/rbi/openai/models/graders/string_check_grader.rbi index 73de12d2..f46aca63 100644 --- a/rbi/openai/models/graders/string_check_grader.rbi +++ b/rbi/openai/models/graders/string_check_grader.rbi @@ -6,7 +6,10 @@ module OpenAI module Graders class StringCheckGrader < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(OpenAI::Graders::StringCheckGrader, OpenAI::Internal::AnyHash) + end # The input text. This may include template strings. sig { returns(String) } diff --git a/rbi/openai/models/graders/text_similarity_grader.rbi b/rbi/openai/models/graders/text_similarity_grader.rbi index 6d25d1e0..687e2f93 100644 --- a/rbi/openai/models/graders/text_similarity_grader.rbi +++ b/rbi/openai/models/graders/text_similarity_grader.rbi @@ -6,7 +6,13 @@ module OpenAI module Graders class TextSimilarityGrader < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::Graders::TextSimilarityGrader, + OpenAI::Internal::AnyHash + ) + end # The evaluation metric to use. One of `fuzzy_match`, `bleu`, `gleu`, `meteor`, # `rouge_1`, `rouge_2`, `rouge_3`, `rouge_4`, `rouge_5`, or `rouge_l`. diff --git a/rbi/openai/models/image.rbi b/rbi/openai/models/image.rbi index 867722c0..6c01cf82 100644 --- a/rbi/openai/models/image.rbi +++ b/rbi/openai/models/image.rbi @@ -3,7 +3,7 @@ module OpenAI module Models class Image < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = T.type_alias { T.any(OpenAI::Image, OpenAI::Internal::AnyHash) } # The base64-encoded JSON of the generated image. Default value for `gpt-image-1`, # and only present if `response_format` is set to `b64_json` for `dall-e-2` and diff --git a/rbi/openai/models/image_create_variation_params.rbi b/rbi/openai/models/image_create_variation_params.rbi index 9c31879a..a6be588e 100644 --- a/rbi/openai/models/image_create_variation_params.rbi +++ b/rbi/openai/models/image_create_variation_params.rbi @@ -6,7 +6,10 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(OpenAI::ImageCreateVariationParams, OpenAI::Internal::AnyHash) + end # The image to use as the basis for the variation(s). Must be a valid PNG file, # less than 4MB, and square. diff --git a/rbi/openai/models/image_edit_params.rbi b/rbi/openai/models/image_edit_params.rbi index 6fd55690..7225f73f 100644 --- a/rbi/openai/models/image_edit_params.rbi +++ b/rbi/openai/models/image_edit_params.rbi @@ -6,7 +6,10 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(OpenAI::ImageEditParams, OpenAI::Internal::AnyHash) + end # The image(s) to edit. Must be a supported image file or an array of images. # diff --git a/rbi/openai/models/image_generate_params.rbi b/rbi/openai/models/image_generate_params.rbi index 72894e72..c81dbbcf 100644 --- a/rbi/openai/models/image_generate_params.rbi +++ b/rbi/openai/models/image_generate_params.rbi @@ -6,7 +6,10 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(OpenAI::ImageGenerateParams, OpenAI::Internal::AnyHash) + end # A text description of the desired image(s). The maximum length is 32000 # characters for `gpt-image-1`, 1000 characters for `dall-e-2` and 4000 characters diff --git a/rbi/openai/models/images_response.rbi b/rbi/openai/models/images_response.rbi index 86766493..b9d60ee3 100644 --- a/rbi/openai/models/images_response.rbi +++ b/rbi/openai/models/images_response.rbi @@ -3,7 +3,10 @@ module OpenAI module Models class ImagesResponse < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(OpenAI::ImagesResponse, OpenAI::Internal::AnyHash) + end # The Unix timestamp (in seconds) of when the image was created. sig { returns(Integer) } @@ -54,7 +57,10 @@ module OpenAI end class Usage < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(OpenAI::ImagesResponse::Usage, OpenAI::Internal::AnyHash) + end # The number of tokens (images and text) in the input prompt. sig { returns(Integer) } @@ -118,7 +124,12 @@ module OpenAI class InputTokensDetails < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::ImagesResponse::Usage::InputTokensDetails, + OpenAI::Internal::AnyHash + ) + end # The number of image tokens in the input prompt. sig { returns(Integer) } diff --git a/rbi/openai/models/model.rbi b/rbi/openai/models/model.rbi index 3e2886a8..e84f4d72 100644 --- a/rbi/openai/models/model.rbi +++ b/rbi/openai/models/model.rbi @@ -3,7 +3,7 @@ module OpenAI module Models class Model < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = T.type_alias { T.any(OpenAI::Model, OpenAI::Internal::AnyHash) } # The model identifier, which can be referenced in the API endpoints. sig { returns(String) } diff --git a/rbi/openai/models/model_delete_params.rbi b/rbi/openai/models/model_delete_params.rbi index 34aa523d..50bdedfa 100644 --- a/rbi/openai/models/model_delete_params.rbi +++ b/rbi/openai/models/model_delete_params.rbi @@ -6,7 +6,10 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(OpenAI::ModelDeleteParams, OpenAI::Internal::AnyHash) + end sig do params(request_options: OpenAI::RequestOptions::OrHash).returns( diff --git a/rbi/openai/models/model_deleted.rbi b/rbi/openai/models/model_deleted.rbi index 61571ba3..611d54d9 100644 --- a/rbi/openai/models/model_deleted.rbi +++ b/rbi/openai/models/model_deleted.rbi @@ -3,7 +3,8 @@ module OpenAI module Models class ModelDeleted < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias { T.any(OpenAI::ModelDeleted, OpenAI::Internal::AnyHash) } sig { returns(String) } attr_accessor :id diff --git a/rbi/openai/models/model_list_params.rbi b/rbi/openai/models/model_list_params.rbi index 6b5c0602..c07911ee 100644 --- a/rbi/openai/models/model_list_params.rbi +++ b/rbi/openai/models/model_list_params.rbi @@ -6,7 +6,10 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(OpenAI::ModelListParams, OpenAI::Internal::AnyHash) + end sig do params(request_options: OpenAI::RequestOptions::OrHash).returns( diff --git a/rbi/openai/models/model_retrieve_params.rbi b/rbi/openai/models/model_retrieve_params.rbi index 69b847c8..9d8d4c05 100644 --- a/rbi/openai/models/model_retrieve_params.rbi +++ b/rbi/openai/models/model_retrieve_params.rbi @@ -6,7 +6,10 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(OpenAI::ModelRetrieveParams, OpenAI::Internal::AnyHash) + end sig do params(request_options: OpenAI::RequestOptions::OrHash).returns( diff --git a/rbi/openai/models/moderation.rbi b/rbi/openai/models/moderation.rbi index d069ca8a..b6e45d8b 100644 --- a/rbi/openai/models/moderation.rbi +++ b/rbi/openai/models/moderation.rbi @@ -3,7 +3,8 @@ module OpenAI module Models class Moderation < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias { T.any(OpenAI::Moderation, OpenAI::Internal::AnyHash) } # A list of the categories, and whether they are flagged or not. sig { returns(OpenAI::Moderation::Categories) } @@ -73,7 +74,10 @@ module OpenAI end class Categories < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(OpenAI::Moderation::Categories, OpenAI::Internal::AnyHash) + end # Content that expresses, incites, or promotes harassing language towards any # target. @@ -233,7 +237,13 @@ module OpenAI end class CategoryAppliedInputTypes < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::Moderation::CategoryAppliedInputTypes, + OpenAI::Internal::AnyHash + ) + end # The applied input type(s) for the category 'harassment'. sig do @@ -919,7 +929,10 @@ module OpenAI end class CategoryScores < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(OpenAI::Moderation::CategoryScores, OpenAI::Internal::AnyHash) + end # The score for the category 'harassment'. sig { returns(Float) } diff --git a/rbi/openai/models/moderation_create_params.rbi b/rbi/openai/models/moderation_create_params.rbi index 7644e955..1f2a76f8 100644 --- a/rbi/openai/models/moderation_create_params.rbi +++ b/rbi/openai/models/moderation_create_params.rbi @@ -6,7 +6,10 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(OpenAI::ModerationCreateParams, OpenAI::Internal::AnyHash) + end # Input (or inputs) to classify. Can be a single string, an array of strings, or # an array of multi-modal input objects similar to other models. diff --git a/rbi/openai/models/moderation_create_response.rbi b/rbi/openai/models/moderation_create_response.rbi index 0da4c5b3..bdf51d1c 100644 --- a/rbi/openai/models/moderation_create_response.rbi +++ b/rbi/openai/models/moderation_create_response.rbi @@ -3,7 +3,13 @@ module OpenAI module Models class ModerationCreateResponse < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::Models::ModerationCreateResponse, + OpenAI::Internal::AnyHash + ) + end # The unique identifier for the moderation request. sig { returns(String) } diff --git a/rbi/openai/models/moderation_image_url_input.rbi b/rbi/openai/models/moderation_image_url_input.rbi index df96e516..4867a348 100644 --- a/rbi/openai/models/moderation_image_url_input.rbi +++ b/rbi/openai/models/moderation_image_url_input.rbi @@ -3,7 +3,10 @@ module OpenAI module Models class ModerationImageURLInput < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(OpenAI::ModerationImageURLInput, OpenAI::Internal::AnyHash) + end # Contains either an image URL or a data URL for a base64 encoded image. sig { returns(OpenAI::ModerationImageURLInput::ImageURL) } @@ -44,7 +47,13 @@ module OpenAI end class ImageURL < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::ModerationImageURLInput::ImageURL, + OpenAI::Internal::AnyHash + ) + end # Either a URL of the image or the base64 encoded image data. sig { returns(String) } diff --git a/rbi/openai/models/moderation_text_input.rbi b/rbi/openai/models/moderation_text_input.rbi index 98b5925e..7c08a607 100644 --- a/rbi/openai/models/moderation_text_input.rbi +++ b/rbi/openai/models/moderation_text_input.rbi @@ -3,7 +3,10 @@ module OpenAI module Models class ModerationTextInput < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(OpenAI::ModerationTextInput, OpenAI::Internal::AnyHash) + end # A string of text to classify. sig { returns(String) } diff --git a/rbi/openai/models/other_file_chunking_strategy_object.rbi b/rbi/openai/models/other_file_chunking_strategy_object.rbi index d7ae19bd..744dd2d8 100644 --- a/rbi/openai/models/other_file_chunking_strategy_object.rbi +++ b/rbi/openai/models/other_file_chunking_strategy_object.rbi @@ -3,7 +3,13 @@ module OpenAI module Models class OtherFileChunkingStrategyObject < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::OtherFileChunkingStrategyObject, + OpenAI::Internal::AnyHash + ) + end # Always `other`. sig { returns(Symbol) } diff --git a/rbi/openai/models/reasoning.rbi b/rbi/openai/models/reasoning.rbi index c11df8b1..dc89cb60 100644 --- a/rbi/openai/models/reasoning.rbi +++ b/rbi/openai/models/reasoning.rbi @@ -3,7 +3,8 @@ module OpenAI module Models class Reasoning < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias { T.any(OpenAI::Reasoning, OpenAI::Internal::AnyHash) } # **o-series models only** # diff --git a/rbi/openai/models/response_format_json_object.rbi b/rbi/openai/models/response_format_json_object.rbi index a02e14bc..6aebd1ed 100644 --- a/rbi/openai/models/response_format_json_object.rbi +++ b/rbi/openai/models/response_format_json_object.rbi @@ -3,7 +3,10 @@ module OpenAI module Models class ResponseFormatJSONObject < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(OpenAI::ResponseFormatJSONObject, OpenAI::Internal::AnyHash) + end # The type of response format being defined. Always `json_object`. sig { returns(Symbol) } diff --git a/rbi/openai/models/response_format_json_schema.rbi b/rbi/openai/models/response_format_json_schema.rbi index dbaac8e0..8155e9c9 100644 --- a/rbi/openai/models/response_format_json_schema.rbi +++ b/rbi/openai/models/response_format_json_schema.rbi @@ -3,7 +3,10 @@ module OpenAI module Models class ResponseFormatJSONSchema < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(OpenAI::ResponseFormatJSONSchema, OpenAI::Internal::AnyHash) + end # Structured Outputs configuration options, including a JSON Schema. sig { returns(OpenAI::ResponseFormatJSONSchema::JSONSchema) } @@ -49,7 +52,13 @@ module OpenAI end class JSONSchema < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::ResponseFormatJSONSchema::JSONSchema, + OpenAI::Internal::AnyHash + ) + end # The name of the response format. Must be a-z, A-Z, 0-9, or contain underscores # and dashes, with a maximum length of 64. diff --git a/rbi/openai/models/response_format_text.rbi b/rbi/openai/models/response_format_text.rbi index a20756e2..24fa0549 100644 --- a/rbi/openai/models/response_format_text.rbi +++ b/rbi/openai/models/response_format_text.rbi @@ -3,7 +3,10 @@ module OpenAI module Models class ResponseFormatText < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(OpenAI::ResponseFormatText, OpenAI::Internal::AnyHash) + end # The type of response format being defined. Always `text`. sig { returns(Symbol) } diff --git a/rbi/openai/models/responses/computer_tool.rbi b/rbi/openai/models/responses/computer_tool.rbi index 9cfcfe6a..af8eff7a 100644 --- a/rbi/openai/models/responses/computer_tool.rbi +++ b/rbi/openai/models/responses/computer_tool.rbi @@ -4,7 +4,10 @@ module OpenAI module Models module Responses class ComputerTool < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(OpenAI::Responses::ComputerTool, OpenAI::Internal::AnyHash) + end # The height of the computer display. sig { returns(Integer) } diff --git a/rbi/openai/models/responses/easy_input_message.rbi b/rbi/openai/models/responses/easy_input_message.rbi index 304fcceb..f4f1e6e9 100644 --- a/rbi/openai/models/responses/easy_input_message.rbi +++ b/rbi/openai/models/responses/easy_input_message.rbi @@ -4,7 +4,13 @@ module OpenAI module Models module Responses class EasyInputMessage < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::Responses::EasyInputMessage, + OpenAI::Internal::AnyHash + ) + end # Text, image, or audio input to the model, used to generate a response. Can also # contain previous assistant responses. diff --git a/rbi/openai/models/responses/file_search_tool.rbi b/rbi/openai/models/responses/file_search_tool.rbi index 286697f9..29ff2004 100644 --- a/rbi/openai/models/responses/file_search_tool.rbi +++ b/rbi/openai/models/responses/file_search_tool.rbi @@ -4,7 +4,10 @@ module OpenAI module Models module Responses class FileSearchTool < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(OpenAI::Responses::FileSearchTool, OpenAI::Internal::AnyHash) + end # The type of the file search tool. Always `file_search`. sig { returns(Symbol) } @@ -115,7 +118,12 @@ module OpenAI class RankingOptions < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Responses::FileSearchTool::RankingOptions, + OpenAI::Internal::AnyHash + ) + end # The ranker to use for the file search. sig do diff --git a/rbi/openai/models/responses/function_tool.rbi b/rbi/openai/models/responses/function_tool.rbi index c2658fc5..16f8f2d7 100644 --- a/rbi/openai/models/responses/function_tool.rbi +++ b/rbi/openai/models/responses/function_tool.rbi @@ -4,7 +4,10 @@ module OpenAI module Models module Responses class FunctionTool < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(OpenAI::Responses::FunctionTool, OpenAI::Internal::AnyHash) + end # The name of the function to call. sig { returns(String) } diff --git a/rbi/openai/models/responses/input_item_list_params.rbi b/rbi/openai/models/responses/input_item_list_params.rbi index 8fe8462a..403928db 100644 --- a/rbi/openai/models/responses/input_item_list_params.rbi +++ b/rbi/openai/models/responses/input_item_list_params.rbi @@ -7,7 +7,13 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::Responses::InputItemListParams, + OpenAI::Internal::AnyHash + ) + end # An item ID to list items after, used in pagination. sig { returns(T.nilable(String)) } diff --git a/rbi/openai/models/responses/response.rbi b/rbi/openai/models/responses/response.rbi index 3f45fc15..fcc7367f 100644 --- a/rbi/openai/models/responses/response.rbi +++ b/rbi/openai/models/responses/response.rbi @@ -4,7 +4,10 @@ module OpenAI module Models module Responses class Response < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(OpenAI::Responses::Response, OpenAI::Internal::AnyHash) + end # Unique identifier for this Response. sig { returns(String) } @@ -515,7 +518,12 @@ module OpenAI class IncompleteDetails < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Responses::Response::IncompleteDetails, + OpenAI::Internal::AnyHash + ) + end # The reason why the response is incomplete. sig do diff --git a/rbi/openai/models/responses/response_audio_delta_event.rbi b/rbi/openai/models/responses/response_audio_delta_event.rbi index 0ed8d2e1..87c6eff6 100644 --- a/rbi/openai/models/responses/response_audio_delta_event.rbi +++ b/rbi/openai/models/responses/response_audio_delta_event.rbi @@ -4,7 +4,13 @@ module OpenAI module Models module Responses class ResponseAudioDeltaEvent < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::Responses::ResponseAudioDeltaEvent, + OpenAI::Internal::AnyHash + ) + end # A chunk of Base64 encoded response audio bytes. sig { returns(String) } diff --git a/rbi/openai/models/responses/response_audio_done_event.rbi b/rbi/openai/models/responses/response_audio_done_event.rbi index 3d74ccf4..d9a86980 100644 --- a/rbi/openai/models/responses/response_audio_done_event.rbi +++ b/rbi/openai/models/responses/response_audio_done_event.rbi @@ -4,7 +4,13 @@ module OpenAI module Models module Responses class ResponseAudioDoneEvent < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::Responses::ResponseAudioDoneEvent, + OpenAI::Internal::AnyHash + ) + end # The type of the event. Always `response.audio.done`. sig { returns(Symbol) } diff --git a/rbi/openai/models/responses/response_audio_transcript_delta_event.rbi b/rbi/openai/models/responses/response_audio_transcript_delta_event.rbi index bb70f631..74e69b9b 100644 --- a/rbi/openai/models/responses/response_audio_transcript_delta_event.rbi +++ b/rbi/openai/models/responses/response_audio_transcript_delta_event.rbi @@ -4,7 +4,13 @@ module OpenAI module Models module Responses class ResponseAudioTranscriptDeltaEvent < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::Responses::ResponseAudioTranscriptDeltaEvent, + OpenAI::Internal::AnyHash + ) + end # The partial transcript of the audio response. sig { returns(String) } diff --git a/rbi/openai/models/responses/response_audio_transcript_done_event.rbi b/rbi/openai/models/responses/response_audio_transcript_done_event.rbi index df2381ba..d0d670a2 100644 --- a/rbi/openai/models/responses/response_audio_transcript_done_event.rbi +++ b/rbi/openai/models/responses/response_audio_transcript_done_event.rbi @@ -4,7 +4,13 @@ module OpenAI module Models module Responses class ResponseAudioTranscriptDoneEvent < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::Responses::ResponseAudioTranscriptDoneEvent, + OpenAI::Internal::AnyHash + ) + end # The type of the event. Always `response.audio.transcript.done`. sig { returns(Symbol) } diff --git a/rbi/openai/models/responses/response_code_interpreter_call_code_delta_event.rbi b/rbi/openai/models/responses/response_code_interpreter_call_code_delta_event.rbi index dd5c1396..220e24ca 100644 --- a/rbi/openai/models/responses/response_code_interpreter_call_code_delta_event.rbi +++ b/rbi/openai/models/responses/response_code_interpreter_call_code_delta_event.rbi @@ -4,7 +4,13 @@ module OpenAI module Models module Responses class ResponseCodeInterpreterCallCodeDeltaEvent < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::Responses::ResponseCodeInterpreterCallCodeDeltaEvent, + OpenAI::Internal::AnyHash + ) + end # The partial code snippet added by the code interpreter. sig { returns(String) } diff --git a/rbi/openai/models/responses/response_code_interpreter_call_code_done_event.rbi b/rbi/openai/models/responses/response_code_interpreter_call_code_done_event.rbi index 9cd3b09c..43a90d5f 100644 --- a/rbi/openai/models/responses/response_code_interpreter_call_code_done_event.rbi +++ b/rbi/openai/models/responses/response_code_interpreter_call_code_done_event.rbi @@ -4,7 +4,13 @@ module OpenAI module Models module Responses class ResponseCodeInterpreterCallCodeDoneEvent < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::Responses::ResponseCodeInterpreterCallCodeDoneEvent, + OpenAI::Internal::AnyHash + ) + end # The final code snippet output by the code interpreter. sig { returns(String) } diff --git a/rbi/openai/models/responses/response_code_interpreter_call_completed_event.rbi b/rbi/openai/models/responses/response_code_interpreter_call_completed_event.rbi index e2f8c573..be772f72 100644 --- a/rbi/openai/models/responses/response_code_interpreter_call_completed_event.rbi +++ b/rbi/openai/models/responses/response_code_interpreter_call_completed_event.rbi @@ -4,7 +4,13 @@ module OpenAI module Models module Responses class ResponseCodeInterpreterCallCompletedEvent < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::Responses::ResponseCodeInterpreterCallCompletedEvent, + OpenAI::Internal::AnyHash + ) + end # A tool call to run code. sig { returns(OpenAI::Responses::ResponseCodeInterpreterToolCall) } diff --git a/rbi/openai/models/responses/response_code_interpreter_call_in_progress_event.rbi b/rbi/openai/models/responses/response_code_interpreter_call_in_progress_event.rbi index 983c9007..578fdb15 100644 --- a/rbi/openai/models/responses/response_code_interpreter_call_in_progress_event.rbi +++ b/rbi/openai/models/responses/response_code_interpreter_call_in_progress_event.rbi @@ -4,7 +4,13 @@ module OpenAI module Models module Responses class ResponseCodeInterpreterCallInProgressEvent < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::Responses::ResponseCodeInterpreterCallInProgressEvent, + OpenAI::Internal::AnyHash + ) + end # A tool call to run code. sig { returns(OpenAI::Responses::ResponseCodeInterpreterToolCall) } diff --git a/rbi/openai/models/responses/response_code_interpreter_call_interpreting_event.rbi b/rbi/openai/models/responses/response_code_interpreter_call_interpreting_event.rbi index 031a295b..bdf1313a 100644 --- a/rbi/openai/models/responses/response_code_interpreter_call_interpreting_event.rbi +++ b/rbi/openai/models/responses/response_code_interpreter_call_interpreting_event.rbi @@ -4,7 +4,13 @@ module OpenAI module Models module Responses class ResponseCodeInterpreterCallInterpretingEvent < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::Responses::ResponseCodeInterpreterCallInterpretingEvent, + OpenAI::Internal::AnyHash + ) + end # A tool call to run code. sig { returns(OpenAI::Responses::ResponseCodeInterpreterToolCall) } diff --git a/rbi/openai/models/responses/response_code_interpreter_tool_call.rbi b/rbi/openai/models/responses/response_code_interpreter_tool_call.rbi index d964daa1..6d787089 100644 --- a/rbi/openai/models/responses/response_code_interpreter_tool_call.rbi +++ b/rbi/openai/models/responses/response_code_interpreter_tool_call.rbi @@ -4,7 +4,13 @@ module OpenAI module Models module Responses class ResponseCodeInterpreterToolCall < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::Responses::ResponseCodeInterpreterToolCall, + OpenAI::Internal::AnyHash + ) + end # The unique ID of the code interpreter tool call. sig { returns(String) } @@ -105,7 +111,12 @@ module OpenAI class Logs < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Responses::ResponseCodeInterpreterToolCall::Result::Logs, + OpenAI::Internal::AnyHash + ) + end # The logs of the code interpreter tool call. sig { returns(String) } @@ -132,7 +143,12 @@ module OpenAI class Files < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Responses::ResponseCodeInterpreterToolCall::Result::Files, + OpenAI::Internal::AnyHash + ) + end sig do returns( @@ -180,7 +196,12 @@ module OpenAI class File < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Responses::ResponseCodeInterpreterToolCall::Result::Files::File, + OpenAI::Internal::AnyHash + ) + end # The ID of the file. sig { returns(String) } diff --git a/rbi/openai/models/responses/response_completed_event.rbi b/rbi/openai/models/responses/response_completed_event.rbi index 3c962886..18dd991a 100644 --- a/rbi/openai/models/responses/response_completed_event.rbi +++ b/rbi/openai/models/responses/response_completed_event.rbi @@ -4,7 +4,13 @@ module OpenAI module Models module Responses class ResponseCompletedEvent < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::Responses::ResponseCompletedEvent, + OpenAI::Internal::AnyHash + ) + end # Properties of the completed response. sig { returns(OpenAI::Responses::Response) } diff --git a/rbi/openai/models/responses/response_computer_tool_call.rbi b/rbi/openai/models/responses/response_computer_tool_call.rbi index bd660209..8bdf6af6 100644 --- a/rbi/openai/models/responses/response_computer_tool_call.rbi +++ b/rbi/openai/models/responses/response_computer_tool_call.rbi @@ -4,7 +4,13 @@ module OpenAI module Models module Responses class ResponseComputerToolCall < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::Responses::ResponseComputerToolCall, + OpenAI::Internal::AnyHash + ) + end # The unique ID of the computer call. sig { returns(String) } @@ -151,7 +157,12 @@ module OpenAI class Click < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Responses::ResponseComputerToolCall::Action::Click, + OpenAI::Internal::AnyHash + ) + end # Indicates which mouse button was pressed during the click. One of `left`, # `right`, `wheel`, `back`, or `forward`. @@ -267,7 +278,12 @@ module OpenAI class DoubleClick < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Responses::ResponseComputerToolCall::Action::DoubleClick, + OpenAI::Internal::AnyHash + ) + end # Specifies the event type. For a double click action, this property is always set # to `double_click`. @@ -306,7 +322,12 @@ module OpenAI class Drag < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Responses::ResponseComputerToolCall::Action::Drag, + OpenAI::Internal::AnyHash + ) + end # An array of coordinates representing the path of the drag action. Coordinates # will appear as an array of objects, eg @@ -374,7 +395,12 @@ module OpenAI class Path < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Responses::ResponseComputerToolCall::Action::Drag::Path, + OpenAI::Internal::AnyHash + ) + end # The x-coordinate. sig { returns(Integer) } @@ -402,7 +428,12 @@ module OpenAI class Keypress < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Responses::ResponseComputerToolCall::Action::Keypress, + OpenAI::Internal::AnyHash + ) + end # The combination of keys the model is requesting to be pressed. This is an array # of strings, each representing a key. @@ -437,7 +468,12 @@ module OpenAI class Move < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Responses::ResponseComputerToolCall::Action::Move, + OpenAI::Internal::AnyHash + ) + end # Specifies the event type. For a move action, this property is always set to # `move`. @@ -476,7 +512,12 @@ module OpenAI class Screenshot < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Responses::ResponseComputerToolCall::Action::Screenshot, + OpenAI::Internal::AnyHash + ) + end # Specifies the event type. For a screenshot action, this property is always set # to `screenshot`. @@ -499,7 +540,12 @@ module OpenAI class Scroll < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Responses::ResponseComputerToolCall::Action::Scroll, + OpenAI::Internal::AnyHash + ) + end # The horizontal scroll distance. sig { returns(Integer) } @@ -564,7 +610,12 @@ module OpenAI class Type < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Responses::ResponseComputerToolCall::Action::Type, + OpenAI::Internal::AnyHash + ) + end # The text to type. sig { returns(String) } @@ -593,7 +644,12 @@ module OpenAI class Wait < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Responses::ResponseComputerToolCall::Action::Wait, + OpenAI::Internal::AnyHash + ) + end # Specifies the event type. For a wait action, this property is always set to # `wait`. @@ -627,7 +683,12 @@ module OpenAI class PendingSafetyCheck < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Responses::ResponseComputerToolCall::PendingSafetyCheck, + OpenAI::Internal::AnyHash + ) + end # The ID of the pending safety check. sig { returns(String) } diff --git a/rbi/openai/models/responses/response_computer_tool_call_output_item.rbi b/rbi/openai/models/responses/response_computer_tool_call_output_item.rbi index f5b233b2..c56f05d6 100644 --- a/rbi/openai/models/responses/response_computer_tool_call_output_item.rbi +++ b/rbi/openai/models/responses/response_computer_tool_call_output_item.rbi @@ -4,7 +4,13 @@ module OpenAI module Models module Responses class ResponseComputerToolCallOutputItem < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::Responses::ResponseComputerToolCallOutputItem, + OpenAI::Internal::AnyHash + ) + end # The unique ID of the computer call tool output. sig { returns(String) } @@ -129,7 +135,12 @@ module OpenAI class AcknowledgedSafetyCheck < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Responses::ResponseComputerToolCallOutputItem::AcknowledgedSafetyCheck, + OpenAI::Internal::AnyHash + ) + end # The ID of the pending safety check. sig { returns(String) } diff --git a/rbi/openai/models/responses/response_computer_tool_call_output_screenshot.rbi b/rbi/openai/models/responses/response_computer_tool_call_output_screenshot.rbi index 7961326d..fc13ccfe 100644 --- a/rbi/openai/models/responses/response_computer_tool_call_output_screenshot.rbi +++ b/rbi/openai/models/responses/response_computer_tool_call_output_screenshot.rbi @@ -4,7 +4,13 @@ module OpenAI module Models module Responses class ResponseComputerToolCallOutputScreenshot < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::Responses::ResponseComputerToolCallOutputScreenshot, + OpenAI::Internal::AnyHash + ) + end # Specifies the event type. For a computer screenshot, this property is always set # to `computer_screenshot`. diff --git a/rbi/openai/models/responses/response_content_part_added_event.rbi b/rbi/openai/models/responses/response_content_part_added_event.rbi index 341887c8..3cc852cc 100644 --- a/rbi/openai/models/responses/response_content_part_added_event.rbi +++ b/rbi/openai/models/responses/response_content_part_added_event.rbi @@ -4,7 +4,13 @@ module OpenAI module Models module Responses class ResponseContentPartAddedEvent < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::Responses::ResponseContentPartAddedEvent, + OpenAI::Internal::AnyHash + ) + end # The index of the content part that was added. sig { returns(Integer) } diff --git a/rbi/openai/models/responses/response_content_part_done_event.rbi b/rbi/openai/models/responses/response_content_part_done_event.rbi index e004eed3..6bf2b951 100644 --- a/rbi/openai/models/responses/response_content_part_done_event.rbi +++ b/rbi/openai/models/responses/response_content_part_done_event.rbi @@ -4,7 +4,13 @@ module OpenAI module Models module Responses class ResponseContentPartDoneEvent < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::Responses::ResponseContentPartDoneEvent, + OpenAI::Internal::AnyHash + ) + end # The index of the content part that is done. sig { returns(Integer) } diff --git a/rbi/openai/models/responses/response_create_params.rbi b/rbi/openai/models/responses/response_create_params.rbi index 9f9c2fc9..0e582266 100644 --- a/rbi/openai/models/responses/response_create_params.rbi +++ b/rbi/openai/models/responses/response_create_params.rbi @@ -7,7 +7,13 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::Responses::ResponseCreateParams, + OpenAI::Internal::AnyHash + ) + end # Text, image, or file inputs to the model, used to generate a response. # diff --git a/rbi/openai/models/responses/response_created_event.rbi b/rbi/openai/models/responses/response_created_event.rbi index 49ef465e..ab66dcdd 100644 --- a/rbi/openai/models/responses/response_created_event.rbi +++ b/rbi/openai/models/responses/response_created_event.rbi @@ -4,7 +4,13 @@ module OpenAI module Models module Responses class ResponseCreatedEvent < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::Responses::ResponseCreatedEvent, + OpenAI::Internal::AnyHash + ) + end # The response that was created. sig { returns(OpenAI::Responses::Response) } diff --git a/rbi/openai/models/responses/response_delete_params.rbi b/rbi/openai/models/responses/response_delete_params.rbi index b5adf324..6d3d35bd 100644 --- a/rbi/openai/models/responses/response_delete_params.rbi +++ b/rbi/openai/models/responses/response_delete_params.rbi @@ -7,7 +7,13 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::Responses::ResponseDeleteParams, + OpenAI::Internal::AnyHash + ) + end sig do params(request_options: OpenAI::RequestOptions::OrHash).returns( diff --git a/rbi/openai/models/responses/response_error.rbi b/rbi/openai/models/responses/response_error.rbi index 1f52c7f1..b27ac5dd 100644 --- a/rbi/openai/models/responses/response_error.rbi +++ b/rbi/openai/models/responses/response_error.rbi @@ -4,7 +4,10 @@ module OpenAI module Models module Responses class ResponseError < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(OpenAI::Responses::ResponseError, OpenAI::Internal::AnyHash) + end # The error code for the response. sig { returns(OpenAI::Responses::ResponseError::Code::TaggedSymbol) } diff --git a/rbi/openai/models/responses/response_error_event.rbi b/rbi/openai/models/responses/response_error_event.rbi index 34c0a475..5c93890e 100644 --- a/rbi/openai/models/responses/response_error_event.rbi +++ b/rbi/openai/models/responses/response_error_event.rbi @@ -4,7 +4,13 @@ module OpenAI module Models module Responses class ResponseErrorEvent < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::Responses::ResponseErrorEvent, + OpenAI::Internal::AnyHash + ) + end # The error code. sig { returns(T.nilable(String)) } diff --git a/rbi/openai/models/responses/response_failed_event.rbi b/rbi/openai/models/responses/response_failed_event.rbi index f4a8afd0..8f8f2c19 100644 --- a/rbi/openai/models/responses/response_failed_event.rbi +++ b/rbi/openai/models/responses/response_failed_event.rbi @@ -4,7 +4,13 @@ module OpenAI module Models module Responses class ResponseFailedEvent < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::Responses::ResponseFailedEvent, + OpenAI::Internal::AnyHash + ) + end # The response that failed. sig { returns(OpenAI::Responses::Response) } diff --git a/rbi/openai/models/responses/response_file_search_call_completed_event.rbi b/rbi/openai/models/responses/response_file_search_call_completed_event.rbi index e8ba8841..3b6a2331 100644 --- a/rbi/openai/models/responses/response_file_search_call_completed_event.rbi +++ b/rbi/openai/models/responses/response_file_search_call_completed_event.rbi @@ -4,7 +4,13 @@ module OpenAI module Models module Responses class ResponseFileSearchCallCompletedEvent < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::Responses::ResponseFileSearchCallCompletedEvent, + OpenAI::Internal::AnyHash + ) + end # The ID of the output item that the file search call is initiated. sig { returns(String) } diff --git a/rbi/openai/models/responses/response_file_search_call_in_progress_event.rbi b/rbi/openai/models/responses/response_file_search_call_in_progress_event.rbi index 9c90a725..d93e58f0 100644 --- a/rbi/openai/models/responses/response_file_search_call_in_progress_event.rbi +++ b/rbi/openai/models/responses/response_file_search_call_in_progress_event.rbi @@ -4,7 +4,13 @@ module OpenAI module Models module Responses class ResponseFileSearchCallInProgressEvent < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::Responses::ResponseFileSearchCallInProgressEvent, + OpenAI::Internal::AnyHash + ) + end # The ID of the output item that the file search call is initiated. sig { returns(String) } diff --git a/rbi/openai/models/responses/response_file_search_call_searching_event.rbi b/rbi/openai/models/responses/response_file_search_call_searching_event.rbi index 9e44847c..6fd13a21 100644 --- a/rbi/openai/models/responses/response_file_search_call_searching_event.rbi +++ b/rbi/openai/models/responses/response_file_search_call_searching_event.rbi @@ -4,7 +4,13 @@ module OpenAI module Models module Responses class ResponseFileSearchCallSearchingEvent < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::Responses::ResponseFileSearchCallSearchingEvent, + OpenAI::Internal::AnyHash + ) + end # The ID of the output item that the file search call is initiated. sig { returns(String) } diff --git a/rbi/openai/models/responses/response_file_search_tool_call.rbi b/rbi/openai/models/responses/response_file_search_tool_call.rbi index 9a7ca93a..c2b95318 100644 --- a/rbi/openai/models/responses/response_file_search_tool_call.rbi +++ b/rbi/openai/models/responses/response_file_search_tool_call.rbi @@ -4,7 +4,13 @@ module OpenAI module Models module Responses class ResponseFileSearchToolCall < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::Responses::ResponseFileSearchToolCall, + OpenAI::Internal::AnyHash + ) + end # The unique ID of the file search tool call. sig { returns(String) } @@ -143,7 +149,12 @@ module OpenAI class Result < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Responses::ResponseFileSearchToolCall::Result, + OpenAI::Internal::AnyHash + ) + end # 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 diff --git a/rbi/openai/models/responses/response_format_text_json_schema_config.rbi b/rbi/openai/models/responses/response_format_text_json_schema_config.rbi index 0ec62279..0b27d712 100644 --- a/rbi/openai/models/responses/response_format_text_json_schema_config.rbi +++ b/rbi/openai/models/responses/response_format_text_json_schema_config.rbi @@ -4,7 +4,13 @@ module OpenAI module Models module Responses class ResponseFormatTextJSONSchemaConfig < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::Responses::ResponseFormatTextJSONSchemaConfig, + OpenAI::Internal::AnyHash + ) + end # The name of the response format. Must be a-z, A-Z, 0-9, or contain underscores # and dashes, with a maximum length of 64. diff --git a/rbi/openai/models/responses/response_function_call_arguments_delta_event.rbi b/rbi/openai/models/responses/response_function_call_arguments_delta_event.rbi index 2932676c..3e24f3b5 100644 --- a/rbi/openai/models/responses/response_function_call_arguments_delta_event.rbi +++ b/rbi/openai/models/responses/response_function_call_arguments_delta_event.rbi @@ -4,7 +4,13 @@ module OpenAI module Models module Responses class ResponseFunctionCallArgumentsDeltaEvent < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::Responses::ResponseFunctionCallArgumentsDeltaEvent, + OpenAI::Internal::AnyHash + ) + end # The function-call arguments delta that is added. sig { returns(String) } diff --git a/rbi/openai/models/responses/response_function_call_arguments_done_event.rbi b/rbi/openai/models/responses/response_function_call_arguments_done_event.rbi index 76dec426..5ec5cb31 100644 --- a/rbi/openai/models/responses/response_function_call_arguments_done_event.rbi +++ b/rbi/openai/models/responses/response_function_call_arguments_done_event.rbi @@ -4,7 +4,13 @@ module OpenAI module Models module Responses class ResponseFunctionCallArgumentsDoneEvent < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::Responses::ResponseFunctionCallArgumentsDoneEvent, + OpenAI::Internal::AnyHash + ) + end # The function-call arguments. sig { returns(String) } diff --git a/rbi/openai/models/responses/response_function_tool_call.rbi b/rbi/openai/models/responses/response_function_tool_call.rbi index ed3d200e..5e98ba1a 100644 --- a/rbi/openai/models/responses/response_function_tool_call.rbi +++ b/rbi/openai/models/responses/response_function_tool_call.rbi @@ -4,7 +4,13 @@ module OpenAI module Models module Responses class ResponseFunctionToolCall < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::Responses::ResponseFunctionToolCall, + OpenAI::Internal::AnyHash + ) + end # A JSON string of the arguments to pass to the function. sig { returns(String) } diff --git a/rbi/openai/models/responses/response_function_tool_call_item.rbi b/rbi/openai/models/responses/response_function_tool_call_item.rbi index 75156efc..514a0568 100644 --- a/rbi/openai/models/responses/response_function_tool_call_item.rbi +++ b/rbi/openai/models/responses/response_function_tool_call_item.rbi @@ -4,7 +4,13 @@ module OpenAI module Models module Responses class ResponseFunctionToolCallItem < OpenAI::Models::Responses::ResponseFunctionToolCall - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::Responses::ResponseFunctionToolCallItem, + OpenAI::Internal::AnyHash + ) + end # The unique ID of the function tool call. sig { returns(String) } diff --git a/rbi/openai/models/responses/response_function_tool_call_output_item.rbi b/rbi/openai/models/responses/response_function_tool_call_output_item.rbi index f050d6bc..b3820b0d 100644 --- a/rbi/openai/models/responses/response_function_tool_call_output_item.rbi +++ b/rbi/openai/models/responses/response_function_tool_call_output_item.rbi @@ -4,7 +4,13 @@ module OpenAI module Models module Responses class ResponseFunctionToolCallOutputItem < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::Responses::ResponseFunctionToolCallOutputItem, + OpenAI::Internal::AnyHash + ) + end # The unique ID of the function call tool output. sig { returns(String) } diff --git a/rbi/openai/models/responses/response_function_web_search.rbi b/rbi/openai/models/responses/response_function_web_search.rbi index 2e535daa..d95d1cb9 100644 --- a/rbi/openai/models/responses/response_function_web_search.rbi +++ b/rbi/openai/models/responses/response_function_web_search.rbi @@ -4,7 +4,13 @@ module OpenAI module Models module Responses class ResponseFunctionWebSearch < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::Responses::ResponseFunctionWebSearch, + OpenAI::Internal::AnyHash + ) + end # The unique ID of the web search tool call. sig { returns(String) } diff --git a/rbi/openai/models/responses/response_in_progress_event.rbi b/rbi/openai/models/responses/response_in_progress_event.rbi index 933f623b..3bb0ccb9 100644 --- a/rbi/openai/models/responses/response_in_progress_event.rbi +++ b/rbi/openai/models/responses/response_in_progress_event.rbi @@ -4,7 +4,13 @@ module OpenAI module Models module Responses class ResponseInProgressEvent < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::Responses::ResponseInProgressEvent, + OpenAI::Internal::AnyHash + ) + end # The response that is in progress. sig { returns(OpenAI::Responses::Response) } diff --git a/rbi/openai/models/responses/response_incomplete_event.rbi b/rbi/openai/models/responses/response_incomplete_event.rbi index 047ad561..a30d27a8 100644 --- a/rbi/openai/models/responses/response_incomplete_event.rbi +++ b/rbi/openai/models/responses/response_incomplete_event.rbi @@ -4,7 +4,13 @@ module OpenAI module Models module Responses class ResponseIncompleteEvent < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::Responses::ResponseIncompleteEvent, + OpenAI::Internal::AnyHash + ) + end # The response that was incomplete. sig { returns(OpenAI::Responses::Response) } diff --git a/rbi/openai/models/responses/response_input_audio.rbi b/rbi/openai/models/responses/response_input_audio.rbi index 0cacbacd..6b771d48 100644 --- a/rbi/openai/models/responses/response_input_audio.rbi +++ b/rbi/openai/models/responses/response_input_audio.rbi @@ -4,7 +4,13 @@ module OpenAI module Models module Responses class ResponseInputAudio < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::Responses::ResponseInputAudio, + OpenAI::Internal::AnyHash + ) + end # Base64-encoded audio data. sig { returns(String) } diff --git a/rbi/openai/models/responses/response_input_file.rbi b/rbi/openai/models/responses/response_input_file.rbi index 3275a394..19ecb616 100644 --- a/rbi/openai/models/responses/response_input_file.rbi +++ b/rbi/openai/models/responses/response_input_file.rbi @@ -4,7 +4,13 @@ module OpenAI module Models module Responses class ResponseInputFile < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::Responses::ResponseInputFile, + OpenAI::Internal::AnyHash + ) + end # The type of the input item. Always `input_file`. sig { returns(Symbol) } diff --git a/rbi/openai/models/responses/response_input_image.rbi b/rbi/openai/models/responses/response_input_image.rbi index 182aa6d4..a553503b 100644 --- a/rbi/openai/models/responses/response_input_image.rbi +++ b/rbi/openai/models/responses/response_input_image.rbi @@ -4,7 +4,13 @@ module OpenAI module Models module Responses class ResponseInputImage < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::Responses::ResponseInputImage, + OpenAI::Internal::AnyHash + ) + end # The detail level of the image to be sent to the model. One of `high`, `low`, or # `auto`. Defaults to `auto`. diff --git a/rbi/openai/models/responses/response_input_item.rbi b/rbi/openai/models/responses/response_input_item.rbi index 3d0c8ba2..2d59b644 100644 --- a/rbi/openai/models/responses/response_input_item.rbi +++ b/rbi/openai/models/responses/response_input_item.rbi @@ -30,7 +30,12 @@ module OpenAI class Message < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Responses::ResponseInputItem::Message, + OpenAI::Internal::AnyHash + ) + end # A list of one or many input items to the model, containing different content # types. @@ -264,7 +269,12 @@ module OpenAI class ComputerCallOutput < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Responses::ResponseInputItem::ComputerCallOutput, + OpenAI::Internal::AnyHash + ) + end # The ID of the computer tool call that produced the output. sig { returns(String) } @@ -380,7 +390,12 @@ module OpenAI class AcknowledgedSafetyCheck < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Responses::ResponseInputItem::ComputerCallOutput::AcknowledgedSafetyCheck, + OpenAI::Internal::AnyHash + ) + end # The ID of the pending safety check. sig { returns(String) } @@ -469,7 +484,12 @@ module OpenAI class FunctionCallOutput < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Responses::ResponseInputItem::FunctionCallOutput, + OpenAI::Internal::AnyHash + ) + end # The unique ID of the function tool call generated by the model. sig { returns(String) } @@ -589,7 +609,12 @@ module OpenAI class ItemReference < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Responses::ResponseInputItem::ItemReference, + OpenAI::Internal::AnyHash + ) + end # The ID of the item to reference. sig { returns(String) } diff --git a/rbi/openai/models/responses/response_input_message_item.rbi b/rbi/openai/models/responses/response_input_message_item.rbi index 25f40889..c1190de8 100644 --- a/rbi/openai/models/responses/response_input_message_item.rbi +++ b/rbi/openai/models/responses/response_input_message_item.rbi @@ -4,7 +4,13 @@ module OpenAI module Models module Responses class ResponseInputMessageItem < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::Responses::ResponseInputMessageItem, + OpenAI::Internal::AnyHash + ) + end # The unique ID of the message input. sig { returns(String) } diff --git a/rbi/openai/models/responses/response_input_text.rbi b/rbi/openai/models/responses/response_input_text.rbi index 566e9627..fddfbd40 100644 --- a/rbi/openai/models/responses/response_input_text.rbi +++ b/rbi/openai/models/responses/response_input_text.rbi @@ -4,7 +4,13 @@ module OpenAI module Models module Responses class ResponseInputText < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::Responses::ResponseInputText, + OpenAI::Internal::AnyHash + ) + end # The text input to the model. sig { returns(String) } diff --git a/rbi/openai/models/responses/response_item_list.rbi b/rbi/openai/models/responses/response_item_list.rbi index ef2ba10b..b819f00a 100644 --- a/rbi/openai/models/responses/response_item_list.rbi +++ b/rbi/openai/models/responses/response_item_list.rbi @@ -6,7 +6,13 @@ module OpenAI module Responses class ResponseItemList < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::Responses::ResponseItemList, + OpenAI::Internal::AnyHash + ) + end # A list of items used to generate this response. sig do diff --git a/rbi/openai/models/responses/response_output_audio.rbi b/rbi/openai/models/responses/response_output_audio.rbi index bfcafd48..49472582 100644 --- a/rbi/openai/models/responses/response_output_audio.rbi +++ b/rbi/openai/models/responses/response_output_audio.rbi @@ -4,7 +4,13 @@ module OpenAI module Models module Responses class ResponseOutputAudio < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::Responses::ResponseOutputAudio, + OpenAI::Internal::AnyHash + ) + end # Base64-encoded audio data from the model. sig { returns(String) } diff --git a/rbi/openai/models/responses/response_output_item_added_event.rbi b/rbi/openai/models/responses/response_output_item_added_event.rbi index 7f0f565c..8f37ebb9 100644 --- a/rbi/openai/models/responses/response_output_item_added_event.rbi +++ b/rbi/openai/models/responses/response_output_item_added_event.rbi @@ -4,7 +4,13 @@ module OpenAI module Models module Responses class ResponseOutputItemAddedEvent < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::Responses::ResponseOutputItemAddedEvent, + OpenAI::Internal::AnyHash + ) + end # The output item that was added. sig do diff --git a/rbi/openai/models/responses/response_output_item_done_event.rbi b/rbi/openai/models/responses/response_output_item_done_event.rbi index 94e4db56..ff21f27a 100644 --- a/rbi/openai/models/responses/response_output_item_done_event.rbi +++ b/rbi/openai/models/responses/response_output_item_done_event.rbi @@ -4,7 +4,13 @@ module OpenAI module Models module Responses class ResponseOutputItemDoneEvent < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::Responses::ResponseOutputItemDoneEvent, + OpenAI::Internal::AnyHash + ) + end # The output item that was marked done. sig do diff --git a/rbi/openai/models/responses/response_output_message.rbi b/rbi/openai/models/responses/response_output_message.rbi index e807c5bc..8e057823 100644 --- a/rbi/openai/models/responses/response_output_message.rbi +++ b/rbi/openai/models/responses/response_output_message.rbi @@ -4,7 +4,13 @@ module OpenAI module Models module Responses class ResponseOutputMessage < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::Responses::ResponseOutputMessage, + OpenAI::Internal::AnyHash + ) + end # The unique ID of the output message. sig { returns(String) } diff --git a/rbi/openai/models/responses/response_output_refusal.rbi b/rbi/openai/models/responses/response_output_refusal.rbi index 0d0d1a26..ef08df31 100644 --- a/rbi/openai/models/responses/response_output_refusal.rbi +++ b/rbi/openai/models/responses/response_output_refusal.rbi @@ -4,7 +4,13 @@ module OpenAI module Models module Responses class ResponseOutputRefusal < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::Responses::ResponseOutputRefusal, + OpenAI::Internal::AnyHash + ) + end # The refusal explanationfrom the model. sig { returns(String) } diff --git a/rbi/openai/models/responses/response_output_text.rbi b/rbi/openai/models/responses/response_output_text.rbi index cea49a6e..f73a5755 100644 --- a/rbi/openai/models/responses/response_output_text.rbi +++ b/rbi/openai/models/responses/response_output_text.rbi @@ -4,7 +4,13 @@ module OpenAI module Models module Responses class ResponseOutputText < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::Responses::ResponseOutputText, + OpenAI::Internal::AnyHash + ) + end # The annotations of the text output. sig do @@ -87,7 +93,12 @@ module OpenAI class FileCitation < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Responses::ResponseOutputText::Annotation::FileCitation, + OpenAI::Internal::AnyHash + ) + end # The ID of the file. sig { returns(String) } @@ -128,7 +139,12 @@ module OpenAI class URLCitation < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Responses::ResponseOutputText::Annotation::URLCitation, + OpenAI::Internal::AnyHash + ) + end # The index of the last character of the URL citation in the message. sig { returns(Integer) } @@ -191,7 +207,12 @@ module OpenAI class FilePath < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Responses::ResponseOutputText::Annotation::FilePath, + OpenAI::Internal::AnyHash + ) + end # The ID of the file. sig { returns(String) } diff --git a/rbi/openai/models/responses/response_reasoning_item.rbi b/rbi/openai/models/responses/response_reasoning_item.rbi index d54abb0d..0317e535 100644 --- a/rbi/openai/models/responses/response_reasoning_item.rbi +++ b/rbi/openai/models/responses/response_reasoning_item.rbi @@ -4,7 +4,13 @@ module OpenAI module Models module Responses class ResponseReasoningItem < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::Responses::ResponseReasoningItem, + OpenAI::Internal::AnyHash + ) + end # The unique identifier of the reasoning content. sig { returns(String) } @@ -92,7 +98,12 @@ module OpenAI class Summary < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Responses::ResponseReasoningItem::Summary, + OpenAI::Internal::AnyHash + ) + end # A short summary of the reasoning used by the model when generating the response. sig { returns(String) } diff --git a/rbi/openai/models/responses/response_reasoning_summary_part_added_event.rbi b/rbi/openai/models/responses/response_reasoning_summary_part_added_event.rbi index 260bed98..7e0103dc 100644 --- a/rbi/openai/models/responses/response_reasoning_summary_part_added_event.rbi +++ b/rbi/openai/models/responses/response_reasoning_summary_part_added_event.rbi @@ -4,7 +4,13 @@ module OpenAI module Models module Responses class ResponseReasoningSummaryPartAddedEvent < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::Responses::ResponseReasoningSummaryPartAddedEvent, + OpenAI::Internal::AnyHash + ) + end # The ID of the item this summary part is associated with. sig { returns(String) } @@ -80,7 +86,12 @@ module OpenAI class Part < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Responses::ResponseReasoningSummaryPartAddedEvent::Part, + OpenAI::Internal::AnyHash + ) + end # The text of the summary part. sig { returns(String) } diff --git a/rbi/openai/models/responses/response_reasoning_summary_part_done_event.rbi b/rbi/openai/models/responses/response_reasoning_summary_part_done_event.rbi index 036aaa0d..ecf52172 100644 --- a/rbi/openai/models/responses/response_reasoning_summary_part_done_event.rbi +++ b/rbi/openai/models/responses/response_reasoning_summary_part_done_event.rbi @@ -4,7 +4,13 @@ module OpenAI module Models module Responses class ResponseReasoningSummaryPartDoneEvent < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::Responses::ResponseReasoningSummaryPartDoneEvent, + OpenAI::Internal::AnyHash + ) + end # The ID of the item this summary part is associated with. sig { returns(String) } @@ -80,7 +86,12 @@ module OpenAI class Part < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Responses::ResponseReasoningSummaryPartDoneEvent::Part, + OpenAI::Internal::AnyHash + ) + end # The text of the summary part. sig { returns(String) } diff --git a/rbi/openai/models/responses/response_reasoning_summary_text_delta_event.rbi b/rbi/openai/models/responses/response_reasoning_summary_text_delta_event.rbi index 6fb92b4d..0367f592 100644 --- a/rbi/openai/models/responses/response_reasoning_summary_text_delta_event.rbi +++ b/rbi/openai/models/responses/response_reasoning_summary_text_delta_event.rbi @@ -4,7 +4,13 @@ module OpenAI module Models module Responses class ResponseReasoningSummaryTextDeltaEvent < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::Responses::ResponseReasoningSummaryTextDeltaEvent, + OpenAI::Internal::AnyHash + ) + end # The text delta that was added to the summary. sig { returns(String) } diff --git a/rbi/openai/models/responses/response_reasoning_summary_text_done_event.rbi b/rbi/openai/models/responses/response_reasoning_summary_text_done_event.rbi index a9f0d59c..89590e6b 100644 --- a/rbi/openai/models/responses/response_reasoning_summary_text_done_event.rbi +++ b/rbi/openai/models/responses/response_reasoning_summary_text_done_event.rbi @@ -4,7 +4,13 @@ module OpenAI module Models module Responses class ResponseReasoningSummaryTextDoneEvent < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::Responses::ResponseReasoningSummaryTextDoneEvent, + OpenAI::Internal::AnyHash + ) + end # The ID of the item this summary text is associated with. sig { returns(String) } diff --git a/rbi/openai/models/responses/response_refusal_delta_event.rbi b/rbi/openai/models/responses/response_refusal_delta_event.rbi index a89025e3..cde0e1ec 100644 --- a/rbi/openai/models/responses/response_refusal_delta_event.rbi +++ b/rbi/openai/models/responses/response_refusal_delta_event.rbi @@ -4,7 +4,13 @@ module OpenAI module Models module Responses class ResponseRefusalDeltaEvent < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::Responses::ResponseRefusalDeltaEvent, + OpenAI::Internal::AnyHash + ) + end # The index of the content part that the refusal text is added to. sig { returns(Integer) } diff --git a/rbi/openai/models/responses/response_refusal_done_event.rbi b/rbi/openai/models/responses/response_refusal_done_event.rbi index 0100485a..db039d4f 100644 --- a/rbi/openai/models/responses/response_refusal_done_event.rbi +++ b/rbi/openai/models/responses/response_refusal_done_event.rbi @@ -4,7 +4,13 @@ module OpenAI module Models module Responses class ResponseRefusalDoneEvent < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::Responses::ResponseRefusalDoneEvent, + OpenAI::Internal::AnyHash + ) + end # The index of the content part that the refusal text is finalized. sig { returns(Integer) } diff --git a/rbi/openai/models/responses/response_retrieve_params.rbi b/rbi/openai/models/responses/response_retrieve_params.rbi index 95522e58..c1e80237 100644 --- a/rbi/openai/models/responses/response_retrieve_params.rbi +++ b/rbi/openai/models/responses/response_retrieve_params.rbi @@ -7,7 +7,13 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::Responses::ResponseRetrieveParams, + OpenAI::Internal::AnyHash + ) + end # Additional fields to include in the response. See the `include` parameter for # Response creation above for more information. diff --git a/rbi/openai/models/responses/response_text_annotation_delta_event.rbi b/rbi/openai/models/responses/response_text_annotation_delta_event.rbi index c235f425..d42d93ce 100644 --- a/rbi/openai/models/responses/response_text_annotation_delta_event.rbi +++ b/rbi/openai/models/responses/response_text_annotation_delta_event.rbi @@ -4,7 +4,13 @@ module OpenAI module Models module Responses class ResponseTextAnnotationDeltaEvent < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::Responses::ResponseTextAnnotationDeltaEvent, + OpenAI::Internal::AnyHash + ) + end # A citation to a file. sig do @@ -105,7 +111,12 @@ module OpenAI class FileCitation < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Responses::ResponseTextAnnotationDeltaEvent::Annotation::FileCitation, + OpenAI::Internal::AnyHash + ) + end # The ID of the file. sig { returns(String) } @@ -146,7 +157,12 @@ module OpenAI class URLCitation < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Responses::ResponseTextAnnotationDeltaEvent::Annotation::URLCitation, + OpenAI::Internal::AnyHash + ) + end # The index of the last character of the URL citation in the message. sig { returns(Integer) } @@ -209,7 +225,12 @@ module OpenAI class FilePath < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Responses::ResponseTextAnnotationDeltaEvent::Annotation::FilePath, + OpenAI::Internal::AnyHash + ) + end # The ID of the file. sig { returns(String) } diff --git a/rbi/openai/models/responses/response_text_config.rbi b/rbi/openai/models/responses/response_text_config.rbi index ddd0d65c..5103891f 100644 --- a/rbi/openai/models/responses/response_text_config.rbi +++ b/rbi/openai/models/responses/response_text_config.rbi @@ -4,7 +4,13 @@ module OpenAI module Models module Responses class ResponseTextConfig < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::Responses::ResponseTextConfig, + OpenAI::Internal::AnyHash + ) + end # An object specifying the format that the model must output. # diff --git a/rbi/openai/models/responses/response_text_delta_event.rbi b/rbi/openai/models/responses/response_text_delta_event.rbi index 5b4d13ac..661b88d1 100644 --- a/rbi/openai/models/responses/response_text_delta_event.rbi +++ b/rbi/openai/models/responses/response_text_delta_event.rbi @@ -4,7 +4,13 @@ module OpenAI module Models module Responses class ResponseTextDeltaEvent < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::Responses::ResponseTextDeltaEvent, + OpenAI::Internal::AnyHash + ) + end # The index of the content part that the text delta was added to. sig { returns(Integer) } diff --git a/rbi/openai/models/responses/response_text_done_event.rbi b/rbi/openai/models/responses/response_text_done_event.rbi index 1b05e949..2b142d10 100644 --- a/rbi/openai/models/responses/response_text_done_event.rbi +++ b/rbi/openai/models/responses/response_text_done_event.rbi @@ -4,7 +4,13 @@ module OpenAI module Models module Responses class ResponseTextDoneEvent < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::Responses::ResponseTextDoneEvent, + OpenAI::Internal::AnyHash + ) + end # The index of the content part that the text content is finalized. sig { returns(Integer) } diff --git a/rbi/openai/models/responses/response_usage.rbi b/rbi/openai/models/responses/response_usage.rbi index e9e0c3bc..34f8734a 100644 --- a/rbi/openai/models/responses/response_usage.rbi +++ b/rbi/openai/models/responses/response_usage.rbi @@ -4,7 +4,10 @@ module OpenAI module Models module Responses class ResponseUsage < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(OpenAI::Responses::ResponseUsage, OpenAI::Internal::AnyHash) + end # The number of input tokens. sig { returns(Integer) } @@ -87,7 +90,12 @@ module OpenAI class InputTokensDetails < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Responses::ResponseUsage::InputTokensDetails, + OpenAI::Internal::AnyHash + ) + end # The number of tokens that were retrieved from the cache. # [More on prompt caching](https://platform.openai.com/docs/guides/prompt-caching). @@ -110,7 +118,12 @@ module OpenAI class OutputTokensDetails < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Responses::ResponseUsage::OutputTokensDetails, + OpenAI::Internal::AnyHash + ) + end # The number of reasoning tokens. sig { returns(Integer) } diff --git a/rbi/openai/models/responses/response_web_search_call_completed_event.rbi b/rbi/openai/models/responses/response_web_search_call_completed_event.rbi index 10e66da7..f090f369 100644 --- a/rbi/openai/models/responses/response_web_search_call_completed_event.rbi +++ b/rbi/openai/models/responses/response_web_search_call_completed_event.rbi @@ -4,7 +4,13 @@ module OpenAI module Models module Responses class ResponseWebSearchCallCompletedEvent < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::Responses::ResponseWebSearchCallCompletedEvent, + OpenAI::Internal::AnyHash + ) + end # Unique ID for the output item associated with the web search call. sig { returns(String) } diff --git a/rbi/openai/models/responses/response_web_search_call_in_progress_event.rbi b/rbi/openai/models/responses/response_web_search_call_in_progress_event.rbi index 22a00bbf..c8fdaf5a 100644 --- a/rbi/openai/models/responses/response_web_search_call_in_progress_event.rbi +++ b/rbi/openai/models/responses/response_web_search_call_in_progress_event.rbi @@ -4,7 +4,13 @@ module OpenAI module Models module Responses class ResponseWebSearchCallInProgressEvent < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::Responses::ResponseWebSearchCallInProgressEvent, + OpenAI::Internal::AnyHash + ) + end # Unique ID for the output item associated with the web search call. sig { returns(String) } diff --git a/rbi/openai/models/responses/response_web_search_call_searching_event.rbi b/rbi/openai/models/responses/response_web_search_call_searching_event.rbi index 1d1b8d70..5f0b5d33 100644 --- a/rbi/openai/models/responses/response_web_search_call_searching_event.rbi +++ b/rbi/openai/models/responses/response_web_search_call_searching_event.rbi @@ -4,7 +4,13 @@ module OpenAI module Models module Responses class ResponseWebSearchCallSearchingEvent < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::Responses::ResponseWebSearchCallSearchingEvent, + OpenAI::Internal::AnyHash + ) + end # Unique ID for the output item associated with the web search call. sig { returns(String) } diff --git a/rbi/openai/models/responses/tool_choice_function.rbi b/rbi/openai/models/responses/tool_choice_function.rbi index 44ea5976..e74411c8 100644 --- a/rbi/openai/models/responses/tool_choice_function.rbi +++ b/rbi/openai/models/responses/tool_choice_function.rbi @@ -4,7 +4,13 @@ module OpenAI module Models module Responses class ToolChoiceFunction < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::Responses::ToolChoiceFunction, + OpenAI::Internal::AnyHash + ) + end # The name of the function to call. sig { returns(String) } diff --git a/rbi/openai/models/responses/tool_choice_types.rbi b/rbi/openai/models/responses/tool_choice_types.rbi index 1013d8f9..3851436c 100644 --- a/rbi/openai/models/responses/tool_choice_types.rbi +++ b/rbi/openai/models/responses/tool_choice_types.rbi @@ -4,7 +4,10 @@ module OpenAI module Models module Responses class ToolChoiceTypes < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(OpenAI::Responses::ToolChoiceTypes, OpenAI::Internal::AnyHash) + end # The type of hosted tool the model should to use. Learn more about # [built-in tools](https://platform.openai.com/docs/guides/tools). diff --git a/rbi/openai/models/responses/web_search_tool.rbi b/rbi/openai/models/responses/web_search_tool.rbi index 7c952749..5d05f938 100644 --- a/rbi/openai/models/responses/web_search_tool.rbi +++ b/rbi/openai/models/responses/web_search_tool.rbi @@ -4,7 +4,10 @@ module OpenAI module Models module Responses class WebSearchTool < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(OpenAI::Responses::WebSearchTool, OpenAI::Internal::AnyHash) + end # The type of the web search tool. One of `web_search_preview` or # `web_search_preview_2025_03_11`. @@ -153,7 +156,12 @@ module OpenAI class UserLocation < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::Responses::WebSearchTool::UserLocation, + OpenAI::Internal::AnyHash + ) + end # The type of location approximation. Always `approximate`. sig { returns(Symbol) } diff --git a/rbi/openai/models/static_file_chunking_strategy.rbi b/rbi/openai/models/static_file_chunking_strategy.rbi index 2bfb9abc..a75f0b65 100644 --- a/rbi/openai/models/static_file_chunking_strategy.rbi +++ b/rbi/openai/models/static_file_chunking_strategy.rbi @@ -3,7 +3,10 @@ module OpenAI module Models class StaticFileChunkingStrategy < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(OpenAI::StaticFileChunkingStrategy, OpenAI::Internal::AnyHash) + end # The number of tokens that overlap between chunks. The default value is `400`. # diff --git a/rbi/openai/models/static_file_chunking_strategy_object.rbi b/rbi/openai/models/static_file_chunking_strategy_object.rbi index 3e1ca623..7dfe6e52 100644 --- a/rbi/openai/models/static_file_chunking_strategy_object.rbi +++ b/rbi/openai/models/static_file_chunking_strategy_object.rbi @@ -3,7 +3,13 @@ module OpenAI module Models class StaticFileChunkingStrategyObject < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::StaticFileChunkingStrategyObject, + OpenAI::Internal::AnyHash + ) + end sig { returns(OpenAI::StaticFileChunkingStrategy) } attr_reader :static diff --git a/rbi/openai/models/static_file_chunking_strategy_object_param.rbi b/rbi/openai/models/static_file_chunking_strategy_object_param.rbi index ede12a4b..0197459c 100644 --- a/rbi/openai/models/static_file_chunking_strategy_object_param.rbi +++ b/rbi/openai/models/static_file_chunking_strategy_object_param.rbi @@ -3,7 +3,13 @@ module OpenAI module Models class StaticFileChunkingStrategyObjectParam < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::StaticFileChunkingStrategyObjectParam, + OpenAI::Internal::AnyHash + ) + end sig { returns(OpenAI::StaticFileChunkingStrategy) } attr_reader :static diff --git a/rbi/openai/models/upload.rbi b/rbi/openai/models/upload.rbi index 95c1b624..1c57dd2b 100644 --- a/rbi/openai/models/upload.rbi +++ b/rbi/openai/models/upload.rbi @@ -3,7 +3,7 @@ module OpenAI module Models class Upload < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = T.type_alias { T.any(OpenAI::Upload, OpenAI::Internal::AnyHash) } # The Upload unique identifier, which can be referenced in API endpoints. sig { returns(String) } diff --git a/rbi/openai/models/upload_cancel_params.rbi b/rbi/openai/models/upload_cancel_params.rbi index 283948ca..7f48aa91 100644 --- a/rbi/openai/models/upload_cancel_params.rbi +++ b/rbi/openai/models/upload_cancel_params.rbi @@ -6,7 +6,10 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(OpenAI::UploadCancelParams, OpenAI::Internal::AnyHash) + end sig do params(request_options: OpenAI::RequestOptions::OrHash).returns( diff --git a/rbi/openai/models/upload_complete_params.rbi b/rbi/openai/models/upload_complete_params.rbi index a8770632..fc57184f 100644 --- a/rbi/openai/models/upload_complete_params.rbi +++ b/rbi/openai/models/upload_complete_params.rbi @@ -6,7 +6,10 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(OpenAI::UploadCompleteParams, OpenAI::Internal::AnyHash) + end # The ordered list of Part IDs. sig { returns(T::Array[String]) } diff --git a/rbi/openai/models/upload_create_params.rbi b/rbi/openai/models/upload_create_params.rbi index 43ab3774..d7e3500c 100644 --- a/rbi/openai/models/upload_create_params.rbi +++ b/rbi/openai/models/upload_create_params.rbi @@ -6,7 +6,10 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(OpenAI::UploadCreateParams, OpenAI::Internal::AnyHash) + end # The number of bytes in the file you are uploading. sig { returns(Integer) } diff --git a/rbi/openai/models/uploads/part_create_params.rbi b/rbi/openai/models/uploads/part_create_params.rbi index 9a8822d5..1b069db5 100644 --- a/rbi/openai/models/uploads/part_create_params.rbi +++ b/rbi/openai/models/uploads/part_create_params.rbi @@ -7,7 +7,10 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(OpenAI::Uploads::PartCreateParams, OpenAI::Internal::AnyHash) + end # The chunk of bytes for this Part. sig { returns(T.any(Pathname, StringIO, IO, OpenAI::FilePart)) } diff --git a/rbi/openai/models/uploads/upload_part.rbi b/rbi/openai/models/uploads/upload_part.rbi index a9f0b817..71d2d997 100644 --- a/rbi/openai/models/uploads/upload_part.rbi +++ b/rbi/openai/models/uploads/upload_part.rbi @@ -6,7 +6,10 @@ module OpenAI module Uploads class UploadPart < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(OpenAI::Uploads::UploadPart, OpenAI::Internal::AnyHash) + end # The upload Part unique identifier, which can be referenced in API endpoints. sig { returns(String) } diff --git a/rbi/openai/models/vector_store.rbi b/rbi/openai/models/vector_store.rbi index a4140933..1e5ec9ca 100644 --- a/rbi/openai/models/vector_store.rbi +++ b/rbi/openai/models/vector_store.rbi @@ -3,7 +3,8 @@ module OpenAI module Models class VectorStore < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias { T.any(OpenAI::VectorStore, OpenAI::Internal::AnyHash) } # The identifier, which can be referenced in API endpoints. sig { returns(String) } @@ -133,7 +134,10 @@ module OpenAI end class FileCounts < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(OpenAI::VectorStore::FileCounts, OpenAI::Internal::AnyHash) + end # The number of files that were cancelled. sig { returns(Integer) } @@ -216,7 +220,10 @@ module OpenAI end class ExpiresAfter < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(OpenAI::VectorStore::ExpiresAfter, OpenAI::Internal::AnyHash) + end # Anchor timestamp after which the expiration policy applies. Supported anchors: # `last_active_at`. diff --git a/rbi/openai/models/vector_store_create_params.rbi b/rbi/openai/models/vector_store_create_params.rbi index 38d38a30..674fc93d 100644 --- a/rbi/openai/models/vector_store_create_params.rbi +++ b/rbi/openai/models/vector_store_create_params.rbi @@ -6,7 +6,10 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(OpenAI::VectorStoreCreateParams, OpenAI::Internal::AnyHash) + end # The chunking strategy used to chunk the file(s). If not set, will use the `auto` # strategy. Only applicable if `file_ids` is non-empty. @@ -126,7 +129,13 @@ module OpenAI end class ExpiresAfter < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::VectorStoreCreateParams::ExpiresAfter, + OpenAI::Internal::AnyHash + ) + end # Anchor timestamp after which the expiration policy applies. Supported anchors: # `last_active_at`. diff --git a/rbi/openai/models/vector_store_delete_params.rbi b/rbi/openai/models/vector_store_delete_params.rbi index bb86910b..e7cf7db1 100644 --- a/rbi/openai/models/vector_store_delete_params.rbi +++ b/rbi/openai/models/vector_store_delete_params.rbi @@ -6,7 +6,10 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(OpenAI::VectorStoreDeleteParams, OpenAI::Internal::AnyHash) + end sig do params(request_options: OpenAI::RequestOptions::OrHash).returns( diff --git a/rbi/openai/models/vector_store_deleted.rbi b/rbi/openai/models/vector_store_deleted.rbi index 3236938a..4967947f 100644 --- a/rbi/openai/models/vector_store_deleted.rbi +++ b/rbi/openai/models/vector_store_deleted.rbi @@ -3,7 +3,10 @@ module OpenAI module Models class VectorStoreDeleted < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(OpenAI::VectorStoreDeleted, OpenAI::Internal::AnyHash) + end sig { returns(String) } attr_accessor :id diff --git a/rbi/openai/models/vector_store_list_params.rbi b/rbi/openai/models/vector_store_list_params.rbi index 13a9b81d..4ce80ba7 100644 --- a/rbi/openai/models/vector_store_list_params.rbi +++ b/rbi/openai/models/vector_store_list_params.rbi @@ -6,7 +6,10 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(OpenAI::VectorStoreListParams, OpenAI::Internal::AnyHash) + end # A cursor for use in pagination. `after` is an object ID that defines your place # in the list. For instance, if you make a list request and receive 100 objects, diff --git a/rbi/openai/models/vector_store_retrieve_params.rbi b/rbi/openai/models/vector_store_retrieve_params.rbi index c96ace2f..337cd6e5 100644 --- a/rbi/openai/models/vector_store_retrieve_params.rbi +++ b/rbi/openai/models/vector_store_retrieve_params.rbi @@ -6,7 +6,10 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(OpenAI::VectorStoreRetrieveParams, OpenAI::Internal::AnyHash) + end sig do params(request_options: OpenAI::RequestOptions::OrHash).returns( diff --git a/rbi/openai/models/vector_store_search_params.rbi b/rbi/openai/models/vector_store_search_params.rbi index 97e4d691..20dd60cc 100644 --- a/rbi/openai/models/vector_store_search_params.rbi +++ b/rbi/openai/models/vector_store_search_params.rbi @@ -6,7 +6,10 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(OpenAI::VectorStoreSearchParams, OpenAI::Internal::AnyHash) + end # A query string for a search sig { returns(T.any(String, T::Array[String])) } @@ -146,7 +149,13 @@ module OpenAI end class RankingOptions < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::VectorStoreSearchParams::RankingOptions, + OpenAI::Internal::AnyHash + ) + end sig do returns( diff --git a/rbi/openai/models/vector_store_search_response.rbi b/rbi/openai/models/vector_store_search_response.rbi index bca7112b..05bfc3de 100644 --- a/rbi/openai/models/vector_store_search_response.rbi +++ b/rbi/openai/models/vector_store_search_response.rbi @@ -3,7 +3,13 @@ module OpenAI module Models class VectorStoreSearchResponse < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::Models::VectorStoreSearchResponse, + OpenAI::Internal::AnyHash + ) + end # 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 @@ -97,7 +103,13 @@ module OpenAI end class Content < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::Models::VectorStoreSearchResponse::Content, + OpenAI::Internal::AnyHash + ) + end # The text content returned from search. sig { returns(String) } diff --git a/rbi/openai/models/vector_store_update_params.rbi b/rbi/openai/models/vector_store_update_params.rbi index 1bc41e32..1d755b92 100644 --- a/rbi/openai/models/vector_store_update_params.rbi +++ b/rbi/openai/models/vector_store_update_params.rbi @@ -6,7 +6,10 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any(OpenAI::VectorStoreUpdateParams, OpenAI::Internal::AnyHash) + end # The expiration policy for a vector store. sig { returns(T.nilable(OpenAI::VectorStoreUpdateParams::ExpiresAfter)) } @@ -73,7 +76,13 @@ module OpenAI end class ExpiresAfter < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::VectorStoreUpdateParams::ExpiresAfter, + OpenAI::Internal::AnyHash + ) + end # Anchor timestamp after which the expiration policy applies. Supported anchors: # `last_active_at`. diff --git a/rbi/openai/models/vector_stores/file_batch_cancel_params.rbi b/rbi/openai/models/vector_stores/file_batch_cancel_params.rbi index 018b178f..dbee23e0 100644 --- a/rbi/openai/models/vector_stores/file_batch_cancel_params.rbi +++ b/rbi/openai/models/vector_stores/file_batch_cancel_params.rbi @@ -7,7 +7,13 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::VectorStores::FileBatchCancelParams, + OpenAI::Internal::AnyHash + ) + end sig { returns(String) } attr_accessor :vector_store_id diff --git a/rbi/openai/models/vector_stores/file_batch_create_params.rbi b/rbi/openai/models/vector_stores/file_batch_create_params.rbi index 99ae5367..3ac858b8 100644 --- a/rbi/openai/models/vector_stores/file_batch_create_params.rbi +++ b/rbi/openai/models/vector_stores/file_batch_create_params.rbi @@ -7,7 +7,13 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::VectorStores::FileBatchCreateParams, + OpenAI::Internal::AnyHash + ) + end # A list of [File](https://platform.openai.com/docs/api-reference/files) IDs that # the vector store should use. Useful for tools like `file_search` that can access diff --git a/rbi/openai/models/vector_stores/file_batch_list_files_params.rbi b/rbi/openai/models/vector_stores/file_batch_list_files_params.rbi index 92c9e94d..036aa011 100644 --- a/rbi/openai/models/vector_stores/file_batch_list_files_params.rbi +++ b/rbi/openai/models/vector_stores/file_batch_list_files_params.rbi @@ -7,7 +7,13 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::VectorStores::FileBatchListFilesParams, + OpenAI::Internal::AnyHash + ) + end sig { returns(String) } attr_accessor :vector_store_id diff --git a/rbi/openai/models/vector_stores/file_batch_retrieve_params.rbi b/rbi/openai/models/vector_stores/file_batch_retrieve_params.rbi index 9269b441..19120d57 100644 --- a/rbi/openai/models/vector_stores/file_batch_retrieve_params.rbi +++ b/rbi/openai/models/vector_stores/file_batch_retrieve_params.rbi @@ -7,7 +7,13 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::VectorStores::FileBatchRetrieveParams, + OpenAI::Internal::AnyHash + ) + end sig { returns(String) } attr_accessor :vector_store_id diff --git a/rbi/openai/models/vector_stores/file_content_params.rbi b/rbi/openai/models/vector_stores/file_content_params.rbi index 808e189c..91dccd3c 100644 --- a/rbi/openai/models/vector_stores/file_content_params.rbi +++ b/rbi/openai/models/vector_stores/file_content_params.rbi @@ -7,7 +7,13 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::VectorStores::FileContentParams, + OpenAI::Internal::AnyHash + ) + end sig { returns(String) } attr_accessor :vector_store_id diff --git a/rbi/openai/models/vector_stores/file_content_response.rbi b/rbi/openai/models/vector_stores/file_content_response.rbi index c0c3ab04..1a363bd6 100644 --- a/rbi/openai/models/vector_stores/file_content_response.rbi +++ b/rbi/openai/models/vector_stores/file_content_response.rbi @@ -4,7 +4,13 @@ module OpenAI module Models module VectorStores class FileContentResponse < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::Models::VectorStores::FileContentResponse, + OpenAI::Internal::AnyHash + ) + end # The text content sig { returns(T.nilable(String)) } diff --git a/rbi/openai/models/vector_stores/file_create_params.rbi b/rbi/openai/models/vector_stores/file_create_params.rbi index 2a56c040..b98a191b 100644 --- a/rbi/openai/models/vector_stores/file_create_params.rbi +++ b/rbi/openai/models/vector_stores/file_create_params.rbi @@ -7,7 +7,13 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::VectorStores::FileCreateParams, + OpenAI::Internal::AnyHash + ) + end # A [File](https://platform.openai.com/docs/api-reference/files) ID that the # vector store should use. Useful for tools like `file_search` that can access diff --git a/rbi/openai/models/vector_stores/file_delete_params.rbi b/rbi/openai/models/vector_stores/file_delete_params.rbi index c93454bd..28f556ed 100644 --- a/rbi/openai/models/vector_stores/file_delete_params.rbi +++ b/rbi/openai/models/vector_stores/file_delete_params.rbi @@ -7,7 +7,13 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::VectorStores::FileDeleteParams, + OpenAI::Internal::AnyHash + ) + end sig { returns(String) } attr_accessor :vector_store_id diff --git a/rbi/openai/models/vector_stores/file_list_params.rbi b/rbi/openai/models/vector_stores/file_list_params.rbi index f3697d8c..87c16199 100644 --- a/rbi/openai/models/vector_stores/file_list_params.rbi +++ b/rbi/openai/models/vector_stores/file_list_params.rbi @@ -7,7 +7,13 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::VectorStores::FileListParams, + OpenAI::Internal::AnyHash + ) + end # A cursor for use in pagination. `after` is an object ID that defines your place # in the list. For instance, if you make a list request and receive 100 objects, diff --git a/rbi/openai/models/vector_stores/file_retrieve_params.rbi b/rbi/openai/models/vector_stores/file_retrieve_params.rbi index 5904b6a0..02669095 100644 --- a/rbi/openai/models/vector_stores/file_retrieve_params.rbi +++ b/rbi/openai/models/vector_stores/file_retrieve_params.rbi @@ -7,7 +7,13 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::VectorStores::FileRetrieveParams, + OpenAI::Internal::AnyHash + ) + end sig { returns(String) } attr_accessor :vector_store_id diff --git a/rbi/openai/models/vector_stores/file_update_params.rbi b/rbi/openai/models/vector_stores/file_update_params.rbi index 2a92b688..c8d7d898 100644 --- a/rbi/openai/models/vector_stores/file_update_params.rbi +++ b/rbi/openai/models/vector_stores/file_update_params.rbi @@ -7,7 +7,13 @@ module OpenAI extend OpenAI::Internal::Type::RequestParameters::Converter include OpenAI::Internal::Type::RequestParameters - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::VectorStores::FileUpdateParams, + OpenAI::Internal::AnyHash + ) + end sig { returns(String) } attr_accessor :vector_store_id diff --git a/rbi/openai/models/vector_stores/vector_store_file.rbi b/rbi/openai/models/vector_stores/vector_store_file.rbi index e75ae730..7cf4a149 100644 --- a/rbi/openai/models/vector_stores/vector_store_file.rbi +++ b/rbi/openai/models/vector_stores/vector_store_file.rbi @@ -6,7 +6,13 @@ module OpenAI module VectorStores class VectorStoreFile < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::VectorStores::VectorStoreFile, + OpenAI::Internal::AnyHash + ) + end # The identifier, which can be referenced in API endpoints. sig { returns(String) } @@ -173,7 +179,12 @@ module OpenAI class LastError < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::VectorStores::VectorStoreFile::LastError, + OpenAI::Internal::AnyHash + ) + end # One of `server_error` or `rate_limit_exceeded`. sig do diff --git a/rbi/openai/models/vector_stores/vector_store_file_batch.rbi b/rbi/openai/models/vector_stores/vector_store_file_batch.rbi index 1dc7f034..e464e984 100644 --- a/rbi/openai/models/vector_stores/vector_store_file_batch.rbi +++ b/rbi/openai/models/vector_stores/vector_store_file_batch.rbi @@ -6,7 +6,13 @@ module OpenAI module VectorStores class VectorStoreFileBatch < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::VectorStores::VectorStoreFileBatch, + OpenAI::Internal::AnyHash + ) + end # The identifier, which can be referenced in API endpoints. sig { returns(String) } @@ -100,7 +106,12 @@ module OpenAI class FileCounts < OpenAI::Internal::Type::BaseModel OrHash = - T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + T.type_alias do + T.any( + OpenAI::VectorStores::VectorStoreFileBatch::FileCounts, + OpenAI::Internal::AnyHash + ) + end # The number of files that where cancelled. sig { returns(Integer) } diff --git a/rbi/openai/models/vector_stores/vector_store_file_deleted.rbi b/rbi/openai/models/vector_stores/vector_store_file_deleted.rbi index 3317327e..a8813c5b 100644 --- a/rbi/openai/models/vector_stores/vector_store_file_deleted.rbi +++ b/rbi/openai/models/vector_stores/vector_store_file_deleted.rbi @@ -6,7 +6,13 @@ module OpenAI module VectorStores class VectorStoreFileDeleted < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias do + T.any( + OpenAI::VectorStores::VectorStoreFileDeleted, + OpenAI::Internal::AnyHash + ) + end sig { returns(String) } attr_accessor :id diff --git a/rbi/openai/request_options.rbi b/rbi/openai/request_options.rbi index 459f3a88..144d5a33 100644 --- a/rbi/openai/request_options.rbi +++ b/rbi/openai/request_options.rbi @@ -7,7 +7,8 @@ module OpenAI # When making a request, you can pass an actual {RequestOptions} instance, or # simply pass a Hash with symbol keys matching the attributes on this class. class RequestOptions < OpenAI::Internal::Type::BaseModel - OrHash = T.type_alias { T.any(T.self_type, OpenAI::Internal::AnyHash) } + OrHash = + T.type_alias { T.any(OpenAI::RequestOptions, OpenAI::Internal::AnyHash) } # @api private sig { params(opts: OpenAI::RequestOptions::OrHash).void } diff --git a/sig/openai/internal.rbs b/sig/openai/internal.rbs index cd18cd99..8dc7f62a 100644 --- a/sig/openai/internal.rbs +++ b/sig/openai/internal.rbs @@ -1,5 +1,7 @@ module OpenAI module Internal + extend OpenAI::Internal::Util::SorbetRuntimeSupport + OMIT: Object end end diff --git a/sig/openai/internal/transport/base_client.rbs b/sig/openai/internal/transport/base_client.rbs index 3b3e9b44..594f2d82 100644 --- a/sig/openai/internal/transport/base_client.rbs +++ b/sig/openai/internal/transport/base_client.rbs @@ -2,6 +2,8 @@ module OpenAI module Internal module Transport class BaseClient + extend OpenAI::Internal::Util::SorbetRuntimeSupport + type request_components = { method: Symbol, @@ -20,7 +22,6 @@ module OpenAI model: OpenAI::Internal::Type::Converter::input?, options: OpenAI::request_opts? } - type request_input = { method: Symbol, diff --git a/sig/openai/internal/transport/pooled_net_requester.rbs b/sig/openai/internal/transport/pooled_net_requester.rbs index 87b79180..038e5f19 100644 --- a/sig/openai/internal/transport/pooled_net_requester.rbs +++ b/sig/openai/internal/transport/pooled_net_requester.rbs @@ -2,6 +2,8 @@ module OpenAI module Internal module Transport class PooledNetRequester + extend OpenAI::Internal::Util::SorbetRuntimeSupport + type request = { method: Symbol, diff --git a/sig/openai/internal/type/array_of.rbs b/sig/openai/internal/type/array_of.rbs index 80fcc2a2..265aa8da 100644 --- a/sig/openai/internal/type/array_of.rbs +++ b/sig/openai/internal/type/array_of.rbs @@ -9,7 +9,7 @@ module OpenAI | ^-> OpenAI::Internal::Type::Converter::input | OpenAI::Internal::Type::Converter::input type_info, ?::Hash[Symbol, top] spec - ) -> instance + ) -> self def ===: (top other) -> bool diff --git a/sig/openai/internal/type/base_model.rbs b/sig/openai/internal/type/base_model.rbs index 177b22b8..93def04e 100644 --- a/sig/openai/internal/type/base_model.rbs +++ b/sig/openai/internal/type/base_model.rbs @@ -3,10 +3,13 @@ module OpenAI module Type class BaseModel extend OpenAI::Internal::Type::Converter + extend OpenAI::Internal::Util::SorbetRuntimeSupport type known_field = { mode: (:coerce | :dump)?, required: bool, nilable: bool } + def self.inherited: (self child) -> void + def self.known_fields: -> ::Hash[Symbol, (OpenAI::Internal::Type::BaseModel::known_field & { type_fn: (^-> OpenAI::Internal::Type::Converter::input) })] @@ -58,10 +61,10 @@ module OpenAI def self.coerce: ( OpenAI::Internal::Type::BaseModel | ::Hash[top, top] | top value, state: OpenAI::Internal::Type::Converter::coerce_state - ) -> (instance | top) + ) -> (self | top) def self.dump: ( - instance | top value, + self | top value, state: OpenAI::Internal::Type::Converter::dump_state ) -> (::Hash[top, top] | top) diff --git a/sig/openai/internal/type/converter.rbs b/sig/openai/internal/type/converter.rbs index 0e4c56aa..5470abbf 100644 --- a/sig/openai/internal/type/converter.rbs +++ b/sig/openai/internal/type/converter.rbs @@ -2,6 +2,8 @@ module OpenAI module Internal module Type module Converter + extend OpenAI::Internal::Util::SorbetRuntimeSupport + type input = OpenAI::Internal::Type::Converter | Class type coerce_state = diff --git a/sig/openai/internal/type/enum.rbs b/sig/openai/internal/type/enum.rbs index 897ae9eb..69f1c6bd 100644 --- a/sig/openai/internal/type/enum.rbs +++ b/sig/openai/internal/type/enum.rbs @@ -3,6 +3,7 @@ module OpenAI module Type module Enum include OpenAI::Internal::Type::Converter + include OpenAI::Internal::Util::SorbetRuntimeSupport def self.values: -> ::Array[(nil | bool | Integer | Float | Symbol)] diff --git a/sig/openai/internal/type/hash_of.rbs b/sig/openai/internal/type/hash_of.rbs index 26f65397..af0022a0 100644 --- a/sig/openai/internal/type/hash_of.rbs +++ b/sig/openai/internal/type/hash_of.rbs @@ -9,7 +9,7 @@ module OpenAI | ^-> OpenAI::Internal::Type::Converter::input | OpenAI::Internal::Type::Converter::input type_info, ?::Hash[Symbol, top] spec - ) -> instance + ) -> self def ===: (top other) -> bool diff --git a/sig/openai/internal/type/union.rbs b/sig/openai/internal/type/union.rbs index 86c308a6..57d122c3 100644 --- a/sig/openai/internal/type/union.rbs +++ b/sig/openai/internal/type/union.rbs @@ -3,6 +3,7 @@ module OpenAI module Type module Union include OpenAI::Internal::Type::Converter + include OpenAI::Internal::Util::SorbetRuntimeSupport private def self.known_variants: -> ::Array[[Symbol?, (^-> OpenAI::Internal::Type::Converter::input)]] diff --git a/sig/openai/internal/util.rbs b/sig/openai/internal/util.rbs index 725c664b..c8416c7c 100644 --- a/sig/openai/internal/util.rbs +++ b/sig/openai/internal/util.rbs @@ -1,6 +1,8 @@ module OpenAI module Internal module Util + extend OpenAI::Internal::Util::SorbetRuntimeSupport + def self?.monotonic_secs: -> Float def self?.arch: -> String @@ -155,6 +157,17 @@ module OpenAI def self?.decode_sse: ( Enumerable[String] lines ) -> Enumerable[OpenAI::Internal::Util::server_sent_event] + + module SorbetRuntimeSupport + class MissingSorbetRuntimeError < ::RuntimeError + end + + private def sorbet_runtime_constants: -> ::Hash[Symbol, top] + + def const_missing: (Symbol name) -> void + + def define_sorbet_constant!: (Symbol name) { -> top } -> void + end end end end diff --git a/test/openai/client_test.rb b/test/openai/client_test.rb index b084b1b5..85ec0868 100644 --- a/test/openai/client_test.rb +++ b/test/openai/client_test.rb @@ -3,14 +3,9 @@ require_relative "test_helper" class OpenAITest < Minitest::Test + extend Minitest::Serial include WebMock::API - class << self - def test_order = :random - - def run_one_method(...) = Minitest::Runnable.run_one_method(...) - end - def before_all super WebMock.enable! diff --git a/test/openai/internal/sorbet_runtime_support_test.rb b/test/openai/internal/sorbet_runtime_support_test.rb new file mode 100644 index 00000000..1c48a5ff --- /dev/null +++ b/test/openai/internal/sorbet_runtime_support_test.rb @@ -0,0 +1,49 @@ +# frozen_string_literal: true + +require_relative "../test_helper" + +class OpenAI::Test::SorbetRuntimeSupportTest < Minitest::Test + i_suck_and_my_tests_are_order_dependent! + + module E + extend OpenAI::Internal::Type::Enum + + define_sorbet_constant!(:TaggedSymbol) { 1 } + end + + module U + extend OpenAI::Internal::Type::Union + + define_sorbet_constant!(:Variants) { 2 } + end + + class M < OpenAI::Internal::Type::BaseModel + define_sorbet_constant!(:OrHash) { 3 } + end + + def test_nil_aliases + err = OpenAI::Internal::Util::SorbetRuntimeSupport::MissingSorbetRuntimeError + + assert_raises(err) { OpenAI::Internal::AnyHash } + assert_raises(err) { OpenAI::Internal::Type::Converter::Input } + assert_raises(err) { OpenAI::Internal::Type::Converter::CoerceState } + assert_raises(err) { OpenAI::Internal::Type::Converter::DumpState } + assert_raises(err) { OpenAI::Internal::Type::BaseModel::KnownField } + assert_raises(err) { OpenAI::Internal::Util::ParsedUri } + assert_raises(err) { OpenAI::Internal::Util::ServerSentEvent } + assert_raises(err) { OpenAI::Internal::Transport::BaseClient::RequestComponents } + assert_raises(err) { OpenAI::Internal::Transport::BaseClient::RequestInput } + assert_raises(err) { OpenAI::Internal::Transport::PooledNetRequester::Request } + assert_raises(err) { E::TaggedSymbol } + assert_raises(err) { U::Variants } + assert_raises(err) { M::OrHash } + end + + def test_stubbed_aliases + Kernel.instance_eval { const_set(:T, nil) } + + assert_equal(1, E::TaggedSymbol) + assert_equal(2, U::Variants) + assert_equal(3, M::OrHash) + end +end diff --git a/test/openai/test_helper.rb b/test/openai/test_helper.rb index 98b833aa..0878fc76 100644 --- a/test/openai/test_helper.rb +++ b/test/openai/test_helper.rb @@ -52,6 +52,12 @@ def initialize end end +module Minitest::Serial + def test_order = :random + + def run_one_method(...) = Minitest::Runnable.run_one_method(...) +end + class Minitest::Test include Minitest::Hooks